Provided by: manpages-de-dev_0.5-4.1ubuntu1_all bug

BEZEICHNUNG

       setuid - setzen der Benutzeridentität

ÜBERSICHT

       #include <unistd.h>

       int setuid(uid_t uid)

BESCHREIBUNG

       setuid  setzt  die effektive Benutzer-ID des aktuellen Prozesses.  Wird
       diese Funktion durch den Superuser aufgerufen, so wird  die  reale  und
       die gesicherte ID auch gesetzt.

       Unter  Linux  ist  setuid  wie  unter  SYSV mit SAVE_IDS implementiert.
       Dieses  erlaubt  einem  setuid-Programm  (nicht  setuser   root)   alle
       Privilegien  des  entsprechenden Benutzer abzugeben, um unpriviligierte
       Arbeiten zu verrichten, und um danach  wieder  die  orginale  effektive
       Benutzer-ID  zu  bekommen,  dies erfolgt alles auf eine sichere Art und
       Weise.

       Wenn der Benutzer root oder das Programm setuid root ist, ist besondere
       Sorgfalt  notwendig.   Die  Funktion setuid überprüft die effektive uid
       (Benutzer-ID) des Aufrufers und handelt es sich dabei um den Superuser,
       so werden alle diesen Prozess betreffenden Benutzer-ID auf uid gesetzt.
       Nachdem  dies  geschehen  ist,  ist  es  für  das  Programm  unmöglich,
       Superuser-Privilegien wiederzuerlangen.

RÜCKGABEWERT

       War  der  Funktionsaufruf  erfolgreich,  so wird 0 zurückgeliefert.  Im
       Fehlerfall wird -1 zurückgegeben und errno wird entsprechend gesetzt.

FEHLER

       EPERM  Der Benutzer ist nicht der Superuser und  uid  entspricht  nicht
              der effektiven oder gesicherten ID des aufrufenden Prozesses.

KONFORM ZU

       System V

SIEHE AUCH

       getuid(2), setreuid(2), seteuid(2).