Revert "No need for usage()" - slock - simple X display locker utility | |
git clone git://git.suckless.org/slock | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 65b8d5278882310eed758e6fbfd6ab9676db883c | |
parent ec46680fe10ffc69007b0a8b29d9e69c72704053 | |
Author: Markus Teich <[email protected]> | |
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" | |
Diffstat: | |
M slock.1 | 16 +++++++++++++--- | |
M slock.c | 17 +++++++++++++++-- | |
2 files changed, 28 insertions(+), 5 deletions(-) | |
--- | |
diff --git a/slock.1 b/slock.1 | |
@@ -3,17 +3,27 @@ | |
slock \- simple X screen locker | |
.SH SYNOPSIS | |
.B slock | |
-.RB [ | |
-.IR cmd | |
-] | |
+.RB [ \-v | |
+| | |
+.IR cmd ] | |
.SH DESCRIPTION | |
.B slock | |
is an X screen locker. If provided, | |
.IR cmd | |
is executed after the screen has been locked. | |
+.SH OPTIONS | |
+.TP | |
+.B \-v | |
+prints version information to stdout, then exits. | |
.SH EXAMPLES | |
$ slock /usr/sbin/s2ram | |
.SH CUSTOMIZATION | |
.B slock | |
can be customized by creating a custom config.h and (re)compiling the source | |
code. This keeps it fast, secure and simple. | |
+.SH AUTHORS | |
+See the LICENSE file for the authors. | |
+.SH LICENSE | |
+See the LICENSE file for the terms of redistribution. | |
+.SH BUGS | |
+Please report them. | |
diff --git a/slock.c b/slock.c | |
@@ -273,15 +273,28 @@ lockscreen(Display *dpy, int screen) | |
return NULL; | |
} | |
-int | |
-main(int argc, char **argv) | |
+static void | |
+usage(void) | |
{ | |
+ fprintf(stderr, "usage: slock [-v|POST_LOCK_CMD]\n"); | |
+ exit(1); | |
+} | |
+ | |
+int | |
+main(int argc, char **argv) { | |
#ifndef HAVE_BSD_AUTH | |
const char *pws; | |
#endif | |
Display *dpy; | |
int screen; | |
+ if ((argc >= 2) && !strcmp("-v", argv[1])) | |
+ die("version %s, © 2006-2016 slock engineers\n", VERSION); | |
+ | |
+ /* treat first argument starting with a '-' as option */ | |
+ if ((argc >= 2) && argv[1][0] == '-') | |
+ usage(); | |
+ | |
#ifdef __linux__ | |
dontkillme(); | |
#endif |