NOTE: click here if you get an empty page.
SETEGID(2) Linux Programmer's Manual SETEGID(2)
NAME
seteuid, setegid - set effective user or group ID
SYNOPSIS
#include <sys/types.h>
#include <unistd.h>
int seteuid(uid_t euid);
int setegid(gid_t egid);
DESCRIPTION
seteuid() sets the effective user ID of the current process. Unprivi-
leged user processes may only set the effective user ID to the real
user ID, the effective user ID or the saved set-user-ID.
Precisely the same holds for setegid() with "group" instead of "user".
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is
set appropriately.
ERRORS
EPERM The current process is not privileged (Linux: does not have the
CAP_SETUID capability in the case of seteuid(), or the CAP_SET-
GID capability in the case of setegid()) and euid (resp. egid)
is not the real user (group) ID, the effective user (group) ID,
or the saved set-user-ID (saved set-group-ID).
NOTES
Setting the effective user (group) ID to the saved set-user-ID (saved
set-group-ID) is possible since Linux 1.1.37 (1.1.38). On an arbitrary
system one should check _POSIX_SAVED_IDS.
Under libc4, libc5 and glibc2.0 seteuid(euid) is equivalent to
setreuid(-1, euid) and hence may change the saved set-user-ID. Under
glibc2.1 it is equivalent to setresuid(-1, euid,-1) and hence does not
change the saved set-user-ID. Similar remarks hold for setegid().
CONFORMING TO
4.3BSD, POSIX.1-2001.
SEE ALSO
geteuid(2), setresuid(2), setreuid(2), setuid(2), capabilities(7)
Linux 2.6.6 2004-05-27 SETEGID(2)
© 1994 Man-cgi 1.15, Panagiotis Christias <christia@theseas.ntua.gr>