From ae61fe0158bd3afc2cfc034e81199cc7a39c2585 Mon Sep 17 00:00:00 2001 From: Pascal Quantin Date: Tue, 22 Jan 2013 23:25:44 +0000 Subject: Try to fix dissection of GSM protocol family broken by r47209. Using val_to_str seemed to be a good idea, but most value_string arrays were not properly filled or were using hacks. (I hope I got everything right...) svn path=/trunk/; revision=47218 --- epan/dissectors/packet-gsm_a_common.c | 84 +++++++++++++++++------------------ 1 file changed, 42 insertions(+), 42 deletions(-) (limited to 'epan/dissectors/packet-gsm_a_common.c') diff --git a/epan/dissectors/packet-gsm_a_common.c b/epan/dissectors/packet-gsm_a_common.c index 2668bbe68c..1f304ed6e9 100644 --- a/epan/dissectors/packet-gsm_a_common.c +++ b/epan/dissectors/packet-gsm_a_common.c @@ -47,23 +47,23 @@ const value_string gsm_common_elem_strings[] = { /* Common Information Elements 10.5.1 */ { 0x00, "Cell Identity" }, - { 0x00, "Ciphering Key Sequence Number" }, - { 0x00, "Location Area Identification (LAI)" }, - { 0x00, "Mobile Identity" }, - { 0x00, "Mobile Station Classmark 1" }, - { 0x00, "Mobile Station Classmark 2" }, - { 0x00, "Mobile Station Classmark 3" }, - { 0x00, "Spare Half Octet" }, - { 0x00, "Descriptive group or broadcast call reference" }, - { 0x00, "Group Cipher Key Number" }, - { 0x00, "PD and SAPI $(CCBS)$" }, - { 0x00, "Priority Level" }, - { 0x00, "CN Common GSM-MAP NAS system information" }, - { 0x00, "CS domain specific system information" }, - { 0x00, "PS domain specific system information" }, - { 0x00, "PLMN List" }, - { 0x00, "NAS container for PS HO" }, - { 0x00, "MS network feature support" }, + { 0x01, "Ciphering Key Sequence Number" }, + { 0x02, "Location Area Identification (LAI)" }, + { 0x03, "Mobile Identity" }, + { 0x04, "Mobile Station Classmark 1" }, + { 0x05, "Mobile Station Classmark 2" }, + { 0x06, "Mobile Station Classmark 3" }, + { 0x07, "Spare Half Octet" }, + { 0x08, "Descriptive group or broadcast call reference" }, + { 0x09, "Group Cipher Key Number" }, + { 0x0a, "PD and SAPI $(CCBS)$" }, + { 0x0b, "Priority Level" }, + { 0x0c, "CN Common GSM-MAP NAS system information" }, + { 0x0d, "CS domain specific system information" }, + { 0x0e, "PS domain specific system information" }, + { 0x0f, "PLMN List" }, + { 0x10, "NAS container for PS HO" }, + { 0x11, "MS network feature support" }, { 0, NULL } }; @@ -1086,49 +1086,49 @@ const char* get_gsm_a_msg_string(int pdu_type, int idx) switch (pdu_type) { case GSM_A_PDU_TYPE_BSSMAP: - msg_string = val_to_str(idx, gsm_bssmap_elem_strings, "GSM_A_PDU_TYPE_BSSMAP(%u)"); + msg_string = val_to_str(idx, gsm_bssmap_elem_strings, "GSM_A_PDU_TYPE_BSSMAP (%u)"); break; case GSM_A_PDU_TYPE_DTAP: - msg_string = val_to_str(idx, gsm_dtap_elem_strings, "GSM_A_PDU_TYPE_DTAP(%u)"); + msg_string = val_to_str(idx, gsm_dtap_elem_strings, "GSM_A_PDU_TYPE_DTAP (%u)"); break; case GSM_A_PDU_TYPE_RP: - msg_string = val_to_str(idx, gsm_rp_elem_strings, "GSM_A_PDU_TYPE_RP(%u)"); + msg_string = val_to_str(idx, gsm_rp_elem_strings, "GSM_A_PDU_TYPE_RP (%u)"); break; case GSM_A_PDU_TYPE_RR: - msg_string = val_to_str(idx, gsm_rr_elem_strings, "GSM_A_PDU_TYPE_RR(%u)"); + msg_string = val_to_str(idx, gsm_rr_elem_strings, "GSM_A_PDU_TYPE_RR (%u)"); break; case GSM_A_PDU_TYPE_COMMON: - msg_string = val_to_str(idx, gsm_common_elem_strings, "GSM_A_PDU_TYPE_COMMON(%u)"); + msg_string = val_to_str(idx, gsm_common_elem_strings, "GSM_A_PDU_TYPE_COMMON (%u)"); break; case GSM_A_PDU_TYPE_GM: - msg_string = val_to_str(idx, gsm_gm_elem_strings, "GSM_A_PDU_TYPE_GM(%u)"); + msg_string = val_to_str(idx, gsm_gm_elem_strings, "GSM_A_PDU_TYPE_GM (%u)"); break; case GSM_A_PDU_TYPE_BSSLAP: - msg_string = val_to_str(idx, gsm_bsslap_elem_strings, "GSM_A_PDU_TYPE_BSSLAP(%u)"); + msg_string = val_to_str(idx, gsm_bsslap_elem_strings, "GSM_A_PDU_TYPE_BSSLAP (%u)"); break; case GSM_PDU_TYPE_BSSMAP_LE: - msg_string = val_to_str(idx, gsm_bssmap_le_elem_strings, "GSM_PDU_TYPE_BSSMAP_LE(%u)"); + msg_string = val_to_str(idx, gsm_bssmap_le_elem_strings, "GSM_PDU_TYPE_BSSMAP_LE (%u)"); break; case NAS_PDU_TYPE_COMMON: - msg_string = val_to_str(idx, nas_eps_common_elem_strings, "NAS_PDU_TYPE_COMMON(%u)"); + msg_string = val_to_str(idx, nas_eps_common_elem_strings, "NAS_PDU_TYPE_COMMON (%u)"); break; case NAS_PDU_TYPE_EMM: - msg_string = val_to_str(idx, nas_emm_elem_strings, "NAS_PDU_TYPE_EMM(%u)"); + msg_string = val_to_str(idx, nas_emm_elem_strings, "NAS_PDU_TYPE_EMM (%u)"); break; case NAS_PDU_TYPE_ESM: - msg_string = val_to_str(idx, nas_esm_elem_strings, "NAS_PDU_TYPE_ESM(%u)"); + msg_string = val_to_str(idx, nas_esm_elem_strings, "NAS_PDU_TYPE_ESM (%u)"); break; case SGSAP_PDU_TYPE: - msg_string = val_to_str(idx, sgsap_elem_strings, "SGSAP_PDU_TYPE(%u)"); + msg_string = val_to_str(idx, sgsap_elem_strings, "SGSAP_PDU_TYPE (%u)"); break; case BSSGP_PDU_TYPE: - msg_string = val_to_str(idx, bssgp_elem_strings, "BSSGP_PDU_TYPE(%u)"); + msg_string = val_to_str(idx, bssgp_elem_strings, "BSSGP_PDU_TYPE (%u)"); break; case GMR1_IE_COMMON: - msg_string = val_to_str(idx, gmr1_ie_common_strings, "GMR1_IE_COMMON(%u)"); + msg_string = val_to_str(idx, gmr1_ie_common_strings, "GMR1_IE_COMMON (%u)"); break; case GMR1_IE_RR: - msg_string = val_to_str(idx, gmr1_ie_rr_strings, "GMR1_IE_RR(%u)"); + msg_string = val_to_str(idx, gmr1_ie_rr_strings, "GMR1_IE_RR (%u)"); break; default: DISSECTOR_ASSERT_NOT_REACHED(); @@ -1222,7 +1222,7 @@ guint16 elem_tlv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei proto_tree_add_text(tree, tvb, curr_offset, parm_len + 1 + lengt_length, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1309,7 +1309,7 @@ guint16 elem_telv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 ie proto_tree_add_text(tree, tvb, curr_offset, parm_len + 1 + lengt_length, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1386,7 +1386,7 @@ guint16 elem_tlv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 i item = proto_tree_add_text(tree, tvb, curr_offset, parm_len + 1 + 2, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1461,7 +1461,7 @@ guint16 elem_tv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, proto_tree_add_text(tree, tvb, curr_offset, -1, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1534,7 +1534,7 @@ guint16 elem_tv_short(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint proto_tree_add_text(tree, tvb, curr_offset, -1, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1603,7 +1603,7 @@ guint16 elem_t(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint8 i get_hf_elem_id(pdu_type), tvb, curr_offset, 1, oct, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); consumed = 1; @@ -1638,7 +1638,7 @@ elem_lv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int proto_tree_add_text(tree, tvb, curr_offset, parm_len + 1, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1699,7 +1699,7 @@ guint16 elem_lv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_ item = proto_tree_add_text(tree, tvb, curr_offset, parm_len + 2, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1775,7 +1775,7 @@ guint16 elem_v(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_typ proto_tree_add_text(tree, tvb, curr_offset, 0, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), (name_add == NULL) || (name_add[0] == '\0') ? "" : name_add); subtree = proto_item_add_subtree(item, elem_ett[idx]); @@ -1818,7 +1818,7 @@ guint16 elem_v_short(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint p item = proto_tree_add_text(tree, tvb, curr_offset, 0, "%s%s", - val_to_str(idx, elem_names, "Unknown(%u)"), + val_to_str(idx, elem_names, "Unknown (%u)"), ""); subtree = proto_item_add_subtree(item, elem_ett[idx]); -- cgit v1.2.3