FGETPWENT(3)

名前
fgetpwent - パスワードファイルエントリーの取り出し

書式
#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;        /* ユーザー ID */
    gid_t   pw_gid;        /* グループ ID */
    char   *pw_gecos;      /* 実名 */
    char   *pw_dir;        /* ホームディレクトリ */
    char   *pw_shell;      /* シェルプログラム */
};

返り値
fgetpwent() 関数は、 passwd 構造体へのポインターを返す。 これ以上エントリーが無いか、エラーが発生した場合は NULL を返す。 エラーの場合、 errno に原因を示す値が設定される。

エラー

ENOMEM
    passwd 構造体に割り当てるメモリーが十分なかった。

ファイル

/etc/passwd
    パスワードデータベースファイル

準拠
SVr4.

関連項目
endpwent(3), fgetpwent_r(3), fopen(3), getpw(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。