Skip to content

Commit b22a46a

Browse files
Antrikshgwalgurukamath
authored andcommitted
Simplified validate_header func in post-merge forks (#1163)
* Simplified validate_header func in post-merge forks * Simplified parent hash calculation in post-merge forks * validate_header modification in paris and prague forks * fix formatting --------- Co-authored-by: Guruprasad Kamath <[email protected]>
1 parent 8f89be5 commit b22a46a

File tree

4 files changed

+4
-48
lines changed

4 files changed

+4
-48
lines changed

src/ethereum/cancun/fork.py

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -310,19 +310,8 @@ def validate_header(chain: BlockChain, header: Header) -> None:
310310
"""
311311
if header.number < Uint(1):
312312
raise InvalidBlock
313-
parent_header_number = header.number - Uint(1)
314-
first_block_number = chain.blocks[0].header.number
315-
last_block_number = chain.blocks[-1].header.number
316313

317-
if (
318-
parent_header_number < first_block_number
319-
or parent_header_number > last_block_number
320-
):
321-
raise InvalidBlock
322-
323-
parent_header = chain.blocks[
324-
parent_header_number - first_block_number
325-
].header
314+
parent_header = chain.blocks[-1].header
326315

327316
excess_blob_gas = calculate_excess_blob_gas(parent_header)
328317
if header.excess_blob_gas != excess_blob_gas:

src/ethereum/paris/fork.py

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -284,19 +284,8 @@ def validate_header(chain: BlockChain, header: Header) -> None:
284284
"""
285285
if header.number < Uint(1):
286286
raise InvalidBlock
287-
parent_header_number = header.number - Uint(1)
288-
first_block_number = chain.blocks[0].header.number
289-
last_block_number = chain.blocks[-1].header.number
290-
291-
if (
292-
parent_header_number < first_block_number
293-
or parent_header_number > last_block_number
294-
):
295-
raise InvalidBlock
296287

297-
parent_header = chain.blocks[
298-
parent_header_number - first_block_number
299-
].header
288+
parent_header = chain.blocks[-1].header
300289

301290
if header.gas_used > header.gas_limit:
302291
raise InvalidBlock

src/ethereum/prague/fork.py

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -333,19 +333,8 @@ def validate_header(chain: BlockChain, header: Header) -> None:
333333
"""
334334
if header.number < Uint(1):
335335
raise InvalidBlock
336-
parent_header_number = header.number - Uint(1)
337-
first_block_number = chain.blocks[0].header.number
338-
last_block_number = chain.blocks[-1].header.number
339336

340-
if (
341-
parent_header_number < first_block_number
342-
or parent_header_number > last_block_number
343-
):
344-
raise InvalidBlock
345-
346-
parent_header = chain.blocks[
347-
parent_header_number - first_block_number
348-
].header
337+
parent_header = chain.blocks[-1].header
349338

350339
excess_blob_gas = calculate_excess_blob_gas(parent_header)
351340
if header.excess_blob_gas != excess_blob_gas:

src/ethereum/shanghai/fork.py

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -289,19 +289,8 @@ def validate_header(chain: BlockChain, header: Header) -> None:
289289
"""
290290
if header.number < Uint(1):
291291
raise InvalidBlock
292-
parent_header_number = header.number - Uint(1)
293-
first_block_number = chain.blocks[0].header.number
294-
last_block_number = chain.blocks[-1].header.number
295-
296-
if (
297-
parent_header_number < first_block_number
298-
or parent_header_number > last_block_number
299-
):
300-
raise InvalidBlock
301292

302-
parent_header = chain.blocks[
303-
parent_header_number - first_block_number
304-
].header
293+
parent_header = chain.blocks[-1].header
305294

306295
if header.gas_used > header.gas_limit:
307296
raise InvalidBlock

0 commit comments

Comments
 (0)