mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
3029e765e2
Previously only unpack operations were supported with chroot. This adds chroot support for packing operations. This prevents potential breakouts when copying data from a container. Signed-off-by: Brian Goff <cpuguy83@gmail.com>
29 lines
553 B
Go
29 lines
553 B
Go
// +build !windows
|
|
|
|
package chrootarchive // import "github.com/docker/docker/pkg/chrootarchive"
|
|
|
|
import (
|
|
"fmt"
|
|
"io"
|
|
"io/ioutil"
|
|
"os"
|
|
|
|
"github.com/docker/docker/pkg/reexec"
|
|
)
|
|
|
|
func init() {
|
|
reexec.Register("docker-applyLayer", applyLayer)
|
|
reexec.Register("docker-untar", untar)
|
|
reexec.Register("docker-tar", tar)
|
|
}
|
|
|
|
func fatal(err error) {
|
|
fmt.Fprint(os.Stderr, err)
|
|
os.Exit(1)
|
|
}
|
|
|
|
// flush consumes all the bytes from the reader discarding
|
|
// any errors
|
|
func flush(r io.Reader) (bytes int64, err error) {
|
|
return io.Copy(ioutil.Discard, r)
|
|
}
|