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:
parent
2ea3fa9af5
commit
128381e0f0
5 changed files with 21 additions and 21 deletions
|
@ -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"),
|
||||
|
|
|
@ -40,7 +40,7 @@ Sample `container.json` file:
|
|||
"HOSTNAME=11bb30683fb0",
|
||||
"TERM=xterm"
|
||||
],
|
||||
"capabilities" : [
|
||||
"capabilities_mask" : [
|
||||
"SETPCAP",
|
||||
"SYS_MODULE",
|
||||
"SYS_RAWIO",
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
"NEWUTS",
|
||||
"NEWNET"
|
||||
],
|
||||
"capabilities": [
|
||||
"capabilities_mask": [
|
||||
"SETPCAP",
|
||||
"SYS_MODULE",
|
||||
"SYS_RAWIO",
|
||||
|
|
Loading…
Add table
Reference in a new issue