| Developer's Daily | Unix by Example |
| main | java | perl | unix | dev directory | web log |
|
getpw − Re-construct password line entry |
#include <pwd.h> #include <sys/types.h> int getpw(uid_t uid, char *buf); |
|
The getpw() function re-constructs the password line entry for the given user uid 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 <pwd.h> as follows: |
struct passwd {
|
|
/* user name */ |
|||
|
/* user password */ |
|||
|
/* user id */ |
|||
|
/* group id */ |
|
char *pw_gecos; /* real name */ |
|
/* home directory */ |
|
char *pw_shell; /* shell program */ |
|
The getpw() function returns 0 on success, or −1 if an error occurs. |
|
ENOMEM |
Insufficient memory to allocate passwd structure. |
|
/etc/passwd |
|
password database file |
|
SYSVr2. |
|
The getpw() function is dangerous as it may overflow the provided buffer buf. It is obsoleted by getpwuid(). |
|
fgetpwent(3), getpwent(3), setpwent(3), endpwent(3), getpwnam(3), getpwuid(3), putpwent(3), passwd(5) |