mirror of
https://github.com/vacp2p/linea-besu.git
synced 2026-01-08 20:47:59 -05:00
* Add slow parsing validation Add CLI flags and fuzzing logic to enable "slow" parsing to be a loggable error. * picocli final field issue * fix some array boundary issues in pretty print and testing Signed-off-by: Danno Ferrin <danno@numisight.com> Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com> --------- Signed-off-by: Danno Ferrin <danno@numisight.com> Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com> Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
BesuFuzz
BesuFuzz is where all the besu guided fuzzing tools live.
eof-container
Performs differential fuzzing between Ethereum clients based on
the txparse eofparse
format. Note that only the inital OK and err values are used to determine if
there is a difference.
Prototypical CLI Usage:
BesuFuzz eof-container \
--tests-dir=~/git/ethereum/tests/EOFTests \
--client=evm1=evmone-eofparse \
--client=revm=revme bytecode
Prototypical Gradle usage:
./gradlew fuzzEvmone fuzzReth
There are pre-written Gradle targets for fuzzEthereumJS, fuzzEvmone,
fuzzGeth, fuzzNethermind, and fuzzReth. Besu is always a fuzzing target.
The fuzzAll target will fuzz all clients.