aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2018-02-13 11:47:23 -0800
committerGuy Harris <guy@alum.mit.edu>2018-02-13 20:15:19 +0000
commitfeb8f6b14d7e342db369656ab44c38546b0140bb (patch)
treebe9e003bb3c220f47cbfa8968c61562823ed44a5
parent048c4373e15a401a8700bc57b403282c7830d27e (diff)
Make the DOCSIS dissector a built-in dissector.
Stuff that calls it is built in, and stuff it calls is built in, so there's not much point in having it be a plugin; we already have examples of plugin dissectors. Change-Id: I512e0fda62faedb5f03f476fbece2e267e1d644f Reviewed-on: https://code.wireshark.org/review/25775 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Guy Harris <guy@alum.mit.edu>
-rw-r--r--CMakeLists.txt1
-rw-r--r--configure.ac1
-rw-r--r--epan/dissectors/CMakeLists.txt5
-rw-r--r--epan/dissectors/Makefile.am5
-rw-r--r--epan/dissectors/packet-docsis-macmgmt.c (renamed from plugins/epan/docsis/packet-macmgmt.c)2
-rw-r--r--epan/dissectors/packet-docsis-tlv.c (renamed from plugins/epan/docsis/packet-tlv.c)8
-rw-r--r--epan/dissectors/packet-docsis-tlv.h (renamed from plugins/epan/docsis/packet-tlv.h)0
-rw-r--r--epan/dissectors/packet-docsis-vendor.c (renamed from plugins/epan/docsis/packet-vendor.c)0
-rw-r--r--epan/dissectors/packet-docsis.c (renamed from plugins/epan/docsis/packet-docsis.c)4
-rw-r--r--packaging/nsis/wireshark.nsi1
-rw-r--r--packaging/wix/Plugins.wxi4
-rw-r--r--plugins/Makefile.am1
-rw-r--r--plugins/epan/docsis/AUTHORS3
-rw-r--r--plugins/epan/docsis/CMakeLists.txt85
-rw-r--r--plugins/epan/docsis/ChangeLog15
-rw-r--r--plugins/epan/docsis/Makefile.am71
-rw-r--r--plugins/epan/docsis/README52
17 files changed, 19 insertions, 239 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 22d1e8623e..a84053bf82 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1375,7 +1375,6 @@ if(ENABLE_PLUGINS)
add_custom_target(plugins)
set_target_properties(plugins PROPERTIES FOLDER "Plugins")
set(PLUGIN_SRC_DIRS
- plugins/epan/docsis
plugins/epan/ethercat
plugins/epan/gryphon
plugins/epan/irda
diff --git a/configure.ac b/configure.ac
index de63869854..a1f18a6922 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2800,7 +2800,6 @@ AC_CONFIG_FILES(
packaging/rpm/SPECS/wireshark.spec
packaging/wix/Makefile
plugins/Makefile
- plugins/epan/docsis/Makefile
plugins/epan/ethercat/Makefile
plugins/epan/gryphon/Makefile
plugins/epan/irda/Makefile
diff --git a/epan/dissectors/CMakeLists.txt b/epan/dissectors/CMakeLists.txt
index 18e574db6d..0703f3587d 100644
--- a/epan/dissectors/CMakeLists.txt
+++ b/epan/dissectors/CMakeLists.txt
@@ -317,6 +317,7 @@ set(DISSECTOR_PUBLIC_HEADERS
packet-diffserv-mpls-common.h
packet-disp.h
packet-dns.h
+ packet-docsis-tlv.h
packet-dop.h
packet-dsp.h
packet-dtls.h
@@ -894,6 +895,10 @@ set(DISSECTOR_SRC
${CMAKE_CURRENT_SOURCE_DIR}/packet-dmx.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-dnp.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-dns.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/packet-docsis.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/packet-docsis-macmgmt.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/packet-docsis-tlv.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/packet-docsis-vendor.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-dof.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-dplay.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-dpnet.c
diff --git a/epan/dissectors/Makefile.am b/epan/dissectors/Makefile.am
index 155b7bf742..d8c894b92e 100644
--- a/epan/dissectors/Makefile.am
+++ b/epan/dissectors/Makefile.am
@@ -517,6 +517,10 @@ DISSECTOR_SRC = \
packet-dmx.c \
packet-dnp.c \
packet-dns.c \
+ packet-docsis.c \
+ packet-docsis-macmgmt.c \
+ packet-docsis-tlv.c \
+ packet-docsis-vendor.c \
packet-dof.c \
packet-dplay.c \
packet-dpnet.c \
@@ -1563,6 +1567,7 @@ DISSECTOR_INCLUDES = \
packet-diffserv-mpls-common.h \
packet-disp.h \
packet-dns.h \
+ packet-docsis-tlv.h \
packet-dop.h \
packet-dsp.h \
packet-dtls.h \
diff --git a/plugins/epan/docsis/packet-macmgmt.c b/epan/dissectors/packet-docsis-macmgmt.c
index 5113f3657a..2bbc6e0ecb 100644
--- a/plugins/epan/docsis/packet-macmgmt.c
+++ b/epan/dissectors/packet-docsis-macmgmt.c
@@ -63,7 +63,7 @@
#include <epan/packet.h>
#include <epan/expert.h>
#include <wsutil/utf8_entities.h>
-#include "packet-tlv.h"
+#include "packet-docsis-tlv.h"
void proto_register_docsis_mgmt(void);
void proto_reg_handoff_docsis_mgmt(void);
diff --git a/plugins/epan/docsis/packet-tlv.c b/epan/dissectors/packet-docsis-tlv.c
index 3ab692e841..376be44c24 100644
--- a/plugins/epan/docsis/packet-tlv.c
+++ b/epan/dissectors/packet-docsis-tlv.c
@@ -17,12 +17,12 @@
#include <epan/packet.h>
#include <epan/expert.h>
-#include "packet-tlv.h"
+#include "packet-docsis-tlv.h"
/* This module will dissect the Appendix C TLV's. Please see:
* http://www.cablemodem.com/specifications/specifications.html
*
- * The main dissector is dissect_tlv. This routine will dissect
+ * The main dissector is dissect_docsis_tlv. This routine will dissect
* top level TLV's and call sub-dissectors for the sub-TLV's.
*/
@@ -4263,7 +4263,7 @@ dissect_cmts_mc_sess_enc(tvbuff_t * tvb, packet_info* pinfo, proto_tree *tree, i
static int
-dissect_tlv (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void* data _U_)
+dissect_docsis_tlv (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void* data _U_)
{
proto_item *it;
proto_tree *tlv_tree;
@@ -6487,7 +6487,7 @@ proto_register_docsis_tlv (void)
expert_docsis_tlv = expert_register_protocol(proto_docsis_tlv);
expert_register_field_array(expert_docsis_tlv, ei, array_length(ei));
- register_dissector ("docsis_tlv", dissect_tlv, proto_docsis_tlv);
+ register_dissector ("docsis_tlv", dissect_docsis_tlv, proto_docsis_tlv);
}
void
diff --git a/plugins/epan/docsis/packet-tlv.h b/epan/dissectors/packet-docsis-tlv.h
index e681a507b6..e681a507b6 100644
--- a/plugins/epan/docsis/packet-tlv.h
+++ b/epan/dissectors/packet-docsis-tlv.h
diff --git a/plugins/epan/docsis/packet-vendor.c b/epan/dissectors/packet-docsis-vendor.c
index 2f5f46e73b..2f5f46e73b 100644
--- a/plugins/epan/docsis/packet-vendor.c
+++ b/epan/dissectors/packet-docsis-vendor.c
diff --git a/plugins/epan/docsis/packet-docsis.c b/epan/dissectors/packet-docsis.c
index 6280ea4728..9549620deb 100644
--- a/plugins/epan/docsis/packet-docsis.c
+++ b/epan/dissectors/packet-docsis.c
@@ -22,6 +22,10 @@
* available on Cisco Cable Modem Termination Systems :
* http://www.cisco.com/univercd/cc/td/doc/product/cable/cab_rout/cmtsfg/ufg_cmon.htm
*
+ * Captures of DOCSIS 1.1 and DOCSIS 2.0 frames can be facilitated using
+ * the ARRIS Cadant C4 and the ARRIS Cadant C3:
+ * http://www.arrisi.com/products_solutions/product_families/Cadant/index.asp
+ *
* This dissector depends on the presence of a DOCSIS enapsulation type.
* There is no simple way to distinguish DOCSIS Frames from Ethernet frames,
* since the frames are copied from the RF interface on the CMTS to
diff --git a/packaging/nsis/wireshark.nsi b/packaging/nsis/wireshark.nsi
index c1977f10c8..d928107879 100644
--- a/packaging/nsis/wireshark.nsi
+++ b/packaging/nsis/wireshark.nsi
@@ -1014,7 +1014,6 @@ SectionGroup "Plugins & Extensions" SecPluginsGroup
Section "Dissector Plugins" SecPlugins
;-------------------------------------------
SetOutPath '$INSTDIR\plugins\${VERSION_MAJOR}.${VERSION_MINOR}\epan'
-File "${STAGING_DIR}\plugins\${VERSION_MAJOR}.${VERSION_MINOR}\epan\docsis.dll"
File "${STAGING_DIR}\plugins\${VERSION_MAJOR}.${VERSION_MINOR}\epan\ethercat.dll"
File "${STAGING_DIR}\plugins\${VERSION_MAJOR}.${VERSION_MINOR}\epan\gryphon.dll"
File "${STAGING_DIR}\plugins\${VERSION_MAJOR}.${VERSION_MINOR}\epan\irda.dll"
diff --git a/packaging/wix/Plugins.wxi b/packaging/wix/Plugins.wxi
index fc9f684ad2..0c59565055 100644
--- a/packaging/wix/Plugins.wxi
+++ b/packaging/wix/Plugins.wxi
@@ -4,9 +4,6 @@
<!-- Plugins -->
<Fragment>
<DirectoryRef Id="dirPluginsVersionEpan">
- <Component Id="cmpDocsis_dll" Guid="*">
- <File Id="filDocsis_dll" KeyPath="yes" Source="$(var.Plugins.Dir)\$(var.WiresharkMajorVersion).$(var.WiresharkMinorVersion)\epan\docsis.dll" />
- </Component>
<Component Id="cmpEthercat_dll" Guid="*">
<File Id="filEthercat_dll" KeyPath="yes" Source="$(var.Plugins.Dir)\$(var.WiresharkMajorVersion).$(var.WiresharkMinorVersion)\epan\ethercat.dll" />
</Component>
@@ -39,7 +36,6 @@
</Fragment>
<Fragment>
<ComponentGroup Id="CG.Plugins.Dissector">
- <ComponentRef Id="cmpDocsis_dll" />
<ComponentRef Id="cmpEthercat_dll" />
<ComponentRef Id="cmpGryphon_dll" />
<ComponentRef Id="cmpIrda_dll" />
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index 3db6a690ad..7e56bcf379 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -23,7 +23,6 @@
SUBDIRS = \
$(_CUSTOM_SUBDIRS_) \
- epan/docsis \
epan/ethercat \
epan/gryphon \
epan/irda \
diff --git a/plugins/epan/docsis/AUTHORS b/plugins/epan/docsis/AUTHORS
deleted file mode 100644
index b9ad1a9152..0000000000
--- a/plugins/epan/docsis/AUTHORS
+++ /dev/null
@@ -1,3 +0,0 @@
-Author :
-Anand Narwani <anand[AT]narwani.org>
-Brian Wheeler <brian.wheeler[AT]arrisi.com>
diff --git a/plugins/epan/docsis/CMakeLists.txt b/plugins/epan/docsis/CMakeLists.txt
deleted file mode 100644
index 63aad88ad3..0000000000
--- a/plugins/epan/docsis/CMakeLists.txt
+++ /dev/null
@@ -1,85 +0,0 @@
-# CMakeLists.txt
-#
-# Wireshark - Network traffic analyzer
-# By Gerald Combs <gerald@wireshark.org>
-# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-
-include(WiresharkPlugin)
-
-# Plugin name and version info (major minor micro extra)
-set_module_info(docsis 0 0 5 0)
-
-# The sources for the plugin
-set(DISSECTOR_SRC
- packet-docsis.c
- packet-macmgmt.c
- packet-tlv.c
- packet-vendor.c
-)
-
-set(PLUGIN_FILES
- plugin.c
- ${DISSECTOR_SRC}
-)
-
-set(CLEAN_FILES
- ${PLUGIN_FILES}
-)
-
-set_source_files_properties(
- ${CLEAN_FILES}
- PROPERTIES
- COMPILE_FLAGS "${WERROR_COMMON_FLAGS}"
-)
-
-include_directories(${CMAKE_CURRENT_SOURCE_DIR})
-
-register_plugin_files(plugin.c
- plugin
- ${DISSECTOR_SRC}
-)
-
-add_plugin_library(docsis epan)
-
-target_link_libraries(docsis epan)
-
-install_plugin(docsis epan)
-
-file(GLOB DISSECTOR_HEADERS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "*.h")
-CHECKAPI(
- NAME
- docsis
- SWITCHES
- -g abort -g termoutput -build
- SOURCES
- ${DISSECTOR_SRC}
- ${DISSECTOR_HEADERS}
-)
-
-#
-# Editor modelines - http://www.wireshark.org/tools/modelines.html
-#
-# Local variables:
-# c-basic-offset: 8
-# tab-width: 8
-# indent-tabs-mode: t
-# End:
-#
-# vi: set shiftwidth=8 tabstop=8 noexpandtab:
-# :indentSize=8:tabSize=8:noTabs=false:
-#
diff --git a/plugins/epan/docsis/ChangeLog b/plugins/epan/docsis/ChangeLog
deleted file mode 100644
index 9251dbc0e2..0000000000
--- a/plugins/epan/docsis/ChangeLog
+++ /dev/null
@@ -1,15 +0,0 @@
-Overview of changes in Wireshark DOCSIS Plugin 0.0.2
-* Fixed a number of cosmetic things.
-
-Overview of changes in Wireshark DOCSIS Plugin 0.0.3
-* Added Checks to each TLV Type to validate length. If the length is invalid
- an Exception is thrown.
-* Cleaned up the code in all dissctors so that they are a little more readable.
-
-Overview of changes in Wireshark DOCSIS Plugin 0.0.4
-* Added Support for Baseline Privacy Key Management Messages
-* Added Concatenation Support
-
-Overview of changes in Wireshark DOCSIS Plugin 0.0.5
-* Added Support in packet-tlv.c for SNMPv3 Kickstart TLV's
-* Added Support in packet-tlv.c for Subscriber Management TLV's
diff --git a/plugins/epan/docsis/Makefile.am b/plugins/epan/docsis/Makefile.am
deleted file mode 100644
index 33200bf47c..0000000000
--- a/plugins/epan/docsis/Makefile.am
+++ /dev/null
@@ -1,71 +0,0 @@
-# Makefile.am
-#
-# Wireshark - Network traffic analyzer
-# By Gerald Combs <gerald@wireshark.org>
-# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-include $(top_srcdir)/Makefile.am.inc
-include $(top_srcdir)/plugins/epan/Makefile.am.inc
-
-# the name of the plugin
-PLUGIN_NAME = docsis
-
-PLUGIN_VERSION = 0.0.5
-
-BUILT_SOURCES = \
- plugin.c
-
-# Non-generated sources to be scanned for registration routines
-NONGENERATED_REGISTER_C_FILES = \
- packet-docsis.c \
- packet-macmgmt.c \
- packet-tlv.c \
- packet-vendor.c
-
-# Non-generated sources
-NONGENERATED_C_FILES = \
- $(NONGENERATED_REGISTER_C_FILES)
-
-# Headers.
-CLEAN_HEADER_FILES = \
- packet-tlv.h
-
-HEADER_FILES = \
- $(FLEX_GENERATED_HEADER_FILES) \
- $(CLEAN_HEADER_FILES)
-
-epan_plugin_LTLIBRARIES = docsis.la
-
-docsis_la_SOURCES = \
- $(SRC_FILES) \
- $(HEADER_FILES)
-
-nodist_docsis_la_SOURCES = \
- plugin.c
-
-docsis_la_CPPFLAGS = $(AM_CPPFLAGS) $(PLUGIN_CPPFLAGS)
-
-docsis_la_CFLAGS = $(AM_CFLAGS) $(PLUGIN_CFLAGS)
-
-docsis_la_LDFLAGS = $(PLUGIN_LDFLAGS)
-
-DISTCLEANFILES = \
- plugin.c
-
-EXTRA_DIST = \
- README \
- CMakeLists.txt
diff --git a/plugins/epan/docsis/README b/plugins/epan/docsis/README
deleted file mode 100644
index 2e083a81c8..0000000000
--- a/plugins/epan/docsis/README
+++ /dev/null
@@ -1,52 +0,0 @@
-
-Overview:
-=========
-The dissectors provided by this plugin allow the dissection of DOCSIS 1.1
-Frames. Captures of DOCSIS 1.1 frames can be facilitated using Cisco's
-Cable Monitor Features found on Cicso UBR7200 and UBR10000 Series Cable Modem
-Termination Systems. Captures of DOCSIS 1.1 and DOCSIS 2.0 frames can be
-facilitated using the ARRIS Cadant C4 and the ARRIS Cadant C3.
-
-
-Features:
-=========
-+ Decode the DOCSIS header + Extended Header. For Data PDU's it will
- automatically decode as far up the stack that it can.
-+ Decode Mac Management Header. The following Mac Messages
- are decoded at present:
- REG-REQ
- REG-RSP
- REG-ACK
- RNG-REQ
- RNG-RSP
- UCC-REQ
- UCC-RSP
- UCD Messages
- MAP Messages
- DSA-REQ
- DSA-RSP
- DSA-ACK
- DSC-REQ
- DSC-RSP
- DSC-ACK
- DSD-REQ
- DSD-RSP
- BPKM-REQ
- BPKM-RSP
- BPKM Attributes
-+ Decode All Appendix C TLV's
-+ Decode Concatenated Frames via a recursive call to dissect_docsis()
-+ Decode DOCSIS 2.0 packets including:
- Type 29 UCD Messages (DOCSIS 2.0 only)
- INT-RNG-REQ
-
-References:
-===========
-DOCSIS 1.1 and DOCSIS 2.0 Specifications can be found at:
-http://www.cablemodem.com/specifications.html
-
-Information on Cisco's Cable Monitor Feature can be found at:
-http://www.cisco.com/univercd/cc/td/doc/product/cable/cab_rout/cmtsfg/ufg_cmon.htm
-
-Information on the ARRIS Cadant line of products
-http://www.arrisi.com/products_solutions/product_families/Cadant/index.asp