Container: Always create a new session for the container

We never want the container to be in the same process group as the
daemon, as then the container will receive signals sent to the
process group of the container.
This commit is contained in:
Alexander Larsson 2013-09-24 14:57:29 +02:00
parent d6887b769c
commit c1c74cb0b1

View file

@ -393,7 +393,7 @@ func (container *Container) startPty() error {
// stdin
if container.Config.OpenStdin {
container.cmd.Stdin = ptySlave
container.cmd.SysProcAttr = &syscall.SysProcAttr{Setctty: true, Setsid: true}
container.cmd.SysProcAttr.Setctty = true
go func() {
defer container.stdin.Close()
utils.Debugf("[startPty] Begin of stdin pipe")
@ -800,6 +800,8 @@ func (container *Container) Start(hostConfig *HostConfig) error {
return err
}
container.cmd.SysProcAttr = &syscall.SysProcAttr{Setsid: true}
var err error
if container.Config.Tty {
err = container.startPty()