NOME¶
getgroups, setgroups - obtém/seleciona a lista sumplementar das IDs grupo
SINOPSE¶
#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);
DESCRIÇÂO¶
- getgroups
- 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.
- setgroups
- Seleciona os grupos suplementares para o processo. Somente o
superusuário pode usar esta função.
VALORES RETORNADOS¶
- getgroups
- Em caso de sucesso, o número de IDs de grupos suplementares
é retornado. Caso contrário, -1 é retornado, e
errno selecionado apropriadamente.
- setgroups
- Em caso de sucesso, zero é retornado. Caso contrário, -1
é retornado, e errno selecionado apropriadamente.
ERROS¶
- EFAULT
- list tem um endereço inválido.
- EPERM
- Para setgroups, o usuário não é o
superusuário.
- EINVAL
- 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.
DE ACORDO COM¶
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.
PROBLEMAS¶
O sinalizador
_BSD_SOURCE provavelmente não deveria ser retornado
por
setgroups.
VEJA TAMBÉM¶
initgroups(3),
getgid(2),
setgid(2)
TRADUZIDO POR LDP-BR em 21/08/2000.¶
André L. Fassone Canova <lonelywolf@blv.com.br>
(tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx>
(revisão)