credentials: gss_set_cred_option() doesn't like GSS_C_NO_BUFFER
authorStefan Metzmacher <metze@samba.org>
Fri, 27 Jun 2008 09:31:49 +0000 (11:31 +0200)
committerStefan Metzmacher <metze@samba.org>
Fri, 27 Jun 2008 10:43:04 +0000 (12:43 +0200)
metze
(This used to be commit 31cf1a781efce932d0574d7840979fcd0a07ec08)

source4/auth/credentials/credentials_krb5.c

index 583469edae1f1081fb072d7b1c9182e5f1338d35..a880486f0fc884679e97824c2b97638069b66192 100644 (file)
@@ -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) {