]> git.ipfire.org Git - thirdparty/krb5.git/commit
Explicitly prevent referrals for certain requests
authorGreg Hudson <ghudson@mit.edu>
Fri, 30 Aug 2013 16:14:00 +0000 (12:14 -0400)
committerGreg Hudson <ghudson@mit.edu>
Wed, 4 Sep 2013 01:38:32 +0000 (21:38 -0400)
commit8a9909ff9ef6b51c5ed09ead6713888fbb34072f
treeb9490b200ce3f146f5ff4e263c38ddf79c39abff
parent2f37634ae89f8bd13ec64120fce56ba5613c498c
Explicitly prevent referrals for certain requests

For ticket modification requests (such as renewals), u2u requests, and
S4U2Self requests, the requested server principal is expected to match
a previously issued ticket.  If that principal no longer exists, we
must fail the request; we cannot issue a referral.  We are currently
doing that by rewriting request->server to the referral principal,
which causes the match against the ticket to fail.  Since we would
like to stop modifying the request, we must explicitly prevent
referrals in these cases.

We don't find out whether a request is S4U2Self until after we've
looked up the server principal, so for now we have to make a
retroactive check for a referral after calling
kdc_process_s4u2self_req.
src/kdc/do_tgs_req.c
src/kdc/kdc_util.h