Provided by: manpages-ru_0.98-4_all bug

НАЗВАНИЕ

       setreuid,   seteuid   -  установить  действительный  и/или  фактический
       идентификатор пользователя

КРАТКАЯ СВОДКА

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

       int setreuid(uid_t ruid, uid_t euid);
       int seteuid(uid_t euid);

ОПИСАНИЕ

       setreuid  устанавливает  действительный  и  фактический  идентификаторы
       владельца  текущего  процесса.   Непривилегированные пользователи могут
       изменять  действительный  идентификатор  владельца  на  фактический   и
       наоборот.

       В Linux версий раньше 1.1.37 парадигма сохраненных идентификаторов, при
       использовании с setreuid или seteuid, была некорректно реализована.

       Начиная   с   1.1.37,   можно   также   устанавливать    действительный
       идентификатор пользователя в сохраненный идентификатор пользователя.

       Только суперпользователь может делать все другие изменения.

       Передавая -1 в качестве действительного или фактического идентификатора
       пользователя оставляет соответствующий идентификатор без изменений.

       В  настоящий  момент  вызов  seteuid(euid)  функционально  эквивалентен
       вызову setreuid(-1, euid).

       Если   действительный  идентификатор  пользователя  изменяется  или  же
       фактический идентификатор пользователя устанавливается в  значение,  не
       равное  предыдущему  действительному  идентификатору  пользователя,  то
       сохраненный   идентификатор   устанавливается   в   новый   фактический
       идентификатор.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       В случае успеха возвращается ноль.  При ошибке возвращается -1, а errno
       устанавливается должным образом.

ОШИБКИ

       EPERM  Текущий процесс  не  имеет  прав  суперпользователя  и  пытается
              выполнить  что-то  помимо (i) обмена фактического идентификатора
              на действительный, (ii) установки одного в значение другого, или
              же  (iii)  установки  фактического идентификатора пользователя в
              значение сохраненного идентификатора.

СООТВЕТСТВИЕ СТАНДАРТАМ

       BSD 4.3 (системный вызов setreuid впервые появился в 4.2BSD.)

СМОТРИ ТАКЖЕ

       getuid(2), setuid(2)

ПЕРЕВОД

       Перевод Copyright (C) Alexey Mahotkin <alexm@hsys.msk.ru> 2000

       http://alexm.here.ru/manpages-ru/