Skip to content

Commit

Permalink
support engine_newPayloadV4 (#6188)
Browse files Browse the repository at this point in the history
  • Loading branch information
tersec committed Apr 9, 2024
1 parent 6ce5d58 commit 749a456
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions beacon_chain/el/el_manager.nim
Original file line number Diff line number Diff line change
Expand Up @@ -1048,6 +1048,15 @@ proc sendNewPayloadToSingleEL(connection: ELConnection,
return await rpcClient.engine_newPayloadV3(
payload, versioned_hashes, parent_beacon_block_root)

proc sendNewPayloadToSingleEL(connection: ELConnection,
payload: engine_api.ExecutionPayloadV4,
versioned_hashes: seq[engine_api.VersionedHash],
parent_beacon_block_root: FixedBytes[32]):
Future[PayloadStatusV1] {.async.} =
let rpcClient = await connection.connectedRpcClient()
return await rpcClient.engine_newPayloadV4(
payload, versioned_hashes, parent_beacon_block_root)

type
StatusRelation = enum
newStatusIsPreferable
Expand Down Expand Up @@ -1147,7 +1156,8 @@ proc sendNewPayload*(m: ELManager, blck: SomeForkyBeaconBlock):
payload = blck.body.execution_payload.asEngineExecutionPayload
requests = m.elConnections.mapIt:
let req =
when payload is engine_api.ExecutionPayloadV3:
when payload is engine_api.ExecutionPayloadV3 or
payload is engine_api.ExecutionPayloadV4:
# https://github.com/ethereum/consensus-specs/blob/v1.4.0-alpha.1/specs/deneb/beacon-chain.md#process_execution_payload
# Verify the execution payload is valid
# [Modified in Deneb] Pass `versioned_hashes` to Execution Engine
Expand All @@ -1160,9 +1170,6 @@ proc sendNewPayload*(m: ELManager, blck: SomeForkyBeaconBlock):
elif payload is engine_api.ExecutionPayloadV1 or
payload is engine_api.ExecutionPayloadV2:
sendNewPayloadToSingleEL(it, payload)
elif payload is engine_api.ExecutionPayloadV4:
debugRaiseAssert "similar to V3 case, check for details"
default(Future[PayloadStatusV1])
else:
static: doAssert false
trackEngineApiRequest(it, req, "newPayload", startTime, deadline)
Expand Down

0 comments on commit 749a456

Please sign in to comment.