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)
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/.