diff options
author | Jim Meyering <jim@meyering.net> | 1999-03-09 16:07:49 +0000 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 1999-03-09 16:07:49 +0000 |
commit | 1ef07171f7e8abdb703651a0f6c81e17559b3720 (patch) | |
tree | 2c70e7f2f1c299148e8ffeb9e6419758683b2965 /lib/getugroups.c | |
parent | a52b3661049d06e669e3038c613e62fe4c96b4ce (diff) | |
download | gnulib-1ef07171f7e8abdb703651a0f6c81e17559b3720.tar.gz |
(getugroups): Take new parameter, gid.
Add gid to the list of groups.
From Ulrich Drepper.
Diffstat (limited to 'lib/getugroups.c')
-rw-r--r-- | lib/getugroups.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/getugroups.c b/lib/getugroups.c index afa425b6e5..01d36ff109 100644 --- a/lib/getugroups.c +++ b/lib/getugroups.c @@ -1,5 +1,5 @@ /* getugroups.c -- return a list of the groups a user is in - Copyright (C) 1990, 1991, 1998 Free Software Foundation. + Copyright (C) 1990, 1991, 1998, 1999 Free Software Foundation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,12 +45,16 @@ struct group *getgrent (); the current process. */ int -getugroups (int maxcount, GETGROUPS_T *grouplist, char *username) +getugroups (int maxcount, GETGROUPS_T *grouplist, char *username, gid_t gid) { struct group *grp; register char **cp; register int count = 0; + if (maxcount != 0) + grouplist[count] = gid; + ++count; + setgrent (); while ((grp = getgrent ()) != 0) for (cp = grp->gr_mem; *cp; ++cp) |