From 0f05893c972cd5f5d70a836834ded6e2ab4e7b21 Mon Sep 17 00:00:00 2001 From: Tom Yu Date: Mon, 27 Dec 2004 21:05:29 +0000 Subject: [PATCH] pullup from trunk ticket: 2854 target_version: 1.4 version_fixed: 1.4 component: krb5-libs git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-4@16982 dc483132-0cff-0310-8789-dd5450dbe970 --- src/lib/krb5/ccache/ChangeLog | 6 ++++++ src/lib/krb5/ccache/cc_file.c | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/src/lib/krb5/ccache/ChangeLog b/src/lib/krb5/ccache/ChangeLog index e2929ea65..651e4a017 100644 --- a/src/lib/krb5/ccache/ChangeLog +++ b/src/lib/krb5/ccache/ChangeLog @@ -1,3 +1,9 @@ +2004-12-25 Ezra Peisach + + * cc_file.c (krb5_fcc_close): Free the cache id. + (dereference): When removing fcc_set entry from list, free the + pointer as well. + 2004-12-16 Jeffrey Altman * cc_mslsa.c: Temporarily deactivate support for KerbSubmitTicketMessage diff --git a/src/lib/krb5/ccache/cc_file.c b/src/lib/krb5/ccache/cc_file.c index f247c425d..20e6a177c 100644 --- a/src/lib/krb5/ccache/cc_file.c +++ b/src/lib/krb5/ccache/cc_file.c @@ -1486,8 +1486,11 @@ static krb5_error_code dereference(krb5_context context, krb5_fcc_data *data) assert(*fccsp != NULL); (*fccsp)->refcount--; if ((*fccsp)->refcount == 0) { + struct fcc_set *temp; data = (*fccsp)->data; + temp = *fccsp; *fccsp = (*fccsp)->next; + free(temp); k5_mutex_unlock(&krb5int_cc_file_mutex); free(data->filename); zap(data->buf, sizeof(data->buf)); @@ -1517,6 +1520,7 @@ static krb5_error_code KRB5_CALLCONV krb5_fcc_close(krb5_context context, krb5_ccache id) { dereference(context, (krb5_fcc_data *) id->data); + krb5_xfree(id); return KRB5_OK; } -- 2.26.2