1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

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 2ea3fa9af5
commit 128381e0f0
5 changed files with 21 additions and 21 deletions

View file

@ -36,7 +36,7 @@ func createContainer(c *execdriver.Command) *libcontainer.Container {
container.Cgroups.Name = c.ID
if c.Privileged {
container.Capabilities = nil
container.CapabilitiesMask = nil
container.Cgroups.DeviceAccess = true
container.Context["apparmor_profile"] = "unconfined"
}
@ -59,7 +59,7 @@ func createContainer(c *execdriver.Command) *libcontainer.Container {
// the libcontainer configuration file
func getDefaultTemplate() *libcontainer.Container {
return &libcontainer.Container{
Capabilities: libcontainer.Capabilities{
CapabilitiesMask: libcontainer.Capabilities{
libcontainer.GetCapability("SETPCAP"),
libcontainer.GetCapability("SYS_MODULE"),
libcontainer.GetCapability("SYS_RAWIO"),

View file

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

View file

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

View file

@ -19,7 +19,7 @@ type Container struct {
Env []string `json:"environment,omitempty"` // environment to set
Tty bool `json:"tty,omitempty"` // setup a proper tty or not
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
Cgroups *cgroups.Cgroup `json:"cgroups,omitempty"` // cgroups
Context Context `json:"context,omitempty"` // generic context for specific options (apparmor, selinux)

View file

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