###

###

###

###

###

###

###

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

    NAME
           setgid - set group identity

    SYNOPSIS
           #include <unistd.h>

           int setgid(gid_t gid)

    DESCRIPTION
           setgid sets the effective group ID of the current process.
           If the caller is the superuser, the real and  saved  group
           ID's are also set.

           Under   Linux,   setgid  is  implemented  like  SYSV  with
           SAVED_IDS.  This allows a setgid (other than root) program
           to  drop  all  of it's group privileges, do some un-privi-
           leged work, and  then  re-engage  the  original  effective
           group ID in a secure manner.

           If the user is root or the program is setgid root, special
           care must be taken. The setgid function checks the  effec-
           tive  gid  of  the  caller and if it is the superuser, all
           process related group ID's are set to gid.  After this has
           occurred,  it is impossible for the program to regain root
           privileges.

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

    ERRORS
           EPERM   The  user  is not the super-user, and gid does not
                   match the effective or saved group ID of the call-
                   ing process.

    CONFORMING TO
           System V

### SEE ALSO

getgid, setregid, setegid,

###

    Linux 1.1.36               29 July 1994                         1

Top | Master Index | Keywords | Functions

This manual page was brought to you by mjl_man V-2.0