getgrent(3C) UNIX System V(C Programming Language Utilities) getgrent(3C)
NAME
getgrent, getgrgid, getgrnam, setgrent, endgrent, fgetgrent - get group
file entry
SYNOPSIS
#include <grp.h>
struct group *getgrent (void);
struct group *getgrgid (gidt gid);
struct group *getgrnam (const char *name);
void setgrent (void);
void endgrent (void);
struct group *fgetgrent (FILE *f);
DESCRIPTION
getgrent, getgrgid, and getgrnam each return pointers to an object
containing the broken-out fields of a line in the /etc/group file. Each
line contains a ``group'' structure, defined in the grp.h header file
with the following members:
char *grname; /* the name of the group */
char *grpasswd; /* the encrypted group password */
gidt grgid; /* the numerical group ID */
char **grmem; /* vector of pointers to member names */
When first called, getgrent returns a pointer to the first group
structure in the file; thereafter, it returns a pointer to the next group
structure in the file; so, successive calls may be used to search the
entire file. getgrgid searches from the beginning of the file until a
numerical group id matching gid is found and returns a pointer to the
particular structure in which it was found.
getgrnam searches from the beginning of the file until a group 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.
A call to setgrent has the effect of rewinding the group file to allow
repeated searches. endgrent may be called to close the group file when
processing is complete.
fgetgrent returns a pointer to the next group structure in the stream f,
which matches the format of /etc/group.
FILES
/etc/group
10/89 Page 1
getgrent(3C) UNIX System V(C Programming Language Utilities) getgrent(3C)
SEE ALSO
getlogin(3C), getpwent(3C).
group(4) in the System Administrator's Reference Manual.
Page 2 10/89
getgrent(3C) UNIX System V(C Programming Language Utilities) getgrent(3C)
DIAGNOSTICS
getgrent, getgrgid, getgrnam, and fgetgrent return a null pointer on EOF
or error.
NOTES
All information is contained in a static area, so it must be copied if it
is to be saved.
10/89 Page 3