|
|
|
@ -1096,7 +1096,7 @@ private:
|
|
|
|
|
bool BlockRequestAllowed(const CBlockIndex* pindex) EXCLUSIVE_LOCKS_REQUIRED(cs_main);
|
|
|
|
|
bool AlreadyHaveBlock(const uint256& block_hash) EXCLUSIVE_LOCKS_REQUIRED(cs_main);
|
|
|
|
|
void ProcessGetBlockData(CNode& pfrom, Peer& peer, const CInv& inv)
|
|
|
|
|
EXCLUSIVE_LOCKS_REQUIRED(!m_most_recent_block_mutex);
|
|
|
|
|
EXCLUSIVE_LOCKS_REQUIRED(g_msgproc_mutex, !m_most_recent_block_mutex);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Validation logic for compact filters request handling.
|
|
|
|
@ -2522,7 +2522,7 @@ void PeerManagerImpl::ProcessGetBlockData(CNode& pfrom, Peer& peer, const CInv&
|
|
|
|
|
if (a_recent_compact_block && a_recent_compact_block->header.GetHash() == pindex->GetBlockHash()) {
|
|
|
|
|
MakeAndPushMessage(pfrom, NetMsgType::CMPCTBLOCK, *a_recent_compact_block);
|
|
|
|
|
} else {
|
|
|
|
|
CBlockHeaderAndShortTxIDs cmpctblock{*pblock, FastRandomContext().rand64()};
|
|
|
|
|
CBlockHeaderAndShortTxIDs cmpctblock{*pblock, m_rng.rand64()};
|
|
|
|
|
MakeAndPushMessage(pfrom, NetMsgType::CMPCTBLOCK, cmpctblock);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|