Add dissection of USAT TLV IARI, PLMN list, EPS PDN connection activation parameters and Tracking Area Identification
svn path=/trunk/; revision=48862
This commit is contained in:
parent
4e3c836273
commit
238659f271
|
@ -119,6 +119,7 @@ static int hf_ctlv_utran_eutran_meas_qual = -1;
|
|||
static int hf_ctlv_loci_lac = -1;
|
||||
static int hf_ctlv_loci_cell_id = -1;
|
||||
static int hf_ctlv_loci_ext_cell_id = -1;
|
||||
static int hf_ctlv_iari = -1;
|
||||
static int hf_ctlv_impu = -1;
|
||||
static int hf_ctlv_ims_status_code = -1;
|
||||
|
||||
|
@ -351,7 +352,7 @@ static const value_string cmd_type_vals[] = {
|
|||
{ 0x22, "GET INKEY" },
|
||||
{ 0X23, "GET INPUT" },
|
||||
{ 0x24, "SELECT ITEM" },
|
||||
{ 0X25, "SET UP MENU" },
|
||||
{ 0x25, "SET UP MENU" },
|
||||
{ 0x26, "PROVIDE LOCAL INFORMATION" },
|
||||
{ 0x27, "TIMER MANAGEMENT" },
|
||||
{ 0x28, "SET UP IDLE MODE TEXT" },
|
||||
|
@ -884,6 +885,9 @@ dissect_cat(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
case 0x27:
|
||||
proto_tree_add_item(elem_tree, hf_ctlv_cmd_qual_timer_mgmt, tvb, pos+2, 1, ENC_NA);
|
||||
break;
|
||||
case 0x40:
|
||||
ims_event = TRUE;
|
||||
break;
|
||||
case 0x43:
|
||||
proto_tree_add_item(elem_tree, hf_ctlv_cmd_qual_send_data, tvb, pos+2, 1, ENC_NA);
|
||||
break;
|
||||
|
@ -1144,6 +1148,12 @@ dissect_cat(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
case 0x69: /* UTRAN EUTRAN measurement qualifier */
|
||||
proto_tree_add_item(elem_tree, hf_ctlv_utran_eutran_meas_qual, tvb, pos, 1, ENC_NA);
|
||||
break;
|
||||
case 0x76: /* Geographical Location Parameters / IARI */
|
||||
if (ims_event) {
|
||||
proto_tree_add_unicode_string(elem_tree, hf_ctlv_iari, tvb, pos, len,
|
||||
tvb_get_ephemeral_string_enc(tvb, pos, len, ENC_UTF_8 | ENC_NA));
|
||||
}
|
||||
break;
|
||||
case 0x77: /* GAD Shapes / IMPU list */
|
||||
if (ims_event) {
|
||||
i = 0;
|
||||
|
@ -1159,13 +1169,24 @@ dissect_cat(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
}
|
||||
}
|
||||
break;
|
||||
case 0x78: /* 3GPP NMEA sentence / IMS Status-Code */
|
||||
case 0x78: /* NMEA sentence / IMS Status-Code */
|
||||
if (ims_event) {
|
||||
guint8 *status_code = tvb_get_ephemeral_string(tvb, pos, len);
|
||||
proto_tree_add_string_format_value(elem_tree, hf_ctlv_ims_status_code, tvb, pos, len,
|
||||
status_code, "%s (%s)", status_code, str_to_str(status_code, ims_status_code, "Unknown"));
|
||||
}
|
||||
break;
|
||||
case 0x79: /* PLMN list */
|
||||
for (i = 0; i < len; i+=3) {
|
||||
dissect_e212_mcc_mnc(tvb, pinfo, elem_tree, pos+3*i, TRUE);
|
||||
}
|
||||
break;
|
||||
case 0x7c: /* EPS PDN connection activation parameters */
|
||||
nas_esm_pdn_con_req(tvb, elem_tree, pinfo, pos, len);
|
||||
break;
|
||||
case 0x7d: /* Tracking Area Identification */
|
||||
de_emm_trac_area_id(tvb, elem_tree, pinfo, pos, 5, NULL, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -1538,6 +1559,11 @@ proto_register_card_app_toolkit(void)
|
|||
FT_UINT16, BASE_HEX, NULL, 0,
|
||||
NULL, HFILL },
|
||||
},
|
||||
{ &hf_ctlv_iari,
|
||||
{ "IARI", "etsi_cat.comp_tlv.iari",
|
||||
FT_STRING, BASE_NONE, NULL, 0,
|
||||
NULL, HFILL },
|
||||
},
|
||||
{ &hf_ctlv_impu,
|
||||
{ "IMPU", "etsi_cat.comp_tlv.impu",
|
||||
FT_STRING, BASE_NONE, NULL, 0,
|
||||
|
|
|
@ -739,6 +739,7 @@ guint16 de_emm_trac_area_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo,
|
|||
guint16 de_emm_sec_par_from_eutra(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offset, guint len _U_, gchar *add_string _U_, int string_len _U_);
|
||||
guint16 de_emm_sec_par_to_eutra(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offset, guint len _U_, gchar *add_string _U_, int string_len _U_);
|
||||
guint16 de_esm_qos(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offset, guint len, gchar *add_string _U_, int string_len _U_);
|
||||
void nas_esm_pdn_con_req(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len);
|
||||
|
||||
void dtap_rr_ho_cmd(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len);
|
||||
void dtap_rr_cip_mode_cpte(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len);
|
||||
|
|
|
@ -4445,7 +4445,7 @@ nas_esm_pdn_con_rej(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32
|
|||
/*
|
||||
* 8.3.20 PDN connectivity request
|
||||
*/
|
||||
static void
|
||||
void
|
||||
nas_esm_pdn_con_req(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len)
|
||||
{
|
||||
guint32 curr_offset;
|
||||
|
|
Loading…
Reference in New Issue