fgetgrent3
Get group file entry
Usage
#include <stdio.h> #include <sys/types.h> #include <grp.h>
struct group *fgetgrent(FILE *stream);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
fgetgrent():
Since glibc 2.19:
_DEFAULT_SOURCE
glibc 2.19 and earlier:
_SVID_SOURCE
Library
Standard C library (libc, -lc)
Overview
The fgetgrent() function returns a pointer to a structure containing the group information from the file referred to by 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/group (see group(5)).
The group structure is defined in <grp.h> as follows:
struct group {
char *gr_name; /* group name */
char *gr_passwd; /* group password */
gid_t gr_gid; /* group ID */
char **gr_mem; /* NULL-terminated array of pointers
to names of group members */
};
Return value
The fgetgrent() function returns a pointer to a group 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 group structure.
Attributes
For an explanation of the terms used in this section, see attributes(7).
| Interface | Attribute | Value |
| fgetgrent() | Thread safety | MT-Unsafe race:fgetgrent |
Releases
19 releases since Debian 1.1 (Buzz); the text changed 13 times.