From 30d5b85fe70aee80b87c2469d8a1e523afdef779 Mon Sep 17 00:00:00 2001 From: babarosaM33 Date: Wed, 29 Jan 2020 16:09:10 +0800 Subject: [PATCH] Revert "ppbloom:remove unnecessay bloom_check" ppbloom_add only checks current bloom filter not both PING PONG filters This reverts commit 9ae59819bea2c82a53eb680a7e5983406022b462. --- src/aead.c | 3 ++- src/ppbloom.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/aead.c b/src/aead.c index 4932ea62..358ec938 100644 --- a/src/aead.c +++ b/src/aead.c @@ -695,10 +695,11 @@ aead_decrypt(buffer_t *ciphertext, cipher_ctx_t *cipher_ctx, size_t capacity) // Add the salt to bloom filter if (cipher_ctx->init == 1) { - if (ppbloom_add((void *)cipher_ctx->salt, salt_len) == 1) { + if (ppbloom_check((void *)cipher_ctx->salt, salt_len) == 1) { LOGE("crypto: AEAD: repeat salt detected"); return CRYPTO_ERROR; } + ppbloom_add((void *)cipher_ctx->salt, salt_len); cipher_ctx->init = 2; } diff --git a/src/ppbloom.c b/src/ppbloom.c index 511d5877..17e0f019 100644 --- a/src/ppbloom.c +++ b/src/ppbloom.c @@ -80,7 +80,7 @@ ppbloom_add(const void *buffer, int len) { int err; err = bloom_add(ppbloom + current, buffer, len); - if (err == -1 || err == 1) + if (err == -1) return err; bloom_count[current]++;