Scroll to navigation

FGETPWENT(3) Руководство программиста Linux FGETPWENT(3)

ИМЯ

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

СИНТАКСИС

#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; /* программная оболочка */ };

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

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

ОШИБКИ

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

ФАЙЛЫ

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

АТРИБУТЫ

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

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

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

SVr4.

СМ. ТАКЖЕ

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

ЗАМЕЧАНИЯ

Эта страница является частью проекта Linux man-pages версии 5.10. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу https://www.kernel.org/doc/man-pages/.

ПЕРЕВОД

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

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.

2 февраля 2018 г. GNU