简要对比C语言中的setgid()函数和setregid()函数

时间:2021-05-19

C语言setgid()函数:设置真实的组识别码
头文件:

#include <unistd.h>

定义函数:

int setgid(gid_t gid);

函数说明:setgid()用来将目前进程的真实组识别码(real gid)设成参数gid 值. 如果是以超级用户身份执行此调用, 则real、effective 与savedgid 都会设成参数gid。

返回值:设置成功则返回0, 失败则返回-1, 错误代码存于errno 中.

错误代码:
EPERM:并非以超级用户身份调用, 而且参数gid 并非进程的effective gid 或saved gid 值之一.

C语言setregid()函数:设置真实及有效的组识别码
头文件:

#include <unistd.h>

定义函数:

int setregid(gid_t rgid, gid_t egid);

函数说明:setregid()用来将参数rgid 设为目前进程的真实组识别码, 将参数egid 设置为目前进程的有效组识别码. 如果参数rgid 或egid 值为-1, 则对应的识别码不会改变。

返回值:执行成功则返回0, 失败则返回-1, 错误代码存于errno.

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章