xref: /original-bsd/lib/libc/sys/setgroups.2 (revision 0fc6f013)
Copyright (c) 1983 Regents of the University of California.
All rights reserved. The Berkeley software License Agreement
specifies the terms and conditions for redistribution.

@(#)setgroups.2 6.3 (Berkeley) 05/13/86

SETGROUPS 2 ""
C 5
NAME
setgroups - set group access list
SYNOPSIS
#include <sys/param.h>

setgroups(ngroups, gidset) int ngroups, *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, as defined in < sys/param.h >.

Only the super-user may set new groups.

"RETURN VALUE
A 0 value is returned on success, -1 on error, with a error code stored in errno.
"ERRORS
The setgroups call will fail if:

15 [EPERM] The caller is not the super-user.

15 [EFAULT] The address specified for gidset is outside the process address space.

"SEE ALSO
getgroups(2), initgroups(3X)
BUGS
The gidset array should be of type gid_t , but remains integer for compatibility with earlier systems.