aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2003-09-03 06:38:15 +0000
committerGuy Harris <guy@alum.mit.edu>2003-09-03 06:38:15 +0000
commit4815aadacf55d19c59aca6f2e0097e711b7ec46c (patch)
treee708530265f047a0277951955646e9edb21e8d70
parent172159397390fbb6467b41d32aed46da7d7b4288 (diff)
As with the Cisco OUI, so with the Nortel OUI.
svn path=/trunk/; revision=8352
-rw-r--r--Makefile.am3
-rw-r--r--Makefile.nmake3
-rw-r--r--packet-llc.c26
-rw-r--r--packet-nt-oui.c54
4 files changed, 60 insertions, 26 deletions
diff --git a/Makefile.am b/Makefile.am
index d38e4d1431..7ffeeb538b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,7 +1,7 @@
# Makefile.am
# Automake file for Ethereal
#
-# $Id: Makefile.am,v 1.619 2003/09/03 06:27:03 guy Exp $
+# $Id: Makefile.am,v 1.620 2003/09/03 06:38:14 guy Exp $
#
# Ethereal - Network traffic analyzer
# By Gerald Combs <gerald@ethereal.com>
@@ -311,6 +311,7 @@ DISSECTOR_SRC = \
packet-nlm.c \
packet-nlsp.c \
packet-nntp.c \
+ packet-nt-oui.c \
packet-nt-sonmp.c \
packet-ntlmssp.c \
packet-ntp.c \
diff --git a/Makefile.nmake b/Makefile.nmake
index a6c6279157..cfe7647d10 100644
--- a/Makefile.nmake
+++ b/Makefile.nmake
@@ -1,7 +1,7 @@
## Makefile for building ethereal.exe with Microsoft C and nmake
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
#
-# $Id: Makefile.nmake,v 1.332 2003/09/03 06:27:03 guy Exp $
+# $Id: Makefile.nmake,v 1.333 2003/09/03 06:38:15 guy Exp $
include config.nmake
include <win32.mak>
@@ -252,6 +252,7 @@ DISSECTOR_SRC = \
packet-nlm.c \
packet-nlsp.c \
packet-nntp.c \
+ packet-nt-oui.c \
packet-nt-sonmp.c \
packet-ntlmssp.c \
packet-ntp.c \
diff --git a/packet-llc.c b/packet-llc.c
index e32fc34ac4..aa06bb5e07 100644
--- a/packet-llc.c
+++ b/packet-llc.c
@@ -2,7 +2,7 @@
* Routines for IEEE 802.2 LLC layer
* Gilbert Ramirez <gram@alumni.rice.edu>
*
- * $Id: packet-llc.c,v 1.114 2003/09/03 06:27:03 guy Exp $
+ * $Id: packet-llc.c,v 1.115 2003/09/03 06:38:15 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -67,8 +67,6 @@ static gint ett_llc_ctrl = -1;
static dissector_table_t subdissector_table;
static dissector_table_t xid_subdissector_table;
-static dissector_table_t nortel_subdissector_table;
-
static dissector_handle_t bpdu_handle;
static dissector_handle_t eth_handle;
static dissector_handle_t fddi_handle;
@@ -167,7 +165,7 @@ http://www.cisco.com/univercd/cc/td/doc/product/software/ios113ed/113ed_cr/ibm_r
{ OUI_ATM_FORUM, "ATM Forum" },
{ OUI_CABLE_BPDU, "DOCSIS Spanning Tree" }, /* DOCSIS spanning tree BPDU */
{ OUI_APPLE_ATALK, "Apple (AppleTalk)" },
- { OUI_NORTEL, "Nortel Networks SONMP" },
+ { OUI_NORTEL, "Nortel Networks SONMP" },
{ 0, NULL }
};
@@ -521,24 +519,6 @@ dissect_snap(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree,
call_dissector(bpdu_handle, next_tvb, pinfo, tree);
break;
- case OUI_NORTEL:
- /* Nortel Networks
- * Synoptics Networks Management Protocol
- * protocol ID's 0x01a1, 0x01a2, 0x01a3
- */
- if (tree) {
- proto_tree_add_uint(snap_tree, hf_pid,tvb, offset+3,2, etype);
- }
- next_tvb = tvb_new_subset(tvb, offset + 5, -1, -1);
- if (XDLC_IS_INFORMATION(control)) {
- /* do lookup with the subdissector table */
- if (!dissector_try_port(nortel_subdissector_table,
- etype, next_tvb, pinfo, tree))
- call_dissector(data_handle, next_tvb, pinfo, tree);
- } else
- call_dissector(data_handle, next_tvb, pinfo, tree);
- break;
-
default:
/*
* Do we have information for this OUI?
@@ -630,8 +610,6 @@ proto_register_llc(void)
"LLC SAP", FT_UINT8, BASE_HEX);
xid_subdissector_table = register_dissector_table("llc.xid_dsap",
"LLC XID SAP", FT_UINT8, BASE_HEX);
- nortel_subdissector_table = register_dissector_table("llc.nortel_pid",
- "Nortel OUI PID", FT_UINT16, BASE_HEX);
register_dissector("llc", dissect_llc, proto_llc);
}
diff --git a/packet-nt-oui.c b/packet-nt-oui.c
new file mode 100644
index 0000000000..16ecd94cac
--- /dev/null
+++ b/packet-nt-oui.c
@@ -0,0 +1,54 @@
+/* packet-nt-oui.c
+ * Register an LLC dissector table for Nortel's OUI 00:00:0c
+ *
+ * $Id: packet-nt-oui.c,v 1.1 2003/09/03 06:38:15 guy Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * Copyright 1998 Gerald Combs
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#include "config.h"
+
+#include <epan/packet.h>
+#include "packet-llc.h"
+#include "oui.h"
+
+static int hf_llc_nortel_pid = -1;
+
+static const value_string nortel_pid_vals[] = {
+ { 0x01a1, "SONMP flatnet hello" },
+ { 0x01a2, "SONMP segment hello" },
+ { 0x01a3, "SONMP bridge hello" },
+ { 0, NULL }
+};
+
+/*
+ * NOTE: there's no dissector here, just registration routines to set
+ * up the dissector table for the Nortel OUI.
+ */
+void
+proto_register_nortel_oui(void)
+{
+ static hf_register_info hf = {
+ &hf_llc_nortel_pid,
+ { "PID", "llc.nortel_pid", FT_UINT16, BASE_HEX,
+ VALS(nortel_pid_vals), 0x0, "", HFILL },
+ };
+
+ llc_add_oui(OUI_NORTEL, "llc.nortel_pid", "Nortel OUI PID", &hf);
+}