]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
login-common: Change struct client.created to timeval
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Wed, 15 Jan 2020 17:06:32 +0000 (19:06 +0200)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Tue, 16 Mar 2021 17:00:06 +0000 (17:00 +0000)
src/login-common/client-common-auth.c
src/login-common/client-common.c
src/login-common/client-common.h

index e006b43e0966c8b3c1a1a475ba979ea805375625..b51ed6c1980070a564613834db73e0d3f74acb68 100644 (file)
@@ -345,7 +345,7 @@ static void proxy_input(struct client *client)
                return;
        case -1:
                line = i_stream_next_line(input);
-               duration = ioloop_time - client->created;
+               duration = ioloop_time - client->created.tv_sec;
                const char *reason = t_strdup_printf(
                        "Disconnected by server: %s "
                        "(state=%s, duration=%us)%s",
index 69477a96c3fb41e06420b64781d9775c19e610df..5dfcbd95c496d695b75ca5eef223e9e781c1f47d 100644 (file)
@@ -106,7 +106,7 @@ static void client_idle_disconnect_timeout(struct client *client)
                        "Disconnected for inactivity during authentication.";
                destroy_reason = "Inactivity during authentication";
        } else if (client->login_proxy != NULL) {
-               secs = ioloop_time - client->created;
+               secs = ioloop_time - client->created.tv_sec;
                user_reason = "Timeout while finishing login.";
                destroy_reason = t_strdup_printf(
                        "Logging in timed out "
@@ -183,7 +183,7 @@ client_alloc(int fd, pool_t pool,
        if (client->v.auth_parse_response == NULL)
                client->v.auth_parse_response = client_auth_parse_response;
 
-       client->created = ioloop_time;
+       client->created = ioloop_timeval;
        client->refcount = 1;
 
        client->pool = pool;
@@ -995,7 +995,7 @@ const char *client_get_extra_disconnect_reason(struct client *client)
        if (!client->notified_auth_ready)
                return t_strdup_printf(
                        "(disconnected before auth was ready, waited %u secs)",
-                       (unsigned int)(ioloop_time - client->created));
+                       (unsigned int)(ioloop_time - client->created.tv_sec));
 
        if (client->auth_attempts == 0) {
                if (!client->banner_sent) {
@@ -1003,7 +1003,7 @@ const char *client_get_extra_disconnect_reason(struct client *client)
                        return "";
                }
                return t_strdup_printf("(no auth attempts in %u secs)",
-                       (unsigned int)(ioloop_time - client->created));
+                       (unsigned int)(ioloop_time - client->created.tv_sec));
        }
 
        /* some auth attempts without SSL/TLS */
index 93f9bb7f2bb870a5bd1d855abb4ee11b9e7a6d29..790762410d7f50c5c9e9b0b7274b37bad533083e 100644 (file)
@@ -151,7 +151,7 @@ struct client {
        struct client_vfuncs v;
        struct client_vfuncs *vlast;
 
-       time_t created;
+       struct timeval created;
        int refcount;
        struct event *event;