Changeset View
Changeset View
Standalone View
Standalone View
src/seeder/bitcoin.cpp
Show First 20 Lines • Show All 183 Lines • ▼ Show 20 Lines | class CSeederNode { | ||||
} | } | ||||
bool ProcessMessages() { | bool ProcessMessages() { | ||||
if (vRecv.empty()) { | if (vRecv.empty()) { | ||||
return false; | return false; | ||||
} | } | ||||
do { | do { | ||||
CDataStream::iterator pstart = search( | CDataStream::iterator pstart = std::search( | ||||
vRecv.begin(), vRecv.end(), BEGIN(netMagic), END(netMagic)); | vRecv.begin(), vRecv.end(), BEGIN(netMagic), END(netMagic)); | ||||
uint32_t nHeaderSize = GetSerializeSize( | uint32_t nHeaderSize = GetSerializeSize( | ||||
CMessageHeader(netMagic), vRecv.GetType(), vRecv.GetVersion()); | CMessageHeader(netMagic), vRecv.GetType(), vRecv.GetVersion()); | ||||
if (vRecv.end() - pstart < nHeaderSize) { | if (vRecv.end() - pstart < nHeaderSize) { | ||||
if (vRecv.size() > nHeaderSize) { | if (vRecv.size() > nHeaderSize) { | ||||
vRecv.erase(vRecv.begin(), vRecv.end() - nHeaderSize); | vRecv.erase(vRecv.begin(), vRecv.end() - nHeaderSize); | ||||
} | } | ||||
break; | break; | ||||
▲ Show 20 Lines • Show All 140 Lines • Show Last 20 Lines |