tail head cat sleep
QR code linking to this page

Manual Pages  — GETGROUPS

NAME

getgroups – get group access list

CONTENTS

LIBRARY

Standard C Library (libc, -lc)

SYNOPSIS

#include <unistd.h>

int
getgroups(int gidsetlen, gid_t *gidset);

DESCRIPTION

The getgroups() system call gets the current group access list of the user process and stores it in the array gidset. The gidsetlen argument indicates the number of entries that may be placed in gidset. The getgroups() system call returns the actual number of groups returned in gidset. At least one and as many as {NGROUPS_MAX}+1 values may be returned. If gidsetlen is zero, getgroups() returns the number of supplementary group IDs associated with the calling process without modifying the array pointed to by gidset.

The value of {NGROUPS_MAX} should be obtained using sysconf(3) to avoid hard-coding it into the executable.

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), sysconf(3)

STANDARDS

The getgroups() system call conforms to IEEE Std 1003.1-2008 ("POSIX.1").

HISTORY

The getgroups() system call appeared in BSD 4.2 .

GETGROUPS (2) January 21, 2011

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock.

What will happen when the 32-bit Unix date goes negative in mid-January 2038 does not bear thinking about.
— Henry Spencer