ОБЗОР
#include <stdio.h>
#include <sys/types.h>
#include <grp.h>
struct group *fgetgrent(FILE *stream);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
fgetgrent(): _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) |

