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

NAZWA

       setresuid,   setresgid   -   ustawienie  rzeczywistego,  efektywnego  i
       zachowanego ID uytkownika lub grupy

SK/LADNIA

       #define _GNU_SOURCE
       #include <unistd.h>

       int setresuid(uid_t ruid, uid_t euid, uid_t suid);
       int setresgid(gid_t rgid, gid_t egid, gid_t sgid);

OPIS

       setresuid()  ustawia  dla  biecego  procesu  rzeczywisty  i   efektywny
       identyfikator uytkownika (UID) oraz warto zachowanego set-user-ID.

       Proces  nieuprzywilejowany  moe zmieni rzeczywisty UID, efektywny UID i
       zachowany  set-user-ID  na  jeden  z:  biecy  rzeczywisty  UID,   biecy
       efektywny UID lub biecy zachowany UID

       Proces  uprzywilejowany  (pod  Linuksem - majcy atrybut CAP_SETUID) moe
       ustawi rzeczywisty  UID,  efektywny  UID  i  zachowany  set-user-ID  na
       dowolne wartoci.

       Jeeli ktorykolwiek z parametrow jest rowny -1, to odpowiadajca mu warto
       nie jest zmieniana.

       Niezalenie od zmian rzeczywistego UID, efektywnego  UID  i  zachowanego
       set-user-ID,  file-system-UID  jest  zawsze ustawiany na tak sam warto,
       jak ma (by moe nowy) efektywny UID.

       Analogicznie,  setresgid()  ustawia  rzeczywisty  identyfikator   grupy
       (GID), efektywny GID i zachowany set-group-ID biecego procesu (i zawsze
       ustawia file-system-GID na warto  efektywnego  GID),  z  takimi  samymi
       ograniczeniami dla procesow nieuprzywilejowanych.

WARTO ZWRACANA

       Po pomylnym zakoczeniu zwracane jest zero. Po bldzie zwracane jest -1 i
       odpowiednio ustawiane errno.

B/LDY

       EAGAIN uid nie  pasuje  do  obecnego  ID  uytkownika,  a  to  wywolanie
              pozwoliloby obej uytkownikowi limit NPROC.

       EPERM  Proces  wywolujcy  nie  jest  procesem  uprzywilejowanym (nie ma
              atrybutu CAP_SETUID) i probowal ustawi niedozwolon warto ktorego
              z identyfikatorow.

ZGODNE Z

       To wywolanie systemowe jest niestandardowe.

HISTORIA

       To  wywolanie  systemowe  pojawilo  si  po  raz  pierwszy w HP-UX. Jest
       dostpne pod Linuksem od wersji 2.1.44. Obecnie mona  je  znale  take  w
       FreeBSD (dla emulacji programow linuksowych).

UWAGI

       Na  HP-UX  i  FreeBSD  prototyp  funkcji  mona  znale  w <unistd.h>.Pod
       Liniksem prototyp jest dostarczany przez glibc  od  wersji  2.3.2,  pod
       warunkiem, e zdefiniowano _GNU_SOURCE.

ZOBACZ TAKE

       getresuid(2),   getuid(2),   setfsuid(2),   setfsgid(2),   setreuid(2),
       setuid(2), capabilities(7)

INFORMACJE O T/LUMACZENIU

       Powysze tlumaczenie pochodzi z nieistniejcego ju  Projektu  Tlumaczenia
       Manuali  i  moe nie by aktualne. W razie zauwaenia ronic midzy powyszym
       opisem a rzeczywistym zachowaniem  opisywanego  programu  lub  funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.