GETPWENT(3) | Manuel du programmeur Linux | GETPWENT(3) |
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);
getpwent(), setpwent(), endpwent() :
_XOPEN_SOURCE >= 500
|| /* Glibc since 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 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 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 */ };
Pour plus d'informations à propos des champs de cette structure, consultez passwd(5).
VALEUR RENVOYÉE
The getpwent() function returns a pointer to a passwd structure, or NULL if there are no more entries or an error occurred. If an error occurs, errno is set to indicate the error. If one wants to check errno after the call, it should be set to zero before the call.
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 des mots de passe locaux
ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur |
getpwent() | Sécurité des threads | MT-Unsafe race:pwent race:pwentbuf locale |
setpwent(), endpwent() | Sécurité des threads | MT-Unsafe race:pwent locale |
In the above table, pwent in race:pwent signifies that if any of the functions setpwent(), getpwent(), or endpwent() are used in parallel in different threads of a program, then data races could occur.
CONFORMITÉ
POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. The pw_gecos field is not specified in POSIX, but is present on most implementations.
VOIR AUSSI
fgetpwent(3), getpw(3), getpwent_r(3), getpwnam(3), getpwuid(3), putpwent(3), passwd(5)
COLOPHON
Cette page fait partie de la publication 5.13 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.
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> et David Prévot <david@tilapin.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 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.
22 mars 2021 | GNU |