Skip to content

Commit d53c0e1

Browse files
authored
feat(witness): include access-list in witness (#1258)
* feat(witness): include access-list in witness * bump version
1 parent 61a0607 commit d53c0e1

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

eth/api.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -367,6 +367,20 @@ func generateWitness(blockchain *core.BlockChain, block *types.Block) (*stateles
367367
// sure that this is always present in the execution witness.
368368
statedb.GetState(rcfg.L1GasPriceOracleAddress, rcfg.IsFeynmanSlot)
369369

370+
// Ensure that all access list entries are included in the witness,
371+
// as these are always loaded by revm.
372+
for _, tx := range block.Transactions() {
373+
for _, accessTuple := range tx.AccessList() {
374+
// Load account
375+
statedb.GetBalance(accessTuple.Address)
376+
377+
// Load storage entries
378+
for _, key := range accessTuple.StorageKeys {
379+
statedb.GetState(accessTuple.Address, key)
380+
}
381+
}
382+
}
383+
370384
receipts, _, usedGas, err := blockchain.Processor().Process(block, statedb, *blockchain.GetVMConfig())
371385
if err != nil {
372386
return nil, fmt.Errorf("failed to process block %d: %w", block.Number(), err)

params/version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import (
2424
const (
2525
VersionMajor = 5 // Major version component of the current release
2626
VersionMinor = 9 // Minor version component of the current release
27-
VersionPatch = 14 // Patch version component of the current release
27+
VersionPatch = 15 // Patch version component of the current release
2828
VersionMeta = "mainnet" // Version metadata to append to the version string
2929
)
3030

0 commit comments

Comments
 (0)