summaryrefslogtreecommitdiff
path: root/libbb/my_getpwuid.c
diff options
context:
space:
mode:
authorEric Andersen2002-09-30 20:39:56 +0000
committerEric Andersen2002-09-30 20:39:56 +0000
commit02e6ba91e887bd11146a57185b223582f56f3f09 (patch)
treecc1954165fe7e6efed1ba0dfa7d5c3aea97fffa5 /libbb/my_getpwuid.c
parenta6f6e06107e69b79858acaa511c452a0a73cf207 (diff)
downloadbusybox-02e6ba91e887bd11146a57185b223582f56f3f09.zip
busybox-02e6ba91e887bd11146a57185b223582f56f3f09.tar.gz
Vodz' last_patch57:
Hi, Erik. my_getpw(uid/gid) and applets used it have problem: if username for uid not found, applets can`t detect it (but code pessent). Also "%8ld " format is bad: spaces not required (applets have self format or spec format (tar applet) and overflow for "id" applet...) This problem also pressent in stable version. Patch for unstable in attach. --w vodz
Diffstat (limited to 'libbb/my_getpwuid.c')
-rw-r--r--libbb/my_getpwuid.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/libbb/my_getpwuid.c b/libbb/my_getpwuid.c
index 2abe7a7..dfe9b49 100644
--- a/libbb/my_getpwuid.c
+++ b/libbb/my_getpwuid.c
@@ -28,15 +28,17 @@
/* gets a username given a uid */
-void my_getpwuid(char *name, long uid)
+char * my_getpwuid(char *name, long uid)
{
struct passwd *myuser;
myuser = getpwuid(uid);
- if (myuser==NULL)
- sprintf(name, "%-8ld ", (long)uid);
- else
- strcpy(name, myuser->pw_name);
+ if (myuser==NULL) {
+ sprintf(name, "%ld", (long)uid);
+ return NULL;
+ } else {
+ return strcpy(name, myuser->pw_name);
+ }
}
/* END CODE */