From daaf2a6963f1d5e6bd1bf5da576c2a5023aba237 Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Sat, 27 Jan 2018 23:20:08 +0100 Subject: [PATCH] submission: Add settings that configure the connect and command reply timeouts. --- src/submission/submission-client.c | 4 ++++ src/submission/submission-settings.c | 6 ++++++ src/submission/submission-settings.h | 3 +++ 3 files changed, 13 insertions(+) diff --git a/src/submission/submission-client.c b/src/submission/submission-client.c index 5ed3a3ebab..2b26ba5994 100644 --- a/src/submission/submission-client.c +++ b/src/submission/submission-client.c @@ -139,6 +139,10 @@ static void client_proxy_create(struct client *client, smtp_set.username = set->submission_relay_user; smtp_set.master_user = set->submission_relay_master_user; smtp_set.password = set->submission_relay_password; + smtp_set.connect_timeout_msecs = + set->submission_relay_connect_timeout; + smtp_set.command_timeout_msecs = + set->submission_relay_command_timeout; if (strcmp(set->submission_relay_ssl, "smtps") == 0) ssl_mode = SMTP_CLIENT_SSL_MODE_IMMEDIATE; diff --git a/src/submission/submission-settings.c b/src/submission/submission-settings.c index aefbb1f542..b7668c5078 100644 --- a/src/submission/submission-settings.c +++ b/src/submission/submission-settings.c @@ -81,6 +81,9 @@ static const struct setting_define submission_setting_defines[] = { DEF(SET_STR, submission_relay_rawlog_dir), DEF(SET_TIME, submission_relay_max_idle_time), + DEF(SET_TIME_MSECS, submission_relay_connect_timeout), + DEF(SET_TIME_MSECS, submission_relay_command_timeout), + DEF(SET_STR, imap_urlauth_host), DEF(SET_IN_PORT, imap_urlauth_port), @@ -113,6 +116,9 @@ static const struct submission_settings submission_default_settings = { .submission_relay_rawlog_dir = "", .submission_relay_max_idle_time = 60*29, + .submission_relay_connect_timeout = 30*1000, + .submission_relay_command_timeout = 60*5*1000, + .imap_urlauth_host = "", .imap_urlauth_port = 143, }; diff --git a/src/submission/submission-settings.h b/src/submission/submission-settings.h index 8b4b4dd137..6c260d0def 100644 --- a/src/submission/submission-settings.h +++ b/src/submission/submission-settings.h @@ -29,6 +29,9 @@ struct submission_settings { const char *submission_relay_rawlog_dir; unsigned int submission_relay_max_idle_time; + unsigned int submission_relay_connect_timeout; + unsigned int submission_relay_command_timeout; + /* imap urlauth: */ const char *imap_urlauth_host; in_port_t imap_urlauth_port;