crytic / medusa

Parallelized, coverage-guided, mutational Solidity smart contract fuzzing, powered by go-ethereum
https://www.trailofbits.com/
GNU Affero General Public License v3.0
273 stars 33 forks source link

fix: use the shrunken abi values as the msg's data #374

Closed 0xalpharush closed 1 week ago

0xalpharush commented 1 week ago

During input shrinking, the msg's data was not being re-encoded so there were duplicate entires in the test_results directory that seemed unique based on their inputValues field but had the same data field.

Closes https://github.com/crytic/medusa/issues/338

0xalpharush commented 1 week ago

I think this also explains the strange behavior I was seeing with shrinking where the call sequence appeared to have shrunk but remained unchanged https://github.com/crytic/medusa/tree/experiment/shrinking

0xalpharush commented 1 week ago

It also seems to have improved on this example https://github.com/crytic/medusa/issues/229#issuecomment-1858260699

anishnaik commented 1 week ago

awesome find, thanks @0xalpharush