oracular (3) getgrent.3.gz

Provided by: manpages-fr-dev_4.23.1-1_all bug

NOM

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

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

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

       setgrent() :
           _XOPEN_SOURCE >= 500
               || /* glibc >= 2.19 : */ _DEFAULT_SOURCE
               || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE

       getgrent(), endgrent() :
           Depuis la glibc 2.22 :
               _XOPEN_SOURCE >= 500 || _DEFAULT_SOURCE
           glibc 2.21 et antérieures :
               _XOPEN_SOURCE >= 500
                   || /* Depuis la glibc 2.12 : */ _POSIX_C_SOURCE >= 200809L
                   || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       La  fonction getgrent() renvoie un pointeur sur une structure contenant les champs d'un enregistrement de
       la base de données des groupes (par exemple, le fichier de groupes 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 groupes  pour  permettre  des
       balayages répétitifs.

       La  fonction  endgrent()  est  utilisée  pour  fermer  la base de données de groupes 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 de groupe */
               char   *gr_passwd;      /* mot de passe de groupe */
               gid_t   gr_gid;         /* identifiant de groupe */
               char  **gr_mem;         /* tableau de pointeurs de nom des membres de groupe
                                          terminé par un pointeur NULL */
           };

       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

       EAGAIN Le  service était temporairement indisponible ; réessayez plus tard. Pour les services NSS dans la
              glibc, cela indique la survenue  d'une  erreur  temporaire  lors  de  la  communication  avec  ces
              services.  L'erreur étant susceptible de se corriger d'elle-même, il est suggéré de réessayer plus
              tard.

       EINTR  Un signal a été intercepté ; consultez signal(7).

       EIO    Erreur d'entrée-sortie.

       EMFILE La limite du nombre de descripteurs de fichiers par processus a été atteinte.

       ENFILE La limite du nombre total de fichiers ouverts pour le système entier a été atteinte.

       ENOENT Un fichier d'entrée nécessaire n'a pas été trouvé. Pour les  services  NSS  dans  la  glibc,  cela
              indique que le service concerné n'est pas configuré correctement.

       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

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌───────────────────────┬──────────────────────┬─────────────────────────────────────────────────────────┐
       │InterfaceAttributValeur                                                  │
       ├───────────────────────┼──────────────────────┼─────────────────────────────────────────────────────────┤
       │getgrent()             │ Sécurité des threads │ MT-Unsafe race:grent race:grentbuf locale               │
       ├───────────────────────┼──────────────────────┼─────────────────────────────────────────────────────────┤
       │setgrent(), endgrent() │ Sécurité des threads │ MT-Unsafe race:grent locale                             │
       └───────────────────────┴──────────────────────┴─────────────────────────────────────────────────────────┘
       Dans  la  table ci-dessus, grent dans race:grent signifie que si une des fonctions setgrent(), getgrent()
       ou endgrent() est utilisée en  parallèle  dans  différents  threads  d'un  programme,  une  situation  de
       compétition de données pourrait se produire.

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       POSIX.1-2001, SVr4, 4.3BSD.

VOIR AUSSI

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

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,     Denis    Barbier    <barbier@debian.org>,    David    Prévot
       <david@tilapin.org> et Lucien Gentis <lucien.gentis@waika9.com>

       Cette traduction est une documentation libre ; veuillez vous reporter à la  GNU  General  Public  License
       version 3   ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   concernant   les  conditions  de  copie  et  de
       distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,  veuillez  envoyer  un  message  à
       ⟨debian-l10n-french@lists.debian.org⟩.