From a2c42bd0c6b71cdab21adbdb2edb3025bc586530 Mon Sep 17 00:00:00 2001 From: Marco Bettini Date: Thu, 9 Nov 2023 10:59:40 +0000 Subject: [PATCH] lib-imap-client: struct imapc_command - Add start_time --- src/lib-imap-client/imapc-client.h | 1 + src/lib-imap-client/imapc-connection.c | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/lib-imap-client/imapc-client.h b/src/lib-imap-client/imapc-client.h index b6e69d0643..816ed44b98 100644 --- a/src/lib-imap-client/imapc-client.h +++ b/src/lib-imap-client/imapc-client.h @@ -210,6 +210,7 @@ void imapc_command_sendvf(struct imapc_command *cmd, const char *imapc_command_get_tag(struct imapc_command *cmd); void imapc_command_abort(struct imapc_command **cmd); +struct timeval imapc_command_get_start_time(struct imapc_command *cmd); struct imapc_command * imapc_client_find_command_by_tag(struct imapc_client *client, const char *tag); diff --git a/src/lib-imap-client/imapc-connection.c b/src/lib-imap-client/imapc-connection.c index 85aff705de..e7060e50bb 100644 --- a/src/lib-imap-client/imapc-connection.c +++ b/src/lib-imap-client/imapc-connection.c @@ -58,6 +58,8 @@ struct imapc_command { imapc_command_callback_t *callback; void *context; + struct timeval start_time; + /* This is the AUTHENTICATE command */ bool authenticate:1; /* This is the IDLE command */ @@ -2295,6 +2297,7 @@ static void imapc_connection_cmd_send(struct imapc_command *cmd) unsigned int i, count; imapc_connection_send_idle_done(conn); + cmd->start_time = ioloop_timeval; i_assert((cmd->flags & IMAPC_COMMAND_FLAG_RECONNECTED) == 0); @@ -2569,3 +2572,8 @@ imapc_client_find_command_by_tag(struct imapc_client *client, const char *tag_st } return NULL; } + +struct timeval imapc_command_get_start_time(struct imapc_command *cmd) +{ + return cmd->start_time; +} -- 2.47.3