Linux

CentOS 5.3

setpwent(3)


GETPWENT

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);

DESCRIPTION

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

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

La fonction endpwent() est utilisée pour fermer la base de données des mots de passe lorsque tous les traitements ont été effectués.

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

struct passwd {
    char   *pw_name;   /* Nom d’utilisateur             */
    char   *pw_passwd; /* Mot de passe                  */
    uid_t   pw_uid;    /* ID de l’utilisateur           */
    gid_t   pw_gid;    /* ID du groupe de l’utilisateur */
    char   *pw_gecos;  /* Nom réel de l’utilisateur     */
    char   *pw_dir;    /* Répertoire de connexion       */
    char   *pw_shell;  /* Programme Shell de connexion  */
};

VALEUR RENVOYÃE

La fonction getpwent() renvoie une structure passwd ou un pointeur NULL s’il n’y a plus d’enregistrements, ou si une erreur se produit. Si une erreur se produit, errno est remplie en conséquence. Si vous voulez vérifier errno après l’appel, vous devez la remplir avec zéro avant l’appel.

ERREURS

EINTR

Un signal a été intercepté.

EIO

Erreur d’entrée-sortie.

EMFILE

Le nombre maximum (OPEN_MAX) de fichiers a déjà été ouvert dans le processus appelant.

ENFILE

Le nombre maximum de fichiers a déjà été ouvert sur le système

ENOMEM

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

ERANGE

Espace tampon fourni insuffisant.

FICHIERS

/etc/passwd

Base de données locale des mots de passe.

CONFORMITÃ

SVr4, BSD 4.3, POSIX.1-2001.

VOIR AUSSI

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

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 3 novembre 1996 et révisée le 14 août 2006.

L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 getpwent ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


setpwent(3)