diff options
Diffstat (limited to 'libbb/my_getgrgid.c')
-rw-r--r-- | libbb/my_getgrgid.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libbb/my_getgrgid.c b/libbb/my_getgrgid.c index 907a47486..e6b877687 100644 --- a/libbb/my_getgrgid.c +++ b/libbb/my_getgrgid.c | |||
@@ -27,16 +27,16 @@ | |||
27 | 27 | ||
28 | 28 | ||
29 | /* gets a groupname given a gid */ | 29 | /* gets a groupname given a gid */ |
30 | char * my_getgrgid(char *group, long gid) | 30 | char * my_getgrgid(char *group, long gid, int bufsize) |
31 | { | 31 | { |
32 | struct group *mygroup; | 32 | struct group *mygroup; |
33 | 33 | ||
34 | mygroup = getgrgid(gid); | 34 | mygroup = getgrgid(gid); |
35 | if (mygroup==NULL) { | 35 | if (mygroup==NULL) { |
36 | sprintf(group, "%ld", gid); | 36 | snprintf(group, bufsize, "%ld", gid); |
37 | return NULL; | 37 | return NULL; |
38 | } else { | 38 | } else { |
39 | return strcpy(group, mygroup->gr_name); | 39 | return safe_strncpy(group, mygroup->gr_name, bufsize); |
40 | } | 40 | } |
41 | } | 41 | } |
42 | 42 | ||