diff options
| author | FRIGN <dev@frign.de> | 2014-06-03 19:19:10 +0200 |
|---|---|---|
| committer | sin <sin@2f30.org> | 2014-06-09 19:14:31 +0100 |
| commit | 9db14b10dd09336c6a8fe283f99108c9acc4667a (patch) | |
| tree | 2715c291963a7869545d46cd07395b61bc2ff067 | |
| parent | 6a5512835485ac501d983161ca15b311a95c5649 (diff) | |
Add /etc/passwd support
Fix slock to work with /etc/passwd without /etc/shadow.
while we're at it, remove an occurence of trailing whitespace.
| -rw-r--r-- | slock.c | 4 |
1 files changed, 2 insertions, 2 deletions
| @@ -75,7 +75,7 @@ getpw(void) { /* only run as root */ | |||
| 75 | rval = pw->pw_passwd; | 75 | rval = pw->pw_passwd; |
| 76 | 76 | ||
| 77 | #if HAVE_SHADOW_H | 77 | #if HAVE_SHADOW_H |
| 78 | if (strlen(rval) >= 1) { /* kludge, assumes pw placeholder entry has len >= 1 */ | 78 | if (rval[0] == 'x' && rval[1] == '\0') { |
| 79 | struct spwd *sp; | 79 | struct spwd *sp; |
| 80 | sp = getspnam(getenv("USER")); | 80 | sp = getspnam(getenv("USER")); |
| 81 | if(!sp) | 81 | if(!sp) |
| @@ -147,7 +147,7 @@ readpw(Display *dpy, const char *pws) | |||
| 147 | --len; | 147 | --len; |
| 148 | break; | 148 | break; |
| 149 | default: | 149 | default: |
| 150 | if(num && !iscntrl((int) buf[0]) && (len + num < sizeof passwd)) { | 150 | if(num && !iscntrl((int) buf[0]) && (len + num < sizeof passwd)) { |
| 151 | memcpy(passwd + len, buf, num); | 151 | memcpy(passwd + len, buf, num); |
| 152 | len += num; | 152 | len += num; |
| 153 | } | 153 | } |
