memset(&reply_encpart, 0, sizeof(reply_encpart));
memset(&ticket_reply, 0, sizeof(ticket_reply));
memset(&enc_tkt_reply, 0, sizeof(enc_tkt_reply));
+ memset(&encrypting_key, 0, sizeof(encrypting_key));
session_key.contents = NULL;
retval = decode_krb5_tgs_req(pkt, &request);
errcode = krb5_encrypt_tkt_part(kdc_context, &encrypting_key,
&ticket_reply);
- if (!isflagset(request->kdc_options, KDC_OPT_ENC_TKT_IN_SKEY))
- krb5_free_keyblock_contents(kdc_context, &encrypting_key);
if (errcode)
goto cleanup;
ticket_reply.enc_part.kvno = ticket_kvno;
cleanup:
if (status == NULL)
status = "UNKNOWN_REASON";
+ if (!isflagset(request->kdc_options, KDC_OPT_ENC_TKT_IN_SKEY))
+ krb5_free_keyblock_contents(kdc_context, &encrypting_key);
if (reply_key)
krb5_free_keyblock(kdc_context, reply_key);
if (errcode)