getpwのヘルプ・マニュアル
日本語 英語
getpw --help
man getpw
GETPW(3) Linux Programmer’s Manual GETPW(3)
名前
getpw - パスワード行エントリを取得する
書式
#define _GNU_SOURCE
#include
#include
int getpw(uid_t uid, char *buf);
説明
getpw() 関数は、バッファ buf に指定ユーザ ID uid のパスワード行エント
リを取得する。返されるバッファは、以下の形式の行を含む。
name:passwd:uid:gid:gecos:dir:shell
passwd 構造体は で以下のように定義されている:
struct passwd {
char *pw_name; /* username */
char *pw_passwd; /* user password */
uid_t pw_uid; /* user ID */
gid_t pw_gid; /* group ID */
char *pw_gecos; /* real name */
char *pw_dir; /* home directory */
char *pw_shell; /* shell program */
};
返り値
getpw() 関数は、成功した場合 0 を返す; エラーが発生した場合 -1 を返し、
エラーを示すために error がセットされる。
エラー
EINVAL buf が NULL。
ENOENT uid に対応するユーザがいない。
ENOMEM passwd 構造体を割り当てるためのメモリが不十分。
ファイル
/etc/passwd
パスワードデータベースファイル
準拠
SVr2
バグ
getpw() 関数は、与えられたバッファ buf がオーバーフローするかもしれない
ので危険である。この関数は getpwuid(3) によって古いものとなった。
関連項目
endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putp-
went(3), setpwent(3), passwd(5)
GNU 2007-07-26 GETPW(3)
GETPW(3) Linux Programmer’s Manual GETPW(3)
NAME
getpw - Re-construct password line entry
SYNOPSIS
#define _GNU_SOURCE
#include
#include
int getpw(uid_t uid, char *buf);
DESCRIPTION
The getpw() function re-constructs the password line entry for the
given user ID uid in the buffer buf. The returned buffer contains a
line of format
name:passwd:uid:gid:gecos:dir:shell
The passwd structure is defined in as follows:
struct passwd {
char *pw_name; /* username */
char *pw_passwd; /* user password */
uid_t pw_uid; /* user ID */
gid_t pw_gid; /* group ID */
char *pw_gecos; /* real name */
char *pw_dir; /* home directory */
char *pw_shell; /* shell program */
};
RETURN VALUE
The getpw() function returns 0 on success; on error, it returns -1, and
errno is set to indicate the error.
ERRORS
EINVAL buf is NULL.
ENOENT No user corresponding to uid.
ENOMEM Insufficient memory to allocate passwd structure.
FILES
/etc/passwd
password database file
CONFORMING TO
SVr2.
BUGS
The getpw() function is dangerous as it may overflow the provided
buffer buf. It is obsoleted by getpwuid(3).
SEE ALSO
endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putp-
went(3), setpwent(3), passwd(5)
COLOPHON
This page is part of release 3.22 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
GNU 2007-12-12 GETPW(3)