Skip to content

Commit

Permalink
Merge pull request #8693 from giuseppe/drop-valid-id-in-userns-check
Browse files Browse the repository at this point in the history
podman: drop checking valid rootless UID
  • Loading branch information
openshift-merge-robot authored Dec 14, 2020
2 parents e5741b9 + f711f5a commit 803c078
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 38 deletions.
11 changes: 0 additions & 11 deletions cmd/podman/containers/run.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package containers
import (
"fmt"
"os"
"strconv"
"strings"

"github.com/containers/common/pkg/completion"
Expand All @@ -15,7 +14,6 @@ import (
"github.com/containers/podman/v2/pkg/errorhandling"
"github.com/containers/podman/v2/pkg/rootless"
"github.com/containers/podman/v2/pkg/specgen"
"github.com/containers/podman/v2/pkg/util"
"github.com/pkg/errors"
"github.com/sirupsen/logrus"
"github.com/spf13/cobra"
Expand Down Expand Up @@ -108,15 +106,6 @@ func run(cmd *cobra.Command, args []string) error {
return err
}

if rootless.IsRootless() && !registry.IsRemote() {
userspec := strings.SplitN(cliVals.User, ":", 2)[0]
if uid, err := strconv.ParseInt(userspec, 10, 32); err == nil {
if err := util.CheckRootlessUIDRange(int(uid)); err != nil {
return err
}
}
}

if af := cliVals.Authfile; len(af) > 0 {
if _, err := os.Stat(af); err != nil {
return err
Expand Down
5 changes: 0 additions & 5 deletions libpod/container_internal_linux.go
Original file line number Diff line number Diff line change
Expand Up @@ -424,11 +424,6 @@ func (c *Container) generateSpec(ctx context.Context) (*spec.Spec, error) {
}

if c.config.User != "" {
if rootless.IsRootless() {
if err := util.CheckRootlessUIDRange(execUser.Uid); err != nil {
return nil, err
}
}
// User and Group must go together
g.SetProcessUID(uint32(execUser.Uid))
g.SetProcessGID(uint32(execUser.Gid))
Expand Down
17 changes: 0 additions & 17 deletions pkg/util/utils_linux.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import (
"path/filepath"
"syscall"

"github.com/containers/podman/v2/pkg/rootless"
"github.com/containers/psgo"
"github.com/pkg/errors"
"github.com/sirupsen/logrus"
Expand Down Expand Up @@ -53,19 +52,3 @@ func FindDeviceNodes() (map[string]string, error) {

return nodes, nil
}

// CheckRootlessUIDRange checks the uid within the rootless container is in the range from /etc/subuid
func CheckRootlessUIDRange(uid int) error {
uids, _, err := rootless.GetConfiguredMappings()
if err != nil {
return err
}
total := 0
for _, u := range uids {
total += u.Size
}
if uid > total {
return errors.Errorf("requested user's UID %d is too large for the rootless user namespace", uid)
}
return nil
}
5 changes: 0 additions & 5 deletions pkg/util/utils_unsupported.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,3 @@ import (
func FindDeviceNodes() (map[string]string, error) {
return nil, errors.Errorf("not supported on non-Linux OSes")
}

// CheckRootlessUIDRange is not implemented anywhere except Linux.
func CheckRootlessUIDRange(uid int) error {
return nil
}

0 comments on commit 803c078

Please sign in to comment.