From 1d5ab8fd05123dd46e64a6249db2928c89aec2f2 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 21 Mar 2006 00:04:05 +0000 Subject: r14597: Merge DCERPC_FAULT constants from Samba 4. Guenther (This used to be commit 3f195f8248c88ec8bf8ceb195575ce6bb49d7fc4) --- source3/include/rpc_dce.h | 10 ++++++++++ source3/nsswitch/winbindd_pam.c | 2 +- source3/rpc_server/srv_pipe.c | 10 +++++----- source3/rpc_server/srv_pipe_hnd.c | 4 ++-- source3/rpc_server/srv_samr.c | 2 +- 5 files changed, 19 insertions(+), 9 deletions(-) diff --git a/source3/include/rpc_dce.h b/source3/include/rpc_dce.h index bc11a20305..b4d350ee6f 100644 --- a/source3/include/rpc_dce.h +++ b/source3/include/rpc_dce.h @@ -82,6 +82,16 @@ enum RPC_PKT_TYPE { #define RPC_PIPE_AUTH_SEAL_LEVEL 0x6 #endif +#define DCERPC_FAULT_OP_RNG_ERROR 0x1c010002 +#define DCERPC_FAULT_UNK_IF 0x1c010003 +#define DCERPC_FAULT_INVALID_TAG 0x1c000006 +#define DCERPC_FAULT_CONTEXT_MISMATCH 0x1c00001a +#define DCERPC_FAULT_OTHER 0x00000001 +#define DCERPC_FAULT_ACCESS_DENIED 0x00000005 +#define DCERPC_FAULT_CANT_PERFORM 0x000006d8 +#define DCERPC_FAULT_NDR 0x000006f7 + + /* Netlogon schannel auth type and level */ #define SCHANNEL_SIGN_SIGNATURE { 0x77, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00 } #define SCHANNEL_SEAL_SIGNATURE { 0x77, 0x00, 0x7a, 0x00, 0xff, 0xff, 0x00, 0x00 } diff --git a/source3/nsswitch/winbindd_pam.c b/source3/nsswitch/winbindd_pam.c index 922a24adf0..97689cb3dc 100644 --- a/source3/nsswitch/winbindd_pam.c +++ b/source3/nsswitch/winbindd_pam.c @@ -1657,7 +1657,7 @@ void winbindd_pam_chauthtok(struct winbindd_cli_state *state) got_info = True; /* only fallback when the chgpasswd3 call is not supported */ - } else if ((NT_STATUS_EQUAL(result, NT_STATUS(0x1c010002))) || + } else if ((NT_STATUS_EQUAL(result, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR))) || (NT_STATUS_EQUAL(result, NT_STATUS_NOT_SUPPORTED)) || (NT_STATUS_EQUAL(result, NT_STATUS_NOT_IMPLEMENTED))) { diff --git a/source3/rpc_server/srv_pipe.c b/source3/rpc_server/srv_pipe.c index eb7fd25daa..9b6fcb2f15 100644 --- a/source3/rpc_server/srv_pipe.c +++ b/source3/rpc_server/srv_pipe.c @@ -71,7 +71,7 @@ static BOOL create_next_pdu_ntlmssp(pipes_struct *p) */ if(p->fault_state) { - setup_fault_pdu(p, NT_STATUS(0x1c010002)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR)); return True; } @@ -284,7 +284,7 @@ static BOOL create_next_pdu_schannel(pipes_struct *p) */ if(p->fault_state) { - setup_fault_pdu(p, NT_STATUS(0x1c010002)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR)); return True; } @@ -460,7 +460,7 @@ static BOOL create_next_pdu_noauth(pipes_struct *p) */ if(p->fault_state) { - setup_fault_pdu(p, NT_STATUS(0x1c010002)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR)); return True; } @@ -2250,7 +2250,7 @@ BOOL api_rpcTNP(pipes_struct *p, const char *rpc_name, * and not put the pipe into fault state. JRA. */ DEBUG(4, ("unknown\n")); - setup_fault_pdu(p, NT_STATUS(0x1c010002)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR)); return True; } @@ -2268,7 +2268,7 @@ BOOL api_rpcTNP(pipes_struct *p, const char *rpc_name, if (p->bad_handle_fault_state) { DEBUG(4,("api_rpcTNP: bad handle fault return.\n")); p->bad_handle_fault_state = False; - setup_fault_pdu(p, NT_STATUS(0x1C00001A)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_CONTEXT_MISMATCH)); return True; } diff --git a/source3/rpc_server/srv_pipe_hnd.c b/source3/rpc_server/srv_pipe_hnd.c index 0d07db2be3..9cc8b72546 100644 --- a/source3/rpc_server/srv_pipe_hnd.c +++ b/source3/rpc_server/srv_pipe_hnd.c @@ -699,7 +699,7 @@ static void process_complete_pdu(pipes_struct *p) DEBUG(10,("process_complete_pdu: pipe %s in fault state.\n", p->name )); set_incoming_fault(p); - setup_fault_pdu(p, NT_STATUS(0x1c010002)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR)); return; } @@ -826,7 +826,7 @@ static void process_complete_pdu(pipes_struct *p) if (!reply) { DEBUG(3,("process_complete_pdu: DCE/RPC fault sent on pipe %s\n", p->pipe_srv_name)); set_incoming_fault(p); - setup_fault_pdu(p, NT_STATUS(0x1c010002)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_OP_RNG_ERROR)); prs_mem_free(&rpc_in); } else { /* diff --git a/source3/rpc_server/srv_samr.c b/source3/rpc_server/srv_samr.c index 015ed6c5ea..8e4955a81c 100644 --- a/source3/rpc_server/srv_samr.c +++ b/source3/rpc_server/srv_samr.c @@ -849,7 +849,7 @@ static BOOL api_samr_set_userinfo(pipes_struct *p) /* Fix for W2K SP2 */ /* what is that status-code ? - gd */ if (q_u.switch_value == 0x1a) { - setup_fault_pdu(p, NT_STATUS(0x1c000006)); + setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_INVALID_TAG)); return True; } return False; -- cgit