aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-catapult-dct2000.c
diff options
context:
space:
mode:
authormartinm <martinm@f5534014-38df-0310-8fa8-9805f1628bb7>2011-03-15 17:30:00 +0000
committermartinm <martinm@f5534014-38df-0310-8fa8-9805f1628bb7>2011-03-15 17:30:00 +0000
commit4d252993c8aabc8c77ba9453d1d90e8da3abc687 (patch)
treef8ba55234a279618b72abc22289d05c3349854bd /epan/dissectors/packet-catapult-dct2000.c
parent5c87b39be07b54abf2e4d77ac81fe61c5c6274a4 (diff)
Fix calling of LTE dissectors for R9 DCT protocols.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@36196 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-catapult-dct2000.c')
-rw-r--r--epan/dissectors/packet-catapult-dct2000.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/epan/dissectors/packet-catapult-dct2000.c b/epan/dissectors/packet-catapult-dct2000.c
index caeec560e9..de376aebaa 100644
--- a/epan/dissectors/packet-catapult-dct2000.c
+++ b/epan/dissectors/packet-catapult-dct2000.c
@@ -1940,17 +1940,20 @@ dissect_catapult_dct2000(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/**************************************************************************/
/* These protocols have no encapsulation type, just look them up directly */
- if (strcmp(protocol_name, "mac_r8_lte") == 0) {
+ if ((strcmp(protocol_name, "mac_r8_lte") == 0) ||
+ (strcmp(protocol_name, "mac_r9_lte") == 0)) {
protocol_handle = mac_lte_handle;
}
else
- if (strcmp(protocol_name, "rlc_r8_lte") == 0) {
+ if ((strcmp(protocol_name, "rlc_r8_lte") == 0) ||
+ (strcmp(protocol_name, "rlc_r9_lte") == 0)) {
protocol_handle = rlc_lte_handle;
}
else
- if (strcmp(protocol_name, "pdcp_r8_lte") == 0) {
+ if ((strcmp(protocol_name, "pdcp_r8_lte") == 0) ||
+ (strcmp(protocol_name, "pdcp_r9_lte") == 0)) {
/* Dissect proprietary header, then pass remainder to PDCP */
dissect_pdcp_lte(tvb, offset, pinfo, tree);
return;
@@ -2016,15 +2019,13 @@ dissect_catapult_dct2000(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
else
- if (
- ((strcmp(protocol_name, "ccpri_r8_lte") == 0))) {
+ if (((strcmp(protocol_name, "ccpri_r8_lte") == 0))) {
/* Dissect proprietary header, then pass remainder to lapb */
dissect_ccpri_lte(tvb, offset, pinfo, tree);
return;
}
-
/* Many DCT2000 protocols have at least one IPPrim variant. If the
protocol name can be matched to a dissector, try to find the
UDP/TCP data inside and dissect it.
@@ -2308,6 +2309,17 @@ dissect_catapult_dct2000(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
}
+#if 0
+ /* PART OF WORK IN PROGRESS */
+ if (protocol_handle == 0) {
+ /* TODO: only look inside preference? */
+ char dotted_protocol_name[64+128];
+ sprintf(dotted_protocol_name, "dct2000.%s", protocol_name);
+ protocol_handle = find_dissector(dotted_protocol_name);
+ }
+#endif
+
+
break;
default: