GETPWENT(3)

NAME
getpwent, setpwent, endpwent - get password file entry

SYNOPSIS
#include <sys/types.h>
#include <pwd.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), getpw(3), getpwent_r(3), getpwnam(3), getpwuid(3), putpwent(3), passwd(5)