Skip to content
Browse files

ntlm: fix memory leak

Running tests\libtest\libntlmconnect.exe reveals a 1 byte (!) leak in
./lib/curl_ntlm_msgs.c:

perl ..\memanalyze.pl c:memdebug.curl
Leak detected: memory still allocated: 1 bytes
At 9771e8, there's 1 bytes.
allocated by curl_ntlm_msgs.c:399

Snippet from curl_ntlm_msgs.c:
   /* setup ntlm identity's domain and length */
   dup_domain.tchar_ptr = malloc(sizeof(TCHAR) * (domlen + 1));

(my domlen == 0).

'dup_domain.tbyte_ptr' looks to be freed in Curl_ntlm_sspi_cleanup() via
'ntlm->identity.Domain'. But I see no freeing of 'dup_domain.tchar_ptr'.
  • Loading branch information...
1 parent 7268831 commit 463082bea42d8bea751303da340218a18fb67e85 Gisle Vanem committed with bagder
Showing with 1 addition and 0 deletions.
  1. +1 −0 lib/curl_ntlm_msgs.c
View
1 lib/curl_ntlm_msgs.c
@@ -405,6 +405,7 @@ CURLcode Curl_ntlm_create_type1_message(const char *userp,
*(dup_domain.tchar_ptr + domlen) = TEXT('\0');
ntlm->identity.Domain = dup_domain.tbyte_ptr;
ntlm->identity.DomainLength = curlx_uztoul(domlen);
+ free(dup_domain.tchar_ptr);
dup_domain.tchar_ptr = NULL;
Curl_unicodefree(useranddomain.tchar_ptr);

0 comments on commit 463082b

Please sign in to comment.
Something went wrong with that request. Please try again.