SETGROUPS(2) BSD Programmer's Manual SETGROUPS(2)
NAME
setgroups - set group access list
SYNOPSIS
#include <unistd.h>
#include <sys/param.h>
int
setgroups(int ngroups, const int *gidset)
DESCRIPTION
Setgroups() sets the group access list of the current user process ac-
cording to the array gidset. The parameter ngroups indicates the number
of entries in the array and must be no more than NGROUPS, as defined in
<sys/param.h>.
Only the super-user may set new groups.
RETURN VALUES
A 0 value is returned on success, -1 on error, with an error code stored
in errno.
ERRORS
The setgroups() call will fail if:
[EPERM] The caller is not the super-user.
[EFAULT] The address specified for gidset is outside the process ad-
dress space.
SEE ALSO
getgroups(2), initgroups(3)
BUGS
The gidset array should be of type gidt, but remains integer for compat-
ibility with earlier systems.
HISTORY
The setgroups function call appeared in 4.2BSD.
4.2 Berkeley Distribution March 26, 1993 1