nla: clear identity memory before releasing
authorBernhard Miklautz <bernhard.miklautz@thincast.com>
Fri, 26 Jun 2015 13:12:33 +0000 (15:12 +0200)
committerBernhard Miklautz <bernhard.miklautz@thincast.com>
Fri, 26 Jun 2015 13:12:33 +0000 (15:12 +0200)
libfreerdp/core/nla.c

index ecd2e57..5174502 100644 (file)
@@ -108,9 +108,21 @@ void nla_identity_free(SEC_WINNT_AUTH_IDENTITY* identity)
 {
        if (identity)
        {
-               free(identity->User);
-               free(identity->Domain);
-               free(identity->Password);
+               if (identity->User)
+               {
+                       memset(identity->User, 0, identity->UserLength*2);
+                       free(identity->User);
+               }
+               if (identity->Password)
+               {
+                       memset(identity->Password, 0, identity->PasswordLength*2);
+                       free(identity->Password);
+               }
+               if (identity->Domain)
+               {
+                       memset(identity->Domain, 0, identity->DomainLength*2);
+                       free(identity->Domain);
+               }
        }
        free(identity);