Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

getgroups(2) [opendarwin man page]

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

Check Out this Related Man Page

SETGROUPS(2)						      BSD System Calls Manual						      SETGROUPS(2)

NAME
setgroups -- set group access list LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <sys/param.h> #include <unistd.h> int setgroups(int ngroups, const gid_t *gidset); DESCRIPTION
setgroups() sets the group access list of the current user process according to the array gidset. The parameter ngroups indicates the number of entries in the array and must be no more than {NGROUPS_MAX}. Only the super-user may set new groups. This system call affects only secondary 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: [EINVAL] The value of ngroups is greater than {NGROUPS_MAX}. [EPERM] The caller is not the super-user. [EFAULT] The address specified for gidset is outside the process address space. SEE ALSO
getgroups(2), setegid(2), setgid(2), setregid(2), initgroups(3) HISTORY
The setgroups() function call appeared in 4.2BSD. BSD
October 7, 2006 BSD
Man Page