GETPWENT(3)

NAME
getpwent, setpwent, endpwent - get password file entry

SYNOPSIS
#include <pwd.h>
#include <sys/types.h>

struct passwd *getpwent(void);

void setpwent(void);

void endpwent(void);

DESCRIPTION
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 */
            char    *pw_passwd;		/* user password */
            uid_t   pw_uid;			/* user id */
            gid_t   pw_gid;			/* group id */
            char    *pw_gecos;      	/* real name */
            char    *pw_dir;  		/* home directory */
            char    *pw_shell;      	/* shell program */
    };

RETURN VALUE
The getpwent() function returns the passwd structure, or NULL if there are no more entries or an error occurs.

ERRORS

ENOMEM
    Insufficient memory to allocate passwd structure.

FILES

/etc/passwd
    password database file

CONFORMING TO
SVID 3, BSD 4.3

SEE ALSO
fgetpwent(3), getpwnam(3), getpwuid(3), getpw(3), putpwent(3), passwd(5).