]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
config: Unescape a "quoted" setting key
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Fri, 28 Mar 2025 21:20:07 +0000 (23:20 +0200)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Mon, 7 Apr 2025 08:02:10 +0000 (08:02 +0000)
This mainly fixes e.g.:

mailbox_special_use {
  "\Drafts" = yes
}

src/config/config-parser.c

index 32fed9f7d875bfa29e060b2c4c99576158f8382d..0484690eb222889805067aad2d1f565f8c4bc10b 100644 (file)
@@ -1844,7 +1844,7 @@ config_parse_line(struct config_parser_context *ctx,
                  char *line, string_t *full_line,
                  struct config_line *config_line_r)
 {
-       const char *key;
+       char *key;
        size_t len;
        char *p;
 
@@ -1929,6 +1929,7 @@ config_parse_line(struct config_parser_context *ctx,
                        } else
                                line++;
                }
+               key = str_unescape(key);
        } else {
                while (!i_isspace(*line) && *line != '\0' && *line != '=')
                        line++;