Move bloom filter filtering logic outside of command "switch" (giant if/else).
Moving this logic outside of the "switch" makes it far simpler to enable the forced disconnect by a parameter.
This commit is contained in:
parent
0b0fc179ab
commit
b3caa9b7fa
1 changed files with 15 additions and 15 deletions
30
src/main.cpp
30
src/main.cpp
|
@ -3989,6 +3989,21 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
|
|||
}
|
||||
|
||||
|
||||
if (!(nLocalServices & NODE_BLOOM) &&
|
||||
(strCommand == "filterload" ||
|
||||
strCommand == "filteradd" ||
|
||||
strCommand == "filterclear"))
|
||||
{
|
||||
if (pfrom->nVersion >= NO_BLOOM_VERSION) {
|
||||
Misbehaving(pfrom->GetId(), 100);
|
||||
return false;
|
||||
}
|
||||
//TODO: Enable this after reasonable network upgrade
|
||||
//else {
|
||||
// pfrom->fDisconnect = true;
|
||||
// return false;
|
||||
//}
|
||||
}
|
||||
|
||||
|
||||
if (strCommand == "version")
|
||||
|
@ -4750,21 +4765,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
|
|||
}
|
||||
|
||||
|
||||
else if (!(nLocalServices & NODE_BLOOM) &&
|
||||
(strCommand == "filterload" ||
|
||||
strCommand == "filteradd" ||
|
||||
strCommand == "filterclear") &&
|
||||
//TODO: Remove this line after reasonable network upgrade
|
||||
pfrom->nVersion >= NO_BLOOM_VERSION)
|
||||
{
|
||||
if (pfrom->nVersion >= NO_BLOOM_VERSION)
|
||||
Misbehaving(pfrom->GetId(), 100);
|
||||
//TODO: Enable this after reasonable network upgrade
|
||||
//else
|
||||
// pfrom->fDisconnect = true;
|
||||
}
|
||||
|
||||
|
||||
else if (strCommand == "filterload")
|
||||
{
|
||||
CBloomFilter filter;
|
||||
|
|
Loading…
Reference in a new issue