mirror of
https://github.com/opencontainers/runc.git
synced 2026-07-10 21:53:57 +08:00
244c9fc426
This implements {createTTY, detach} and all of the combinations and
negations of the two that were previously implemented. There are some
valid questions about out-of-OCI-scope topics like !createTTY and how
things should be handled (why do we dup the current stdio to the
process, and how is that not a security issue). However, these will be
dealt with in a separate patchset.
In order to allow for late console setup, split setupRootfs into the
"preparation" section where all of the mounts are created and the
"finalize" section where we pivot_root and set things as ro. In between
the two we can set up all of the console mountpoints and symlinks we
need.
We use two-stage synchronisation to ensures that when the syscalls are
reordered in a suboptimal way, an out-of-place read() on the parentPipe
will not gobble the ancilliary information.
This patch is part of the console rewrite patchset.
Signed-off-by: Aleksa Sarai <asarai@suse.de>
12 lines
368 B
Go
12 lines
368 B
Go
package libcontainer
|
|
|
|
import (
|
|
"errors"
|
|
)
|
|
|
|
// newConsole returns an initialized console that can be used within a container by copying bytes
|
|
// from the master side to the slave that is attached as the tty for the container's init process.
|
|
func newConsole(uid, gid int) (Console, error) {
|
|
return nil, errors.New("libcontainer console is not supported on Solaris")
|
|
}
|