Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

setregid(2) [netbsd man page]

SETREGID(2)						      BSD System Calls Manual						       SETREGID(2)

NAME
setregid -- set real and effective group ID's LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <unistd.h> int setregid(gid_t rgid, gid_t egid); DESCRIPTION
This interface is made obsolete by the saved ID functionality in setgid(2) and setegid(2). The real and effective group ID's of the current process are set according to the arguments. If the real group ID is changed, the saved group ID is changed to the new value of the effective group ID. If rgid or egid is -1, the current gid is filled in by the system. Unprivileged users may change the real group ID to the effective group ID, and may change the effective group ID to the real group ID or the saved group ID; only the super-user may make other changes. The setregid() function has been used to swap the real and effective group IDs in set-group-ID programs to temporarily relinquish the set- group-ID value. This purpose is now better served by the use of the setegid() function (see setgid(2)). When setting the real and effective group IDs to the same value, this function is equivalent to the setgid() function. When setting only the effective group ID, this function is equivalent to the setegid() function. RETURN VALUES
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error. ERRORS
[EPERM] The current process is not the super-user and a change other than changing the effective group-id to the real group-id was specified. SEE ALSO
getgid(2), setegid(2), setgid(2), setuid(2) HISTORY
The setregid() function call appeared in 4.2BSD. An incompatible version was implemented in 4.4BSD. It was reimplemented in NetBSD 1.2 in a way compatible with 4.3BSD, SunOS and Linux, but should not be used in new code. BSD
January 5, 2001 BSD

Check Out this Related Man Page

setregid(2)							System Calls Manual						       setregid(2)

NAME
setregid - sets the real and effective group IDs SYNOPSIS
DESCRIPTION
sets the real and effective group IDs of the calling process. Only a privileged process can set the real group ID and/or the effective group ID to any valid value. A nonprivileged process can set the real group ID to the saved set-group-ID from one of the exec family of functions, or the effective group ID to either the saved set-group- ID or the real group ID. Any supplementary group IDs of the calling process remain unchanged. Argument rgid is the read group ID value to be set with. If rgid is set to the real group ID is not be changed. Argument egid is the effective group ID value to be set with. If egid is set to -1, the effective group ID is not changed. The real and effective group IDs may be set to different values in the same call. Security Restrictions Some or all of the actions associated with this system call require the privilege (CHSUBJIDENT). Processes owned by the superuser will have this privilege. Processes owned by other users may have this privilege, depending on system configuration. See privileges(5) for more information about privileged access on systems that support fine-grained privileges. RETURN VALUE
Upon successful completion is set to Otherwise, errno is set to indicate the type of error and neither group IDs are changed. ERRORS
is set to one of the following values if the corresponding condition is detected. The value of the rgid or egid argument is invalid or out-of-range. The process does NOT have all the appropriate privileges other than to change the real group ID to the saved set-group-ID, or to change the effective group ID to either the real group ID or the saved set-group-ID. AUTHOR
was developed by the University of California, Berkeley and HP. SEE ALSO
exec(2), geteuid(2), getgid(2), getuid(2), setegid(2), setgid(2), setreuid(2), setuid(2). setregid(2)
Man Page