| package oci // import "github.com/docker/docker/oci" |
| |
| import specs "github.com/opencontainers/runtime-spec/specs-go" |
| |
| // RemoveNamespace removes the `nsType` namespace from OCI spec `s` |
| func RemoveNamespace(s *specs.Spec, nsType specs.LinuxNamespaceType) { |
| if s.Linux == nil { |
| return |
| } |
| for i, n := range s.Linux.Namespaces { |
| if n.Type == nsType { |
| s.Linux.Namespaces = append(s.Linux.Namespaces[:i], s.Linux.Namespaces[i+1:]...) |
| return |
| } |
| } |
| } |
| |
| // NamespacePath returns the configured Path of the first namespace in |
| // s.Linux.Namespaces of type nsType. |
| func NamespacePath(s *specs.Spec, nsType specs.LinuxNamespaceType) (path string, ok bool) { |
| for _, n := range s.Linux.Namespaces { |
| if n.Type == nsType { |
| return n.Path, true |
| } |
| } |
| return "", false |
| } |