]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Set digest in replies for modification commands
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 29 Nov 2017 07:53:56 +0000 (07:53 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 29 Nov 2017 07:53:56 +0000 (07:53 +0000)
src/fuzzy_storage.c

index 7ef9daa07458d709987a1ad45be9ecfa91a257bb..c8e55267e6b7e2c226839059bd1cda25291d8283 100644 (file)
@@ -715,7 +715,6 @@ rspamd_fuzzy_make_reply (struct rspamd_fuzzy_cmd *cmd,
 
        if (cmd) {
                result->v1.tag = cmd->tag;
-
                memcpy (&session->reply.rep, result, sizeof (*result));
 
                rspamd_fuzzy_update_stats (session->ctx,
@@ -823,8 +822,10 @@ rspamd_fuzzy_process_command (struct fuzzy_session *session)
                break;
        }
 
-       memcpy (session->reply.rep.digest, cmd->digest,
-                       sizeof (session->reply.rep.digest));
+       memset (&result, 0, sizeof (result));
+       memcpy (result.digest, cmd->digest, sizeof (result.digest));
+       result.v1.flag = cmd->flag;
+       result.v1.tag = cmd->tag;
 
        if (G_UNLIKELY (cmd == NULL || up_len == 0)) {
                result.v1.value = 500;
@@ -855,8 +856,6 @@ rspamd_fuzzy_process_command (struct fuzzy_session *session)
                session->ip_stat = ip_stat;
        }
 
-       result.v1.flag = cmd->flag;
-
        if (cmd->cmd == FUZZY_CHECK) {
                if (G_UNLIKELY (session->ctx->collection_mode)) {
                        result.v1.prob = 0;