<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>slock, branch HEAD</title>
<subtitle>simple X display locker utility</subtitle>
<entry>
<id>abe486733568fe73a5cd134bb9b93342989b90df</id>
<published>2026-02-05T20:17:06Z</published>
<updated>2026-02-05T20:17:06Z</updated>
<title>set input/failure colors on font</title>
<link rel="alternate" type="text/html" href="commit/abe486733568fe73a5cd134bb9b93342989b90df.html" />
<author>
<name>Jul</name>
<email>jul@9o.is</email>
</author>
<content>commit abe486733568fe73a5cd134bb9b93342989b90df
parent 16aac2fdb460a19b328eca15672cf3c9d69d2b61
Author: Jul &lt;jul@9o.is&gt;
Date:   Thu,  5 Feb 2026 15:17:06 -0500

set input/failure colors on font

</content>
</entry>
<entry>
<id>16aac2fdb460a19b328eca15672cf3c9d69d2b61</id>
<published>2026-02-05T19:47:04Z</published>
<updated>2026-02-05T19:47:04Z</updated>
<title>add message to lock screen with -m flag</title>
<link rel="alternate" type="text/html" href="commit/16aac2fdb460a19b328eca15672cf3c9d69d2b61.html" />
<author>
<name>Jul</name>
<email>jul@9o.is</email>
</author>
<content>commit 16aac2fdb460a19b328eca15672cf3c9d69d2b61
parent 7afc5518aa5a0f912947afa32b3c30f621a3be63
Author: Jul &lt;jul@9o.is&gt;
Date:   Thu,  5 Feb 2026 14:47:04 -0500

add message to lock screen with -m flag

</content>
</entry>
<entry>
<id>7afc5518aa5a0f912947afa32b3c30f621a3be63</id>
<published>2026-02-05T10:57:57Z</published>
<updated>2026-02-05T10:57:57Z</updated>
<title>prevent unlocking until timer expires with -t flag</title>
<link rel="alternate" type="text/html" href="commit/7afc5518aa5a0f912947afa32b3c30f621a3be63.html" />
<author>
<name>Jul</name>
<email>jul@9o.is</email>
</author>
<content>commit 7afc5518aa5a0f912947afa32b3c30f621a3be63
parent 36d211ccf95e48fdaf376740e19ee4a2e985df3f
Author: Jul &lt;jul@9o.is&gt;
Date:   Thu,  5 Feb 2026 05:57:57 -0500

prevent unlocking until timer expires with -t flag

</content>
</entry>
<entry>
<id>36d211ccf95e48fdaf376740e19ee4a2e985df3f</id>
<published>2026-02-04T17:52:21Z</published>
<updated>2026-02-04T17:52:21Z</updated>
<title>ignore object and binary files</title>
<link rel="alternate" type="text/html" href="commit/36d211ccf95e48fdaf376740e19ee4a2e985df3f.html" />
<author>
<name>Jul</name>
<email>jul@9o.is</email>
</author>
<content>commit 36d211ccf95e48fdaf376740e19ee4a2e985df3f
parent 0a3e7c20be64bec5a4b7e25f31a8384aeb3a240f
Author: Jul &lt;jul@9o.is&gt;
Date:   Wed,  4 Feb 2026 12:52:21 -0500

ignore object and binary files

</content>
</entry>
<entry>
<id>0a3e7c20be64bec5a4b7e25f31a8384aeb3a240f</id>
<published>2026-02-04T17:18:58Z</published>
<updated>2026-02-04T17:18:58Z</updated>
<title>save config.h</title>
<link rel="alternate" type="text/html" href="commit/0a3e7c20be64bec5a4b7e25f31a8384aeb3a240f.html" />
<author>
<name>Jul</name>
<email>jul@9o.is</email>
</author>
<content>commit 0a3e7c20be64bec5a4b7e25f31a8384aeb3a240f
parent 51ab95b3c4f57581e9d757416028cd2233668084
Author: Jul &lt;jul@9o.is&gt;
Date:   Wed,  4 Feb 2026 12:18:58 -0500

save config.h

</content>
</entry>
<entry>
<id>51ab95b3c4f57581e9d757416028cd2233668084</id>
<published>2025-08-16T09:11:27Z</published>
<updated>2025-08-16T09:11:27Z</updated>
<title>add a comment for the ctrl-u clear field combo</title>
<link rel="alternate" type="text/html" href="commit/51ab95b3c4f57581e9d757416028cd2233668084.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 51ab95b3c4f57581e9d757416028cd2233668084
parent 59c8bf73a0359739ee67461f6869c4ac4b40078b
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Sat, 16 Aug 2025 11:11:27 +0200

add a comment for the ctrl-u clear field combo

</content>
</entry>
<entry>
<id>59c8bf73a0359739ee67461f6869c4ac4b40078b</id>
<published>2025-08-15T23:30:19Z</published>
<updated>2025-08-15T23:30:19Z</updated>
<title>Support ^U for clearing password</title>
<link rel="alternate" type="text/html" href="commit/59c8bf73a0359739ee67461f6869c4ac4b40078b.html" />
<author>
<name>Drew Marino</name>
<email>drewmarino25@gmail.com</email>
</author>
<content>commit 59c8bf73a0359739ee67461f6869c4ac4b40078b
parent 6e22e7eace56f2d3334cf0c2c96e9130d43fe7be
Author: Drew Marino &lt;drewmarino25@gmail.com&gt;
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.

</content>
</entry>
<entry>
<id>6e22e7eace56f2d3334cf0c2c96e9130d43fe7be</id>
<published>2025-08-09T12:34:37Z</published>
<updated>2025-08-09T12:34:37Z</updated>
<title>bump version to 1.6</title>
<link rel="alternate" type="text/html" href="commit/6e22e7eace56f2d3334cf0c2c96e9130d43fe7be.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 6e22e7eace56f2d3334cf0c2c96e9130d43fe7be
parent 4d8c43aa9df1a22f6de6e6015785d52860a41e7b
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Sat,  9 Aug 2025 14:34:37 +0200

bump version to 1.6

</content>
</entry>
<entry>
<id>4d8c43aa9df1a22f6de6e6015785d52860a41e7b</id>
<published>2022-09-09T08:50:12Z</published>
<updated>2022-09-09T08:50:12Z</updated>
<title>simplify post-lock cmd and die if it fails</title>
<link rel="alternate" type="text/html" href="commit/4d8c43aa9df1a22f6de6e6015785d52860a41e7b.html" />
<author>
<name>NRK</name>
<email>nrk@disroot.org</email>
</author>
<content>commit 4d8c43aa9df1a22f6de6e6015785d52860a41e7b
parent df57798ba1bd28bb6a3204839a9ff909b499c660
Author: NRK &lt;nrk@disroot.org&gt;
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&#39;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.

</content>
</entry>
<entry>
<id>df57798ba1bd28bb6a3204839a9ff909b499c660</id>
<published>2023-10-06T09:57:31Z</published>
<updated>2023-10-06T09:57:31Z</updated>
<title>slock.1: use standard wording for options</title>
<link rel="alternate" type="text/html" href="commit/df57798ba1bd28bb6a3204839a9ff909b499c660.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit df57798ba1bd28bb6a3204839a9ff909b499c660
parent a1e5e0591ed5530f104ccac74ee90b5306791f32
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
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.

</content>
</entry>
<entry>
<id>a1e5e0591ed5530f104ccac74ee90b5306791f32</id>
<published>2023-10-06T09:50:11Z</published>
<updated>2023-10-06T09:50:11Z</updated>
<title>write version to stdout like the man page says</title>
<link rel="alternate" type="text/html" href="commit/a1e5e0591ed5530f104ccac74ee90b5306791f32.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit a1e5e0591ed5530f104ccac74ee90b5306791f32
parent 7d0b4ab66acb4ed90d132b8bb79dc2df678d72d8
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Fri,  6 Oct 2023 11:50:11 +0200

write version to stdout like the man page says

</content>
</entry>
<entry>
<id>7d0b4ab66acb4ed90d132b8bb79dc2df678d72d8</id>
<published>2023-10-06T09:48:40Z</published>
<updated>2023-10-06T09:48:40Z</updated>
<title>slock.1: improve man page</title>
<link rel="alternate" type="text/html" href="commit/7d0b4ab66acb4ed90d132b8bb79dc2df678d72d8.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 7d0b4ab66acb4ed90d132b8bb79dc2df678d72d8
parent 8e03d3d828661d5e15699e85342930012503559f
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Fri,  6 Oct 2023 11:48:40 +0200

slock.1: improve man page

* Fix all lint warnings.
* Remove &quot;Op Ar arg...&quot; in the description. It looks ugly.
* No need to set -offset left for .Bd literal.

