GETGROUPS(2) BSD System Calls Manual GETGROUPS(2)
NAME
getgroups -- get group access list
SYNOPSIS
#include <sys/param.h>
#include <sys/types.h>
#include <unistd.h>
int
getgroups(int gidsetlen, gid_t *gidset);
DESCRIPTION
Getgroups() gets the current group access list of the current user process and stores it in the array gidset. The parameter gidsetlen indi-
cates the number of entries that may be placed in gidset. Getgroups() returns the actual number of groups returned in gidset. No more than
{NGROUPS_MAX} will ever be returned. If gidsetlen is 0, getgroups() returns the number of groups without modifying the gidset array.
RETURN VALUES
A successful call returns the number of groups in the group set. A value of -1 indicates that an error occurred, and the error code is
stored in the global variable errno.
ERRORS
The possible errors for getgroups() are:
[EINVAL] The argument gidsetlen is smaller than the number of groups in the group set.
[EFAULT] The argument gidset specifies an invalid address.
SEE ALSO
setgroups(2), initgroups(3)
HISTORY
The getgroups() function call appeared in 4.2BSD.
4.2 Berkeley Distribution April 16, 1994 4.2 Berkeley Distribution