mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-10 14:08:40 +01:00
more addr message error checking
-- version 0.2.11 git-svn-id: https://bitcoin.svn.sourceforge.net/svnroot/bitcoin/trunk@83 1a98c847-1fd6-4fd8-948a-caf3550aa51b
This commit is contained in:
5
main.cpp
5
main.cpp
@@ -1926,7 +1926,9 @@ bool ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv)
|
||||
{
|
||||
vector<CAddress> vAddr;
|
||||
vRecv >> vAddr;
|
||||
if (vAddr.size() > 50000) // lower this to 1000 later
|
||||
if (pfrom->nVersion < 200) // don't want addresses from 0.1.5
|
||||
return true;
|
||||
if (vAddr.size() > 1000)
|
||||
return error("message addr size() = %d", vAddr.size());
|
||||
|
||||
// Store the new addresses
|
||||
@@ -2311,6 +2313,7 @@ bool SendMessages(CNode* pto, bool fSendTrickle)
|
||||
if (pto->setAddrKnown.insert(addr).second)
|
||||
{
|
||||
vAddr.push_back(addr);
|
||||
// receiver rejects addr messages larger than 1000
|
||||
if (vAddr.size() >= 1000)
|
||||
{
|
||||
pto->PushMessage("addr", vAddr);
|
||||
|
||||
Reference in New Issue
Block a user