diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2018-03-29 22:14:27 +0200 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2018-03-29 22:56:03 +0000 |
commit | 684ca9db12b107f7d0ab5f2e5e29320da5ef9a77 (patch) | |
tree | 4d2f395be486a7d533dae331333f8422e5e6c3f5 /epan/dissectors/packet-gsm_a_gm.c | |
parent | e2ec760d5ec00168d20b6c87095d8752934d732f (diff) |
3GPP NAS: upgrade dissector to v15.2.0
Change-Id: I11510356950c1eab4d77f8473f62aa6428311853
Reviewed-on: https://code.wireshark.org/review/26682
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-gsm_a_gm.c')
-rw-r--r-- | epan/dissectors/packet-gsm_a_gm.c | 51 |
1 files changed, 50 insertions, 1 deletions
diff --git a/epan/dissectors/packet-gsm_a_gm.c b/epan/dissectors/packet-gsm_a_gm.c index 01ef01b2af..97023632fb 100644 --- a/epan/dissectors/packet-gsm_a_gm.c +++ b/epan/dissectors/packet-gsm_a_gm.c @@ -69,7 +69,7 @@ * Mobile radio interface Layer 3 specification; * Core network protocols; * Stage 3 - * (3GPP TS 24.008 version 15.1.0 Release 15) + * (3GPP TS 24.008 version 15.2.0 Release 15) * * Wireshark - Network traffic analyzer * By Gerald Combs <gerald@wireshark.org> @@ -555,6 +555,8 @@ static int hf_gsm_a_gm_sm_pco_3gpp_data_off_ue_status = -1; static int hf_gsm_a_gm_sm_pco_sel_bearer_ctrl_mode = -1; static int hf_gsm_a_gm_sm_pco_add_apn_rate_ctrl_params_ul_time_unit = -1; static int hf_gsm_a_gm_sm_pco_add_apn_rate_ctrl_params_max_ul_rate = -1; +static int hf_gsm_a_gm_sm_pco_pdu_session_id = -1; +static int hf_gsm_a_gm_sm_pco_pdu_session_address_lifetime = -1; static int hf_gsm_a_sm_pdp_type_number = -1; static int hf_gsm_a_sm_pdp_address = -1; static int hf_gsm_a_gm_ti_value = -1; @@ -4411,6 +4413,7 @@ static const range_string gsm_a_sm_pco_ms2net_prot_vals[] = { { 0x0017, 0x0017, "3GPP PS data off UE status" }, { 0x0018, 0x0018, "Reliable Data Service request indicator" }, { 0x0019, 0x0019, "Additional APN rate control for exception data support indicator" }, + { 0x001a, 0x001a, "PDU session ID" }, { 0xff00, 0xffff, "Operator Specific Use" }, { 0, 0, NULL } }; @@ -4440,6 +4443,11 @@ static const range_string gsm_a_sm_pco_net2ms_prot_vals[] = { { 0x0017, 0x0017, "3GPP PS data off support indication" }, { 0x0018, 0x0018, "Reliable Data Service accepted indicator" }, { 0x0019, 0x0019, "Additional APN rate control for exception data parameters" }, + { 0x001a, 0x001a, "Reserved" }, + { 0x001b, 0x001b, "S-NSSAI" }, + { 0x001c, 0x001c, "QoS rules" }, + { 0x001d, 0x001d, "Session-AMBR" }, + { 0x001e, 0x001e, "PDU session address lifetime" }, { 0xff00, 0xffff, "Operator Specific Use" }, { 0, 0, NULL } }; @@ -4648,6 +4656,37 @@ de_sm_pco(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, g } } break; + case 0x001a: + if (link_dir == P2P_DIR_UL) { + proto_tree_add_item(pco_tree, hf_gsm_a_gm_sm_pco_pdu_session_id, tvb, curr_offset, 1, ENC_BIG_ENDIAN); + } + break; + case 0x001b: + if (link_dir == P2P_DIR_DL && e_len >= 4) { + de_nas_5gs_mm_s_nssai(tvb, pco_tree, pinfo, curr_offset, e_len - 3, NULL, 0); + dissect_e212_mcc_mnc(tvb, pinfo, pco_tree, curr_offset + e_len - 3, E212_NONE, TRUE); + } + break; + case 0x001c: + if (link_dir == P2P_DIR_DL) { + de_nas_5gs_sm_qos_rules(tvb, pco_tree, pinfo, curr_offset, e_len, NULL, 0); + } + break; + case 0x001d: + if (link_dir == P2P_DIR_DL) { + de_nas_5gs_sm_qos_rules(tvb, pco_tree, pinfo, curr_offset, e_len, NULL, 0); + } + break; + case 0x001e: + if (link_dir == P2P_DIR_DL) { + de_nas_5gs_sm_session_ambr(tvb, pco_tree, pinfo, curr_offset, e_len, NULL, 0); + } + break; + case 0x001f: + if (link_dir == P2P_DIR_DL && e_len == 2) { + proto_tree_add_item(pco_tree, hf_gsm_a_gm_sm_pco_pdu_session_address_lifetime, tvb, curr_offset, 2, ENC_BIG_ENDIAN); + } + break; default: { if (e_len > 0) { @@ -9204,6 +9243,16 @@ proto_register_gsm_a_gm(void) FT_UINT16, BASE_DEC|BASE_UNIT_STRING, &units_message_messages, 0x0, NULL, HFILL } }, + { &hf_gsm_a_gm_sm_pco_pdu_session_id, + { "PDU session identity", "gsm_a.gm.sm.pco.pdu_session_id", + FT_UINT8, BASE_DEC, VALS(nas_5gs_pdu_session_id_vals), 0x0, + NULL, HFILL } + }, + { &hf_gsm_a_gm_sm_pco_pdu_session_address_lifetime, + { "PDU session address lifetime", "gsm_a.gm.sm.pco.pdu_session_address_lifetime", + FT_UINT8, BASE_DEC|BASE_UNIT_STRING, &units_second_seconds, 0x0, + NULL, HFILL } + }, /* Generated from convert_proto_tree_add_text.pl */ { &hf_gsm_a_gm_presence, { "Presence", "gsm_a.gm.gmm.presence", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }}, { &hf_gsm_a_gm_8psk_power_class, { "8PSK Power Class", "gsm_a.gm.8psk_power_class", FT_UINT8, BASE_DEC, VALS(gsm_a_gm_8psk_power_class_vals), 0x0, NULL, HFILL }}, |