summaryrefslogtreecommitdiff
path: root/integration-cli/docker_cli_inspect_test.go
diff options
context:
space:
mode:
authorYong Tang <yong.tang.github@outlook.com>2016-09-29 18:16:36 -0700
committerYong Tang <yong.tang.github@outlook.com>2016-09-29 18:16:36 -0700
commit0fa20ad13b0b5c6d1bf8a8285717c07697d079ba (patch)
tree1363d4ffb30f49591f9f69f5ab9ad543d8157d0b /integration-cli/docker_cli_inspect_test.go
parent1d669d82c1d5691f9706112acdbe4f70812cf6aa (diff)
downloaddocker-0fa20ad13b0b5c6d1bf8a8285717c07697d079ba.tar.gz
Disable HTML escaping for JSON strings in `docker inspect`
This fix tries to address the issue raised in 27021 where HTML strings like (`&, >, <, etc`) in environmental variables are escaped for JSON output for `docker inspect`. For example, `TEST_ENV="soanni&rtr"` has been escaped to `TEST_ENV="soanni\u0026rtr"` This fix disabled HTML escaping with `SetEscapeHTML`, which is available since golang 1.7.0. This changes will be applied to all JSON output that utilize `httputils.WriteJSON`. An integration test has been added to cover the changes. This fix fixes 27021. Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Diffstat (limited to 'integration-cli/docker_cli_inspect_test.go')
-rw-r--r--integration-cli/docker_cli_inspect_test.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/integration-cli/docker_cli_inspect_test.go b/integration-cli/docker_cli_inspect_test.go
index d28bb074ba..d99ae6d091 100644
--- a/integration-cli/docker_cli_inspect_test.go
+++ b/integration-cli/docker_cli_inspect_test.go
@@ -407,3 +407,13 @@ func (s *DockerSuite) TestInspectRootFS(c *check.C) {
c.Assert(len(imageJSON[0].RootFS.Layers), checker.GreaterOrEqualThan, 1)
}
+
+func (s *DockerSuite) TestInspectAmpersand(c *check.C) {
+ testRequires(c, DaemonIsLinux)
+
+ name := "test"
+ out, _ := dockerCmd(c, "run", "--name", name, "--env", `TEST_ENV="soanni&rtr"`, "busybox", "env")
+ c.Assert(out, checker.Contains, `soanni&rtr`)
+ out, _ = dockerCmd(c, "inspect", name)
+ c.Assert(out, checker.Contains, `soanni&rtr`)
+}