Sous-routine setgroups

Objectif

Définit l'ID de groupe supplémentaire du processus en cours.

Bibliothèque

Bibliothèque C standard (libc.a)

Syntaxe

#include <grp.h>
int setgroups ( NumberGroups GroupIDSet)
int NumberGroups;
gid_t *GroupIDSet;

Descriptif

La sous-routine Setgroups définit l'ID de groupe supplémentaire du processus. La sous-routine Setgroups ne peut pas définir plus de groupes NGROUPS_MAX dans l'ensemble de groupes. (NGROUPS_MAX est une constante définie dans le fichier limits.h .)

Remarque: La routine peut coredump au lieu de renvoyer EFAULT lorsqu'un pointeur non valide est transmis dans le cas d'une application 64 bits appelant une interface de noyau 32 bits.

Paramètres

Article Descriptif
GroupIDSet Pointeur vers la grappe d'ID de groupe à établir.
NumberGroups Indique le nombre d'entrées dans le paramètre GroupIDSet .

Valeurs renvoyées

Une fois l'exécution terminée, la sous-routine Setgroups renvoie une valeur de 0. Dans le cas contraire, la valeur -1 est renvoyée et la variable globale errno est définie pour indiquer l'erreur.

Codes d'erreur

La sous-routine Setgroups échoue si l'une des opérations suivantes est vraie:

Article Descriptif
EDÉFAUT Les paramètres NumberGroups et GroupIDSet spécifient un tableau qui se trouve partiellement ou complètement en dehors de l'espace adresse alloué au processus.
EINVAL Le paramètre NumberGroups est supérieur à la valeur NGROUPS_MAX .
EPERM Un ID de groupe dans le paramètre GroupIDSet ne figure pas actuellement dans l'ID de groupe supplémentaire et l'auteur de l'appel ne dispose pas des droits d'accès utilisateur root.

Security

Evénements d'audit :

Evénement Informations
PROC_SetGroups NombreGroupes, GroupIDSet