Handle pa-afs3-salt case.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4260 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -196,7 +196,7 @@ _krb5_extract_ticket(krb5_context context,
|
|||||||
|
|
||||||
krb5_timeofday (context, &sec_now);
|
krb5_timeofday (context, &sec_now);
|
||||||
if (context->kdc_sec_offset == 0
|
if (context->kdc_sec_offset == 0
|
||||||
&& krb5_config_get_bool (context->cf,
|
&& krb5_config_get_bool (context, NULL,
|
||||||
"libdefaults",
|
"libdefaults",
|
||||||
"kdc_timesync",
|
"kdc_timesync",
|
||||||
NULL)) {
|
NULL)) {
|
||||||
@@ -563,10 +563,21 @@ krb5_get_in_cred(krb5_context context,
|
|||||||
int index = 0;
|
int index = 0;
|
||||||
pa = krb5_find_padata(rep.part1.padata->val, rep.part1.padata->len,
|
pa = krb5_find_padata(rep.part1.padata->val, rep.part1.padata->len,
|
||||||
pa_pw_salt, &index);
|
pa_pw_salt, &index);
|
||||||
|
if(pa == NULL) {
|
||||||
|
index = 0;
|
||||||
|
pa = krb5_find_padata(rep.part1.padata->val,
|
||||||
|
rep.part1.padata->len,
|
||||||
|
pa_afs3_salt, &index);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(pa) {
|
if(pa) {
|
||||||
krb5_keytype keytype;
|
krb5_keytype keytype;
|
||||||
ret = krb5_etype_to_keytype(context, etype, &keytype);
|
ret = krb5_etype_to_keytype(context, etype, &keytype);
|
||||||
|
if(pa->padata_type == pa_afs3_salt){
|
||||||
|
if(keytype != KEYTYPE_DES)
|
||||||
|
return KRB5_PROG_KEYTYPE_NOSUPP;
|
||||||
|
keytype = KEYTYPE_DES_AFS3;
|
||||||
|
}
|
||||||
ret = (*key_proc)(context, keytype, &pa->padata_value, keyseed, &key);
|
ret = (*key_proc)(context, keytype, &pa->padata_value, keyseed, &key);
|
||||||
} else {
|
} else {
|
||||||
/* make a v5 salted pa-data */
|
/* make a v5 salted pa-data */
|
||||||
|
Reference in New Issue
Block a user