From ec19689334515d9576a540522ed38377e9c36ad0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Sun, 22 Oct 2006 15:56:27 +0000 Subject: [PATCH] Try to not leak memory. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@18828 ec53bebd-3082-4978-b11e-865c3cabbd6b --- kuser/kdestroy.c | 1 + kuser/kgetcred.c | 2 ++ kuser/kinit.c | 6 +++++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/kuser/kdestroy.c b/kuser/kdestroy.c index ca3d30cf2..1ba3a1078 100644 --- a/kuser/kdestroy.c +++ b/kuser/kdestroy.c @@ -122,6 +122,7 @@ main (int argc, char **argv) krb5_err(context, 1, ret, "Failed to remove principal %s", credential); + krb5_free_principal(context, mcred.server); krb5_free_context(context); return 0; } diff --git a/kuser/kgetcred.c b/kuser/kgetcred.c index ce6a9b34c..80d2b297f 100644 --- a/kuser/kgetcred.c +++ b/kuser/kgetcred.c @@ -207,7 +207,9 @@ main(int argc, char **argv) } krb5_free_creds(context, out); + krb5_free_principal(context, server); krb5_get_creds_opt_free(context, opt); + krb5_cc_close (context, cache); return 0; } diff --git a/kuser/kinit.c b/kuser/kinit.c index 1894d3128..90194bff1 100644 --- a/kuser/kinit.c +++ b/kuser/kinit.c @@ -468,6 +468,7 @@ get_new_tickets(krb5_context context, krb5_deltat start_time = 0; krb5_deltat renew = 0; char *renewstr = NULL; + krb5_enctype *enctype = NULL; passwd[0] = '\0'; @@ -552,8 +553,8 @@ get_new_tickets(krb5_context context, } if(etype_str.num_strings) { - krb5_enctype *enctype = NULL; int i; + enctype = malloc(etype_str.num_strings * sizeof(*enctype)); if(enctype == NULL) errx(1, "out of memory"); @@ -682,6 +683,9 @@ get_new_tickets(krb5_context context, krb5_free_cred_contents (context, &cred); + if (enctype) + free(enctype); + return 0; }