refactor(libcontainer): rename to CapabilitiesMask

The Capabilities field on libcontainer is actually used as a mask.
Rename the field so that this is more clear.

Docker-DCO-1.1-Signed-off-by: Brandon Philips <brandon.philips@coreos.com> (github: philips)
This commit is contained in:
Brandon Philips 2014-03-17 10:16:34 -07:00
parent d20dc11cbe
commit 823b293164
4 changed files with 19 additions and 19 deletions

View File

@ -40,7 +40,7 @@ Sample `container.json` file:
"HOSTNAME=11bb30683fb0", "HOSTNAME=11bb30683fb0",
"TERM=xterm" "TERM=xterm"
], ],
"capabilities" : [ "capabilities_mask" : [
"SETPCAP", "SETPCAP",
"SYS_MODULE", "SYS_MODULE",
"SYS_RAWIO", "SYS_RAWIO",

View File

@ -9,7 +9,7 @@ import (
// DropCapabilities drops capabilities for the current process based // DropCapabilities drops capabilities for the current process based
// on the container's configuration. // on the container's configuration.
func DropCapabilities(container *libcontainer.Container) error { func DropCapabilities(container *libcontainer.Container) error {
if drop := getCapabilities(container); len(drop) > 0 { if drop := getCapabilitiesMask(container); len(drop) > 0 {
c, err := capability.NewPid(os.Getpid()) c, err := capability.NewPid(os.Getpid())
if err != nil { if err != nil {
return err return err
@ -23,10 +23,10 @@ func DropCapabilities(container *libcontainer.Container) error {
return nil return nil
} }
// getCapabilities returns the specific cap values for the libcontainer types // getCapabilitiesMask returns the specific cap mask values for the libcontainer types
func getCapabilities(container *libcontainer.Container) []capability.Cap { func getCapabilitiesMask(container *libcontainer.Container) []capability.Cap {
drop := []capability.Cap{} drop := []capability.Cap{}
for _, c := range container.Capabilities { for _, c := range container.CapabilitiesMask {
drop = append(drop, c.Value) drop = append(drop, c.Value)
} }
return drop return drop

View File

@ -19,7 +19,7 @@ type Container struct {
Env []string `json:"environment,omitempty"` // environment to set Env []string `json:"environment,omitempty"` // environment to set
Tty bool `json:"tty,omitempty"` // setup a proper tty or not Tty bool `json:"tty,omitempty"` // setup a proper tty or not
Namespaces Namespaces `json:"namespaces,omitempty"` // namespaces to apply Namespaces Namespaces `json:"namespaces,omitempty"` // namespaces to apply
Capabilities Capabilities `json:"capabilities,omitempty"` // capabilities to drop CapabilitiesMask Capabilities `json:"capabilities_mask,omitempty"` // capabilities to drop
Networks []*Network `json:"networks,omitempty"` // nil for host's network stack Networks []*Network `json:"networks,omitempty"` // nil for host's network stack
Cgroups *cgroups.Cgroup `json:"cgroups,omitempty"` // cgroups Cgroups *cgroups.Cgroup `json:"cgroups,omitempty"` // cgroups
Context Context `json:"context,omitempty"` // generic context for specific options (apparmor, selinux) Context Context `json:"context,omitempty"` // generic context for specific options (apparmor, selinux)

View File

@ -14,7 +14,7 @@
"NEWUTS", "NEWUTS",
"NEWNET" "NEWNET"
], ],
"capabilities": [ "capabilities_mask": [
"SETPCAP", "SETPCAP",
"SYS_MODULE", "SYS_MODULE",
"SYS_RAWIO", "SYS_RAWIO",