diff options
author | Jacques Vidrine <nectar@FreeBSD.org> | 2002-02-19 15:46:56 +0000 |
---|---|---|
committer | Jacques Vidrine <nectar@FreeBSD.org> | 2002-02-19 15:46:56 +0000 |
commit | 4137ff4cc173ea2e05227027e1c9e0ea42bcc0dc (patch) | |
tree | 85ecf91fd00875cec4b93111d3a8ed9eec9cddfe /crypto/heimdal/lib/gssapi/acquire_cred.c | |
parent | 5a83b025a988368a32c549e5bd9fd3e0478c0198 (diff) |
Import of Heimdal Kerberos from KTH repository circa 2002/02/17.
Notes
Notes:
svn path=/vendor-crypto/heimdal/dist/; revision=90926
Diffstat (limited to 'crypto/heimdal/lib/gssapi/acquire_cred.c')
-rw-r--r-- | crypto/heimdal/lib/gssapi/acquire_cred.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/crypto/heimdal/lib/gssapi/acquire_cred.c b/crypto/heimdal/lib/gssapi/acquire_cred.c index acc60a2fcf2a..0e6873ff2c11 100644 --- a/crypto/heimdal/lib/gssapi/acquire_cred.c +++ b/crypto/heimdal/lib/gssapi/acquire_cred.c @@ -33,7 +33,7 @@ #include "gssapi_locl.h" -RCSID("$Id: acquire_cred.c,v 1.6 2001/05/11 09:16:45 assar Exp $"); +RCSID("$Id: acquire_cred.c,v 1.7 2001/07/06 15:33:28 assar Exp $"); OM_uint32 gss_acquire_cred (OM_uint32 * minor_status, @@ -85,9 +85,23 @@ OM_uint32 gss_acquire_cred krb5_get_init_creds_opt opt; try_keytab: - kret = krb5_kt_default(gssapi_krb5_context, &handle->keytab); - if (kret != 0) - goto krb5_bad; + if (gssapi_krb5_keytab != NULL) { + char kt_name[256]; + + kret = krb5_kt_get_name(gssapi_krb5_context, + gssapi_krb5_keytab, + kt_name, sizeof(kt_name)); + if (kret) + goto krb5_bad; + kret = krb5_kt_resolve(gssapi_krb5_context, kt_name, + &handle->keytab); + if (kret) + goto krb5_bad; + } else { + kret = krb5_kt_default(gssapi_krb5_context, &handle->keytab); + if (kret != 0) + goto krb5_bad; + } krb5_get_init_creds_opt_init(&opt); memset(&cred, 0, sizeof(cred)); |