s3:libsmb: always pass the servers gss blob to gensec
authorStefan Metzmacher <metze@samba.org>
Thu, 27 Oct 2016 13:00:47 +0000 (15:00 +0200)
committerAndreas Schneider <asn@cryptomilk.org>
Tue, 15 Nov 2016 10:00:27 +0000 (11:00 +0100)
The spnego backend will take the "client use spnego principal" option.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
source3/libsmb/cliconnect.c

index 8c47b7802905734bffa24948e0567d26f39fbcf2..0b5c5a67ac49f514e88d79b5c60552b28a09f70d 100644 (file)
@@ -564,7 +564,7 @@ static struct tevent_req *cli_session_setup_gensec_send(
        struct tevent_req *req;
        struct cli_session_setup_gensec_state *state;
        NTSTATUS status;
-       bool use_spnego_principal = lp_client_use_spnego_principal();
+       const DATA_BLOB *b = NULL;
 
        req = tevent_req_create(mem_ctx, &state,
                                struct cli_session_setup_gensec_state);
@@ -653,10 +653,6 @@ static struct tevent_req *cli_session_setup_gensec_send(
        cli_credentials_set_kerberos_state(state->auth_generic->credentials,
                                           krb5_state);
 
-       if (krb5_state == CRED_DONT_USE_KERBEROS) {
-               use_spnego_principal = false;
-       }
-
        if (target_service != NULL) {
                status = gensec_set_target_service(
                                state->auth_generic->gensec_security,
@@ -682,17 +678,11 @@ static struct tevent_req *cli_session_setup_gensec_send(
                if (tevent_req_nterror(req, status)) {
                        return tevent_req_post(req, ev);
                }
-               use_spnego_principal = false;
-       } else if (target_service != NULL && target_hostname != NULL) {
-               use_spnego_principal = false;
        }
 
-       if (use_spnego_principal) {
-               const DATA_BLOB *b;
-               b = smbXcli_conn_server_gss_blob(cli->conn);
-               if (b != NULL) {
-                       state->blob_in = *b;
-               }
+       b = smbXcli_conn_server_gss_blob(cli->conn);
+       if (b != NULL) {
+               state->blob_in = *b;
        }
 
        state->is_anonymous = cli_credentials_is_anonymous(state->auth_generic->credentials);