Man page - getpw(3)

Packages contains this manual

Available languages:

en fr es pl ja ru ro de

Manual

GETPW

名 前
書 式
説 明
返 り 値
エ ラ ー
フ ァ イ ル
属 性
準 拠
バ グ
関 連 項 目
こ の 文 書 に つ い て

名 前

getpw - パ ス ワ ー ド 行 エ ン ト リ ー を 取 得 す る

書 式

#define _GNU_SOURCE /* feature_test_macros(7) 参 照 */
#include <sys/types.h>
#include <pwd.h>

int getpw(uid_t uid , char * buf );

説 明

getpw () 関 数 は 、 バ ッ フ ァ ー buf に 指 定 ユ ー ザ ー ID uid の パ ス ワ ー ド 行 エ ン ト リ ー を 取 得 す る 。 返 さ れ る バ ッ フ ァ ー は 、 以 下 の 形 式 の 行 を 含 む 。

name:passwd:uid:gid:gecos:dir:shell

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; /* シ ェ ル プ ロ グ ラ ム */
};

こ の 構 造 体 の フ ィ ー ル ド の 詳 細 は passwd (5) を 参 照 の こ と 。

返 り 値

getpw () 関 数 は 、 成 功 し た 場 合 0 を 返 す ; エ ラ ー が 発 生 し た 場 合 -1 を 返 し 、 エ ラ ー を 示 す た め に errno が セ ッ ト さ れ る 。

uid が パ ス ワ ー ド デ ー タ ベ ー ス に 見 つ か ら な い 場 合 、 getpw () は -1 を 返 し 、 errno に 0 を 設 定 し 、 buf は 変 更 し な い 。

エ ラ ー

0 ま た は ENOENT

uid に 対 応 す る ユ ー ザ ー が い な い 。

EINVAL

buf が NULL。

ENOMEM

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

フ ァ イ ル

/etc/passwd

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

属 性

こ の 節 で 使 用 さ れ て い る 用 語 の 説 明 に つ い て は 、 attributes (7) を 参 照 。

Image grohtml-35080-1.png

準 拠

SVr2

バ グ

getpw () 関 数 は 、 与 え ら れ た バ ッ フ ァ ー buf が オ ー バ ー フ ロ ー す る か も し れ な い の で 危 険 で あ る 。 こ の 関 数 は getpwuid (3) に よ っ て 古 い も の と な っ た 。

関 連 項 目

endpwent (3), fgetpwent (3), getpwent (3), getpwnam (3), getpwuid (3), putpwent (3), setpwent (3), passwd (5)

こ の 文 書 に つ い て

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