@@ -274,20 +274,17 @@ proc processSignedBeaconBlock*(
274
274
275
275
v
276
276
277
- proc processBlobSidecar* (
278
- self: ref Eth2Processor, src: MsgSource,
279
- blobSidecar: deneb.BlobSidecar, subnet_id: BlobId):
280
- Future[ValidationRes] {.async: (raises: [CancelledError]) .} =
281
- template block_header: untyped = blobSidecar.signed_block_header.message
282
- let block_root = hash_tree_root(block_header)
277
+ proc validateBlobSidecarFromEL(
278
+ self: ref Eth2Processor,
279
+ block_root: Eth2Digest):
280
+ Future[Result[void , ValidationError]] {.async: (raises: [CancelledError]) .} =
283
281
284
282
if (let o = self.quarantine[].popBlobless(block_root); o.isSome):
285
283
let blobless = o.get()
286
284
withBlck(blobless):
287
285
when consensusFork >= ConsensusFork.Electra:
288
- let blobsFromElOpt = await self.elManager.sendGetBlobs(forkyBlck)
289
- debugEcho " pulled blobs from el"
290
- debugEcho blobsFromElOpt.get.len
286
+ let blobsFromElOpt =
287
+ await self.elManager.sendGetBlobs(forkyBlck)
291
288
if blobsFromElOpt.get.len > 0 and blobsFromElOpt.isSome():
292
289
let blobsEl = blobsFromElOpt.get()
293
290
# check lengths of array[BlobAndProofV1] with blobs
@@ -307,6 +304,24 @@ proc processBlobSidecar*(
307
304
MsgSource.gossip, blobless,
308
305
Opt.some(self.blobQuarantine[].popBlobs(block_root, forkyBlck)))
309
306
307
+ return ok()
308
+
309
+ else :
310
+ return errIgnore(" EL did not respond with blobs and proofs" )
311
+
312
+ proc processBlobSidecar* (
313
+ self: ref Eth2Processor, src: MsgSource,
314
+ blobSidecar: deneb.BlobSidecar, subnet_id: BlobId):
315
+ Future[ValidationRes] {.async: (raises: [CancelledError]) .} =
316
+ template block_header: untyped = blobSidecar.signed_block_header.message
317
+ let block_root = hash_tree_root(block_header)
318
+
319
+ let vEl =
320
+ await self.validateBlobSidecarFromEL(block_root)
321
+
322
+ if vEl.isOk():
323
+ return vEl
324
+
310
325
let
311
326
wallTime = self.getCurrentBeaconTime()
312
327
(_, wallSlot) = wallTime.toSlot()
0 commit comments