1 /* vi: set sw=4 ts=4: */
2 /*
3 * Mini whoami implementation for busybox
4 *
5 * Copyright (C) 2000 Edward Betts <edward@debian.org>.
6 *
7 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
8 */
9 //config:config WHOAMI
10 //config: bool "whoami (3.2 kb)"
11 //config: default y
12 //config: help
13 //config: whoami is used to print the username of the current
14 //config: user id (same as id -un).
15
16 //applet:IF_WHOAMI(APPLET_NOFORK(whoami, whoami, BB_DIR_USR_BIN, BB_SUID_DROP, whoami))
17
18 //kbuild:lib-$(CONFIG_WHOAMI) += whoami.o
19
20 /* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
21
22 //usage:#define whoami_trivial_usage
23 //usage: ""
24 //usage:#define whoami_full_usage "\n\n"
25 //usage: "Print the user name associated with the current effective user id"
26
27 #include "libbb.h"
28
29 int whoami_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
whoami_main(int argc UNUSED_PARAM,char ** argv UNUSED_PARAM)30 int whoami_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM)
31 {
32 if (argv[1])
33 bb_show_usage();
34
35 /* Will complain and die if username not found */
36 puts(xuid2uname(geteuid()));
37
38 return fflush_all();
39 }
40