diff options
| author | John Kohl <jtkohl@mit.edu> | 1990-05-07 17:13:52 +0000 |
|---|---|---|
| committer | John Kohl <jtkohl@mit.edu> | 1990-05-07 17:13:52 +0000 |
| commit | ae9f37e3a89703df5818584774633b88b7843e83 (patch) | |
| tree | 1d8978252772a8a222bd43885a0e0a82e9cdfcb7 /src | |
| parent | fcd9ba7a0bb539092ad7099101c9085a36f33dfc (diff) | |
| download | krb5-ae9f37e3a89703df5818584774633b88b7843e83.tar.gz krb5-ae9f37e3a89703df5818584774633b88b7843e83.tar.xz krb5-ae9f37e3a89703df5818584774633b88b7843e83.zip | |
can't free creds, it is passed in, but we can free the components
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@764 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/krb5/ccache/file/fcc_nseq.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/lib/krb5/ccache/file/fcc_nseq.c b/src/lib/krb5/ccache/file/fcc_nseq.c index 8038ba6de..2826772b8 100644 --- a/src/lib/krb5/ccache/file/fcc_nseq.c +++ b/src/lib/krb5/ccache/file/fcc_nseq.c @@ -93,7 +93,19 @@ krb5_fcc_next_cred(id, cursor, creds) ((krb5_fcc_data *) id->data)->fd = -1; } lose: - if (kret != KRB5_OK) - krb5_free_creds(creds); + if (kret != KRB5_OK) { + if (creds->client) + krb5_free_principal(creds->client); + if (creds->server) + krb5_free_principal(creds->server); + if (creds->keyblock.contents) + xfree(creds->keyblock.contents); + if (creds->ticket.data) + xfree(creds->ticket.data); + if (creds->second_ticket.data) + xfree(creds->second_ticket.data); + if (creds->addresses) + krb5_free_address(creds->addresses); + } return kret; } |
