]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: mdbox - Skip GUID mismatches
authorAki Tuomi <aki.tuomi@open-xchange.com>
Wed, 25 Oct 2023 11:18:25 +0000 (14:18 +0300)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Wed, 1 Nov 2023 14:14:38 +0000 (14:14 +0000)
Old behaviour would not fix the box, so lets
log an error and ignore the expunge.

src/lib-storage/index/dbox-multi/mdbox-sync.c

index 874c843ceb805e5fd274250e7372d16feb35cc90..2cea0af12610f67abebcbf89d85e298ef0182151 100644 (file)
@@ -43,10 +43,11 @@ dbox_sync_verify_expunge_guid(struct mdbox_sync_context *ctx, uint32_t seq,
            memcmp(data, guid_128, GUID_128_SIZE) == 0)
                return 1;
 
-       mdbox_set_mailbox_corrupted(&ctx->mbox->box, t_strdup_printf(
+       e_error(ctx->mbox->box.event,
                "Expunged GUID mismatch for UID %u: %s vs %s",
-               uid, guid_128_to_string(data), guid_128_to_string(guid_128)));
-       return -1;
+               uid, guid_128_to_string(data), guid_128_to_string(guid_128));
+       /* ignore the expunge request */
+       return 0;
 }
 
 static int mdbox_sync_expunge(struct mdbox_sync_context *ctx, uint32_t seq,