Manpages

이 름

getpw − 패 스 워 드 라 인 엔 트 리 를 다 시 생 성 한 다 .

사 용 법

#include <pwd.h>
#include <sys/types.h>

int getpw(uid_t uid, char *buf);

설 명

getpw() 함 수 는 버 퍼 buf에 주 어 진 사 용 자 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; /* shell 프 로 그 램 */
};

반 환 값

getpw() 함 수 는 성 공 시 0을 반 환 하 거 나 에 러 라 면 −1 을 반 환 한 다 .

에 러

ENOMEM

패 스 워 드 구 조 체 를 할 당 하 기 위 한 메 모 리 가 충 분 하 지 않 다 .

파 일

/etc/passwd

패 스 워 드 데 이 터 베 이 스 파 일

호 환

SYSVr2.

버 그

getpw() 함 수 는 제 공 되 는 버 퍼 buf 를 오 버 플 로 우 할 지 모 르 기 때 문 에 위 험 하 다 . 이 함 수 는 getpwuid()에 의 해 구 식 이 되 었 다 .

관 련 항 목

fgetpwent(3), getpwent(3), setpwent(3), endpwent(3), getpwnam(3), getpwuid(3), putpwent(3), passwd(5) 정 강 훈 <skyeyes [AT] soback.net>, 2001년 4월 30일