From f79745dae4a9a5fca33320e03a4fc9064b88d01e Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Tue, 12 Mar 2019 03:18:33 +0100 Subject: [PATCH 2/3] submission-login: client-authenticate - Fix crash occurring when client disconnects during authentication. --- src/submission-login/client-authenticate.c | 3 +++ src/submission-login/client.c | 1 + 2 files changed, 4 insertions(+) diff --git a/src/submission-login/client-authenticate.c b/src/submission-login/client-authenticate.c index 8b5422f83..6b70701a1 100644 --- a/src/submission-login/client-authenticate.c +++ b/src/submission-login/client-authenticate.c @@ -98,6 +98,9 @@ void submission_client_auth_result(struct client *client, container_of(client, struct submission_client, common); struct smtp_server_cmd_ctx *cmd = subm_client->pending_auth; + if (subm_client->conn == NULL) + return; + subm_client->pending_auth = NULL; i_assert(cmd != NULL); diff --git a/src/submission-login/client.c b/src/submission-login/client.c index 3e45e556c..20b773b9e 100644 --- a/src/submission-login/client.c +++ b/src/submission-login/client.c @@ -212,6 +212,7 @@ static void client_connection_disconnect(void *context, const char *reason) { struct submission_client *client = context; + client->pending_auth = NULL; client_disconnect(&client->common, reason); } -- 2.11.0