endpwent() - ユーザー・データベース関数

標準

標準/拡張機能 C/C++ 依存項目

XPG4.2
Single UNIX Specification、バージョン 3

両方  

形式

#define _XOPEN_SOURCE_EXTENDED 1
#include <pwd.h>

void endpwent(void),
struct passwd *getpwent(void);
void setpwent(void);

機能説明

getpwent() 関数は、<pwd.h> ヘッダー・ファイルに定義された passwd 構造体でマップされる、ユーザー・データベースの行に出現したフィールドを指すポインターを戻します。getpwent() を繰り返し呼び出すと、この関数は、ファイルの終わりに達するまで、データベース内の次の passwd 構造体を指すポインターを戻します。ファイルの終わりに達すると、NULL ポインターを戻します。setpwent() は、この順次検索に割り込んでユーザー・データベースを先頭まで巻き戻し、次の getpwent() が、先頭の passwd 構造体を指すポインターを戻すようにします。ファイル終わり (EOF) 後の次の getpwent() によって、先頭の passwd 構造体を指すポインターが再び戻されるので、ファイル終わり (EOF) 後の setpwent() の使用は、任意です。endpwent() は、検索が完了したときにユーザー・データベースをクローズ するために、任意に使用します。

setpwent() 関数は、検索を繰り返すことができるよう、ユーザー・ データベースを効果的に巻き戻します。

処理の完了時に、endpwent() 関数を呼び出して、ユーザー・データベース をクローズすることもできます。

戻り値

最初に呼び出されたときには、getpwent() は、ユーザー・データベース 内の次の passwd 構造体を指すポインターを戻します。以降の 呼び出しで、この関数は passwd 構造体を指すポインターを戻すか、ファイル終わり (EOF) またはエラーにより NULL ポインターを戻します。戻り値は、呼び出しごとに上書きされる静的データを指す 場合があります。

endpwent() および setpwent() について設定される errno 値はありません。 getpwent() については、正常に実行されなかった場合、getpwemt() は、errno を次のいずれかの値に設定します。
エラー・コード
説明
EMVSSAF2ERR
システム許可機能 (SAF) RACF Get GMAP サービスにエラーがありました。
EMVSSAFEXTRERR
SAF または RACF RACROUTE EXTRACT サービスにエラーがありました。

関連情報