]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-smtp: smtp-client-transaction - Add event field for the amount of data sent.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Wed, 6 Feb 2019 23:35:10 +0000 (00:35 +0100)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Fri, 28 Jun 2019 07:09:31 +0000 (10:09 +0300)
src/lib-smtp/smtp-client-transaction.c

index 58ade75e475c678c43154fba49df3bbeda541391..29bd52d6845a0faae1ed0a85e6fa1a0c5e275ab5 100644 (file)
@@ -1102,6 +1102,12 @@ smtp_client_transaction_data_cb(const struct smtp_reply *reply,
 
        smtp_client_transaction_ref(trans);
 
+       if (trans->data_input != NULL) {
+               event_add_int(trans->event, "data_sent",
+                             trans->data_input->v_offset);
+               i_stream_unref(&trans->data_input);
+       }
+
        if (reply_per_rcpt &&
            trans->cmd_data != NULL && /* NULL when failed early */
            trans->rcpts_data == NULL && trans->rcpts_count > 0) {
@@ -1184,8 +1190,6 @@ smtp_client_transaction_send_data(struct smtp_client_transaction *trans)
 
        if (failure.status != 0)
                smtp_client_transaction_finish(trans, &failure);
-
-       i_stream_unref(&trans->data_input);
 }
 
 #undef smtp_client_transaction_send