Tito writes:
Hi, I've fixed also the issue of whoami cutting down usernames. This time I cannot send a diff because i don't know if my previous patches will be applied or not, so I send in the whole file. The changes I've made don't affect size but ensure that usernames of whatever lenght are correctly displayed. root@localhost:/dev/pts/3:/root/Desktop/busybox/coreutils# size whoami_orig.o text data bss dec hex filename 102 0 0 102 66 whoami_orig.o root@localhost:/dev/pts/3:/root/Desktop/busybox/coreutils# size whoami.o text data bss dec hex filename 93 0 0 93 5d whoami.o This should be applied even if the other patches aren't as this matches the behaviour of the GNU whoami. Thanks in advance, Ciao, Tito
This commit is contained in:
parent
713d6e3dd3
commit
095dd0c46d
@ -26,18 +26,20 @@
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include "busybox.h"
|
||||
#include "pwd_.h"
|
||||
#include "grp_.h"
|
||||
|
||||
extern int whoami_main(int argc, char **argv)
|
||||
{
|
||||
char user[9];
|
||||
struct passwd *p;
|
||||
uid_t uid;
|
||||
|
||||
|
||||
if (argc > 1)
|
||||
bb_show_usage();
|
||||
|
||||
uid = geteuid();
|
||||
if (my_getpwuid(user, uid, sizeof(user))) {
|
||||
puts(user);
|
||||
if((p = getpwuid(uid))!=NULL) {
|
||||
puts(p->pw_name);
|
||||
bb_fflush_stdout_and_exit(EXIT_SUCCESS);
|
||||
}
|
||||
bb_error_msg_and_die("cannot find username for UID %u", (unsigned) uid);
|
||||
|
Loading…
Reference in New Issue
Block a user