~kris/suckless

slock

ref: b02c4d452a7942d4be3c69e6f98dafd35a2e4e78 slock/slock.c -rw-r--r-- 7.9 KiB
Use argv0 instead of passing "slock:" to die every time
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.
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.
f6582b68 — Markus Teich 10 years ago
update copyright year in -v output
1766ecdf — Markus Teich 10 years ago
add hint for suid to oom error message
9dfe0ce5 — Markus Teich 10 years ago
error messages on grab failure
55e827af — Markus Teich 10 years ago
code style fix
e867c381 — Markus Teich 10 years ago
add option to run command after screen is locked
b95ee111 — David Phillips 11 years ago
Don't change to failure colour on success
0edbd2e0 — David Phillips 11 years ago
Slightly safer OOM killer disablement in linux
754195f8 — Markus Teich 11 years ago
rework setting window color
10d4e479 — Markus Teich 11 years ago
consistently use () with sizeof
b1289f30 — Nick Currier 11 years ago
Option to not show failure color on clear
f5ef1b8e — Markus Teich 11 years ago
resize lockscreen window after Xrandr resize
f2ea92c3 — David Phillips 11 years ago
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.
a31b9191 — Anselm R Garbe 11 years ago
applied Dimitris' style patch from Dec'14, with some minor modifications
66e31556 — Anselm R Garbe 11 years ago
fixed usage string
44ce161c — Anselm R Garbe 11 years ago
applied sin's patch and prepared new release
end{pw,sp}ent() can only be called after get{pw,sp}ent()

Calling them unconditionally can result in memory corruption.
Only check errno if getpwuid() fails

Checking errno otherwise is unspecified.
Next