aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2015-12-01 08:56:43 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2015-12-01 09:02:33 +0100
commit1b5118bfa0d94dbc0f3d7803c3e68626b0a694ee (patch)
tree7115cda554e234eb5fea42a68f1c71a6a4e4bfe3 /src/main.cpp
parentc143c499c85bbe99e3036de21eeffb73d61cd265 (diff)
parentebb25f4c23adbcb55796c402bafd6064a136f16f (diff)
downloadbitcoin-1b5118bfa0d94dbc0f3d7803c3e68626b0a694ee.tar.xz
Merge pull request #7079
ebb25f4 Limit setAskFor and retire requested entries only when a getdata returns. (Gregory Maxwell) 5029698 prevent peer flooding request queue for an inv (kazcw)
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 55b0517349..eea53a58de 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -4675,6 +4675,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
bool fMissingInputs = false;
CValidationState state;
+ pfrom->setAskFor.erase(inv.hash);
mapAlreadyAskedFor.erase(inv);
if (!AlreadyHave(inv) && AcceptToMemoryPool(mempool, state, tx, true, &fMissingInputs))
@@ -5623,6 +5624,9 @@ bool SendMessages(CNode* pto, bool fSendTrickle)
pto->PushMessage("getdata", vGetData);
vGetData.clear();
}
+ } else {
+ //If we're not going to ask, don't expect a response.
+ pto->setAskFor.erase(inv.hash);
}
pto->mapAskFor.erase(pto->mapAskFor.begin());
}