Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ setpwent(3) — NEWS-os 3.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

getlogin(3)

getgrent(3)

passwd(5)

GETPWENT(3)  —  UNIX Programmer’s Manual

名称

getpwent, getpwgid, getpwnam, setpwent, endpwent, setpwfile  −  パスワードファイルのエントリを得る

形式

#include <pwd.h>

struct passwd ∗getpwuid(uid)
int uid;

struct passwd ∗getpwnam(name)
char ∗name;

struct passwd ∗getpwent()

setpwent()

endpwent()

setpwfile(name)
char ∗name;

解説

Getpwent および getpwuid、 getpwnam はそれぞれ、 次のような構造を 持つ構造体へのポインタを 返します。 構造体は、 パスワードファイルの中の 1行を いくつかに区切ったフィールドを 含んでいます。

/∗pwp.h4.183/05/03∗/
struct passwd{/∗ getpwent(3)を参照のこと  ∗/
char∗pw_name;
char∗pw_passwd;
intpw_uid;
intpw_gid;
intpw_quota;
char∗pw_comment;
char∗pw_gecos;
char∗pw_dir;
char∗pw_shell;
};
 struct passwd ∗getpwent(), ∗getpwuid(), ∗getpwnam();

pw_quata と pw_comment のフィールドは使用されていません。 それ以外は、 passwd(5) で説明されています。

パスワードファイルの検索は、 ndbm というデータベースのアクセスルーチンを 使用して行われます。 setpwent はデータベースを オープンします。 endpwent はこれを クローズします。 getpwuid と getpwnam は、 データベースを 検索して(必要ならオープンして)、 マッチする uid または name を 捜します。 エントリがない場合には、 EOF が返されます。

データベース全体を 読み込みたいプログラムでは、 getpwent は(必要ならばデータベースを オープンして)次の行を 読み込みます。 データベースのオープンに加えて、 getpwent がその検索を データベースの先頭から始めることができるよう、 setpwent を 使用することができます。

setpwfile は、 デフォルトのパスワードファイルを name に変更します。 したがって、 別のパスワードファイルを 使用することができます。 以前のファイルはクローズ しません ので注意してください。 クローズしたければ、 この前に endpwent を 呼び出す必要があります。

関連ファイル

/etc/passwd

関連事項

getlogin(3), getgrent(3), passwd(5)

診断

getpwent、 getpwuid、 getpwnam、 ルーチンでは、 EOFまたはエラーのときに、 ナルポインタ(0)が返されます。

バグ

すべての情報は、 静的領域の中に含まれているため、 セーブしようとする場合には、 コピーしなければなりません。

NEWS-OSRelease 3.3

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026