*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> setgid (2)              
Title
Content
Arch
Section
 

SETUID(2)

Contents


NAME    [Toc]    [Back]

     setuid, seteuid, setgid, setegid - set user and group ID

SYNOPSIS    [Toc]    [Back]

     #include <sys/types.h>
     #include <unistd.h>

     int
     setuid(uid_t uid);

     int
     seteuid(uid_t euid);

     int
     setgid(gid_t gid);

     int
     setegid(gid_t egid);

DESCRIPTION    [Toc]    [Back]

     The setuid() function sets the real and effective  user  IDs
and the saved
     set-user-ID  of  the current process to the specified value.
The setuid()
     function is permitted if the effective user ID  is  that  of
the superuser,
     or if the specified user ID is the same as the effective user ID.  If
     not, but the specified user ID is the same as the real  user
ID, setuid()
     will set the effective user ID to the real user ID.

     The  setgid() function sets the real and effective group IDs
and the saved
     set-group-ID of the current process to the specified  value.
The setgid()
     function  is  permitted  if the effective user ID is that of
the superuser,
     or if the specified group ID is the same  as  the  effective
group ID.  If
     not,  but  the  specified  group  ID is the same as the real
group ID,
     setgid() will set the effective group ID to the  real  group
ID.  Supplementary
 group IDs remain unchanged.

     The  seteuid()  function (setegid()) sets the effective user
ID (group ID)
     of the current process.  The effective user ID may be set to
the value of
     the  real user ID or the saved set-user-ID (see intro(2) and
execve(2));
     in this way, the effective user ID  of  a  set-user-ID  executable may be
     toggled by switching to the real user ID, then re-enabled by
reverting to
     the set-user-ID value.  Similarly, the  effective  group  ID
may be set to
     the value of the real group ID or the saved set-group-ID.

RETURN VALUES    [Toc]    [Back]

     Upon  success, these functions return 0; otherwise -1 is returned.

     If the user is not the superuser, or the  UID  specified  is
not the real,
     effective, or saved ID, these functions return -1.

SEE ALSO    [Toc]    [Back]

      
      
     getgid(2), getgroups(2), getuid(2), issetugid(2), setgid(2),
     setgroups(2), setregid(2), setreuid(2)

     A setuid() function appeared in Version 2 AT&T UNIX.

STANDARDS    [Toc]    [Back]

     The setuid() and setgid() functions are compliant  with  the
IEEE Std
     1003.1-1990  (``POSIX'') specification with _POSIX_SAVED_IDS
defined, with
     the extensions allowed in section  B.4.2.2.   The  seteuid()
and setegid()
     functions  are  extensions  based  on  the  POSIX concept of
_POSIX_SAVED_IDS,
     and have been proposed for a future revision  of  the  standard.

OpenBSD      3.6                           June      4,      1993
[ Back ]
 Similar pages
Name OS Title
setuid IRIX set user and group IDs
setgid HP-UX set user and group IDs
seteuid IRIX set user and group IDs
setuid HP-UX set user and group IDs
group Linux user group file
adduser Linux add a user or group to the system
id IRIX print the user name and ID, and group name and ID
seteuid Linux set effective user or group ID
cd_idmap Tru64 sets or gets mappings of User and Group IDs on
getegid HP-UX get real user, effective user, real group, and effective group IDs
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service