summaryrefslogtreecommitdiffstats
path: root/src/lib/krb5/krb/fwd_tgt.c
diff options
context:
space:
mode:
authorSam Hartman <hartmans@mit.edu>2003-05-13 21:53:59 +0000
committerSam Hartman <hartmans@mit.edu>2003-05-13 21:53:59 +0000
commit21ec6f257b6c8142382bb2fc942702e9ac06cb48 (patch)
tree90db027682f4326420bc08e061f75c2491ad9842 /src/lib/krb5/krb/fwd_tgt.c
parent84b9780854519d0a0ff744b75fbaf162f83947a1 (diff)
downloadkrb5-21ec6f257b6c8142382bb2fc942702e9ac06cb48.tar.gz
krb5-21ec6f257b6c8142382bb2fc942702e9ac06cb48.tar.xz
krb5-21ec6f257b6c8142382bb2fc942702e9ac06cb48.zip
Try forwarding with no enctype restriction if forwarding with an
enctype restriction fails. This is sufficient for 1.3. Ticket: 1473 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15431 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb5/krb/fwd_tgt.c')
-rw-r--r--src/lib/krb5/krb/fwd_tgt.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/lib/krb5/krb/fwd_tgt.c b/src/lib/krb5/krb/fwd_tgt.c
index aa42f8cc1..844536bbd 100644
--- a/src/lib/krb5/krb/fwd_tgt.c
+++ b/src/lib/krb5/krb/fwd_tgt.c
@@ -161,9 +161,15 @@ retval = KRB5_FWD_BAD_PRINCIPAL;
kdcoptions &= ~(KDC_OPT_FORWARDABLE);
if ((retval = krb5_get_cred_via_tkt(context, &tgt, kdcoptions,
- addrs, &creds, &pcreds)))
- goto errout;
-
+ addrs, &creds, &pcreds))) {
+ if (enctype) {
+ creds.keyblock.enctype = 0;
+ if ((retval = krb5_get_cred_via_tkt(context, &tgt, kdcoptions,
+ addrs, &creds, &pcreds)))
+ goto errout;
+ }
+ else goto errout;
+ }
retval = krb5_mk_1cred(context, auth_context, pcreds,
&scratch, &replaydata);
krb5_free_creds(context, pcreds);