aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-dcom-sysact.c
diff options
context:
space:
mode:
authorUlf Lamping <ulf.lamping@web.de>2005-05-24 19:59:20 +0000
committerUlf Lamping <ulf.lamping@web.de>2005-05-24 19:59:20 +0000
commitc911c15371c538ed9778ed3289303401a45a19b3 (patch)
tree16b6ed03146a4a5234cea7beac7a05910957a41c /epan/dissectors/packet-dcom-sysact.c
parent5812f26b650ae13077050126f7c0c7049f72a1d7 (diff)
dissect ORPC this/that of RemoteCreateInstance
svn path=/trunk/; revision=14427
Diffstat (limited to 'epan/dissectors/packet-dcom-sysact.c')
-rw-r--r--epan/dissectors/packet-dcom-sysact.c37
1 files changed, 34 insertions, 3 deletions
diff --git a/epan/dissectors/packet-dcom-sysact.c b/epan/dissectors/packet-dcom-sysact.c
index 05525eaf0d..37d2f711d7 100644
--- a/epan/dissectors/packet-dcom-sysact.c
+++ b/epan/dissectors/packet-dcom-sysact.c
@@ -32,8 +32,8 @@
#include <glib.h>
#include <epan/packet.h>
#include "packet-dcerpc.h"
-#include "packet-dcerpc-dcom.h"
-#include "packet-smb-common.h"
+#include "packet-dcom.h"
+
static int proto_ISystemActivator = -1;
@@ -44,12 +44,43 @@ static gint ett_ISystemActivator = -1;
static e_uuid_t uuid_ISystemActivator = { 0x000001a0, 0x0000, 0x0000, { 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46 } };
static guint16 ver_ISystemActivator = 0;
+
+static int
+dissect_remsysact_remotecreateinstance_rqst(tvbuff_t *tvb, int offset,
+ packet_info *pinfo, proto_tree *tree, guint8 *drep)
+{
+
+ offset = dissect_dcom_this(tvb, offset, pinfo, tree, drep);
+
+ offset = dissect_dcom_tobedone_data(tvb, offset, pinfo, tree, drep,
+ tvb_ensure_length_remaining(tvb, offset));
+
+ return offset;
+}
+
+
+static int
+dissect_remsysact_remotecreateinstance_resp(tvbuff_t *tvb, int offset,
+ packet_info *pinfo, proto_tree *tree, guint8 *drep)
+{
+
+ offset = dissect_dcom_that(tvb, offset, pinfo, tree, drep);
+
+ offset = dissect_dcom_tobedone_data(tvb, offset, pinfo, tree, drep,
+ tvb_ensure_length_remaining(tvb, offset));
+
+ return offset;
+}
+
+
+
+
static dcerpc_sub_dissector ISystemActivator_dissectors[] = {
{ 0, "QueryInterfaceIRemoteSCMActivator", NULL, NULL },
{ 1, "AddRefIRemoteISCMActivator", NULL, NULL },
{ 2, "ReleaseIRemoteISCMActivator", NULL, NULL },
{ 3, "RemoteGetClassObject", NULL, NULL },
- { 4, "RemoteCreateInstance", NULL, NULL },
+ { 4, "RemoteCreateInstance", dissect_remsysact_remotecreateinstance_rqst, dissect_remsysact_remotecreateinstance_resp },
{ 0, NULL, NULL, NULL },
};