diff options
author | Greg Hudson <ghudson@mit.edu> | 2013-08-02 11:37:40 -0400 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2013-08-02 11:37:40 -0400 |
commit | 40d8ad25e2160583c6d74a10e7599253d3b292ce (patch) | |
tree | b8f9bec24490b223bea3c584e9ea31887479db87 /src | |
parent | c5e25a236878b9807ffefe510836d1ddb59e6901 (diff) | |
download | krb5-40d8ad25e2160583c6d74a10e7599253d3b292ce.zip krb5-40d8ad25e2160583c6d74a10e7599253d3b292ce.tar.gz krb5-40d8ad25e2160583c6d74a10e7599253d3b292ce.tar.bz2 |
Fix leak in krb5_krcc_unparse_cred on error
Based on a patch from simo@redhat.com.
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/krb5/ccache/cc_keyring.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/krb5/ccache/cc_keyring.c b/src/lib/krb5/ccache/cc_keyring.c index 3828c59..55c7711 100644 --- a/src/lib/krb5/ccache/cc_keyring.c +++ b/src/lib/krb5/ccache/cc_keyring.c @@ -1913,7 +1913,7 @@ krb5_krcc_unparse_cred(krb5_context context, krb5_ccache id, krb5_creds * creds, char **datapp, unsigned int *lenptr) { krb5_error_code kret; - char *buf; + char *buf = NULL; krb5_krcc_bc bc; if (!creds || !datapp || !lenptr) @@ -1963,9 +1963,11 @@ krb5_krcc_unparse_cred(krb5_context context, krb5_ccache id, /* Success! */ *datapp = buf; *lenptr = bc.bpp - buf; + buf = NULL; kret = KRB5_OK; errout: + free(buf); return kret; } |