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

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

C語言

當前位置:主頁 > 軟件編程 > C語言 >

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

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊: 次

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

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

定義函數(shù):

int getpw(uid_t uid, char *buf);

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

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

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

附加說明
1. getpw()會有潛在的安全性問題, 請盡量使用別的函數(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語言getpwnam()函數(shù):從密碼文件中取得指定賬號的數(shù)據(jù)
頭文件:

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

定義函數(shù):

struct passwd * getpwnam(const char * name);

函數(shù)說明:getpwnam()用來逐一搜索參數(shù)name 指定的賬號名稱, 找到時便將該用戶的數(shù)據(jù)以passwd 結構返回。passwd 結構請參考getpwent()。

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

范例

/*取得root 賬號的識別碼和根目錄 */
#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語言getpwuid()函數(shù):從密碼文件中取得指定uid的數(shù)據(jù)
頭文件:

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

定義函數(shù):

struct passwd * getpwuid(uid_t uid);

函數(shù)說明:getpwuid()用來逐一搜索參數(shù)uid 指定的用戶識別碼, 找到時便將該用戶的數(shù)據(jù)以結構返回結構請參考將該用戶的數(shù)據(jù)以passwd 結構返回. passwd 結構請參考getpwent()。

返回值:返回 passwd 結構數(shù)據(jù), 如果返回NULL 則表示已無數(shù)據(jù), 或者有錯誤發(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)頁制作CMS教程網(wǎng)絡編程軟件編程腳本語言數(shù)據(jù)庫服務器

如果侵犯了您的權利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導致的法律后果,本站均不負任何責任。

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

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