From: Timo Sirainen Date: Sat, 9 Oct 2021 23:04:33 +0000 (+0300) Subject: imap/pop3/submission-login: Add srv./%{pid}-admin unix socket listener X-Git-Tag: 2.4.0~4553 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c043dd5158aa3f374eead3c4cee0c6baf6195dc3;p=thirdparty%2Fdovecot%2Fcore.git imap/pop3/submission-login: Add srv./%{pid}-admin unix socket listener This can be used by admin clients. --- diff --git a/src/imap-login/imap-login-settings.c b/src/imap-login/imap-login-settings.c index 74ab65c7b8..a461865aa9 100644 --- a/src/imap-login/imap-login-settings.c +++ b/src/imap-login/imap-login-settings.c @@ -10,6 +10,16 @@ #include /* */ +static struct file_listener_settings imap_login_unix_listeners_array[] = { + { "srv.imap-login/%{pid}", 0600, "", "" }, +}; +static struct file_listener_settings *imap_login_unix_listeners[] = { + &imap_login_unix_listeners_array[0], +}; +static buffer_t imap_login_unix_listeners_buf = { + { { imap_login_unix_listeners, sizeof(imap_login_unix_listeners) } } +}; + static struct inet_listener_settings imap_login_inet_listeners_array[] = { { .name = "imap", .address = "", .port = 143 }, { .name = "imaps", .address = "", .port = 993, .ssl = TRUE } @@ -43,7 +53,8 @@ struct service_settings imap_login_service_settings = { .idle_kill = 0, .vsz_limit = UOFF_T_MAX, - .unix_listeners = ARRAY_INIT, + .unix_listeners = { { &imap_login_unix_listeners_buf, + sizeof(imap_login_unix_listeners[0]) } }, .fifo_listeners = ARRAY_INIT, .inet_listeners = { { &imap_login_inet_listeners_buf, sizeof(imap_login_inet_listeners[0]) } } diff --git a/src/pop3-login/pop3-login-settings.c b/src/pop3-login/pop3-login-settings.c index e81532590c..91fbbee08f 100644 --- a/src/pop3-login/pop3-login-settings.c +++ b/src/pop3-login/pop3-login-settings.c @@ -11,6 +11,16 @@ #include /* */ +static struct file_listener_settings pop3_login_unix_listeners_array[] = { + { "srv.pop3-login/%{pid}", 0600, "", "" }, +}; +static struct file_listener_settings *pop3_login_unix_listeners[] = { + &pop3_login_unix_listeners_array[0], +}; +static buffer_t pop3_login_unix_listeners_buf = { + { { pop3_login_unix_listeners, sizeof(pop3_login_unix_listeners) } } +}; + static struct inet_listener_settings pop3_login_inet_listeners_array[] = { { .name = "pop3", .address = "", .port = POP3_DEFAULT_PORT }, { .name = "pop3s", .address = "", .port = POP3S_DEFAULT_PORT, @@ -45,7 +55,8 @@ struct service_settings pop3_login_service_settings = { .idle_kill = 0, .vsz_limit = UOFF_T_MAX, - .unix_listeners = ARRAY_INIT, + .unix_listeners = { { &pop3_login_unix_listeners_buf, + sizeof(pop3_login_unix_listeners[0]) } }, .fifo_listeners = ARRAY_INIT, .inet_listeners = { { &pop3_login_inet_listeners_buf, sizeof(pop3_login_inet_listeners[0]) } } diff --git a/src/submission-login/submission-login-settings.c b/src/submission-login/submission-login-settings.c index 316748f1f1..d5384d2bc6 100644 --- a/src/submission-login/submission-login-settings.c +++ b/src/submission-login/submission-login-settings.c @@ -14,6 +14,17 @@ static bool submission_login_settings_check(void *_set, pool_t pool, const char **error_r); /* */ +static struct file_listener_settings submission_login_unix_listeners_array[] = { + { "srv.submission-login/%{pid}", 0600, "", "" }, +}; +static struct file_listener_settings *submission_login_unix_listeners[] = { + &submission_login_unix_listeners_array[0], +}; +static buffer_t submission_login_unix_listeners_buf = { + { { submission_login_unix_listeners, + sizeof(submission_login_unix_listeners) } } +}; + static struct inet_listener_settings submission_login_inet_listeners_array[] = { { .name = "submission", .address = "", .port = 587 }, { .name = "submissions", .address = "", .port = 465, .ssl = TRUE } @@ -47,7 +58,8 @@ struct service_settings submission_login_service_settings = { .idle_kill = 0, .vsz_limit = UOFF_T_MAX, - .unix_listeners = ARRAY_INIT, + .unix_listeners = { { &submission_login_unix_listeners_buf, + sizeof(submission_login_unix_listeners[0]) } }, .fifo_listeners = ARRAY_INIT, .inet_listeners = { { &submission_login_inet_listeners_buf, sizeof(submission_login_inet_listeners[0]) } }