Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       setresuid, setresgid - reale, effektive und gespeicherte Benutzer- oder
       Gruppen-ID setzen

ÜBERSICHT

       #define _GNU_SOURCE /* Siehe feature_test_macros(7) */
       #include <unistd.h>

       int setresuid(uid_t ruid, uid_t euid, uid_t suid);
       int setresgid(gid_t rgid, gid_t egid, gid_t sgid);

BESCHREIBUNG

       setresuid() setzt die wirkliche Benutzer-ID, die effektive  Benutzer-ID
       und die gespeicherte Benutzer-ID des aufrufenden Prozesses.

       Unprivilegierte  Prozesse eines Benutzers können die wirkliche UID, die
       effektive UID und die gespeicherte SUID jeweils zu einem der  Folgenden
       ändern: der aktuellen wirklichen UID, der aktuellen effektiven UID oder
       der aktuellen gespeicherten SUID.

       Privilegierte    Prozesse    (auf    Linux    diejenigen,    die    die
       CAP_SETUID-Fähigkeit haben) können die wirkliche UID, die effektive UID
       und die gespeicherte SUID auf beliebige Werte setzen.

       Wenn eines der Argumente -1  ist,  wird  der  dazugehörige  Wert  nicht
       geändert.

       Ohne Rücksicht auf die Änderungen an der wirklichen UID, der effektiven
       UID und der gespeicherten SUID wird die Dateisystem-UID stets  auf  den
       gleichen Wert wie die (möglicherweise neue) effektive UID gesetzt.

       setresgid()  setzt  vollständig  analog  dazu  die  wirkliche  GID, die
       effektive GID und die gespeicherte SGID des aufrufenden Prozesses  (und
       ändert  stets  die  GID des Dateisystems auf den gleichen Wert, wie die
       effektive GID) mit den gleichen Einschränkungen für nicht privilegierte
       Prozesse.

RÜCKGABEWERT

       Bei   Erfolg   wird  Null  zurückgegeben.  Bei  einem  Fehler  wird  -1
       zurückgegeben und errno entsprechend gesetzt.

FEHLER

       EAGAIN uid  ist nicht die aktuelle UID und die neue  Benutzer-ID  hätte
              durch    diesen    Aufruf    mehr   Prozesse   als   durch   die
              RLIMIT_NPROC-Beschränkung erlaubt.

       EPERM  Der aufrufende Prozess ist nicht privilegiert (hatte  nicht  die
              Fähigkeit  CAP_SETUID)  und versuchte die IDs auf nicht erlaubte
              Werte zu ändern.

VERSIONEN

       Diese Systemaufrufe sind unter Linux seit Linux 2.1.44 verfügbar.

KONFORM ZU

       Diese Systemaufrufe sind nicht Standard. Sie kommen auch in  HP-UX  und
       einigen BSDs vor.

ANMERKUNGEN

       Unter  HP-UX  und  FreeBSD  befinden sich die Prototypen in <unistd.h>.
       Unter  Linux  wird  der  Prototyp  durch  Glibc  seit   Version   2.3.2
       bereitgestellt.

       Der    Original-Linux-Systemaufrufe    setresuid()    und   setresgid()
       unterstützen nur 16-Bit-Benutzer- und -Gruppen-IDs.  Nachfolgend  fügte
       Linux   2.4  setresuid32()  und  setresgid32()  hinzu,  die  32-Bit-IDs
       unterstützen. Die Glibc-Wrapper-Funktionen setfsuid()  setresgid()  und
       stellen die Änderungen transparent über Kernel-Versionen hinweg bereit.

SIEHE AUCH

       getresuid(2),   getuid(2),   setfsgid(2),   setfsuid(2),   setreuid(2),
       setuid(2), capabilities(7), credentials(7)

KOLOPHON

       Diese  Seite  ist  Teil  der   Veröffentlichung   3.32   des   Projekts
       Linux-man-pages.  Eine Beschreibung des Projekts und Informationen, wie
       Fehler    gemeldet     werden     können,     finden     sich     unter
       http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die  deutsche  Übersetzung  dieser  Handbuchseite wurde von Chris Leick
       <c.leick@vollbio.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie  die  GNU  General
       Public   License   Version   3  oder  neuer  bezüglich  der  Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn  Sie  Fehler  in  der  Übersetzung  dieser  Handbuchseite  finden,
       schicken     Sie     bitte     eine     E-Mail     an     <debian-l10n-
       german@lists.debian.org>.