r3525: Fix a memleak
authorVolker Lendecke <vlendec@samba.org>
Thu, 4 Nov 2004 09:30:13 +0000 (09:30 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 15:53:08 +0000 (10:53 -0500)
Volker

source/libsmb/ntlm_check.c

index a0ca08fb8912475d3e210408805c835084a094eb..26e4c76fd346d2e08e23a72d0e6a3dc65fb76762 100644 (file)
@@ -93,6 +93,7 @@ static BOOL smb_pwd_check_ntlmv2(const DATA_BLOB *ntv2_response,
        uchar value_from_encryption[16];
        uchar client_response[16];
        DATA_BLOB client_key_data;
+       BOOL res;
 
        if (part_passwd == NULL) {
                DEBUG(10,("No password set - DISALLOWING access\n"));
@@ -146,7 +147,10 @@ static BOOL smb_pwd_check_ntlmv2(const DATA_BLOB *ntv2_response,
        dump_data(100, value_from_encryption, 16);
 #endif
        data_blob_clear_free(&client_key_data);
-       return (memcmp(value_from_encryption, client_response, 16) == 0);
+       res = (memcmp(value_from_encryption, client_response, 16) == 0);
+       if ((!res) && (user_sess_key != NULL))
+               data_blob_clear_free(user_sess_key);
+       return res;
 }
 
 /**