</content>
</entry>
<entry>
<id>8e03d3d828661d5e15699e85342930012503559f</id>
<published>2023-10-06T09:41:19Z</published>
<updated>2023-10-06T09:41:19Z</updated>
<title>config.mk: no need to set CC</title>
<link rel="alternate" type="text/html" href="commit/8e03d3d828661d5e15699e85342930012503559f.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 8e03d3d828661d5e15699e85342930012503559f
parent 83eea14e0db32e1477f5aed3ab3ddb48775f46ae
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Fri,  6 Oct 2023 11:41:19 +0200

config.mk: no need to set CC

</content>
</entry>
<entry>
<id>83eea14e0db32e1477f5aed3ab3ddb48775f46ae</id>
<published>2023-10-06T09:39:40Z</published>
<updated>2023-10-06T09:39:40Z</updated>
<title>Makefile: be verbose and remove options</title>
<link rel="alternate" type="text/html" href="commit/83eea14e0db32e1477f5aed3ab3ddb48775f46ae.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 83eea14e0db32e1477f5aed3ab3ddb48775f46ae
parent 1df2cb5c9b483b50ea3927f51f818e3a581f0d26
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
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&#39;t hardcode -Os -Wall -pedantic,
  -s, etc).

</content>
</entry>
<entry>
<id>1df2cb5c9b483b50ea3927f51f818e3a581f0d26</id>
<published>2023-10-06T09:39:31Z</published>
<updated>2023-10-06T09:39:31Z</updated>
<title>update LICENSE</title>
<link rel="alternate" type="text/html" href="commit/1df2cb5c9b483b50ea3927f51f818e3a581f0d26.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 1df2cb5c9b483b50ea3927f51f818e3a581f0d26
parent 604e6c39598506bbfcde0cb412baec0ae6a4e345
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Fri,  6 Oct 2023 11:39:31 +0200

update LICENSE

</content>
</entry>
<entry>
<id>604e6c39598506bbfcde0cb412baec0ae6a4e345</id>
<published>2022-10-04T17:45:14Z</published>
<updated>2022-10-04T17:45:14Z</updated>
<title>bump version to 1.5</title>
<link rel="alternate" type="text/html" href="commit/604e6c39598506bbfcde0cb412baec0ae6a4e345.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 604e6c39598506bbfcde0cb412baec0ae6a4e345
parent 022c2e230f61ee6d3cb7a3b1195fcd702235eb88
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Tue,  4 Oct 2022 19:45:14 +0200

bump version to 1.5

</content>
</entry>
<entry>
<id>022c2e230f61ee6d3cb7a3b1195fcd702235eb88</id>
<published>2022-10-04T17:44:47Z</published>
<updated>2022-10-04T17:44:47Z</updated>
<title>Makefile: explicit_bzero.c was copied twice (GNU make gives a warning)</title>
<link rel="alternate" type="text/html" href="commit/022c2e230f61ee6d3cb7a3b1195fcd702235eb88.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 022c2e230f61ee6d3cb7a3b1195fcd702235eb88
parent 1622d2e64c38184e04e96613ccfc255437ca3046
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
Date:   Tue,  4 Oct 2022 19:44:47 +0200

Makefile: explicit_bzero.c was copied twice (GNU make gives a warning)

</content>
</entry>
<entry>
<id>1622d2e64c38184e04e96613ccfc255437ca3046</id>
<published>2017-03-25T20:16:01Z</published>
<updated>2017-03-25T20:16:01Z</updated>
<title>Properly clear the last entered character</title>
<link rel="alternate" type="text/html" href="commit/1622d2e64c38184e04e96613ccfc255437ca3046.html" />
<author>
<name>Tobias Stoeckmann</name>
<email>tobias@stoeckmann.org</email>
</author>
<content>commit 1622d2e64c38184e04e96613ccfc255437ca3046
parent 4ccf9ad6887b11be7f0790a666fae50a9a03d28e
Author: Tobias Stoeckmann &lt;tobias@stoeckmann.org&gt;
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 &#39;\0&#39;. 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 &#39;\0&#39; just like enter would do.

You can also verify it by imagining len=1 and that it&#39;s impossible to
clear passwd[0] by pressing backspace with the current code.

Signed-off-by: Tobias Stoeckmann &lt;tobias@stoeckmann.org&gt;

</content>
</entry>
<entry>
<id>4ccf9ad6887b11be7f0790a666fae50a9a03d28e</id>
<published>2016-11-22T23:29:18Z</published>
<updated>2016-11-22T23:29:18Z</updated>
<title>rm trailing whitespace in README</title>
<link rel="alternate" type="text/html" href="commit/4ccf9ad6887b11be7f0790a666fae50a9a03d28e.html" />
<author>
<name>Markus Teich</name>
<email>teichm@fs.tum.de</email>
</author>
<content>commit 4ccf9ad6887b11be7f0790a666fae50a9a03d28e
parent c27f244e93815a04b71387f5542918758f18f739
Author: Markus Teich &lt;teichm@fs.tum.de&gt;
Date:   Wed, 23 Nov 2016 00:29:18 +0100

rm trailing whitespace in README

</content>
</entry>
<entry>
<id>c27f244e93815a04b71387f5542918758f18f739</id>
<published>2016-11-22T23:28:43Z</published>
<updated>2016-11-22T23:28:43Z</updated>
<title>syntax fix</title>
<link rel="alternate" type="text/html" href="commit/c27f244e93815a04b71387f5542918758f18f739.html" />
<author>
<name>Markus Teich</name>
<email>teichm@fs.tum.de</email>
</author>
<content>commit c27f244e93815a04b71387f5542918758f18f739
parent 056746b9673590df57f10629f1a1e46c0cd2d685
Author: Markus Teich &lt;teichm@fs.tum.de&gt;
Date:   Wed, 23 Nov 2016 00:28:43 +0100

syntax fix

</content>
</entry>
<entry>
<id>056746b9673590df57f10629f1a1e46c0cd2d685</id>
<published>2016-11-22T23:28:25Z</published>
<updated>2016-11-22T23:28:25Z</updated>
<title>there can only be one window in the event</title>
<link rel="alternate" type="text/html" href="commit/056746b9673590df57f10629f1a1e46c0cd2d685.html" />
<author>
<name>Markus Teich</name>
<email>teichm@fs.tum.de</email>
</author>
<content>commit 056746b9673590df57f10629f1a1e46c0cd2d685
parent c593d9e44d5a05743d1367fa88e3e2bc2907076d
Author: Markus Teich &lt;teichm@fs.tum.de&gt;
Date:   Wed, 23 Nov 2016 00:28:25 +0100

there can only be one window in the event

</content>
</entry>
<entry>
<id>c593d9e44d5a05743d1367fa88e3e2bc2907076d</id>
<published>2016-11-07T17:15:20Z</published>
<updated>2016-11-07T17:15:20Z</updated>
<title>Fix resize with multiple monitors and portrait mode</title>
<link rel="alternate" type="text/html" href="commit/c593d9e44d5a05743d1367fa88e3e2bc2907076d.html" />
<author>
<name>Bob Uhl</name>
<email>buhl@zvelo.com</email>
</author>
<content>commit c593d9e44d5a05743d1367fa88e3e2bc2907076d
parent ff84d38d4b270513b7a47a65f8d92376265d7cee
Author: Bob Uhl &lt;buhl@zvelo.com&gt;
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 &amp; width are reversed due to the XRandR
rotation; detect this and DTRT.

</content>
</entry>
<entry>
<id>ff84d38d4b270513b7a47a65f8d92376265d7cee</id>
<published>2016-11-20T00:07:11Z</published>
<updated>2016-11-20T00:07:11Z</updated>
<title>bump version</title>
<link rel="alternate" type="text/html" href="commit/ff84d38d4b270513b7a47a65f8d92376265d7cee.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit ff84d38d4b270513b7a47a65f8d92376265d7cee
parent 831ff9ccff46fbcd64682d7798fffab6eacb3688
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Sun, 20 Nov 2016 01:07:11 +0100

bump version

</content>
</entry>
<entry>
<id>831ff9ccff46fbcd64682d7798fffab6eacb3688</id>
<published>2016-11-19T23:59:19Z</published>
<updated>2016-11-19T23:59:19Z</updated>
<title>add arg.h and util.h to Makefile</title>
<link rel="alternate" type="text/html" href="commit/831ff9ccff46fbcd64682d7798fffab6eacb3688.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 831ff9ccff46fbcd64682d7798fffab6eacb3688
parent 78a0197635d659b3fdddb5f3bde596fa511fa06f
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Sun, 20 Nov 2016 00:59:19 +0100

add arg.h and util.h to Makefile

</content>
</entry>
<entry>
<id>78a0197635d659b3fdddb5f3bde596fa511fa06f</id>
<published>2016-11-19T23:29:41Z</published>
<updated>2016-11-19T23:29:41Z</updated>
<title>clarify colors in config.def.h</title>
<link rel="alternate" type="text/html" href="commit/78a0197635d659b3fdddb5f3bde596fa511fa06f.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 78a0197635d659b3fdddb5f3bde596fa511fa06f
parent 9f13959238d0fc35150a555fe030392e4e5d85c5
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Sun, 20 Nov 2016 00:29:41 +0100

