aboutsummaryrefslogtreecommitdiffstats
path: root/packet-ipv6.c
diff options
context:
space:
mode:
authorEd Warnicke <hagbard@physics.rutgers.edu>2001-11-26 04:52:51 +0000
committerEd Warnicke <hagbard@physics.rutgers.edu>2001-11-26 04:52:51 +0000
commitfcd5b352af60e034a4b63601272b43b6644029cd (patch)
treeb423f343624fa9219216fac49dd6a23b2c4d5586 /packet-ipv6.c
parent7537283cc691e6370db67fd5b0e393583074bf7f (diff)
Moved from using dissect_data() to using call_dissector()
svn path=/trunk/; revision=4269
Diffstat (limited to 'packet-ipv6.c')
-rw-r--r--packet-ipv6.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/packet-ipv6.c b/packet-ipv6.c
index e7d67dab65..b41a877cab 100644
--- a/packet-ipv6.c
+++ b/packet-ipv6.c
@@ -1,7 +1,7 @@
/* packet-ipv6.c
* Routines for IPv6 packet disassembly
*
- * $Id: packet-ipv6.c,v 1.67 2001/11/21 21:37:25 guy Exp $
+ * $Id: packet-ipv6.c,v 1.68 2001/11/26 04:52:50 hagbard Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -105,6 +105,8 @@ static gint ett_ipv6 = -1;
static gint ett_ipv6_fragments = -1;
static gint ett_ipv6_fragment = -1;
+static dissector_handle_t data_handle;
+
/* Reassemble fragmented datagrams */
static gboolean ipv6_reassemble = FALSE;
@@ -939,7 +941,7 @@ again:
if (next_tvb == NULL) {
/* Just show this as a fragment. */
/* COL_INFO was filled in by "dissect_frag6()" */
- dissect_data(tvb, offset, pinfo, tree);
+ call_dissector(data_handle,tvb_new_subset(tvb, offset, -1,tvb_reported_length_remaining(tvb,offset)),pinfo, tree);
/* As we haven't reassembled anything, we haven't changed "pi", so
we don't have to restore it. */
@@ -951,7 +953,7 @@ again:
/* Unknown protocol */
if (check_col(pinfo->fd, COL_INFO))
col_add_fstr(pinfo->fd, COL_INFO, "%s (0x%02x)", ipprotostr(nxt),nxt);
- dissect_data(next_tvb, 0, pinfo, tree);
+ call_dissector(data_handle,next_tvb, pinfo, tree);
}
}
@@ -1150,6 +1152,7 @@ proto_register_ipv6(void)
void
proto_reg_handoff_ipv6(void)
{
+ data_handle = find_dissector("data");
dissector_add("ethertype", ETHERTYPE_IPv6, dissect_ipv6, proto_ipv6);
dissector_add("ppp.protocol", PPP_IPV6, dissect_ipv6, proto_ipv6);
dissector_add("ip.proto", IP_PROTO_IPV6, dissect_ipv6, proto_ipv6);