Drew DeVault
28e5138fad
Merge pull request #2925 from ianyfan/swaylock
...
swaylock: exit early if unable to get input inhibitor
2018-10-24 18:54:22 +02:00
Ryan Dwyer
d7ffed8b49
Add multiseat support to swaylock
2018-10-24 22:04:16 +10:00
Ian Fan
274179a804
swaylock: exit on display error
2018-10-23 11:49:33 +01:00
Ian Fan
4b312c1389
swaylock: exit early if unable to inhibit input
...
This stops the program from going into a spinlock without exiting
2018-10-23 11:41:45 +01:00
Connor E
5521293dc7
Change initial background mode before arg parse.
2018-10-19 16:38:01 +01:00
Ryan Dwyer
b239eba5a9
Fix swaylock version string
...
The referenced constants were not defined so it always printed "version
unknown".
Also it would exit with code 1. It now exits with code 0.
2018-10-16 00:09:16 +10:00
Ryan Dwyer
529f5ce2e4
Sway clients: Exit gracefully when compositor is unavailable
2018-10-15 21:57:59 +10:00
Ryan Dwyer
a59fa9d1b6
Remove timerfd from loop implementation
...
timerfd doesn't work on the BSDs, so this replaces it with a timespec
for the expiry and uses a poll timeout to check the timers when needed.
2018-10-15 00:26:27 +10:00
Ryan Dwyer
e63e0e4ec4
swaylock: Don't wait too long for surface damage before verifying
2018-10-15 00:26:27 +10:00
Ryan Dwyer
076827d4cb
swaylock: clear password after 10 seconds
2018-10-15 00:26:27 +10:00
Ryan Dwyer
f27204e5a1
swaylock: Remove indicator after 3 seconds
2018-10-15 00:26:27 +10:00
Ryan Dwyer
1d0579aca4
swaylock: Use common event loop
2018-10-15 00:26:27 +10:00
espkk
7931487347
swaylock: fix clear_password_buffer
2018-10-14 07:40:33 +03:00
Drew DeVault
c7776e7804
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
Ryan Dwyer
ec35e9943e
swaylock: Support keyboard and pointer disconnects and reconnects
2018-10-06 09:38:12 +10:00
Arkadiusz Hiler
e184e5987f
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
5ca9cd6d4e
Turn funcs() into funcs(void)
...
If they really do not take undefined number of arguments.
2018-09-30 14:09:05 +03:00
Drew DeVault
64259db8d6
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
Geoff Greer
1ba79a159e
swaybar, swaylock, & tree/container: Set cairo font options to render text and lines with subpixel hinting (if available).
2018-09-22 11:34:21 -07:00
sghctoma
2376a9c5d7
Add FreeBSD-specific PAM configuration
...
The "login" PAM configuration means somathing entirely different on
FreeBSD than on Linux: if you try to authenticate as the calling user,
it OKs the request without prompting for password. The "passwd" config
implements the desired functionality, therefore it should be used by
swaylock.
2018-08-30 09:58:57 +02:00
Brian Ashworth
01e7492d70
Fix swaylock arguments
2018-07-17 21:50:15 -04:00
Brian Ashworth
2bb424ea89
Switch to using getopt_long for config flag
2018-07-16 12:17:40 -04:00
Brian Ashworth
96af98e976
Remove leftover parens
2018-07-16 12:17:40 -04:00
Brian Ashworth
bd4a8e0673
Remove int cast after changing to size_t
2018-07-16 12:17:40 -04:00
Brian Ashworth
e1ddb4373f
Change to size_t in swaylock's get_config_path
2018-07-16 12:17:40 -04:00
Brian Ashworth
6fb2cf9507
Implement swaylock configuration file parsing
2018-07-16 12:17:40 -04:00
Brian Ashworth
cd9295c9d9
Change formatting of swaylock usage in the code
2018-07-10 22:09:31 -04:00
Brian Ashworth
77cf57ae14
Implement swaylock customization flags
2018-07-10 21:29:15 -04:00
emersion
ecf5b656c9
Update for swaywm/wlroots#1126
2018-07-09 22:54:30 +01:00
emersion
d4886a3cd5
swaylock: daemonize after locking
2018-07-07 18:36:49 +01:00
Dominique Martinet
01d2c492fd
swaylock: fix the displaying of "verified"
...
Displaying verified after damaging state needs more than one roundtrip,
so keep looping until surfaces are not dirty anymore
2018-07-07 21:02:28 +09:00
Ryan Dwyer
1468d89395
Detect opaque lockscreen when using a solid color
2018-07-07 00:17:08 +10:00
Ryan Dwyer
788b771632
Use infinite opaque region in swaylock
2018-07-07 00:03:49 +10:00
Ryan Dwyer
f43f683720
Use opaque region to determine if frame done should be sent
2018-07-07 00:03:49 +10:00
Bor Grošelj Simić
0978661a1b
Fix transparency in background images in swaylock
2018-07-04 12:09:05 +02:00
Bor Grošelj Simić
175c21d36d
Fix #1857
2018-07-04 01:53:32 +02:00
Dominique Martinet
8406c501b9
swaylock daemonize: fix leak of devnull fd
2018-07-02 08:03:41 +09:00
Dominique Martinet
d68ddd1532
swaylock: implement ^U to clear buffer
...
The whole state->xcb.modifiers thing didn't work at all (always 0)
The xkb doc says "[xkb_state_serialize_mods] should not be used in
regular clients; please use the xkb_state_mod_*_is_active API instead"
so here it is
2018-06-08 22:42:15 +09:00
emersion
515f03c94c
swaylock: implement a proper render loop
2018-05-27 13:39:38 +01:00
emersion
e0922094a6
Delete old asciidoc man pages
2018-05-25 19:11:43 +01:00
emersion
cc12bc3723
swaylock: remove unused field
2018-05-23 22:59:24 +01:00
emersion
8eca011fa7
swaylock: don't try to render unconfigured surfaces
2018-05-23 22:55:57 +01:00
emersion
ab7d22052a
Merge branch 'master' into fix-swaylock-hotplugging
2018-05-23 22:54:52 +01:00
Ryan Dwyer
7072f6112c
Swaylock: Use calloc instead of malloc
2018-05-20 22:54:09 +10:00
Ryan Dwyer
9a06de63e7
Swaylock: Log error if multiple images are defined for the same output
2018-05-20 22:54:09 +10:00
Ryan Dwyer
3afd535a3b
Swaylock: Allow per-output images
2018-05-20 22:54:09 +10:00
emersion
b0c5fa2bdf
Fix output hotplugging
2018-05-18 21:57:58 +01:00
emersion
af713a5adb
Fix swaylock crashing when unplugging output
2018-05-18 19:13:08 +01:00
Drew DeVault
c57e8a3840
Add swaylock(1) and swaymsg(1)
2018-05-11 21:39:47 -04:00
Mattias Eriksson
52e2575d19
Improved key handling in swaylock
...
Make escape clear buffer
Add indicator states for ctrl,shift,super et al
Add CapsLock indicator
2018-04-24 15:40:30 +02:00