GETGRENT(3) — NEWS-OS Programmer’s Manual
名称
getgrent, getgrgid, getgrnam, setgrent, endgrent, fgetgrent − グループファイルのエントリを得る
形式
#include <grp.h>
struct group ∗getgrent()
struct group ∗getgrgid(gid)
int gid;
struct group ∗getgrnam(name)
char ∗name;
setgrent()
endgrent()
struct group ∗fgetgrent()
FILE ∗f;
解説
getgrent および getgrgid 、 getgrnam はそれぞれ、 次のような構造を 持つ構造体へのポインタを 返します。 この構造体は、 グループファイル中の 1行を いくつかに区切ったフィールドを 含んでいます。
/∗ grp.h 4.183/05/03 ∗/
struct group{/∗ getgrent(3)を参照のこと ∗/
char ∗gr_name;
char ∗gr_passwd;
int gr_gid;
char ∗∗gr_mem;
};
structgroup ∗getgrent(), ∗getgrgid(), ∗getgrnam();
この構造体のメンバは次の通りです。
gr_name グループの名前
gr_passwd グループの暗号化されたパスワード
gr_gid グループID(数字)
gr_mem 個々のメンバ名へのポインタの、 ナルで終わるベクトル
getgrent は、 getgrgid と getgrnam が検索する間、 マッチする gid または name が見つかるまで(またはEOFになるまで)、 次の行を読み込み続けます。 各ルーチンは他のルーチンが止まった場所を 捉えるので、 後続の呼び出しを 使用してファイル全体を 検索することができます。
setgrent への呼び出しは、 グループファイルの巻き戻しの効果を持ち、 これによって検索の繰り返しが可能です。 処理が完了したときには、 endgrent を呼び出して、 グループファイルを クローズすることができます。
fgetgrent は、 ストリーム f の 次の構造体を指すポインタを返します。 ストリームが参照しているオープンファイルは、 グループファイル /etc/group と同一フォーマットでなければなりません。
関連ファイル
/etc/group
関連事項
getlogin(3), getpwent(3), group(5), ypserv(8)
診断
EOFまたはエラーのときには、 ナルポインタ(0)が返されます。
バグ
すべての情報は、 静的領域の中に含まれているため、 セーブしようとする場合には、 コピーしなければなりません。
NEWS-OSRelease 4.1C