210c4d6f4b
Audit the OCI spec options used for Linux containers to ensure they are
less order-dependent. Ensure they don't assume that any pointer fields
are non-nil and that they don't unintentionally clobber mutations to the
spec applied by other options.
Signed-off-by: Cory Snider <csnider@mirantis.com>
(cherry picked from commit 8a094fe609
)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
21 lines
650 B
Go
21 lines
650 B
Go
package daemon // import "github.com/docker/docker/daemon"
|
|
|
|
import (
|
|
"github.com/docker/docker/container"
|
|
specs "github.com/opencontainers/runtime-spec/specs-go"
|
|
)
|
|
|
|
func setLinuxDomainname(c *container.Container, s *specs.Spec) {
|
|
// There isn't a field in the OCI for the NIS domainname, but luckily there
|
|
// is a sysctl which has an identical effect to setdomainname(2) so there's
|
|
// no explicit need for runtime support.
|
|
if s.Linux == nil {
|
|
s.Linux = &specs.Linux{}
|
|
}
|
|
if s.Linux.Sysctl == nil {
|
|
s.Linux.Sysctl = make(map[string]string)
|
|
}
|
|
if c.Config.Domainname != "" {
|
|
s.Linux.Sysctl["kernel.domainname"] = c.Config.Domainname
|
|
}
|
|
}
|