From: Timo Sirainen Date: Tue, 20 Jun 2023 21:19:10 +0000 (+0300) Subject: sdbox: Rebuild index if mail saving finds that parent directory is missing X-Git-Tag: 2.4.0~2687 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5440b68073eac7df2a068c700c10c297f282766b;p=thirdparty%2Fdovecot%2Fcore.git sdbox: Rebuild index if mail saving finds that parent directory is missing --- diff --git a/src/lib-storage/index/dbox-single/sdbox-file.c b/src/lib-storage/index/dbox-single/sdbox-file.c index a7bec9ec5a..28eebe6121 100644 --- a/src/lib-storage/index/dbox-single/sdbox-file.c +++ b/src/lib-storage/index/dbox-single/sdbox-file.c @@ -268,6 +268,8 @@ int sdbox_file_create_fd(struct dbox_file *file, const char *path, bool parents) } if (fd == -1) { mailbox_set_critical(box, "open(%s, O_CREAT) failed: %m", path); + if (errno == ENOENT) + sdbox_set_mailbox_corrupted(box); } else if (perm->file_create_gid == (gid_t)-1) { /* no group change */ } else if (fchown(fd, (uid_t)-1, perm->file_create_gid) < 0) {