pub fn validate_block_post_execution<B, R, ChainSpec>(
block: &RecoveredBlock<B>,
chain_spec: &ChainSpec,
result: &BlockExecutionResult<R>,
receipt_root_bloom: Option<(B256, Bloom)>,
block_access_list_hash: Option<B256>,
) -> Result<(), ConsensusError>where
B: Block,
R: Receipt,
ChainSpec: EthereumHardforks,Expand description
Validate a block with regard to execution results:
- Compares the receipts root in the block header to the block body
- Compares the gas used in the block header to the actual gas usage after execution
- Compares the computed Block Access List Hash to the value in the header if Amsterdam is active
If receipt_root_bloom is provided, the pre-computed receipt root and logs bloom are used
instead of computing them from the receipts.