aboutsummaryrefslogtreecommitdiff
path: root/src/bloom.cpp
diff options
context:
space:
mode:
authorPieter Wuille <pieter.wuille@gmail.com>2015-07-27 18:58:00 +0200
committerPieter Wuille <pieter.wuille@gmail.com>2015-07-27 19:09:39 +0200
commitd741371d7d27e228aa64c618c50b23fb5449c3e1 (patch)
tree0b292baaaabe5f9148db4813dad82c893dd04434 /src/bloom.cpp
parentd2d7ee0e863b286e1c9f9c54659d494fb0a7712d (diff)
Only use randomly created nonces in CRollingBloomFilter.
Diffstat (limited to 'src/bloom.cpp')
-rw-r--r--src/bloom.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/bloom.cpp b/src/bloom.cpp
index 89959d7326..de87206592 100644
--- a/src/bloom.cpp
+++ b/src/bloom.cpp
@@ -216,16 +216,17 @@ void CBloomFilter::UpdateEmptyFull()
isEmpty = empty;
}
-CRollingBloomFilter::CRollingBloomFilter(unsigned int nElements, double fpRate, unsigned int nTweak) :
- b1(nElements * 2, fpRate, nTweak), b2(nElements * 2, fpRate, nTweak)
+CRollingBloomFilter::CRollingBloomFilter(unsigned int nElements, double fpRate) :
+ b1(nElements * 2, fpRate, 0), b2(nElements * 2, fpRate, 0)
{
// Implemented using two bloom filters of 2 * nElements each.
// We fill them up, and clear them, staggered, every nElements
// inserted, so at least one always contains the last nElements
// inserted.
+ nInsertions = 0;
nBloomSize = nElements * 2;
- reset(nTweak);
+ reset();
}
void CRollingBloomFilter::insert(const std::vector<unsigned char>& vKey)
@@ -262,11 +263,9 @@ bool CRollingBloomFilter::contains(const uint256& hash) const
return contains(data);
}
-void CRollingBloomFilter::reset(unsigned int nNewTweak)
+void CRollingBloomFilter::reset()
{
- if (!nNewTweak)
- nNewTweak = GetRand(std::numeric_limits<unsigned int>::max());
-
+ unsigned int nNewTweak = GetRand(std::numeric_limits<unsigned int>::max());
b1.reset(nNewTweak);
b2.reset(nNewTweak);
nInsertions = 0;