GETPW(3) | 리눅스 프로그래머 매뉴얼 | GETPW(3) |
이름¶
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@soback.kornet.net>, 2001년 4월 30일
1996년 5월 27일 | GNU |