FGETGRENT(3)

ИМЯ
fgetgrent - возвращает запись из файла групп

ОБЗОР
#include <stdio.h>
#include <sys/types.h>
#include <grp.h>

struct group *fgetgrent(FILE *stream);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

fgetgrent():
    начиная с glibc 2.19:
        _DEFAULT_SOURCE
    в glibc 2.19 и старее:
        _SVID_SOURCE

ОПИСАНИЕ
Функция fgetgrent() возвращает указатель на структуру, содержащую информацию о группах из файла, на который ссылается stream. Во время первого вызова функция возвращает первую запись; в дальнейшем она возвращает все последующие записи. Формат файла, на который указывает stream, должен быть таким же как у /etc/group (смотрите group(5)).

Структура group определена в <grp.h> следующим образом:

struct group {
    char   *gr_name;        /* имя группы */
    char   *gr_passwd;      /* пароль группы */
    gid_t   gr_gid;         /* ID группы */
    char  **gr_mem;         /* массив, указателей
                               имён членов группы, оканчивающийся NULL */
};

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Функция fgetgrent() возвращает указатель на структуру group или NULL, если больше записей не найдено или произошла ошибка. При ошибке errno присваивается соответствующее значение.

ОШИБКИ

ENOMEM
    Недостаточно памяти для структуры group.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
fgetgrent() | Безвредность в нитях | MT-Unsafe race:fgetgrent

СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4.

СМОТРИТЕ ТАКЖЕ
endgrent(3), fgetgrent_r(3), fopen(3), getgrent(3), getgrgid(3), getgrnam(3), putgrent(3), setgrent(3), group(5)