initgroups(3C)initgroups(3C)NAMEinitgroups() - initialize group access list
SYNOPSISDESCRIPTION
reads the login group file, and sets up the group access list for the
user specified by name, using the system call (see setgroups(2)). If
the value of basegid is zero or positive, it is automatically included
in the groups list. Typically this value is given as the group number
from the password file. If the login group file is empty, basegid is
the only member of the list. If the number of groups, including the
basegid entry, exceeds {NGROUPS_MAX}, then subsequent group entries are
ignored (see limits(5)).
RETURN VALUE
Upon successful completion, returns 0; otherwise it returns −1 and sets
to indicate the error.
ERRORS
fails if any of the following conditions are encountered:
The calling process does not have the appropriate privilege.
Insufficient memory available to hold gidset.
An entry in gidset is not a valid group ID.
WARNINGS
uses the routines based on getgrent(3C). If the invoking program uses
any of these routines, the group structure is overwritten by the call
to Subsequent calls to with the same name parameter override the
actions of previous calls.
On many systems, no one seems to keep up to date.
uses the Dynamic Name Service Switch. (See nsswitch.conf(4).) An
application that uses this interface cannot be fully archive bound.
NETWORKING FEATURES
NFS
If is linked to tries to use the Network Information Service (NIS) for
entries beginning with a plus sign If group membership for name is man‐
aged by NIS, and no NIS server is able to respond, a call to does not
return until a server does respond. This lack of action causes com‐
mands such as and to wait indefinitely.
See group(4) for proper syntax and operation.
AUTHOR
was developed by the University of California, Berkeley.
FILES
login group file
SEE ALSOlogin(1), su(1), getgroups(2), setgroups(2), group(4),
thread_safety(5).
initgroups(3C)