summaryrefslogtreecommitdiff
path: root/auth/credentials
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 /auth/credentials
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 'auth/credentials')
-rw-r--r--auth/credentials/credentials_krb5.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/auth/credentials/credentials_krb5.c b/auth/credentials/credentials_krb5.c
index f4defa1cc0..40ae454a9d 100644
--- a/auth/credentials/credentials_krb5.c
+++ b/auth/credentials/credentials_krb5.c
@@ -665,6 +665,8 @@ _PUBLIC_ int cli_credentials_get_keytab(struct cli_credentials *cred,
krb5_error_code ret;
struct keytab_container *ktc;
struct smb_krb5_context *smb_krb5_context;
+ const char *keytab_name;
+ krb5_keytab keytab;
TALLOC_CTX *mem_ctx;
if (cred->keytab_obtained >= (MAX(cred->principal_obtained,
@@ -688,8 +690,16 @@ _PUBLIC_ int cli_credentials_get_keytab(struct cli_credentials *cred,
return ENOMEM;
}
- ret = smb_krb5_create_memory_keytab(mem_ctx, cred,
- smb_krb5_context, &ktc);
+ ret = smb_krb5_create_memory_keytab(mem_ctx, cred,
+ smb_krb5_context,
+ &keytab, &keytab_name);
+ if (ret) {
+ talloc_free(mem_ctx);
+ return ret;
+ }
+
+ ret = smb_krb5_get_keytab_container(mem_ctx, smb_krb5_context,
+ keytab, keytab_name, &ktc);
if (ret) {
talloc_free(mem_ctx);
return ret;
@@ -733,7 +743,7 @@ _PUBLIC_ int cli_credentials_set_keytab_name(struct cli_credentials *cred,
}
ret = smb_krb5_get_keytab_container(mem_ctx, smb_krb5_context,
- keytab_name, &ktc);
+ NULL, keytab_name, &ktc);
if (ret) {
return ret;
}