holiman / goevmlab

Evm laboratory
GNU Lesser General Public License v3.0
237 stars 43 forks source link

Dockerfile for fuzzing 7 clients #119

Closed holiman closed 8 months ago

holiman commented 8 months ago

This is an attempt to bundle the fuzzing-components into one big dockerfile:

Can be run via

docker run -it holiman/omnifuzz
holiman commented 8 months ago
$ docker run holiman/omnifuzz
INFO [01-22|10:27:38.627] Added factory                            name=ecrecover
INFO [01-22|10:27:38.628] Added factory                            name=naive
INFO [01-22|10:27:38.628] Added factory                            name=blake
INFO [01-22|10:27:38.628] Added factory                            name=bls
INFO [01-22|10:27:38.628] Added factory                            name=memops
INFO [01-22|10:27:38.628] Added factory                            name=precompiles
INFO [01-22|10:27:38.628] Added factory                            name=simpleops
INFO [01-22|10:27:38.628] Added factory                            name=sstore_sload
INFO [01-22|10:27:38.628] Added factory                            name=tstore_tload
INFO [01-22|10:27:38.628] Fuzzing started                          threads=6
INFO [01-22|10:27:38.628] Test executor routine started            id=0
INFO [01-22|10:27:38.628] Test factory thread started
INFO [01-22|10:27:38.628] Test factory thread started
INFO [01-22|10:27:38.628] Test factory thread started
INFO [01-22|10:27:46.629] Executing                                tests=10 time=8.000s test/s=1.2 "avg steps"=1087.4 global=10
INFO [01-22|10:27:46.629] Stats gethbatch-0                        execSpeed=28.2ms longest=588.47406ms
INFO [01-22|10:27:46.629] Stats nethbatch-0                        execSpeed=79.8ms longest=1.049164579s
INFO [01-22|10:27:46.629] Stats besubatch-0                        execSpeed=130.2ms longest=2.512391101s
INFO [01-22|10:27:46.629] Stats erigonbatch-0                      execSpeed=69ms    longest=944.244649ms
INFO [01-22|10:27:46.629] Stats nimbus-0                           execSpeed=234.8ms longest=3.558329061s
INFO [01-22|10:27:46.629] Stats revm-0                             execSpeed=26.2ms  longest=530.620029ms
^CINFO [01-22|10:27:48.889] Waiting for processes to exit
INFO [01-22|10:27:51.940] Last test factory exiting

INFO [01-22|10:27:51.940] Last executor exiting
holiman commented 8 months ago
#28 29.26 [ 53%] Building CXX object test/eoftest/CMakeFiles/evmone-eoftest.dir/eoftest.cpp.o
#28 31.44 In file included from /go/evmone/test/state/mpt_hash.hpp:6,
#28 31.44                  from /go/evmone/test/state/mpt_hash.cpp:5:
#28 31.44 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 31.44 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 31.44    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 31.44       |                 ^~~~~~~~
#28 31.44       |                 bad_cast
#28 31.44 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 31.44    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 31.44       |                                 ^
#28 32.08 [ 53%] Linking CXX executable ../../bin/evmone-bench-internal
#28 32.17 In file included from /go/evmone/test/state/precompiles_cache.hpp:5,
#28 32.17                  from /go/evmone/test/state/precompiles_cache.cpp:10:
#28 32.17 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 32.17 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 32.17    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 32.17       |                 ^~~~~~~~
#28 32.17       |                 bad_cast
#28 32.18 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 32.18    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 32.18       |                                 ^
#28 32.53 [ 53%] Linking CXX executable ../../bin/evmone-eofparse
#28 32.54 In file included from /go/evmone/test/state/bloom_filter.hpp:6,
#28 32.54                  from /go/evmone/test/state/bloom_filter.cpp:5:
#28 32.54 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 32.54 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 32.54    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 32.54       |                 ^~~~~~~~
#28 32.54       |                 bad_cast
#28 32.55 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 32.55    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 32.55       |                                 ^
#28 32.66 [ 53%] Built target evmone-bench-internal
#28 32.73 In file included from /go/evmone/test/state/bloom_filter.hpp:6,
#28 32.73                  from /go/evmone/test/state/state.hpp:8,
#28 32.73                  from /go/evmone/test/state/host.hpp:7,
#28 32.73                  from /go/evmone/test/state/host.cpp:5:
#28 32.73 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 32.73 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 32.73    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 32.73       |                 ^~~~~~~~
#28 32.73       |                 bad_cast
#28 32.74 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 32.74    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 32.74       |                                 ^
#28 32.94 [ 53%] Built target evmone-eofparse
#28 33.23 In file included from /go/evmone/test/state/precompiles_cache.hpp:5,
#28 33.23                  from /go/evmone/test/state/precompiles.cpp:6:
#28 33.23 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 33.23 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 33.23    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.23       |                 ^~~~~~~~
#28 33.23       |                 bad_cast
#28 33.23 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 33.23    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.23       |                                 ^
#28 33.24 In file included from /go/evmone/test/state/bloom_filter.hpp:6,
#28 33.24                  from /go/evmone/test/state/state.hpp:8,
#28 33.24                  from /go/evmone/test/state/state.cpp:5:
#28 33.24 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 33.24 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 33.24    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.24       |                 ^~~~~~~~
#28 33.24       |                 bad_cast
#28 33.24 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 33.24    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.24       |                                 ^
#28 33.39 In file included from /go/evmone/test/state/mpt.hpp:6,
#28 33.39                  from /go/evmone/test/state/mpt.cpp:5:
#28 33.39 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 33.39 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 33.39    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.39       |                 ^~~~~~~~
#28 33.39       |                 bad_cast
#28 33.40 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 33.40    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.40       |                                 ^
#28 33.48 In file included from /go/evmone/test/state/hash_utils.cpp:4:
#28 33.48 /go/evmone/test/state/hash_utils.hpp: In function 'evmone::hash256 evmone::keccak256(evmc::bytes_view)':
#28 33.48 /go/evmone/test/state/hash_utils.hpp:32:17: error: 'bit_cast' is not a member of 'std'; did you mean 'bad_cast'?
#28 33.48    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.48       |                 ^~~~~~~~
#28 33.48       |                 bad_cast
#28 33.48 /go/evmone/test/state/hash_utils.hpp:32:33: error: expected primary-expression before '>' token
#28 33.48    32 |     return std::bit_cast<hash256>(ethash::keccak256(data.data(), data.size()));
#28 33.48       |                                 ^
#28 33.73 gmake[2]: *** [test/state/CMakeFiles/evmone-state.dir/build.make:147: test/state/CMakeFiles/evmone-state.dir/mpt_hash.cpp.o] Error 1