欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來(lái)到入門教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

C語(yǔ)言編程中從密碼文件獲取數(shù)據(jù)的函數(shù)總結(jié)

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊: 次

C語(yǔ)言getpw()函數(shù):取得指定用戶的密碼文件數(shù)據(jù)
頭文件:

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

定義函數(shù):

int getpw(uid_t uid, char *buf);

函數(shù)說(shuō)明:getpw()會(huì)從/etc/passwd中查找符合參數(shù)uid所指定的用戶賬號(hào)數(shù)據(jù), 找不到相關(guān)數(shù)據(jù)就返回-1。

所返回的buf 字符串格式如下:
賬號(hào):密碼:用戶識(shí)別碼(uid):組識(shí)別碼(gid):全名:根目錄:shell

返回值:返回 0 表示成功, 有錯(cuò)誤發(fā)生時(shí)返回-1.

附加說(shuō)明
1. getpw()會(huì)有潛在的安全性問(wèn)題, 請(qǐng)盡量使用別的函數(shù)取代。
2. 使用shadow 的系統(tǒng)已把用戶密碼抽出/etc/passwd, 因此使用getpw()取得的密碼將為"x"。

范例

#include <pwd.h>
#include <sys/types.h>
main()
{
  char buffer[80];
  getpw(0, buffer);
  printf("%s\n", buffer);
}

執(zhí)行:

root:x:0:0:root:/root:/bin/bash


C語(yǔ)言getpwnam()函數(shù):從密碼文件中取得指定賬號(hào)的數(shù)據(jù)
頭文件:

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

定義函數(shù):

struct passwd * getpwnam(const char * name);

函數(shù)說(shuō)明:getpwnam()用來(lái)逐一搜索參數(shù)name 指定的賬號(hào)名稱, 找到時(shí)便將該用戶的數(shù)據(jù)以passwd 結(jié)構(gòu)返回。passwd 結(jié)構(gòu)請(qǐng)參考getpwent()。

返回值:返回 passwd 結(jié)構(gòu)數(shù)據(jù), 如果返回NULL 則表示已無(wú)數(shù)據(jù), 或有錯(cuò)誤發(fā)生.

范例

/*取得root 賬號(hào)的識(shí)別碼和根目錄 */
#include <pwd.h>
#include <sys/types.h>
main()
{
  struct passwd *user;
  user = getpwnam("root");
  printf("name:%s\n", user->pw_name);
  printf("uid:%d\n", user->pw_uid);
  printf("home:%s\n", user->pw_dir);
}

執(zhí)行:

name:root
uid:0
home:/root

C語(yǔ)言getpwuid()函數(shù):從密碼文件中取得指定uid的數(shù)據(jù)
頭文件:

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

定義函數(shù):

struct passwd * getpwuid(uid_t uid);

函數(shù)說(shuō)明:getpwuid()用來(lái)逐一搜索參數(shù)uid 指定的用戶識(shí)別碼, 找到時(shí)便將該用戶的數(shù)據(jù)以結(jié)構(gòu)返回結(jié)構(gòu)請(qǐng)參考將該用戶的數(shù)據(jù)以passwd 結(jié)構(gòu)返回. passwd 結(jié)構(gòu)請(qǐng)參考getpwent()。

返回值:返回 passwd 結(jié)構(gòu)數(shù)據(jù), 如果返回NULL 則表示已無(wú)數(shù)據(jù), 或者有錯(cuò)誤發(fā)生.

范例

#include <pwd.h>
#include <sys/types.h>
main()
{
  struct passwd *user;
  user= getpwuid(6);
  printf("name:%s\n", user->pw_name);
  printf("uid:%d\n", user->pw_uid);
  printf("home:%s\n", user->pw_dir);
}

執(zhí)行:

name:shutdown
uid:6
home:/sbin

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有