]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imapc: Give an early error message if imapc_list_prefix ends with separator.
authorTimo Sirainen <tss@iki.fi>
Thu, 4 Apr 2013 20:03:06 +0000 (23:03 +0300)
committerTimo Sirainen <tss@iki.fi>
Thu, 4 Apr 2013 20:03:06 +0000 (23:03 +0300)
src/lib-storage/index/imapc/imapc-storage.c

index 8a1619273b23ccba160639230584ef8c25069f1d..bfcb1ad1cbbf8bab67fd0dc4884465a46290dddb 100644 (file)
@@ -186,6 +186,7 @@ imapc_storage_get_hierarchy_sep(struct imapc_storage *storage,
 {
        struct imapc_command *cmd;
        struct imapc_simple_context sctx;
+       const char *imapc_list_prefix = storage->set->imapc_list_prefix;
 
        imapc_simple_context_init(&sctx, storage);
        cmd = imapc_client_cmd(storage->client, imapc_simple_callback, &sctx);
@@ -202,6 +203,12 @@ imapc_storage_get_hierarchy_sep(struct imapc_storage *storage,
                *error_r = "LIST didn't return hierarchy separator";
                return -1;
        }
+
+       if (imapc_list_prefix[0] != '\0' &&
+           imapc_list_prefix[strlen(imapc_list_prefix)-1] == storage->list->sep) {
+               *error_r = "imapc_list_prefix must not end with hierarchy separator";
+               return -1;
+       }
        return sctx.ret;
 }