add "filterload" handler.

This commit is contained in:
Christopher Jeffrey 2014-10-22 16:07:16 -07:00
parent 5068e5cf55
commit 4a3d03dd75
1 changed files with 17 additions and 1 deletions

View File

@ -3727,7 +3727,23 @@ NAN_METHOD(HookPackets) {
}
}
} else if (strCommand == "filterload") {
;
CBloomFilter filter;
cur->vRecv >> filter;
if (!filter.IsWithinSizeConstraints()) {
// There is no excuse for sending a too-large filter
o->Set(NanNew<String>("misbehaving"), NanNew<Boolean>(true));
} else {
LOCK(pfrom->cs_filter);
filter.UpdateEmptyFull();
// std::vector<unsigned char> vData;
o->Set(NanNew<String>("data"), NanNew<String>(filter.vData.GetHex().c_str()));
o->Set(NanNew<String>("full"), NanNew<Boolean>(filter.isFull));
o->Set(NanNew<String>("empty"), NanNew<Boolean>(filter.isEmpty));
o->Set(NanNew<String>("hashFuncs"), NanNew<Number>(filter.nHashFuncs));
o->Set(NanNew<String>("tweaks"), NanNew<Number>(filter.nTweak));
o->Set(NanNew<String>("flags"), NanNew<Number>(filter.nFlags));
}
} else if (strCommand == "filteradd") {
;
} else if (strCommand == "filterclear") {