From: Timo Sirainen Date: Tue, 29 Oct 2013 16:59:20 +0000 (+0200) Subject: virtual: If virtual mailbox has no config file, assume it's just nonexistent. X-Git-Tag: 2.2.7~38 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8536cd46be13bc18aa538b279d7fdba7d54e268f;p=thirdparty%2Fdovecot%2Fcore.git virtual: If virtual mailbox has no config file, assume it's just nonexistent. Most importantly if the virtual namespace root doesn't have the config, it should fail with MAIL_ERROR_NOTFOUND rather than MAIL_ERROR_NOTPOSSIBLE. --- diff --git a/src/plugins/virtual/virtual-config.c b/src/plugins/virtual/virtual-config.c index 2acf6e06b2..a6e656ccd7 100644 --- a/src/plugins/virtual/virtual-config.c +++ b/src/plugins/virtual/virtual-config.c @@ -356,7 +356,6 @@ int virtual_config_read(struct virtual_mailbox *mbox) { struct mail_storage *storage = mbox->box.storage; struct virtual_parse_context ctx; - struct stat st; const char *box_path, *path, *line, *error; unsigned int linenum = 0; int fd, ret = 0; @@ -374,9 +373,6 @@ int virtual_config_read(struct virtual_mailbox *mbox) } else if (errno != ENOENT) { mail_storage_set_critical(storage, "open(%s) failed: %m", path); - } else if (stat(box_path, &st) == 0) { - mail_storage_set_error(storage, MAIL_ERROR_NOTPOSSIBLE, - "Virtual mailbox missing configuration file"); } else if (errno == ENOENT) { mail_storage_set_error(storage, MAIL_ERROR_NOTFOUND, T_MAIL_ERR_MAILBOX_NOT_FOUND(mbox->box.vname));