]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-sasl: dsasl-client - Make dsasl_client_free(&NULL) a no-op.
authorStephan Bosch <stephan.bosch@open-xchange.com>
Fri, 28 Jan 2022 02:17:59 +0000 (03:17 +0100)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Mon, 31 Jan 2022 06:41:58 +0000 (06:41 +0000)
src/lib-sasl/dsasl-client.c
src/lib-smtp/smtp-client-connection.c
src/login-common/client-common-auth.c
src/login-common/client-common.c

index fc92f44a80628a7354cb235b420c5d4ce9d8e3d3..bf11d5ccd501c3576559138f4f1cb5b4183389c4 100644 (file)
@@ -74,6 +74,8 @@ void dsasl_client_free(struct dsasl_client **_client)
 {
        struct dsasl_client *client = *_client;
 
+       if (client == NULL)
+               return;
        *_client = NULL;
 
        if (client->mech->free != NULL)
index ad10147b5140e2e72e83de49b93df59a64ff8027..b9a0a3455e8c4c692609b1554155a90fb4f73002 100644 (file)
@@ -2008,8 +2008,7 @@ void smtp_client_connection_disconnect(struct smtp_client_connection *conn)
        ssl_iostream_destroy(&conn->ssl_iostream);
        if (conn->ssl_ctx != NULL)
                ssl_iostream_context_unref(&conn->ssl_ctx);
-       if (conn->sasl_client != NULL)
-               dsasl_client_free(&conn->sasl_client);
+       dsasl_client_free(&conn->sasl_client);
 
        o_stream_destroy(&conn->dot_output);
 
index 80600582be7321b890b2ebff6739f42bae386fd5..1cdca09e78ef9b0eded38e88be3d233e97528b31 100644 (file)
@@ -368,8 +368,7 @@ static void proxy_input(struct client *client)
 
 static void proxy_reset(struct client *client)
 {
-       if (client->proxy_sasl_client != NULL)
-               dsasl_client_free(&client->proxy_sasl_client);
+       dsasl_client_free(&client->proxy_sasl_client);
        client->v.proxy_reset(client);
 }
 
index 6fec73c60171f7b6e34be3a8a55bbfaf41412539..3f3fae6e045caa540f98dfadc4ac0ca9a28eab6e 100644 (file)
@@ -366,8 +366,7 @@ void client_destroy(struct client *client, const char *reason)
                i_free_and_null(client->proxy_password);
        }
 
-       if (client->proxy_sasl_client != NULL)
-               dsasl_client_free(&client->proxy_sasl_client);
+       dsasl_client_free(&client->proxy_sasl_client);
        if (client->login_proxy != NULL)
                login_proxy_free(&client->login_proxy);
        if (client->v.destroy != NULL)