From 4f462bb6e3470ccb09b8da1efd4f133169aef03d Mon Sep 17 00:00:00 2001 From: Erwin Rol Date: Sat, 11 Jan 2020 17:14:44 +0100 Subject: [PATCH] rdm: Remove incorrect dissection of ack overflow data Ack overflow data was incorrectly dissected causing checksum errors. For now just display raw data. Change-Id: Icdd858bdbeeb4dd40e48c45fc46e5e188d53be69 Signed-off-by: Erwin Rol Reviewed-on: https://code.wireshark.org/review/35915 Reviewed-by: Jaap Keuter Petri-Dish: Jaap Keuter Tested-by: Petri Dish Buildbot Reviewed-by: Pascal Quantin --- epan/dissectors/packet-rdm.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/epan/dissectors/packet-rdm.c b/epan/dissectors/packet-rdm.c index 0af99e9bb1..426d1e974d 100644 --- a/epan/dissectors/packet-rdm.c +++ b/epan/dissectors/packet-rdm.c @@ -561,7 +561,7 @@ static int hf_rdm_checksum_status = -1; static int hf_rdm_trailer = -1; static int hf_rdm_pd_ack_timer_estimated_response_time = -1; -static int hf_rdm_pd_ack_overflow_uid = -1; +static int hf_rdm_pd_ack_overflow_raw_data = -1; static int hf_rdm_pd_nack_reason_code = -1; static int hf_rdm_pd_device_label = -1; @@ -2008,16 +2008,11 @@ static guint dissect_rdm_pd_ack_overflow(tvbuff_t *tvb, guint offset, proto_tree *tree, guint8 cc, guint16 param_id _U_, guint8 pdl) { if (pdl > 0) { - int i; - switch(cc) { case RDM_CC_GET_COMMAND_RESPONSE: case RDM_CC_SET_COMMAND_RESPONSE: - for (i = 0; i < (pdl / 6); i++) { - proto_tree_add_item(tree, hf_rdm_pd_ack_overflow_uid, tvb, - offset, 6, ENC_NA); - offset += 6; - } + proto_tree_add_item(tree, hf_rdm_pd_ack_overflow_raw_data, tvb, offset, pdl, ENC_NA); + offset += pdl; break; } } @@ -2302,8 +2297,8 @@ proto_register_rdm(void) FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }}, - { &hf_rdm_pd_ack_overflow_uid, - { "UID", "rdm.pd.ack_overflow.uid", + { &hf_rdm_pd_ack_overflow_raw_data, + { "Raw Data", "rdm.pd.ack_overflow.raw_data", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},