debian man page for setgid

Query: setgid

OS: debian

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

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

NAME
setgid - set group identity
SYNOPSIS
#include <sys/types.h> #include <unistd.h> int setgid(gid_t gid);
DESCRIPTION
setgid() sets the effective group ID of the calling process. If the caller is the superuser, the real GID and saved set-group-ID are also set. Under Linux, setgid() is implemented like the POSIX version with the _POSIX_SAVED_IDS feature. This allows a set-group-ID program that is not set-user-ID-root to drop all of its group privileges, do some un-privileged work, and then reengage the original effective group ID in a secure manner.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
ERRORS
EPERM The calling process is not privileged (does not have the CAP_SETGID capability), and gid does not match the real group ID or saved set-group-ID of the calling process.
NOTES
The original Linux setgid() system call supported only 16-bit group IDs. Subsequently, Linux 2.4 added setgid32() supporting 32-bit IDs. The glibc setgid() wrapper function transparently deals with the variation across kernel versions.
CONFORMING TO
SVr4, POSIX.1-2001.
SEE ALSO
getgid(2), setegid(2), setregid(2), capabilities(7), credentials(7)
COLOPHON
This page is part of release 3.44 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2010-11-22 SETGID(2)
Related Man Pages
setgid32(2) - linux
setgid(2) - debian
setgid32(2) - php
setgid32(2) - hpux
setgid32(2) - minix
Similar Topics in the Unix Linux Community
Searching for SETUID and SETGID using PERL file find with lstat
A little doubt regarding setgid and Unix access right flags.