More robust when going through group members
This commit is contained in:
parent
c13c4c2528
commit
da533ad0e5
4
src/id.c
4
src/id.c
|
@ -99,7 +99,7 @@ static int _id_G(char * user, int flagn)
|
||||||
setgrent();
|
setgrent();
|
||||||
for(gr = getgrent(); gr != NULL; gr = getgrent())
|
for(gr = getgrent(); gr != NULL; gr = getgrent())
|
||||||
{
|
{
|
||||||
for(p = gr->gr_mem; *p != NULL; p++)
|
for(p = gr->gr_mem; p != NULL && *p != NULL; p++)
|
||||||
{
|
{
|
||||||
if(strcmp(user, *p) == 0)
|
if(strcmp(user, *p) == 0)
|
||||||
{
|
{
|
||||||
|
@ -222,7 +222,7 @@ static int _id_all(char * user)
|
||||||
printf("%s%u(%s)", " groups=", (unsigned)pw->pw_gid, user);
|
printf("%s%u(%s)", " groups=", (unsigned)pw->pw_gid, user);
|
||||||
setgrent();
|
setgrent();
|
||||||
for(gr = getgrent(); gr != NULL; gr = getgrent())
|
for(gr = getgrent(); gr != NULL; gr = getgrent())
|
||||||
for(p = gr->gr_mem; *p != NULL; p++)
|
for(p = gr->gr_mem; p != NULL && *p != NULL; p++)
|
||||||
if(strcmp(user, *p) == 0)
|
if(strcmp(user, *p) == 0)
|
||||||
printf(",%u(%s)", (unsigned)gr->gr_gid,
|
printf(",%u(%s)", (unsigned)gr->gr_gid,
|
||||||
gr->gr_name);
|
gr->gr_name);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user