System Calls setregid(2)
NAME
setregid - set real and effective group IDs
SYNOPSIS
#include
int setregid(gid_t rgid, gid_t egid);
DESCRIPTION
The setregid() function is used to set the real and effec-
tive group IDs of the calling process. If rgid is -1, the
real group ID is not changed; if egid is -1, the effective
group ID is not changed. The real and effective group IDs may be set to different values in the same call.If the {PRIV_PROC_SETID} privilege is asserted in the effec-
tive set of the calling process, the real group ID and the effective group ID can be set to any legal value.If the {PRIV_PROC_SETID} privilege is not asserted in the
effective set of the calling process, either the real groupID can be set to the saved set-group-ID from execve(2), or
the effective group ID can either be set to the saved set-
group-ID or the real group ID.
In either case, if the real group ID is being changed (thatis, if rgid is not -1), or the effective group ID is being
changed to a value not equal to the real group ID, the savedset-group-ID is set equal to the new effective group ID.
RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, -1 is
returned, errno is set to indicate the error, and neither of the group IDs will be changed.ERRORS
The setregid() function will fail if:
EINVAL The value of rgid or egid is less than 0 orgreater than UID_MAX (defined in
). EPERM The {PRIV_PROC_SETID} privilege is not asserted in
the effective set of the calling processes and a change was specified other than changing the realgroup ID to the saved set-group-ID or changing the
effective group ID to the real group ID or the saved group ID.SunOS 5.11 Last change: 22 Mar 2004 1
System Calls setregid(2)
USAGE
If a set-group-ID process sets its effective group ID to its
real group ID, it can still set its effective group ID backto the saved set-group-ID.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| Standard | See standards(5). ||_____________________________|_____________________________|
SEE ALSO
execve(2), getgid(2), setreuid(2), setuid(2), attributes(5), privileges(5), standards(5)SunOS 5.11 Last change: 22 Mar 2004 2