* Guy Harris <guy@xxxxxxxxxxxx> [23/10/03 - 10:01]:
> On Tue, Oct 21, 2003 at 02:47:24PM +0200, Jean-Baptiste Marchand wrote:
> > All operations dissected by Ethereal DCE RPC dissectors should now be
> > correctly recognized (i.e, no more unknown operations names).
>
> Replace "T" with "M" in "TAPI", and you'll see a dissector that still
> has an unknown operation name (MAPI_UNKNOWN_02). All we have for MAPI
> are "Logon" and "Logoff".
See the attached patches.
Jean-Baptiste Marchand
--
Jean-Baptiste.Marchand@xxxxxx
HSC - http://www.hsc.fr/
Index: packet-dcerpc-mapi.c
===================================================================
RCS file: /cvsroot/ethereal/packet-dcerpc-mapi.c,v
retrieving revision 1.24
diff -u -r1.24 packet-dcerpc-mapi.c
--- packet-dcerpc-mapi.c 4 Aug 2003 02:49:02 -0000 1.24
+++ packet-dcerpc-mapi.c 23 Oct 2003 12:59:03 -0000
@@ -280,7 +280,7 @@
}
static int
-mapi_unknown_02_request(tvbuff_t *tvb, int offset,
+mapi_ec_do_rpc_request(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
@@ -306,7 +306,7 @@
return offset;
}
static int
-mapi_unknown_02_reply(tvbuff_t *tvb, int offset,
+mapi_ec_do_rpc_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
@@ -357,16 +357,24 @@
static dcerpc_sub_dissector dcerpc_mapi_dissectors[] = {
- { MAPI_LOGON, "Logon",
+ { MAPI_EC_DO_CONNECT, "EcDoConnect",
mapi_logon_rqst,
mapi_logon_reply },
- { MAPI_LOGOFF, "Logoff",
+ { MAPI_EC_DO_DISCONNECT,"EcDoDisconnect",
mapi_logoff_rqst,
mapi_logoff_reply },
- { MAPI_UNKNOWN_02, "unknown_02",
- mapi_unknown_02_request,
- mapi_unknown_02_reply },
-
+ { MAPI_EC_DO_RPC, "EcDoRpc",
+ mapi_ec_do_rpc_request,
+ mapi_ec_do_rpc_reply },
+ { MAPI_EC_GET_MORE_RPC, "EcGetMoreRpc", NULL, NULL },
+ { MAPI_EC_REGISTER_PUSH_NOTIFICATION, "EcRRegisterPushNotification",
+ NULL, NULL },
+ { MAPI_EC_UNREGISTER_PUSH_NOTIFICATION, "EcRUnregisterPushNotification",
+ NULL, NULL },
+ { MAPI_EC_DUMMY_RPC, "EcDummyRpc", NULL, NULL },
+ { MAPI_EC_GET_DC_NAME, "EcRGetDCName", NULL, NULL },
+ { MAPI_EC_NET_GET_DC_NAME, "EcRNetGetDCName", NULL, NULL },
+ { MAPI_EC_DO_RPC_EXT, "EcDoRpcExt", NULL, NULL },
{0, NULL, NULL, NULL }
};
Index: packet-dcerpc-mapi.h
===================================================================
RCS file: /cvsroot/ethereal/packet-dcerpc-mapi.h,v
retrieving revision 1.3
diff -u -r1.3 packet-dcerpc-mapi.h
--- packet-dcerpc-mapi.h 28 Aug 2002 21:00:09 -0000 1.3
+++ packet-dcerpc-mapi.h 23 Oct 2003 12:59:10 -0000
@@ -26,8 +26,16 @@
#ifndef __PACKET_DCERPC_MAPI_H
#define __PACKET_DCERPC_MAPI_H
-#define MAPI_LOGON 0x00
-#define MAPI_LOGOFF 0x01
-#define MAPI_UNKNOWN_02 0x02
+#define MAPI_EC_DO_CONNECT 0x00
+#define MAPI_EC_DO_DISCONNECT 0x01
+#define MAPI_EC_DO_RPC 0x02
+#define MAPI_EC_GET_MORE_RPC 0x03
+#define MAPI_EC_REGISTER_PUSH_NOTIFICATION 0x04
+#define MAPI_EC_UNREGISTER_PUSH_NOTIFICATION 0x05
+#define MAPI_EC_DUMMY_RPC 0x06
+#define MAPI_EC_GET_DC_NAME 0x07
+#define MAPI_EC_NET_GET_DC_NAME 0x08
+#define MAPI_EC_DO_RPC_EXT 0x09
+
#endif