aboutsummaryrefslogtreecommitdiff
path: root/whoami.c
diff options
context:
space:
mode:
Diffstat (limited to 'whoami.c')
-rw-r--r--whoami.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/whoami.c b/whoami.c
index 5c3fea13f..f9d3f286a 100644
--- a/whoami.c
+++ b/whoami.c
@@ -29,16 +29,15 @@ static const char whoami_usage[] = "whoami\n\n"
29 29
30extern int whoami_main(int argc, char **argv) 30extern int whoami_main(int argc, char **argv)
31{ 31{
32 struct passwd *pw; 32 char *user = xmalloc(9);
33 uid_t uid; 33 uid_t uid = geteuid();
34 34
35 if (argc > 1) 35 if (argc > 1)
36 usage(whoami_usage); 36 usage(whoami_usage);
37 37
38 uid = geteuid(); 38 my_getpwuid(user, uid);
39 pw = getpwuid(uid); 39 if (user) {
40 if (pw) { 40 puts(user);
41 puts(pw->pw_name);
42 exit(TRUE); 41 exit(TRUE);
43 } 42 }
44 fprintf(stderr, "%s: cannot find username for UID %u\n", argv[0], 43 fprintf(stderr, "%s: cannot find username for UID %u\n", argv[0],