Provided by: manpages-pl-dev_20060617-1_all bug

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

       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)