]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
config: Warn about obsolete imapc features
authorKarl Fleischmann <karl.fleischmann@open-xchange.com>
Wed, 7 Dec 2022 16:42:34 +0000 (17:42 +0100)
committerKarl Fleischmann <karl.fleischmann@open-xchange.com>
Mon, 19 Dec 2022 10:14:45 +0000 (11:14 +0100)
src/config/old-set-parser.c

index 115bb2ca282d1d262cc5db30f001265c1d2f37bc..b790e86b47066b11a05769717bbb0614049a7e2f 100644 (file)
@@ -333,6 +333,30 @@ old_settings_handle_root(struct config_parser_context *ctx,
                                         key, value);
                return TRUE;
        }
+       if (strcmp(key, "imapc_features") == 0) {
+               char **args = p_strsplit_spaces(
+                       pool_datastack_create(), value, " ");
+               for (char **arg = args; *arg != NULL; arg++) {
+                       if (strcmp(*arg, "rfc822.size") == 0 ||
+                           strcmp(*arg, "fetch-headers") == 0 ||
+                           strcmp(*arg, "search") == 0 ||
+                           strcmp(*arg, "modseq") == 0 ||
+                           strcmp(*arg, "delay-login") == 0 ||
+                           strcmp(*arg, "fetch-bodystructure") == 0 ||
+                           strcmp(*arg, "acl") == 0) {
+                               obsolete(ctx,
+                                        "The imapc feature '%s' is no longer necessary, "
+                                        "it is enabled by default.",
+                                        *arg);
+                               *arg = "";
+                       }
+               }
+               value = t_strarray_join((void *)args, " ");
+               config_parser_apply_line(ctx, CONFIG_LINE_TYPE_KEYVALUE, key,
+                                        value);
+               return TRUE;
+       }
+
        return FALSE;
 }