GETPWENT(3)GETPWENT(3)NAME
getpwent, getpwuid, getpwnam, setpwent, endpwent, setpwfile - get
password file entry
SYNOPSIS
#include <pwd.h>
struct passwd *getpwuid(uid)
int uid;
struct passwd *getpwnam(name)
char *name;
struct passwd *getpwent()setpwent()endpwent()setpwfile(name)
char *name;
DESCRIPTION
Getpwent, getpwuid and getpwnam each return a pointer to an object with
the following structure containing the broken-out fields of a line in
the password database.
struct passwd { /* see getpwent(3) */
char *pw_name;
char *pw_passwd;
int pw_uid;
int pw_gid;
int pw_quota;
char *pw_comment;
char *pw_gecos;
char *pw_dir;
char *pw_shell;
};
The fields pw_quota and pw_comment are unused; the others have meanings
described in passwd(5).
If the flat file is searched, then searching of the password file may
be done using the ndbm database access routines.
Setpwent opens the database; endpwent closes it. Getpwuid and getpwnam
search the database (opening it if necessary) for a matching uid or
name. EOF is returned if there is no entry.
For programs wishing to read the entire database, getpwent reads the
next line (opening the database if necessary). In addition to opening
the database, setpwent can be used to make getpwent begin its search
from the beginning of the database.
Setpwfile changes the default password file to name thus allowing
alternate password files to be used. Note that it does not close the
previous file. If this is desired, endpwent should be called prior to
it.
FILES
/etc/passwd - if NetInfo is not running, or if YP is enabled
SEE ALSOgetlogin(3), getgrent(3), passwd(5), netinfo(5), lookupd(8)DIAGNOSTICS
The routines getpwent, getpwuid, and getpwnam, return a null pointer
(0) on EOF or error.
BUGS
All information is contained in a static area so it must be copied if
it is to be saved.
7th Edition October 8, 1990 GETPWENT(3)