diff --git a/src/PVE/Syscall.pm b/src/PVE/Syscall.pm index 0f50c63..a2903b7 100644 --- a/src/PVE/Syscall.pm +++ b/src/PVE/Syscall.pm @@ -13,6 +13,7 @@ BEGIN { close => &SYS_close, mkdirat => &SYS_mkdirat, faccessat => &SYS_faccessat, + setresuid => &SYS_setresuid, ); }; diff --git a/src/PVE/Tools.pm b/src/PVE/Tools.pm index 189b552..4dd073f 100644 --- a/src/PVE/Tools.pm +++ b/src/PVE/Tools.pm @@ -1384,6 +1384,11 @@ sub parse_host_and_port { return; # nothing } +sub setresuid($$$) { + my ($ruid, $euid, $suid) = @_; + return 0 == syscall(PVE::Syscall::setresuid, $ruid, $euid, $suid); +} + sub unshare($) { my ($flags) = @_; return 0 == syscall(PVE::Syscall::unshare, $flags);