setregid - set real and effective group IDs
#include <unistd.h>
int setregid(gid_t rgid, gid_t egid);
The setregid() function shall set the real and effective group IDs of the calling process.
If rgid is -1, the real group ID shall not be changed; if egid is -1, the effective group ID shall not be changed.
The real and effective group IDs may be set to different values in the same call.
Only a process with appropriate privileges can set the real group ID and the effective group ID to any valid value.
A non-privileged process can set either the real group ID to the saved set-group-ID from one of the exec family of functions, or the effective group ID to the saved set-group-ID or the real group ID.
Any supplementary group IDs of the calling process remain unchanged.
Upon successful completion, 0 shall be returned. Otherwise, -1 shall be returned and errno set to indicate the error, and neither of the group IDs are changed.
The setregid() function shall fail if:
The following sections are informative.
If a set-group-ID process sets its effective group ID to its real group ID, it can still set its effective group ID back to the saved set-group-ID.
exec() , getegid() , geteuid() , getgid() , getuid() , setegid() , seteuid() , setgid() , setreuid() , setuid() , the Base Definitions volume of IEEE Std 1003.1-2001, <unistd.h>
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |