From bc2dc2384619d871000f9627b5d4e2bdc1dd38dc Mon Sep 17 00:00:00 2001 From: Matthew Dempsky Date: Thu, 3 Nov 2022 11:02:51 -0700 Subject: os/exec: allow NUL in environment variables on Plan 9 Plan 9 uses NUL as os.PathListSeparator, so it's almost always going to appear in the environment variable list. Exempt GOOS=plan9 from the check for NUL in environment variables. For #56284. Fixes #56544. Change-Id: I23df233cdf20c0a9a606fd9253e15a9b5482575a Reviewed-on: https://go-review.googlesource.com/c/go/+/447715 Reviewed-by: David du Colombier <0intro@gmail.com> Run-TryBot: Matthew Dempsky TryBot-Result: Gopher Robot Reviewed-by: Damien Neil --- src/os/exec/exec_test.go | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/os/exec/exec_test.go') diff --git a/src/os/exec/exec_test.go b/src/os/exec/exec_test.go index 7f1f99330d..cb1545a651 100644 --- a/src/os/exec/exec_test.go +++ b/src/os/exec/exec_test.go @@ -1038,6 +1038,9 @@ func TestDedupEnvEcho(t *testing.T) { } func TestEnvNULCharacter(t *testing.T) { + if runtime.GOOS == "plan9" { + t.Skip("plan9 explicitly allows NUL in the enviroment") + } cmd := helperCommand(t, "echoenv", "FOO", "BAR") cmd.Env = append(cmd.Environ(), "FOO=foo\x00BAR=bar") out, err := cmd.CombinedOutput() -- cgit v1.3