summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-06-27 11:31:49 +0200
committerStefan Metzmacher <metze@samba.org>2008-06-27 12:43:04 +0200
commit78ed0f72a663ac0f6241c388918ea301ce2b6638 (patch)
tree8bbc7c30afe9ee0b22f8e1e8418ac8dd7e4acd97
parent0c6ce977ffb8f53f546596b76c1e0858cc6a88ba (diff)
downloadsamba-78ed0f72a663ac0f6241c388918ea301ce2b6638.tar.gz
samba-78ed0f72a663ac0f6241c388918ea301ce2b6638.tar.bz2
samba-78ed0f72a663ac0f6241c388918ea301ce2b6638.zip
credentials: gss_set_cred_option() doesn't like GSS_C_NO_BUFFER
metze (This used to be commit 31cf1a781efce932d0574d7840979fcd0a07ec08)
-rw-r--r--source4/auth/credentials/credentials_krb5.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/source4/auth/credentials/credentials_krb5.c b/source4/auth/credentials/credentials_krb5.c
index 583469edae..a880486f0f 100644
--- a/source4/auth/credentials/credentials_krb5.c
+++ b/source4/auth/credentials/credentials_krb5.c
@@ -359,11 +359,14 @@ _PUBLIC_ int cli_credentials_get_client_gss_creds(struct cli_credentials *cred,
OM_uint32 maj_stat, min_stat;
struct gssapi_creds_container *gcc;
struct ccache_container *ccache;
+ gss_buffer_desc empty_buffer = GSS_C_EMPTY_BUFFER;
+
if (cred->client_gss_creds_obtained >= cred->client_gss_creds_threshold &&
cred->client_gss_creds_obtained > CRED_UNINITIALISED) {
*_gcc = cred->client_gss_creds;
return 0;
}
+
ret = cli_credentials_get_ccache(cred, event_ctx, lp_ctx,
&ccache);
if (ret) {
@@ -391,7 +394,7 @@ _PUBLIC_ int cli_credentials_get_client_gss_creds(struct cli_credentials *cred,
/* don't force GSS_C_CONF_FLAG and GSS_C_INTEG_FLAG */
maj_stat = gss_set_cred_option(&min_stat, &gcc->creds,
GSS_KRB5_CRED_NO_CI_FLAGS_X,
- GSS_C_NO_BUFFER);
+ &empty_buffer);
if (maj_stat) {
talloc_free(gcc);
if (min_stat) {