setgroups()

Установить пользователю дополнительные идентификаторы групп

Прототип:

#include <unistd.h>
int setgroups( int ngroups,
const gid_t *gidset );

Аргументы:

ngroups
Количество записей в массиве gid set.
gidset
Массив дополнительных идентификаторов групп (group IDs), доступ к которым необходимо установить текущему пользователю. Количество записей в этом массиве не может превышать значение N GROUPS_MAX.

Библиотека:

libc

Описание:

Функция setgroups() устанавливает для текущего пользователя доступ к группам в соответствии с идентификаторами из массива gidset.


Note: Только суперпользователь (root) может назначать новые группы.

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка. Код ошибки записан в errno.

Коды ошибок:

EFAULT
Параметр gidset не является корректным указателем.
EPERM
Вызывающий процесс не является суперпользователем.

Классификация:

Unix

Безопасность использования
Точка остановки потока
Да
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Нет

Тематические ссылки:

getgroups(), initgroups()




Предыдущий раздел: Описание API системной библиотеки