- Jun 29, 2024
-
-
Artur Dobrowolski authored
-
- Oct 06, 2023
-
-
Hiltjo Posthuma authored
Remove the OPTIONS section and add an EXIT STATUS section.
-
Hiltjo Posthuma authored
-
Hiltjo Posthuma authored
* Fix all lint warnings. * Remove "Op Ar arg..." in the description. It looks ugly. * No need to set -offset left for .Bd literal.
-
Hiltjo Posthuma authored
-
Hiltjo Posthuma authored
Some things to improve at some point: * Respect system/packaging CFLAGS/LDFLAGS (don't hardcode -Os -Wall -pedantic, -s, etc).
-
Hiltjo Posthuma authored
-
- Oct 04, 2022
-
-
Hiltjo Posthuma authored
-
Hiltjo Posthuma authored
-
- Mar 25, 2017
-
-
Tobias Stoeckmann authored
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>
-
- Nov 22, 2016
-
-
Markus Teich authored
-
Markus Teich authored
-
Markus Teich authored
-
Bob Uhl authored
When connecting/disconnecting a portrait monitor, the XRRScreenChangeNotifyEvent height & width are reversed due to the XRandR rotation; detect this and DTRT.
-
- Nov 20, 2016
-
-
Markus Teich authored
-
Markus Teich authored
-
- Nov 19, 2016
-
-
Markus Teich authored
-
Markus Teich authored
-
- Oct 17, 2016
-
-
Laslo Hunhold authored
-
- Oct 10, 2016
- Sep 28, 2016
-
-
FRIGN authored
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.
-
- Sep 26, 2016
-
-
Markus Teich authored
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.
-
- Sep 23, 2016
-
-
Markus Teich authored
-
FRIGN authored
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.
-
FRIGN authored
-
FRIGN authored
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.
-
- Sep 08, 2016
-
-
Quentin Rameau authored
Group each *FLAG with its description and add a NetBSD specific.
-
- Sep 07, 2016
-
-
FRIGN authored
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)
-
Quentin Rameau authored
-
Markus Teich authored
-
- Sep 02, 2016
-
-
Markus Teich authored
-
Quentin Rameau authored
They are only needed there, so don't make them global.
-
Quentin Rameau authored
-
Quentin Rameau authored
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 c2f97577, sorry for the mess.
-
Quentin Rameau authored
-
- Aug 30, 2016
-
-
FRIGN authored
- 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.
-
FRIGN authored
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.
-