summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2012-08-07 00:54:46 -0400
committerGreg Hudson <ghudson@mit.edu>2012-08-07 00:54:46 -0400
commit7abd3407cae8a68fc78884037c46405bb2fb91ec (patch)
treec258abf5468dfd98480ab0ba67487c0625f5f299
parent97104eed1d0fb60faef71284e9194f14a1145993 (diff)
downloadkrb5-7abd3407cae8a68fc78884037c46405bb2fb91ec.tar.gz
krb5-7abd3407cae8a68fc78884037c46405bb2fb91ec.tar.xz
krb5-7abd3407cae8a68fc78884037c46405bb2fb91ec.zip
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.
-rw-r--r--src/lib/krb5/krb/parse.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/krb5/krb/parse.c b/src/lib/krb5/krb/parse.c
index c55381aefb..a696c711e1 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) {