C语言setgid()函数:设置真实的组识别码
头文件:
1
|
#include <unistd.h>
|
定义函数:
1
|
int setgid(gid_t gid);
|
函数说明:setgid()用来将目前进程的真实组识别码(real gid)设成参数gid 值. 如果是以超级用户身份执行此调用, 则real、effective 与savedgid 都会设成参数gid。
返回值:设置成功则返回0, 失败则返回-1, 错误代码存于errno 中.
错误代码:
EPERM:并非以超级用户身份调用, 而且参数gid 并非进程的effective gid 或saved gid 值之一.
C语言setregid()函数:设置真实及有效的组识别码
头文件:
1
|
#include <unistd.h>
|
定义函数:
1
|
int setregid(gid_t rgid, gid_t egid);
|
函数说明:setregid()用来将参数rgid 设为目前进程的真实组识别码, 将参数egid 设置为目前进程的有效组识别码. 如果参数rgid 或egid 值为-1, 则对应的识别码不会改变。
返回值:执行成功则返回0, 失败则返回-1, 错误代码存于errno.