diff options
author | Daniel J Walsh <dwalsh@redhat.com> | 2018-11-06 06:26:35 -0500 |
---|---|---|
committer | Daniel J Walsh <dwalsh@redhat.com> | 2018-11-07 11:41:51 -0500 |
commit | ae68bec75cf59e8a530dbc55f320f7bb0be9a62b (patch) | |
tree | bce47104528aefb89debef33de4f4c9b5209f625 /pkg/lookup/lookup.go | |
parent | 48914d67aed53ad793d86c98a6a4e96cfefe7333 (diff) | |
download | podman-ae68bec75cf59e8a530dbc55f320f7bb0be9a62b.tar.gz podman-ae68bec75cf59e8a530dbc55f320f7bb0be9a62b.tar.bz2 podman-ae68bec75cf59e8a530dbc55f320f7bb0be9a62b.zip |
Don't fail if /etc/passwd or /etc/group does not exists
Container images can be created without passwd or group file, currently
if one of these containers gets run with a --user flag the container blows
up complaining about t a missing /etc/passwd file.
We just need to check if the error on read is ENOEXIST then allow the
read to return, not fail.
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'pkg/lookup/lookup.go')
-rw-r--r-- | pkg/lookup/lookup.go | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/pkg/lookup/lookup.go b/pkg/lookup/lookup.go index b27e2a724..a9d975b4b 100644 --- a/pkg/lookup/lookup.go +++ b/pkg/lookup/lookup.go @@ -1,10 +1,12 @@ package lookup import ( + "os" + "strconv" + "github.com/cyphar/filepath-securejoin" "github.com/opencontainers/runc/libcontainer/user" "github.com/sirupsen/logrus" - "strconv" ) const ( @@ -116,7 +118,7 @@ func GetUser(containerMount, userIDorName string) (*user.User, error) { } return u.Uid == uid }) - if err != nil { + if err != nil && !os.IsNotExist(err) { return nil, err } if len(users) > 0 { @@ -146,7 +148,7 @@ func GetGroup(containerMount, groupIDorName string) (*user.Group, error) { } return g.Gid == gid }) - if err != nil { + if err != nil && !os.IsNotExist(err) { return nil, err } if len(groups) > 0 { |