Explorar el Código

tests/fuzzers/abi: fixed one-off panic with int.Min64 value (#22233)

* tests/fuzzers/abi: fixed one-off panic with int.Min64 value

* tests/fuzzers/abi: fixed one-off panic with int.Min64 value
Marius van der Wijden hace 4 años
padre
commit
7202b410b0
Se han modificado 2 ficheros con 5 adiciones y 4 borrados
  1. 4 1
      tests/fuzzers/abi/abifuzzer.go
  2. 1 3
      tests/fuzzers/abi/abifuzzer_test.go

+ 4 - 1
tests/fuzzers/abi/abifuzzer.go

@@ -161,7 +161,10 @@ func getUInt(fuzzer *fuzz.Fuzzer) int {
 	var i int
 	fuzzer.Fuzz(&i)
 	if i < 0 {
-		i *= -1
+		i = -i
+		if i < 0 {
+			return 0
+		}
 	}
 	return i
 }

+ 1 - 3
tests/fuzzers/abi/abifuzzer_test.go

@@ -23,9 +23,7 @@ import (
 // TestReplicate can be used to replicate crashers from the fuzzing tests.
 // Just replace testString with the data in .quoted
 func TestReplicate(t *testing.T) {
-	testString := "N\xef\xbf0\xef\xbf99000000000000" +
-		"000000000000"
-
+	testString := "\x20\x20\x20\x20\x20\x20\x20\x20\x80\x00\x00\x00\x20\x20\x20\x20\x00"
 	data := []byte(testString)
 	runFuzzer(data)
 }