Developer's Daily | Unix by Example |
main | java | perl | unix | dev directory | web log |
getpwent, setpwent, endpwent ? get password file entry |
#include <pwd.h> #include <sys/types.h> struct passwd *getpwent(void); void setpwent(void); void endpwent(void); |
The getpwent() function returns a pointer to a structure containing the broken out fields of a line from /etc/passwd. The first time it is called it returns the first entry; thereafter, it returns successive entries. The setpwent() function rewinds the file pointer to the beginning of the /etc/passwd file. The endpwent() function closes the /etc/passwd file. 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 getpwent() function returns the passwd structure, or NULL if there are no more entries or an error occurs. |
ENOMEM |
Insufficient memory to allocate passwd structure. |
/etc/passwd |
password database file |
SVID 3, BSD 4.3 |
fgetpwent(3), getpwnam(3), getpwuid(3), getpw(3), putpwent(3), passwd(5). |