summaryrefslogtreecommitdiff
path: root/source3/auth/auth_sam.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2004-07-09 00:13:55 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:52:11 -0500
commitcd87b3b972b39003def69671d8a3c6aaf51afd50 (patch)
tree5dea6dd05794a34aab112f41a81c51f5fc9715b3 /source3/auth/auth_sam.c
parentd4ac326d46faab010eeeb24c893ab13bbbf0337e (diff)
downloadsamba-cd87b3b972b39003def69671d8a3c6aaf51afd50.tar.gz
samba-cd87b3b972b39003def69671d8a3c6aaf51afd50.tar.bz2
samba-cd87b3b972b39003def69671d8a3c6aaf51afd50.zip
r1414: Memory leak fixes found by valgrind whilst checking the password history code.
Error code paths were not freeing up some memory. Jeremy. (This used to be commit 7c4666e56c2c281e023c6483459cb9e8d4787d36)
Diffstat (limited to 'source3/auth/auth_sam.c')
-rw-r--r--source3/auth/auth_sam.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source3/auth/auth_sam.c b/source3/auth/auth_sam.c
index 2f9ff6265c..44e0a1810f 100644
--- a/source3/auth/auth_sam.c
+++ b/source3/auth/auth_sam.c
@@ -231,6 +231,8 @@ static NTSTATUS check_sam_security(const struct auth_context *auth_context,
DEBUG(1, ("Failed to modify entry.\n"));
unbecome_root();
}
+ data_blob_free(&user_sess_key);
+ data_blob_free(&lm_sess_key);
pdb_free_sam(&sampass);
return nt_status;
}
@@ -253,11 +255,15 @@ static NTSTATUS check_sam_security(const struct auth_context *auth_context,
if (!NT_STATUS_IS_OK(nt_status)) {
pdb_free_sam(&sampass);
+ data_blob_free(&user_sess_key);
+ data_blob_free(&lm_sess_key);
return nt_status;
}
if (!NT_STATUS_IS_OK(nt_status = make_server_info_sam(server_info, sampass))) {
DEBUG(0,("check_sam_security: make_server_info_sam() failed with '%s'\n", nt_errstr(nt_status)));
+ data_blob_free(&user_sess_key);
+ data_blob_free(&lm_sess_key);
return nt_status;
}