Generate log entry when blocks messages are received unexpectedly.
This commit is contained in:
parent
8e1704c015
commit
ef0019e054
1 changed files with 28 additions and 4 deletions
|
@ -2540,8 +2540,14 @@ bool static ProcessMessage(CNode* pfrom, const std::string& strCommand, CDataStr
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strCommand == NetMsgType::CMPCTBLOCK && !fImporting && !fReindex) // Ignore blocks received while importing
|
if (strCommand == NetMsgType::CMPCTBLOCK)
|
||||||
{
|
{
|
||||||
|
// Ignore cmpctblock received while importing
|
||||||
|
if (fImporting || fReindex) {
|
||||||
|
LogPrint(BCLog::NET, "Unexpected cmpctblock message received from peer %d\n", pfrom->GetId());
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
CBlockHeaderAndShortTxIDs cmpctblock;
|
CBlockHeaderAndShortTxIDs cmpctblock;
|
||||||
vRecv >> cmpctblock;
|
vRecv >> cmpctblock;
|
||||||
|
|
||||||
|
@ -2761,8 +2767,14 @@ bool static ProcessMessage(CNode* pfrom, const std::string& strCommand, CDataStr
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strCommand == NetMsgType::BLOCKTXN && !fImporting && !fReindex) // Ignore blocks received while importing
|
if (strCommand == NetMsgType::BLOCKTXN)
|
||||||
{
|
{
|
||||||
|
// Ignore blocktxn received while importing
|
||||||
|
if (fImporting || fReindex) {
|
||||||
|
LogPrint(BCLog::NET, "Unexpected blocktxn message received from peer %d\n", pfrom->GetId());
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
BlockTransactions resp;
|
BlockTransactions resp;
|
||||||
vRecv >> resp;
|
vRecv >> resp;
|
||||||
|
|
||||||
|
@ -2836,8 +2848,14 @@ bool static ProcessMessage(CNode* pfrom, const std::string& strCommand, CDataStr
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strCommand == NetMsgType::HEADERS && !fImporting && !fReindex) // Ignore headers received while importing
|
if (strCommand == NetMsgType::HEADERS)
|
||||||
{
|
{
|
||||||
|
// Ignore headers received while importing
|
||||||
|
if (fImporting || fReindex) {
|
||||||
|
LogPrint(BCLog::NET, "Unexpected headers message received from peer %d\n", pfrom->GetId());
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
std::vector<CBlockHeader> headers;
|
std::vector<CBlockHeader> headers;
|
||||||
|
|
||||||
// Bypass the normal CBlock deserialization, as we don't want to risk deserializing 2000 full blocks.
|
// Bypass the normal CBlock deserialization, as we don't want to risk deserializing 2000 full blocks.
|
||||||
|
@ -2861,8 +2879,14 @@ bool static ProcessMessage(CNode* pfrom, const std::string& strCommand, CDataStr
|
||||||
return ProcessHeadersMessage(pfrom, connman, headers, chainparams, should_punish);
|
return ProcessHeadersMessage(pfrom, connman, headers, chainparams, should_punish);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strCommand == NetMsgType::BLOCK && !fImporting && !fReindex) // Ignore blocks received while importing
|
if (strCommand == NetMsgType::BLOCK)
|
||||||
{
|
{
|
||||||
|
// Ignore block received while importing
|
||||||
|
if (fImporting || fReindex) {
|
||||||
|
LogPrint(BCLog::NET, "Unexpected block message received from peer %d\n", pfrom->GetId());
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
std::shared_ptr<CBlock> pblock = std::make_shared<CBlock>();
|
std::shared_ptr<CBlock> pblock = std::make_shared<CBlock>();
|
||||||
vRecv >> *pblock;
|
vRecv >> *pblock;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue