GETGROUPS(2) BSD System Calls Manual GETGROUPS(2)
NAME
getgroups -- get group access list
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#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.
This system call only returns the secondary groups.
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 non-zero and is smaller than the number of groups in the group set.
[EFAULT] The argument gidset specifies an invalid address.
SEE ALSO
getegid(2), getgid(2), setgroups(2), initgroups(3)
STANDARDS
The getgroups() function conforms to ISO/IEC 9945-1:1990 (``POSIX.1'').
HISTORY
The getgroups() function call appeared in 4.2BSD.
BSD
October 7, 2006 BSD