message: Add header span filter in ProcessNetBlock
diff: @@ -3977,6 +3977,21 @@ bool ProcessNetBlock(const CChainParams& chainparams, const std::shared_ptr<cons
  return error("ProcessNetBlock() : coinstake transaction does not exist");
  }
  + // Process the header before processing the block
  + const CBlockIndex *pindex = nullptr;
  + CValidationState state;
  + if (!ProcessNetBlockHeaders(pfrom, {*pblock}, state, chainparams, &pindex)) {
  + int nDoS;
  + if (state.IsInvalid(nDoS)) {
  + if (nDoS > 0) {
  + Misbehaving(pfrom->GetId(), nDoS, strprintf("Peer %d sent us invalid header\n", pfrom->GetId()));
  + } else {
  + LogPrint(BCLog::NET, "Peer %d sent us invalid header\n", pfrom->GetId());
  + }
  + return error("ProcessNetBlock() : invalid header received");
  + }
  + }
  +
  // Check for duplicate orphan block
  uint256 hash = pblock->GetHash();
  if (mapOrphanBlocks.count(hash))
  