summaryrefslogtreecommitdiff
path: root/pkg/lookup
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2018-11-06 06:26:35 -0500
committerDaniel J Walsh <dwalsh@redhat.com>2018-11-07 11:41:51 -0500
commitae68bec75cf59e8a530dbc55f320f7bb0be9a62b (patch)
treebce47104528aefb89debef33de4f4c9b5209f625 /pkg/lookup
parent48914d67aed53ad793d86c98a6a4e96cfefe7333 (diff)
downloadpodman-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')
-rw-r--r--pkg/lookup/lookup.go8
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 {