diff --git a/CHANGELOG.md b/CHANGELOG.md index a2e22a76f..28d9569d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## 1.6.2 (2015-05-13) + +#### Runtime +- Revert change prohibiting mounting into /sys + ## 1.6.1 (2015-05-07) #### Security diff --git a/VERSION b/VERSION index 9c6d6293b..fdd3be6df 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.6.1 +1.6.2 diff --git a/hack/vendor.sh b/hack/vendor.sh index 2a6c409f2..c0b1112cf 100755 --- a/hack/vendor.sh +++ b/hack/vendor.sh @@ -75,7 +75,7 @@ rm -rf src/github.com/docker/distribution mkdir -p src/github.com/docker/distribution mv tmp-digest src/github.com/docker/distribution/digest -clone git github.com/docker/libcontainer 1b471834b45063b61e0aedefbb1739a8f34b414e +clone git github.com/docker/libcontainer 227771c8f611f03639f0eeb169428761d9504ab5 # see src/github.com/docker/libcontainer/update-vendor.sh which is the "source of truth" for libcontainer deps (just like this file) rm -rf src/github.com/docker/libcontainer/vendor eval "$(grep '^clone ' src/github.com/docker/libcontainer/update-vendor.sh | grep -v 'github.com/codegangsta/cli' | grep -v 'github.com/Sirupsen/logrus')" diff --git a/integration-cli/docker_cli_run_test.go b/integration-cli/docker_cli_run_test.go index 9f7f578e0..7fda0a455 100644 --- a/integration-cli/docker_cli_run_test.go +++ b/integration-cli/docker_cli_run_test.go @@ -3499,9 +3499,9 @@ func TestMountIntoProc(t *testing.T) { func TestMountIntoSys(t *testing.T) { defer deleteAllContainers() - code, err := runCommand(exec.Command(dockerBinary, "run", "-v", "/sys/", "busybox", "true")) - if err == nil || code == 0 { - t.Fatal("container should not be able to mount into /sys") + _, err := runCommand(exec.Command(dockerBinary, "run", "-v", "/sys/fs/cgroup", "busybox", "true")) + if err != nil { + t.Fatal("container should be able to mount into /sys") } logDone("run - mount into sys") } diff --git a/vendor/src/github.com/docker/libcontainer/process_linux.go b/vendor/src/github.com/docker/libcontainer/process_linux.go index 1c74b6549..66411a8a9 100644 --- a/vendor/src/github.com/docker/libcontainer/process_linux.go +++ b/vendor/src/github.com/docker/libcontainer/process_linux.go @@ -119,6 +119,9 @@ func (p *setnsProcess) execSetns() error { // terminate sends a SIGKILL to the forked process for the setns routine then waits to // avoid the process becomming a zombie. func (p *setnsProcess) terminate() error { + if p.cmd.Process == nil { + return nil + } err := p.cmd.Process.Kill() if _, werr := p.wait(); err == nil { err = werr diff --git a/vendor/src/github.com/docker/libcontainer/rootfs_linux.go b/vendor/src/github.com/docker/libcontainer/rootfs_linux.go index 7a82edb6a..472a4a984 100644 --- a/vendor/src/github.com/docker/libcontainer/rootfs_linux.go +++ b/vendor/src/github.com/docker/libcontainer/rootfs_linux.go @@ -150,7 +150,6 @@ func checkMountDestination(rootfs, dest string) error { } invalidDestinations := []string{ "/proc", - "/sys", } for _, invalid := range invalidDestinations { path, err := filepath.Rel(filepath.Join(rootfs, invalid), dest) diff --git a/vendor/src/github.com/docker/libcontainer/rootfs_linux_test.go b/vendor/src/github.com/docker/libcontainer/rootfs_linux_test.go index 54df065cc..a3bb07708 100644 --- a/vendor/src/github.com/docker/libcontainer/rootfs_linux_test.go +++ b/vendor/src/github.com/docker/libcontainer/rootfs_linux_test.go @@ -15,8 +15,8 @@ func TestCheckMountDestOnProc(t *testing.T) { func TestCheckMountDestInSys(t *testing.T) { dest := "/rootfs//sys/fs/cgroup" err := checkMountDestination("/rootfs", dest) - if err == nil { - t.Fatal("destination inside proc should return an error") + if err != nil { + t.Fatal("destination inside /sys should not return an error") } }