mirror of git://git.suckless.org/sbase
including manpage and other stuff. This program is a no-brainer. This was inspired by an initial commit by e@bestmx.net. Thanks!master
parent
bb7427f6c1
commit
09c279285a
@ -0,0 +1,9 @@ |
||||
.Dd 2015-12-14 |
||||
.Dt WHOAMI 1 |
||||
.Os sbase |
||||
.Sh NAME |
||||
.Nm whoami |
||||
.Nd show effective uid |
||||
.Sh SYNOPSIS |
||||
.Nm |
||||
writes the name of the effective uid to stdout. |
@ -0,0 +1,37 @@ |
||||
/* See LICENSE file for copyright and license details. */ |
||||
#include <errno.h> |
||||
#include <stdio.h> |
||||
#include <unistd.h> |
||||
#include <pwd.h> |
||||
|
||||
#include "util.h" |
||||
|
||||
static void |
||||
usage (void) |
||||
{ |
||||
eprintf("usage: %s\n", argv0); |
||||
} |
||||
|
||||
int |
||||
main (int argc, char *argv[]) |
||||
{ |
||||
uid_t uid; |
||||
struct passwd *pw; |
||||
|
||||
argv0 = argv[0], argc--, argv++; |
||||
|
||||
if (argc) |
||||
usage(); |
||||
|
||||
uid = geteuid(); |
||||
errno = 0; |
||||
if (!(pw = getpwuid(uid))) { |
||||
if (errno) |
||||
eprintf("getpwuid %d:", uid); |
||||
else |
||||
eprintf("getpwuid %d: no such user\n", uid); |
||||
} |
||||
puts(pw->pw_name); |
||||
|
||||
return fshut(stdout, "<stdout>"); |
||||
} |
Loading…
Reference in new issue