diff options
author | Pieter Wuille <pieter.wuille@gmail.com> | 2015-07-27 18:58:00 +0200 |
---|---|---|
committer | Pieter Wuille <pieter.wuille@gmail.com> | 2015-07-27 19:09:39 +0200 |
commit | d741371d7d27e228aa64c618c50b23fb5449c3e1 (patch) | |
tree | 0b292baaaabe5f9148db4813dad82c893dd04434 /src/bloom.cpp | |
parent | d2d7ee0e863b286e1c9f9c54659d494fb0a7712d (diff) |
Only use randomly created nonces in CRollingBloomFilter.
Diffstat (limited to 'src/bloom.cpp')
-rw-r--r-- | src/bloom.cpp | 13 |
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; |