clarify colors in config.def.h

</content>
</entry>
<entry>
<id>9f13959238d0fc35150a555fe030392e4e5d85c5</id>
<published>2016-11-19T23:29:01Z</published>
<updated>2016-11-19T23:29:01Z</updated>
<title>move config.h inclusion after type declarations</title>
<link rel="alternate" type="text/html" href="commit/9f13959238d0fc35150a555fe030392e4e5d85c5.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 9f13959238d0fc35150a555fe030392e4e5d85c5
parent 937ba196ef81efdd02bb4ce99c19cd4b395e1cf7
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Sun, 20 Nov 2016 00:29:01 +0100

move config.h inclusion after type declarations

</content>
</entry>
<entry>
<id>937ba196ef81efdd02bb4ce99c19cd4b395e1cf7</id>
<published>2016-10-17T18:28:09Z</published>
<updated>2016-10-17T18:28:09Z</updated>
<title>Unboolify slock.c</title>
<link rel="alternate" type="text/html" href="commit/937ba196ef81efdd02bb4ce99c19cd4b395e1cf7.html" />
<author>
<name>Laslo Hunhold</name>
<email>dev@frign.de</email>
</author>
<content>commit 937ba196ef81efdd02bb4ce99c19cd4b395e1cf7
parent 471c88c4af606f71c2714e08a03d366c4a6cf520
Author: Laslo Hunhold &lt;dev@frign.de&gt;
Date:   Mon, 17 Oct 2016 20:28:09 +0200

Unboolify slock.c

</content>
</entry>
<entry>
<id>471c88c4af606f71c2714e08a03d366c4a6cf520</id>
<published>2016-10-01T22:10:45Z</published>
<updated>2016-10-01T22:10:45Z</updated>
<title>Use explicit strcmp() instead of inlining it</title>
<link rel="alternate" type="text/html" href="commit/471c88c4af606f71c2714e08a03d366c4a6cf520.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 471c88c4af606f71c2714e08a03d366c4a6cf520
parent ce9d8e7eb6975cddf3a06c6a713baff10c5b5072
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Sun,  2 Oct 2016 00:10:45 +0200

Use explicit strcmp() instead of inlining it

Makes it a tad more readable; the previous &quot;optimization&quot; will be done
by the compiler anyway.

</content>
</entry>
<entry>
<id>ce9d8e7eb6975cddf3a06c6a713baff10c5b5072</id>
<published>2016-10-01T22:03:18Z</published>
<updated>2016-10-01T22:03:18Z</updated>
<title>No need for oldc to be static</title>
<link rel="alternate" type="text/html" href="commit/ce9d8e7eb6975cddf3a06c6a713baff10c5b5072.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit ce9d8e7eb6975cddf3a06c6a713baff10c5b5072
parent 7ba1ebba9682369630ee9d717512ab8fc1bcc548
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Sun,  2 Oct 2016 00:03:18 +0200

No need for oldc to be static

</content>
</entry>
<entry>
<id>7ba1ebba9682369630ee9d717512ab8fc1bcc548</id>
<published>2016-10-01T21:56:33Z</published>
<updated>2016-10-01T21:56:33Z</updated>
<title>Use NUL character constant explicitly</title>
<link rel="alternate" type="text/html" href="commit/7ba1ebba9682369630ee9d717512ab8fc1bcc548.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 7ba1ebba9682369630ee9d717512ab8fc1bcc548
parent e984ae089626bb70f562c3dc4f8076b8a5fc311d
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Sat,  1 Oct 2016 23:56:33 +0200

Use NUL character constant explicitly

</content>
</entry>
<entry>
<id>e984ae089626bb70f562c3dc4f8076b8a5fc311d</id>
<published>2016-10-01T21:50:49Z</published>
<updated>2016-10-01T21:50:49Z</updated>
<title>Keep the line-lengths at bay</title>
<link rel="alternate" type="text/html" href="commit/e984ae089626bb70f562c3dc4f8076b8a5fc311d.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit e984ae089626bb70f562c3dc4f8076b8a5fc311d
parent af5084928433794ffd8f4546b333e415ff189350
Author: FRIGN &lt;dev@frign.de&gt;
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.

</content>
</entry>
<entry>
<id>af5084928433794ffd8f4546b333e415ff189350</id>
<published>2016-09-28T18:20:51Z</published>
<updated>2016-09-28T18:20:51Z</updated>
<title>Add a section on security considerations</title>
<link rel="alternate" type="text/html" href="commit/af5084928433794ffd8f4546b333e415ff189350.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit af5084928433794ffd8f4546b333e415ff189350
parent b7dcb60995ac00886bf667f6aa63b0592fc4145f
Author: FRIGN &lt;dev@frign.de&gt;
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&#39;t solve within slock but which the user has to solve in his X configuration.

</content>
</entry>
<entry>
<id>b7dcb60995ac00886bf667f6aa63b0592fc4145f</id>
<published>2016-09-26T11:28:09Z</published>
<updated>2016-09-26T11:28:09Z</updated>
<title>remove confusing DPMS comment</title>
<link rel="alternate" type="text/html" href="commit/b7dcb60995ac00886bf667f6aa63b0592fc4145f.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit b7dcb60995ac00886bf667f6aa63b0592fc4145f
parent 12300ed377bd92f980cec92094f285a25f5487ad
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
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&#39;t like that, I disable DPMS. If I do, I just fiddle around with my mouse a
bit and get the slock promt.

</content>
</entry>
<entry>
<id>12300ed377bd92f980cec92094f285a25f5487ad</id>
<published>2016-09-23T17:08:39Z</published>
<updated>2016-09-23T17:08:39Z</updated>
<title>error out early on crypt() fail</title>
<link rel="alternate" type="text/html" href="commit/12300ed377bd92f980cec92094f285a25f5487ad.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 12300ed377bd92f980cec92094f285a25f5487ad
parent 69211adeea9586032c23e33eb9d54c67dd5fa991
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Fri, 23 Sep 2016 19:08:39 +0200

error out early on crypt() fail

</content>
</entry>
<entry>
<id>69211adeea9586032c23e33eb9d54c67dd5fa991</id>
<published>2016-09-11T21:17:53Z</published>
<updated>2016-09-11T21:17:53Z</updated>
<title>Stop using $USER for shadow entries</title>
<link rel="alternate" type="text/html" href="commit/69211adeea9586032c23e33eb9d54c67dd5fa991.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 69211adeea9586032c23e33eb9d54c67dd5fa991
parent 00c121a809f7246b111ba5b312fdf1710c49576b
Author: FRIGN &lt;dev@frign.de&gt;
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&#39;t use

	$ USER=&quot;tom&quot; slock

but doas or sudo which were designed for this purpose.

</content>
</entry>
<entry>
<id>00c121a809f7246b111ba5b312fdf1710c49576b</id>
<published>2016-09-11T21:10:57Z</published>
<updated>2016-09-11T21:10:57Z</updated>
<title>Rename getpw() and pws to gethash() and hash</title>
<link rel="alternate" type="text/html" href="commit/00c121a809f7246b111ba5b312fdf1710c49576b.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 00c121a809f7246b111ba5b312fdf1710c49576b
parent 8e707f24754d22484d9e9596ca260dfb0698b6f0
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Sun, 11 Sep 2016 23:10:57 +0200

Rename getpw() and pws to gethash() and hash

</content>
</entry>
<entry>
<id>8e707f24754d22484d9e9596ca260dfb0698b6f0</id>
<published>2016-09-11T21:08:19Z</published>
<updated>2016-09-11T21:08:19Z</updated>
<title>Remove cleanup and deglobalize and rework data structures</title>
<link rel="alternate" type="text/html" href="commit/8e707f24754d22484d9e9596ca260dfb0698b6f0.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 8e707f24754d22484d9e9596ca260dfb0698b6f0
parent 50aa5be84b4c124c1f81f55037e7b3af87552288
Author: FRIGN &lt;dev@frign.de&gt;
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&#39;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.

</content>
</entry>
<entry>
<id>50aa5be84b4c124c1f81f55037e7b3af87552288</id>
<published>2016-09-08T17:03:12Z</published>
<updated>2016-09-08T17:03:12Z</updated>
<title>config.mk: be more explicative about FLAGS</title>
<link rel="alternate" type="text/html" href="commit/50aa5be84b4c124c1f81f55037e7b3af87552288.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit 50aa5be84b4c124c1f81f55037e7b3af87552288
parent a276a3015ffcee78f01bffc317b2bd09e64a5609
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
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.

</content>
</entry>
<entry>
<id>a276a3015ffcee78f01bffc317b2bd09e64a5609</id>
<published>2016-09-07T11:32:29Z</published>
<updated>2016-09-07T11:32:29Z</updated>
<title>Ensure Polyphemus-Mitigation and properly drop privileges</title>
<link rel="alternate" type="text/html" href="commit/a276a3015ffcee78f01bffc317b2bd09e64a5609.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit a276a3015ffcee78f01bffc317b2bd09e64a5609
parent a2a3c557a5b1c6d5f2f0fc13fe3d02c73fb1cfd0
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Wed,  7 Sep 2016 13:32:29 +0200

