s4:rpc_server/netlogon: set *r->out.authoritative = 1 even on INVALID_PARAMETER/INFO_...
authorStefan Metzmacher <metze@samba.org>
Tue, 1 Feb 2011 09:27:35 +0000 (10:27 +0100)
committerStefan Metzmacher <metze@samba.org>
Wed, 2 Feb 2011 10:58:26 +0000 (11:58 +0100)
metze

source4/rpc_server/netlogon/dcerpc_netlogon.c

index 6961bf79fc0345d3a9f51e4f26761f135983fca7..d8a0f98d55a444275574924d43c1fd16c3a4ae66 100644 (file)
@@ -551,6 +551,8 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base(struct dcesrv_call_state *dce_cal
        struct netr_SamInfo3 *sam3;
        struct netr_SamInfo6 *sam6;
 
+       *r->out.authoritative = 1;
+
        user_info = talloc_zero(mem_ctx, struct auth_usersupplied_info);
        NT_STATUS_HAVE_NO_MEMORY(user_info);
 
@@ -674,6 +676,7 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base(struct dcesrv_call_state *dce_cal
        }
 
        nt_status = auth_check_password(auth_context, mem_ctx, user_info, &server_info);
+       /* TODO: set *r->out.authoritative = 0 on specific errors */
        NT_STATUS_NOT_OK_RETURN(nt_status);
 
        switch (r->in.validation_level) {
@@ -756,8 +759,6 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base(struct dcesrv_call_state *dce_cal
                }
        }
 
-       *r->out.authoritative = 1;
-
        /* TODO: Describe and deal with these flags */
        *r->out.flags = 0;