setreuid(2) ustawienie rzeczywistego i/lub efektywnego ID użytkownika

Other Alias

seteuid

SKŁADNIA

#include <sys/types.h>
#include <unistd.h>

int setreuid(uid_t ruid, uid_t euid);
int setregid(gid_t rgid, gid_t egid);

OPIS

Uwaga! To tłumaczenie może być nieaktualne!

setreuid ustawia rzeczywisty i efektywny identyfikator użytkownika bieżącego procesu. Nieuprzywilejowani użytkownicy mogą ustawić rzeczywisty ID użytkownika na podstawie rzeczywistego lub efektywnego ID użytkownika, lub efektywny ID użytkownika na podstawie rzeczywistego, efektywnego lub zachowanego ID użytkownika.

Podanie wartości -1 dla rzeczywistego lub efektywnego ID użytkownika wymusza na systemie pozostawienie tego ID niezmienionym.

Jeśli rzeczywisty lub efektywny ID użytkownika jest ustawiany na wartość różną od poprzedniego rzeczywistego ID użytkownika, to zachowanemu ID użytkownika zostanie nadana wartość nowego efektywnego ID użytkownika.

Zupełnie analogicznie setregid ustawia rzeczywisty i efektywny identyfikator grupy bieżącego procesu, a wszystko powyżej nadal obowiązuje po zmianie słowa "użytkownik" na "grupa".

WARTOŚĆ ZWRACANA

Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.

BŁĘDY

EPERM
Proces nie jest procesem superużytkownika, a zażądano zmian innych niż (i) zamiana efektywnego ID użytkownika (grupy) z rzeczywistym lub (ii) ustawienie jednej z tych wartości na podstawie drugiej, lub (iii) ustawienie efektywnego ID użytkownika (grupy) na podstawie wartości zachowanego ID użytkownika (grupy).

UWAGI

Ustawianie efektywnego ID użytkownika (grupy) na podstawie zachowanego ID jest możliwe poczynając od wersji Linuksa 1.1.37 (1.1.38).

HISTORIA

Funkcja setreuid pojawiła się w BSD 4.2.

ZGODNE Z

BSD 4.3 (funkcje setreuid i setregid pojawiły się pierwotnie w 4.2BSD).

INFORMACJE O TŁUMACZENIU

Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
man --locale=C 2 setreuid

Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.