From: sergey.kitov Date: Wed, 4 Oct 2023 12:40:04 +0000 (+0300) Subject: lib-storage: change imapc_sasl_mechanisms to BOOLLIST. X-Git-Tag: 2.4.0~590 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=46061f3a82f9eae584055cb2f4b8e0bbae11b001;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: change imapc_sasl_mechanisms to BOOLLIST. --- diff --git a/src/lib-storage/index/imapc/imapc-settings.c b/src/lib-storage/index/imapc/imapc-settings.c index c263399123..c6a4b301fd 100644 --- a/src/lib-storage/index/imapc/imapc-settings.c +++ b/src/lib-storage/index/imapc/imapc-settings.c @@ -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, diff --git a/src/lib-storage/index/imapc/imapc-settings.h b/src/lib-storage/index/imapc/imapc-settings.h index a987a38f97..a6c3bf7499 100644 --- a/src/lib-storage/index/imapc/imapc-settings.h +++ b/src/lib-storage/index/imapc/imapc-settings.h @@ -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; diff --git a/src/lib-storage/index/imapc/imapc-storage.c b/src/lib-storage/index/imapc/imapc-storage.c index 3373d3fe3d..b326560a97 100644 --- a/src/lib-storage/index/imapc/imapc-storage.c +++ b/src/lib-storage/index/imapc/imapc-storage.c @@ -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,