]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-imap-client: Change connect_retry_interval_secs to _msecs
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Mon, 10 Apr 2017 10:48:23 +0000 (13:48 +0300)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Mon, 10 Apr 2017 14:57:48 +0000 (17:57 +0300)
This allows caller to provide better precision.

src/lib-imap-client/imapc-client.c
src/lib-imap-client/imapc-client.h
src/lib-imap-client/imapc-connection.c
src/lib-storage/index/imapc/imapc-storage.c

index 0e5a720ecb606523b235f0ac10192de1ea5fba19..d2589ecb42d70d9cb5939839ed2cd86e8423dd62 100644 (file)
@@ -46,7 +46,7 @@ imapc_client_init(const struct imapc_client_settings *set)
        pool_t pool;
 
        i_assert(set->connect_retry_count == 0 ||
-                set->connect_retry_interval_secs > 0);
+                set->connect_retry_interval_msecs > 0);
 
        pool = pool_alloconly_create("imapc client", 1024);
        client = p_new(pool, struct imapc_client, 1);
@@ -71,7 +71,7 @@ imapc_client_init(const struct imapc_client_settings *set)
                set->connect_timeout_msecs :
                IMAPC_DEFAULT_CONNECT_TIMEOUT_MSECS;
        client->set.connect_retry_count = set->connect_retry_count;
-       client->set.connect_retry_interval_secs = set->connect_retry_interval_secs;
+       client->set.connect_retry_interval_msecs = set->connect_retry_interval_msecs;
        client->set.cmd_timeout_msecs = set->cmd_timeout_msecs != 0 ?
                set->cmd_timeout_msecs : IMAPC_DEFAULT_COMMAND_TIMEOUT_MSECS;
        client->set.max_line_length = set->max_line_length != 0 ?
index ea7eae547e734cd3d7c79ed0654134ff7faa8168..fd461802bb0fcd320218cce77d96cf32952b0f17 100644 (file)
@@ -96,7 +96,7 @@ struct imapc_client_settings {
        /* Number of retries, -1 = infinity */
        unsigned int connect_retry_count;
        /* Interval between retries, must be > 0 if retries > 0 */
-       unsigned int connect_retry_interval_secs;
+       unsigned int connect_retry_interval_msecs;
 
        /* Timeout for IMAP commands. Reset every time more data is being
           sent or received. 0 = default. */
index 92e6ca224ad0a1137bef7c2cb1d2e005aea60961..46e82bf8c289eb9abc750422446ab5cd761a60ac 100644 (file)
@@ -1806,14 +1806,14 @@ void imapc_connection_connect(struct imapc_connection *conn,
        int msecs_since_last_connect =
                timeval_diff_msecs(&ioloop_timeval, &conn->last_connect);
        if (!conn->reconnect_ok &&
-           msecs_since_last_connect < (int)conn->client->set.connect_retry_interval_secs*1000) {
+           msecs_since_last_connect < (int)conn->client->set.connect_retry_interval_msecs) {
                if (conn->to != NULL)
                        timeout_remove(&conn->to);
                conn->reconnecting = TRUE;
                imapc_connection_set_disconnected(conn);
                /* don't wait longer than necessary */
                unsigned int delay_msecs =
-                       conn->client->set.connect_retry_interval_secs*1000 -
+                       conn->client->set.connect_retry_interval_msecs -
                        msecs_since_last_connect;
                conn->to = timeout_add(delay_msecs, imapc_connection_reconnect, conn);
                return;
index 3c88779ed1f201fa3cb99acdbbaeba8df0759678..d8323ac590a4731495e59917b17f36c448c5fd85 100644 (file)
@@ -305,7 +305,7 @@ int imapc_storage_client_create(struct mail_namespace *ns,
        set.use_proxyauth = (imapc_set->parsed_features & IMAPC_FEATURE_PROXYAUTH) != 0;
        set.cmd_timeout_msecs = imapc_set->imapc_cmd_timeout * 1000;
        set.connect_retry_count = imapc_set->imapc_connection_retry_count;
-       set.connect_retry_interval_secs = imapc_set->imapc_connection_retry_interval;
+       set.connect_retry_interval_msecs = imapc_set->imapc_connection_retry_interval*1000;
        set.max_idle_time = imapc_set->imapc_max_idle_time;
        set.max_line_length = imapc_set->imapc_max_line_length;
        set.dns_client_socket_path = *ns->user->set->base_dir == '\0' ? "" :