aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2015-07-26 13:21:47 -0400
committerTom Yu <tlyu@mit.edu>2015-08-18 16:57:26 -0400
commit6ee030430abcfd76294b6599ccaa24c4d36674db (patch)
tree1824188cb4b661492ecc677b65e60519d57973d5
parentd170ed6e57e5d3ebe0cf158b1bb6782bbcd74798 (diff)
downloadkrb5-6ee030430abcfd76294b6599ccaa24c4d36674db.zip
krb5-6ee030430abcfd76294b6599ccaa24c4d36674db.tar.gz
krb5-6ee030430abcfd76294b6599ccaa24c4d36674db.tar.bz2
Fix uncommon leak in krb5_init_creds_step()
Release any previous value of ctx->err_padata before setting it in init_creds_step_reply(). It could have a prior value after a realm referral or retriable error. (cherry picked from commit 997eb174f5fd81747ad0ecb671f00c25951931b1) ticket: 8223 version_fixed: 1.13.3 status: resolved
-rw-r--r--src/lib/krb5/krb/get_in_tkt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lib/krb5/krb/get_in_tkt.c b/src/lib/krb5/krb/get_in_tkt.c
index 2005002..7a50161 100644
--- a/src/lib/krb5/krb/get_in_tkt.c
+++ b/src/lib/krb5/krb/get_in_tkt.c
@@ -1426,6 +1426,8 @@ init_creds_step_reply(krb5_context context,
ctx->request->client->type == KRB5_NT_ENTERPRISE_PRINCIPAL;
if (ctx->err_reply != NULL) {
+ krb5_free_pa_data(context, ctx->err_padata);
+ ctx->err_padata = NULL;
code = krb5int_fast_process_error(context, ctx->fast_state,
&ctx->err_reply, &ctx->err_padata,
&retry);