|
|
@ -4878,7 +4878,7 @@ void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParam |
|
|
|
// and we don't feel like constructing the object for them, so
|
|
|
|
// and we don't feel like constructing the object for them, so
|
|
|
|
// instead we respond with the full, non-compact block.
|
|
|
|
// instead we respond with the full, non-compact block.
|
|
|
|
bool fPeerWantsWitness = State(pfrom->GetId())->fWantsCmpctWitness; |
|
|
|
bool fPeerWantsWitness = State(pfrom->GetId())->fWantsCmpctWitness; |
|
|
|
if (CanDirectFetch(Params().GetConsensus()) && mi->second->nHeight >= chainActive.Height() - 5) { |
|
|
|
if (CanDirectFetch(consensusParams) && mi->second->nHeight >= chainActive.Height() - MAX_CMPCTBLOCK_DEPTH) { |
|
|
|
CBlockHeaderAndShortTxIDs cmpctblock(block, fPeerWantsWitness); |
|
|
|
CBlockHeaderAndShortTxIDs cmpctblock(block, fPeerWantsWitness); |
|
|
|
pfrom->PushMessageWithFlag(fPeerWantsWitness ? 0 : SERIALIZE_TRANSACTION_NO_WITNESS, NetMsgType::CMPCTBLOCK, cmpctblock); |
|
|
|
pfrom->PushMessageWithFlag(fPeerWantsWitness ? 0 : SERIALIZE_TRANSACTION_NO_WITNESS, NetMsgType::CMPCTBLOCK, cmpctblock); |
|
|
|
} else |
|
|
|
} else |
|
|
@ -5405,8 +5405,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (it->second->nHeight < chainActive.Height() - 10) { |
|
|
|
if (it->second->nHeight < chainActive.Height() - MAX_BLOCKTXN_DEPTH) { |
|
|
|
LogPrint("net", "Peer %d sent us a getblocktxn for a block > 10 deep", pfrom->id); |
|
|
|
LogPrint("net", "Peer %d sent us a getblocktxn for a block > %i deep", pfrom->id, MAX_BLOCKTXN_DEPTH); |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|