summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--slock.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/slock.c b/slock.c
index 467937c..506231e 100644
--- a/slock.c
+++ b/slock.c
@@ -65,8 +65,11 @@ getpw(void) { /* only run as root */
const char *rval;
struct passwd *pw;
+ errno = 0;
pw = getpwuid(getuid());
- if(!pw)
+ if (errno)
+ die("slock: getpwuid: %s\n", strerror(errno));
+ else if (!pw)
die("slock: cannot retrieve password entry (make sure to suid or sgid slock)\n");
endpwent();
rval = pw->pw_passwd;