3GPP: upgrade 2G/3G NAS dissector to v12.8.0 and NAS EPS dissector to v12.7.0

Change-Id: I770506762074b50d40b4f4742d8316368f14b4de
Reviewed-on: https://code.wireshark.org/review/6794
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
This commit is contained in:
Pascal Quantin 2015-01-26 16:20:16 +01:00
parent d5f0f2518a
commit c9579d01c5
2 changed files with 40 additions and 16 deletions

View File

@ -51,7 +51,7 @@
* Mobile radio interface Layer 3 specification;
* Core network protocols;
* Stage 3
* (3GPP TS 24.008 version 12.7.0 Release 12)
* (3GPP TS 24.008 version 12.8.0 Release 12)
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@ -362,7 +362,8 @@ static int hf_gsm_a_sm_enh_nsapi = -1;
static int hf_gsm_a_sm_req_type = -1;
static int hf_gsm_a_sm_notif_ind = -1;
static int hf_gsm_a_sm_connectivity_type = -1;
static int hf_gsm_a_sm_wlan_offload_accept = -1;
static int hf_gsm_a_sm_wlan_utran_offload_accept = -1;
static int hf_gsm_a_sm_wlan_eutran_offload_accept = -1;
static int hf_gsm_a_gm_rac_ctrled_early_cm_sending = -1;
static int hf_gsm_a_gm_rac_pseudo_sync = -1;
static int hf_gsm_a_gm_rac_vgcs = -1;
@ -5664,17 +5665,22 @@ de_sm_connectivity_type(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_,
/*
* [12] 10.5.6.20 WLAN offload acceptability
*/
static const range_string gsm_a_sm_wlan_offload_accept_vals[] = {
{ 0x0, 0x0, "Offloading the traffic of the PDN connection via a WLAN is not acceptable"},
{ 0x1, 0x1, "Offloading the traffic of the PDN connection via a WLAN is acceptable"},
{ 0x2, 0xF, "Offloading the traffic of the PDN connection via a WLAN is not acceptable"},
{ 0, 0, NULL }
static const true_false_string gsm_a_sm_wlan_utran_offload_accept_value = {
"Offloading the traffic of the PDN connection via a WLAN when in Iu mode is acceptable",
"Offloading the traffic of the PDN connection via a WLAN when in Iu mode is not acceptable"
};
static const true_false_string gsm_a_sm_wlan_eutran_offload_accept_value = {
"Offloading the traffic of the PDN connection via a WLAN when in S1 mode is acceptable",
"Offloading the traffic of the PDN connection via a WLAN when in S1 mode is not acceptable"
};
static guint16
de_sm_wlan_offload_accept(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offset, guint len, gchar *add_string _U_, int string_len _U_)
{
proto_tree_add_item(tree, hf_gsm_a_sm_wlan_offload_accept, tvb, offset, 1, ENC_BIG_ENDIAN);
proto_tree_add_bits_item(tree, hf_gsm_a_spare_bits, tvb, (offset<<3)+4, 2, ENC_BIG_ENDIAN);
proto_tree_add_bits_item(tree, hf_gsm_a_sm_wlan_utran_offload_accept, tvb, (offset<<3)+6, 1, ENC_BIG_ENDIAN);
proto_tree_add_bits_item(tree, hf_gsm_a_sm_wlan_eutran_offload_accept, tvb, (offset<<3)+7, 1, ENC_BIG_ENDIAN);
return (len);
}
@ -6683,6 +6689,8 @@ dtap_sm_act_sec_pdp_acc(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gui
ELEM_OPT_TLV( 0x27, GSM_A_PDU_TYPE_GM, DE_PRO_CONF_OPT, NULL);
ELEM_OPT_TV_SHORT(0xC0 , GSM_A_PDU_TYPE_GM, DE_SM_WLAN_OFFLOAD_ACCEPT, " - WLAN offload indication");
EXTRANEOUS_DATA_CHECK(curr_len, 0, pinfo, &ei_gsm_a_gm_extraneous_data);
}
@ -6890,6 +6898,8 @@ dtap_sm_mod_pdp_acc_net(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gui
ELEM_OPT_TLV( 0x27, GSM_A_PDU_TYPE_GM, DE_PRO_CONF_OPT, NULL);
ELEM_OPT_TV_SHORT(0xC0 , GSM_A_PDU_TYPE_GM, DE_SM_WLAN_OFFLOAD_ACCEPT, " - WLAN offload indication");
EXTRANEOUS_DATA_CHECK(curr_len, 0, pinfo, &ei_gsm_a_gm_extraneous_data);
}
@ -6948,6 +6958,8 @@ dtap_sm_deact_pdp_req(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint
ELEM_OPT_TLV(0x37, GSM_A_PDU_TYPE_GM, DE_GPRS_TIMER_3, " - T3396 value");
ELEM_OPT_TV_SHORT(0xC0 , GSM_A_PDU_TYPE_GM, DE_SM_WLAN_OFFLOAD_ACCEPT, " - WLAN offload indication");
EXTRANEOUS_DATA_CHECK(curr_len, 0, pinfo, &ei_gsm_a_gm_extraneous_data);
}
@ -7004,6 +7016,9 @@ dtap_sm_req_sec_pdp_act(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gui
/* 27 Protocol configuration options Protocol configuration options 10.5.6.3 O TLV 3 - 253 */
ELEM_OPT_TLV( 0x27, GSM_A_PDU_TYPE_GM, DE_PRO_CONF_OPT, NULL);
/* C- WLAN offload acceptability 10.5.6.20 O TV 1 */
ELEM_OPT_TV_SHORT(0xC0 , GSM_A_PDU_TYPE_GM, DE_SM_WLAN_OFFLOAD_ACCEPT, " - WLAN offload indication");
EXTRANEOUS_DATA_CHECK(curr_len, 0, pinfo, &ei_gsm_a_gm_extraneous_data);
}
@ -8070,9 +8085,14 @@ proto_register_gsm_a_gm(void)
FT_UINT8, BASE_DEC|BASE_RANGE_STRING, RVALS(gsm_a_sm_connectivity_type_vals), 0x0F,
NULL, HFILL }
},
{ &hf_gsm_a_sm_wlan_offload_accept,
{ "WLAN offload acceptability", "gsm_a.gm.sm.wlan_offload_accept",
FT_UINT8, BASE_DEC|BASE_RANGE_STRING, RVALS(gsm_a_sm_wlan_offload_accept_vals), 0x0F,
{ &hf_gsm_a_sm_wlan_utran_offload_accept,
{ "WLAN UTRAN offload acceptability", "gsm_a.gm.sm.wlan_utran_offload_accept",
FT_BOOLEAN, BASE_NONE, TFS(&gsm_a_sm_wlan_utran_offload_accept_value), 0x0,
NULL, HFILL }
},
{ &hf_gsm_a_sm_wlan_eutran_offload_accept,
{ "WLAN E-UTRAN offload acceptability", "gsm_a.gm.sm.wlan_eutran_offload_accept",
FT_BOOLEAN, BASE_NONE, TFS(&gsm_a_sm_wlan_eutran_offload_accept_value), 0x0,
NULL, HFILL }
},
{ &hf_gsm_a_gm_rac_ctrled_early_cm_sending,

View File

@ -21,7 +21,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* References: 3GPP TS 24.301 V12.6.0 (2014-09)
* References: 3GPP TS 24.301 V12.7.0 (2014-12)
*/
#include "config.h"
@ -2322,7 +2322,7 @@ de_esm_apn_aggr_max_br(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_,
/* Quality of Service Class Identifier (QCI), octet 3 (see 3GPP TS 23.203 [7]) */
static const range_string nas_eps_qci_vals[] = {
{ 0x00, 0x00, "UE -> NW Network selects the QCI / NW -> UE Reserved"},
{ 0x00, 0x00, "Reserved"},
{ 0x01, 0x01, "QCI 1"},
{ 0x02, 0x02, "QCI 2"},
{ 0x03, 0x03, "QCI 3"},
@ -2332,13 +2332,13 @@ static const range_string nas_eps_qci_vals[] = {
{ 0x07, 0x07, "QCI 7"},
{ 0x08, 0x08, "QCI 8"},
{ 0x09, 0x09, "QCI 9"},
{ 0x0A, 0x40, "Reserved"},
{ 0x0A, 0x40, "Spare"},
{ 0x41, 0x41, "QCI 65"},
{ 0x42, 0x42, "QCI 66"},
{ 0x43, 0x44, "Reserved"},
{ 0x43, 0x44, "Spare"},
{ 0x45, 0x45, "QCI 69"},
{ 0x46, 0x46, "QCI 70"},
{ 0x47, 0x7F, "Reserved"},
{ 0x47, 0x7F, "Spare"},
{ 0x80, 0xFE, "Operator-specific QCI"},
{ 0xFF, 0xFF, "Reserved"},
{ 0, 0, NULL }
@ -4009,6 +4009,8 @@ nas_esm_act_ded_eps_bearer_ctx_req(tvbuff_t *tvb, proto_tree *tree, packet_info
ELEM_OPT_TLV( 0x34 , GSM_A_PDU_TYPE_GM, DE_PACKET_FLOW_ID , NULL );
/* 27 Protocol configuration options Protocol configuration options 9.9.4.11 O TLV 3-253 */
ELEM_OPT_TLV( 0x27 , GSM_A_PDU_TYPE_GM, DE_PRO_CONF_OPT , NULL );
/* C- WLAN offload indication WLAN offload indication 9.9.4.18 O TV 1 */
ELEM_OPT_TV_SHORT(0xC0 , GSM_A_PDU_TYPE_GM, DE_SM_WLAN_OFFLOAD_ACCEPT, " - WLAN offload indication");
EXTRANEOUS_DATA_CHECK(curr_len, 0, pinfo, &ei_nas_eps_extraneous_data);
}
@ -4282,6 +4284,8 @@ nas_esm_deact_eps_bearer_ctx_req(tvbuff_t *tvb, proto_tree *tree, packet_info *p
ELEM_OPT_TLV( 0x27 , GSM_A_PDU_TYPE_GM, DE_PRO_CONF_OPT , NULL );
/* 37 T3396 value GPRS timer 3 9.9.3.16B O TLV 3 */
ELEM_OPT_TLV(0x37, GSM_A_PDU_TYPE_GM, DE_GPRS_TIMER_3, " - T3396 value");
/* C- WLAN offload indication WLAN offload indication 9.9.4.18 O TV 1 */
ELEM_OPT_TV_SHORT(0xC0 , GSM_A_PDU_TYPE_GM, DE_SM_WLAN_OFFLOAD_ACCEPT, " - WLAN offload indication");
EXTRANEOUS_DATA_CHECK(curr_len, 0, pinfo, &ei_nas_eps_extraneous_data);
}