Provided by: manpages-de-dev_1.4-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 standardisiert. 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

       This  page  is  part  of release 3.54 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/.

ÜBERSETZUNG

       Die  deutsche  Übersetzung dieser Handbuchseite wurde von Chris Leick <c.leick@vollbio.de>
       und Mario Blättermann <mario.blaettermann@gmail.com> 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>.