]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: If root dir already exists as file, log better error message.
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 25 Jul 2017 06:35:31 +0000 (09:35 +0300)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Mon, 11 Sep 2017 09:51:01 +0000 (12:51 +0300)
src/lib-storage/mailbox-list.c

index c4607501f2a601687dc5e846d589f9dd26d11c92..6340bcd2e8d64c268a859ba58b0f76d5bd026634 100644 (file)
@@ -1221,6 +1221,11 @@ int mailbox_list_try_mkdir_root(struct mailbox_list *list, const char *path,
        if (stat(path, &st) == 0) {
                /* looks like it already exists, don't bother checking
                   further. */
+               if (!S_ISDIR(st.st_mode)) {
+                       *error_r = t_strdup_printf(
+                               "Root directory is a file: %s", path);
+                       return -1;
+               }
                return 0;
        }