diff options
author | Kevin Coffman <kwc@citi.umich.edu> | 2007-03-16 10:27:41 -0400 |
---|---|---|
committer | Neil Brown <neilb@suse.de> | 2007-03-19 09:47:37 +1100 |
commit | 3bfd8b18c743cc0908a70a7d401521250ade4776 (patch) | |
tree | 7aee0521ec7c04837868964c5ad24d9171ddb3e7 /utils/gssd/krb5_util.c | |
parent | eeaf5bfbfe2b2a98de3c40b1c44c3f8e15102633 (diff) | |
download | nfs-utils-3bfd8b18c743cc0908a70a7d401521250ade4776.tar.gz nfs-utils-3bfd8b18c743cc0908a70a7d401521250ade4776.tar.xz nfs-utils-3bfd8b18c743cc0908a70a7d401521250ade4776.zip |
Don't leak keytab entries
Free keytab entries while processing keytab file.
Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'utils/gssd/krb5_util.c')
-rw-r--r-- | utils/gssd/krb5_util.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/utils/gssd/krb5_util.c b/utils/gssd/krb5_util.c index 6af2869..cd777e4 100644 --- a/utils/gssd/krb5_util.c +++ b/utils/gssd/krb5_util.c @@ -485,6 +485,7 @@ gssd_process_krb5_keytab(krb5_context context, krb5_keytab kt, char *kt_name) printerr(0, "WARNING: Skipping keytab entry because " "we failed to unparse principal name: %s\n", error_message(code)); + krb5_kt_free_entry(context, &kte); continue; } printerr(2, "Processing keytab entry for principal '%s'\n", @@ -510,6 +511,7 @@ gssd_process_krb5_keytab(krb5_context context, krb5_keytab kt, char *kt_name) #else free(pname); #endif + krb5_kt_free_entry(context, &kte); retval = ENOMEM; goto out; } @@ -533,6 +535,7 @@ gssd_process_krb5_keytab(krb5_context context, krb5_keytab kt, char *kt_name) #else free(pname); #endif + krb5_kt_free_entry(context, &kte); retval = ENOMEM; goto out; } @@ -546,6 +549,7 @@ gssd_process_krb5_keytab(krb5_context context, krb5_keytab kt, char *kt_name) #else free(pname); #endif + krb5_kt_free_entry(context, &kte); retval = code; goto out; } @@ -565,6 +569,7 @@ gssd_process_krb5_keytab(krb5_context context, krb5_keytab kt, char *kt_name) #else free(pname); #endif + krb5_kt_free_entry(context, &kte); } if ((code = krb5_kt_end_seq_get(context, kt, &cursor))) { |