[krbdev.mit.edu #8930] git commit
"Greg Hudson via RT" <[email protected]>
| Newsgroups | gmane.comp.encryption.kerberos.bugs |
|---|---|
| Message-ID | <[email protected]> |
Fri Aug 07 18:49:07 2020: Request 8930 was acted upon. Transaction: Ticket created by [email protected] Queue: krb5 Subject: git commit Owner: [email protected] Requestors: Status: new Ticket <URL: https://krbdev.mit.edu/rt/Ticket/Display.html?id=8930 > Expand dns_canonicalize_host=fallback support In krb5_sname_to_principal(), when using fallback, defer realm lookup and any kind of hostname canonicalization until use. Add a lightweight iterator k5_canonprinc() to yield the one or two possible candidates for a principal. In the iterator, don't yield the same hostname part twice. Add fallback processing to the stepwise TGS state machine, and remove it from krb5_get_credentials(). Add fallback processing to k5_get_proxy_cred_from_kdc(). Add fallback processing to krb5_init_creds_set_keytab(), and use the principal we find in the keytab as the request client principal. Defer restart_init_creds_loop() to the first step call so that server principal is built using the correct realm. Add fallback processing to krb5_rd_req(). https://github.com/krb5/krb5/commit/3fcc365a6f049730b3f47168f7112c03997c5c0b Author: Greg Hudson <[email protected]> Commit: 3fcc365a6f049730b3f47168f7112c03997c5c0b Branch: master src/include/k5-trace.h | 4 +- src/kprop/kprop_util.c | 26 ++--- src/lib/krb5/krb/deps | 41 ++++---- src/lib/krb5/krb/get_creds.c | 151 ++++++++++++--------------- src/lib/krb5/krb/get_in_tkt.c | 7 +- src/lib/krb5/krb/gic_keytab.c | 29 +++++- src/lib/krb5/krb/init_creds_ctx.h | 1 + src/lib/krb5/krb/rd_req_dec.c | 36 ++++++- src/lib/krb5/krb/s4u_creds.c | 62 ++++++++--- src/lib/krb5/os/os-proto.h | 30 +++++ src/lib/krb5/os/sn2princ.c | 213 +++++++++++++++++++++++++----------- src/tests/icred.c | 39 +++++-- src/tests/t_sn2princ.py | 55 +++++++--- 13 files changed, 459 insertions(+), 235 deletions(-)