diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/krb5/krb/preauth2.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/krb5/krb/preauth2.c b/src/lib/krb5/krb/preauth2.c index 74a4f27be..7252048cb 100644 --- a/src/lib/krb5/krb/preauth2.c +++ b/src/lib/krb5/krb/preauth2.c @@ -570,6 +570,11 @@ already_tried(krb5_context context, krb5_preauthtype pa_type) size_t count; krb5_preauthtype *newptr; + /* Allow multi-hop SAM-2 exchanges using repeated preauth-required errors + * for historical compatibility. */ + if (pa_type == KRB5_PADATA_SAM_CHALLENGE_2) + return FALSE; + for (count = 0; pctx->tried != NULL && pctx->tried[count] != 0; count++) { if (pctx->tried[count] == pa_type) return TRUE; |
