r4663: fixed SPNEGO auth in the rpc server
authorAndrew Tridgell <tridge@samba.org>
Tue, 11 Jan 2005 01:53:14 +0000 (01:53 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:08:40 +0000 (13:08 -0500)
(This used to be commit 439cbb9ead2443513ecc84f5638924e056ebdc73)

source4/rpc_server/dcesrv_auth.c

index 91b579b9e45bf0edd470f33cd9e20d2cc4f3fc8f..62c879408f423441d6b59b53b32c4ef42d6291d5 100644 (file)
@@ -239,8 +239,9 @@ BOOL dcesrv_auth_alter_ack(struct dcesrv_call_state *call, struct dcerpc_packet
        struct dcesrv_connection *dce_conn = call->conn;
        NTSTATUS status;
 
        struct dcesrv_connection *dce_conn = call->conn;
        NTSTATUS status;
 
-       /* on a pure interface change there is no auth blob */
-       if (pkt->u.alter.auth_info.length == 0) {
+       /* on a pure interface change there is no auth_info structure
+          setup */
+       if (!call->conn->auth_state.auth_info) {
                return True;
        }
 
                return True;
        }
 
@@ -252,7 +253,7 @@ BOOL dcesrv_auth_alter_ack(struct dcesrv_call_state *call, struct dcerpc_packet
                               call,
                               dce_conn->auth_state.auth_info->credentials, 
                               &dce_conn->auth_state.auth_info->credentials);
                               call,
                               dce_conn->auth_state.auth_info->credentials, 
                               &dce_conn->auth_state.auth_info->credentials);
-       
+
        if (NT_STATUS_IS_OK(status)) {
                status = gensec_session_info(dce_conn->auth_state.gensec_security,
                                             &dce_conn->auth_state.session_info);
        if (NT_STATUS_IS_OK(status)) {
                status = gensec_session_info(dce_conn->auth_state.gensec_security,
                                             &dce_conn->auth_state.session_info);