getpwent(3C) getpwent(3C)
NAME
getpwent, getpwuid, getpwnam, setpwent, endpwent, fgetpwent -
manipulate password file entry
SYNOPSIS
#include <pwd.h>
#include <stdio.h>
struct passwd *getpwent (void);
struct passwd *getpwuid (uid_t uid);
struct passwd *getpwnam (const char *name);
void setpwent (void);
void endpwent (void);
struct passwd *fgetpwent (FILE *f);
DESCRIPTION
getpwent, getpwuid, and getpwnam each returns a pointer to an
object with the following structure containing the broken-out
fields of a line in the /etc/passwd file. Each line in the
file contains a passwd structure, declared in the pwd.h header
file:
struct passwd {
char *pw_name;
char *pw_passwd;
uid_t pw_uid;
gid_t pw_gid;
char *pw_age;
char *pw_comment;
char *pw_gecos;
char *pw_dir;
char *pw_shell;
};
When first called, getpwent returns a pointer to the first
passwd structure in the file; thereafter, it returns a pointer
to the next passwd structure in the file. Thus successive
calls can be used to search the entire file. getpwuid
searches from the beginning of the file until a numerical user
ID matching uid is found and returns a pointer to the
particular structure in which it was found. getpwnam searches
from the beginning of the file until a login name matching
name is found, and returns a pointer to the particular
structure in which it was found. If an end-of-file or an
error is encountered on reading, these functions return a null
pointer.
Copyright 1994 Novell, Inc. Page 1
getpwent(3C) getpwent(3C)
A call to setpwent has the effect of rewinding the password
file to allow repeated searches. endpwent may be called to
close the password file when processing is complete.
fgetpwent returns a pointer to the next passwd structure in
the stream f, which matches the format of /etc/passwd.
Files
/etc/passwd
/var/yp/domainame/passwd.byname
/var/yp/domainame/passwd.byuid
Return Values
getpwent, getpwuid, getpwnam, and fgetpwent return a null
pointer on EOF or error.
REFERENCES
getgrent(3C), getlogin(3C), passwd(4)
NOTICES
All information is contained in a static area, so it must be
copied if it is to be saved.
Passwd structures will be obtained from NIS, when the dynamic
versions of these routines are used and NIS is installed and
running. See passwd(4) for the formats of NIS entries.
Copyright 1994 Novell, Inc. Page 2