fgetpwent - Man Page
get password file entry
Library
Standard C library (libc, -lc)
Synopsis
#include <stdio.h> #include <sys/types.h> #include <pwd.h> struct passwd *fgetpwent(FILE *stream);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
fgetpwent():
    Since glibc 2.19:
        _DEFAULT_SOURCE
    glibc 2.19 and earlier:
        _SVID_SOURCEDescription
The fgetpwent() function returns a pointer to a structure containing the broken out fields of a line in the file stream. The first time it is called it returns the first entry; thereafter, it returns successive entries. The file referred to by stream must have the same format as /etc/passwd (see passwd(5)).
The passwd structure is defined in <pwd.h> as follows:
struct passwd {
    char   *pw_name;       /* username */
    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 fgetpwent() function returns a pointer to a passwd structure, or NULL if there are no more entries or an error occurs. In the event of an error, errno is set to indicate the error.
Errors
- ENOMEM
- Insufficient memory to allocate passwd structure. 
Files
- /etc/passwd
- password database file 
Attributes
For an explanation of the terms used in this section, see attributes(7).
| Interface | Attribute | Value | 
|---|---|---|
| fgetpwent() | Thread safety | MT-Unsafe race:fgetpwent | 
Standards
None.
History
SVr4.
See Also
endpwent(3), fgetpwent_r(3), fopen(3), getpw(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)
Referenced By
getpw(3), getpwent(3), getpwent_r(3), getpwnam(3), putpwent(3).