Loading

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  (voir
   feature_test_macros(7)) :

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

       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, elle 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 aient é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 */
           };

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

CONFORMITÉ

       SVr4, BSD 4.3, POSIX.1-2001.

VOIR AUSSI

       fgetgrent(3), getgrent_r(3), getgrgid(3), getgrnam(3), getgrouplist(3),
       putgrent(3)

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.23 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

       Cette page de manuel a été traduite  et  mise  à  jour  par  Christophe
       Blaess  <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
       Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et  mise  à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
       francophone de traduction de Debian.

       Veuillez   signaler   toute   erreur   de   traduction  en  écrivant  à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

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

                                 30 mars 2009