*
*/
-#include "busybox.h"
+/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
+
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
+#include "busybox.h"
extern int whoami_main(int argc, char **argv)
{
- char user[9];
- uid_t uid = geteuid();
-
if (argc > 1)
- usage(whoami_usage);
+ bb_show_usage();
- my_getpwuid(user, uid);
- if (*user) {
- puts(user);
- return EXIT_SUCCESS;
- }
- error_msg_and_die("cannot find username for UID %u", (unsigned) uid);
+ puts(bb_getpwuid(NULL, geteuid(), -1));
+ /* exits on error */
+ bb_fflush_stdout_and_exit(EXIT_SUCCESS);
}