ABCDEFGHIJKLMNOPQRSTUVWXYZ

setresgid

SETRESUID(2)               Linux Programmer's Manual              SETRESUID(2)



NAME
       setresuid, setresgid - set real, effective and saved user or group ID

SYNOPSIS
       #include <unistd.h>

       int setresuid(uid_t ruid, uid_t euid, uid_t suid);
       int setresgid(gid_t rgid, gid_t egid, gid_t sgid);

DESCRIPTION
       setresuid  sets  the real user ID, the effective user ID, and the saved
       set-user-ID of the current process.

       Unprivileged user processes (i.e., processes with each of real,  effec-
       tive  and  saved  user  ID  nonzero) may change the real, effective and
       saved user ID, each to one of: the current uid, the  current  effective
       uid or the current saved uid.

       The  super-user  may set real, effective and saved user ID to arbitrary
       values.

       If one of the parameters equals -1,  the  corresponding  value  is  not
       changed.

       Completely  analogously,  setresgid  sets the real, effective and saved
       group ID's of the current process, with the same restrictions for  pro-
       cesses with each of real, effective and saved user ID nonzero.


RETURN VALUE
       On  success,  zero is returned.  On error, -1 is returned, and errno is
       set appropriately.

ERRORS
       EPERM  The current process was not privileged and tried to  change  the
              IDs is a not allowed way.

CONFORMING TO
       This call is nonstandard.

HISTORY
       This  system call was first introduced in HP-UX.  It is available under
       Linux since Linux 2.1.44.  These days it is also found in FreeBSD  (for
       emulation of Linux binaries).

NOTES
       Under  HP-UX  and  FreeBSD the prototype is found in <unistd.h>.  Under
       Linux there is so far no include file giving the prototype - this is  a
       glibc bug. Programs using this system call must add the prototype them-
       selves.

SEE ALSO
       getuid(2), setuid(2), setreuid(2), getresuid(2)



Linux 2.1.44                      2001-11-15                      SETRESUID(2)