diff options
Diffstat (limited to 'src/block/plugin_block_fs.c')
-rw-r--r-- | src/block/plugin_block_fs.c | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/src/block/plugin_block_fs.c b/src/block/plugin_block_fs.c index 5a0e90a92..c1b4ad7c8 100644 --- a/src/block/plugin_block_fs.c +++ b/src/block/plugin_block_fs.c | |||
@@ -91,20 +91,20 @@ block_plugin_fs_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
91 | if (reply_block == NULL) | 91 | if (reply_block == NULL) |
92 | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; | 92 | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; |
93 | if (NULL != bf) | 93 | if (NULL != bf) |
94 | { | ||
95 | GNUNET_CRYPTO_hash (reply_block, reply_block_size, &chash); | ||
96 | GNUNET_BLOCK_mingle_hash (&chash, bf_mutator, &mhash); | ||
97 | if (NULL != *bf) | ||
98 | { | ||
99 | if (GNUNET_YES == GNUNET_CONTAINER_bloomfilter_test (*bf, &mhash)) | ||
100 | return GNUNET_BLOCK_EVALUATION_OK_DUPLICATE; | ||
101 | } | ||
102 | else | ||
94 | { | 103 | { |
95 | GNUNET_CRYPTO_hash (reply_block, reply_block_size, &chash); | 104 | *bf = GNUNET_CONTAINER_bloomfilter_init (NULL, 8, BLOOMFILTER_K); |
96 | GNUNET_BLOCK_mingle_hash (&chash, bf_mutator, &mhash); | ||
97 | if (NULL != *bf) | ||
98 | { | ||
99 | if (GNUNET_YES == GNUNET_CONTAINER_bloomfilter_test (*bf, &mhash)) | ||
100 | return GNUNET_BLOCK_EVALUATION_OK_DUPLICATE; | ||
101 | } | ||
102 | else | ||
103 | { | ||
104 | *bf = GNUNET_CONTAINER_bloomfilter_init (NULL, 8, BLOOMFILTER_K); | ||
105 | } | ||
106 | GNUNET_CONTAINER_bloomfilter_add (*bf, &mhash); | ||
107 | } | 105 | } |
106 | GNUNET_CONTAINER_bloomfilter_add (*bf, &mhash); | ||
107 | } | ||
108 | return GNUNET_BLOCK_EVALUATION_OK_MORE; | 108 | return GNUNET_BLOCK_EVALUATION_OK_MORE; |
109 | case GNUNET_BLOCK_TYPE_FS_SBLOCK: | 109 | case GNUNET_BLOCK_TYPE_FS_SBLOCK: |
110 | if (xquery_size != sizeof (GNUNET_HashCode)) | 110 | if (xquery_size != sizeof (GNUNET_HashCode)) |
@@ -132,20 +132,20 @@ block_plugin_fs_evaluate (void *cls, enum GNUNET_BLOCK_Type type, | |||
132 | return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | 132 | return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; |
133 | } | 133 | } |
134 | if (NULL != bf) | 134 | if (NULL != bf) |
135 | { | ||
136 | GNUNET_CRYPTO_hash (reply_block, reply_block_size, &chash); | ||
137 | GNUNET_BLOCK_mingle_hash (&chash, bf_mutator, &mhash); | ||
138 | if (NULL != *bf) | ||
139 | { | ||
140 | if (GNUNET_YES == GNUNET_CONTAINER_bloomfilter_test (*bf, &mhash)) | ||
141 | return GNUNET_BLOCK_EVALUATION_OK_DUPLICATE; | ||
142 | } | ||
143 | else | ||
135 | { | 144 | { |
136 | GNUNET_CRYPTO_hash (reply_block, reply_block_size, &chash); | 145 | *bf = GNUNET_CONTAINER_bloomfilter_init (NULL, 8, BLOOMFILTER_K); |
137 | GNUNET_BLOCK_mingle_hash (&chash, bf_mutator, &mhash); | ||
138 | if (NULL != *bf) | ||
139 | { | ||
140 | if (GNUNET_YES == GNUNET_CONTAINER_bloomfilter_test (*bf, &mhash)) | ||
141 | return GNUNET_BLOCK_EVALUATION_OK_DUPLICATE; | ||
142 | } | ||
143 | else | ||
144 | { | ||
145 | *bf = GNUNET_CONTAINER_bloomfilter_init (NULL, 8, BLOOMFILTER_K); | ||
146 | } | ||
147 | GNUNET_CONTAINER_bloomfilter_add (*bf, &mhash); | ||
148 | } | 146 | } |
147 | GNUNET_CONTAINER_bloomfilter_add (*bf, &mhash); | ||
148 | } | ||
149 | return GNUNET_BLOCK_EVALUATION_OK_MORE; | 149 | return GNUNET_BLOCK_EVALUATION_OK_MORE; |
150 | default: | 150 | default: |
151 | return GNUNET_BLOCK_EVALUATION_TYPE_NOT_SUPPORTED; | 151 | return GNUNET_BLOCK_EVALUATION_TYPE_NOT_SUPPORTED; |