From 195a08efbce00f1a121df96945281fa1d2a115ab Mon Sep 17 00:00:00 2001 From: Andrey Vagin Date: Wed, 24 Dec 2014 11:25:00 +0300 Subject: [PATCH] new-api: set Cloneflags in namespace.Exec() This place looks more suitable. Signed-off-by: Andrey Vagin --- linux_container.go | 2 -- namespaces/exec.go | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/linux_container.go b/linux_container.go index 9189be2e2..7845f8dbe 100644 --- a/linux_container.go +++ b/linux_container.go @@ -133,8 +133,6 @@ func (c *linuxContainer) updateStateFile() error { } func (c *linuxContainer) startInitProcess(cmd *exec.Cmd, config *ProcessConfig) error { - cmd.SysProcAttr.Cloneflags = uintptr(namespaces.GetNamespaceFlags(c.config.Namespaces)) - err := namespaces.Exec(config.Args, config.Env, cmd, c.config, c.state) if err != nil { return err diff --git a/namespaces/exec.go b/namespaces/exec.go index 0822154de..1d7914a0d 100644 --- a/namespaces/exec.go +++ b/namespaces/exec.go @@ -31,9 +31,10 @@ func Exec(args []string, env []string, command *exec.Cmd, container *configs.Con return err } defer parent.Close() - command.ExtraFiles = []*os.File{child} + command.Dir = container.RootFs + command.SysProcAttr.Cloneflags = uintptr(GetNamespaceFlags(container.Namespaces)) if err := command.Start(); err != nil { child.Close()