changeset 22461:618910705ddd

lib-storage: If root dir already exists as file, log better error message.
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Tue, 25 Jul 2017 09:35:31 +0300
parents 18726a70209b
children 84f660d41c24
files src/lib-storage/mailbox-list.c
diffstat 1 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-storage/mailbox-list.c	Mon Jul 24 21:08:33 2017 +0300
+++ b/src/lib-storage/mailbox-list.c	Tue Jul 25 09:35:31 2017 +0300
@@ -1221,6 +1221,11 @@
 	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;
 	}