diff options
author | Alexandra Ellwood <lxs@mit.edu> | 2003-04-14 22:17:10 +0000 |
---|---|---|
committer | Alexandra Ellwood <lxs@mit.edu> | 2003-04-14 22:17:10 +0000 |
commit | 840fb62393e7b7853e11637a6b8c08269f650b5c (patch) | |
tree | e1bb53beec299fa253117577b8d5eb96484ecdc3 /src | |
parent | 3afe75ddbc7bf4b1ae6df23a531c0f57ce266f12 (diff) | |
download | krb5-840fb62393e7b7853e11637a6b8c08269f650b5c.tar.gz krb5-840fb62393e7b7853e11637a6b8c08269f650b5c.tar.xz krb5-840fb62393e7b7853e11637a6b8c08269f650b5c.zip |
* g_ad_tkt.c: Added support for login library to get_ad_tkt. Support is copied from Mac Kerberos4 library and conditionalized for USE_LOGIN_LIBRARY to avoid changing get_ad_tkt's behavior for non-Kerberos Login Library builds
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15352 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/krb4/ChangeLog | 7 | ||||
-rw-r--r-- | src/lib/krb4/g_ad_tkt.c | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/lib/krb4/ChangeLog b/src/lib/krb4/ChangeLog index 9c53ca17ba..907e771c29 100644 --- a/src/lib/krb4/ChangeLog +++ b/src/lib/krb4/ChangeLog @@ -1,3 +1,10 @@ +2003-04-04 Alexandra Ellwood <lxs@mit.edu> + + * g_ad_tkt.c: Added support for login library to get_ad_tkt. + Support is copied from Mac Kerberos4 library and conditionalized + for USE_LOGIN_LIBRARY to avoid changing get_ad_tkt's behavior for + non-Kerberos Login Library builds. + 2003-03-06 Alexandra Ellwood <lxs@mit.edu> * CCache-glue.c: Added prototypes for deprecated functions. diff --git a/src/lib/krb4/g_ad_tkt.c b/src/lib/krb4/g_ad_tkt.c index daae7515fb..353fdcee5e 100644 --- a/src/lib/krb4/g_ad_tkt.c +++ b/src/lib/krb4/g_ad_tkt.c @@ -256,6 +256,15 @@ get_ad_tkt(service, sinstance, realm, lifetime) size_t snamelen, sinstlen; kerror = krb_get_tf_realm(TKT_FILE, lrealm); +#if USE_LOGIN_LIBRARY + if (kerror == GC_NOTKT) { + /* No tickets... call krb_get_cred (KLL will prompt) and try again. */ + if ((kerror = krb_get_cred ("krbtgt", realm, realm, &cr)) == KSUCCESS) { + /* Now get the realm again. */ + kerror = krb_get_tf_realm (TKT_FILE, lrealm); + } + } +#endif if (kerror != KSUCCESS) return kerror; |