pull up r25536 from trunk
authorTom Yu <tlyu@mit.edu>
Wed, 14 Dec 2011 23:32:41 +0000 (23:32 +0000)
committerTom Yu <tlyu@mit.edu>
Wed, 14 Dec 2011 23:32:41 +0000 (23:32 +0000)
 ------------------------------------------------------------------------
 r25536 | ghudson | 2011-12-09 12:57:52 -0500 (Fri, 09 Dec 2011) | 8 lines

 ticket: 7049
 subject: Fix subkey memory leak in krb5_get_credentials
 target_version: 1.10
 tags: pullup

 If a get_credentials operation requires multiple TGS requests, we need
 to free the subkey from previous requests before saving a new one.

ticket: 7049
version_fixed: 1.10
status: resolved

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-10@25586 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/krb/get_creds.c

index 780e6568b00cd4c6d6e88dffccdb996ba1df2abe..8927b3b2b928a693db29fe365eb8660bd6443a18 100644 (file)
@@ -266,6 +266,8 @@ make_request(krb5_context context, krb5_tkt_creds_context ctx,
     if (!krb5_c_valid_enctype(ctx->cur_tgt->keyblock.enctype))
         return KRB5_PROG_ETYPE_NOSUPP;
 
+    krb5_free_keyblock(context, ctx->subkey);
+    ctx->subkey = NULL;
     code = krb5int_make_tgs_request(context, ctx->cur_tgt, ctx->kdcopt,
                                     ctx->cur_tgt->addresses, NULL,
                                     ctx->tgs_in_creds, NULL, NULL, &request,