manticore icon indicating copy to clipboard operation
manticore copied to clipboard

Unable to use same address for deployer / senders / psender on manticore-verifier

Open yehjxraymond opened this issue 3 years ago • 0 comments

Summary of the problem

When using the same address for deployer and sender, the CLI throws an error EthereumError: Address already used.

The CLI should allow for transactions to be sent from deployer to test out properties for owner only methods.

image

Manticore version

Manticore 0.3.5

Python version

Python 3.7.4

OS / Environment

Ubuntu 18.04.5 LTS

Step to reproduce the behavior

  1. run manticore-verifier some-contract.sol --contract contract-name --deployer address1 --senders address1

Expected behavior

Manticore to run with transaction sent from the deployer account

Actual behavior

Crash

Any relevant logs


Suggested Fix

The problem seemed to be in the file here: https://github.com/trailofbits/manticore/blob/master/manticore/ethereum/verifier.py#L152.

Instead of running m.create_account(... on all account passed in, check against a list to see if it has been created before and if so, simply reuse previous account obj.

yehjxraymond avatar Apr 09 '21 08:04 yehjxraymond