X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;ds=sidebyside;f=slock.c;h=506231e16ee779633e5cc4d0e838372f26d42175;hb=6a5512835485ac501d983161ca15b311a95c5649;hp=467937cee0c0474ea98b5bfb1bf7c2c9b2a9cbd4;hpb=ba3acfc0dcf1d0603bd9d6bdee1e319339b1a509;p=slock.git 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;