aboutsummaryrefslogtreecommitdiff
path: root/src/encoding/xml/read_test.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2022-10-31 15:42:13 -0400
committerGopher Robot <gobot@golang.org>2022-10-31 20:35:56 +0000
commit6695cebeec02c62bd440eec8e982028225984dfb (patch)
tree4c32a6dc31ae21f4e3786e6cc3f6c97d5db08cf4 /src/encoding/xml/read_test.go
parent4b993bffb83394105d13b426dae12afe0ab05804 (diff)
downloadgo-6695cebeec02c62bd440eec8e982028225984dfb.tar.xz
encoding/xml: reduce depth limit on wasm
Wasm can't handle the recusion for XML nested to depth 10,000. Cut it off at 5,000 instead. This fixes TestCVE202228131 on trybots in certain conditions. Also disable TestCVE202230633 to fix 'go test -v encoding/xml' on gomotes. Also rename errExeceededMaxUnmarshalDepth [misspelled and unwieldy] to errUnmarshalDepth. For #56498. Change-Id: I7cc337ccfee251bfd9771497be0e5272737114f9 Reviewed-on: https://go-review.googlesource.com/c/go/+/446639 Auto-Submit: Russ Cox <rsc@golang.org> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
Diffstat (limited to 'src/encoding/xml/read_test.go')
-rw-r--r--src/encoding/xml/read_test.go7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/encoding/xml/read_test.go b/src/encoding/xml/read_test.go
index 35385c6490..3e85fca5c6 100644
--- a/src/encoding/xml/read_test.go
+++ b/src/encoding/xml/read_test.go
@@ -9,6 +9,7 @@ import (
"errors"
"io"
"reflect"
+ "runtime"
"strings"
"testing"
"time"
@@ -1105,13 +1106,13 @@ func TestCVE202228131(t *testing.T) {
err := Unmarshal(bytes.Repeat([]byte("<a>"), maxUnmarshalDepth+1), &n)
if err == nil {
t.Fatal("Unmarshal did not fail")
- } else if !errors.Is(err, errExeceededMaxUnmarshalDepth) {
- t.Fatalf("Unmarshal unexpected error: got %q, want %q", err, errExeceededMaxUnmarshalDepth)
+ } else if !errors.Is(err, errUnmarshalDepth) {
+ t.Fatalf("Unmarshal unexpected error: got %q, want %q", err, errUnmarshalDepth)
}
}
func TestCVE202230633(t *testing.T) {
- if testing.Short() {
+ if testing.Short() || runtime.GOARCH == "wasm" {
t.Skip("test requires significant memory")
}
defer func() {