Rechercher une page de manuel
getpwnam
Langue: fr
Version: 21 juillet 2003 (openSuse - 09/10/07)
Section: 3 (Bibliothèques de fonctions)
NOM
getpwnam, getpwuid - Lire un enregistrement du fichier des mots de passe.SYNOPSIS
#include <pwd.h> #include <sys/types.h> struct passwd *getpwnam (const char * name); struct passwd *getpwuid (uid_t uid);
DESCRIPTION
La fonction getpwnam() renvoie un pointeur sur une structure contenant les divers champs de l'enregistrement de /etc/passwd correspondant au nom d'utilisateur name.La fonction getpwuid() renvoie un pointeur sur une structure contenant les divers champs de l'enregistrement de /etc/passwd correspondant au à l'ID d'utilisateur uid.
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
Les fonctions getpwnam() et getpwuid() renvoient un pointeur sur une structure passwd, ou NULL si une erreur se produit, ou si l'enregistrement correspondant n'est pas trouvé. En cas d'erreur, errno est rempli.ERREURS
- 0 ou ENOENT ou ESRCH ou EBADF ou EPERM ou ...
- Le nom name ou l'identifiant uid n'ont pas été trouvés.
- ENOMEM
- Pas assez de mémoire pour allouer la structure passwd.
- EIO
- Erreur d'entrée/sortie.
- EINTR
- Un signal a été capturé.
- EMFILE
- Le nombre maximal (OPEN_MAX) de fichiers ouverts pour le processus est atteint.
- ENFILE
- Le nombre maximal de fichiers ouverts sur le système est atteint.
FICHIERS
- /etc/passwd
- Base de données des mots de passe.
CONFORMITÉ
SVID 3, POSIX, BSD 4.3NOTES
La description "VALEUR RENVOYÉE" ci-dessu vient de Posix.1-2001. Elle ne considère pas le cas "non trouvé" commme une erreur, et ne spécifie pas errno dans ce cas. Cela rend la détection d'erreur impossible. On peut dire que d'après Posix, errno est inchangé dans le cas où aucune entrée n'est trouvée. Des essais sur de nombreux systèmes Unix ont fait apparaître différentes valeurs dans ce cas : 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM et probablement d'autres.VOIR AUSSI
fgetpwent(3), getgrnam(3), getpwent(3), setpwent(3), endpwent(3), getpw(3), putpwent(3), passwd(5)TRADUCTION
Christophe Blaess, 1996-2003.Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre