]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: change imapc_sasl_mechanisms to BOOLLIST.
authorsergey.kitov <sergey.kitov@open-xchange.com>
Wed, 4 Oct 2023 12:40:04 +0000 (15:40 +0300)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 17 Jan 2025 08:39:59 +0000 (10:39 +0200)
src/lib-storage/index/imapc/imapc-settings.c
src/lib-storage/index/imapc/imapc-settings.h
src/lib-storage/index/imapc/imapc-storage.c

index c2633991236cc6f2a09a466ebb0172b8f0314c2a..c6a4b301fd63ec78c669ac6915d346be5236dd40 100644 (file)
@@ -20,7 +20,7 @@ static const struct setting_define imapc_setting_defines[] = {
        DEF(STR, imapc_user),
        DEF(STR, imapc_master_user),
        DEF(STR, imapc_password),
-       DEF(STR, imapc_sasl_mechanisms),
+       DEF(BOOLLIST, imapc_sasl_mechanisms),
 
        DEF(ENUM, imapc_ssl),
        DEF(BOOL, imapc_ssl_verify),
@@ -46,7 +46,7 @@ static const struct imapc_settings imapc_default_settings = {
        .imapc_user = "",
        .imapc_master_user = "",
        .imapc_password = "",
-       .imapc_sasl_mechanisms = "",
+       .imapc_sasl_mechanisms = ARRAY_INIT,
 
        .imapc_ssl = "no:imaps:starttls",
        .imapc_ssl_verify = TRUE,
index a987a38f971e424f0c478349dad4f69ff6e75116..a6c3bf74995ed99b2e9da415bebd5606d6c1c518 100644 (file)
@@ -39,7 +39,7 @@ struct imapc_settings {
        const char *imapc_user;
        const char *imapc_master_user;
        const char *imapc_password;
-       const char *imapc_sasl_mechanisms;
+       ARRAY_TYPE(const_string) imapc_sasl_mechanisms;
 
        const char *imapc_ssl;
        bool imapc_ssl_verify;
index 3373d3fe3db693f51ce95b6fa66306049de6922f..b326560a97d9782157770e597ea76f5c213a5668 100644 (file)
@@ -349,7 +349,7 @@ int imapc_storage_client_create(struct mail_namespace *ns,
                settings_free(imapc_set);
                return -1;
        }
-       set.sasl_mechanisms = imapc_set->imapc_sasl_mechanisms;
+       set.sasl_mechanisms = t_array_const_string_join(&imapc_set->imapc_sasl_mechanisms, ",");
        set.use_proxyauth = (imapc_set->parsed_features & IMAPC_FEATURE_PROXYAUTH) != 0;
        set.no_qresync = (imapc_set->parsed_features & IMAPC_FEATURE_NO_QRESYNC) != 0;
        set.cmd_timeout_msecs = imapc_set->imapc_cmd_timeout * 1000;
@@ -462,7 +462,8 @@ imapc_storage_create(struct mail_storage *_storage,
                                                    storage->set->imapc_host,
                                                    storage->set->imapc_port,
                                                    storage->set->imapc_list_prefix,
-                                                   storage->set->imapc_sasl_mechanisms,
+                                                   t_array_const_string_join(&storage->set->imapc_sasl_mechanisms,
+                                                                             ","),
                                                    storage->set->imapc_features,
                                                    storage->set->imapc_rawlog_dir,
                                                    storage->set->imapc_cmd_timeout,