Skip to content

Commit

Permalink
Merge pull request #566 from ethereum/moreextcodehash
Browse files Browse the repository at this point in the history
extcodehash of overwritten account
  • Loading branch information
winsvega committed Dec 10, 2018
2 parents fa338f8 + d8f12cf commit 4cfaa3e
Show file tree
Hide file tree
Showing 4 changed files with 427 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
{
"dynamicAccountOverwriteEmpty_d0g0v0_Constantinople" : {
"_info" : {
"comment" : "EXTCODEHASH of empty account, then CREATE or CREATE2 over it, EXTCODEHASH again. This should check that code hash cache is correctly updated during the transaction.",
"filledwith" : "testeth 1.5.0-alpha.6-71+commit.34ff1a75.dirty",
"lllcversion" : "Version: 0.5.0-develop.2018.11.9+commit.9709dfe0.Linux.g++",
"source" : "src/BlockchainTestsFiller/GeneralStateTests/stExtCodeHash/dynamicAccountOverwriteEmpty_d0g0v0Filler.json",
"sourceHash" : "5987885b5ad790ac2bc2aebd572bf8ecbe1e91e4e8d647a374c1206ec554256d"
},
"blocks" : [
{
"blockHeader" : {
"bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"coinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"difficulty" : "0x020000",
"extraData" : "",
"gasLimit" : "0x0f4240",
"gasUsed" : "0x02c3e2",
"hash" : "0x6dc10aaf447e7ee23987eaa3808698732d90f86e7959b8e67cc4c881b1f39493",
"mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"nonce" : "0x0000000000000000",
"number" : "0x01",
"parentHash" : "0x12e1d5557d796414c1dcdb126275e3dc2c1e623dfdcab817aac58c9f0bdffd09",
"receiptTrie" : "0xd29f20f7370c4918a8609556654be46afc96463e07473565d6f2a283837769b2",
"stateRoot" : "0x793b9d9115abcea44cb4be43b854c2616e512636520fbb48c5f6ff4062bf1fcd",
"timestamp" : "0x03e8",
"transactionsTrie" : "0xf2fde0741a86c3f5b87ccee3cce6faafd15be92989188f40919cb13422672757",
"uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
},
"rlp" : "0xf90260f901f8a012e1d5557d796414c1dcdb126275e3dc2c1e623dfdcab817aac58c9f0bdffd09a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347942adc25665018aa1fe0e6bc666dac8fc2697ff9baa0793b9d9115abcea44cb4be43b854c2616e512636520fbb48c5f6ff4062bf1fcda0f2fde0741a86c3f5b87ccee3cce6faafd15be92989188f40919cb13422672757a0d29f20f7370c4918a8609556654be46afc96463e07473565d6f2a283837769b2b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001830f42408302c3e28203e880a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f862f860800183061a8094095e7baea6a6c7c4c2dfeb977efac326af552d8701801ca0ae29a79903b187c6d075320f9834a330b5134244c7fb0476eba58cd87b175fd6a027a8f85308f5f08f4e2f6b2e23d9dcfd740108f8f96517e50c9e1dc86288a673c0",
"transactions" : [
{
"data" : "0x",
"gasLimit" : "0x061a80",
"gasPrice" : "0x01",
"nonce" : "0x00",
"r" : "0xae29a79903b187c6d075320f9834a330b5134244c7fb0476eba58cd87b175fd6",
"s" : "0x27a8f85308f5f08f4e2f6b2e23d9dcfd740108f8f96517e50c9e1dc86288a673",
"to" : "0x095e7baea6a6c7c4c2dfeb977efac326af552d87",
"v" : "0x1c",
"value" : "0x01"
}
],
"uncleHeaders" : [
]
}
],
"genesisBlockHeader" : {
"bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"coinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"difficulty" : "0x020000",
"extraData" : "0x42",
"gasLimit" : "0x0f4240",
"gasUsed" : "0x00",
"hash" : "0x12e1d5557d796414c1dcdb126275e3dc2c1e623dfdcab817aac58c9f0bdffd09",
"mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"nonce" : "0x0102030405060708",
"number" : "0x00",
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"stateRoot" : "0x0e134a4ccc7946597db9d0ea02f8d9e1346bd8a60dba3f4c012df01368fdeadf",
"timestamp" : "0x03b6",
"transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
},
"genesisRLP" : "0xf901faf901f5a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347942adc25665018aa1fe0e6bc666dac8fc2697ff9baa00e134a4ccc7946597db9d0ea02f8d9e1346bd8a60dba3f4c012df01368fdeadfa056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080830f4240808203b642a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0",
"lastblockhash" : "0x6dc10aaf447e7ee23987eaa3808698732d90f86e7959b8e67cc4c881b1f39493",
"network" : "Constantinople",
"postState" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x0de0b6b3a7640001",
"code" : "0x73e713449c212d891357cc2966816b1d528cfb59e03f60005573e713449c212d891357cc2966816b1d528cfb59e03b60015560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516002556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f26003556000603c8061010760003960006000f55073e713449c212d891357cc2966816b1d528cfb59e03f60045573e713449c212d891357cc2966816b1d528cfb59e03b60055560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516006556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f260075500fe73dddddddd000000000000000000000000000000003b6000526000516000602073dddddddd000000000000000000000000000000003c6000516020f3",
"nonce" : "0x01",
"storage" : {
"0x03" : "0x01",
"0x04" : "0x412346c5b3b3397c3af572eaee1ec5642e1b4c71fd8da2942c9d31341d74184b",
"0x05" : "0x05",
"0x06" : "0x600b605055000000000000000000000000000000000000000000000000000000",
"0x07" : "0x01",
"0x50" : "0x0b"
}
},
"0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
"balance" : "0x1bc16d674ecac3e2",
"code" : "",
"nonce" : "0x00",
"storage" : {
}
},
"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
"balance" : "0x0de0b6b3a7613c1d",
"code" : "0x00",
"nonce" : "0x01",
"storage" : {
}
},
"0xdddddddd00000000000000000000000000000000" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x600b605055",
"nonce" : "0x00",
"storage" : {
}
},
"0xe713449c212d891357cc2966816b1d528cfb59e0" : {
"balance" : "0x00",
"code" : "0x600b605055",
"nonce" : "0x01",
"storage" : {
}
}
},
"pre" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x73e713449c212d891357cc2966816b1d528cfb59e03f60005573e713449c212d891357cc2966816b1d528cfb59e03b60015560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516002556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f26003556000603c8061010760003960006000f55073e713449c212d891357cc2966816b1d528cfb59e03f60045573e713449c212d891357cc2966816b1d528cfb59e03b60055560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516006556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f260075500fe73dddddddd000000000000000000000000000000003b6000526000516000602073dddddddd000000000000000000000000000000003c6000516020f3",
"nonce" : "0x00",
"storage" : {
}
},
"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x00",
"nonce" : "0x00",
"storage" : {
}
},
"0xdddddddd00000000000000000000000000000000" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x600b605055",
"nonce" : "0x00",
"storage" : {
}
},
"0xe713449c212d891357cc2966816b1d528cfb59e0" : {
"balance" : "0x00",
"code" : "",
"nonce" : "0x00",
"storage" : {
"0x01" : "0x01"
}
}
},
"sealEngine" : "NoProof"
}
}
78 changes: 78 additions & 0 deletions GeneralStateTests/stExtCodeHash/dynamicAccountOverwriteEmpty.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
{
"dynamicAccountOverwriteEmpty" : {
"_info" : {
"comment" : "EXTCODEHASH of empty account, then CREATE or CREATE2 over it, EXTCODEHASH again. This should check that code hash cache is correctly updated during the transaction.",
"filledwith" : "testeth 1.5.0-alpha.6-71+commit.34ff1a75.dirty",
"lllcversion" : "Version: 0.5.0-develop.2018.11.9+commit.9709dfe0.Linux.g++",
"source" : "src/GeneralStateTestsFiller/stExtCodeHash/dynamicAccountOverwriteEmptyFiller.yml",
"sourceHash" : "101c57e6d76ca26c54204b61764d201a3304c8bb170f1ddd9e41651519143a13"
},
"env" : {
"currentCoinbase" : "0x2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"currentDifficulty" : "0x20000",
"currentGasLimit" : "0x0f4240",
"currentNumber" : "0x01",
"currentTimestamp" : "0x03e8",
"previousHash" : "0x5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
},
"post" : {
"Constantinople" : [
{
"hash" : "0x418ed95656ada21eb279fbacbdf0b9b9be5c030ce4badf1c183b070664cb5005",
"indexes" : {
"data" : 0,
"gas" : 0,
"value" : 0
},
"logs" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
}
]
},
"pre" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x73e713449c212d891357cc2966816b1d528cfb59e03f60005573e713449c212d891357cc2966816b1d528cfb59e03b60015560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516002556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f26003556000603c8061010760003960006000f55073e713449c212d891357cc2966816b1d528cfb59e03f60045573e713449c212d891357cc2966816b1d528cfb59e03b60055560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516006556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f260075500fe73dddddddd000000000000000000000000000000003b6000526000516000602073dddddddd000000000000000000000000000000003c6000516020f3",
"nonce" : "0x00",
"storage" : {
}
},
"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x00",
"nonce" : "0x00",
"storage" : {
}
},
"0xdddddddd00000000000000000000000000000000" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x600b605055",
"nonce" : "0x00",
"storage" : {
}
},
"0xe713449c212d891357cc2966816b1d528cfb59e0" : {
"balance" : "0x00",
"code" : "",
"nonce" : "0x00",
"storage" : {
"0x01" : "0x01"
}
}
},
"transaction" : {
"data" : [
"0x"
],
"gasLimit" : [
"0x061a80"
],
"gasPrice" : "0x01",
"nonce" : "0x00",
"secretKey" : "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
"to" : "0x095e7baea6a6c7c4c2dfeb977efac326af552d87",
"value" : [
"0x01"
]
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
{
"dynamicAccountOverwriteEmpty_d0g0v0" : {
"_info" : {
"comment" : "EXTCODEHASH of empty account, then CREATE or CREATE2 over it, EXTCODEHASH again. This should check that code hash cache is correctly updated during the transaction."
},
"blocks" : [
{
"blockHeaderPremine" : {
"difficulty" : "0x020000",
"gasLimit" : "0x0f4240",
"timestamp" : "0x03e8",
"updatePoW" : "1"
},
"transactions" : [
{
"data" : "0x",
"gasLimit" : "0x061a80",
"gasPrice" : "0x01",
"nonce" : "0x00",
"r" : "0xae29a79903b187c6d075320f9834a330b5134244c7fb0476eba58cd87b175fd6",
"s" : "0x27a8f85308f5f08f4e2f6b2e23d9dcfd740108f8f96517e50c9e1dc86288a673",
"to" : "0x095e7baea6a6c7c4c2dfeb977efac326af552d87",
"v" : "0x1c",
"value" : "0x01"
}
],
"uncleHeaders" : [
]
}
],
"expect" : [
{
"network" : "Constantinople",
"result" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x0de0b6b3a7640001",
"storage" : {
"0x03" : "0x01",
"0x04" : "0x412346c5b3b3397c3af572eaee1ec5642e1b4c71fd8da2942c9d31341d74184b",
"0x05" : "0x05",
"0x06" : "0x600b605055000000000000000000000000000000000000000000000000000000",
"0x07" : "0x01",
"0x50" : "0x0b"
}
}
}
}
],
"genesisBlockHeader" : {
"bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"coinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
"difficulty" : "131072",
"extraData" : "0x42",
"gasLimit" : "0x0f4240",
"gasUsed" : "0",
"mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"nonce" : "0x0102030405060708",
"number" : "0",
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a",
"timestamp" : "0x03b6",
"transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347"
},
"pre" : {
"0x095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x73e713449c212d891357cc2966816b1d528cfb59e03f60005573e713449c212d891357cc2966816b1d528cfb59e03b60015560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516002556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f26003556000603c8061010760003960006000f55073e713449c212d891357cc2966816b1d528cfb59e03f60045573e713449c212d891357cc2966816b1d528cfb59e03b60055560206000600073e713449c212d891357cc2966816b1d528cfb59e03c6000516006556000600060006000600073e713449c212d891357cc2966816b1d528cfb59e061c350f260075500fe73dddddddd000000000000000000000000000000003b6000526000516000602073dddddddd000000000000000000000000000000003c6000516020f3",
"nonce" : "0x00",
"storage" : {
}
},
"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x00",
"nonce" : "0x00",
"storage" : {
}
},
"0xdddddddd00000000000000000000000000000000" : {
"balance" : "0x0de0b6b3a7640000",
"code" : "0x600b605055",
"nonce" : "0x00",
"storage" : {
}
},
"0xe713449c212d891357cc2966816b1d528cfb59e0" : {
"balance" : "0x00",
"code" : "",
"nonce" : "0x00",
"storage" : {
"0x01" : "0x01"
}
}
},
"sealEngine" : "NoProof"
}
}

0 comments on commit 4cfaa3e

Please sign in to comment.