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

НАЗВАНИЕ

       setregid,   setegid   -  установить  действительный  и/или  фактический
       идентификатор группы

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

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

       int setregid(gid_t rgid, gid_t egid);
       int setegid(gid_t egid);

ОПИСАНИЕ

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

       В Linux до версии 1.1.38 парадигма сохраненных идентификаторов, которая
       использовалась вместе с setregid или setegid, была неверно реализована.
       Начиная с 1.1.38, можно устанавливать фактический идентификатор  группы
       в сохраненный идентификатор группы.

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

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

       В настоящий  момент  (libc-4.x.x),  вызов  setegid(egid)  функционально
       эквивалентен вызову setregid(-1, egid).

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

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

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

ERRORS

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

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

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

СМОТРИ ТАКЖЕ

       getgid(2), setgid(2)

ПЕРЕВОД

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

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