]> git.ipfire.org Git - thirdparty/krb5.git/commit
Do not loop on principal unknown errors
authorSimo Sorce <simo@redhat.com>
Tue, 20 Jan 2015 18:48:34 +0000 (13:48 -0500)
committerTom Yu <tlyu@mit.edu>
Sun, 25 Jan 2015 03:47:15 +0000 (22:47 -0500)
commita4d6afb74adcd1b0f0078f7a2891ddc9d51927bc
tree9f12a801d2fff794c436cb3ff7800bbbb8fc90cc
parentc388e3df8fca0860da91f464bd18d3eba1dd77cb
Do not loop on principal unknown errors

If the canonicalize flag is set, the MIT KDC always return the client
principal when KRB5_KDC_ERR_C_PRICIPAL_UNKNOWN is returned.

Check that this is really a referral by testing that the returned
client realm differs from the requested one.

[ghudson@mit.edu: simplified and narrowed is_referral() contract.
Note that a WRONG_REALM response with e-data or FAST error padata
could now be passed through k5_preauth_tryagain() if it has an empty
crealm or a crealm equal to the requested client realm.  Such a
response is unexpected in practice and there is nothing dangerous
about handling it this way.]

(cherry picked from commit d5755694b620570defeecee772def90a2733c6cc)

ticket: 8060
version_fixed: 1.13.1
src/lib/krb5/krb/get_in_tkt.c