From 6ce6666cbbcc538aea834052e60fdd4da1600afb Mon Sep 17 00:00:00 2001 From: Wei Tang Date: Thu, 15 Apr 2021 17:41:33 +0200 Subject: [PATCH] EIP-2929: add tx sender and address into the access list (#360) --- crates/ethcore/src/executive.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/crates/ethcore/src/executive.rs b/crates/ethcore/src/executive.rs index 6834c1723..f31e92820 100644 --- a/crates/ethcore/src/executive.rs +++ b/crates/ethcore/src/executive.rs @@ -1145,6 +1145,7 @@ impl<'a, B: 'a + StateBackend> Executive<'a, B> { let mut access_list = AccessList::new(schedule.eip2929); if schedule.eip2929 { + access_list.insert_address(sender); for (address, _) in self.machine.builtins() { access_list.insert_address(*address); } @@ -1232,6 +1233,7 @@ impl<'a, B: 'a + StateBackend> Executive<'a, B> { &nonce, &t.tx().data, ); + access_list.insert_address(new_address); let params = ActionParams { code_address: new_address.clone(), code_hash: code_hash, @@ -1255,6 +1257,7 @@ impl<'a, B: 'a + StateBackend> Executive<'a, B> { (res, out) } Action::Call(ref address) => { + access_list.insert_address(address.clone()); let params = ActionParams { code_address: address.clone(), address: address.clone(),