DOKK / manpages / debian 10 / manpages-pt-dev / getgroups.2.pt
GETGROUPS(2) Manual do Programador Linux GETGROUPS(2)

getgroups, setgroups - obtém/seleciona a lista sumplementar das IDs grupo

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

int getgroups(int size, gid_t list[]);

#define _BSD_SOURCE
#include <grp.h>

int setgroups(size_t size, const gid_t *list);

Até size grupos sumplementares são retornados na list. Se size é zero, list não é modificado, mas o número total de grupos sumplementares para o processo é retornado.
Seleciona os grupos suplementares para o processo. Somente o superusuário pode usar esta função.

Em caso de sucesso, o número de IDs de grupos suplementares é retornado. Caso contrário, -1 é retornado, e errno selecionado apropriadamente.
Em caso de sucesso, zero é retornado. Caso contrário, -1 é retornado, e errno selecionado apropriadamente.

list tem um endereço inválido.
Para setgroups, o usuário não é o superusuário.
Para setgroups, size é maior que NGROUPS (32 para o Linux 2.0.32). Para getgroups, size é menor que o número de IDs de grupos suplementares, mas não é zero.

SVr4, SVID (lançado somente na 4; estas chamadas não estavam presentes na SVr3), X/OPEN, 4.3BSD. A função getgroups está em POSIX.1. Desde setgroups requerer privilégios, ele não é coberto pela POSIX.1.

O sinalizador _BSD_SOURCE provavelmente não deveria ser retornado por setgroups.

initgroups(3), getgid(2), setgid(2)

André L. Fassone Canova <lonelywolf@blv.com.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (revisão)

10/12/1997 Linux 2.0.32