getgrent

GETGRENT(3)               Manuel du programmeur Linux              GETGRENT(3)



NOM
       getgrent, setgrent, endgrent - Lire les enregistrements du fichier de
       groupes

SYNOPSIS
       #include <sys/types.h>
       #include <grp.h>

       struct group *getgrent(void);

       void setgrent(void);

       void endgrent(void);

   Exigences de macros de test de fonctionnalités pour la glibc (consultez
   feature_test_macros(7)) :

       setgrent() :
           _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE >= 500 ||
           _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED ||
           /* Depuis la glibc 2.12 : */ _POSIX_C_SOURCE >= 200809L

       getgrent(), endgrent() :
           _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE >= 500 ||
           _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED

DESCRIPTION
       La fonction getgrent() renvoie un pointeur sur une structure contenant
       les champs d'un enregistrement de la base de données de groupe (par
       exemple, le fichier de groupe local /etc/group, NIS ou LDAP). Au
       premier appel, getgrent() renvoie le premier enregistrement, puis les
       autres enregistrements lors des appels successifs.

       La fonction setgrent() ramène le pointeur au début de la base de
       données de groupe pour permettre des balayages répétitifs.

       La fonction endgrent() est utilisée pour fermer la base de données de
       groupe après que toutes les actions ont été réalisées.

       La structure group est définie dans <grp.h> comme ceci :

           struct group {
               char   *gr_name;       /* nom du groupe */
               char   *gr_passwd;     /* mot de passe du groupe */
               gid_t   gr_gid;        /* ID du groupe */
               char  **gr_mem;        /* membres du groupe */
           };

       Pour plus d'informations à propos des champs de cette structure,
       consultez group(5).

VALEUR RENVOYÃE
       La fonction getgrent() renvoie un pointeur vers une structure group ou
       un pointeur NULL s'il n'y a plus d'enregistrement, ou si une erreur se
       produit.

       En cas d'erreur, errno peut être positionnée. Si vous souhaitez
       vérifier sa valeur, il est nécessaire de la positionner à zéro
       avant l'appel.

       La valeur de retour peut pointer sur une zone de mémoire statique et
       peut être écrasée par des appels successifs à getgrent(),
       getgrgid(3) ou getgrnam(3). (Ne pas passer le pointeur renvoyé Ã
       free(3).)

ERREURS
       EINTR  Un signal a été intercepté.

       EIO    Erreur d'entrée-sortie.

       EMFILE Le nombre maximal de fichiers ouverts pour le processus est
              atteint.

       ENFILE Le nombre maximal de fichiers ouverts sur le système est
              atteint.

       ENOMEM Pas assez de mémoire pour allouer la structure group.

       ERANGE L'espace tampon fourni est insuffisant.

FICHIERS
       /etc/group
              Base de données des groupes locaux

ATTRIBUTS
   Multithreading (voir pthreads(7))
       La fonction getgrent() n'est pas sûre dans un contexte multithread.

       Les fonctions setgrent() et endgrent() sont sûres dans un contexte
       multithread.

CONFORMITÃ
       SVr4, BSD 4.3, POSIX.1-2001.

VOIR AUSSI
       fgetgrent(3), getgrent_r(3), getgrgid(3), getgrnam(3), getgrouplist(3),
       putgrent(3), group(5)

COLOPHON
       Cette page fait partie de la publication 3.70 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler des
       anomalies peuvent être trouvées à l'adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION
       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction
       francophone au sein du projet perkamon
       <http://perkamon.alioth.debian.org/>.

       Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain
       Portal <http://manpagesfr.free.fr/> (2003-2006).  Florentin Duneau et
       l'équipe francophone de traduction de Debian (2006-2009).

       Veuillez signaler toute erreur de traduction en écrivant Ã
       <perkamon-fr@traduc.org>.

       Vous pouvez toujours avoir accès à la version anglaise de ce document
       en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».



                                 21 juin 2013                      GETGRENT(3)