mirror of
https://github.com/containers/podman.git
synced 2025-06-21 17:38:12 +08:00
system: enhance check for re-exec into rootless userns
Previously, the setup only checked for the CAP_SYS_ADMIN capability, which could be not enough with containerized Podman where CAP_SYS_ADMIN might be set for an unprivileged user. Closes: https://github.com/containers/podman/issues/20766 [NO NEW TESTS NEEDED] needs containerized Podman Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
@ -88,7 +88,8 @@ func (ic *ContainerEngine) SetupRootless(_ context.Context, noMoveProcess bool)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if hasCapSysAdmin {
|
||||
// check for both euid == 0 and CAP_SYS_ADMIN because we may be running in a container with CAP_SYS_ADMIN set.
|
||||
if os.Geteuid() == 0 && hasCapSysAdmin {
|
||||
ownsCgroup, err := cgroups.UserOwnsCurrentSystemdCgroup()
|
||||
if err != nil {
|
||||
logrus.Infof("Failed to detect the owner for the current cgroup: %v", err)
|
||||
|
Reference in New Issue
Block a user