Provided by:
manpages-de-dev_0.10-1_all 
BEZEICHNUNG
setresuid, setresgid - reale, effektive und gespeicherte Benutzer- oder
Gruppen-ID setzen
"UBERSICHT
#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 konnen die wirkliche UID, die
effektive UID und die gespeicherte SUID jeweils zu einem der Folgenden
andern: der aktuellen wirklichen UID, der aktuellen effektiven UID oder
der aktuellen gespeicherten SUID.
Privilegierte Prozesse (auf Linux diejenigen, die die
CAP_SETUID-Fahigkeit haben) konnen die wirkliche UID, die effektive UID
und die gespeicherte SUID auf beliebige Werte setzen.
Wenn eines der Argumente -1 ist, wird der dazugehorige Wert nicht
geandert.
Ohne Rucksicht auf die Anderungen an der wirklichen UID, der effektiven
UID und der gespeicherten SUID wird die Dateisystem-UID stets auf den
gleichen Wert wie die (moglicherweise neue) effektive UID gesetzt.
setresgid() setzt vollstandig analog dazu die wirkliche GID, die
effektive GID und die gespeicherte SGID des aufrufenden Prozesses (und
andert stets die GID des Dateisystems auf den gleichen Wert, wie die
effektive GID) mit den gleichen Einschrankungen fur nicht privilegierte
Prozesse.
R"UCKGABEWERT
Bei Erfolg wird Null zuruckgegeben. Bei einem Fehler wird -1
zuruckgegeben und errno entsprechend gesetzt.
FEHLER
EAGAIN uid ist nicht die aktuelle UID und die neue Benutzer-ID hatte
durch diesen Aufruf mehr Prozesse als durch die
RLIMIT_NPROC-Beschrankung erlaubt.
EPERM Der aufrufende Prozess ist nicht privilegiert (hatte nicht die
Fahigkeit CAP_SETUID) und versuchte die IDs auf nicht erlaubte
Werte zu andern.
VERSIONEN
Diese Systemaufrufe sind unter Linux seit Linux 2.1.44 verfugbar.
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()
unterstutzen nur 16-Bit-Benutzer- und -Gruppen-IDs. Nachfolgend fugte
Linux 2.4 setresuid32() und setresgid32() hinzu, die 32-Bit-IDs
unterstutzen. Die Glibc-Wrapper-Funktionen setfsuid() setresgid() und
stellen die Anderungen transparent uber 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 Veroffentlichung 3.32 des Projekts
Linux-man-pages. Eine Beschreibung des Projekts und Informationen, wie
Fehler gemeldet werden konnen, finden sich unter
http://www.kernel.org/doc/man-pages/.
"UBERSETZUNG
Die deutsche Ubersetzung dieser Handbuchseite wurde von Chris Leick
<c.leick@vollbio.de> erstellt.
Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General
Public License Version 3 oder neuer bezuglich der Copyright-
Bedingungen. Es wird KEINE HAFTUNG ubernommen.
Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an <debian-l10n-
german@lists.debian.org>.