*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->NetBSD man pages -> getgrouplist (3)              



NAME    [Toc]    [Back]

     getgrouplist - calculate group access list

LIBRARY    [Toc]    [Back]

     Standard C Library (libc, -lc)

SYNOPSIS    [Toc]    [Back]

     #include <unistd.h>

     getgrouplist(const char *name, gid_t basegid, gid_t *groups,
             int *ngroups);

DESCRIPTION    [Toc]    [Back]

     The getgrouplist() function reads through the group database and calculates
 the group access list for the user specified in name.  The basegid
     is automatically included in the groups list.  Typically this value is
     given as the group number from the password database.

     The resulting group list is returned in the integer array pointed to by
     groups.  The caller specifies the size of the groups array in the integer
     pointed to by ngroups; the actual number of groups found is returned in

     Duplicate group ids will be suppressed from the result.

RETURN VALUES    [Toc]    [Back]

     The getgrouplist() function returns -1 if the size of the group list is
     too small to hold all the user's groups.  Here, the group array will be
     filled with as many groups as will fit.

FILES    [Toc]    [Back]

     /etc/group  group membership list

SEE ALSO    [Toc]    [Back]

     setgroups(2), initgroups(3)

HISTORY    [Toc]    [Back]

     The getgrouplist() function first appeared in 4.4BSD.

BUGS    [Toc]    [Back]

     The getgrouplist() function uses the routines based on getgrent(3).  If
     the invoking program uses any of these routines, the group structure will
     be overwritten in the call to getgrouplist().

     In the case where the group array is too small and duplicate gids have
     been suppressed, the returned ngroups will be too large by a factor of
     the difference between the given size and the number of matches.  This is
     not considered to be a major problem, since it's still going to be a
     smaller figure than when duplicates were not suppressed.

BSD                             April 25, 1999                             BSD
[ Back ]
 Similar pages
Name OS Title
setgroups Tru64 Set the group access list
setgroups NetBSD set group access list
getgroups FreeBSD get group access list
getgroups HP-UX get group access list
setgroups IRIX set group access list
getgroups NetBSD get group access list
setgroups OpenBSD set group access list
getgroups OpenBSD get group access list
setgroups FreeBSD set group access list
setgroups HP-UX set group access list
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service