aboutsummaryrefslogtreecommitdiffstats
path: root/packet-smb-pipe.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2001-11-18 22:44:08 +0000
committerGuy Harris <guy@alum.mit.edu>2001-11-18 22:44:08 +0000
commit8c358fd83e99d639629718279e42a752a9a5edc2 (patch)
treece9020f9977b04c634301b090d2f58b63122cecc /packet-smb-pipe.c
parentdbec2dc1e8d4ebf7e6dd12a75d38d49de3315e11 (diff)
From Tim Potter: use the FID, for DCE RPC-over-SMB, as part of the
conversation matching. svn path=/trunk/; revision=4220
Diffstat (limited to 'packet-smb-pipe.c')
-rw-r--r--packet-smb-pipe.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/packet-smb-pipe.c b/packet-smb-pipe.c
index 29eba32e0a..9c78c81855 100644
--- a/packet-smb-pipe.c
+++ b/packet-smb-pipe.c
@@ -8,7 +8,7 @@ XXX Fixme : shouldnt show [malformed frame] for long packets
* significant rewrite to tvbuffify the dissector, Ronnie Sahlberg and
* Guy Harris 2001
*
- * $Id: packet-smb-pipe.c,v 1.43 2001/11/18 02:51:19 guy Exp $
+ * $Id: packet-smb-pipe.c,v 1.44 2001/11/18 22:44:07 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -54,6 +54,7 @@ XXX Fixme : shouldnt show [malformed frame] for long packets
#include "smb.h"
#include "packet-smb-pipe.h"
#include "packet-smb-browse.h"
+#include "packet-dcerpc.h"
static int proto_smb_lanman = -1;
static int hf_function_code = -1;
@@ -2177,11 +2178,20 @@ static heur_dissector_list_t msrpc_heur_subdissector_list;
static gboolean
dissect_pipe_msrpc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
{
+ dcerpc_private_info dcerpc_priv;
+ smb_info_t *smb_priv = (smb_info_t *)pinfo->private_data;
gboolean result;
+ dcerpc_priv.transport_type = DCERPC_TRANSPORT_SMB;
+ dcerpc_priv.data.smb.fid = smb_priv->fid;
+
+ pinfo->private_data = &dcerpc_priv;
+
result = dissector_try_heuristic(msrpc_heur_subdissector_list, tvb,
pinfo, parent_tree);
+ pinfo->private_data = smb_priv;
+
if (!result)
dissect_data(tvb, 0, pinfo, parent_tree);