NAZWA¶
setreuid, seteuid - ustawienie rzeczywistego i/lub efektywnego ID
użytkownika lub grupy
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).
ZOBACZ TAKŻE¶
getuid(2),
getgid(2),
setuid(2),
setgid(2),
seteuid(2),
setresuid(2)
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/.