Be explicit when setting euid to 0 before call to setreuid(0, 0)
This commit is contained in:
@@ -383,9 +383,7 @@ set_perms(int perm)
|
|||||||
* setreuid(0, 0) may fail on some systems
|
* setreuid(0, 0) may fail on some systems
|
||||||
* when the euid is not already 0.
|
* when the euid is not already 0.
|
||||||
*/
|
*/
|
||||||
state->ruid = -1;
|
if (setreuid(-1, ROOT_UID)) {
|
||||||
state->euid = ROOT_UID;
|
|
||||||
if (setreuid(ID(ruid), ID(euid))) {
|
|
||||||
errstr = "setreuid(-1, ROOT_UID)";
|
errstr = "setreuid(-1, ROOT_UID)";
|
||||||
goto bad;
|
goto bad;
|
||||||
}
|
}
|
||||||
@@ -394,6 +392,7 @@ set_perms(int perm)
|
|||||||
goto bad;
|
goto bad;
|
||||||
}
|
}
|
||||||
state->ruid = ROOT_UID;
|
state->ruid = ROOT_UID;
|
||||||
|
state->euid = ROOT_UID;
|
||||||
state->rgid = -1;
|
state->rgid = -1;
|
||||||
state->egid = -1;
|
state->egid = -1;
|
||||||
state->groups = NULL;
|
state->groups = NULL;
|
||||||
|
Reference in New Issue
Block a user