From: Aki Tuomi Date: Fri, 2 Aug 2024 05:51:13 +0000 (+0300) Subject: lib-smtp: Fix connection_tls_sni_callback() X-Git-Tag: 2.4.0~209 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=35883da0075002c9ce21ad2a6bab80403d6e10ea;p=thirdparty%2Fdovecot%2Fcore.git lib-smtp: Fix connection_tls_sni_callback() --- diff --git a/src/lib-smtp/smtp-server-connection.c b/src/lib-smtp/smtp-server-connection.c index bff5861ccd..fc29115d70 100644 --- a/src/lib-smtp/smtp-server-connection.c +++ b/src/lib-smtp/smtp-server-connection.c @@ -367,7 +367,7 @@ smtp_server_connection_sni_callback(const char *name, const char **error_r, } if (conn->callbacks->conn_tls_sni_callback != NULL && - conn->callbacks->conn_tls_sni_callback(name, error_r, conn) < 0) { + conn->callbacks->conn_tls_sni_callback(conn->context, name, error_r) < 0) { settings_free(ssl_set); settings_free(ssl_server_set); return -1; diff --git a/src/lib-smtp/smtp-server.h b/src/lib-smtp/smtp-server.h index b0f38c7b0a..0a07541b60 100644 --- a/src/lib-smtp/smtp-server.h +++ b/src/lib-smtp/smtp-server.h @@ -299,7 +299,8 @@ struct smtp_server_callbacks { const struct smtp_proxy_data *data); /* TLS SNI Callback. */ - int (*conn_tls_sni_callback)(const char *name, const char **error_r, void *context); + int (*conn_tls_sni_callback)(void *conn_ctx, const char *name, + const char **error_r); /* Connection */ int (*conn_start_tls)(void *conn_ctx, struct istream **input, struct ostream **output); diff --git a/src/lmtp/lmtp-client.c b/src/lmtp/lmtp-client.c index e2b28409c9..4814c7e766 100644 --- a/src/lmtp/lmtp-client.c +++ b/src/lmtp/lmtp-client.c @@ -396,11 +396,10 @@ client_connection_proxy_data_updated(void *context, } static int -client_connection_tls_sni_callback(const char *name, const char **error_r, - void *context) +client_connection_tls_sni_callback(void *context, const char *name, + const char **error_r) { - struct smtp_server_connection *conn = context; - struct client *client = conn->context; + struct client *client = context; const struct lda_settings *old_lda_set = client->lda_set; const struct lmtp_settings *old_lmtp_set = client->lmtp_set;