C中的任何系统调用是否以非root用户模式更改HP-UX中文件的权限?

C中的任何系统调用都以非root用户模式更改HP-UX中文件的权限? 我使用了Chmod系统调用,它在root用户模式下工作,但不在非root用户模式下工作。我觉得setuid系统调用会帮助我,但我不知道如何使用它?所以对我的问题或如何使用setuid的任何新建议。     
已邀请:
chmod()是正确的系统调用,但是如果你没有访问权限来更改文件的权限那么你运气不好。 正如您当前可以想象的那样,更改您无权更改权限的文件的权限会产生一个巨大的安全漏洞。 Wrt setuid(),往往仅限于超级用户或setuid位设置的程序。同样,出于明显的安全原因,随机用户在一般情况下不能将自己改变为其他随机用户。 因此,如果您希望chmod()在没有任何超级用户权限的情况下工作,解决方案是进程UID必须与您尝试更改权限的文件的所有者相同。     

要回复问题请先登录注册