Commit graph

139 commits

Author SHA1 Message Date
Mattias Eriksson 2d884d4e4f 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
Bruno Pinto 55ed2736b5
[swaylock] Install pam module 2018-04-20 01:29:47 +01:00
Geoff Greer ad6aa21c43 swaylock: Securely zero-out password.
- Replace char* with static array. Any chars > 1024 will be discarded.
- mlock() password buffer so it can't be written to swap.
- Clear password buffer after auth succeeds or fails.

This is basically the same treatment I gave the 0.15 branch in https://github.com/swaywm/sway/pull/1519
2018-04-12 17:49:21 -07:00
Drew DeVault 9939d98454 Error handling in swaylock daemonize()
Fixes #1741
2018-04-05 09:21:39 -04:00
Drew DeVault 5d444b34f6 Address review feedback from @emersion 2018-04-04 18:52:44 -04:00
Drew DeVault 053b51c3ff exit() needs stdlib.h
inb4 acrisci
2018-04-04 18:47:49 -04:00
Drew DeVault 218a3787d2 Import stdlib.h and define POSIX macro for rand() 2018-04-04 18:47:49 -04:00
Drew DeVault 0138f79b4a Move extra roundtrip into password.c 2018-04-04 18:47:49 -04:00
Drew DeVault 46b388995d Add hidpi support to swaylock 2018-04-04 18:47:48 -04:00
Drew DeVault b7e7794912 Implement input-inhibit in sway, swaylock 2018-04-04 18:47:48 -04:00
Drew DeVault 62a736a196 Actually let's not do that TODO 2018-04-04 18:47:48 -04:00
Drew DeVault d053acbed6 R E N D E R I N G 2018-04-04 18:47:48 -04:00
Drew DeVault e902de34db Verify passwords 2018-04-04 18:47:48 -04:00
Drew DeVault 066143adef Add password buffer, refactor rendering/surfaces 2018-04-04 18:47:48 -04:00
Drew DeVault 1fe3cb8965 Link swaylock to xkbcommon 2018-04-04 18:47:48 -04:00
Drew DeVault 1008d4cc91 Split seat code into its own file 2018-04-04 18:47:48 -04:00
Drew DeVault 0bd40ce86b Set up an XKB context for the keyboard 2018-04-04 18:47:48 -04:00
Drew DeVault 402e1d90f0 Grab keyboard off of the seat 2018-04-04 18:47:48 -04:00
Drew DeVault b32bf595ae Initial swaylock port 2018-04-04 18:47:48 -04:00
Tony Crisci d071ff08ae remove the rest of cmake 2017-12-01 05:21:03 -05:00
Drew DeVault a6d5cad309 Document swaylock -f, scratchpad show 2017-10-08 11:09:24 -04:00
Zuzana Svetlikova ef0c51b2f3 Fix github links in doc 2017-10-06 05:13:42 +02:00
Drew DeVault 03af90d302 Clean up fallthrough issues 2017-08-09 18:34:51 -04:00
Calvin Lee 23f11d7c45 Allow swaylock indicator size to be configurable 2017-07-31 19:49:01 +02:00
Drew DeVault 23a1e94402 Make asciidoc (and man pages) optional
And remove it from the build
2017-07-04 16:02:54 -04:00
Andrew Conrad 54e7225e28
Correct swaylock man page description of -i and -c 2017-06-18 21:58:19 -05:00
Sebastian Noack 173b338567 Add -DVERSION flag for release version numbers 2017-04-26 15:56:46 +02:00
Drew DeVault 9aed9d9359 UnGNUify the codebase 2017-03-10 23:41:24 -05:00
Drew DeVault e1ff88a8d2 Correct typo in swaylock(1) 2017-02-25 12:44:39 -05:00
Fabio Alessandro Locati b6ea813e01
Improve swaylock man 2017-02-25 17:22:31 +00:00
Calvin Lee 46bd2bb5df Documentation and style fixes for swaylock 2017-02-21 21:17:01 -07:00
Calvin Lee 34e2c70abc Feature for #1078: Configurable swaylock colors
Colors are configured through the command line so that swaylock conforms
to the i3lock fork 'github.com/chrjguill/i3lock-color'. Differences from
it are that one letter options '-r' and '-s' are not implimentend because
'-s' is already used by '--scaling' in swaylock.
This commit also fixed whitespace in 'include/swaylock/swaylock.h' and
changed `parse_color` in 'common/util.h' so that it can accept colors
that do not start with a hash. This was done to keep compatability with
the i3lock fork.
2017-02-21 14:12:31 -07:00
Zandr Martin f84217d07c
fix #971 2016-12-27 17:54:50 -06:00
Drew DeVault 800d20611c Clear swaylock properly during re-render
Fixes #999
2016-12-20 15:53:42 -05:00
Drew DeVault 25a4a85a59 Run config files through sed and install to /etc 2016-12-02 15:56:36 -05:00
Vasilij Schneidermann 83103abde6 Explicitly set cairo font to avoid wonky fallback
See also https://github.com/i3/i3lock/pull/89
2016-10-05 22:07:54 +02:00
Drew DeVault b2226ac655 Add client support for HiDPI
This adds HiDPI support to swaybar, swaybg, and swaylock.
2016-09-05 11:36:48 -04:00
Drew DeVault 416417a54c Reorganize includes 2016-09-01 08:18:37 -04:00
Drew DeVault a11277c88f Fix warning from unused daemon return value 2016-07-15 08:03:31 -04:00
David Eklov ea0a93c5c4 swaylock: Add -f option to detach from the controlling terminal, fixes #725 2016-07-13 08:20:40 -05:00
David Eklov d3c947676d Bug fix: Add missing header file, unistd.h
Without unistd.h the following functions getuid, alarm and
close are implicitly declared causing compilation to fail due to
-Werror=implicit-function-declaration
2016-06-26 23:25:56 -05:00
Zandr Martin 6e7659ba13 make numpad enter key work in swaylock
see issue #647
2016-06-04 13:35:41 -05:00
Zandr Martin 3746542462 add documentation for client commands 2016-06-04 10:43:23 -05:00
Zandr Martin 54d38d3931 add --no-unlock-indicator to swaylock 2016-05-26 10:16:34 -05:00
Zandr Martin 06e06f9af2 clear swaylock password buffer with esc
for i3lock compatibility
2016-05-26 08:41:22 -05:00
Zandr Martin ac4213a136 clear password buffer with ctrl-u in swaylock
also prevent screen redraws on modifier key presses
2016-05-26 08:35:16 -05:00
Tomáš Čech 468ddfb34d Fix missing include paths
When headers were installed in more sofisticated places (but package
config knows it right), it revealed missing paths in CMake
configuration. Lets fix it.
2016-04-28 20:08:41 +02:00
Kevin Hamacher 7938736887 swaylock: fix double free 2016-04-25 20:24:33 +02:00
wdbw 7125274b89 swaylock: Fix swaylock.pam
Change swaylock.pam to make it work on Debian-based systems also.
2016-04-23 19:37:21 +02:00
Mikkel Oscar Lyderik f8bb487ddb swaylock: Handle possible fail on password realloc 2016-04-10 00:01:05 +02:00
Kevin Hamacher 3b0d9de270 Improve swaylock event flushing 2016-04-03 00:50:34 +02:00
Kevin Hamacher ce22ea1526 swaylock: improve graphical feedback 2016-03-31 13:49:59 +02:00
Drew DeVault 84b4a057c3 Squash warning about uninitialized variable 2016-03-27 10:01:06 -04:00
Kevin Hamacher fb6dcce2ad Add graphical feedback to swaylock (#526) 2016-03-25 15:24:41 +01:00
Nuew 328e031095 Replace with in swaylock 2016-03-24 19:55:00 -04:00
Nuew 34009205e9 Change 'display' to 'output' in swaylock error messages where necessary 2016-03-24 18:52:57 -04:00
Nuew 644c13de77 Change 'display' to 'output' in swaylock docs where necessary 2016-03-24 18:49:58 -04:00
Nuew 0aa4383c9a Add choice of display to --image.
Additionally
  - Made background colors display when an image is enabled if
a --color is specified.
  - Link CJson to swaylock.
  - Add the --socket option to swaylock.
2016-03-24 18:02:34 -04:00
Julius Michaelis 956ca66d2c swaylock: Interpret XKB_KEY_BackSpace as a deletion instead of a normal key. 2016-03-24 19:41:33 +01:00
Mikkel Oscar Lyderik a8f989c651 swaylock: Fix crash when unable to connect to wl
Prevent swaylock from crashing when it can't connect to wayland for
whatever reason. i.e. XDG_RUNTIME_DIR not set.

Fix #534
2016-03-23 14:37:56 +01:00
Gökberk Yaltıraklı 50c052e2f3 swaylock: Grow the password buffer 2016-03-21 22:17:48 +02:00
Aaron Ouellette 133009b652 add a manpage for swaylock 2016-03-01 10:23:45 -05:00
Mikkel Oscar Lyderik 5e253fdd9a Correctly exit sway on errors.
Calling `exit` in sway_terminate prevents sway from correctly shutting
down (freeing data, cleanly terminating the ipc server, etc.).

A better way is to exit straight away if the failure occurs before
`wlc_run` and use sway_abort as usual if it occur when wlc is running.
2016-02-26 09:42:21 +01:00
crondog 73ec01d854 swaylock: Allow for transparent color values
There is only a slight issue. When using a transparent color the views
are arranged to make room for swaylock which we can now see. I tried removing
the arrange call but that just made it worse by putting in an opaque view on the
workspace and not making the lockoverlay color. Ill raise an issue if
this is not easily solved
2016-01-28 13:44:18 +11:00
Drew DeVault baa958eaf2 Remove pointer from swaylock surface 2016-01-26 18:38:05 -05:00
Christoph Gysin a5345e807e extract cairo_set_source_u32() 2016-01-25 22:44:33 +02:00
Christoph Gysin 42bd8c53ee swaylock: support --color 2016-01-25 21:46:26 +02:00
Christoph Gysin 2b58c03ed5 swaylock: extract render_image 2016-01-25 21:18:53 +02:00
Christoph Gysin 071e097214 swaylock: don't memset memory that has been freed
swaylock is randomly crashing because we write to password that has already been
freed in pam_authenticate().
2016-01-25 20:15:00 +02:00
Christoph Gysin dab651a240 swaylock: fix pam conversation 2016-01-25 20:14:59 +02:00
Christoph Gysin 52fea93693 swaylock: add pam conversation debug output 2016-01-25 20:14:44 +02:00
Christoph Gysin b116af629b swaylock: remove global variable pam_reply 2016-01-25 19:43:51 +02:00
Christoph Gysin 7b25caba47 swaylock: add i3lock compatible options 2016-01-23 16:36:19 +02:00
Christoph Gysin 259dc25ba3 swaylock: add option parsing 2016-01-23 16:00:14 +02:00
Mikkel Oscar Lyderik 364e37a1eb Fix whitespace issues. 2016-01-05 23:42:40 +01:00
Yacine Hmito f02cf75ff3 Use SYSCONFDIR as recommended
- swaylock config path not hardcoded anymore
- the unusual and weird FALLBACK_CONFIG_DIR is no more
2015-12-23 12:22:48 +01:00
progandy 21014e606b make gdk-pixbuf dependency really optional 2015-12-20 17:37:52 +01:00
Drew DeVault 3282163f64 Implement compositor support for swaylock
This makes swaylock more or less work.
2015-12-18 19:30:19 -05:00
Drew DeVault eefc93db43 Fix lock extension setup in compositor 2015-12-18 19:30:19 -05:00
Drew DeVault 7558a274fa Add shims for swaylock on compositor 2015-12-18 08:49:04 -05:00
Drew DeVault 101a14faf8 [swaylock] Stupid implementation of password entry 2015-12-17 08:56:08 -05:00
Drew DeVault 9c141f0bf1 Implement PAM password verification in swaylock 2015-12-17 08:44:30 -05:00
Drew DeVault 7b8f02146f Add PAM configuration for swaylock 2015-12-17 08:30:45 -05:00
Drew DeVault 34277207fd Pass keys along from wayland backend to clients 2015-12-12 15:19:23 -05:00
Drew DeVault 029e0c7a2c Add some more keyboard handling for wayland clients 2015-12-12 12:54:10 -05:00
Drew DeVault d2e9c68640 Copy+paste swaybg code to swaylock for testing 2015-12-10 08:18:48 -05:00
Drew DeVault 067ac6cfa7 Discover swaylock extension in registry 2015-12-10 08:05:27 -05:00
Drew DeVault 080a263785 Refactor gdk pixbuf code into shared client lib 2015-12-10 07:57:46 -05:00
Drew DeVault f80481a37d Add swaylock subproject 2015-12-10 07:52:24 -05:00