From 4d35cba1657abb8e1e4d8b7967a8acafcfa76160 Mon Sep 17 00:00:00 2001 From: Assar Westerlund Date: Tue, 12 May 1998 19:10:59 +0000 Subject: [PATCH] (krb5_mk_req_extended): only set encryption type in auth_context if it's compatible with the type of the session key git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4866 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/mk_req_ext.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/krb5/mk_req_ext.c b/lib/krb5/mk_req_ext.c index 029342961..00d2955f5 100644 --- a/lib/krb5/mk_req_ext.c +++ b/lib/krb5/mk_req_ext.c @@ -72,13 +72,20 @@ krb5_mk_req_extended(krb5_context context, value specified by the user, but it's the easiest way to make the code use a compatible enctype */ Ticket ticket; + int ticket_keytype; + ret = decode_Ticket(in_creds->ticket.data, in_creds->ticket.length, &ticket, NULL); - ret = krb5_auth_setenctype(context, - ac, - ticket.enc_part.etype); + krb5_etype_to_keytype (context, + ticket.enc_part.etype, + &ticket_keytype); + + if (ticket_keytype == in_creds->session.keytype) + krb5_auth_setenctype(context, + ac, + ticket.enc_part.etype); free_Ticket(&ticket); }