diff options
author | Daniel J Walsh <dwalsh@redhat.com> | 2018-11-08 06:12:14 -0500 |
---|---|---|
committer | Daniel J Walsh <dwalsh@redhat.com> | 2018-11-13 06:33:10 -0500 |
commit | bb6c1cf8d1667c7c8e4d539ea2250a18fa89a58a (patch) | |
tree | ccc10929a4dd891fbe1a02f0ed290b3aae5eb5c7 /libpod/container.go | |
parent | 900436e70f1a79dff6449fbd9997c4da715ddcc6 (diff) | |
download | podman-bb6c1cf8d1667c7c8e4d539ea2250a18fa89a58a.tar.gz podman-bb6c1cf8d1667c7c8e4d539ea2250a18fa89a58a.tar.bz2 podman-bb6c1cf8d1667c7c8e4d539ea2250a18fa89a58a.zip |
libpod should know if the network is disabled
/etc/resolv.conf and /etc/hosts should not be created and mounted when the
network is disabled.
We should not be calling the network setup and cleanup functions when it is
disabled either.
In doing this patch, I found that all of the bind mounts were particular to
Linux along with the generate functions, so I moved them to
container_internal_linux.go
Since we are checking if we are using a network namespace, we need to check
after the network namespaces has been created in the spec.
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'libpod/container.go')
-rw-r--r-- | libpod/container.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libpod/container.go b/libpod/container.go index 7bb5b2687..16f61d021 100644 --- a/libpod/container.go +++ b/libpod/container.go @@ -996,3 +996,15 @@ func (c *Container) IsInfra() bool { func (c *Container) IsReadOnly() bool { return c.config.Spec.Root.Readonly } + +// NetworkDisabled returns whether the container is running with a disabled network +func (c *Container) NetworkDisabled() bool { + if !c.config.PostConfigureNetNS { + for _, ns := range c.config.Spec.Linux.Namespaces { + if ns.Type == spec.NetworkNamespace { + return ns.Path == "" + } + } + } + return false +} |