summaryrefslogtreecommitdiff
path: root/pkg/specgen/generate/namespaces.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2022-06-02 08:48:07 -0400
committerGitHub <noreply@github.com>2022-06-02 08:48:07 -0400
commit8b972ff8ca2d44d7d724d84e00bec3afb90feb20 (patch)
treecea7add9a3326c0bbdfba3651625224010868b28 /pkg/specgen/generate/namespaces.go
parente60c41657b47584d99a16e5ba5bac253063c2fb4 (diff)
parent2805c7353b15679d66eec988949bb79e1e320805 (diff)
downloadpodman-8b972ff8ca2d44d7d724d84e00bec3afb90feb20.tar.gz
podman-8b972ff8ca2d44d7d724d84e00bec3afb90feb20.tar.bz2
podman-8b972ff8ca2d44d7d724d84e00bec3afb90feb20.zip
Merge pull request #14436 from Luap99/net-remote-default
pkg/specgen: parse default network mode on server
Diffstat (limited to 'pkg/specgen/generate/namespaces.go')
-rw-r--r--pkg/specgen/generate/namespaces.go12
1 files changed, 6 insertions, 6 deletions
diff --git a/pkg/specgen/generate/namespaces.go b/pkg/specgen/generate/namespaces.go
index 37d561ec2..4dd6b3eaf 100644
--- a/pkg/specgen/generate/namespaces.go
+++ b/pkg/specgen/generate/namespaces.go
@@ -236,10 +236,12 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod.
toReturn = append(toReturn, libpod.WithCgroupsMode(s.CgroupsMode))
}
- // Net
- // TODO validate CNINetworks, StaticIP, StaticIPv6 are only set if we
- // are in bridge mode.
postConfigureNetNS := !s.UserNS.IsHost()
+ // when we are rootless we default to slirp4netns
+ if rootless.IsRootless() && (s.NetNS.IsPrivate() || s.NetNS.IsDefault()) {
+ s.NetNS.NSMode = specgen.Slirp
+ }
+
switch s.NetNS.NSMode {
case specgen.FromPod:
if pod == nil || infraCtr == nil {
@@ -262,9 +264,7 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod.
val = fmt.Sprintf("slirp4netns:%s", s.NetNS.Value)
}
toReturn = append(toReturn, libpod.WithNetNS(portMappings, expose, postConfigureNetNS, val, nil))
- case specgen.Private:
- fallthrough
- case specgen.Bridge:
+ case specgen.Bridge, specgen.Private, specgen.Default:
portMappings, expose, err := createPortMappings(s, imageData)
if err != nil {
return nil, err