From: sergey.kitov Date: Wed, 4 Oct 2023 12:32:59 +0000 (+0300) Subject: submission: change submission_client_workarounds to BOOLLIST. X-Git-Tag: 2.4.1~867 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2600158dad616e8bd7fe8c9fb2842ac8a92f569f;p=thirdparty%2Fdovecot%2Fcore.git submission: change submission_client_workarounds to BOOLLIST. --- diff --git a/src/submission-login/submission-login-settings.c b/src/submission-login/submission-login-settings.c index a21bcbd826..1ddd777a4a 100644 --- a/src/submission-login/submission-login-settings.c +++ b/src/submission-login/submission-login-settings.c @@ -58,7 +58,7 @@ static const struct setting_define submission_login_setting_defines[] = { DEF(STR, hostname), DEF(SIZE, submission_max_mail_size), - DEF(STR, submission_client_workarounds), + DEF(BOOLLIST, submission_client_workarounds), DEF(STR, submission_backend_capabilities), SETTING_DEFINE_LIST_END @@ -68,7 +68,7 @@ static const struct submission_login_settings submission_login_default_settings .hostname = "", .submission_max_mail_size = 0, - .submission_client_workarounds = "", + .submission_client_workarounds = ARRAY_INIT, .submission_backend_capabilities = "", }; @@ -112,7 +112,7 @@ submission_login_settings_parse_workarounds( const struct submission_login_client_workaround_list *list; const char *const *str; - str = t_strsplit_spaces(set->submission_client_workarounds, " ,"); + str = settings_boollist_get(&set->submission_client_workarounds); for (; *str != NULL; str++) { list = submission_login_client_workaround_list; for (; list->name != NULL; list++) { diff --git a/src/submission-login/submission-login-settings.h b/src/submission-login/submission-login-settings.h index 18fb896f96..a54ccee907 100644 --- a/src/submission-login/submission-login-settings.h +++ b/src/submission-login/submission-login-settings.h @@ -14,7 +14,7 @@ struct submission_login_settings { /* submission: */ uoff_t submission_max_mail_size; - const char *submission_client_workarounds; + ARRAY_TYPE(const_string) submission_client_workarounds; const char *submission_backend_capabilities; enum submission_login_client_workarounds parsed_workarounds; diff --git a/src/submission/submission-settings.c b/src/submission/submission-settings.c index 21d5be6ce5..39039547a4 100644 --- a/src/submission/submission-settings.c +++ b/src/submission/submission-settings.c @@ -65,7 +65,7 @@ static const struct setting_define submission_setting_defines[] = { DEF(SIZE, submission_max_mail_size), DEF(UINT, submission_max_recipients), - DEF(STR, submission_client_workarounds), + DEF(BOOLLIST, submission_client_workarounds), DEF(STR_NOVARS, submission_logout_format), DEF(BOOL, submission_add_received_header), @@ -107,7 +107,7 @@ static const struct submission_settings submission_default_settings = { .submission_max_mail_size = 40*1024*1024, .submission_max_recipients = 0, - .submission_client_workarounds = "", + .submission_client_workarounds = ARRAY_INIT, .submission_logout_format = "in=%i out=%o", .submission_add_received_header = TRUE, @@ -174,7 +174,7 @@ submission_settings_parse_workarounds(struct submission_settings *set, const struct submission_client_workaround_list *list; const char *const *str; - str = t_strsplit_spaces(set->submission_client_workarounds, " ,"); + str = settings_boollist_get(&set->submission_client_workarounds); for (; *str != NULL; str++) { list = submission_client_workaround_list; for (; list->name != NULL; list++) { diff --git a/src/submission/submission-settings.h b/src/submission/submission-settings.h index 1aea64ab45..8aff32a6c1 100644 --- a/src/submission/submission-settings.h +++ b/src/submission/submission-settings.h @@ -25,7 +25,7 @@ struct submission_settings { /* submission: */ uoff_t submission_max_mail_size; unsigned int submission_max_recipients; - const char *submission_client_workarounds; + ARRAY_TYPE(const_string) submission_client_workarounds; const char *submission_logout_format; bool submission_add_received_header;