@@ -1397,8 +1397,16 @@ func (e *Epoch) handleBlockMessage(message *BlockMessage, from NodeID) error {
1397
1397
return nil
1398
1398
}
1399
1399
1400
+ md := block .BlockHeader ()
1401
+
1402
+ if e .Epoch != md .Epoch {
1403
+ e .Logger .Debug ("Got block message but the epoch mismatches our epoch" ,
1404
+ zap .Uint64 ("our epoch" , e .Epoch ), zap .Uint64 ("block epoch" , md .Epoch ))
1405
+ return nil
1406
+ }
1407
+
1400
1408
e .Logger .Verbo ("Received block message" ,
1401
- zap .Stringer ("from" , from ), zap .Uint64 ("round" , block . BlockHeader () .Round ))
1409
+ zap .Stringer ("from" , from ), zap .Uint64 ("round" , md .Round ))
1402
1410
1403
1411
pendingBlocks := e .sched .Size ()
1404
1412
if pendingBlocks > e .maxPendingBlocks {
@@ -1409,8 +1417,6 @@ func (e *Epoch) handleBlockMessage(message *BlockMessage, from NodeID) error {
1409
1417
vote := message .Vote
1410
1418
from = vote .Signature .Signer
1411
1419
1412
- md := block .BlockHeader ()
1413
-
1414
1420
e .Logger .Debug ("Handling block message" , zap .Stringer ("digest" , md .Digest ), zap .Uint64 ("round" , md .Round ))
1415
1421
1416
1422
// Don't bother processing blocks from the past
@@ -1829,11 +1835,6 @@ func (e *Epoch) verifyProposalIsPartOfOurChain(block Block) bool {
1829
1835
return false
1830
1836
}
1831
1837
1832
- if e .Epoch != bh .Epoch {
1833
- e .Logger .Debug ("Got block message but the epoch mismatches our epoch" ,
1834
- zap .Uint64 ("our epoch" , e .Epoch ), zap .Uint64 ("block epoch" , bh .Epoch ))
1835
- }
1836
-
1837
1838
var expectedSeq uint64
1838
1839
var expectedPrevDigest Digest
1839
1840
@@ -1851,7 +1852,6 @@ func (e *Epoch) verifyProposalIsPartOfOurChain(block Block) bool {
1851
1852
return false
1852
1853
}
1853
1854
1854
- // TODO: we need to take into account dummy blocks!
1855
1855
expectedSeq = bh .Seq
1856
1856
expectedPrevDigest = bh .Prev
1857
1857
}
0 commit comments