diff options
author | Anders Broman <anders.broman@ericsson.com> | 2007-01-13 19:18:46 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2007-01-13 19:18:46 +0000 |
commit | 623ca476f1495f85f823e8c3b23f5a6b0fcb8b2a (patch) | |
tree | 841a298c28135ddfc6173d190e434a8f79e7f683 /epan | |
parent | 2995e44354e90d36e961982cc424e00154eceb91 (diff) |
- Correct Tag numbering and marking of OPTIONAL.
- Add some variants of Digits dissection.
- Correct the DMH-RedirectionIndicator.
- Add reserved bits.
svn path=/trunk/; revision=20420
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-ansi_map.c | 154 |
1 files changed, 119 insertions, 35 deletions
diff --git a/epan/dissectors/packet-ansi_map.c b/epan/dissectors/packet-ansi_map.c index 18ab4f9820..aa8af4adeb 100644 --- a/epan/dissectors/packet-ansi_map.c +++ b/epan/dissectors/packet-ansi_map.c @@ -134,6 +134,8 @@ static int hf_ansi_map_op_code_fam = -1; static int hf_ansi_map_op_code = -1; static int hf_ansi_map_reservedBitH = -1; +static int hf_ansi_map_reservedBitD = -1; +static int hf_ansi_map_reservedBitHG = -1; static int hf_ansi_map_reservedBitED = -1; static int hf_ansi_map_type_of_digits = -1; @@ -685,7 +687,7 @@ static int hf_ansi_map_serviceManagementSystemGapInterval = -1; /* ServiceManag static int hf_ansi_map_mobileStationIMSI = -1; /* MobileStationIMSI */ /*--- End of included file: packet-ansi_map-hf.c ---*/ -#line 315 "packet-ansi_map-template.c" +#line 317 "packet-ansi_map-template.c" /* Initialize the subtree pointers */ static gint ett_ansi_map = -1; @@ -923,7 +925,7 @@ static gint ett_ansi_map_MobileStationMSID = -1; static gint ett_ansi_map_NewlyAssignedMSID = -1; /*--- End of included file: packet-ansi_map-ett.c ---*/ -#line 342 "packet-ansi_map-template.c" +#line 344 "packet-ansi_map-template.c" /* Global variables */ static dissector_handle_t data_handle=NULL; @@ -1220,6 +1222,7 @@ static void dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree){ guint8 octet; + guint8 b1,b2,b3,b4; int offset = 0; char *digit_str; proto_item *item; @@ -1232,7 +1235,9 @@ dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree proto_tree_add_item(subtree, hf_ansi_map_type_of_digits, tvb, offset, 1, FALSE); offset++; /* Octet 2 */ + proto_tree_add_item(subtree, hf_ansi_map_reservedBitHG, tvb, offset, 1, FALSE); proto_tree_add_item(subtree, hf_ansi_map_si, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_reservedBitD, tvb, offset, 1, FALSE); proto_tree_add_item(subtree, hf_ansi_map_navail, tvb, offset, 1, FALSE); proto_tree_add_item(subtree, hf_ansi_map_pi, tvb, offset, 1, FALSE); proto_tree_add_item(subtree, hf_ansi_map_na, tvb, offset, 1, FALSE); @@ -1245,6 +1250,23 @@ dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree /* Octet 4 - */ switch(octet>>4){ case 0:/* Unknown or not applicable */ + switch ((octet&0xf)){ + case 1: + /* BCD Coding */ + digit_str = unpack_digits2(tvb, offset, &Dgt_tbcd); + proto_tree_add_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, -1, digit_str); + break; + case 2: + /* IA5 Coding */ + proto_tree_add_item(subtree, hf_ansi_map_ia5_digits, tvb, offset, -1, FALSE); + break; + case 3: + /* Octet string */ + break; + default: + break; + } + break; case 1:/* ISDN Numbering (not used in this Standard). */ case 3:/* Data Numbering (ITU-T Rec. X.121) (not used in this Standard). */ case 4:/* Telex Numbering (ITU-T Rec. F.69) (not used in this Standard). */ @@ -1274,6 +1296,26 @@ dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree } break; case 13:/* ANSI SS7 Point Code (PC) and Subsystem Number (SSN). */ + switch ((octet&0xf)){ + case 3: + /* Octet string */ + /* Point Code Member Number octet 2 */ + b1 = tvb_get_guint8(tvb,offset); + offset++; + /* Point Code Cluster Number octet 3 */ + b2 = tvb_get_guint8(tvb,offset); + offset++; + /* Point Code Network Number octet 4 */ + b3 = tvb_get_guint8(tvb,offset); + offset++; + /* Subsystem Number (SSN) octet 5 */ + b4 = tvb_get_guint8(tvb,offset); + proto_tree_add_text(subtree, tvb, offset-3, 4 , "Point Code %u-%u-%u SSN %u", + b3, b2, b1, b4); + break; + default: + break; + } break; case 14:/* Internet Protocol (IP) Address. */ break; @@ -1663,9 +1705,11 @@ static const value_string ansi_map_FeatureActivity_vals[] = { static void dissect_ansi_map_callingfeaturesindicator(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree){ int offset = 0; + int length; proto_item *item; proto_tree *subtree; + length = tvb_length_remaining(tvb,offset); item = get_ber_last_created_item(); subtree = proto_item_add_subtree(item, ett_mscid); @@ -1678,6 +1722,7 @@ dissect_ansi_map_callingfeaturesindicator(tvbuff_t *tvb, packet_info *pinfo, pro /* Call Forwarding Unconditional FeatureActivity, CFU-FA (Octet 1 bits AB ) */ proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_cfufa, tvb, offset, 1, FALSE); offset++; + length--; /* Call Transfer: FeatureActivity, CT-FA (Octet 2 bits GH ) */ proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_ctfa, tvb, offset, 1, FALSE); @@ -1689,6 +1734,7 @@ dissect_ansi_map_callingfeaturesindicator(tvbuff_t *tvb, packet_info *pinfo, pro /* Three-Way Calling FeatureActivity, 3WC-FA (Octet 2 bits AB ) */ proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_3wcfa, tvb, offset, 1, FALSE); offset++; + length--; /* Calling Number Identification Restriction Override FeatureActivity CNIROver-FA (Octet 3 bits GH ) */ @@ -1699,6 +1745,9 @@ dissect_ansi_map_callingfeaturesindicator(tvbuff_t *tvb, packet_info *pinfo, pro proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_cnip2fa, tvb, offset, 1, FALSE); /* Calling Number Identification Presentation: FeatureActivity CNIP1-FA (Octet 3 bits AB ) */ proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_cnip1fa, tvb, offset, 1, FALSE); + length--; + if ( length == 0) + return; offset++; /* USCF divert to voice mail: FeatureActivity USCFvm-FA (Octet 4 bits GH ) */ @@ -1709,6 +1758,9 @@ dissect_ansi_map_callingfeaturesindicator(tvbuff_t *tvb, packet_info *pinfo, pro proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_dpfa, tvb, offset, 1, FALSE); /* Priority Call Waiting FeatureActivity PCW-FA (Octet 4 bits AB ) */ proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_pcwfa, tvb, offset, 1, FALSE); + length--; + if ( length == 0) + return; offset++; /* USCF divert to mobile station provided DN:FeatureActivity.USCFms-FA (Octet 5 bits AB ) */ @@ -1719,13 +1771,13 @@ dissect_ansi_map_callingfeaturesindicator(tvbuff_t *tvb, packet_info *pinfo, pro proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_cpdsfa, tvb, offset, 1, FALSE); /* CDMA-Concurrent Service:FeatureActivity. CCS-FA (Octet 5 bits GH ) N.S0029-0 v1.0*/ proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_ccsfa, tvb, offset, 1, FALSE); + length--; + if ( length == 0) + return; offset++; - if ( tvb_length_remaining(tvb,offset) > 0){ - /* TDMA Enhanced Privacy and Encryption:FeatureActivity.TDMA EPE-FA (Octet 6 bits AB ) N.S0029-0 v1.0*/ - proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_epefa, tvb, offset, 1, FALSE); - } - + /* TDMA Enhanced Privacy and Encryption:FeatureActivity.TDMA EPE-FA (Octet 6 bits AB ) N.S0029-0 v1.0*/ + proto_tree_add_item(subtree, hf_ansi_map_callingfeaturesindicator_epefa, tvb, offset, 1, FALSE); } @@ -2952,13 +3004,13 @@ dissect_ansi_map_systemcapabilities(tvbuff_t *tvb, packet_info *pinfo, proto_tre item = get_ber_last_created_item(); subtree = proto_item_add_subtree(item, ett_systemcapabilities); - - proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_auth, tvb, offset, 1, FALSE); - proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_se, tvb, offset, 1, FALSE); - proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_vp, tvb, offset, 1, FALSE); - proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_cave, tvb, offset, 1, FALSE); - proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_ssd, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_reservedBitHG, tvb, offset, 1, FALSE); proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_dp, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_ssd, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_cave, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_vp, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_se, tvb, offset, 1, FALSE); + proto_tree_add_item(subtree, hf_ansi_map_systemcapabilities_auth, tvb, offset, 1, FALSE); } /* 6.5.2.151 TDMABurstIndicator */ @@ -3162,10 +3214,10 @@ dissect_ansi_map_transactioncapability(tvbuff_t *tvb, packet_info *pinfo, proto_ /* WIN Addressing (WADDR) (octet 2, bit F) */ proto_tree_add_item(subtree, hf_ansi_trans_cap_waddr, tvb, offset, 1, FALSE); - /* Multiple Terminations (octet 2, bits A-D) */ - proto_tree_add_item(subtree, hf_ansi_trans_cap_multerm, tvb, offset, 1, FALSE); /* TerminationList (TL) (octet 2, bit E) */ proto_tree_add_item(subtree, hf_ansi_trans_cap_tl, tvb, offset, 1, FALSE); + /* Multiple Terminations (octet 2, bits A-D) */ + proto_tree_add_item(subtree, hf_ansi_trans_cap_multerm, tvb, offset, 1, FALSE); } /* 6.5.2.162 UniqueChallengeReport */ @@ -7258,6 +7310,30 @@ static int dissect_dmh_BillingDigits_impl(packet_info *pinfo, proto_tree *tree, static const value_string ansi_map_DMH_RedirectionIndicator_vals[] = { { 0, "not-specified" }, + { 1, "cfu" }, + { 2, "cfb" }, + { 3, "cfna" }, + { 4, "cfo" }, + { 5, "cd-Unspecified" }, + { 6, "cd-PSTN" }, + { 7, "cd-Private" }, + { 8, "pstn-Tandem" }, + { 9, "private" }, + { 10, "busy" }, + { 11, "inactive" }, + { 12, "unassigned" }, + { 13, "termination-denied" }, + { 14, "cd-failure" }, + { 15, "ect" }, + { 16, "mah" }, + { 17, "fa" }, + { 18, "abandoned-call-leg" }, + { 19, "pca-call-refused" }, + { 20, "sca-call-refused" }, + { 21, "dialogue" }, + { 22, "cfd" }, + { 23, "cd-local" }, + { 24, "voice-mail-retrieval" }, { 0, NULL } }; @@ -9220,7 +9296,7 @@ static const ber_sequence_t LocationRequestRes_set[] = { { BER_CLASS_CON, 141, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_AlternateBillingDigits_impl }, { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 163, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_groupInformation_impl }, { BER_CLASS_CON, 93, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mobileDirectoryNumber_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, @@ -9424,7 +9500,7 @@ static const ber_sequence_t OriginationRequestRes_set[] = { { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 311, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ChargeInformation_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 163, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_groupInformation_impl }, { BER_CLASS_CON, 93, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mobileDirectoryNumber_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, @@ -10892,7 +10968,7 @@ static const ber_sequence_t TransferToNumberRequestRes_set[] = { { BER_CLASS_CON, 141, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_AlternateBillingDigits_impl }, { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 163, BER_FLAGS_OPTIONAL, dissect_groupInformation }, { BER_CLASS_CON, 93, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mobileDirectoryNumber_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, @@ -11373,7 +11449,7 @@ static const ber_sequence_t ServiceRequest_set[] = { { BER_CLASS_CON, 87, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationDigits_impl }, { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_digits_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_electronicSerialNumber_impl }, { BER_CLASS_CON, 53, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extendedMSCID_impl }, { BER_CLASS_CON, 306, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_featureIndicator_impl }, @@ -11432,7 +11508,7 @@ static const ber_sequence_t ServiceRequestRes_set[] = { { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 311, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ChargeInformation_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 163, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_groupInformation_impl }, { BER_CLASS_CON, 93, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mobileDirectoryNumber_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, @@ -11533,11 +11609,11 @@ static const ber_sequence_t AnalyzedInformationRes_set[] = { { BER_CLASS_CON, 141, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_AlternateBillingDigits_impl }, { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, { BER_CLASS_CON, 97, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oneTimeFeatureIndicator_impl }, { BER_CLASS_CON, 100, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_redirectingNumberDigits_impl }, - { BER_CLASS_CON, 394, BER_FLAGS_IMPLTAG, dissect_resumePIC_impl }, + { BER_CLASS_CON, 394, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_resumePIC_impl }, { BER_CLASS_CON, 150, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routingDigits_impl }, { BER_CLASS_CON, 120, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_terminationList_impl }, { BER_CLASS_CON, 122, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_terminationTriggers_impl }, @@ -11669,7 +11745,7 @@ static const ber_sequence_t FacilitySelectedAndAvailableRes_set[] = { { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 311, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ChargeInformation_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, { BER_CLASS_CON, 97, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oneTimeFeatureIndicator_impl }, { BER_CLASS_CON, 394, BER_FLAGS_IMPLTAG, dissect_resumePIC_impl }, @@ -12172,7 +12248,7 @@ static const ber_sequence_t TBusyRes_set[] = { { BER_CLASS_CON, 141, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_AlternateBillingDigits_impl }, { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 163, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_groupInformation_impl }, { BER_CLASS_CON, 97, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oneTimeFeatureIndicator_impl }, { BER_CLASS_CON, 168, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_pilotNumber_impl }, @@ -12246,7 +12322,7 @@ static const ber_sequence_t TNoAnswerRes_set[] = { { BER_CLASS_CON, 141, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_AlternateBillingDigits_impl }, { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 163, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_groupInformation_impl }, { BER_CLASS_CON, 97, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oneTimeFeatureIndicator_impl }, { BER_CLASS_CON, 168, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_pilotNumber_impl }, @@ -12542,7 +12618,7 @@ dissect_ansi_map_ODisconnect(gboolean implicit_tag _U_, tvbuff_t *tvb, int offse static const ber_sequence_t ODisconnectRes_set[] = { { BER_CLASS_CON, 130, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_announcementList_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { 0, 0, 0, NULL } }; @@ -12591,7 +12667,7 @@ static int dissect_callRecoveryIDList_impl(packet_info *pinfo, proto_tree *tree, static const ber_sequence_t CallRecoveryReport_set[] = { - { BER_CLASS_CON, 303, BER_FLAGS_IMPLTAG, dissect_callRecoveryIDList_impl }, + { BER_CLASS_CON, 304, BER_FLAGS_IMPLTAG, dissect_callRecoveryIDList_impl }, { 0, 0, 0, NULL } }; @@ -12662,7 +12738,7 @@ dissect_ansi_map_TDisconnect(gboolean implicit_tag _U_, tvbuff_t *tvb, int offse static const ber_sequence_t TDisconnectRes_set[] = { - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { 0, 0, 0, NULL } }; @@ -12735,7 +12811,7 @@ static const ber_sequence_t OCalledPartyBusyRes_set[] = { { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 311, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ChargeInformation_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, { BER_CLASS_CON, 97, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oneTimeFeatureIndicator_impl }, { BER_CLASS_CON, 147, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_preferredLanguageIndicator_impl }, @@ -12799,7 +12875,7 @@ static const ber_sequence_t ONoAnswerRes_set[] = { { BER_CLASS_CON, 142, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_BillingDigits_impl }, { BER_CLASS_CON, 311, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ChargeInformation_impl }, { BER_CLASS_CON, 88, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_RedirectionIndicator_impl }, - { BER_CLASS_CON, 177, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, + { BER_CLASS_CON, 305, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dmh_ServiceID_impl }, { BER_CLASS_CON, 96, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_noAnswerTime_impl }, { BER_CLASS_CON, 97, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_oneTimeFeatureIndicator_impl }, { BER_CLASS_CON, 147, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_preferredLanguageIndicator_impl }, @@ -13420,7 +13496,7 @@ static void dissect_OriginationRequestRes_PDU(tvbuff_t *tvb, packet_info *pinfo, /*--- End of included file: packet-ansi_map-fn.c ---*/ -#line 3370 "packet-ansi_map-template.c" +#line 3422 "packet-ansi_map-template.c" static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) { @@ -14034,10 +14110,18 @@ void proto_register_ansi_map(void) { { "Reserved", "ansi_map.reserved_bitH", FT_BOOLEAN, 8, NULL,0x80, "Reserved", HFILL }}, + { &hf_ansi_map_reservedBitD, + { "Reserved", "ansi_map.reserved_bitH", + FT_BOOLEAN, 8, NULL,0x08, + "Reserved", HFILL }}, + { &hf_ansi_map_reservedBitHG, + { "Reserved", "ansi_map.reserved_bitHG", + FT_UINT8, BASE_DEC, NULL, 0x18, + "Reserved", HFILL }}, { &hf_ansi_map_reservedBitED, { "Reserved", "ansi_map.reserved_bitED", - FT_BOOLEAN, 8, NULL,0x18, - "Reserved", HFILL }}, + FT_UINT8, BASE_DEC, NULL, 0x18, + "Reserved", HFILL }}, { &hf_ansi_map_op_code, { "Operation Code", "ansi_map.op_code", FT_UINT8, BASE_DEC, VALS(ansi_map_opr_code_strings), 0x0, @@ -16223,7 +16307,7 @@ void proto_register_ansi_map(void) { "ansi_map.MobileStationIMSI", HFILL }}, /*--- End of included file: packet-ansi_map-hfarr.c ---*/ -#line 4724 "packet-ansi_map-template.c" +#line 4784 "packet-ansi_map-template.c" }; /* List of subtrees */ @@ -16462,7 +16546,7 @@ void proto_register_ansi_map(void) { &ett_ansi_map_NewlyAssignedMSID, /*--- End of included file: packet-ansi_map-ettarr.c ---*/ -#line 4752 "packet-ansi_map-template.c" +#line 4812 "packet-ansi_map-template.c" }; |