]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
submission: change submission_client_workarounds to BOOLLIST.
authorsergey.kitov <sergey.kitov@open-xchange.com>
Wed, 4 Oct 2023 12:32:59 +0000 (15:32 +0300)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Wed, 12 Feb 2025 10:34:13 +0000 (12:34 +0200)
src/submission-login/submission-login-settings.c
src/submission-login/submission-login-settings.h
src/submission/submission-settings.c
src/submission/submission-settings.h

index a21bcbd826ddec5a4e8a8c4a3abfb868c7791a53..1ddd777a4a1701b1916fa0d574ed7ce8b1f3c32e 100644 (file)
@@ -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++) {
index 18fb896f969e527c9c00d276ef43e333c044a0a5..a54ccee90701fae56b4cb7e7756a892c5d2fdf75 100644 (file)
@@ -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;
index 21d5be6ce535207be89f9a6704ba8038eafcc1c0..39039547a4ccc4ef1e9bd69ea637aa05c7e89860 100644 (file)
@@ -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++) {
index 1aea64ab45c61cf0d4b5b9498f7d6ac74b61acc9..8aff32a6c15a0bec70f99d5cf2d04bbba9902ba5 100644 (file)
@@ -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;