forked from cerc-io/plugeth
This PR moves our fuzzers from tests/fuzzers into whatever their respective 'native' package is. The historical reason why they were placed in an external location, is that when they were based on go-fuzz, they could not be "hidden" via the _test.go prefix. So in order to shove them away from the go-ethereum "production code", they were put aside. But now we've rewritten them to be based on golang testing, and thus can be brought back. I've left (in tests/) the ones that are not production (bls128381), require non-standard imports (secp requires btcec, bn256 requires gnark/google/cloudflare deps). This PR also adds a fuzzer for precompiled contracts, because why not. This PR utilizes a newly rewritten replacement for go-118-fuzz-build, namely gofuzz-shim, which utilises the inputs from the fuzzing engine better. |
||
|---|---|---|
| .. | ||
| runtime | ||
| testdata | ||
| analysis_test.go | ||
| analysis.go | ||
| common.go | ||
| contract.go | ||
| contracts_fuzz_test.go | ||
| contracts_test.go | ||
| contracts.go | ||
| doc.go | ||
| eips.go | ||
| errors.go | ||
| evm.go | ||
| gas_table_test.go | ||
| gas_table.go | ||
| gas.go | ||
| instructions_test.go | ||
| instructions.go | ||
| interface.go | ||
| interpreter_test.go | ||
| interpreter.go | ||
| jump_table_export.go | ||
| jump_table_test.go | ||
| jump_table.go | ||
| logger.go | ||
| memory_table.go | ||
| memory_test.go | ||
| memory.go | ||
| opcodes.go | ||
| operations_acl.go | ||
| stack_table.go | ||
| stack.go | ||