slock, branch HEADsimple X display locker utility
3791a996e230aec59d61faea46634ae4f031e3592025-08-16T09:11:27Z2025-08-16T09:11:27Zadd a comment for the ctrl-u clear field comboHiltjo Posthumahiltjo@codemadness.orgcommit 3791a996e230aec59d61faea46634ae4f031e359
parent bf0a5577acbd9ec7c6a577601b97144b205840d7
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Sat, 16 Aug 2025 11:11:27 +0200
add a comment for the ctrl-u clear field combo
bf0a5577acbd9ec7c6a577601b97144b205840d72025-08-15T23:30:19Z2025-08-16T09:05:32ZSupport ^U for clearing passwordDrew Marinodrewmarino25@gmail.comcommit bf0a5577acbd9ec7c6a577601b97144b205840d7
parent e3fb34364ed2c53b21edde07ac17560a601783a9
Author: Drew Marino <drewmarino25@gmail.com>
Date: Fri, 15 Aug 2025 19:30:19 -0400
Support ^U for clearing password
^U is a fairly common key combo for clearing fields, this patch adds
support for it.
e3fb34364ed2c53b21edde07ac17560a601783a92025-08-09T12:34:37Z2025-08-09T12:34:37Zbump version to 1.6Hiltjo Posthumahiltjo@codemadness.orgcommit e3fb34364ed2c53b21edde07ac17560a601783a9
parent a70d5d2429abf8dcb70a8817990975dc9a621d27
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Sat, 9 Aug 2025 14:34:37 +0200
bump version to 1.6
a70d5d2429abf8dcb70a8817990975dc9a621d272022-09-09T08:50:12Z2025-03-09T09:02:34Zsimplify post-lock cmd and die if it failsNRKnrk@disroot.orgcommit a70d5d2429abf8dcb70a8817990975dc9a621d27
parent a34d8fb4327bbb1afd92e7527c53fcaad547a495
Author: NRK <nrk@disroot.org>
Date: Fri, 9 Sep 2022 14:50:12 +0600
simplify post-lock cmd and die if it fails
this patch does two things:
0. simplify the code by using posix_spawn()
1. unify the behavior of what happens if the post-lock cmd fails.
currently, if `fork()` fails, slock will die without locking the screen.
HOWEVER if `execvp()` fails it prints a message to stderr (which the
user cannot see since the screen has been locked already) and only exits
the child while the parent locks the screen.
to reproduce:
# slock some_bin_that_doesnt_exist
this behavior is inconsistent, if the idea is that post-lock cmd is
_not_ important then we shouldn't `die()` on `fork()` failure either.
and if we assume that the post-lock cmd _is_ important, then we should
die on exec failure as well.
this patch assumes the latter and calls `die()` if `posix_spawn()`
fails.
a34d8fb4327bbb1afd92e7527c53fcaad547a4952023-10-06T09:57:31Z2023-10-06T09:57:31Zslock.1: use standard wording for optionsHiltjo Posthumahiltjo@codemadness.orgcommit a34d8fb4327bbb1afd92e7527c53fcaad547a495
parent e8bca65d629a4faa89439c9f0e599efb5a259573
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 Oct 2023 11:57:31 +0200
slock.1: use standard wording for options
Remove the OPTIONS section and add an EXIT STATUS section.
e8bca65d629a4faa89439c9f0e599efb5a2595732023-10-06T09:50:11Z2023-10-06T09:50:11Zwrite version to stdout like the man page saysHiltjo Posthumahiltjo@codemadness.orgcommit e8bca65d629a4faa89439c9f0e599efb5a259573
parent ca6f30f621c1195b577ace7a14b9037fab0dab91
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 Oct 2023 11:50:11 +0200
write version to stdout like the man page says
ca6f30f621c1195b577ace7a14b9037fab0dab912023-10-06T09:48:40Z2023-10-06T09:48:40Zslock.1: improve man pageHiltjo Posthumahiltjo@codemadness.orgcommit ca6f30f621c1195b577ace7a14b9037fab0dab91
parent 2fec14c567411b939e717c380d8b4460d462b146
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 Oct 2023 11:48:40 +0200
slock.1: improve man page
* Fix all lint warnings.
* Remove "Op Ar arg..." in the description. It looks ugly.
* No need to set -offset left for .Bd literal.
2fec14c567411b939e717c380d8b4460d462b1462023-10-06T09:41:19Z2023-10-06T09:41:19Zconfig.mk: no need to set CCHiltjo Posthumahiltjo@codemadness.orgcommit 2fec14c567411b939e717c380d8b4460d462b146
parent 5678764412873baa62e1536f0622d6a7cec62181
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 Oct 2023 11:41:19 +0200
config.mk: no need to set CC
5678764412873baa62e1536f0622d6a7cec621812023-10-06T09:39:40Z2023-10-06T09:39:40ZMakefile: be verbose and remove optionsHiltjo Posthumahiltjo@codemadness.orgcommit 5678764412873baa62e1536f0622d6a7cec62181
parent aecfb3f6803bc2e7a5478aeb4f3390cbaaa563c7
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 Oct 2023 11:39:40 +0200
Makefile: be verbose and remove options
Some things to improve at some point:
* Respect system/packaging CFLAGS/LDFLAGS (don't hardcode -Os -Wall -pedantic,
-s, etc).
aecfb3f6803bc2e7a5478aeb4f3390cbaaa563c72023-10-06T09:39:31Z2023-10-06T09:39:31Zupdate LICENSEHiltjo Posthumahiltjo@codemadness.orgcommit aecfb3f6803bc2e7a5478aeb4f3390cbaaa563c7
parent 4f045545a25cc02c64bfc08d27ed2ccecb962292
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 6 Oct 2023 11:39:31 +0200
update LICENSE
4f045545a25cc02c64bfc08d27ed2ccecb9622922022-10-04T17:45:14Z2022-10-04T17:45:14Zbump version to 1.5Hiltjo Posthumahiltjo@codemadness.orgcommit 4f045545a25cc02c64bfc08d27ed2ccecb962292
parent 265704d73647e0d4823126bbb7ddde1d415a618d
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Tue, 4 Oct 2022 19:45:14 +0200
bump version to 1.5
265704d73647e0d4823126bbb7ddde1d415a618d2022-10-04T17:44:47Z2022-10-04T17:44:47ZMakefile: explicit_bzero.c was copied twice (GNU make gives a warning)Hiltjo Posthumahiltjo@codemadness.orgcommit 265704d73647e0d4823126bbb7ddde1d415a618d
parent 35633d45672d14bd798c478c45d1a17064701aa9
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Tue, 4 Oct 2022 19:44:47 +0200
Makefile: explicit_bzero.c was copied twice (GNU make gives a warning)
35633d45672d14bd798c478c45d1a17064701aa92017-03-25T20:16:01Z2017-03-25T20:51:29ZProperly clear the last entered characterTobias Stoeckmanntobias@stoeckmann.orgcommit 35633d45672d14bd798c478c45d1a17064701aa9
parent 2d2a21a90ad1b53594b1b90b97486189ec54afce
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date: Sat, 25 Mar 2017 21:16:01 +0100
Properly clear the last entered character
When enter is pressed, passwd[len] will be set to '\0'. Pressing
backspace is supposed to remove the last entered character.
But currently, the clearing has an off-by-one, as in setting
passwd[len] to '\0' just like enter would do.
You can also verify it by imagining len=1 and that it's impossible to
clear passwd[0] by pressing backspace with the current code.
Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2d2a21a90ad1b53594b1b90b97486189ec54afce2016-11-22T23:29:18Z2016-11-22T23:29:18Zrm trailing whitespace in READMEMarkus Teichteichm@fs.tum.decommit 2d2a21a90ad1b53594b1b90b97486189ec54afce
parent 325581b935c74c321062d1f6873704411bcc5071
Author: Markus Teich <teichm@fs.tum.de>
Date: Wed, 23 Nov 2016 00:29:18 +0100
rm trailing whitespace in README
325581b935c74c321062d1f6873704411bcc50712016-11-22T23:28:43Z2016-11-22T23:28:43Zsyntax fixMarkus Teichteichm@fs.tum.decommit 325581b935c74c321062d1f6873704411bcc5071
parent 0ff0d9f7a7156a0e0b41d5b208ae5625e3a15dab
Author: Markus Teich <teichm@fs.tum.de>
Date: Wed, 23 Nov 2016 00:28:43 +0100
syntax fix
0ff0d9f7a7156a0e0b41d5b208ae5625e3a15dab2016-11-22T23:28:25Z2016-11-22T23:28:25Zthere can only be one window in the eventMarkus Teichteichm@fs.tum.decommit 0ff0d9f7a7156a0e0b41d5b208ae5625e3a15dab
parent 7a604ec1fae1eda36f210a28a2cf466583a9cb87
Author: Markus Teich <teichm@fs.tum.de>
Date: Wed, 23 Nov 2016 00:28:25 +0100
there can only be one window in the event
7a604ec1fae1eda36f210a28a2cf466583a9cb872016-11-07T17:15:20Z2016-11-22T23:26:51ZFix resize with multiple monitors and portrait modeBob Uhlbuhl@zvelo.comcommit 7a604ec1fae1eda36f210a28a2cf466583a9cb87
parent fa1158958466f38cd35c9114023a0175e67ebb6f
Author: Bob Uhl <buhl@zvelo.com>
Date: Mon, 7 Nov 2016 10:15:20 -0700
Fix resize with multiple monitors and portrait mode
When connecting/disconnecting a portrait monitor, the
XRRScreenChangeNotifyEvent height & width are reversed due to the XRandR
rotation; detect this and DTRT.
fa1158958466f38cd35c9114023a0175e67ebb6f2016-11-20T00:07:11Z2016-11-20T00:07:11Zbump versionMarkus Teichmarkus.teich@stusta.mhn.decommit fa1158958466f38cd35c9114023a0175e67ebb6f
parent d5da84cf5adce2f30ed348b631861cc089f3b559
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Sun, 20 Nov 2016 01:07:11 +0100
bump version
d5da84cf5adce2f30ed348b631861cc089f3b5592016-11-19T23:59:19Z2016-11-20T00:01:47Zadd arg.h and util.h to MakefileMarkus Teichmarkus.teich@stusta.mhn.decommit d5da84cf5adce2f30ed348b631861cc089f3b559
parent ae96836f90c3652fd0907e0632ddd4591d5716fa
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Sun, 20 Nov 2016 00:59:19 +0100
add arg.h and util.h to Makefile
ae96836f90c3652fd0907e0632ddd4591d5716fa2016-11-19T23:29:41Z2016-11-19T23:29:41Zclarify colors in config.def.hMarkus Teichmarkus.teich@stusta.mhn.decommit ae96836f90c3652fd0907e0632ddd4591d5716fa
parent 7d31ff65a0b0388f788ca6932c815ab29e5fb10f
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Sun, 20 Nov 2016 00:29:41 +0100
clarify colors in config.def.h
7d31ff65a0b0388f788ca6932c815ab29e5fb10f2016-11-19T23:29:01Z2016-11-19T23:29:01Zmove config.h inclusion after type declarationsMarkus Teichmarkus.teich@stusta.mhn.decommit 7d31ff65a0b0388f788ca6932c815ab29e5fb10f
parent 597469541c10fdb8920ed190b72763b0719e5cb5
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Sun, 20 Nov 2016 00:29:01 +0100
move config.h inclusion after type declarations
597469541c10fdb8920ed190b72763b0719e5cb52016-10-17T18:28:09Z2016-10-17T22:29:41ZUnboolify slock.cLaslo Hunholddev@frign.decommit 597469541c10fdb8920ed190b72763b0719e5cb5
parent c96e725df0c449abb5f1f6a3b604f64fa69c4756
Author: Laslo Hunhold <dev@frign.de>
Date: Mon, 17 Oct 2016 20:28:09 +0200
Unboolify slock.c
c96e725df0c449abb5f1f6a3b604f64fa69c47562016-10-01T22:10:45Z2016-10-10T18:40:13ZUse explicit strcmp() instead of inlining itFRIGNdev@frign.decommit c96e725df0c449abb5f1f6a3b604f64fa69c4756
parent 6a1bd896356ae3b59053b5e458fdff62d076114b
Author: FRIGN <dev@frign.de>
Date: Sun, 2 Oct 2016 00:10:45 +0200
Use explicit strcmp() instead of inlining it
Makes it a tad more readable; the previous "optimization" will be done
by the compiler anyway.
6a1bd896356ae3b59053b5e458fdff62d076114b2016-10-01T22:03:18Z2016-10-10T18:40:13ZNo need for oldc to be staticFRIGNdev@frign.decommit 6a1bd896356ae3b59053b5e458fdff62d076114b
parent b099d2fd1868a5497069b85e5af0e6148077a6ba
Author: FRIGN <dev@frign.de>
Date: Sun, 2 Oct 2016 00:03:18 +0200
No need for oldc to be static
b099d2fd1868a5497069b85e5af0e6148077a6ba2016-10-01T21:56:33Z2016-10-10T18:40:13ZUse NUL character constant explicitlyFRIGNdev@frign.decommit b099d2fd1868a5497069b85e5af0e6148077a6ba
parent 0a43b78d00ebac574376ffd93223a751e21e265e
Author: FRIGN <dev@frign.de>
Date: Sat, 1 Oct 2016 23:56:33 +0200
Use NUL character constant explicitly
0a43b78d00ebac574376ffd93223a751e21e265e2016-10-01T21:50:49Z2016-10-10T18:39:33ZKeep the line-lengths at bayFRIGNdev@frign.decommit 0a43b78d00ebac574376ffd93223a751e21e265e
parent bd069b08c5fe4fea3c78f6991a849b19ed40cbe0
Author: FRIGN <dev@frign.de>
Date: Sat, 1 Oct 2016 23:50:49 +0200
Keep the line-lengths at bay
This makes the code more readable and prevents wraparounds in the
editor.
bd069b08c5fe4fea3c78f6991a849b19ed40cbe02016-09-28T18:20:51Z2016-09-28T20:01:58ZAdd a section on security considerationsFRIGNdev@frign.decommit bd069b08c5fe4fea3c78f6991a849b19ed40cbe0
parent 2d85c5baed4c4b4ecc19f7934fac1fc6a5b5c410
Author: FRIGN <dev@frign.de>
Date: Wed, 28 Sep 2016 20:20:51 +0200
Add a section on security considerations
The section on security considerations sheds some light on the problems that we
can't solve within slock but which the user has to solve in his X configuration.
2d85c5baed4c4b4ecc19f7934fac1fc6a5b5c4102016-09-26T11:28:09Z2016-09-26T11:28:09Zremove confusing DPMS commentMarkus Teichmarkus.teich@stusta.mhn.decommit 2d85c5baed4c4b4ecc19f7934fac1fc6a5b5c410
parent a98fba8971ab4b8d8b1f18422b808a79434d8923
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Mon, 26 Sep 2016 13:28:09 +0200
remove confusing DPMS comment
FRIGN on hackers@suckless.org:
What has been bugging me for quite a while is this DPMS comment that was added
there for no reason. Every sane mind would agree that fiddling with DPMS makes
no sense whatsoever. When I slock, my screen turns off after 10 minutes. So, if
I don't like that, I disable DPMS. If I do, I just fiddle around with my mouse a
bit and get the slock promt.
a98fba8971ab4b8d8b1f18422b808a79434d89232016-09-23T17:08:39Z2016-09-23T17:08:39Zerror out early on crypt() failMarkus Teichmarkus.teich@stusta.mhn.decommit a98fba8971ab4b8d8b1f18422b808a79434d8923
parent dc2e8e839e4d72f5fec36c9a0474e6062a7a8f51
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Fri, 23 Sep 2016 19:08:39 +0200
error out early on crypt() fail
dc2e8e839e4d72f5fec36c9a0474e6062a7a8f512016-09-11T21:17:53Z2016-09-23T16:54:56ZStop using $USER for shadow entriesFRIGNdev@frign.decommit dc2e8e839e4d72f5fec36c9a0474e6062a7a8f51
parent 9a617db716641da8489e2062e04098220954bffe
Author: FRIGN <dev@frign.de>
Date: Sun, 11 Sep 2016 23:17:53 +0200
Stop using $USER for shadow entries
This was extremely bad practice, effectively making the program behave
different depending on which architecture you are running it on.
OpenBSD offers getpwuid_shadow, but there is no getspuid for getspnam,
so we resort to using the pw_name entry in the struct passwd we filled
earlier.
This prevents slock from crashing when $USER is empty (easy to do). If
you want to run slock as a different user, don't use
$ USER="tom" slock
but doas or sudo which were designed for this purpose.
9a617db716641da8489e2062e04098220954bffe2016-09-11T21:10:57Z2016-09-23T16:51:40ZRename getpw() and pws to gethash() and hashFRIGNdev@frign.decommit 9a617db716641da8489e2062e04098220954bffe
parent b00f444a4ea0d9ffa5cd7dcda71c97cdf05d322e
Author: FRIGN <dev@frign.de>
Date: Sun, 11 Sep 2016 23:10:57 +0200
Rename getpw() and pws to gethash() and hash
b00f444a4ea0d9ffa5cd7dcda71c97cdf05d322e2016-09-11T21:08:19Z2016-09-23T16:39:01ZRemove cleanup and deglobalize and rework data structuresFRIGNdev@frign.decommit b00f444a4ea0d9ffa5cd7dcda71c97cdf05d322e
parent cd3c546c37d91e24b8c55bab88bfcb920d8ea895
Author: FRIGN <dev@frign.de>
Date: Sun, 11 Sep 2016 23:08:19 +0200
Remove cleanup and deglobalize and rework data structures
The cleanup removal is a joint-venture with Markus. We assume the X server does
the cleanup, so we don't need it. The idea is that the fds are closed at exit
and thus already indicate to the X server that the client has quit. Analogously
the same applies to freeing memory sections previously allocated for the X
server.
We love XXXXXL burgers and therefore removed
XUngrabPointer
XUngrabKeyboard
XFreeColors
XFreePixmap
XDestroyWindow
Lines of Code.
For a project like slock there is no need to carry around global state. By
moving the three structures to main() it is now clear which functions modify
which state, greatly improving the readability of the code, especially given
slock is a suid program.
cd3c546c37d91e24b8c55bab88bfcb920d8ea8952016-09-08T17:03:12Z2016-09-08T21:36:07Zconfig.mk: be more explicative about FLAGSQuentin Rameauquinq@fifth.spacecommit cd3c546c37d91e24b8c55bab88bfcb920d8ea895
parent 22eba05f3683c12fa6a5f898d08c33704c9fbb73
Author: Quentin Rameau <quinq@fifth.space>
Date: Thu, 8 Sep 2016 19:03:12 +0200
config.mk: be more explicative about FLAGS
Group each *FLAG with its description and add a NetBSD specific.
22eba05f3683c12fa6a5f898d08c33704c9fbb732016-09-07T11:32:29Z2016-09-07T22:36:45ZEnsure Polyphemus-Mitigation and properly drop privilegesFRIGNdev@frign.decommit 22eba05f3683c12fa6a5f898d08c33704c9fbb73
parent 04143fd68dbc656905714eff5c208fadb3464e25
Author: FRIGN <dev@frign.de>
Date: Wed, 7 Sep 2016 13:32:29 +0200
Ensure Polyphemus-Mitigation and properly drop privileges
Don't hide privilege drops inside readpw() and actually make it
configurable what you are dropping to in config.h.
The privilege drop comes after opening the Display because the
user "nobody" with "nogroup" can't do that.
So why do I call this strategy the Polyphemus-Mitigation?
"""
After the giant returns in the evening and eats two more of the men,
Odysseus offers Polyphemus some strong and undiluted wine given to him
earlier on his journey. Drunk and unwary, the giant asks Odysseus his
name, promising him a guest-gift if he answers. Odysseus tells him
"Οὖτις", which means "nobody" and Polyphemus promises to eat this
"Nobody" last of all. With that, he falls into a drunken sleep. Odysseus
had meanwhile hardened a wooden stake in the fire and now drives it into
Polyphemus' eye. When Polyphemus shouts for help from his fellow giants,
saying that "Nobody" has hurt him, they think Polyphemus is being
afflicted by divine power and recommend prayer as the answer.
"""
(source: https://en.wikipedia.org/wiki/Polyphemus)
04143fd68dbc656905714eff5c208fadb3464e252016-09-07T11:02:42Z2016-09-07T11:10:25ZUnify how we check passwords between different OSesQuentin Rameauquinq@fifth.spacecommit 04143fd68dbc656905714eff5c208fadb3464e25
parent 9698224090ff2989659717815bfa076d5d436a70
Author: Quentin Rameau <quinq@fifth.space>
Date: Wed, 7 Sep 2016 13:02:42 +0200
Unify how we check passwords between different OSes
9698224090ff2989659717815bfa076d5d436a702016-09-07T08:04:06Z2016-09-07T08:04:06Zmake error message prefix consistentMarkus Teichmarkus.teich@stusta.mhn.decommit 9698224090ff2989659717815bfa076d5d436a70
parent a55594fdd69fcfcc10b8c9624d5aba298969d713
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Wed, 7 Sep 2016 10:04:06 +0200
make error message prefix consistent
a55594fdd69fcfcc10b8c9624d5aba298969d7132016-09-02T09:49:02Z2016-09-02T09:49:02Zincreasing for loops are idiomaticMarkus Teichmarkus.teich@stusta.mhn.decommit a55594fdd69fcfcc10b8c9624d5aba298969d713
parent 03a87179919eebab7d38c548e3ff8e2911512468
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Fri, 2 Sep 2016 11:49:02 +0200
increasing for loops are idiomatic
03a87179919eebab7d38c548e3ff8e29115124682016-09-01T11:47:19Z2016-09-02T08:50:32ZLocalize running and failure inside readpw()Quentin Rameauquinq@fifth.spacecommit 03a87179919eebab7d38c548e3ff8e2911512468
parent 39fb855aa100c5a5a8b7f3b6cc1fbb2135fe7dde
Author: Quentin Rameau <quinq@fifth.space>
Date: Thu, 1 Sep 2016 13:47:19 +0200
Localize running and failure inside readpw()
They are only needed there, so don't make them global.
39fb855aa100c5a5a8b7f3b6cc1fbb2135fe7dde2016-09-01T11:47:05Z2016-09-02T08:50:32ZMove screen unlocking inside cleanup()Quentin Rameauquinq@fifth.spacecommit 39fb855aa100c5a5a8b7f3b6cc1fbb2135fe7dde
parent e378f735d857f7da124177e3540912d920be5022
Author: Quentin Rameau <quinq@fifth.space>
Date: Thu, 1 Sep 2016 13:47:05 +0200
Move screen unlocking inside cleanup()
e378f735d857f7da124177e3540912d920be50222016-09-01T11:46:51Z2016-09-02T08:50:32ZRe-introduce the waiting loop for input grabbingQuentin Rameauquinq@fifth.spacecommit e378f735d857f7da124177e3540912d920be5022
parent 1f66885fbf36c726b7615060d3c98cbf74218d13
Author: Quentin Rameau <quinq@fifth.space>
Date: Thu, 1 Sep 2016 13:46:51 +0200
Re-introduce the waiting loop for input grabbing
We actually “need” to wait a little for input to be released before
locking for cases where slock is spawned from other graphical
applications using keybindings.
This undoes the misbehaviour I introduced in c2f9757, sorry for the mess.
1f66885fbf36c726b7615060d3c98cbf74218d132016-09-01T11:46:19Z2016-09-02T08:50:32ZAdd cleanup() to do free(locks) + XCloseDisplay()Quentin Rameauquinq@fifth.spacecommit 1f66885fbf36c726b7615060d3c98cbf74218d13
parent 137f0076c2986306109d637599b885bdaf92cd58
Author: Quentin Rameau <quinq@fifth.space>
Date: Thu, 1 Sep 2016 13:46:19 +0200
Add cleanup() to do free(locks) + XCloseDisplay()
137f0076c2986306109d637599b885bdaf92cd582016-08-22T23:45:46Z2016-08-30T23:06:44ZRefactor dontkillme()FRIGNdev@frign.decommit 137f0076c2986306109d637599b885bdaf92cd58
parent a9eddbd94fb03a36186ef2b1e784468dfcddbc19
Author: FRIGN <dev@frign.de>
Date: Tue, 23 Aug 2016 01:45:46 +0200
Refactor dontkillme()
- Use file pointers instead of raw I/O, inspired by Kernel code.
- Use OOM_SCORE_ADJ_MIN from linux/oom.h instead of working with
magic values.
- Stricter error checking and descriptive error messages.
The reasoning for using the constant rather than magic values lies
in the fact that this ensures people get the message.
With "-1000", a code reviewer would question if that is really the
lowest possible number or just an arbitrary value.
The kernel ABI probably won't change, but even in the case, we wouldn't
have to modify the code. The OOM killer only is guaranteed to not
kill you if you have OOM_SCORE_ADJ_MIN.
a9eddbd94fb03a36186ef2b1e784468dfcddbc192016-08-23T08:55:34Z2016-08-30T23:04:11ZConvert manpage to mandoc and fix usageFRIGNdev@frign.decommit a9eddbd94fb03a36186ef2b1e784468dfcddbc19
parent d8bec0f6fdc8a246d78cb488a0068954b46fcb29
Author: FRIGN <dev@frign.de>
Date: Tue, 23 Aug 2016 10:55:34 +0200
Convert manpage to mandoc and fix usage
In all honor, the previous usage was formally more correct, but for the
sake of consistency across all the tools having the v-flag, I separated
it from the command-string.
Also, make use of the mandoc macros for the manpage. This makes it
easier to maintain, extend and change in the future.
d8bec0f6fdc8a246d78cb488a0068954b46fcb292016-08-30T22:59:06Z2016-08-30T22:59:06Zfix CVE-2016-6866Markus Teichmarkus.teich@stusta.mhn.decommit d8bec0f6fdc8a246d78cb488a0068954b46fcb29
parent b87bfa234378bcfc1b13273c5089f07902de1725
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Wed, 31 Aug 2016 00:59:06 +0200
fix CVE-2016-6866
b87bfa234378bcfc1b13273c5089f07902de17252016-08-30T22:56:13Z2016-08-30T22:56:13ZUpdate bsd-auth string.Markus Teichmarkus.teich@stusta.mhn.decommit b87bfa234378bcfc1b13273c5089f07902de1725
parent c2f975773d720e734dbdab9a1e9ae51b0972ae0c
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Wed, 31 Aug 2016 00:56:13 +0200
Update bsd-auth string.
Thanks to Hiltjo for discovering this.
c2f975773d720e734dbdab9a1e9ae51b0972ae0c2016-08-30T15:33:09Z2016-08-30T17:54:26ZExit as soon as possible on input grabbing errorQuentin Rameauquinq@fifth.spacecommit c2f975773d720e734dbdab9a1e9ae51b0972ae0c
parent 3bb868e40873c568acdec74f7783c77f063aa396
Author: Quentin Rameau <quinq@fifth.space>
Date: Tue, 30 Aug 2016 17:33:09 +0200
Exit as soon as possible on input grabbing error
We want to know at once if slock failed or not to lock the screen, not
seing a black screen for a whole second (or two) and then die.
Thanks to ^7heo for reporting this.
3bb868e40873c568acdec74f7783c77f063aa3962016-08-21T22:25:21Z2016-08-22T21:22:20ZRefactor main()FRIGNdev@frign.decommit 3bb868e40873c568acdec74f7783c77f063aa396
parent a7afade1701a809f6a33b53525d59dd29b38d381
Author: FRIGN <dev@frign.de>
Date: Mon, 22 Aug 2016 00:25:21 +0200
Refactor main()
- Add arg.h and fix usage
Given slock is suid we don't want to have half-measures in place to
parse the arguments in case the code is changed in the future with
somebody not paying enough attention.
Also, fix the usage string output to be more consistent across the
suckless toolbase and make it reflect the manpage entry.
- Comments
Use proper block comments and add/change them where necessary
to help in studying the code.
- Error messages
Consistently prepend them with "slock:" and fix wording and
do a proper cleanup before quitting (XCloseDisplay and free
the locks), making the die() semantics consistent with st's.
- getpwuid() error reporting
Properly present an error message if getpwuid() fails.
- fork() error reporting
Properly present an error message if fork() fails. If we cannot
close the connection within the fork context we abort the
operation and report an error.
- execvp() error handling
If execvp fails, we cannot call die() afterwards as this implies
calling exit(). We must use _exit() to prevent the libc from
doing now "illegal" cleanup-work.
a7afade1701a809f6a33b53525d59dd29b38d3812016-07-31T11:43:00Z2016-08-13T07:58:00Zclear passwords with explicit_bzeroHiltjo Posthumahiltjo@codemadness.orgcommit a7afade1701a809f6a33b53525d59dd29b38d381
parent 65b8d5278882310eed758e6fbfd6ab9676db883c
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Sun, 31 Jul 2016 13:43:00 +0200
clear passwords with explicit_bzero
Make sure to explicitly clear memory that is used for password input. memset
is often optimized out by the compiler.
Brought to attention by the OpenBSD community, see:
https://marc.info/?t=146989502600003&r=1&w=2
Thread subject: x11/slock: clear passwords with explicit_bzero
Changes:
- explicit_bzero.c import from libressl-portable.
- Makefile: add COMPATSRC for compatibility src.
- config.mk: add separate *BSD section in config.mk to simply uncomment it on
these platforms.
65b8d5278882310eed758e6fbfd6ab9676db883c2016-02-15T13:15:45Z2016-02-15T13:25:17ZRevert "No need for usage()"Markus Teichmarkus.teich@stusta.mhn.decommit 65b8d5278882310eed758e6fbfd6ab9676db883c
parent ec46680fe10ffc69007b0a8b29d9e69c72704053
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Mon, 15 Feb 2016 14:15:45 +0100
Revert "No need for usage()"
This reverts most of commit a6dc051e3744ce5b14c54d2d246d3e8258207e76 and fixes
some related stuff:
- keep spelling fixes from original commit
- make -h and -v also work when followed by more arguments
- any unknown flag prints usage
- fix output of -v to display "slock: version 1.3" instead of "slock: slock-1.3"
ec46680fe10ffc69007b0a8b29d9e69c727040532016-02-15T13:00:56Z2016-02-15T13:00:56Zrevert using argv0 and minor fixupMarkus Teichmarkus.teich@stusta.mhn.decommit ec46680fe10ffc69007b0a8b29d9e69c72704053
parent b02c4d452a7942d4be3c69e6f98dafd35a2e4e78
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Mon, 15 Feb 2016 14:00:56 +0100
revert using argv0 and minor fixup
- use hardcoded "slock" instead of argv[0]
- add "slock: " to fprintf calls, where it was missing
- revert `argc--, argv++` shifting
b02c4d452a7942d4be3c69e6f98dafd35a2e4e782016-02-14T01:13:54Z2016-02-14T01:13:54ZUse argv0 instead of passing "slock:" to die every timeFRIGNdev@frign.decommit b02c4d452a7942d4be3c69e6f98dafd35a2e4e78
parent a6dc051e3744ce5b14c54d2d246d3e8258207e76
Author: FRIGN <dev@frign.de>
Date: Sun, 14 Feb 2016 02:13:54 +0100
Use argv0 instead of passing "slock:" to die every time
a6dc051e3744ce5b14c54d2d246d3e8258207e762016-02-14T00:48:48Z2016-02-14T01:00:14ZNo need for usage()FRIGNdev@frign.decommit a6dc051e3744ce5b14c54d2d246d3e8258207e76
parent bdcbeab0d8ac0963c61ae1d9d1ed57d3effb8ec3
Author: FRIGN <dev@frign.de>
Date: Sun, 14 Feb 2016 01:48:48 +0100
No need for usage()
There are 2 arguments why -v and -h are broken:
1) if you are running off git, -v will show the last stable
release, effectively making this option useless.
people running stable versions leave open an attack surface
this way in case there are vulnerabilities found.
99% of the people are also using package managers to keep
their software up to date, instead of running $TOOL -v to
check how old it is.
2) -h is a sad excuse for not just looking at the manual page
(man 1 slock). Given we accept a post_lock_command, we can't
be as liberal and just intercept certain flags.
I changed the manpage to reflect this change.
bdcbeab0d8ac0963c61ae1d9d1ed57d3effb8ec32016-02-14T00:32:02Z2016-02-14T00:33:18ZClarify config.def.hFRIGNdev@frign.decommit bdcbeab0d8ac0963c61ae1d9d1ed57d3effb8ec3
parent 3abbffa4934a62146e995ee7c2cf3ba50991b4ad
Author: FRIGN <dev@frign.de>
Date: Sun, 14 Feb 2016 01:32:02 +0100
Clarify config.def.h
Clear up the wording a bit and explain what failonclear means.
3abbffa4934a62146e995ee7c2cf3ba50991b4ad2016-02-14T00:28:37Z2016-02-14T00:28:37ZSimplify the oom-taming-functionFRIGNdev@frign.decommit 3abbffa4934a62146e995ee7c2cf3ba50991b4ad
parent 6a52a85a1ac87b29048863d599a8b0f0ee712482
Author: FRIGN <dev@frign.de>
Date: Sun, 14 Feb 2016 01:28:37 +0100
Simplify the oom-taming-function
There really is no need to source a defined variable from a linux
header. The OOM-rank ranges from -1000 to 1000, so we can safely
hardcode -1000, which is a sane thing to do given slock is suid and
we don't want to play around too much here anyway.
On another notice, let's not forget that this still is a shitty
heuristic. The OOM-killer still can kill us (thus I also changed
the wording in the error-message. We do not disable the OOM-killer,
we're just hiding.
6a52a85a1ac87b29048863d599a8b0f0ee7124822016-02-11T15:49:59Z2016-02-11T15:51:12Zadd slock.1 man pageMarkus Teichmarkus.teich@stusta.mhn.decommit 6a52a85a1ac87b29048863d599a8b0f0ee712482
parent c28ac1ebf16e5d10a8e0416065e7e3980be1ca5c
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Thu, 11 Feb 2016 16:49:59 +0100
add slock.1 man page
c28ac1ebf16e5d10a8e0416065e7e3980be1ca5c2016-02-11T15:30:52Z2016-02-11T15:30:52ZUpdate license yearFRIGNdev@frign.decommit c28ac1ebf16e5d10a8e0416065e7e3980be1ca5c
parent aa6a3853412fe001b77d3ef42b450b9ae48aa34c
Author: FRIGN <dev@frign.de>
Date: Thu, 11 Feb 2016 16:30:52 +0100
Update license year
It actually was 2014 and not 2015.
aa6a3853412fe001b77d3ef42b450b9ae48aa34c2016-02-11T15:29:26Z2016-02-11T15:29:26ZDon't forget the E-MailFRIGNdev@frign.decommit aa6a3853412fe001b77d3ef42b450b9ae48aa34c
parent 6adeb1281e7df28777e304877059f4636c1389f3
Author: FRIGN <dev@frign.de>
Date: Thu, 11 Feb 2016 16:29:26 +0100
Don't forget the E-Mail
6adeb1281e7df28777e304877059f4636c1389f32016-02-11T15:28:41Z2016-02-11T15:28:41ZAdd myself to LicenseFRIGNdev@frign.decommit 6adeb1281e7df28777e304877059f4636c1389f3
parent f6582b68b03fe25fe0296b685af6b5924cca7df9
Author: FRIGN <dev@frign.de>
Date: Thu, 11 Feb 2016 16:28:41 +0100
Add myself to License
forgot that a while ago
f6582b68b03fe25fe0296b685af6b5924cca7df92016-02-11T15:26:12Z2016-02-11T15:26:12Zupdate copyright year in -v outputMarkus Teichmarkus.teich@stusta.mhn.decommit f6582b68b03fe25fe0296b685af6b5924cca7df9
parent bfafc91da7b51be4e1543b64ee118fff2e3a4cfb
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Thu, 11 Feb 2016 16:26:12 +0100
update copyright year in -v output
bfafc91da7b51be4e1543b64ee118fff2e3a4cfb2016-02-11T15:23:48Z2016-02-11T15:23:48Zprepare 1.3 releaseMarkus Teichmarkus.teich@stusta.mhn.decommit bfafc91da7b51be4e1543b64ee118fff2e3a4cfb
parent 32149e404383d979edf58b878cff9c5d8a935259
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Thu, 11 Feb 2016 16:23:48 +0100
prepare 1.3 release
32149e404383d979edf58b878cff9c5d8a9352592016-02-11T15:22:34Z2016-02-11T15:22:34Zremove .hgtagsMarkus Teichmarkus.teich@stusta.mhn.decommit 32149e404383d979edf58b878cff9c5d8a935259
parent 1766ecdfd4db86e5d022a8fb951559714eb1e6a4
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Thu, 11 Feb 2016 16:22:34 +0100
remove .hgtags
1766ecdfd4db86e5d022a8fb951559714eb1e6a42016-01-29T21:11:18Z2016-01-29T21:11:18Zadd hint for suid to oom error messageMarkus Teichmarkus.teich@stusta.mhn.decommit 1766ecdfd4db86e5d022a8fb951559714eb1e6a4
parent 9dfe0ce531023bf63c0e518b07ee97cf0cac742a
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Fri, 29 Jan 2016 22:11:18 +0100
add hint for suid to oom error message
9dfe0ce531023bf63c0e518b07ee97cf0cac742a2016-01-18T15:49:15Z2016-01-18T15:49:15Zerror messages on grab failureMarkus Teichmarkus.teich@stusta.mhn.decommit 9dfe0ce531023bf63c0e518b07ee97cf0cac742a
parent 55e827af0fb94f6c2b9e76a7bfe7e98cf697dc7b
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Mon, 18 Jan 2016 16:49:15 +0100
error messages on grab failure
55e827af0fb94f6c2b9e76a7bfe7e98cf697dc7b2016-01-16T11:38:36Z2016-01-18T15:47:41Zcode style fixMarkus Teichmarkus.teich@stusta.mhn.decommit 55e827af0fb94f6c2b9e76a7bfe7e98cf697dc7b
parent e867c38123175d6f050e051ee6b00f4737a9712a
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Sat, 16 Jan 2016 12:38:36 +0100
code style fix
e867c38123175d6f050e051ee6b00f4737a9712a2015-12-26T12:13:25Z2015-12-26T18:27:01Zadd option to run command after screen is lockedMarkus Teichmarkus.teich@stusta.mhn.decommit e867c38123175d6f050e051ee6b00f4737a9712a
parent b95ee111c7625375716e848ec81af2f57ca35b02
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Sat, 26 Dec 2015 13:13:25 +0100
add option to run command after screen is locked
b95ee111c7625375716e848ec81af2f57ca35b022015-08-27T04:16:25Z2015-08-27T04:16:25ZDon't change to failure colour on successDavid Phillipsdbphillipsnz@gmail.comcommit b95ee111c7625375716e848ec81af2f57ca35b02
parent 0edbd2e0164a8c6cbad415e38083469041f29996
Author: David Phillips <dbphillipsnz@gmail.com>
Date: Thu, 27 Aug 2015 06:16:25 +0200
Don't change to failure colour on success
0edbd2e0164a8c6cbad415e38083469041f299962015-06-19T11:42:15Z2015-07-06T09:15:07ZSlightly safer OOM killer disablement in linuxDavid Phillipsdbphillipsnz@gmail.comcommit 0edbd2e0164a8c6cbad415e38083469041f29996
parent 754195f8d75586e23d1cc69cad00710802e0cb5d
Author: David Phillips <dbphillipsnz@gmail.com>
Date: Fri, 19 Jun 2015 23:42:15 +1200
Slightly safer OOM killer disablement in linux
754195f8d75586e23d1cc69cad00710802e0cb5d2015-05-08T15:10:15Z2015-05-08T16:07:05Zrework setting window colorMarkus Teichmarkus.teich@stusta.mhn.decommit 754195f8d75586e23d1cc69cad00710802e0cb5d
parent 10d4e479c5f6d91bf86e15be3a12c6b09c9808be
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Fri, 8 May 2015 17:10:15 +0200
rework setting window color
10d4e479c5f6d91bf86e15be3a12c6b09c9808be2015-05-08T14:43:13Z2015-05-08T14:44:18Zconsistently use () with sizeofMarkus Teichmarkus.teich@stusta.mhn.decommit 10d4e479c5f6d91bf86e15be3a12c6b09c9808be
parent b1289f30b79c9c5ea43a9e9c624406d7d0661692
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Fri, 8 May 2015 16:43:13 +0200
consistently use () with sizeof
b1289f30b79c9c5ea43a9e9c624406d7d06616922015-05-06T16:18:50Z2015-05-08T14:44:06ZOption to not show failure color on clearNick Curriernick.currier@gmail.comcommit b1289f30b79c9c5ea43a9e9c624406d7d0661692
parent f5ef1b8eb5555da11e81d92d8d05acd4aba1ef40
Author: Nick Currier <nick.currier@gmail.com>
Date: Wed, 6 May 2015 10:18:50 -0600
Option to not show failure color on clear
f5ef1b8eb5555da11e81d92d8d05acd4aba1ef402015-02-25T22:06:45Z2015-04-01T21:25:47Zresize lockscreen window after Xrandr resizeMarkus Teichmarkus.teich@stusta.mhn.decommit f5ef1b8eb5555da11e81d92d8d05acd4aba1ef40
parent f2ea92c3ddf1d9476ef61f85ec3aa26818d094a1
Author: Markus Teich <markus.teich@stusta.mhn.de>
Date: Wed, 25 Feb 2015 23:06:45 +0100
resize lockscreen window after Xrandr resize
f2ea92c3ddf1d9476ef61f85ec3aa26818d094a12015-02-11T22:56:35Z2015-04-01T21:13:11ZBlank the screen with color 0, add third color for failed loginsDavid Phillipsdbphillipsnz@gmail.comcommit f2ea92c3ddf1d9476ef61f85ec3aa26818d094a1
parent a31b9191111572dafaa8366415b89a4472aa4626
Author: David Phillips <dbphillipsnz@gmail.com>
Date: Thu, 12 Feb 2015 11:56:35 +1300
Blank the screen with color 0, add third color for failed logins
- Adds another color in config.def.h, COLOR_INIT
- Renames the colours from numerical ones to ones with meaningful names;
COLOR_INPUT for when there is content in the input buffer and COLOR_EMPTY
for when the input buffer has been cleared (backspaced or a failed attempt).
- Ensures XFreeColors frees the right number of colours. This is now derived
from the size of `Lock->colors` rather than being an integer literal.
- Makes slock exhibit the behaviour described by Markus
The default colours are the same as the ones slock currently uses, with the
exception of the new color, which I have set to red, as it indicates someone
has either failed an attempt to unlock, or that they have entered input and
erased it all.
a31b9191111572dafaa8366415b89a4472aa46262015-01-27T21:16:52Z2015-01-27T21:16:52Zapplied Dimitris' style patch from Dec'14, with some minor modificationsAnselm R Garbegarbeam@gmail.comcommit a31b9191111572dafaa8366415b89a4472aa4626
parent 66e31556db4921b5f24ced47dae5e1c7ea3bd150
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Tue, 27 Jan 2015 22:16:52 +0100
applied Dimitris' style patch from Dec'14, with some minor modifications
66e31556db4921b5f24ced47dae5e1c7ea3bd1502014-12-22T10:17:45Z2014-12-22T10:17:45Zfixed usage stringAnselm R Garbegarbeam@gmail.comcommit 66e31556db4921b5f24ced47dae5e1c7ea3bd150
parent 44ce161c139f74cac80dd77aafdfadb49a85af2a
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Mon, 22 Dec 2014 11:17:45 +0100
fixed usage string
44ce161c139f74cac80dd77aafdfadb49a85af2a2014-12-22T10:16:26Z2014-12-22T10:16:26Zapplied sin's patch and prepared new releaseAnselm R Garbegarbeam@gmail.comcommit 44ce161c139f74cac80dd77aafdfadb49a85af2a
parent 4339b507af01421e2deab63ca9ac3c5bdae5f4cc
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Mon, 22 Dec 2014 11:16:26 +0100
applied sin's patch and prepared new release
4339b507af01421e2deab63ca9ac3c5bdae5f4cc2014-11-07T13:20:13Z2014-11-09T13:10:02Zend{pw,sp}ent() can only be called after get{pw,sp}ent()sinsin@2f30.orgcommit 4339b507af01421e2deab63ca9ac3c5bdae5f4cc
parent 8745098fa440ef3bf1d8e173dcd91514b34600c6
Author: sin <sin@2f30.org>
Date: Fri, 7 Nov 2014 13:20:13 +0000
end{pw,sp}ent() can only be called after get{pw,sp}ent()
Calling them unconditionally can result in memory corruption.
8745098fa440ef3bf1d8e173dcd91514b34600c62014-07-09T13:40:49Z2014-07-09T13:41:32ZOnly check errno if getpwuid() failssinsin@2f30.orgcommit 8745098fa440ef3bf1d8e173dcd91514b34600c6
parent 9db14b10dd09336c6a8fe283f99108c9acc4667a
Author: sin <sin@2f30.org>
Date: Wed, 9 Jul 2014 14:40:49 +0100
Only check errno if getpwuid() fails
Checking errno otherwise is unspecified.
9db14b10dd09336c6a8fe283f99108c9acc4667a2014-06-03T17:19:10Z2014-06-09T18:14:31ZAdd /etc/passwd supportFRIGNdev@frign.decommit 9db14b10dd09336c6a8fe283f99108c9acc4667a
parent 6a5512835485ac501d983161ca15b311a95c5649
Author: FRIGN <dev@frign.de>
Date: Tue, 3 Jun 2014 19:19:10 +0200
Add /etc/passwd support
Fix slock to work with /etc/passwd without /etc/shadow.
while we're at it, remove an occurence of trailing whitespace.
6a5512835485ac501d983161ca15b311a95c56492013-11-14T11:24:08Z2014-01-29T14:19:35ZSet errno to 0 before getpwuid() and check it afterwardssinsin@2f30.orgcommit 6a5512835485ac501d983161ca15b311a95c5649
parent ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509
Author: sin <sin@2f30.org>
Date: Thu, 14 Nov 2013 11:24:08 +0000
Set errno to 0 before getpwuid() and check it afterwards
ba3acfc0dcf1d0603bd9d6bdee1e319339b1a5092013-08-02T20:11:18Z2013-08-02T20:11:18Zapplied Robert Schneider's Linux suggestions, also bumped version and updated LICENSE file's copyright noticeAnselm R Garbeanselm@garbe.uscommit ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509
parent 3092d3b3146720b2279df202382864454c12cc98
Author: Anselm R Garbe <anselm@garbe.us>
Date: Fri, 2 Aug 2013 22:11:18 +0200
applied Robert Schneider's Linux suggestions, also bumped version and updated LICENSE file's copyright notice
3092d3b3146720b2279df202382864454c12cc982012-10-25T18:59:50Z2012-10-25T18:59:50Zprepared 1.1anselm@garbe.usunknowncommit 3092d3b3146720b2279df202382864454c12cc98
parent d276b9b0e01ea086e48ea8327efa0f9ebddca621
Author: anselm@garbe.us <unknown>
Date: Thu, 25 Oct 2012 20:59:50 +0200
prepared 1.1
d276b9b0e01ea086e48ea8327efa0f9ebddca6212012-08-02T19:54:18Z2012-08-02T19:54:18Zapplied andres' multi-slock fix, thanks for spotting this issuegarbeam@gmail.comunknowncommit d276b9b0e01ea086e48ea8327efa0f9ebddca621
parent 4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b071
Author: garbeam@gmail.com <unknown>
Date: Thu, 2 Aug 2012 21:54:18 +0200
applied andres' multi-slock fix, thanks for spotting this issue
4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b0712012-04-15T09:58:16Z2012-04-15T09:58:16Zadded Ben's password placeholder entry kludgeanselm@garbe.usunknowncommit 4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b071
parent c1507cd225a34ef69045cfc20519b16212dba8dd
Author: anselm@garbe.us <unknown>
Date: Sun, 15 Apr 2012 11:58:16 +0200
added Ben's password placeholder entry kludge
c1507cd225a34ef69045cfc20519b16212dba8dd2012-03-17T17:03:25Z2012-03-17T17:03:25Zapplied Eckehard Bern's dualcolor patch to slockanselm@garbe.usunknowncommit c1507cd225a34ef69045cfc20519b16212dba8dd
parent 88d968496652401eba8fa98615c6196618c91fcd
Author: anselm@garbe.us <unknown>
Date: Sat, 17 Mar 2012 18:03:25 +0100
applied Eckehard Bern's dualcolor patch to slock
88d968496652401eba8fa98615c6196618c91fcd2012-02-11T09:51:31Z2012-02-11T09:51:31ZAdded tag 1.0 for changeset 05b949016e85anselm@garbe.usunknowncommit 88d968496652401eba8fa98615c6196618c91fcd
parent 34f5edb29e3947d105235c1fc07be57eda5adeb5
Author: anselm@garbe.us <unknown>
Date: Sat, 11 Feb 2012 10:51:31 +0100
Added tag 1.0 for changeset 05b949016e85
34f5edb29e3947d105235c1fc07be57eda5adeb52012-02-11T09:51:26Z2012-02-11T09:51:26Zpreparing 1.0anselm@garbe.usunknowncommit 34f5edb29e3947d105235c1fc07be57eda5adeb5
parent 0b1362846242d510c4fd160b7e6579278213a544
Author: anselm@garbe.us <unknown>
Date: Sat, 11 Feb 2012 10:51:26 +0100
preparing 1.0
0b1362846242d510c4fd160b7e6579278213a5442012-02-09T19:56:34Z2012-02-09T19:56:34Zselect for SubstructureRedirectMask as wellanselm@garbe.usunknowncommit 0b1362846242d510c4fd160b7e6579278213a544
parent 7a217cb7c4f1a7439b76f5fb839035d7021eb7ff
Author: anselm@garbe.us <unknown>
Date: Thu, 9 Feb 2012 20:56:34 +0100
select for SubstructureRedirectMask as well
7a217cb7c4f1a7439b76f5fb839035d7021eb7ff2012-02-09T19:18:49Z2012-02-09T19:18:49Zfixed missing new linesanselm@garbe.usunknowncommit 7a217cb7c4f1a7439b76f5fb839035d7021eb7ff
parent 5d433c7cf509daf064b2a0412ed6cf3c0068afde
Author: anselm@garbe.us <unknown>
Date: Thu, 9 Feb 2012 20:18:49 +0100
fixed missing new lines
5d433c7cf509daf064b2a0412ed6cf3c0068afde2012-02-05T15:41:31Z2012-02-05T15:41:31Ztypo fixanselm@garbe.usunknowncommit 5d433c7cf509daf064b2a0412ed6cf3c0068afde
parent d6e9e7d9e32d315330e1a60a5087a86c19ab1ab7
Author: anselm@garbe.us <unknown>
Date: Sun, 5 Feb 2012 16:41:31 +0100
typo fix
d6e9e7d9e32d315330e1a60a5087a86c19ab1ab72012-02-05T15:38:58Z2012-02-05T15:38:58Zadded XRaiseWindow workaround when new clients are launchedanselm@garbe.usunknowncommit d6e9e7d9e32d315330e1a60a5087a86c19ab1ab7
parent f013cb264e654125c043ed637b7f47692376f967
Author: anselm@garbe.us <unknown>
Date: Sun, 5 Feb 2012 16:38:58 +0100
added XRaiseWindow workaround when new clients are launched
f013cb264e654125c043ed637b7f47692376f9672012-01-24T21:10:02Z2012-01-24T21:10:02Zapplied Michaels patchgarbeam@gmail.comunknowncommit f013cb264e654125c043ed637b7f47692376f967
parent 5a5c581285e86fe53c9602c7e0fb7e19ec742391
Author: garbeam@gmail.com <unknown>
Date: Tue, 24 Jan 2012 22:10:02 +0100
applied Michaels patch
5a5c581285e86fe53c9602c7e0fb7e19ec7423912012-01-22T17:58:10Z2012-01-22T17:58:10Zadded dummy error handler to prevent X from terminating slock just in caseanselm@garbe.usunknowncommit 5a5c581285e86fe53c9602c7e0fb7e19ec742391
parent ede2935e10fdab76994676d5052b571907612199
Author: anselm@garbe.us <unknown>
Date: Sun, 22 Jan 2012 18:58:10 +0100
added dummy error handler to prevent X from terminating slock just in case
ede2935e10fdab76994676d5052b5719076121992011-04-21T08:22:47Z2011-04-21T08:22:47Zapplied Markus' patch to die in case /etc/passwd is unavailableAnselm R Garbeanselm@garbe.uscommit ede2935e10fdab76994676d5052b571907612199
parent 732d2b3bf5da3a1883b3246062aa556a59b8517c
Author: Anselm R Garbe <anselm@garbe.us>
Date: Thu, 21 Apr 2011 08:22:47 +0000
applied Markus' patch to die in case /etc/passwd is unavailable
732d2b3bf5da3a1883b3246062aa556a59b8517c2009-11-26T12:53:26Z2009-11-26T12:53:26Zapplied Fernando Silveira's multiscreen patch for old style multihead setupsAnselm R Garbegarbeam@gmail.comcommit 732d2b3bf5da3a1883b3246062aa556a59b8517c
parent 0cb05bdb75ac13f010d51e267007ca1c869763ec
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Thu, 26 Nov 2009 12:53:26 +0000
applied Fernando Silveira's multiscreen patch for old style multihead setups
0cb05bdb75ac13f010d51e267007ca1c869763ec2008-12-12T19:34:43Z2008-12-12T19:34:43Zapplied Ali Gholami Rudi's patch regarding DPMS timeout customization and persistencea@nullunknowncommit 0cb05bdb75ac13f010d51e267007ca1c869763ec
parent cadc8a7472f4a77b26a89e27bce4479dc12afdbe
Author: a@null <unknown>
Date: Fri, 12 Dec 2008 19:34:43 +0000
applied Ali Gholami Rudi's patch regarding DPMS timeout customization and persistence
cadc8a7472f4a77b26a89e27bce4479dc12afdbe2008-07-29T18:23:21Z2008-07-29T18:23:21ZAdded tag 0.9 for changeset 1e8a77601cb9Anselm R Garbegarbeam@gmail.comcommit cadc8a7472f4a77b26a89e27bce4479dc12afdbe
parent a6a3471dd9c693837b3038be0a2ccc839c94570b
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Tue, 29 Jul 2008 19:23:21 +0100
Added tag 0.9 for changeset 1e8a77601cb9
a6a3471dd9c693837b3038be0a2ccc839c94570b2008-07-29T18:17:24Z2008-07-29T18:17:24ZfixAnselm R Garbegarbeam@gmail.comcommit a6a3471dd9c693837b3038be0a2ccc839c94570b
parent 75dd7792456d9eb4a4c3142b81fbda5ca39a3a51
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Tue, 29 Jul 2008 19:17:24 +0100
fix
75dd7792456d9eb4a4c3142b81fbda5ca39a3a512008-07-29T18:14:53Z2008-07-29T18:14:53Zprepared releaseAnselm R Garbegarbeam@gmail.comcommit 75dd7792456d9eb4a4c3142b81fbda5ca39a3a51
parent 1460b14f450d65c68bf519538de5b5df1a7bc01c
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Tue, 29 Jul 2008 19:14:53 +0100
prepared release
1460b14f450d65c68bf519538de5b5df1a7bc01c2008-07-29T18:08:18Z2008-07-29T18:08:18Zremoved useless chars, prepared releaseAnselm R Garbegarbeam@gmail.comcommit 1460b14f450d65c68bf519538de5b5df1a7bc01c
parent c0fdcb8afc42cc568b852bd34fdfd66716cf13ec
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Tue, 29 Jul 2008 19:08:18 +0100
removed useless chars, prepared release
c0fdcb8afc42cc568b852bd34fdfd66716cf13ec2008-04-09T22:42:50Z2008-04-09T22:42:50Zs/d//Anselm R Garbegarbeam@gmail.comcommit c0fdcb8afc42cc568b852bd34fdfd66716cf13ec
parent cc36050e44faa01b2783640ffb2323329d15f97d
Author: Anselm R Garbe <garbeam@gmail.com>
Date: Wed, 9 Apr 2008 23:42:50 +0100
s/d//