最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言中設(shè)置用戶識別碼的相關(guān)函數(shù)的簡單講解

 更新時(shí)間:2015年08月28日 16:58:56   投稿:goldensun  
這篇文章主要介紹了C語言中設(shè)置用戶識別碼的相關(guān)函數(shù)的簡單講解,包括setuid()函數(shù)和setreuid()函數(shù)以及setfsuid()函數(shù),需要的朋友可以參考下

C語言setuid()函數(shù):設(shè)置真實(shí)的用戶識別碼

頭文件:

#include <unistd.h>

定義函數(shù):

int setuid(uid_t uid);

函數(shù)說明:
setuid()用來重新設(shè)置執(zhí)行目前進(jìn)程的用戶識別碼. 不過, 要讓此函數(shù)有作用, 其有效的用戶識別碼必須為0(root). 在Linux 下, 當(dāng)root 使用setuid()來變換成其他用戶識別碼時(shí), root 權(quán)限會被拋棄, 完全轉(zhuǎn)換成該用戶身份, 也就是說, 該進(jìn)程往后將不再具有可setuid()的權(quán)利, 如果只是向暫時(shí)拋棄root 權(quán)限, 稍后想重新取回權(quán)限, 則必須使用seteuid().

返回值:執(zhí)行成功則返回0, 失敗則返回-1, 錯(cuò)誤代碼存于errno.

附加說明:一般在編寫具 setuid root 的程序時(shí), 為減少此類程序帶來的系統(tǒng)安全風(fēng)險(xiǎn), 在使用完root 權(quán)限后建議馬上執(zhí)行setuid(getuid());來拋棄root 權(quán)限. 此外, 進(jìn)程uid 和euid 不一致時(shí)Linux 系統(tǒng)將不會產(chǎn)生core dump.

C語言setreuid()函數(shù):設(shè)置真實(shí)及有效的用戶識別碼

頭文件:

#include <unistd.h>

定義函數(shù):

int setreuid(uid_t ruid, uid_t euid);

函數(shù)說明:setreuid()用來將參數(shù)ruid 設(shè)為目前進(jìn)程的真實(shí)用戶識別碼, 將參數(shù)euid 設(shè)置為目前進(jìn)程的有效用戶識別碼. 如果參數(shù)ruid 或euid 值為-1, 則對應(yīng)的識別碼不會改變。

返回值:執(zhí)行成功則返回0, 失敗則返回-1, 錯(cuò)誤代碼存于errno.

C語言setfsuid()函數(shù):設(shè)置文件系統(tǒng)的用戶識別碼
頭文件:

 #include <unistd.h>

定義函數(shù):

int setfsuid(uid_t fsuid);

函數(shù)說明:setfsuid()用來重新設(shè)置目前進(jìn)程的文件系統(tǒng)的用戶識別碼. 一般情況下, 文件系統(tǒng)的用戶識別碼(fsuid)與有效的用戶識別碼(euid)是相同的. 如果是超級用戶調(diào)用此函數(shù), 參數(shù)fsuid 可以為任何值, 否則參數(shù)fsuid 必須為real/effective/saved 的用戶識別碼之一.

返回值:執(zhí)行成功則返回0, 失敗則返回-1, 錯(cuò)誤代碼存于errno 附加說明此函數(shù)為 Linux 特有

錯(cuò)誤代碼:
EPERM:權(quán)限不夠, 無法完成設(shè)置.

相關(guān)文章

最新評論

富阳市| 林周县| 高唐县| 盈江县| 泾川县| 大丰市| 邓州市| 嵩明县| 伊通| 东兰县| 叶城县| 安阳县| 平凉市| 河曲县| 涟水县| 苏尼特左旗| 额尔古纳市| 清镇市| 唐河县| 海林市| 安新县| 保亭| 博乐市| 阳东县| 沅江市| 泰安市| 黄浦区| 廊坊市| 子洲县| 武鸣县| 马鞍山市| 齐齐哈尔市| 曲水县| 泰州市| 晋城| 晋中市| 都江堰市| 邵阳县| 武义县| 门源| 邵东县|