SETREUID(2)

NAME
setreuid - set real and effective user ID's

SYNOPSIS
#include <unistd.h>
int
setreuid(int ruid, int euid);

DESCRIPTION
The real and effective user ID's of the current process are set according to the arguments. If ruid or euid is -1, the current uid is filled in by the system. Unprivileged users may change the real user ID to the effective user ID and vice-versa; only the super-user may make other changes.

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 user-id to the real user-id was specified.

SEE ALSO
getuid(2), setregid(2), setuid(3)

HISTORY
The setreuid function call appeared in 4.2BSD.