Provided by:
manpages-de-dev_0.5-4.1ubuntu1_all 
BEZEICHNUNG
setgid - setzt die Gruppenidentität (GID)
ÜBERSICHT
#include <unistd.h>
int setgid(gid_t gid)
BESCHREIBUNG
setgid setzt die effektive Gruppen-ID des aktuellen Prozesses. Wird
diese Funktion durch den Superuser aufgerufen, dann wird auch die reale
und die gesicherte Gruppen-ID gesetzt.
Unter Linux ist setgid, wie unter SYSV, mit SAVED_IDS implementiert.
Dies erlaubt einem setgid-Programm (für Nicht-Superuser), alle
Gruppenprivilegien abzugeben, einige nichtprivilegierte Arbeiten zu
erledigen und dann, auf sichere Art und Weise, die orginale effektive
Gruppen-ID zurückzuerhalten.
Wenn es sich um den Superuser oder um ein Programm handelt, bei welchem
das Set-GID-Bit auf root gesetzt ist, ist besondere Sorgfalt notwendig.
Die setgid Funktion überprüft die effektive GID des aufrufenden
Prozesses und wenn es die des Superusers ist, werden alle diesen
Prozess betreffenden Gruppen-IDs auf gid gesetzt. Nachdem dies
geschehen ist, ist es für das Programm unmöglich wieder Superuser-
Privilegien zu erhalten.
RÜCKGABEWERT
Im Erfolgsfall wird 0 zurückgeliefert. Im Fehlerfall wird -1
zurückgeliefert und errno wird entsprechend gesetzt.
FEHLER
EPERM Der Benutzer ist nicht der Superuser und gid entspricht nicht
der effektiven oder gesicherten Gruppen-ID des aufrufenden
Prozesses.
KONFORM ZU
System V
SIEHE AUCH
getgid(2), setregid(2), setegid(2).