Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

FreeBSD 11.0 - man page for setgroups (freebsd section 2)

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
The setgroups() system call sets the group access list of the current user process according to the array gidset. The ngroups argument indi- cates the number of entries in the array and must be no more than {NGROUPS_MAX}+1. Only the super-user may set a new group list.
RETURN VALUES
The setgroups() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indi- cate the error.
ERRORS
The setgroups() system call will fail if: [EPERM] The caller is not the super-user. [EINVAL] The number specified in the ngroups argument is larger than the {NGROUPS_MAX}+1 limit. [EFAULT] The address specified for gidset is outside the process address space.
SEE ALSO
getgroups(2), initgroups(3)
HISTORY
The setgroups() system call appeared in 4.2BSD.
BSD
April 16, 1994 BSD