Commit graph

56 commits

Author SHA1 Message Date
Drew DeVault c89e00a97e Fix swaylock w/shadow on glibc, improve security
Today I learned that GNU flaunts the POSIX standard in yet another
creative way. Additionally, this adds some security improvements,
namely:

- Zeroing out password buffers in the privileged child process
- setuid/setgid after reading /etc/shadow
2018-10-06 12:20:12 -04:00
Arkadiusz Hiler eed0bc3ebd Add support for installing binaries with DT_RPATH
It's better to use DT_RPATH dynamic section of the elf binary to store
the paths of libraries to load instead of overwriting LD_LIBRARY_PATH
for the whole environment, causing surprises. This solution is much more
transparent and perfectly suitable for running contained installations
of wayland/wlroots/sway.

The code unsetting the LD_LIBRARY_PATH/LD_PRELOAD was also deleted as
it's a placebo security at best - we should trust the execution path
that leads us to running sway, and it's way too late to care about those
variables since we already started executing our compositor, thus we
would be compromised anyway.
2018-09-30 15:37:01 +03:00
Arkadiusz Hiler 00dfb76832 Remove libcap/prctl artifacts
They seem like relics of the pasts, from when we were retaining the
ptrace cap.

Some translations still may need updates.
2018-09-30 13:39:26 +03:00
Drew DeVault c977349120 Add support for building swaylock without PAM
This involves setuid'ing swaylock, which then forks and drops perms on
the parent process. The child process remains root and listens on a pipe
for requests to validate passwords against /etc/shadow.
2018-09-28 13:53:01 +02:00
sghctoma 3e924f2345 Add _C11_SOURCE feature test macro on FreeBSD
This will restrict the default namespace set on FreeBSD to the C11
standard (everything is visible by default), which will prevent possible
conflicts with symbols hidden behing __BSD_VISIBLE.
2018-09-26 20:05:45 +02:00
Drew DeVault a8a0014e0f Make libpam optional 2018-09-26 17:32:15 +02:00
sghctoma df730a8891 Merge remote-tracking branch 'upstream/master' into fix-freebsd-build 2018-09-03 08:57:17 +02:00
Ryan Dwyer 4ece26e511 Add ld-library-path meson option 2018-09-02 23:07:47 +10:00
Ryan Dwyer 7795f733d8 Use dashes in meson option names 2018-09-02 22:58:15 +10:00
sghctoma 6942f5b684 Fix SYSCONFDIR to include "prefix"
SYSCONFDIR is used to determine the path of the default configuration
file. 'sysconfdir' is set to 'prefix/sysconfdir' later (on line 139),
so configuration files are installed under 'prefix', but SYSCONFDIR did
not reflect it.
2018-08-30 09:44:24 +02:00
sghctoma 462e15d9a5 Make libcap an optional dependency
FreeBSD does not have libcap, so without "required: false" Sway fails
to build.
2018-08-30 09:40:35 +02:00
Scott Anderson ff86dc0c35 Hide deprecated wayland functions 2018-08-27 18:01:00 +12:00
Martin Kalchev f3c18336d2 added fish to meson.build 2018-08-26 19:27:18 +03:00
Ryan Dwyer 706c0fbe23
Merge branch 'master' into nagbar 2018-08-02 23:05:49 +10:00
Michel Ganguin d6095588a1 Link xcb dependency to meson options "enable_xwayland" (#2393)
* Link xcb dependency to meson options "enable_xwayland"

* Link xcb dependency to meson options "enable_xwayland"
2018-08-02 08:36:47 +01:00
Brian Ashworth 8463a2896a swaynag: implement config file support 2018-08-01 22:47:54 -04:00
Brian Ashworth a4f7bf23b2 Address first round review for swaynag 2018-08-01 22:47:54 -04:00
Brian Ashworth 88bc4b528e Implements swaynagbar 2018-08-01 22:47:54 -04:00
Drew DeVault 878d1ddd07
Merge pull request #2387 from 1ace/feature/bash-completion
bash completion
2018-07-30 13:11:20 -04:00
Eric Engestrom 52a27f1529 delete references to swaygrab 2018-07-30 16:24:46 +01:00
Eric Engestrom b9d531b318 meson: install bash completion 2018-07-30 15:56:50 +01:00
Drew DeVault 8dacd0639c Enable unstable wlroots features 2018-07-29 19:33:54 -04:00
Pascal Pascher 2bf893248a style fixes, exclude sway/desctop/xwayland.c when enable_xwayland: false 2018-07-24 23:37:41 +02:00
Pascal Pascher 24ad1c3983 Added meson option "enable_xwayland" (default: true) to enable/disable xwayland support 2018-07-24 22:16:06 +02:00
emersion cda66e9a26
Automatically float xwayland windows 2018-06-18 22:52:10 +01:00
Ryan Dwyer 9d99e5c2e7 Swaylock: Allow per-output images 2018-05-20 22:54:09 +10:00
Mattias Eriksson 8fbafbfab5 Idle handling for dpms/lockscreen et al
Swayidle handles idle events and allows
for dpms and lockscreen handling. It also
handles systemd sleep events, and can
raise a lockscreen on sleep

Fixes #541
2018-05-13 00:30:09 +02:00
Drew DeVault 22f52b91ed Add swaylock(1) and swaymsg(1) 2018-05-11 21:39:47 -04:00
Drew DeVault d9a08b7a9d Add sway-input(5) 2018-05-11 21:25:05 -04:00
Drew DeVault 1813482266 Add sway-bar(5) 2018-05-11 21:13:43 -04:00
Drew DeVault 432256ad84 Add sway(5) 2018-05-11 21:03:43 -04:00
Drew DeVault c2a7d367af Wire up scdoc and rewrite sway(1) 2018-05-11 20:58:38 -04:00
Yorick van Pelt f31b2e1b33
meson.build: Look for '-lpam', not '-llibpam'.
See #1920 for more information.
2018-05-06 14:10:09 +02:00
Bruno Pinto b24b319bdf
Improve dependency checks 2018-04-08 00:34:12 +01:00
Drew DeVault 842a3ea45c Add -Wno-unused-result
Fixes #1744
2018-04-05 15:23:59 -04:00
Drew DeVault b32bf595ae Initial swaylock port 2018-04-04 18:47:48 -04:00
Drew DeVault 8d1425bde9 Initialize seat pointer in swaybar 2018-03-30 22:44:08 -04:00
Drew DeVault cab1352801 Start port of swaybar to layer shell
This starts up the event loop and wayland display and shims out the
basic top level rendering concepts. Also includes some changes to
incorporate pango into the 1.x codebase properly.
2018-03-29 22:11:08 -04:00
Drew DeVault d39bda76c4 Address review comments 2018-03-28 14:43:23 -04:00
Drew DeVault 632bb948b7 Add solid-color rendering to swaybg 2018-03-28 14:25:19 -04:00
Drew DeVault eccf0b2598 Add client protocols and swaybg skeleton 2018-03-28 14:25:19 -04:00
emersion bb173672ae
meson: allow wlroots to be a subproject 2018-03-15 21:02:06 +01:00
Drew DeVault 5e9fe97e36 Add -Wno-unused-function
This is temporary, it helps while we work on porting and large swaths of
the code are commented out.
2018-02-18 11:20:18 -05:00
Rachel K dc0e6d46fb update json-c dep to 0.13 2018-01-04 15:46:37 +00:00
Tony Crisci 338a0399f8 input skeleton 2017-12-06 08:28:46 -05:00
emersion 90f7f1a0e6
Add minimal config subsystem 2017-12-05 10:40:55 +01:00
Tony Crisci 0f7a7f4084 meson dont warn on unused param 2017-12-01 05:42:12 -05:00
Tony Crisci fe5c031609 meson zsh completions install 2017-11-30 11:51:58 -05:00
Tony Crisci 1d702b6376 meson build swaymsg 2017-11-30 11:40:49 -05:00
Tony Crisci 03182706cf meson build manpages 2017-11-30 11:39:11 -05:00