sourCEntral - mobile manpages

pdf

SETREUID

NAME

setreuid, seteuid − setze reale und/oder effektive Benutzerkennung

ÜBERSICHT

#include <unistd.h>

int setreuid(uid_t ruid, uid_t euid);
int seteuid(uid_t
euid);

BESCHREIBUNG

setreuid setzt die reale und effektive Benutzerkennung des aktuellen Prozesses. Unprivilegierte Benutzer dürfen die reale Benutzerkennung auf die effektive Benutzerkennung ändern und umgekehrt.

Seit 1.1.38 ist es auch möglich, die effektive Benutzerkennung aus der gesicherten Benutzerkennung zu setzen.

Nur der Superuser darf andere Änderungen vornehmen.

Angeben des Wertes −1 für entweder die reale oder effektive Benutzerkennung weist das System an, diese Kennung unverändert zu lassen.

Im Moment (libc-4.x.x) ist seteuid(euid) funktionell äquivalent zu setreuid(-1, euid).

Wenn die reale Benutzerkennung geändert wird, oder wenn die effektive Benutzerkennung auf einen Wert gesetzt wird, der nicht gleich der vorherigen realen Benutzerkennung ist, so wird die gesicherte Benutzerkennung auf die neue effektive Benutzerkennung gesetzt.

RÜCKGABEWERT

Bei Erfolg wird Null zurückgegeben. Im Fehlerfall wird −1 zurückgegeben und errno entsprechend gesetzt.

FEHLER

EPERM

Der aktuelle Prozess gehört nicht dem Superuser und eine andere Änderung als (i) Vertauschen der effektiven mit der realen Benutzerkennung oder (ii) Setzen einer dieser auf den Wert den anderen oder (iii) Setzen der effektiven Benutzerkennung auf den Wert der gesicherten Benutzerkennung wurde angestrebt.

GESCHICHTE

Die Funktion setregid erschien in BSD 4.2.

KONFORM ZU

BSD 4.3

SIEHE AUCH

getuid(2), setuid(2).

pdf