This allows caller to provide better precision.
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);
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 ?
/* 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. */
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;
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' ? "" :