Loading

NOM

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

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

       getpwent(), setpwent(), endpwent() : _BSD_SOURCE || _SVID_SOURCE ||
       _XOPEN_SOURCE > = 500

       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, elle renvoie le premier enregistrement,
       puis les enregistrements suivants lors des appels suivants.

       La fonction setpwent() ramène le pointeur de fichier au début  de  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 aient é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;      /* Nom réel */
               char   *pw_dir;        /* Répertoire personnel */
               char   *pw_shell;      /* Interpréteur de commande */
           };

       Lorsque les mots de passe shadow(5) sont activés (ce qui est le  défaut
       sur  beaucoup de distribution GNU/Linux), le contenu de pw_passwd n’est
       habituellement pas utile. Dans un tel  cas,  les  mots  de  passe  sont
       enregistrés dans des fichiers séparés.

       La  variable  pw_shell  peut être vide, dans ce cas, le système utilise
       l’interpréteur de commandes par défaut (/bin/sh) pour l’utilisateur.

VALEUR RENVOYÉE

       La fonction getpwent() renvoie un pointeur sur une structure passwd, ou
       NULL  si  une erreur se produit ou s’il n’y a plus d’enregistrement. En
       cas d’erreur, errno est positionnée en conséquence. Si  vous  souhaitez
       vérifier  errno  après  l’appel,  celle-ci 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é.

       EIO    Erreur d’entrée-sortie.

       EMFILE Le  nombre  maximal  (OPEN_MAX)  de  fichiers  ouverts  par   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 passwd.

       ERANGE L’espace tampon fourni est insuffisant.

FICHIERS

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

CONFORMITÉ

       SVr4, BSD 4.3, POSIX.1-2001.

VOIR AUSSI

       fgetpwent(3),  getpw(3),   getpwent_r(3),   getpwnam(3),   getpwuid(3),
       putpwent(3), shadow(5), passwd(5)

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  Alain  Portal
       <aportal  AT  univ-montp2  DOT  fr>  entre  2004  et  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> ».