summaryrefslogtreecommitdiffstats
path: root/src/kdc/kdc_preauth.c
diff options
context:
space:
mode:
authorSam Hartman <hartmans@mit.edu>2003-04-09 18:19:18 +0000
committerSam Hartman <hartmans@mit.edu>2003-04-09 18:19:18 +0000
commit241c3aece6cb5569b525797c5bd3a3f64a7efad7 (patch)
treecf0d09733df6572ff93fcf2c8fc516583df5e9ff /src/kdc/kdc_preauth.c
parente0576e558e9179dd1fd7d4782f98f21ce1b59eb0 (diff)
downloadkrb5-241c3aece6cb5569b525797c5bd3a3f64a7efad7.tar.gz
krb5-241c3aece6cb5569b525797c5bd3a3f64a7efad7.tar.xz
krb5-241c3aece6cb5569b525797c5bd3a3f64a7efad7.zip
etype info handling infinite loop
If a request contains no des-cbc-crc enctype bumt des-cbc-crc or des-cbc-md5 existis in the database then an infinite loop is created. Fix etype info handling to avoid this. ticket: new Tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15332 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kdc/kdc_preauth.c')
-rw-r--r--src/kdc/kdc_preauth.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/kdc/kdc_preauth.c b/src/kdc/kdc_preauth.c
index f5c1e121ab..87b0358d7d 100644
--- a/src/kdc/kdc_preauth.c
+++ b/src/kdc/kdc_preauth.c
@@ -568,8 +568,10 @@ get_etype_info(krb5_context context, krb5_kdc_req *request,
while (1) {
if (!request_contains_enctype(context,
request, db_etype)) {
- if (db_etype == ENCTYPE_DES_CBC_CRC)
- continue;
+ if (db_etype == ENCTYPE_DES_CBC_CRC) {
+ db_etype = ENCTYPE_DES_CBC_MD5;
+ continue;
+ }
else break;
}