aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2019-03-28 10:36:29 +0100
committerAnders Broman <a.broman58@gmail.com>2019-03-28 11:30:40 +0000
commit7d9dc595c0ca475806138bc0f0f02aee0ab9d40c (patch)
treea8c1b7de2a7b6fb1d9899ca161743deab1664edc /epan
parented41f737089883691f35d8cd3d0e3308a3f998e6 (diff)
GTP: Wrong offset used for QoS Flow Identifier in UL PDU SESSION
INFORMATION. Change-Id: Ib5529c194524b86b0732a1a985106e6d67b16199 Reviewed-on: https://code.wireshark.org/review/32608 Petri-Dish: Anders Broman <a.broman58@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-gtp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/epan/dissectors/packet-gtp.c b/epan/dissectors/packet-gtp.c
index f4db4b5bc0..572cfd83dc 100644
--- a/epan/dissectors/packet-gtp.c
+++ b/epan/dissectors/packet-gtp.c
@@ -9387,11 +9387,12 @@ dissect_gtp_common(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
guint8 value;
pdu_ses_cont_tree = proto_tree_add_subtree(ext_tree, tvb, offset, (ext_hdr_length * 4) - 1, ett_pdu_session_cont, NULL, "PDU Session Container");
- /* PDU Type (=0) Spare */
+ /* PDU Type Spare */
proto_tree_add_item_ret_uint(pdu_ses_cont_tree, hf_gtp_ext_hdr_pdu_ses_cont_pdu_type, tvb, offset, 1, ENC_BIG_ENDIAN, &pdu_type);
proto_tree_add_item(pdu_ses_cont_tree, hf_gtp_spare_h1, tvb, offset, 1, ENC_BIG_ENDIAN);
switch (pdu_type) {
case 0:
+ /* PDU Type: DL PDU SESSION INFORMATION (0) */
/* Octet 1: PPP RQI QoS Flow Identifier */
value = tvb_get_guint8(tvb, offset + 1);
proto_tree_add_bitmask_list_value(pdu_ses_cont_tree, tvb, offset + 1, 1, flags1, value);
@@ -9402,8 +9403,9 @@ dissect_gtp_common(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
}
break;
case 1:
+ /* PDU Type: UL PDU SESSION INFORMATION (1)*/
/* Spare QoS Flow Identifier */
- proto_tree_add_bitmask_list(pdu_ses_cont_tree, tvb, offset + 2, 1, flags3, ENC_BIG_ENDIAN);
+ proto_tree_add_bitmask_list(pdu_ses_cont_tree, tvb, offset + 1, 1, flags3, ENC_BIG_ENDIAN);
break;
default:
proto_tree_add_expert(pdu_ses_cont_tree, pinfo, &ei_gtp_unknown_pdu_type, tvb, offset, 1);