aboutsummaryrefslogtreecommitdiff
path: root/coreutils/id.c
diff options
context:
space:
mode:
Diffstat (limited to 'coreutils/id.c')
-rw-r--r--coreutils/id.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/coreutils/id.c b/coreutils/id.c
index 6ddb23666..33e06f427 100644
--- a/coreutils/id.c
+++ b/coreutils/id.c
@@ -36,12 +36,8 @@ enum {
36#endif 36#endif
37}; 37};
38 38
39static int print_common(unsigned id, 39static int print_common(unsigned id, const char *name, const char *prefix)
40 char* FAST_FUNC bb_getXXXid(char *name, int bufsize, long uid),
41 const char *prefix)
42{ 40{
43 const char *name = bb_getXXXid(NULL, 0, id);
44
45 if (prefix) { 41 if (prefix) {
46 printf("%s", prefix); 42 printf("%s", prefix);
47 } 43 }
@@ -65,12 +61,12 @@ static int print_common(unsigned id,
65 61
66static int print_group(gid_t id, const char *prefix) 62static int print_group(gid_t id, const char *prefix)
67{ 63{
68 return print_common(id, bb_getgrgid, prefix); 64 return print_common(id, gid2group(id), prefix);
69} 65}
70 66
71static int print_user(uid_t id, const char *prefix) 67static int print_user(uid_t id, const char *prefix)
72{ 68{
73 return print_common(id, bb_getpwuid, prefix); 69 return print_common(id, uid2uname(id), prefix);
74} 70}
75 71
76/* On error set *n < 0 and return >= 0 72/* On error set *n < 0 and return >= 0