summaryrefslogtreecommitdiff
path: root/source4/auth/kerberos/kerberos_util.c
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2012-03-31 03:23:19 -0400
committerAndreas Schneider <asn@samba.org>2012-04-12 12:06:42 +0200
commita46e465ce0d05d9b2e0ff016aa8db14dc149153b (patch)
tree5e0871f0ab91bcc5de49784957719094946f420d /source4/auth/kerberos/kerberos_util.c
parentaedbd6bf8e4029c2089652d0f0a80777bc856f89 (diff)
downloadsamba-a46e465ce0d05d9b2e0ff016aa8db14dc149153b.tar.gz
samba-a46e465ce0d05d9b2e0ff016aa8db14dc149153b.tar.bz2
samba-a46e465ce0d05d9b2e0ff016aa8db14dc149153b.zip
s4-auth-krb: Remove unneded dependency on kerberos_util.
Signed-off-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'source4/auth/kerberos/kerberos_util.c')
-rw-r--r--source4/auth/kerberos/kerberos_util.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/source4/auth/kerberos/kerberos_util.c b/source4/auth/kerberos/kerberos_util.c
index 0d2d19c78d..d30ac24c34 100644
--- a/source4/auth/kerberos/kerberos_util.c
+++ b/source4/auth/kerberos/kerberos_util.c
@@ -327,19 +327,25 @@ static krb5_error_code free_keytab_container(struct keytab_container *ktc)
krb5_error_code smb_krb5_get_keytab_container(TALLOC_CTX *mem_ctx,
struct smb_krb5_context *smb_krb5_context,
+ krb5_keytab opt_keytab,
const char *keytab_name,
struct keytab_container **ktc)
{
krb5_keytab keytab;
krb5_error_code ret;
- ret = krb5_kt_resolve(smb_krb5_context->krb5_context,
- keytab_name, &keytab);
- if (ret) {
- DEBUG(1,("failed to open krb5 keytab: %s\n",
- smb_get_krb5_error_message(
+
+ if (opt_keytab) {
+ keytab = opt_keytab;
+ } else {
+ ret = krb5_kt_resolve(smb_krb5_context->krb5_context,
+ keytab_name, &keytab);
+ if (ret) {
+ DEBUG(1,("failed to open krb5 keytab: %s\n",
+ smb_get_krb5_error_message(
smb_krb5_context->krb5_context,
ret, mem_ctx)));
- return ret;
+ return ret;
+ }
}
*ktc = talloc(mem_ctx, struct keytab_container);