Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       getpwent, setpwent, endpwent - Lire un enregistrement du fichier des mots de passe

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <sys/types.h>
       #include <pwd.h>

       struct passwd *getpwent(void);
       void setpwent(void);
       void endpwent(void);

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

       getpwent(), setpwent(), endpwent() :
           _XOPEN_SOURCE >= 500
               || /* glibc >= 2.19 : */ _DEFAULT_SOURCE
               || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       La  fonction  getpwent()  renvoie  un  pointeur  sur  une  structure  contenant  les  divers  champs d'un
       enregistrement de la base de données des mots de passe (par exemple, le fichier de mots  de  passe  local
       /etc/passwd,  NIS  ou  LDAP).  Au  premier  appel, getpwent() renvoie le premier enregistrement, puis les
       enregistrements suivants lors des appels ultérieurs.

       La fonction setpwent() ramène la position dans le fichier au début de la base  de  données  des  mots  de
       passe.

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

       La structure passwd est définie dans <pwd.h> comme ceci :

           struct passwd {
               char   *pw_name;       /* Nom d'utilisateur */
               char   *pw_passwd;     /* Mot de passe de l'utilisateur */
               uid_t   pw_uid;        /* ID de l'utilisateur */
               gid_t   pw_gid;        /* ID du groupe */
               char   *pw_gecos;      /* Information utilisateur */
               char   *pw_dir;        /* Répertoire personnel */
               char   *pw_shell;      /* Interpréteur de commande */
           };

       Lorsque les mots de passe shadow(5) sont activés (ils le sont par défaut sur de nombreuses  installations
       GNU/Linux),  le contenu de pw_passwd n'est pas très utile en général. Dans ce cas, la plupart des mots de
       passe sont stockés dans un fichier séparé.

       La variable pw_shell peut être vide, auquel cas le système exécutera l'interpréteur par défaut  (/bin/sh)
       pour l'utilisateur.

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

VALEUR RENVOYÉE

       La fonction getpwent() renvoie un pointeur sur une structure passwd, ou NULL si une erreur s'est produite
       ou s'il n'y a plus d'enregistrement. En cas d'erreur, errno est défini pour indiquer  l'erreur.  Si  vous
       souhaitez vérifier errno après l'appel, sa valeur doit être positionnée à zéro avant l'appel.

       La  valeur de retour peut pointer vers une zone statique et donc être écrasée par des appels successifs à
       getpwent(), getpwnam(3) ou getpwuid(3) (ne pas passer le pointeur renvoyé à free(3)).

ERREURS

       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.

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

       ERANGE L'espace tampon fourni est insuffisant.

FICHIERS

       /etc/passwd
              Base de données locale des mots de passe

ATTRIBUTS

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

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

STANDARDS

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. Le champ pw_gecos n'est pas spécifié dans POSIX,  mais  il  est
       présent sur la plupart des implémentations.

VOIR AUSSI

       fgetpwent(3), getpw(3), getpwent_r(3), getpwnam(3), getpwuid(3), putpwent(3), shadow(5), passwd(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⟩.