diff options
author | Stefan Metzmacher <metze@samba.org> | 2016-12-07 17:17:44 +0100 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2016-12-09 09:24:27 +0100 |
commit | 182d5e73a9f0435c19a1723af785cae0d410d697 (patch) | |
tree | ed720526e1b113e7394ed6382e2e96d4e848d195 /auth/credentials | |
parent | 4c9462f93b2e88c2da39320ababfb95d20b02185 (diff) | |
download | samba-182d5e73a9f0435c19a1723af785cae0d410d697.tar.gz |
auth/credentials: clear all unused blobs in cli_credentials_get_ntlm_response()
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'auth/credentials')
-rw-r--r-- | auth/credentials/credentials_ntlm.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/auth/credentials/credentials_ntlm.c b/auth/credentials/credentials_ntlm.c index 3603647b937..2a4c1413501 100644 --- a/auth/credentials/credentials_ntlm.c +++ b/auth/credentials/credentials_ntlm.c @@ -261,21 +261,29 @@ _PUBLIC_ NTSTATUS cli_credentials_get_ntlm_response(struct cli_credentials *cred } done: - if (_lm_response) { + if (_lm_response != NULL) { talloc_steal(mem_ctx, lm_response.data); *_lm_response = lm_response; + } else { + data_blob_clear(&lm_response); } - if (_nt_response) { + if (_nt_response != NULL) { talloc_steal(mem_ctx, nt_response.data); *_nt_response = nt_response; + } else { + data_blob_clear(&nt_response); } - if (_lm_session_key) { + if (_lm_session_key != NULL) { talloc_steal(mem_ctx, lm_session_key.data); *_lm_session_key = lm_session_key; + } else { + data_blob_clear(&lm_session_key); } - if (_session_key) { + if (_session_key != NULL) { talloc_steal(mem_ctx, session_key.data); *_session_key = session_key; + } else { + data_blob_clear(&session_key); } TALLOC_FREE(frame); return NT_STATUS_OK; |