We need xsetuid() and xsetgid() because per-user process resource limits can
prevent a process from switching to a user that has too many processes, and when that happens WE'RE STILL ROOT. See http://lwn.net/Articles/190331/
This commit is contained in:
@ -282,3 +282,15 @@ char *itoa(int n)
|
||||
return local_buf;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef L_setuid
|
||||
void xsetgid(gid_t gid)
|
||||
{
|
||||
if (setgid(gid)) bb_error_msg_and_die("setgid");
|
||||
}
|
||||
|
||||
void xsetuid(uid_t uid)
|
||||
{
|
||||
if (setuid(uid)) bb_error_msg_and_die("setuid");
|
||||
}
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user