getgroups (2)
Leading comments
Copyright (c) 1983, 1991, 1993 The Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the fol...
NAME
getgroups - get group access listLIBRARY
Lb libcSYNOPSIS
In unistd.h Ft int Fn getgroups int gidsetlen gid_t *gidsetDESCRIPTION
The Fn getgroups system call gets the current group access list of the user process and stores it in the array Fa gidset . The Fa gidsetlen argument indicates the number of entries that may be placed in Fa gidset . The Fn getgroups system call returns the actual number of groups returned in Fa gidset . At least one and as many as {NGROUPS_MAX}+1 values may be returned. If Fa gidsetlen is zero, Fn getgroups returns the number of supplementary group IDs associated with the calling process without modifying the array pointed to by Fa 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 errnoERRORS
The possible errors for Fn getgroups are:- Bq Er EINVAL
- The argument Fa gidsetlen is smaller than the number of groups in the group set.
- Bq Er EFAULT
- The argument Fa gidset specifies an invalid address.