Ensure Polyphemus-Mitigation and properly drop privileges

Don&#39;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 &quot;nobody&quot; with &quot;nogroup&quot; can&#39;t do that.

So why do I call this strategy the Polyphemus-Mitigation?

&quot;&quot;&quot;
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
&quot;Οὖτις&quot;, which means &quot;nobody&quot; and Polyphemus promises to eat this
&quot;Nobody&quot; 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&#39; eye. When Polyphemus shouts for help from his fellow giants,
saying that &quot;Nobody&quot; has hurt him, they think Polyphemus is being
afflicted by divine power and recommend prayer as the answer.
&quot;&quot;&quot;

(source: https://en.wikipedia.org/wiki/Polyphemus)

</content>
</entry>
<entry>
<id>a2a3c557a5b1c6d5f2f0fc13fe3d02c73fb1cfd0</id>
<published>2016-09-07T11:02:42Z</published>
<updated>2016-09-07T11:02:42Z</updated>
<title>Unify how we check passwords between different OSes</title>
<link rel="alternate" type="text/html" href="commit/a2a3c557a5b1c6d5f2f0fc13fe3d02c73fb1cfd0.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit a2a3c557a5b1c6d5f2f0fc13fe3d02c73fb1cfd0
parent 73a1f56f6e6abc9cd55c0fab79db3967d59b1a9a
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
Date:   Wed,  7 Sep 2016 13:02:42 +0200

Unify how we check passwords between different OSes

</content>
</entry>
<entry>
<id>73a1f56f6e6abc9cd55c0fab79db3967d59b1a9a</id>
<published>2016-09-07T08:04:06Z</published>
<updated>2016-09-07T08:04:06Z</updated>
<title>make error message prefix consistent</title>
<link rel="alternate" type="text/html" href="commit/73a1f56f6e6abc9cd55c0fab79db3967d59b1a9a.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 73a1f56f6e6abc9cd55c0fab79db3967d59b1a9a
parent 30616d0c409997c3f4290cd2bfa521757a11a093
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Wed,  7 Sep 2016 10:04:06 +0200

make error message prefix consistent

</content>
</entry>
<entry>
<id>30616d0c409997c3f4290cd2bfa521757a11a093</id>
<published>2016-09-02T09:49:02Z</published>
<updated>2016-09-02T09:49:02Z</updated>
<title>increasing for loops are idiomatic</title>
<link rel="alternate" type="text/html" href="commit/30616d0c409997c3f4290cd2bfa521757a11a093.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 30616d0c409997c3f4290cd2bfa521757a11a093
parent ddb05f353f61ce7e05ac6329fb7a2432e9d4750d
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Fri,  2 Sep 2016 11:49:02 +0200

increasing for loops are idiomatic

</content>
</entry>
<entry>
<id>ddb05f353f61ce7e05ac6329fb7a2432e9d4750d</id>
<published>2016-09-01T11:47:19Z</published>
<updated>2016-09-01T11:47:19Z</updated>
<title>Localize running and failure inside readpw()</title>
<link rel="alternate" type="text/html" href="commit/ddb05f353f61ce7e05ac6329fb7a2432e9d4750d.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit ddb05f353f61ce7e05ac6329fb7a2432e9d4750d
parent 279cd531cae9d5e025c9f8b77c8face4e7a44822
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
Date:   Thu,  1 Sep 2016 13:47:19 +0200

Localize running and failure inside readpw()

They are only needed there, so don&#39;t make them global.

</content>
</entry>
<entry>
<id>279cd531cae9d5e025c9f8b77c8face4e7a44822</id>
<published>2016-09-01T11:47:05Z</published>
<updated>2016-09-01T11:47:05Z</updated>
<title>Move screen unlocking inside cleanup()</title>
<link rel="alternate" type="text/html" href="commit/279cd531cae9d5e025c9f8b77c8face4e7a44822.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit 279cd531cae9d5e025c9f8b77c8face4e7a44822
parent 5131bc869cb51a801b47303e68d2f74630564bce
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
Date:   Thu,  1 Sep 2016 13:47:05 +0200

Move screen unlocking inside cleanup()

</content>
</entry>
<entry>
<id>5131bc869cb51a801b47303e68d2f74630564bce</id>
<published>2016-09-01T11:46:51Z</published>
<updated>2016-09-01T11:46:51Z</updated>
<title>Re-introduce the waiting loop for input grabbing</title>
<link rel="alternate" type="text/html" href="commit/5131bc869cb51a801b47303e68d2f74630564bce.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit 5131bc869cb51a801b47303e68d2f74630564bce
parent 19ee11b1c3c155996aec9569a6f5ec45eeaf5133
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
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 babb203, sorry for the mess.

</content>
</entry>
<entry>
<id>19ee11b1c3c155996aec9569a6f5ec45eeaf5133</id>
<published>2016-09-01T11:46:19Z</published>
<updated>2016-09-01T11:46:19Z</updated>
<title>Add cleanup() to do free(locks) + XCloseDisplay()</title>
<link rel="alternate" type="text/html" href="commit/19ee11b1c3c155996aec9569a6f5ec45eeaf5133.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit 19ee11b1c3c155996aec9569a6f5ec45eeaf5133
parent dd61d08d74f543c05e37b6aaf4e5aa673c7485ac
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
Date:   Thu,  1 Sep 2016 13:46:19 +0200

Add cleanup() to do free(locks) + XCloseDisplay()

</content>
</entry>
<entry>
<id>dd61d08d74f543c05e37b6aaf4e5aa673c7485ac</id>
<published>2016-08-22T23:45:46Z</published>
<updated>2016-08-22T23:45:46Z</updated>
<title>Refactor dontkillme()</title>
<link rel="alternate" type="text/html" href="commit/dd61d08d74f543c05e37b6aaf4e5aa673c7485ac.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit dd61d08d74f543c05e37b6aaf4e5aa673c7485ac
parent c2afaea3bbb6dc685e00d95b7a349a7cd5ad232e
Author: FRIGN &lt;dev@frign.de&gt;
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 &quot;-1000&quot;, a code reviewer would question if that is really the
lowest possible number or just an arbitrary value.
The kernel ABI probably won&#39;t change, but even in the case, we wouldn&#39;t
have to modify the code. The OOM killer only is guaranteed to not
kill you if you have OOM_SCORE_ADJ_MIN.

</content>
</entry>
<entry>
<id>c2afaea3bbb6dc685e00d95b7a349a7cd5ad232e</id>
<published>2016-08-23T08:55:34Z</published>
<updated>2016-08-23T08:55:34Z</updated>
<title>Convert manpage to mandoc and fix usage</title>
<link rel="alternate" type="text/html" href="commit/c2afaea3bbb6dc685e00d95b7a349a7cd5ad232e.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit c2afaea3bbb6dc685e00d95b7a349a7cd5ad232e
parent c6bd8103dce9ccd23ad1eefd44e578ea70ae3c7a
Author: FRIGN &lt;dev@frign.de&gt;
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.

</content>
</entry>
<entry>
<id>c6bd8103dce9ccd23ad1eefd44e578ea70ae3c7a</id>
<published>2016-08-30T22:59:06Z</published>
<updated>2016-08-30T22:59:06Z</updated>
<title>fix CVE-2016-6866</title>
<link rel="alternate" type="text/html" href="commit/c6bd8103dce9ccd23ad1eefd44e578ea70ae3c7a.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit c6bd8103dce9ccd23ad1eefd44e578ea70ae3c7a
parent 4893d827c5a8be0f80a569d1e3989b17bf04208a
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Wed, 31 Aug 2016 00:59:06 +0200

fix CVE-2016-6866

</content>
</entry>
<entry>
<id>4893d827c5a8be0f80a569d1e3989b17bf04208a</id>
<published>2016-08-30T22:56:13Z</published>
<updated>2016-08-30T22:56:13Z</updated>
<title>Update bsd-auth string.</title>
<link rel="alternate" type="text/html" href="commit/4893d827c5a8be0f80a569d1e3989b17bf04208a.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 4893d827c5a8be0f80a569d1e3989b17bf04208a
parent babb2038c8d0bb84a32d4ac705d8787961dd6256
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Wed, 31 Aug 2016 00:56:13 +0200

Update bsd-auth string.

Thanks to Hiltjo for discovering this.

</content>
</entry>
<entry>
<id>babb2038c8d0bb84a32d4ac705d8787961dd6256</id>
<published>2016-08-30T15:33:09Z</published>
<updated>2016-08-30T15:33:09Z</updated>
<title>Exit as soon as possible on input grabbing error</title>
<link rel="alternate" type="text/html" href="commit/babb2038c8d0bb84a32d4ac705d8787961dd6256.html" />
<author>
<name>Quentin Rameau</name>
<email>quinq@fifth.space</email>
</author>
<content>commit babb2038c8d0bb84a32d4ac705d8787961dd6256
parent 33365b81f4d4ec3d9599094e66ed206ef279374c
Author: Quentin Rameau &lt;quinq@fifth.space&gt;
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.

</content>
</entry>
<entry>
<id>33365b81f4d4ec3d9599094e66ed206ef279374c</id>
<published>2016-08-21T22:25:21Z</published>
<updated>2016-08-21T22:25:21Z</updated>
<title>Refactor main()</title>
<link rel="alternate" type="text/html" href="commit/33365b81f4d4ec3d9599094e66ed206ef279374c.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 33365b81f4d4ec3d9599094e66ed206ef279374c
parent 917a2ff7a332401436bc8cc76a7411ec5a89257a
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Mon, 22 Aug 2016 00:25:21 +0200

Refactor main()

- Add arg.h and fix usage
	Given slock is suid we don&#39;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 &quot;slock:&quot; and fix wording and
	do a proper cleanup before quitting (XCloseDisplay and free
	the locks), making the die() semantics consistent with st&#39;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 &quot;illegal&quot; cleanup-work.

</content>
</entry>
<entry>
<id>917a2ff7a332401436bc8cc76a7411ec5a89257a</id>
<published>2016-07-31T11:43:00Z</published>
<updated>2016-07-31T11:43:00Z</updated>
<title>clear passwords with explicit_bzero</title>
<link rel="alternate" type="text/html" href="commit/917a2ff7a332401436bc8cc76a7411ec5a89257a.html" />
<author>
<name>Hiltjo Posthuma</name>
<email>hiltjo@codemadness.org</email>
</author>
<content>commit 917a2ff7a332401436bc8cc76a7411ec5a89257a
parent b845e98d14bf1380f40fb0486631901cc020d254
Author: Hiltjo Posthuma &lt;hiltjo@codemadness.org&gt;
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&amp;r=1&amp;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.

</content>
</entry>
<entry>
<id>b845e98d14bf1380f40fb0486631901cc020d254</id>
<published>2016-02-15T13:15:45Z</published>
<updated>2016-02-15T13:15:45Z</updated>
<title>Revert &quot;No need for usage()&quot;</title>
<link rel="alternate" type="text/html" href="commit/b845e98d14bf1380f40fb0486631901cc020d254.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit b845e98d14bf1380f40fb0486631901cc020d254
parent 728397064a7677d11be4c5b52c9e6f22c429819b
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Mon, 15 Feb 2016 14:15:45 +0100

Revert &quot;No need for usage()&quot;

This reverts most of commit fbb50ec7d630b25769c6727773325f4050cecc51 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 &quot;slock: version 1.3&quot; instead of &quot;slock: slock-1.3&quot;

</content>
</entry>
<entry>
<id>728397064a7677d11be4c5b52c9e6f22c429819b</id>
<published>2016-02-15T13:00:56Z</published>
<updated>2016-02-15T13:00:56Z</updated>
<title>revert using argv0 and minor fixup</title>
<link rel="alternate" type="text/html" href="commit/728397064a7677d11be4c5b52c9e6f22c429819b.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 728397064a7677d11be4c5b52c9e6f22c429819b
parent f0d955ed84dd87e874483b52234bd6946178f159
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Mon, 15 Feb 2016 14:00:56 +0100

revert using argv0 and minor fixup

- use hardcoded &quot;slock&quot; instead of argv[0]
- add &quot;slock: &quot; to fprintf calls, where it was missing
- revert `argc--, argv++` shifting

</content>
</entry>
<entry>
<id>f0d955ed84dd87e874483b52234bd6946178f159</id>
<published>2016-02-14T01:13:54Z</published>
<updated>2016-02-14T01:13:54Z</updated>
<title>Use argv0 instead of passing &quot;slock:&quot; to die every time</title>
<link rel="alternate" type="text/html" href="commit/f0d955ed84dd87e874483b52234bd6946178f159.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit f0d955ed84dd87e874483b52234bd6946178f159
parent fbb50ec7d630b25769c6727773325f4050cecc51
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Sun, 14 Feb 2016 02:13:54 +0100

Use argv0 instead of passing &quot;slock:&quot; to die every time

</content>
</entry>
<entry>
<id>fbb50ec7d630b25769c6727773325f4050cecc51</id>
<published>2016-02-14T00:48:48Z</published>
<updated>2016-02-14T00:48:48Z</updated>
<title>No need for usage()</title>
<link rel="alternate" type="text/html" href="commit/fbb50ec7d630b25769c6727773325f4050cecc51.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit fbb50ec7d630b25769c6727773325f4050cecc51
parent 69d0bb645f9895efd2e8afd05c4e5ff4a8af9beb
Author: FRIGN &lt;dev@frign.de&gt;
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&#39;t
           be as liberal and just intercept certain flags.

I changed the manpage to reflect this change.

</content>
</entry>
<entry>
<id>69d0bb645f9895efd2e8afd05c4e5ff4a8af9beb</id>
<published>2016-02-14T00:32:02Z</published>
<updated>2016-02-14T00:32:02Z</updated>
<title>Clarify config.def.h</title>
<link rel="alternate" type="text/html" href="commit/69d0bb645f9895efd2e8afd05c4e5ff4a8af9beb.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 69d0bb645f9895efd2e8afd05c4e5ff4a8af9beb
parent c08a8b27b0852bf7e6299201dc30be204d264d64
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Sun, 14 Feb 2016 01:32:02 +0100

Clarify config.def.h

Clear up the wording a bit and explain what failonclear means.

</content>
</entry>
<entry>
<id>c08a8b27b0852bf7e6299201dc30be204d264d64</id>
<published>2016-02-14T00:28:37Z</published>
<updated>2016-02-14T00:28:37Z</updated>
<title>Simplify the oom-taming-function</title>
<link rel="alternate" type="text/html" href="commit/c08a8b27b0852bf7e6299201dc30be204d264d64.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit c08a8b27b0852bf7e6299201dc30be204d264d64
parent ff8f23d3dbbebcbbad446c0d28fb29e6f1c671c4
Author: FRIGN &lt;dev@frign.de&gt;
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&#39;t want to play around too much here anyway.

On another notice, let&#39;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&#39;re just hiding.

</content>
</entry>
<entry>
<id>ff8f23d3dbbebcbbad446c0d28fb29e6f1c671c4</id>
<published>2016-02-11T15:49:59Z</published>
<updated>2016-02-11T15:49:59Z</updated>
<title>add slock.1 man page</title>
<link rel="alternate" type="text/html" href="commit/ff8f23d3dbbebcbbad446c0d28fb29e6f1c671c4.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit ff8f23d3dbbebcbbad446c0d28fb29e6f1c671c4
parent d3865968822ec62856d7b07c6ad384b8be03c3b7
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Thu, 11 Feb 2016 16:49:59 +0100

add slock.1 man page

</content>
</entry>
<entry>
<id>d3865968822ec62856d7b07c6ad384b8be03c3b7</id>
<published>2016-02-11T15:30:52Z</published>
<updated>2016-02-11T15:30:52Z</updated>
<title>Update license year</title>
<link rel="alternate" type="text/html" href="commit/d3865968822ec62856d7b07c6ad384b8be03c3b7.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit d3865968822ec62856d7b07c6ad384b8be03c3b7
parent 1c89ff3b214abc1e15bb6fea57f2d7e715c6db3d
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Thu, 11 Feb 2016 16:30:52 +0100

Update license year

It actually was 2014 and not 2015.

</content>
</entry>
<entry>
<id>1c89ff3b214abc1e15bb6fea57f2d7e715c6db3d</id>
<published>2016-02-11T15:29:26Z</published>
<updated>2016-02-11T15:29:26Z</updated>
<title>Don&#39;t forget the E-Mail</title>
<link rel="alternate" type="text/html" href="commit/1c89ff3b214abc1e15bb6fea57f2d7e715c6db3d.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 1c89ff3b214abc1e15bb6fea57f2d7e715c6db3d
parent a1f1aa1f2bae9249510ddef9d838ddcabc2a52bf
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Thu, 11 Feb 2016 16:29:26 +0100

Don&#39;t forget the E-Mail

</content>
</entry>
<entry>
<id>a1f1aa1f2bae9249510ddef9d838ddcabc2a52bf</id>
<published>2016-02-11T15:28:41Z</published>
<updated>2016-02-11T15:28:41Z</updated>
<title>Add myself to License</title>
<link rel="alternate" type="text/html" href="commit/a1f1aa1f2bae9249510ddef9d838ddcabc2a52bf.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit a1f1aa1f2bae9249510ddef9d838ddcabc2a52bf
parent 3e0e7dc79f37bf8022974ea2b6e190257e3330f9
Author: FRIGN &lt;dev@frign.de&gt;
Date:   Thu, 11 Feb 2016 16:28:41 +0100

Add myself to License

forgot that a while ago

</content>
</entry>
<entry>
<id>3e0e7dc79f37bf8022974ea2b6e190257e3330f9</id>
<published>2016-02-11T15:26:12Z</published>
<updated>2016-02-11T15:26:12Z</updated>
<title>update copyright year in -v output</title>
<link rel="alternate" type="text/html" href="commit/3e0e7dc79f37bf8022974ea2b6e190257e3330f9.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 3e0e7dc79f37bf8022974ea2b6e190257e3330f9
parent 220adfd6c6cb6703737202e7e84e79e323dd57b4
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Thu, 11 Feb 2016 16:26:12 +0100

update copyright year in -v output

</content>
</entry>
<entry>
<id>220adfd6c6cb6703737202e7e84e79e323dd57b4</id>
<published>2016-02-11T15:23:48Z</published>
<updated>2016-02-11T15:23:48Z</updated>
<title>prepare 1.3 release</title>
<link rel="alternate" type="text/html" href="commit/220adfd6c6cb6703737202e7e84e79e323dd57b4.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 220adfd6c6cb6703737202e7e84e79e323dd57b4
parent d6f399aaa702e11e44eb6c8539425f7da6e503d7
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Thu, 11 Feb 2016 16:23:48 +0100

prepare 1.3 release

</content>
</entry>
<entry>
<id>d6f399aaa702e11e44eb6c8539425f7da6e503d7</id>
<published>2016-02-11T15:22:34Z</published>
<updated>2016-02-11T15:22:34Z</updated>
<title>remove .hgtags</title>
<link rel="alternate" type="text/html" href="commit/d6f399aaa702e11e44eb6c8539425f7da6e503d7.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit d6f399aaa702e11e44eb6c8539425f7da6e503d7
parent 07f1828df08efd4a62fa8b87739e2699755ea00f
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Thu, 11 Feb 2016 16:22:34 +0100

remove .hgtags

</content>
</entry>
<entry>
<id>07f1828df08efd4a62fa8b87739e2699755ea00f</id>
<published>2016-01-29T21:11:18Z</published>
<updated>2016-01-29T21:11:18Z</updated>
<title>add hint for suid to oom error message</title>
<link rel="alternate" type="text/html" href="commit/07f1828df08efd4a62fa8b87739e2699755ea00f.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 07f1828df08efd4a62fa8b87739e2699755ea00f
parent a67d4068204f780573c0adc6708be786cda96120
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Fri, 29 Jan 2016 22:11:18 +0100

add hint for suid to oom error message

</content>
</entry>
<entry>
<id>a67d4068204f780573c0adc6708be786cda96120</id>
<published>2016-01-18T15:49:15Z</published>
<updated>2016-01-18T15:49:15Z</updated>
<title>error messages on grab failure</title>
<link rel="alternate" type="text/html" href="commit/a67d4068204f780573c0adc6708be786cda96120.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit a67d4068204f780573c0adc6708be786cda96120
parent c1b6f606a5a506ef3c97af7d77554a789256ef77
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Mon, 18 Jan 2016 16:49:15 +0100

error messages on grab failure

</content>
</entry>
<entry>
<id>c1b6f606a5a506ef3c97af7d77554a789256ef77</id>
<published>2016-01-16T11:38:36Z</published>
<updated>2016-01-16T11:38:36Z</updated>
<title>code style fix</title>
<link rel="alternate" type="text/html" href="commit/c1b6f606a5a506ef3c97af7d77554a789256ef77.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit c1b6f606a5a506ef3c97af7d77554a789256ef77
parent 931db45be53b387e20f912ab3bd0fe01d5c25eba
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Sat, 16 Jan 2016 12:38:36 +0100

code style fix

</content>
</entry>
<entry>
<id>931db45be53b387e20f912ab3bd0fe01d5c25eba</id>
<published>2015-12-26T12:13:25Z</published>
<updated>2015-12-26T12:13:25Z</updated>
<title>add option to run command after screen is locked</title>
<link rel="alternate" type="text/html" href="commit/931db45be53b387e20f912ab3bd0fe01d5c25eba.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 931db45be53b387e20f912ab3bd0fe01d5c25eba
parent d253f51064ad149b9fd55cf3a0673883e344518c
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Sat, 26 Dec 2015 13:13:25 +0100

add option to run command after screen is locked

</content>
</entry>
<entry>
<id>d253f51064ad149b9fd55cf3a0673883e344518c</id>
<published>2015-08-27T04:16:25Z</published>
<updated>2015-08-27T04:16:25Z</updated>
<title>Don&#39;t change to failure colour on success</title>
<link rel="alternate" type="text/html" href="commit/d253f51064ad149b9fd55cf3a0673883e344518c.html" />
<author>
<name>David Phillips</name>
<email>dbphillipsnz@gmail.com</email>
</author>
<content>commit d253f51064ad149b9fd55cf3a0673883e344518c
parent 69e9ad7df7dc48868079dffade632cf1f6526eef
Author: David Phillips &lt;dbphillipsnz@gmail.com&gt;
Date:   Thu, 27 Aug 2015 06:16:25 +0200

Don&#39;t change to failure colour on success

</content>
</entry>
<entry>
<id>69e9ad7df7dc48868079dffade632cf1f6526eef</id>
<published>2015-06-19T11:42:15Z</published>
<updated>2015-06-19T11:42:15Z</updated>
<title>Slightly safer OOM killer disablement in linux</title>
<link rel="alternate" type="text/html" href="commit/69e9ad7df7dc48868079dffade632cf1f6526eef.html" />
<author>
<name>David Phillips</name>
<email>dbphillipsnz@gmail.com</email>
</author>
<content>commit 69e9ad7df7dc48868079dffade632cf1f6526eef
parent 01464da6961df6cb786b69118c2f874640046b33
Author: David Phillips &lt;dbphillipsnz@gmail.com&gt;
Date:   Fri, 19 Jun 2015 23:42:15 +1200

Slightly safer OOM killer disablement in linux

</content>
</entry>
<entry>
<id>01464da6961df6cb786b69118c2f874640046b33</id>
<published>2015-05-08T15:10:15Z</published>
<updated>2015-05-08T15:10:15Z</updated>
<title>rework setting window color</title>
<link rel="alternate" type="text/html" href="commit/01464da6961df6cb786b69118c2f874640046b33.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 01464da6961df6cb786b69118c2f874640046b33
parent 59bf26cde424d566ebac152dc68c1e4c3fe63ab3
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Fri,  8 May 2015 17:10:15 +0200

rework setting window color

</content>
</entry>
<entry>
<id>59bf26cde424d566ebac152dc68c1e4c3fe63ab3</id>
<published>2015-05-08T14:43:13Z</published>
<updated>2015-05-08T14:43:13Z</updated>
<title>consistently use () with sizeof</title>
<link rel="alternate" type="text/html" href="commit/59bf26cde424d566ebac152dc68c1e4c3fe63ab3.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 59bf26cde424d566ebac152dc68c1e4c3fe63ab3
parent c46625f0eb769f3c18ef59e1fbbcecb94316f1b4
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Fri,  8 May 2015 16:43:13 +0200

consistently use () with sizeof

</content>
</entry>
<entry>
<id>c46625f0eb769f3c18ef59e1fbbcecb94316f1b4</id>
<published>2015-05-06T16:18:50Z</published>
<updated>2015-05-06T16:18:50Z</updated>
<title>Option to not show failure color on clear</title>
<link rel="alternate" type="text/html" href="commit/c46625f0eb769f3c18ef59e1fbbcecb94316f1b4.html" />
<author>
<name>Nick Currier</name>
<email>nick.currier@gmail.com</email>
</author>
<content>commit c46625f0eb769f3c18ef59e1fbbcecb94316f1b4
parent 741adc9e55b193f685cb8aff7697615f072d7790
Author: Nick Currier &lt;nick.currier@gmail.com&gt;
Date:   Wed,  6 May 2015 10:18:50 -0600

Option to not show failure color on clear

</content>
</entry>
<entry>
<id>741adc9e55b193f685cb8aff7697615f072d7790</id>
<published>2015-02-25T22:06:45Z</published>
<updated>2015-02-25T22:06:45Z</updated>
<title>resize lockscreen window after Xrandr resize</title>
<link rel="alternate" type="text/html" href="commit/741adc9e55b193f685cb8aff7697615f072d7790.html" />
<author>
<name>Markus Teich</name>
<email>markus.teich@stusta.mhn.de</email>
</author>
<content>commit 741adc9e55b193f685cb8aff7697615f072d7790
parent 2b0648c31e2f8a8c75fc996d8bcff8173902a669
Author: Markus Teich &lt;markus.teich@stusta.mhn.de&gt;
Date:   Wed, 25 Feb 2015 23:06:45 +0100

resize lockscreen window after Xrandr resize

</content>
</entry>
<entry>
<id>2b0648c31e2f8a8c75fc996d8bcff8173902a669</id>
<published>2015-02-11T22:56:35Z</published>
<updated>2015-02-11T22:56:35Z</updated>
<title>Blank the screen with color 0, add third color for failed logins</title>
<link rel="alternate" type="text/html" href="commit/2b0648c31e2f8a8c75fc996d8bcff8173902a669.html" />
<author>
<name>David Phillips</name>
<email>dbphillipsnz@gmail.com</email>
</author>
<content>commit 2b0648c31e2f8a8c75fc996d8bcff8173902a669
parent 6b16770171c86a556a2103995ea870c181f8fbc6
Author: David Phillips &lt;dbphillipsnz@gmail.com&gt;
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-&gt;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.

</content>
</entry>
<entry>
<id>6b16770171c86a556a2103995ea870c181f8fbc6</id>
<published>2015-01-27T21:16:52Z</published>
<updated>2015-01-27T21:16:52Z</updated>
<title>applied Dimitris&#39; style patch from Dec&#39;14, with some minor modifications</title>
<link rel="alternate" type="text/html" href="commit/6b16770171c86a556a2103995ea870c181f8fbc6.html" />
<author>
<name>Anselm R Garbe</name>
<email>garbeam@gmail.com</email>
</author>
<content>commit 6b16770171c86a556a2103995ea870c181f8fbc6
parent a4eb8ac3345fde89e1d2eea887c07d2b8a01cfa8
Author: Anselm R Garbe &lt;garbeam@gmail.com&gt;
Date:   Tue, 27 Jan 2015 22:16:52 +0100

applied Dimitris&#39; style patch from Dec&#39;14, with some minor modifications

</content>
</entry>
<entry>
<id>a4eb8ac3345fde89e1d2eea887c07d2b8a01cfa8</id>
<published>2014-12-22T10:17:45Z</published>
<updated>2014-12-22T10:17:45Z</updated>
<title>fixed usage string</title>
<link rel="alternate" type="text/html" href="commit/a4eb8ac3345fde89e1d2eea887c07d2b8a01cfa8.html" />
<author>
<name>Anselm R Garbe</name>
<email>garbeam@gmail.com</email>
</author>
<content>commit a4eb8ac3345fde89e1d2eea887c07d2b8a01cfa8
parent 7d04eec099ac03ef9355dc101a66c8f9b87b6046
Author: Anselm R Garbe &lt;garbeam@gmail.com&gt;
Date:   Mon, 22 Dec 2014 11:17:45 +0100

fixed usage string

</content>
</entry>
<entry>
<id>7d04eec099ac03ef9355dc101a66c8f9b87b6046</id>
<published>2014-12-22T10:16:26Z</published>
<updated>2014-12-22T10:16:26Z</updated>
<title>applied sin&#39;s patch and prepared new release</title>
<link rel="alternate" type="text/html" href="commit/7d04eec099ac03ef9355dc101a66c8f9b87b6046.html" />
<author>
<name>Anselm R Garbe</name>
<email>garbeam@gmail.com</email>
</author>
<content>commit 7d04eec099ac03ef9355dc101a66c8f9b87b6046
parent cdee1b5885311f5281601aa3faa8145ea7160295
Author: Anselm R Garbe &lt;garbeam@gmail.com&gt;
Date:   Mon, 22 Dec 2014 11:16:26 +0100

applied sin&#39;s patch and prepared new release

</content>
</entry>
<entry>
<id>cdee1b5885311f5281601aa3faa8145ea7160295</id>
<published>2014-11-07T13:20:13Z</published>
<updated>2014-11-07T13:20:13Z</updated>
<title>end{pw,sp}ent() can only be called after get{pw,sp}ent()</title>
<link rel="alternate" type="text/html" href="commit/cdee1b5885311f5281601aa3faa8145ea7160295.html" />
<author>
<name>sin</name>
<email>sin@2f30.org</email>
</author>
<content>commit cdee1b5885311f5281601aa3faa8145ea7160295
parent 2c492d4623819cedd1347ca762f299db5e940cfa
Author: sin &lt;sin@2f30.org&gt;
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.

</content>
</entry>
<entry>
<id>2c492d4623819cedd1347ca762f299db5e940cfa</id>
<published>2014-07-09T13:40:49Z</published>
<updated>2014-07-09T13:40:49Z</updated>
<title>Only check errno if getpwuid() fails</title>
<link rel="alternate" type="text/html" href="commit/2c492d4623819cedd1347ca762f299db5e940cfa.html" />
<author>
<name>sin</name>
<email>sin@2f30.org</email>
</author>
<content>commit 2c492d4623819cedd1347ca762f299db5e940cfa
parent 163cf4eecb0a746d6c080e57fec4035eb6e7f9eb
Author: sin &lt;sin@2f30.org&gt;
Date:   Wed,  9 Jul 2014 14:40:49 +0100

Only check errno if getpwuid() fails

Checking errno otherwise is unspecified.

</content>
</entry>
<entry>
<id>163cf4eecb0a746d6c080e57fec4035eb6e7f9eb</id>
<published>2014-06-03T17:19:10Z</published>
<updated>2014-06-03T17:19:10Z</updated>
<title>Add /etc/passwd support</title>
<link rel="alternate" type="text/html" href="commit/163cf4eecb0a746d6c080e57fec4035eb6e7f9eb.html" />
<author>
<name>FRIGN</name>
<email>dev@frign.de</email>
</author>
<content>commit 163cf4eecb0a746d6c080e57fec4035eb6e7f9eb
parent f405f8a3716a3dfa67b7ad86aa896fad63c1c65e
Author: FRIGN &lt;dev@frign.de&gt;
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&#39;re at it, remove an occurence of trailing whitespace.

</content>
</entry>
<entry>
<id>f405f8a3716a3dfa67b7ad86aa896fad63c1c65e</id>
<published>2013-11-14T11:24:08Z</published>
<updated>2013-11-14T11:24:08Z</updated>
<title>Set errno to 0 before getpwuid() and check it afterwards</title>
<link rel="alternate" type="text/html" href="commit/f405f8a3716a3dfa67b7ad86aa896fad63c1c65e.html" />
<author>
<name>sin</name>
<email>sin@2f30.org</email>
</author>
<content>commit f405f8a3716a3dfa67b7ad86aa896fad63c1c65e
parent ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509
Author: sin &lt;sin@2f30.org&gt;
Date:   Thu, 14 Nov 2013 11:24:08 +0000

Set errno to 0 before getpwuid() and check it afterwards

</content>
</entry>
<entry>
<id>ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509</id>
<published>2013-08-02T20:11:18Z</published>
<updated>2013-08-02T20:11:18Z</updated>
<title>applied Robert Schneider&#39;s Linux suggestions, also bumped version and updated LICENSE file&#39;s copyright notice</title>
<link rel="alternate" type="text/html" href="commit/ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509.html" />
<author>
<name>Anselm R Garbe</name>
<email>anselm@garbe.us</email>
</author>
<content>commit ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509
parent 3092d3b3146720b2279df202382864454c12cc98
Author: Anselm R Garbe &lt;anselm@garbe.us&gt;
Date:   Fri,  2 Aug 2013 22:11:18 +0200

applied Robert Schneider&#39;s Linux suggestions, also bumped version and updated LICENSE file&#39;s copyright notice

</content>
</entry>
<entry>
<id>3092d3b3146720b2279df202382864454c12cc98</id>
<published>2012-10-25T18:59:50Z</published>
<updated>2012-10-25T18:59:50Z</updated>
<title>prepared 1.1</title>
<link rel="alternate" type="text/html" href="commit/3092d3b3146720b2279df202382864454c12cc98.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 3092d3b3146720b2279df202382864454c12cc98
parent d276b9b0e01ea086e48ea8327efa0f9ebddca621
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Thu, 25 Oct 2012 20:59:50 +0200

prepared 1.1
</content>
</entry>
<entry>
<id>d276b9b0e01ea086e48ea8327efa0f9ebddca621</id>
<published>2012-08-02T19:54:18Z</published>
<updated>2012-08-02T19:54:18Z</updated>
<title>applied andres&#39; multi-slock fix, thanks for spotting this issue</title>
<link rel="alternate" type="text/html" href="commit/d276b9b0e01ea086e48ea8327efa0f9ebddca621.html" />
<author>
<name>garbeam@gmail.com</name>
<email>unknown</email>
</author>
<content>commit d276b9b0e01ea086e48ea8327efa0f9ebddca621
parent 4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b071
Author: garbeam@gmail.com &lt;unknown&gt;
Date:   Thu,  2 Aug 2012 21:54:18 +0200

applied andres&#39; multi-slock fix, thanks for spotting this issue
</content>
</entry>
<entry>
<id>4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b071</id>
<published>2012-04-15T09:58:16Z</published>
<updated>2012-04-15T09:58:16Z</updated>
<title>added Ben&#39;s password placeholder entry kludge</title>
<link rel="alternate" type="text/html" href="commit/4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b071.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 4b4fcca1bc3a05e0a4bb5453dfe6dbd84a54b071
parent c1507cd225a34ef69045cfc20519b16212dba8dd
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sun, 15 Apr 2012 11:58:16 +0200

added Ben&#39;s password placeholder entry kludge
</content>
</entry>
<entry>
<id>c1507cd225a34ef69045cfc20519b16212dba8dd</id>
<published>2012-03-17T17:03:25Z</published>
<updated>2012-03-17T17:03:25Z</updated>
<title>applied Eckehard Bern&#39;s dualcolor patch to slock</title>
<link rel="alternate" type="text/html" href="commit/c1507cd225a34ef69045cfc20519b16212dba8dd.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit c1507cd225a34ef69045cfc20519b16212dba8dd
parent 88d968496652401eba8fa98615c6196618c91fcd
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sat, 17 Mar 2012 18:03:25 +0100

applied Eckehard Bern&#39;s dualcolor patch to slock
</content>
</entry>
<entry>
<id>88d968496652401eba8fa98615c6196618c91fcd</id>
<published>2012-02-11T09:51:31Z</published>
<updated>2012-02-11T09:51:31Z</updated>
<title>Added tag 1.0 for changeset 05b949016e85</title>
<link rel="alternate" type="text/html" href="commit/88d968496652401eba8fa98615c6196618c91fcd.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 88d968496652401eba8fa98615c6196618c91fcd
parent 34f5edb29e3947d105235c1fc07be57eda5adeb5
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sat, 11 Feb 2012 10:51:31 +0100

Added tag 1.0 for changeset 05b949016e85
</content>
</entry>
<entry>
<id>34f5edb29e3947d105235c1fc07be57eda5adeb5</id>
<published>2012-02-11T09:51:26Z</published>
<updated>2012-02-11T09:51:26Z</updated>
<title>preparing 1.0</title>
<link rel="alternate" type="text/html" href="commit/34f5edb29e3947d105235c1fc07be57eda5adeb5.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 34f5edb29e3947d105235c1fc07be57eda5adeb5
parent 0b1362846242d510c4fd160b7e6579278213a544
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sat, 11 Feb 2012 10:51:26 +0100

preparing 1.0
</content>
</entry>
<entry>
<id>0b1362846242d510c4fd160b7e6579278213a544</id>
<published>2012-02-09T19:56:34Z</published>
<updated>2012-02-09T19:56:34Z</updated>
<title>select for SubstructureRedirectMask as well</title>
<link rel="alternate" type="text/html" href="commit/0b1362846242d510c4fd160b7e6579278213a544.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 0b1362846242d510c4fd160b7e6579278213a544
parent 7a217cb7c4f1a7439b76f5fb839035d7021eb7ff
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Thu,  9 Feb 2012 20:56:34 +0100

select for SubstructureRedirectMask as well
</content>
</entry>
<entry>
<id>7a217cb7c4f1a7439b76f5fb839035d7021eb7ff</id>
<published>2012-02-09T19:18:49Z</published>
<updated>2012-02-09T19:18:49Z</updated>
<title>fixed missing new lines</title>
<link rel="alternate" type="text/html" href="commit/7a217cb7c4f1a7439b76f5fb839035d7021eb7ff.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 7a217cb7c4f1a7439b76f5fb839035d7021eb7ff
parent 5d433c7cf509daf064b2a0412ed6cf3c0068afde
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Thu,  9 Feb 2012 20:18:49 +0100

fixed missing new lines
</content>
</entry>
<entry>
<id>5d433c7cf509daf064b2a0412ed6cf3c0068afde</id>
<published>2012-02-05T15:41:31Z</published>
<updated>2012-02-05T15:41:31Z</updated>
<title>typo fix</title>
<link rel="alternate" type="text/html" href="commit/5d433c7cf509daf064b2a0412ed6cf3c0068afde.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 5d433c7cf509daf064b2a0412ed6cf3c0068afde
parent d6e9e7d9e32d315330e1a60a5087a86c19ab1ab7
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sun,  5 Feb 2012 16:41:31 +0100

typo fix
</content>
</entry>
<entry>
<id>d6e9e7d9e32d315330e1a60a5087a86c19ab1ab7</id>
<published>2012-02-05T15:38:58Z</published>
<updated>2012-02-05T15:38:58Z</updated>
<title>added XRaiseWindow workaround when new clients are launched</title>
<link rel="alternate" type="text/html" href="commit/d6e9e7d9e32d315330e1a60a5087a86c19ab1ab7.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit d6e9e7d9e32d315330e1a60a5087a86c19ab1ab7
parent f013cb264e654125c043ed637b7f47692376f967
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sun,  5 Feb 2012 16:38:58 +0100

added XRaiseWindow workaround when new clients are launched
</content>
</entry>
<entry>
<id>f013cb264e654125c043ed637b7f47692376f967</id>
<published>2012-01-24T21:10:02Z</published>
<updated>2012-01-24T21:10:02Z</updated>
<title>applied Michaels patch</title>
<link rel="alternate" type="text/html" href="commit/f013cb264e654125c043ed637b7f47692376f967.html" />
<author>
<name>garbeam@gmail.com</name>
<email>unknown</email>
</author>
<content>commit f013cb264e654125c043ed637b7f47692376f967
parent 5a5c581285e86fe53c9602c7e0fb7e19ec742391
Author: garbeam@gmail.com &lt;unknown&gt;
Date:   Tue, 24 Jan 2012 22:10:02 +0100

applied Michaels patch
</content>
</entry>
<entry>
<id>5a5c581285e86fe53c9602c7e0fb7e19ec742391</id>
<published>2012-01-22T17:58:10Z</published>
<updated>2012-01-22T17:58:10Z</updated>
<title>added dummy error handler to prevent X from terminating slock just in case</title>
<link rel="alternate" type="text/html" href="commit/5a5c581285e86fe53c9602c7e0fb7e19ec742391.html" />
<author>
<name>anselm@garbe.us</name>
<email>unknown</email>
</author>
<content>commit 5a5c581285e86fe53c9602c7e0fb7e19ec742391
parent ede2935e10fdab76994676d5052b571907612199
Author: anselm@garbe.us &lt;unknown&gt;
Date:   Sun, 22 Jan 2012 18:58:10 +0100

added dummy error handler to prevent X from terminating slock just in case
</content>
</entry>
<entry>
<id>ede2935e10fdab76994676d5052b571907612199</id>
<published>2011-04-21T08:22:47Z</published>
<updated>2011-04-21T08:22:47Z</updated>
<title>applied Markus&#39; patch to die in case /etc/passwd is unavailable</title>
<link rel="alternate" type="text/html" href="commit/ede2935e10fdab76994676d5052b571907612199.html" />
<author>
<name>Anselm R Garbe</name>
<email>anselm@garbe.us</email>
</author>
<content>commit ede2935e10fdab76994676d5052b571907612199
parent 732d2b3bf5da3a1883b3246062aa556a59b8517c
Author: Anselm R Garbe &lt;anselm@garbe.us&gt;
Date:   Thu, 21 Apr 2011 08:22:47 +0000

applied Markus&#39; patch to die in case /etc/passwd is unavailable
</content>
</entry>
<entry>
<id>732d2b3bf5da3a1883b3246062aa556a59b8517c</id>
<published>2009-11-26T12:53:26Z</published>
<updated>2009-11-26T12:53:26Z</updated>
<title>applied Fernando Silveira&#39;s multiscreen patch for old style multihead setups</title>
<link rel="alternate" type="text/html" href="commit/732d2b3bf5da3a1883b3246062aa556a59b8517c.html" />
<author>
<name>Anselm R Garbe</name>
<email>garbeam@gmail.com</email>
</author>
<content>commit 732d2b3bf5da3a1883b3246062aa556a59b8517c
parent 0cb05bdb75ac13f010d51e267007ca1c869763ec
Author: Anselm R Garbe &lt;garbeam@gmail.com&gt;
Date:   Thu, 26 Nov 2009 12:53:26 +0000

applied Fernando Silveira&#39;s multiscreen patch for old style multihead setups
</content>
</entry>
<entry>
<id>0cb05bdb75ac13f010d51e267007ca1c869763ec</id>
<published>2008-12-12T19:34:43Z</published>
<updated>2008-12-12T19:34:43Z</updated>
<title>applied Ali Gholami Rudi&#39;s patch regarding DPMS timeout customization and persistence</title>
<link rel="alternate" type="text/html" href="commit/0cb05bdb75ac13f010d51e267007ca1c869763ec.html" />
<author>
<name>a@null</name>
<email>unknown</email>
</author>
<content>commit 0cb05bdb75ac13f010d51e267007ca1c869763ec
parent cadc8a7472f4a77b26a89e27bce4479dc12afdbe
Author: a@null &lt;unknown&gt;
Date:   Fri, 12 Dec 2008 19:34:43 +0000

applied Ali Gholami Rudi&#39;s patch regarding DPMS timeout customization and persistence
</content>
</entry>
</feed>
