fgetpwent(3) получает записи из файла паролей

ОБЗОР

#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>


struct passwd *fgetpwent(FILE *stream);

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

fgetpwent(): _SVID_SOURCE

ОПИСАНИЕ

Функция fgetpwent() возвращает указатель на структуру, содержащую отдельные поля строки файла stream. Во время первого вызова функция возвращает первую запись; в дальнейшем она возвращает все последующие записи. Формат файла stream должен быть таким же как у /etc/passwd (смотрите passwd(5)).

Структура passwd определена в <pwd.h> таким образом:

struct passwd {
    char   *pw_name;       /* имя пользователя */
    char   *pw_passwd;     /* пароль пользователя */
    uid_t   pw_uid;        /* идентификатор пользователя */
    gid_t   pw_gid;        /* идентификатор группы */
    char   *pw_gecos;      /* настоящее имя */
    char   *pw_dir;        /* домашний каталог */
    char   *pw_shell;      /* программная оболочка */
};

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

Функция fgetpwent() возвращает указатель на структуру passwd или NULL, если больше паролей не найдено или произошла ошибка. При ошибке errno присваивается соответствующее значение.

ОШИБКИ

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

ФАЙЛЫ

/etc/passwd
файл, содержащий базу паролей
ИнтерфейсАтрибутЗначение
fgetpwent() безвредность в нитяхнебезопасно (MT-Unsafe race:fgetpwent)

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

SVr4.