aboutsummaryrefslogtreecommitdiffstats
path: root/packet-bpdu.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2001-07-23 18:21:32 +0000
committerGuy Harris <guy@alum.mit.edu>2001-07-23 18:21:32 +0000
commitc12060d8cc210dc76ae51ea7c0e598b3731d0bd1 (patch)
tree851243ccf6c251463b3fe47ca0d131c965601173 /packet-bpdu.c
parentbaa0f415137e45c001a32a8e778af3da4b6fd73f (diff)
GMRP dissector, from Markus Seehofer.
Throw a very small caltrop in the way of spam-harvesters, by replacing "@" in e-mail addresses in the AUTHORS file and Ethereal man page with "[AT]" (although I wouldn't be surprised to find that some of those harvesters already know about that trick and "fix" those addresses so you, too, can receive Valuable Information about Viagra, can-fail Internet investment opportunities and stuff-envelopes-at-home jobs, and cable descramblers). Add a couple of items from the AUTHORS file to the Ethereal man page. svn path=/trunk/; revision=3781
Diffstat (limited to 'packet-bpdu.c')
-rw-r--r--packet-bpdu.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/packet-bpdu.c b/packet-bpdu.c
index 0d86b92884..22de38aaa4 100644
--- a/packet-bpdu.c
+++ b/packet-bpdu.c
@@ -1,7 +1,7 @@
/* packet-bpdu.c
* Routines for BPDU (Spanning Tree Protocol) disassembly
*
- * $Id: packet-bpdu.c,v 1.26 2001/06/18 02:17:45 guy Exp $
+ * $Id: packet-bpdu.c,v 1.27 2001/07/23 18:21:30 guy Exp $
*
* Copyright 1999 Christophe Tronche <ch.tronche@computer.org>
*
@@ -77,6 +77,7 @@ static int hf_bpdu_forward_delay = -1;
static gint ett_bpdu = -1;
static dissector_handle_t gvrp_handle;
+static dissector_handle_t gmrp_handle;
static void
dissect_bpdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
@@ -120,8 +121,9 @@ dissect_bpdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
switch (pinfo->dl_dst.data[5]) {
case 0x20:
- /* Future expansion for GMRP */
- break;
+ /* for GMRP */
+ call_dissector(gmrp_handle, tvb, pinfo, tree);
+ return;
case 0x21:
/* for GVRP */
@@ -339,6 +341,11 @@ proto_reg_handoff_bpdu(void)
* Get handle for the GVRP dissector.
*/
gvrp_handle = find_dissector("gvrp");
+
+ /*
+ * Get handle for the GMRP dissector.
+ */
+ gmrp_handle = find_dissector("gmrp");
dissector_add("llc.dsap", SAP_BPDU, dissect_bpdu, proto_bpdu);
dissector_add("ppp.protocol", PPP_BPDU, dissect_bpdu, proto_bpdu);