slock-user-1.5.diff (1425B)
1 From 7f1f66dfb1feb2b6df87565f1b895dd7a12d7ceb Mon Sep 17 00:00:00 2001 2 From: Phillip Tischler <ptgit@protonmail.com> 3 Date: Sat, 18 Mar 2023 22:59:55 +0100 4 Subject: [PATCH] Always use the current users password ($USER) 5 6 --- 7 config.def.h | 4 ---- 8 slock.c | 8 ++++---- 9 2 files changed, 4 insertions(+), 8 deletions(-) 10 11 diff --git a/config.def.h b/config.def.h 12 index 9855e21..3229e62 100644 13 --- a/config.def.h 14 +++ b/config.def.h 15 @@ -1,7 +1,3 @@ 16 -/* user and group to drop privileges to */ 17 -static const char *user = "nobody"; 18 -static const char *group = "nogroup"; 19 - 20 static const char *colorname[NUMCOLS] = { 21 [INIT] = "black", /* after initialization */ 22 [INPUT] = "#005577", /* during input */ 23 diff --git a/slock.c b/slock.c 24 index 5ae738c..7444eac 100644 25 --- a/slock.c 26 +++ b/slock.c 27 @@ -325,13 +325,13 @@ main(int argc, char **argv) { 28 29 /* validate drop-user and -group */ 30 errno = 0; 31 - if (!(pwd = getpwnam(user))) 32 - die("slock: getpwnam %s: %s\n", user, 33 + if (!(pwd = getpwnam(getenv("USER")))) 34 + die("slock: getpwnam %s: %s\n", getenv("USER"), 35 errno ? strerror(errno) : "user entry not found"); 36 duid = pwd->pw_uid; 37 errno = 0; 38 - if (!(grp = getgrnam(group))) 39 - die("slock: getgrnam %s: %s\n", group, 40 + if (!(grp = getgrnam(getenv("USER")))) 41 + die("slock: getgrnam %s: %s\n", getenv("USER"), 42 errno ? strerror(errno) : "group entry not found"); 43 dgid = grp->gr_gid; 44 45 -- 46 2.30.2 47