From ab3d728b7e7b1f3aa878ed5601a45ba08a08eb1f Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 27 Nov 2003 05:34:28 +0000 Subject: added an rpc scanner. This prints messages like this: uuid 82273fdc-e32a-18c3-3f78-827929dc23ea version 0x0000:0x0000 'eventlog' 24 calls available WARNING: local IDL defines 4 calls when all the WARNINGs are gone then we know we have all the calls :) (This used to be commit f5821b2468a0c46d0e5590de59562926d746c349) --- source4/librpc/idl/dcerpc.idl | 6 ++++++ source4/librpc/rpc/dcerpc.h | 2 ++ source4/librpc/rpc/dcerpc_util.c | 3 ++- 3 files changed, 10 insertions(+), 1 deletion(-) (limited to 'source4/librpc') diff --git a/source4/librpc/idl/dcerpc.idl b/source4/librpc/idl/dcerpc.idl index d31e734416..b00396e787 100644 --- a/source4/librpc/idl/dcerpc.idl +++ b/source4/librpc/idl/dcerpc.idl @@ -78,7 +78,13 @@ interface dcerpc [flag(NDR_REMAINING)] DATA_BLOB stub_and_verifier; } dcerpc_response; + + const int DCERPC_FAULT_OP_RNG_ERROR = 0x1c010002; + typedef struct { + uint32 alloc_hint; + uint16 context_id; + uint8 cancel_count; uint32 status; } dcerpc_fault; diff --git a/source4/librpc/rpc/dcerpc.h b/source4/librpc/rpc/dcerpc.h index 9a301db66b..6f9aa75e8b 100644 --- a/source4/librpc/rpc/dcerpc.h +++ b/source4/librpc/rpc/dcerpc.h @@ -78,6 +78,8 @@ struct dcerpc_interface_call { struct dcerpc_interface_table { const char *name; + const char *uuid; + uint32 if_version; uint32 num_calls; const struct dcerpc_interface_call *calls; }; diff --git a/source4/librpc/rpc/dcerpc_util.c b/source4/librpc/rpc/dcerpc_util.c index fa69425ab0..e9499f969b 100644 --- a/source4/librpc/rpc/dcerpc_util.c +++ b/source4/librpc/rpc/dcerpc_util.c @@ -62,7 +62,8 @@ NTSTATUS dcerpc_epm_map_tcp_port(const char *server, GUID guid; struct epm_twr_t twr, *twr_r; - if (strcasecmp(uuid, DCERPC_EPMAPPER_UUID) == 0) { + if (strcasecmp(uuid, DCERPC_EPMAPPER_UUID) == 0 || + strcasecmp(uuid, DCERPC_MGMT_UUID) == 0) { /* don't lookup epmapper via epmapper! */ *port = EPMAPPER_PORT; return NT_STATUS_OK; -- cgit