[26818] in CVS-changelog-for-Kerberos-V5

home help back first fref pref prev next nref lref last post

krb5 commit: Fix memory leak parsing name with default realm

daemon@ATHENA.MIT.EDU (Greg Hudson)
Tue Aug 7 01:00:48 2012

Date: Tue, 7 Aug 2012 01:00:44 -0400
From: Greg Hudson <ghudson@mit.edu>
Message-Id: <201208070500.q7750iN3021211@drugstore.mit.edu>
To: cvs-krb5@mit.edu
Reply-To: krbdev@mit.edu
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cvs-krb5-bounces@mit.edu

https://github.com/krb5/krb5/commit/7abd3407cae8a68fc78884037c46405bb2fb91ec
commit 7abd3407cae8a68fc78884037c46405bb2fb91ec
Author: Greg Hudson <ghudson@mit.edu>
Date:   Tue Aug 7 00:54:46 2012 -0400

    Fix memory leak parsing name with default realm
    
    After 74beb75bb07e3921d10c8eec05eacb1f393e5e44, allocate_princ()
    allocates a one-byte realm field even if the principal doesn't have
    one, so if we're replacing it with the default realm, we need to free
    that.

 src/lib/krb5/krb/parse.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/src/lib/krb5/krb/parse.c b/src/lib/krb5/krb/parse.c
index c55381a..a696c71 100644
--- a/src/lib/krb5/krb/parse.c
+++ b/src/lib/krb5/krb/parse.c
@@ -208,6 +208,7 @@ krb5_parse_name_flags(krb5_context context, const char *name,
             ret = krb5_get_default_realm(context, &default_realm);
             if (ret)
                 goto cleanup;
+            krb5_free_data_contents(context, &princ->realm);
             princ->realm = string2data(default_realm);
         }
     } else if (no_realm) {
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5

home help back first fref pref prev next nref lref last post