summaryrefslogtreecommitdiff
path: root/libpod/container.go
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2018-11-08 06:12:14 -0500
committerDaniel J Walsh <dwalsh@redhat.com>2018-11-13 06:33:10 -0500
commitbb6c1cf8d1667c7c8e4d539ea2250a18fa89a58a (patch)
treeccc10929a4dd891fbe1a02f0ed290b3aae5eb5c7 /libpod/container.go
parent900436e70f1a79dff6449fbd9997c4da715ddcc6 (diff)
downloadpodman-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.go12
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
+}