SETREUID
Section: Linux Programmer's Manual (2)
Updated: 2nd August 1994
Index
Return to Main Contents
NAME
setreuid, seteuid - set real and / or effective user ID
SYNOPSIS
#include <unistd.h>
int setreuid(uid_t ruid, uid_t euid);
int seteuid(uid_t euid);
DESCRIPTION
setreuid
sets real and effective user ID's of the current process.
Un-privileged users may change the real user ID to the
effective user ID and vice-versa.
Prior to Linux 1.1.37, the saved ID paradigm, when used with
setreuid
or
seteuid
was broken.
Starting at 1.1.37, it is also possible to set the effective user ID from
the saved user ID.
Only the super-user may make other
changes.
Supplying a value of -1 for either the real or effective user ID forces
the system to
leave that ID unchanged.
Currently (libc-4.x.x),
seteuid(euid)
is functionally equivalent to
setreuid(-1, euid).
If the real user ID is changed or the effective user ID is set to a value
not equal to the previous real user ID, the saved user ID will be set to the
new effective user ID.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and
errno
is set appropriately.
ERRORS
- EPERM
-
-
The current process is not the super-user and changes other than (i)
swapping the effective user ID with the real user ID or (ii) setting one to
the value of the other or (iii) setting the effective user ID to the value
of the saved user ID was specified.
HISTORY
The
setreuid
function call appeared in BSD 4.2.
CONFORMING TO
BSD 4.3
SEE ALSO
getuid(2), setuid(2)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ERRORS
-
- HISTORY
-
- CONFORMING TO
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 12:25:30 GMT, March 22, 2025