diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2015-12-01 08:56:43 +0100 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2015-12-01 09:02:33 +0100 |
commit | 1b5118bfa0d94dbc0f3d7803c3e68626b0a694ee (patch) | |
tree | 7115cda554e234eb5fea42a68f1c71a6a4e4bfe3 /src/main.cpp | |
parent | c143c499c85bbe99e3036de21eeffb73d61cd265 (diff) | |
parent | ebb25f4c23adbcb55796c402bafd6064a136f16f (diff) |
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.cpp | 4 |
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()); } |