getpw
取得指定用户的密码文件数据
相关函数
getpwent
表头文件
#include<pwd.h>
#include<sys/types.h>
定义函数
int getpw(uid_t uid,char *buf);
函数说明
getpw()会从/etc/passwd中查找符合参数uid所指定的用户账号数据,找不到相关数据就返回-1。所返回的buf字符串格式如下:账号:密码:用户识别码(uid):组识别码(gid):全名:根目录:shell
返回值
返回0表示成功,有错误发生时返回-1。
附加说明
- getpw()会有潜在的安全性问题,请尽量使用别的函数取代。
- 使用shadow的系统已把用户密码抽出/etc/passwd,因此使用getpw()取得的密码将为“x”。
范例
#include<pwd.h>
#include<sys/types.h>
main()
{
char buffer[80];
getpw(0,buffer);
printf(“%s\n”,buffer);
}
执行
root:x:0:0:root:/root:/bin/bash