From: Stephan Bosch Date: Sun, 2 Sep 2018 21:26:21 +0000 (+0200) Subject: lib-smtp: server: Add callback for transaction start. X-Git-Tag: 2.3.9~1359 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3821bfb0caf7899dd72890ee6d4c8985298116d2;p=thirdparty%2Fdovecot%2Fcore.git lib-smtp: server: Add callback for transaction start. --- diff --git a/src/lib-smtp/smtp-server-cmd-mail.c b/src/lib-smtp/smtp-server-cmd-mail.c index 2b7b8887f0..13a71adc82 100644 --- a/src/lib-smtp/smtp-server-cmd-mail.c +++ b/src/lib-smtp/smtp-server-cmd-mail.c @@ -54,6 +54,12 @@ cmd_mail_replied(struct smtp_server_cmd_ctx *cmd, /* success */ conn->state.trans = smtp_server_transaction_create(conn, data->path, &data->params, &data->timestamp); + + if (conn->callbacks != NULL && + conn->callbacks->conn_trans_start != NULL) { + conn->callbacks->conn_trans_start(conn->context, + conn->state.trans); + } } static void diff --git a/src/lib-smtp/smtp-server.h b/src/lib-smtp/smtp-server.h index 67ff60501e..fae54b316c 100644 --- a/src/lib-smtp/smtp-server.h +++ b/src/lib-smtp/smtp-server.h @@ -201,6 +201,8 @@ struct smtp_server_callbacks { void (*conn_cmd_input_post)(void *context); /* Transaction events */ + void (*conn_trans_start)(void *context, + struct smtp_server_transaction *trans); void (*conn_trans_free)(void *context, struct smtp_server_transaction *trans);