]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lmtp: DATA command: Add data size to client state.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Fri, 2 Nov 2018 23:41:03 +0000 (00:41 +0100)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Tue, 25 Jun 2019 11:19:16 +0000 (11:19 +0000)
src/lmtp/client.h
src/lmtp/commands.c

index 845b8a6d8b3a6f1ac6691501f9a07f040b5c9bfd..7ad88aaec1490bd21b1bd7510b95407ae48bfb35 100644 (file)
@@ -13,6 +13,7 @@ struct client_state {
        unsigned int session_id_seq;
 
        struct istream *data_input;
+       uoff_t data_size;
 
        struct timeval data_end_timeval;
 
index 61cbbd39c804a4cfda71cd1fa804b3354a1deb59..ad785cdf777d6c83cb04613be230df3fbeb83d0c 100644 (file)
@@ -187,6 +187,9 @@ int cmd_data_continue(void *conn_ctx, struct smtp_server_cmd_ctx *cmd,
                return -1;
        }
 
+       /* Current data stream position is the data size */
+       client->state.data_size = data_input->v_offset;
+
        /* the ending "." line was seen. finish delivery. */
        return cmd_data_finish(client, cmd, trans);
 }