| From: | Arlene Berry <aberry@likewise.com> |
| To: | "krb5-bugs@mit.edu" <krb5-bugs@mit.edu> |
| Subject: | potential memory leak in krb5int_get_fq_hostname |
| Date: | Fri, 3 Feb 2012 01:40:18 +0000 |
Krb5int_get_fq_hostname calls getaddrinfo but, if ai->ai_canonname is 0, it returns without freeing ai.
Index: src/lib/krb5/os/hst_realm.c
===================================================================
--- src/lib/krb5/os/hst_realm.c (revision 25666)
+++ src/lib/krb5/os/hst_realm.c (working copy)
@@ -112,7 +112,10 @@
if (err)
return krb5int_translate_gai_error (err);
if (ai->ai_canonname == 0)
+ {
+ freeaddrinfo (ai);
return KRB5_EAI_FAIL;
+ }
strncpy (buf, ai->ai_canonname, bufsize);
buf[bufsize-1] = 0;
freeaddrinfo (ai);
Index: src/lib/krb5/os/hst_realm.c
===================================================================
--- src/lib/krb5/os/hst_realm.c (revision 25666)
+++ src/lib/krb5/os/hst_realm.c (working copy)
@@ -112,7 +112,10 @@
if (err)
return krb5int_translate_gai_error (err);
if (ai->ai_canonname == 0)
+ {
+ freeaddrinfo (ai);
return KRB5_EAI_FAIL;
+ }
strncpy (buf, ai->ai_canonname, bufsize);
buf[bufsize-1] = 0;
freeaddrinfo (ai);