fgetpwent(3) Library Functions Manual fgetpwent(3)

ИМЯ

fgetpwent - получает записи из файла паролей

Standard C library (libc, -lc)

СИНТАКСИС

#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>
struct passwd *fgetpwent(FILE *stream);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

fgetpwent():

    начиная с glibc 2.19:
        _DEFAULT_SOURCE
    glibc 2.19 и старее:
        _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;      /* программная оболочка */
};

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

The fgetpwent() function returns a pointer to a passwd 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.

ОШИБКИ

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

ФАЙЛЫ

/etc/passwd
файл, содержащий базу паролей

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
fgetpwent() Безвредность в нитях MT-Unsafe race:fgetpwent

СТАНДАРТЫ

None.

ИСТОРИЯ

SVr4.

СМОТРИТЕ ТАКЖЕ

endpwent(3), fgetpwent_r(3), fopen(3), getpw(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику по его адресу электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Linux man-pages 6.8