GETPWENT(3C-SysV) RISC/os Reference Manual GETPWENT(3C-SysV)
NAME
getpwent, getpwuid, getpwnam, setpwent, endpwent, fgetpwent
- get password file entry
SYNOPSIS
#include <bsd/sys/types.h>
#include <pwd.h>
struct passwd *getpwent ( )
struct passwd *getpwuid (uid)
int uid;
struct passwd *getpwnam (name)
char *name;
void setpwent ( )
void endpwent ( )
struct passwd *fgetpwent (f)
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;
int pw_uid;
int pw_gid;
char *pw_age;
char *pw_comment;
char *pw_gecos;
char *pw_dir;
char *pw_shell;
};
This structure is declared in <pwd.h> so it is not necessary
to redeclare it.
The fields have meanings described in passwd(4).
getpwent when first called returns a pointer to the first
passwd structure in the file; thereafter, it returns a
pointer to the next passwd structure in the file; so succes-
sive calls can be used to search the entire file. getpwuid
searches from the beginning of the file until a numerical
Printed 1/15/91 Page 1
GETPWENT(3C-SysV) RISC/os Reference Manual GETPWENT(3C-SysV)
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 partic-
ular structure in which it was found. If an end-of-file or
an error is encountered on reading, these functions return a
NULL pointer.
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
SEE ALSO
getlogin(3C), getgrent(3C), passwd(4).
DIAGNOSTICS
A NULL pointer is returned on EOF or error.
WARNING
The above routines use <stdio.h>, which causes them to
increase the size of programs, not otherwise using standard
I/O, more than might be expected.
CAVEAT
All information is contained in a static area, so it must be
copied if it is to be saved. The structure contains
pointers, and this data must also be saved.
Page 2 Printed 1/15/91