如何在C语言中放弃Linux的root特权?
我想以非root用户的身份进行fork和exec编程,而父级保留root权限.
伪代码:
pid = fork();
if (pid == 0) {
if (RunAsUser(ConvertStringToUserId("John")) == false) {
stop();
}
if (RunAsUser(ConvertStringToUserId("admin")) == true) {
stop();
}
CreateProcess();
}
解决方法:
如果要在C代码中放弃特权,请使用setuid函数.