Developer's Daily | Unix by Example |
main | java | perl | unix | dev directory | web log |
getpwnam, getpwuid ? get password file entry |
#include <pwd.h> #include <sys/types.h> struct passwd *getpwnam(const char * name); struct passwd *getpwuid(uid_t uid); |
The getpwnam() function returns a pointer to a structure containing the broken out fields of a line from /etc/passwd for the entry that matches the user name name. The getpwuid() function returns a pointer to a structure containing the broken out fields of a line from /etc/passwd for the entry that matches the user uid uid. The passwd structure is defined in <pwd.h> as follows: |
struct passwd { |
char *pw_name;
/* user name */ |
|||
/* user password */ |
|||
/* user id */ |
|||
/* group id */ |
char *pw_gecos; /* real name */ |
char *pw_dir;
/* home directory */ |
char *pw_shell; /* shell program */ |
The getpwnam() and getpwuid() functions return the passwd structure, or NULL if the matching entry is not found or an error occurs. |
ENOMEM |
Insufficient memory to allocate passwd structure. |
/etc/passwd |
password database file |
SVID 3, POSIX, BSD 4.3 |
fgetpwent(3), getpwent(3), setpwent(3), endpwent(3), getpw(3), putpwent(3), passwd(5). |