diff options
author | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2005-08-08 08:53:05 +0000 |
---|---|---|
committer | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2005-08-08 08:53:05 +0000 |
commit | 3c0f522818fa6f787286bd1e774269e589412a02 (patch) | |
tree | 104bb3da15764ea8ce4866201dd7deede5e9a190 /epan/dissectors/packet-gsm_map.c | |
parent | 4c20433d0b2696961f99b9fb92323539aedbb1b6 (diff) |
updates from Anders B
Regenerate gsm ss and gsm map
svn path=/trunk/; revision=15259
Diffstat (limited to 'epan/dissectors/packet-gsm_map.c')
-rw-r--r-- | epan/dissectors/packet-gsm_map.c | 1067 |
1 files changed, 705 insertions, 362 deletions
diff --git a/epan/dissectors/packet-gsm_map.c b/epan/dissectors/packet-gsm_map.c index 50d736b2e9..b1887bf406 100644 --- a/epan/dissectors/packet-gsm_map.c +++ b/epan/dissectors/packet-gsm_map.c @@ -1,6 +1,6 @@ /* Do not modify this file. */ /* It is created automatically by the ASN.1 to Ethereal dissector compiler */ -/* .\packet-gsm_map.c */ +/* ./packet-gsm_map.c */ /* ../../tools/asn2eth.py -X -b -e -p gsm_map -c gsmmap.cnf -s packet-gsm_map-template GSMMAP.asn */ /* Input file: packet-gsm_map-template.c */ @@ -1381,9 +1381,11 @@ dissect_gsm_map_SignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, guint8 length; tvbuff_t *next_tvb; + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, ¶meter_tvb); + if (!parameter_tvb) return offset; switch (protocolId){ @@ -1413,6 +1415,7 @@ dissect_gsm_map_SignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, break; } + return offset; } static int dissect_signalInfo(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) { @@ -1451,6 +1454,7 @@ static int dissect_extType(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, return dissect_gsm_map_T_extType(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_extType); } + static const ber_sequence_t PrivateExtension_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_extId }, { BER_CLASS_ANY, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extType }, @@ -1460,7 +1464,7 @@ static const ber_sequence_t PrivateExtension_sequence[] = { static int dissect_gsm_map_PrivateExtension(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrivateExtension_sequence, hf_index, ett_gsm_map_PrivateExtension); + PrivateExtension_sequence, hf_index, ett_gsm_map_PrivateExtension); return offset; } @@ -1484,6 +1488,7 @@ static int dissect_privateExtensionList_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_PrivateExtensionList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_privateExtensionList); } + static const ber_sequence_t PcsExtensions_sequence[] = { { 0, 0, 0, NULL } }; @@ -1491,7 +1496,7 @@ static const ber_sequence_t PcsExtensions_sequence[] = { static int dissect_gsm_map_PcsExtensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PcsExtensions_sequence, hf_index, ett_gsm_map_PcsExtensions); + PcsExtensions_sequence, hf_index, ett_gsm_map_PcsExtensions); return offset; } @@ -1499,6 +1504,7 @@ static int dissect_pcsExtensions_impl(packet_info *pinfo, proto_tree *tree, tvbu return dissect_gsm_map_PcsExtensions(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_pcsExtensions); } + static const ber_sequence_t ExtensionContainer_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_privateExtensionList_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_pcsExtensions_impl }, @@ -1508,7 +1514,7 @@ static const ber_sequence_t ExtensionContainer_sequence[] = { int dissect_gsm_map_ExtensionContainer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ExtensionContainer_sequence, hf_index, ett_gsm_map_ExtensionContainer); + ExtensionContainer_sequence, hf_index, ett_gsm_map_ExtensionContainer); return offset; } @@ -1519,6 +1525,7 @@ static int dissect_extensionContainer_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_ExtensionContainer(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_extensionContainer); } + static const ber_sequence_t Bss_APDU_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_protocolId }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_signalInfo }, @@ -1529,7 +1536,7 @@ static const ber_sequence_t Bss_APDU_sequence[] = { static int dissect_gsm_map_Bss_APDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Bss_APDU_sequence, hf_index, ett_gsm_map_Bss_APDU); + Bss_APDU_sequence, hf_index, ett_gsm_map_Bss_APDU); return offset; } @@ -1593,8 +1600,10 @@ dissect_gsm_map_IMSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packe tvbuff_t *parameter_tvb; char *digit_str; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - ¶meter_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + ¶meter_tvb); + + if (!parameter_tvb) return offset; @@ -1618,14 +1627,15 @@ static int dissect_imsi_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb -static int +int dissect_gsm_map_ISDN_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { tvbuff_t *parameter_tvb; char *digit_str; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - ¶meter_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + ¶meter_tvb); + if (!parameter_tvb) return offset; @@ -2167,7 +2177,8 @@ static const ber_choice_t SuperChargerInfo_choice[] = { static int dissect_gsm_map_SuperChargerInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SuperChargerInfo_choice, hf_index, ett_gsm_map_SuperChargerInfo, NULL); + SuperChargerInfo_choice, hf_index, ett_gsm_map_SuperChargerInfo, + NULL); return offset; } @@ -2236,6 +2247,7 @@ static int dissect_offeredCamel4CSIsInSGSN_impl(packet_info *pinfo, proto_tree * return dissect_gsm_map_OfferedCamel4CSIs(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_offeredCamel4CSIsInSGSN); } + static const ber_sequence_t VLR_Capability_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_supportedCamelPhases_impl }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -2251,7 +2263,7 @@ static const ber_sequence_t VLR_Capability_sequence[] = { static int dissect_gsm_map_VLR_Capability(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - VLR_Capability_sequence, hf_index, ett_gsm_map_VLR_Capability); + VLR_Capability_sequence, hf_index, ett_gsm_map_VLR_Capability); return offset; } @@ -2261,7 +2273,7 @@ static int dissect_vlr_Capability_impl(packet_info *pinfo, proto_tree *tree, tvb -static int +int dissect_gsm_map_GSN_Address(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -2310,6 +2322,7 @@ dissect_gsm_map_TBCD_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset } + static int dissect_gsm_map_IMEI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_TBCD_STRING(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -2326,6 +2339,7 @@ static int dissect_imei_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb return dissect_gsm_map_IMEI(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_imei); } + static const ber_sequence_t ADD_Info_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imeisv_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_skipSubscriberDataUpdate_impl }, @@ -2335,7 +2349,7 @@ static const ber_sequence_t ADD_Info_sequence[] = { static int dissect_gsm_map_ADD_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ADD_Info_sequence, hf_index, ett_gsm_map_ADD_Info); + ADD_Info_sequence, hf_index, ett_gsm_map_ADD_Info); return offset; } @@ -2343,6 +2357,7 @@ static int dissect_add_info_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_ADD_Info(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_add_info); } + static const ber_sequence_t UpdateLocationArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_msc_Number_impl }, @@ -2360,11 +2375,12 @@ static const ber_sequence_t UpdateLocationArg_sequence[] = { static int dissect_gsm_map_UpdateLocationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UpdateLocationArg_sequence, hf_index, ett_gsm_map_UpdateLocationArg); + UpdateLocationArg_sequence, hf_index, ett_gsm_map_UpdateLocationArg); return offset; } + static const ber_sequence_t UpdateLocationRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_hlr_Number }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -2375,11 +2391,12 @@ static const ber_sequence_t UpdateLocationRes_sequence[] = { static int dissect_gsm_map_UpdateLocationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UpdateLocationRes_sequence, hf_index, ett_gsm_map_UpdateLocationRes); + UpdateLocationRes_sequence, hf_index, ett_gsm_map_UpdateLocationRes); return offset; } + static const ber_sequence_t SLR_Arg_PCS_Extensions_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_na_ESRK_Request_impl }, { 0, 0, 0, NULL } @@ -2388,7 +2405,7 @@ static const ber_sequence_t SLR_Arg_PCS_Extensions_sequence[] = { static int dissect_gsm_map_SLR_Arg_PCS_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SLR_Arg_PCS_Extensions_sequence, hf_index, ett_gsm_map_SLR_Arg_PCS_Extensions); + SLR_Arg_PCS_Extensions_sequence, hf_index, ett_gsm_map_SLR_Arg_PCS_Extensions); return offset; } @@ -2396,6 +2413,7 @@ static int dissect_slr_Arg_PCS_Extensions_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_SLR_Arg_PCS_Extensions(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_slr_Arg_PCS_Extensions); } + static const ber_sequence_t SLR_ArgExtensionContainer_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_privateExtensionList_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_slr_Arg_PCS_Extensions_impl }, @@ -2405,7 +2423,7 @@ static const ber_sequence_t SLR_ArgExtensionContainer_sequence[] = { static int dissect_gsm_map_SLR_ArgExtensionContainer(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SLR_ArgExtensionContainer_sequence, hf_index, ett_gsm_map_SLR_ArgExtensionContainer); + SLR_ArgExtensionContainer_sequence, hf_index, ett_gsm_map_SLR_ArgExtensionContainer); return offset; } @@ -2449,6 +2467,7 @@ dissect_gsm_map_Msc_Number(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, return offset; } + static const ber_sequence_t IMSI_WithLMSI_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_lmsi }, @@ -2458,7 +2477,7 @@ static const ber_sequence_t IMSI_WithLMSI_sequence[] = { static int dissect_gsm_map_IMSI_WithLMSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IMSI_WithLMSI_sequence, hf_index, ett_gsm_map_IMSI_WithLMSI); + IMSI_WithLMSI_sequence, hf_index, ett_gsm_map_IMSI_WithLMSI); return offset; } @@ -2482,7 +2501,8 @@ static const ber_choice_t Identity_choice[] = { static int dissect_gsm_map_Identity(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Identity_choice, hf_index, ett_gsm_map_Identity, NULL); + Identity_choice, hf_index, ett_gsm_map_Identity, + NULL); return offset; } @@ -2509,6 +2529,7 @@ static int dissect_cancellationType(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_CancellationType(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_cancellationType); } + static const ber_sequence_t CancelLocationArg_sequence[] = { { BER_CLASS_UNI, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_identity }, { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cancellationType }, @@ -2519,11 +2540,12 @@ static const ber_sequence_t CancelLocationArg_sequence[] = { static int dissect_gsm_map_CancelLocationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CancelLocationArg_sequence, hf_index, ett_gsm_map_CancelLocationArg); + CancelLocationArg_sequence, hf_index, ett_gsm_map_CancelLocationArg); return offset; } + static const ber_sequence_t CancelLocationRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -2532,11 +2554,12 @@ static const ber_sequence_t CancelLocationRes_sequence[] = { static int dissect_gsm_map_CancelLocationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CancelLocationRes_sequence, hf_index, ett_gsm_map_CancelLocationRes); + CancelLocationRes_sequence, hf_index, ett_gsm_map_CancelLocationRes); return offset; } + static const ber_sequence_t PurgeMSArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_vlr_Number_impl }, @@ -2548,11 +2571,12 @@ static const ber_sequence_t PurgeMSArg_sequence[] = { static int dissect_gsm_map_PurgeMSArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PurgeMSArg_sequence, hf_index, ett_gsm_map_PurgeMSArg); + PurgeMSArg_sequence, hf_index, ett_gsm_map_PurgeMSArg); return offset; } + static const ber_sequence_t PurgeMSRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_freezeTMSI_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_freezeP_TMSI_impl }, @@ -2563,7 +2587,7 @@ static const ber_sequence_t PurgeMSRes_sequence[] = { static int dissect_gsm_map_PurgeMSRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PurgeMSRes_sequence, hf_index, ett_gsm_map_PurgeMSRes); + PurgeMSRes_sequence, hf_index, ett_gsm_map_PurgeMSRes); return offset; } @@ -2623,6 +2647,7 @@ static int dissect_hopCounter_impl(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_HopCounter(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_hopCounter); } + static const ber_sequence_t SendIdentificationArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_tmsi }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_numberOfRequestedVectors }, @@ -2637,7 +2662,7 @@ static const ber_sequence_t SendIdentificationArg_sequence[] = { static int dissect_gsm_map_SendIdentificationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendIdentificationArg_sequence, hf_index, ett_gsm_map_SendIdentificationArg); + SendIdentificationArg_sequence, hf_index, ett_gsm_map_SendIdentificationArg); return offset; } @@ -2684,6 +2709,7 @@ static int dissect_groupKey_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_Kc(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_groupKey); } + static const ber_sequence_t AuthenticationTriplet_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_rand }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_sres }, @@ -2694,7 +2720,7 @@ static const ber_sequence_t AuthenticationTriplet_sequence[] = { static int dissect_gsm_map_AuthenticationTriplet(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AuthenticationTriplet_sequence, hf_index, ett_gsm_map_AuthenticationTriplet); + AuthenticationTriplet_sequence, hf_index, ett_gsm_map_AuthenticationTriplet); return offset; } @@ -2770,6 +2796,7 @@ static int dissect_autn(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int return dissect_gsm_map_AUTN(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_autn); } + static const ber_sequence_t AuthenticationQuintuplet_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_rand }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_xres }, @@ -2782,7 +2809,7 @@ static const ber_sequence_t AuthenticationQuintuplet_sequence[] = { static int dissect_gsm_map_AuthenticationQuintuplet(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AuthenticationQuintuplet_sequence, hf_index, ett_gsm_map_AuthenticationQuintuplet); + AuthenticationQuintuplet_sequence, hf_index, ett_gsm_map_AuthenticationQuintuplet); return offset; } @@ -2822,7 +2849,8 @@ static const ber_choice_t AuthenticationSetList_choice[] = { static int dissect_gsm_map_AuthenticationSetList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - AuthenticationSetList_choice, hf_index, ett_gsm_map_AuthenticationSetList, NULL); + AuthenticationSetList_choice, hf_index, ett_gsm_map_AuthenticationSetList, + NULL); return offset; } @@ -2843,6 +2871,7 @@ static int dissect_cksn(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int return dissect_gsm_map_Cksn(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_cksn); } + static const ber_sequence_t GSM_SecurityContextData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_kc }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_cksn }, @@ -2852,7 +2881,7 @@ static const ber_sequence_t GSM_SecurityContextData_sequence[] = { static int dissect_gsm_map_GSM_SecurityContextData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GSM_SecurityContextData_sequence, hf_index, ett_gsm_map_GSM_SecurityContextData); + GSM_SecurityContextData_sequence, hf_index, ett_gsm_map_GSM_SecurityContextData); return offset; } @@ -2873,6 +2902,7 @@ static int dissect_ksi(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int return dissect_gsm_map_KSI(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ksi); } + static const ber_sequence_t UMTS_SecurityContextData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ck }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ik }, @@ -2883,7 +2913,7 @@ static const ber_sequence_t UMTS_SecurityContextData_sequence[] = { static int dissect_gsm_map_UMTS_SecurityContextData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UMTS_SecurityContextData_sequence, hf_index, ett_gsm_map_UMTS_SecurityContextData); + UMTS_SecurityContextData_sequence, hf_index, ett_gsm_map_UMTS_SecurityContextData); return offset; } @@ -2907,7 +2937,8 @@ static const ber_choice_t CurrentSecurityContext_choice[] = { static int dissect_gsm_map_CurrentSecurityContext(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - CurrentSecurityContext_choice, hf_index, ett_gsm_map_CurrentSecurityContext, NULL); + CurrentSecurityContext_choice, hf_index, ett_gsm_map_CurrentSecurityContext, + NULL); return offset; } @@ -2915,6 +2946,7 @@ static int dissect_currentSecurityContext_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_CurrentSecurityContext(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_currentSecurityContext); } + static const ber_sequence_t SendIdentificationRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_authenticationSetList }, @@ -2926,7 +2958,7 @@ static const ber_sequence_t SendIdentificationRes_sequence[] = { static int dissect_gsm_map_SendIdentificationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendIdentificationRes_sequence, hf_index, ett_gsm_map_SendIdentificationRes); + SendIdentificationRes_sequence, hf_index, ett_gsm_map_SendIdentificationRes); return offset; } @@ -2960,6 +2992,7 @@ static int dissect_targetCellId_impl(packet_info *pinfo, proto_tree *tree, tvbuf return dissect_gsm_map_GlobalCellId(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_targetCellId); } + static const ber_sequence_t PrepareHO_Arg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_targetCellId }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ho_NumberNotRequired }, @@ -2970,7 +3003,7 @@ static const ber_sequence_t PrepareHO_Arg_sequence[] = { static int dissect_gsm_map_PrepareHO_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareHO_Arg_sequence, hf_index, ett_gsm_map_PrepareHO_Arg); + PrepareHO_Arg_sequence, hf_index, ett_gsm_map_PrepareHO_Arg); return offset; } @@ -3017,9 +3050,11 @@ dissect_gsm_map_LongSignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int off guint8 length; tvbuff_t *next_tvb; + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, ¶meter_tvb); + if (!parameter_tvb) return offset; switch (AccessNetworkProtocolId){ @@ -3040,12 +3075,14 @@ dissect_gsm_map_LongSignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int off break; } + return offset; } static int dissect_longsignalInfo(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) { return dissect_gsm_map_LongSignalInfo(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_longsignalInfo); } + static const ber_sequence_t AccessNetworkSignalInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_accessNetworkProtocolId }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_longsignalInfo }, @@ -3056,7 +3093,7 @@ static const ber_sequence_t AccessNetworkSignalInfo_sequence[] = { static int dissect_gsm_map_AccessNetworkSignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AccessNetworkSignalInfo_sequence, hf_index, ett_gsm_map_AccessNetworkSignalInfo); + AccessNetworkSignalInfo_sequence, hf_index, ett_gsm_map_AccessNetworkSignalInfo); return offset; } @@ -3157,6 +3194,7 @@ static int dissect_encryptionAlgorithms_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_PermittedEncryptionAlgorithms(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_encryptionAlgorithms); } + static const ber_sequence_t AllowedUMTS_Algorithms_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_integrityProtectionAlgorithms_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_encryptionAlgorithms_impl }, @@ -3167,7 +3205,7 @@ static const ber_sequence_t AllowedUMTS_Algorithms_sequence[] = { static int dissect_gsm_map_AllowedUMTS_Algorithms(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AllowedUMTS_Algorithms_sequence, hf_index, ett_gsm_map_AllowedUMTS_Algorithms); + AllowedUMTS_Algorithms_sequence, hf_index, ett_gsm_map_AllowedUMTS_Algorithms); return offset; } @@ -3197,6 +3235,7 @@ static int dissect_selectedRab_Id_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_RAB_Id(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_selectedRab_Id); } + static const ber_sequence_t RadioResource_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_radioResourceInformation }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_rab_Id }, @@ -3206,7 +3245,7 @@ static const ber_sequence_t RadioResource_sequence[] = { static int dissect_gsm_map_RadioResource(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RadioResource_sequence, hf_index, ett_gsm_map_RadioResource); + RadioResource_sequence, hf_index, ett_gsm_map_RadioResource); return offset; } @@ -3265,6 +3304,7 @@ static int dissect_ranap_ServiceHandover_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_RANAP_ServiceHandover(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ranap_ServiceHandover); } + static const ber_sequence_t BSSMAP_ServiceHandoverInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_bssmap_ServiceHandover }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_rab_Id }, @@ -3274,7 +3314,7 @@ static const ber_sequence_t BSSMAP_ServiceHandoverInfo_sequence[] = { static int dissect_gsm_map_BSSMAP_ServiceHandoverInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - BSSMAP_ServiceHandoverInfo_sequence, hf_index, ett_gsm_map_BSSMAP_ServiceHandoverInfo); + BSSMAP_ServiceHandoverInfo_sequence, hf_index, ett_gsm_map_BSSMAP_ServiceHandoverInfo); return offset; } @@ -3302,6 +3342,7 @@ static int dissect_bssmap_ServiceHandoverList_impl(packet_info *pinfo, proto_tre } + static int dissect_gsm_map_ASCI_CallReference(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_TBCD_STRING(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -3374,6 +3415,7 @@ static int dissect_currentlyUsedCodec(packet_info *pinfo, proto_tree *tree, tvbu return dissect_gsm_map_Codec(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_currentlyUsedCodec); } + static const ber_sequence_t CodecList_sequence[] = { { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_codec1_impl }, { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_codec2_impl }, @@ -3390,7 +3432,7 @@ static const ber_sequence_t CodecList_sequence[] = { static int dissect_gsm_map_CodecList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CodecList_sequence, hf_index, ett_gsm_map_CodecList); + CodecList_sequence, hf_index, ett_gsm_map_CodecList); return offset; } @@ -3407,6 +3449,7 @@ static int dissect_geranCodecList_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_CodecList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_geranCodecList); } + static const ber_sequence_t SupportedCodecsList_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_utranCodecList_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_geranCodecList_impl }, @@ -3417,7 +3460,7 @@ static const ber_sequence_t SupportedCodecsList_sequence[] = { static int dissect_gsm_map_SupportedCodecsList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SupportedCodecsList_sequence, hf_index, ett_gsm_map_SupportedCodecsList); + SupportedCodecsList_sequence, hf_index, ett_gsm_map_SupportedCodecsList); return offset; } @@ -3454,6 +3497,7 @@ static int dissect_uesbi_IuB_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_UESBI_IuB(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_uesbi_IuB); } + static const ber_sequence_t UESBI_Iu_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uesbi_IuA_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uesbi_IuB_impl }, @@ -3463,7 +3507,7 @@ static const ber_sequence_t UESBI_Iu_sequence[] = { static int dissect_gsm_map_UESBI_Iu(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UESBI_Iu_sequence, hf_index, ett_gsm_map_UESBI_Iu); + UESBI_Iu_sequence, hf_index, ett_gsm_map_UESBI_Iu); return offset; } @@ -3474,6 +3518,7 @@ static int dissect_bmuef(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, in return dissect_gsm_map_UESBI_Iu(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_bmuef); } + static const ber_sequence_t PrepareHO_ArgV3_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_targetCellId_impl }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ho_NumberNotRequired }, @@ -3505,11 +3550,12 @@ static const ber_sequence_t PrepareHO_ArgV3_sequence[] = { static int dissect_gsm_map_PrepareHO_ArgV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareHO_ArgV3_sequence, hf_index, ett_gsm_map_PrepareHO_ArgV3); + PrepareHO_ArgV3_sequence, hf_index, ett_gsm_map_PrepareHO_ArgV3); return offset; } + static const ber_sequence_t PrepareHO_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_handoverNumber }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_bss_APDU }, @@ -3519,7 +3565,7 @@ static const ber_sequence_t PrepareHO_Res_sequence[] = { static int dissect_gsm_map_PrepareHO_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareHO_Res_sequence, hf_index, ett_gsm_map_PrepareHO_Res); + PrepareHO_Res_sequence, hf_index, ett_gsm_map_PrepareHO_Res); return offset; } @@ -3534,6 +3580,7 @@ dissect_gsm_map_HandoverNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int off return offset; } + static const ber_sequence_t RelocationNumber_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_handoverNumber }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_rab_Id }, @@ -3543,7 +3590,7 @@ static const ber_sequence_t RelocationNumber_sequence[] = { static int dissect_gsm_map_RelocationNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RelocationNumber_sequence, hf_index, ett_gsm_map_RelocationNumber); + RelocationNumber_sequence, hf_index, ett_gsm_map_RelocationNumber); return offset; } @@ -3606,6 +3653,7 @@ static int dissect_encryptionAlgorithm_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_ChosenEncryptionAlgorithm(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_encryptionAlgorithm); } + static const ber_sequence_t SelectedUMTS_Algorithms_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_integrityProtectionAlgorithm_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_encryptionAlgorithm_impl }, @@ -3616,7 +3664,7 @@ static const ber_sequence_t SelectedUMTS_Algorithms_sequence[] = { static int dissect_gsm_map_SelectedUMTS_Algorithms(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SelectedUMTS_Algorithms_sequence, hf_index, ett_gsm_map_SelectedUMTS_Algorithms); + SelectedUMTS_Algorithms_sequence, hf_index, ett_gsm_map_SelectedUMTS_Algorithms); return offset; } @@ -3650,6 +3698,7 @@ static int dissect_chosenSpeechVersion_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_ChosenSpeechVersion(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_chosenSpeechVersion); } + static const ber_sequence_t ChosenRadioResourceInformation_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chosenChannelInfo_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chosenSpeechVersion_impl }, @@ -3659,7 +3708,7 @@ static const ber_sequence_t ChosenRadioResourceInformation_sequence[] = { static int dissect_gsm_map_ChosenRadioResourceInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ChosenRadioResourceInformation_sequence, hf_index, ett_gsm_map_ChosenRadioResourceInformation); + ChosenRadioResourceInformation_sequence, hf_index, ett_gsm_map_ChosenRadioResourceInformation); return offset; } @@ -3667,6 +3716,7 @@ static int dissect_chosenRadioResourceInformation_impl(packet_info *pinfo, proto return dissect_gsm_map_ChosenRadioResourceInformation(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_chosenRadioResourceInformation); } + static const ber_sequence_t PrepareHO_ResV3_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_handoverNumber_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_relocationNumberList_impl }, @@ -3684,7 +3734,7 @@ static const ber_sequence_t PrepareHO_ResV3_sequence[] = { static int dissect_gsm_map_PrepareHO_ResV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareHO_ResV3_sequence, hf_index, ett_gsm_map_PrepareHO_ResV3); + PrepareHO_ResV3_sequence, hf_index, ett_gsm_map_PrepareHO_ResV3); return offset; } @@ -3709,6 +3759,7 @@ dissect_gsm_map_Vlr_Number(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, return offset; } + static const ber_sequence_t SendEndSignalArgV3_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_an_APDU }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -3718,11 +3769,12 @@ static const ber_sequence_t SendEndSignalArgV3_sequence[] = { static int dissect_gsm_map_SendEndSignalArgV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendEndSignalArgV3_sequence, hf_index, ett_gsm_map_SendEndSignalArgV3); + SendEndSignalArgV3_sequence, hf_index, ett_gsm_map_SendEndSignalArgV3); return offset; } + static const ber_sequence_t SendEndSignalRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, { 0, 0, 0, NULL } @@ -3731,7 +3783,7 @@ static const ber_sequence_t SendEndSignalRes_sequence[] = { static int dissect_gsm_map_SendEndSignalRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendEndSignalRes_sequence, hf_index, ett_gsm_map_SendEndSignalRes); + SendEndSignalRes_sequence, hf_index, ett_gsm_map_SendEndSignalRes); return offset; } @@ -3749,6 +3801,7 @@ static int dissect_selectedGSM_Algorithm_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_SelectedGSM_Algorithm(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_selectedGSM_Algorithm); } + static const ber_sequence_t ProcessAccessSignallingArgV3_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_an_APDU }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_selectedUMTS_Algorithms_impl }, @@ -3764,7 +3817,7 @@ static const ber_sequence_t ProcessAccessSignallingArgV3_sequence[] = { static int dissect_gsm_map_ProcessAccessSignallingArgV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProcessAccessSignallingArgV3_sequence, hf_index, ett_gsm_map_ProcessAccessSignallingArgV3); + ProcessAccessSignallingArgV3_sequence, hf_index, ett_gsm_map_ProcessAccessSignallingArgV3); return offset; } @@ -3788,6 +3841,7 @@ static int dissect_keyStatus(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb return dissect_gsm_map_KeyStatus(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_keyStatus); } + static const ber_sequence_t ForwardAccessSignallingArgV3_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_an_APDU }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_integrityProtectionInfo }, @@ -3811,11 +3865,12 @@ static const ber_sequence_t ForwardAccessSignallingArgV3_sequence[] = { static int dissect_gsm_map_ForwardAccessSignallingArgV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardAccessSignallingArgV3_sequence, hf_index, ett_gsm_map_ForwardAccessSignallingArgV3); + ForwardAccessSignallingArgV3_sequence, hf_index, ett_gsm_map_ForwardAccessSignallingArgV3); return offset; } + static const ber_sequence_t PrepareSubsequentHOArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_targetCellId }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_targetMSC_Number }, @@ -3826,11 +3881,12 @@ static const ber_sequence_t PrepareSubsequentHOArg_sequence[] = { static int dissect_gsm_map_PrepareSubsequentHOArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareSubsequentHOArg_sequence, hf_index, ett_gsm_map_PrepareSubsequentHOArg); + PrepareSubsequentHOArg_sequence, hf_index, ett_gsm_map_PrepareSubsequentHOArg); return offset; } + static const ber_sequence_t PrepareSubsequentHOArgV3_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_targetCellId_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_targetMSC_Number_impl }, @@ -3846,11 +3902,12 @@ static const ber_sequence_t PrepareSubsequentHOArgV3_sequence[] = { static int dissect_gsm_map_PrepareSubsequentHOArgV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareSubsequentHOArgV3_sequence, hf_index, ett_gsm_map_PrepareSubsequentHOArgV3); + PrepareSubsequentHOArgV3_sequence, hf_index, ett_gsm_map_PrepareSubsequentHOArgV3); return offset; } + static const ber_sequence_t PrepareSubsequentHOResV3_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_an_APDU }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -3860,12 +3917,13 @@ static const ber_sequence_t PrepareSubsequentHOResV3_sequence[] = { static int dissect_gsm_map_PrepareSubsequentHOResV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareSubsequentHOResV3_sequence, hf_index, ett_gsm_map_PrepareSubsequentHOResV3); + PrepareSubsequentHOResV3_sequence, hf_index, ett_gsm_map_PrepareSubsequentHOResV3); return offset; } + static int dissect_gsm_map_SendAuthenticationInfoArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_IMSI(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -3873,6 +3931,7 @@ dissect_gsm_map_SendAuthenticationInfoArg(gboolean implicit_tag _U_, tvbuff_t *t return offset; } + static const ber_sequence_t Re_synchronisationInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_rand }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_auts }, @@ -3882,7 +3941,7 @@ static const ber_sequence_t Re_synchronisationInfo_sequence[] = { static int dissect_gsm_map_Re_synchronisationInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Re_synchronisationInfo_sequence, hf_index, ett_gsm_map_Re_synchronisationInfo); + Re_synchronisationInfo_sequence, hf_index, ett_gsm_map_Re_synchronisationInfo); return offset; } @@ -3922,6 +3981,7 @@ static int dissect_requestingPLMN_Id_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_PLMN_Id(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_requestingPLMN_Id); } + static const ber_sequence_t SendAuthenticationInfoArgV2_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_numberOfRequestedVectors }, @@ -3937,11 +3997,12 @@ static const ber_sequence_t SendAuthenticationInfoArgV2_sequence[] = { static int dissect_gsm_map_SendAuthenticationInfoArgV2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendAuthenticationInfoArgV2_sequence, hf_index, ett_gsm_map_SendAuthenticationInfoArgV2); + SendAuthenticationInfoArgV2_sequence, hf_index, ett_gsm_map_SendAuthenticationInfoArgV2); return offset; } + static const ber_sequence_t SendAuthenticationInfoRes_item_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_rand }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_sres }, @@ -3952,7 +4013,7 @@ static const ber_sequence_t SendAuthenticationInfoRes_item_sequence[] = { static int dissect_gsm_map_SendAuthenticationInfoRes_item(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendAuthenticationInfoRes_item_sequence, hf_index, ett_gsm_map_SendAuthenticationInfoRes_item); + SendAuthenticationInfoRes_item_sequence, hf_index, ett_gsm_map_SendAuthenticationInfoRes_item); return offset; } @@ -3973,6 +4034,7 @@ dissect_gsm_map_SendAuthenticationInfoRes(gboolean implicit_tag _U_, tvbuff_t *t return offset; } + static const ber_sequence_t SendAuthenticationInfoResV3_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_authenticationSetList }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -3982,12 +4044,13 @@ static const ber_sequence_t SendAuthenticationInfoResV3_sequence[] = { static int dissect_gsm_map_SendAuthenticationInfoResV3(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendAuthenticationInfoResV3_sequence, hf_index, ett_gsm_map_SendAuthenticationInfoResV3); + SendAuthenticationInfoResV3_sequence, hf_index, ett_gsm_map_SendAuthenticationInfoResV3); return offset; } + static int dissect_gsm_map_CheckIMEIArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_IMEI(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -4013,6 +4076,7 @@ static int dissect_requestedEquipmentInfo(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_RequestedEquipmentInfo(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_requestedEquipmentInfo); } + static const ber_sequence_t CheckIMEIArgV2_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imei }, { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_requestedEquipmentInfo }, @@ -4023,7 +4087,7 @@ static const ber_sequence_t CheckIMEIArgV2_sequence[] = { static int dissect_gsm_map_CheckIMEIArgV2(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CheckIMEIArgV2_sequence, hf_index, ett_gsm_map_CheckIMEIArgV2); + CheckIMEIArgV2_sequence, hf_index, ett_gsm_map_CheckIMEIArgV2); return offset; } @@ -4048,6 +4112,7 @@ static int dissect_equipmentStatus(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_EquipmentStatus(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_equipmentStatus); } + static const ber_sequence_t CheckIMEIRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_equipmentStatus }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_bmuef }, @@ -4058,7 +4123,7 @@ static const ber_sequence_t CheckIMEIRes_sequence[] = { static int dissect_gsm_map_CheckIMEIRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CheckIMEIRes_sequence, hf_index, ett_gsm_map_CheckIMEIRes); + CheckIMEIRes_sequence, hf_index, ett_gsm_map_CheckIMEIRes); return offset; } @@ -4098,7 +4163,8 @@ static const ber_choice_t BasicService_choice[] = { static int dissect_gsm_map_BasicService(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - BasicService_choice, hf_index, ett_gsm_map_BasicService, NULL); + BasicService_choice, hf_index, ett_gsm_map_BasicService, + NULL); return offset; } @@ -4285,6 +4351,7 @@ static int dissect_defaultCallHandling_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_DefaultCallHandling(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_defaultCallHandling); } + static const ber_sequence_t BcsmCamelTDPData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_bcsmTriggerDetectionPoint }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, @@ -4297,7 +4364,7 @@ static const ber_sequence_t BcsmCamelTDPData_sequence[] = { static int dissect_gsm_map_BcsmCamelTDPData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - BcsmCamelTDPData_sequence, hf_index, ett_gsm_map_BcsmCamelTDPData); + BcsmCamelTDPData_sequence, hf_index, ett_gsm_map_BcsmCamelTDPData); return offset; } @@ -4337,6 +4404,7 @@ static int dissect_o_BcsmTriggerDetectionPoint(packet_info *pinfo, proto_tree *t return dissect_gsm_map_O_BcsmTriggerDetectionPoint(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_o_BcsmTriggerDetectionPoint); } + static const ber_sequence_t O_BcsmCamelTDPData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_o_BcsmTriggerDetectionPoint }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, @@ -4349,7 +4417,7 @@ static const ber_sequence_t O_BcsmCamelTDPData_sequence[] = { static int dissect_gsm_map_O_BcsmCamelTDPData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - O_BcsmCamelTDPData_sequence, hf_index, ett_gsm_map_O_BcsmCamelTDPData); + O_BcsmCamelTDPData_sequence, hf_index, ett_gsm_map_O_BcsmCamelTDPData); return offset; } @@ -4386,6 +4454,7 @@ static int dissect_camelCapabilityHandling_impl(packet_info *pinfo, proto_tree * return dissect_gsm_map_CamelCapabilityHandling(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_camelCapabilityHandling); } + static const ber_sequence_t O_CSI_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_o_BcsmCamelTDPDataList }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -4398,7 +4467,7 @@ static const ber_sequence_t O_CSI_sequence[] = { static int dissect_gsm_map_O_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - O_CSI_sequence, hf_index, ett_gsm_map_O_CSI); + O_CSI_sequence, hf_index, ett_gsm_map_O_CSI); return offset; } @@ -4494,7 +4563,7 @@ static int dissect_teleserviceList_impl(packet_info *pinfo, proto_tree *tree, tv -static int +int dissect_gsm_map_SS_Code(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -4530,7 +4599,8 @@ static const ber_choice_t Ext_BasicServiceCode_choice[] = { static int dissect_gsm_map_Ext_BasicServiceCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Ext_BasicServiceCode_choice, hf_index, ett_gsm_map_Ext_BasicServiceCode, NULL); + Ext_BasicServiceCode_choice, hf_index, ett_gsm_map_Ext_BasicServiceCode, + NULL); return offset; } @@ -4571,8 +4641,10 @@ dissect_gsm_map_Ext_SS_Status(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs tvbuff_t *parameter_tvb; guint8 octet; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - ¶meter_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + ¶meter_tvb); + + if (!parameter_tvb) return offset; @@ -4599,7 +4671,7 @@ static int dissect_ext_ss_Status_impl(packet_info *pinfo, proto_tree *tree, tvbu -static int +int dissect_gsm_map_ISDN_SubaddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -4624,6 +4696,7 @@ dissect_gsm_map_Ext_ForwOptions(gboolean implicit_tag _U_, tvbuff_t *tvb, int of } + static int dissect_gsm_map_T_forwardingOptions(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_Ext_ForwOptions(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -4661,8 +4734,9 @@ dissect_gsm_map_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs tvbuff_t *parameter_tvb; char *digit_str; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - ¶meter_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + ¶meter_tvb); + if (!parameter_tvb) return offset; @@ -4688,6 +4762,7 @@ static int dissect_lcsClientDialedByMS_impl(packet_info *pinfo, proto_tree *tree } + static int dissect_gsm_map_FTN_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_AddressString(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -4698,6 +4773,7 @@ static int dissect_longForwardedToNumber_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_FTN_AddressString(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_longForwardedToNumber); } + static const ber_sequence_t Ext_ForwFeature_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ext_basicService }, { BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ext_ss_Status_impl }, @@ -4713,7 +4789,7 @@ static const ber_sequence_t Ext_ForwFeature_sequence[] = { static int dissect_gsm_map_Ext_ForwFeature(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_ForwFeature_sequence, hf_index, ett_gsm_map_Ext_ForwFeature); + Ext_ForwFeature_sequence, hf_index, ett_gsm_map_Ext_ForwFeature); return offset; } @@ -4740,6 +4816,7 @@ static int dissect_ext_forwardingFeatureList_impl(packet_info *pinfo, proto_tree return dissect_gsm_map_Ext_ForwFeatureList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ext_forwardingFeatureList); } + static const ber_sequence_t Ext_ForwInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ext_forwardingFeatureList }, @@ -4750,7 +4827,7 @@ static const ber_sequence_t Ext_ForwInfo_sequence[] = { static int dissect_gsm_map_Ext_ForwInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_ForwInfo_sequence, hf_index, ett_gsm_map_Ext_ForwInfo); + Ext_ForwInfo_sequence, hf_index, ett_gsm_map_Ext_ForwInfo); return offset; } @@ -4758,6 +4835,7 @@ static int dissect_ext_forwardingInfo_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_Ext_ForwInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ext_forwardingInfo); } + static const ber_sequence_t Ext_CallBarringFeature_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ext_basicService }, { BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ext_ss_Status_impl }, @@ -4768,7 +4846,7 @@ static const ber_sequence_t Ext_CallBarringFeature_sequence[] = { static int dissect_gsm_map_Ext_CallBarringFeature(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_CallBarringFeature_sequence, hf_index, ett_gsm_map_Ext_CallBarringFeature); + Ext_CallBarringFeature_sequence, hf_index, ett_gsm_map_Ext_CallBarringFeature); return offset; } @@ -4795,6 +4873,7 @@ static int dissect_ext_callBarringFeatureList_impl(packet_info *pinfo, proto_tre return dissect_gsm_map_Ext_CallBarFeatureList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ext_callBarringFeatureList); } + static const ber_sequence_t Ext_CallBarInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ext_callBarringFeatureList }, @@ -4805,7 +4884,7 @@ static const ber_sequence_t Ext_CallBarInfo_sequence[] = { static int dissect_gsm_map_Ext_CallBarInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_CallBarInfo_sequence, hf_index, ett_gsm_map_Ext_CallBarInfo); + Ext_CallBarInfo_sequence, hf_index, ett_gsm_map_Ext_CallBarInfo); return offset; } @@ -4815,7 +4894,7 @@ static int dissect_ext_callBarringInfo_impl(packet_info *pinfo, proto_tree *tree -static int +int dissect_gsm_map_CUG_Index(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -4878,6 +4957,7 @@ static int dissect_basicServiceGroupList(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_Ext_BasicServiceGroupList(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_basicServiceGroupList); } + static const ber_sequence_t CUG_Subscription_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_cug_Index }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_cug_Interlock }, @@ -4890,7 +4970,7 @@ static const ber_sequence_t CUG_Subscription_sequence[] = { static int dissect_gsm_map_CUG_Subscription(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CUG_Subscription_sequence, hf_index, ett_gsm_map_CUG_Subscription); + CUG_Subscription_sequence, hf_index, ett_gsm_map_CUG_Subscription); return offset; } @@ -4927,6 +5007,7 @@ static int dissect_interCUG_Restrictions(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_InterCUG_Restrictions(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_interCUG_Restrictions); } + static const ber_sequence_t CUG_Feature_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ext_basicService }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_preferentialCUG_Indicator }, @@ -4938,7 +5019,7 @@ static const ber_sequence_t CUG_Feature_sequence[] = { static int dissect_gsm_map_CUG_Feature(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CUG_Feature_sequence, hf_index, ett_gsm_map_CUG_Feature); + CUG_Feature_sequence, hf_index, ett_gsm_map_CUG_Feature); return offset; } @@ -4962,6 +5043,7 @@ static int dissect_cug_FeatureList(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_CUG_FeatureList(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_cug_FeatureList); } + static const ber_sequence_t CUG_Info_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cug_SubscriptionList }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cug_FeatureList }, @@ -4972,7 +5054,7 @@ static const ber_sequence_t CUG_Info_sequence[] = { static int dissect_gsm_map_CUG_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CUG_Info_sequence, hf_index, ett_gsm_map_CUG_Info); + CUG_Info_sequence, hf_index, ett_gsm_map_CUG_Info); return offset; } @@ -5019,7 +5101,8 @@ static const ber_choice_t SS_SubscriptionOption_choice[] = { static int dissect_gsm_map_SS_SubscriptionOption(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SS_SubscriptionOption_choice, hf_index, ett_gsm_map_SS_SubscriptionOption, NULL); + SS_SubscriptionOption_choice, hf_index, ett_gsm_map_SS_SubscriptionOption, + NULL); return offset; } @@ -5027,6 +5110,7 @@ static int dissect_ss_SubscriptionOption(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_SS_SubscriptionOption(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ss_SubscriptionOption); } + static const ber_sequence_t Ext_SS_Data_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ext_ss_Status_impl }, @@ -5039,7 +5123,7 @@ static const ber_sequence_t Ext_SS_Data_sequence[] = { static int dissect_gsm_map_Ext_SS_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_SS_Data_sequence, hf_index, ett_gsm_map_Ext_SS_Data); + Ext_SS_Data_sequence, hf_index, ett_gsm_map_Ext_SS_Data); return offset; } @@ -5072,6 +5156,7 @@ static int dissect_priority_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_EMLPP_Priority(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_priority); } + static const ber_sequence_t EMLPP_Info_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_maximumentitledPriority }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_defaultPriority }, @@ -5082,7 +5167,7 @@ static const ber_sequence_t EMLPP_Info_sequence[] = { static int dissect_gsm_map_EMLPP_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - EMLPP_Info_sequence, hf_index, ett_gsm_map_EMLPP_Info); + EMLPP_Info_sequence, hf_index, ett_gsm_map_EMLPP_Info); return offset; } @@ -5112,7 +5197,8 @@ static const ber_choice_t Ext_SS_Info_choice[] = { static int dissect_gsm_map_Ext_SS_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Ext_SS_Info_choice, hf_index, ett_gsm_map_Ext_SS_Info, NULL); + Ext_SS_Info_choice, hf_index, ett_gsm_map_Ext_SS_Info, + NULL); return offset; } @@ -5136,6 +5222,7 @@ static int dissect_provisionedSS_impl(packet_info *pinfo, proto_tree *tree, tvbu return dissect_gsm_map_Ext_SS_InfoList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_provisionedSS); } + static const ber_sequence_t ODB_Data_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_odb_GeneralData }, { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_odb_HPLMN_Data }, @@ -5146,7 +5233,7 @@ static const ber_sequence_t ODB_Data_sequence[] = { static int dissect_gsm_map_ODB_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ODB_Data_sequence, hf_index, ett_gsm_map_ODB_Data); + ODB_Data_sequence, hf_index, ett_gsm_map_ODB_Data); return offset; } @@ -5193,6 +5280,7 @@ static int dissect_regionalSubscriptionData_impl(packet_info *pinfo, proto_tree } + static int dissect_gsm_map_GroupId(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_TBCD_STRING(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -5206,6 +5294,7 @@ static int dissect_groupid(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, return dissect_gsm_map_GroupId(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_groupid); } + static const ber_sequence_t VoiceBroadcastData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_groupid }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_broadcastInitEntitlement }, @@ -5216,7 +5305,7 @@ static const ber_sequence_t VoiceBroadcastData_sequence[] = { static int dissect_gsm_map_VoiceBroadcastData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - VoiceBroadcastData_sequence, hf_index, ett_gsm_map_VoiceBroadcastData); + VoiceBroadcastData_sequence, hf_index, ett_gsm_map_VoiceBroadcastData); return offset; } @@ -5240,6 +5329,7 @@ static int dissect_vbsSubscriptionData_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_VBSDataList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_vbsSubscriptionData); } + static const ber_sequence_t VoiceGroupCallData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_groupId }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -5249,7 +5339,7 @@ static const ber_sequence_t VoiceGroupCallData_sequence[] = { static int dissect_gsm_map_VoiceGroupCallData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - VoiceGroupCallData_sequence, hf_index, ett_gsm_map_VoiceGroupCallData); + VoiceGroupCallData_sequence, hf_index, ett_gsm_map_VoiceGroupCallData); return offset; } @@ -5289,6 +5379,7 @@ static int dissect_ss_EventList(packet_info *pinfo, proto_tree *tree, tvbuff_t * return dissect_gsm_map_SS_EventList(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ss_EventList); } + static const ber_sequence_t SS_CamelData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ss_EventList }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_gsmSCF_Address }, @@ -5299,7 +5390,7 @@ static const ber_sequence_t SS_CamelData_sequence[] = { static int dissect_gsm_map_SS_CamelData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SS_CamelData_sequence, hf_index, ett_gsm_map_SS_CamelData); + SS_CamelData_sequence, hf_index, ett_gsm_map_SS_CamelData); return offset; } @@ -5307,6 +5398,7 @@ static int dissect_ss_CamelData(packet_info *pinfo, proto_tree *tree, tvbuff_t * return dissect_gsm_map_SS_CamelData(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ss_CamelData); } + static const ber_sequence_t SS_CSI_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ss_CamelData }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -5318,7 +5410,7 @@ static const ber_sequence_t SS_CSI_sequence[] = { static int dissect_gsm_map_SS_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SS_CSI_sequence, hf_index, ett_gsm_map_SS_CSI); + SS_CSI_sequence, hf_index, ett_gsm_map_SS_CSI); return offset; } @@ -5390,6 +5482,7 @@ static int dissect_destinationNumberLengthList_impl(packet_info *pinfo, proto_tr return dissect_gsm_map_DestinationNumberLengthList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_destinationNumberLengthList); } + static const ber_sequence_t DestinationNumberCriteria_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_matchType_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationNumberList_impl }, @@ -5400,7 +5493,7 @@ static const ber_sequence_t DestinationNumberCriteria_sequence[] = { static int dissect_gsm_map_DestinationNumberCriteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DestinationNumberCriteria_sequence, hf_index, ett_gsm_map_DestinationNumberCriteria); + DestinationNumberCriteria_sequence, hf_index, ett_gsm_map_DestinationNumberCriteria); return offset; } @@ -5475,6 +5568,7 @@ static int dissect_o_CauseValueCriteria_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_O_CauseValueCriteria(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_o_CauseValueCriteria); } + static const ber_sequence_t O_BcsmCamelTDP_Criteria_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_o_BcsmTriggerDetectionPoint }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_destinationNumberCriteria_impl }, @@ -5488,7 +5582,7 @@ static const ber_sequence_t O_BcsmCamelTDP_Criteria_sequence[] = { static int dissect_gsm_map_O_BcsmCamelTDP_Criteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - O_BcsmCamelTDP_Criteria_sequence, hf_index, ett_gsm_map_O_BcsmCamelTDP_Criteria); + O_BcsmCamelTDP_Criteria_sequence, hf_index, ett_gsm_map_O_BcsmCamelTDP_Criteria); return offset; } @@ -5550,6 +5644,7 @@ static int dissect_mobilityTriggers(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_MobilityTriggers(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_mobilityTriggers); } + static const ber_sequence_t M_CSI_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mobilityTriggers }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, @@ -5563,7 +5658,7 @@ static const ber_sequence_t M_CSI_sequence[] = { static int dissect_gsm_map_M_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - M_CSI_sequence, hf_index, ett_gsm_map_M_CSI); + M_CSI_sequence, hf_index, ett_gsm_map_M_CSI); return offset; } @@ -5612,6 +5707,7 @@ static int dissect_defaultSMS_Handling_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_DefaultSMS_Handling(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_defaultSMS_Handling); } + static const ber_sequence_t SMS_CAMEL_TDP_Data_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sms_TriggerDetectionPoint_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl }, @@ -5624,7 +5720,7 @@ static const ber_sequence_t SMS_CAMEL_TDP_Data_sequence[] = { static int dissect_gsm_map_SMS_CAMEL_TDP_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SMS_CAMEL_TDP_Data_sequence, hf_index, ett_gsm_map_SMS_CAMEL_TDP_Data); + SMS_CAMEL_TDP_Data_sequence, hf_index, ett_gsm_map_SMS_CAMEL_TDP_Data); return offset; } @@ -5648,6 +5744,7 @@ static int dissect_sms_CAMEL_TDP_DataList_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_SMS_CAMEL_TDP_DataList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_sms_CAMEL_TDP_DataList); } + static const ber_sequence_t SMS_CSI_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_sms_CAMEL_TDP_DataList_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_camelCapabilityHandling_impl }, @@ -5660,7 +5757,7 @@ static const ber_sequence_t SMS_CSI_sequence[] = { static int dissect_gsm_map_SMS_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SMS_CSI_sequence, hf_index, ett_gsm_map_SMS_CSI); + SMS_CSI_sequence, hf_index, ett_gsm_map_SMS_CSI); return offset; } @@ -5694,6 +5791,7 @@ static int dissect_t_BcsmTriggerDetectionPoint(packet_info *pinfo, proto_tree *t return dissect_gsm_map_T_BcsmTriggerDetectionPoint(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_t_BcsmTriggerDetectionPoint); } + static const ber_sequence_t T_BcsmCamelTDPData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_t_BcsmTriggerDetectionPoint }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, @@ -5706,7 +5804,7 @@ static const ber_sequence_t T_BcsmCamelTDPData_sequence[] = { static int dissect_gsm_map_T_BcsmCamelTDPData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - T_BcsmCamelTDPData_sequence, hf_index, ett_gsm_map_T_BcsmCamelTDPData); + T_BcsmCamelTDPData_sequence, hf_index, ett_gsm_map_T_BcsmCamelTDPData); return offset; } @@ -5730,6 +5828,7 @@ static int dissect_t_BcsmCamelTDPDataList(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_T_BcsmCamelTDPDataList(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_t_BcsmCamelTDPDataList); } + static const ber_sequence_t T_CSI_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_t_BcsmCamelTDPDataList }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -5742,7 +5841,7 @@ static const ber_sequence_t T_CSI_sequence[] = { static int dissect_gsm_map_T_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - T_CSI_sequence, hf_index, ett_gsm_map_T_CSI); + T_CSI_sequence, hf_index, ett_gsm_map_T_CSI); return offset; } @@ -5772,6 +5871,7 @@ static int dissect_t_CauseValueCriteria_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_T_CauseValueCriteria(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_t_CauseValueCriteria); } + static const ber_sequence_t T_BCSM_CAMEL_TDP_Criteria_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_t_BCSM_TriggerDetectionPoint }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_basicServiceCriteria_impl }, @@ -5782,7 +5882,7 @@ static const ber_sequence_t T_BCSM_CAMEL_TDP_Criteria_sequence[] = { static int dissect_gsm_map_T_BCSM_CAMEL_TDP_Criteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - T_BCSM_CAMEL_TDP_Criteria_sequence, hf_index, ett_gsm_map_T_BCSM_CAMEL_TDP_Criteria); + T_BCSM_CAMEL_TDP_Criteria_sequence, hf_index, ett_gsm_map_T_BCSM_CAMEL_TDP_Criteria); return offset; } @@ -5812,6 +5912,7 @@ static int dissect_vt_IM_BCSM_CAMEL_TDP_CriteriaList_impl(packet_info *pinfo, pr return dissect_gsm_map_T_BCSM_CAMEL_TDP_CriteriaList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_vt_IM_BCSM_CAMEL_TDP_CriteriaList); } + static const ber_sequence_t DP_AnalysedInfoCriterium_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_dialledNumber }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, @@ -5824,7 +5925,7 @@ static const ber_sequence_t DP_AnalysedInfoCriterium_sequence[] = { static int dissect_gsm_map_DP_AnalysedInfoCriterium(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DP_AnalysedInfoCriterium_sequence, hf_index, ett_gsm_map_DP_AnalysedInfoCriterium); + DP_AnalysedInfoCriterium_sequence, hf_index, ett_gsm_map_DP_AnalysedInfoCriterium); return offset; } @@ -5848,6 +5949,7 @@ static int dissect_dp_AnalysedInfoCriteriaList_impl(packet_info *pinfo, proto_tr return dissect_gsm_map_DP_AnalysedInfoCriteriaList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_dp_AnalysedInfoCriteriaList); } + static const ber_sequence_t D_CSI_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_dp_AnalysedInfoCriteriaList_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_camelCapabilityHandling_impl }, @@ -5860,7 +5962,7 @@ static const ber_sequence_t D_CSI_sequence[] = { static int dissect_gsm_map_D_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - D_CSI_sequence, hf_index, ett_gsm_map_D_CSI); + D_CSI_sequence, hf_index, ett_gsm_map_D_CSI); return offset; } @@ -5910,6 +6012,7 @@ static int dissect_tpdu_TypeCriterion_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_TPDU_TypeCriterion(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_tpdu_TypeCriterion); } + static const ber_sequence_t MT_smsCAMELTDP_Criteria_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_sms_TriggerDetectionPoint }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_tpdu_TypeCriterion_impl }, @@ -5919,7 +6022,7 @@ static const ber_sequence_t MT_smsCAMELTDP_Criteria_sequence[] = { static int dissect_gsm_map_MT_smsCAMELTDP_Criteria(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - MT_smsCAMELTDP_Criteria_sequence, hf_index, ett_gsm_map_MT_smsCAMELTDP_Criteria); + MT_smsCAMELTDP_Criteria_sequence, hf_index, ett_gsm_map_MT_smsCAMELTDP_Criteria); return offset; } @@ -5943,6 +6046,7 @@ static int dissect_mt_smsCAMELTDP_CriteriaList_impl(packet_info *pinfo, proto_tr return dissect_gsm_map_MT_smsCAMELTDP_CriteriaList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_mt_smsCAMELTDP_CriteriaList); } + static const ber_sequence_t VlrCamelSubscriptionInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_o_CSI_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -5962,7 +6066,7 @@ static const ber_sequence_t VlrCamelSubscriptionInfo_sequence[] = { static int dissect_gsm_map_VlrCamelSubscriptionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - VlrCamelSubscriptionInfo_sequence, hf_index, ett_gsm_map_VlrCamelSubscriptionInfo); + VlrCamelSubscriptionInfo_sequence, hf_index, ett_gsm_map_VlrCamelSubscriptionInfo); return offset; } @@ -5983,6 +6087,7 @@ static int dissect_naea_PreferredCIC_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_NAEA_CIC(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_naea_PreferredCIC); } + static const ber_sequence_t NAEA_PreferredCI_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_naea_PreferredCIC_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -5992,7 +6097,7 @@ static const ber_sequence_t NAEA_PreferredCI_sequence[] = { static int dissect_gsm_map_NAEA_PreferredCI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NAEA_PreferredCI_sequence, hf_index, ett_gsm_map_NAEA_PreferredCI); + NAEA_PreferredCI_sequence, hf_index, ett_gsm_map_NAEA_PreferredCI); return offset; } @@ -6026,9 +6131,11 @@ dissect_gsm_map_PDP_Type(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, p guint8 pdp_type_org; tvbuff_t *parameter_tvb; + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, ¶meter_tvb); + if (!parameter_tvb) return offset; proto_tree_add_item(tree, hf_gsm_map_pdp_type_org, parameter_tvb, 0,1,FALSE); @@ -6043,6 +6150,8 @@ dissect_gsm_map_PDP_Type(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, p default: break; } + + return offset; } static int dissect_pdp_Type_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) { @@ -6069,6 +6178,7 @@ dissect_gsm_map_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int off tvbuff_t *parameter_tvb; + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, ¶meter_tvb); @@ -6077,6 +6187,7 @@ dissect_gsm_map_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int off return offset; de_sm_qos(parameter_tvb, tree, 0, 3, NULL); + return offset; } static int dissect_qos_Subscribed_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) { @@ -6112,6 +6223,7 @@ dissect_gsm_map_Ext_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int tvbuff_t *parameter_tvb; + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, ¶meter_tvb); @@ -6120,6 +6232,7 @@ dissect_gsm_map_Ext_QoS_Subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb, int return offset; de_sm_qos(parameter_tvb, tree, 0, 9, NULL); + return offset; } static int dissect_ext_QoS_Subscribed_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) { @@ -6173,6 +6286,7 @@ static int dissect_qos2_Negotiated_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_Ext2_QoS_Subscribed(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_qos2_Negotiated); } + static const ber_sequence_t PDP_Context_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_pdp_ContextId }, { BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_pdp_Type_impl }, @@ -6190,7 +6304,7 @@ static const ber_sequence_t PDP_Context_sequence[] = { static int dissect_gsm_map_PDP_Context(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PDP_Context_sequence, hf_index, ett_gsm_map_PDP_Context); + PDP_Context_sequence, hf_index, ett_gsm_map_PDP_Context); return offset; } @@ -6214,6 +6328,7 @@ static int dissect_gprsDataList_impl(packet_info *pinfo, proto_tree *tree, tvbuf return dissect_gsm_map_GPRSDataList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_gprsDataList); } + static const ber_sequence_t GPRSSubscriptionData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_completeDataListIncluded }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gprsDataList_impl }, @@ -6224,7 +6339,7 @@ static const ber_sequence_t GPRSSubscriptionData_sequence[] = { static int dissect_gsm_map_GPRSSubscriptionData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GPRSSubscriptionData_sequence, hf_index, ett_gsm_map_GPRSSubscriptionData); + GPRSSubscriptionData_sequence, hf_index, ett_gsm_map_GPRSSubscriptionData); return offset; } @@ -6306,6 +6421,7 @@ static int dissect_lsaAttributes_impl(packet_info *pinfo, proto_tree *tree, tvbu return dissect_gsm_map_LSAAttributes(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lsaAttributes); } + static const ber_sequence_t LSAData_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_lsaIdentity_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_lsaAttributes_impl }, @@ -6317,7 +6433,7 @@ static const ber_sequence_t LSAData_sequence[] = { static int dissect_gsm_map_LSAData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LSAData_sequence, hf_index, ett_gsm_map_LSAData); + LSAData_sequence, hf_index, ett_gsm_map_LSAData); return offset; } @@ -6341,6 +6457,7 @@ static int dissect_lsaDataList_impl(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_LSADataList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lsaDataList); } + static const ber_sequence_t LSAInformation_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_completeDataListIncluded }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lsaOnlyAccessIndicator_impl }, @@ -6352,7 +6469,7 @@ static const ber_sequence_t LSAInformation_sequence[] = { static int dissect_gsm_map_LSAInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LSAInformation_sequence, hf_index, ett_gsm_map_LSAInformation); + LSAInformation_sequence, hf_index, ett_gsm_map_LSAInformation); return offset; } @@ -6377,7 +6494,7 @@ static int dissect_gmlc_List_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t } -static const value_string gsm_map_NotificationToMSUser_vals[] = { +const value_string gsm_map_NotificationToMSUser_vals[] = { { 0, "notifyLocationAllowed" }, { 1, "notifyAndVerify-LocationAllowedIfNoResponse" }, { 2, "notifyAndVerify-LocationNotAllowedIfNoResponse" }, @@ -6386,7 +6503,7 @@ static const value_string gsm_map_NotificationToMSUser_vals[] = { }; -static int +int dissect_gsm_map_NotificationToMSUser(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -6397,16 +6514,17 @@ static int dissect_notificationToMSUser_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_NotificationToMSUser(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_notificationToMSUser); } + static const ber_sequence_t LCSClientExternalID_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_externalAddress_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_LCSClientExternalID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCSClientExternalID_sequence, hf_index, ett_gsm_map_LCSClientExternalID); + LCSClientExternalID_sequence, hf_index, ett_gsm_map_LCSClientExternalID); return offset; } @@ -6436,6 +6554,7 @@ static int dissect_gmlc_Restriction_impl(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_GMLC_Restriction(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_gmlc_Restriction); } + static const ber_sequence_t ExternalClient_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_clientIdentity }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gmlc_Restriction_impl }, @@ -6447,7 +6566,7 @@ static const ber_sequence_t ExternalClient_sequence[] = { static int dissect_gsm_map_ExternalClient(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ExternalClient_sequence, hf_index, ett_gsm_map_ExternalClient); + ExternalClient_sequence, hf_index, ett_gsm_map_ExternalClient); return offset; } @@ -6533,7 +6652,7 @@ static int dissect_ext_externalClientList_impl(packet_info *pinfo, proto_tree *t -static int +int dissect_gsm_map_LCSServiceTypeID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -6547,6 +6666,7 @@ static int dissect_lcsServiceTypeID_impl(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_LCSServiceTypeID(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lcsServiceTypeID); } + static const ber_sequence_t ServiceType_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceTypeIdentity }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gmlc_Restriction_impl }, @@ -6558,7 +6678,7 @@ static const ber_sequence_t ServiceType_sequence[] = { static int dissect_gsm_map_ServiceType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ServiceType_sequence, hf_index, ett_gsm_map_ServiceType); + ServiceType_sequence, hf_index, ett_gsm_map_ServiceType); return offset; } @@ -6582,6 +6702,7 @@ static int dissect_serviceTypeList_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_ServiceTypeList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_serviceTypeList); } + static const ber_sequence_t LCS_PrivacyClass_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ext_ss_Status }, @@ -6597,7 +6718,7 @@ static const ber_sequence_t LCS_PrivacyClass_sequence[] = { static int dissect_gsm_map_LCS_PrivacyClass(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCS_PrivacyClass_sequence, hf_index, ett_gsm_map_LCS_PrivacyClass); + LCS_PrivacyClass_sequence, hf_index, ett_gsm_map_LCS_PrivacyClass); return offset; } @@ -6624,6 +6745,7 @@ static int dissect_add_lcs_PrivacyExceptionList(packet_info *pinfo, proto_tree * return dissect_gsm_map_LCS_PrivacyExceptionList(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_add_lcs_PrivacyExceptionList); } + static const ber_sequence_t MOLR_Class_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ext_ss_Status }, @@ -6634,7 +6756,7 @@ static const ber_sequence_t MOLR_Class_sequence[] = { static int dissect_gsm_map_MOLR_Class(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - MOLR_Class_sequence, hf_index, ett_gsm_map_MOLR_Class); + MOLR_Class_sequence, hf_index, ett_gsm_map_MOLR_Class); return offset; } @@ -6658,6 +6780,7 @@ static int dissect_molr_List_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_MOLR_List(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_molr_List); } + static const ber_sequence_t LCSInformation_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gmlc_List_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lcs_PrivacyExceptionList_impl }, @@ -6669,7 +6792,7 @@ static const ber_sequence_t LCSInformation_sequence[] = { static int dissect_gsm_map_LCSInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCSInformation_sequence, hf_index, ett_gsm_map_LCSInformation); + LCSInformation_sequence, hf_index, ett_gsm_map_LCSInformation); return offset; } @@ -6719,6 +6842,7 @@ static int dissect_nbrSN_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv return dissect_gsm_map_MC_Bearers(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_nbrSN); } + static const ber_sequence_t MC_SS_Info_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ext_ss_Status_impl }, @@ -6731,7 +6855,7 @@ static const ber_sequence_t MC_SS_Info_sequence[] = { static int dissect_gsm_map_MC_SS_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - MC_SS_Info_sequence, hf_index, ett_gsm_map_MC_SS_Info); + MC_SS_Info_sequence, hf_index, ett_gsm_map_MC_SS_Info); return offset; } @@ -6793,6 +6917,7 @@ static int dissect_defaultSessionHandling_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_DefaultGPRS_Handling(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_defaultSessionHandling); } + static const ber_sequence_t GPRS_CamelTDPData_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gprs_TriggerDetectionPoint_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_serviceKey_impl }, @@ -6805,7 +6930,7 @@ static const ber_sequence_t GPRS_CamelTDPData_sequence[] = { static int dissect_gsm_map_GPRS_CamelTDPData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GPRS_CamelTDPData_sequence, hf_index, ett_gsm_map_GPRS_CamelTDPData); + GPRS_CamelTDPData_sequence, hf_index, ett_gsm_map_GPRS_CamelTDPData); return offset; } @@ -6829,6 +6954,7 @@ static int dissect_gprs_CamelTDPDataList_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_GPRS_CamelTDPDataList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_gprs_CamelTDPDataList); } + static const ber_sequence_t GPRS_CSI_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprs_CamelTDPDataList_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_camelCapabilityHandling_impl }, @@ -6841,7 +6967,7 @@ static const ber_sequence_t GPRS_CSI_sequence[] = { static int dissect_gsm_map_GPRS_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GPRS_CSI_sequence, hf_index, ett_gsm_map_GPRS_CSI); + GPRS_CSI_sequence, hf_index, ett_gsm_map_GPRS_CSI); return offset; } @@ -6849,6 +6975,7 @@ static int dissect_gprs_CSI_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_GPRS_CSI(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_gprs_CSI); } + static const ber_sequence_t MG_CSI_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_mobilityTriggers }, { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, @@ -6862,7 +6989,7 @@ static const ber_sequence_t MG_CSI_sequence[] = { static int dissect_gsm_map_MG_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - MG_CSI_sequence, hf_index, ett_gsm_map_MG_CSI); + MG_CSI_sequence, hf_index, ett_gsm_map_MG_CSI); return offset; } @@ -6870,6 +6997,7 @@ static int dissect_mg_csi_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *t return dissect_gsm_map_MG_CSI(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_mg_csi); } + static const ber_sequence_t SGSN_CAMEL_SubscriptionInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_gprs_CSI_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mo_sms_CSI_impl }, @@ -6883,7 +7011,7 @@ static const ber_sequence_t SGSN_CAMEL_SubscriptionInfo_sequence[] = { static int dissect_gsm_map_SGSN_CAMEL_SubscriptionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SGSN_CAMEL_SubscriptionInfo_sequence, hf_index, ett_gsm_map_SGSN_CAMEL_SubscriptionInfo); + SGSN_CAMEL_SubscriptionInfo_sequence, hf_index, ett_gsm_map_SGSN_CAMEL_SubscriptionInfo); return offset; } @@ -6909,6 +7037,7 @@ static int dissect_accessRestrictionData_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_AccessRestrictionData(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_accessRestrictionData); } + static const ber_sequence_t InsertSubscriberDataArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_msisdn_impl }, @@ -6944,7 +7073,7 @@ static const ber_sequence_t InsertSubscriberDataArg_sequence[] = { static int dissect_gsm_map_InsertSubscriberDataArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - InsertSubscriberDataArg_sequence, hf_index, ett_gsm_map_InsertSubscriberDataArg); + InsertSubscriberDataArg_sequence, hf_index, ett_gsm_map_InsertSubscriberDataArg); return offset; } @@ -6989,6 +7118,7 @@ static int dissect_regionalSubscriptionResponse_impl(packet_info *pinfo, proto_t return dissect_gsm_map_RegionalSubscriptionResponse(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_regionalSubscriptionResponse); } + static const ber_sequence_t InsertSubscriberDataRes_sequence[] = { { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_teleserviceList_impl }, { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_bearerServiceList_impl }, @@ -7004,7 +7134,7 @@ static const ber_sequence_t InsertSubscriberDataRes_sequence[] = { static int dissect_gsm_map_InsertSubscriberDataRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - InsertSubscriberDataRes_sequence, hf_index, ett_gsm_map_InsertSubscriberDataRes); + InsertSubscriberDataRes_sequence, hf_index, ett_gsm_map_InsertSubscriberDataRes); return offset; } @@ -7057,7 +7187,8 @@ static const ber_choice_t GPRSSubscriptionDataWithdraw_choice[] = { static int dissect_gsm_map_GPRSSubscriptionDataWithdraw(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - GPRSSubscriptionDataWithdraw_choice, hf_index, ett_gsm_map_GPRSSubscriptionDataWithdraw, NULL); + GPRSSubscriptionDataWithdraw_choice, hf_index, ett_gsm_map_GPRSSubscriptionDataWithdraw, + NULL); return offset; } @@ -7097,7 +7228,8 @@ static const ber_choice_t LSAInformationWithdraw_choice[] = { static int dissect_gsm_map_LSAInformationWithdraw(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - LSAInformationWithdraw_choice, hf_index, ett_gsm_map_LSAInformationWithdraw, NULL); + LSAInformationWithdraw_choice, hf_index, ett_gsm_map_LSAInformationWithdraw, + NULL); return offset; } @@ -7138,6 +7270,7 @@ static int dissect_specificCSIDeletedList_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_SpecificCSI_Withdraw(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_specificCSIDeletedList); } + static const ber_sequence_t DeleteSubscriberDataArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_basicServiceList_impl }, @@ -7161,11 +7294,12 @@ static const ber_sequence_t DeleteSubscriberDataArg_sequence[] = { static int dissect_gsm_map_DeleteSubscriberDataArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DeleteSubscriberDataArg_sequence, hf_index, ett_gsm_map_DeleteSubscriberDataArg); + DeleteSubscriberDataArg_sequence, hf_index, ett_gsm_map_DeleteSubscriberDataArg); return offset; } + static const ber_sequence_t DeleteSubscriberDataRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_regionalSubscriptionResponse_impl }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -7175,21 +7309,23 @@ static const ber_sequence_t DeleteSubscriberDataRes_sequence[] = { static int dissect_gsm_map_DeleteSubscriberDataRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DeleteSubscriberDataRes_sequence, hf_index, ett_gsm_map_DeleteSubscriberDataRes); + DeleteSubscriberDataRes_sequence, hf_index, ett_gsm_map_DeleteSubscriberDataRes); return offset; } -static int +int dissect_gsm_map_SS_Status(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { tvbuff_t *parameter_tvb; guint8 octet; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - ¶meter_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + ¶meter_tvb); + + if (!parameter_tvb) return offset; @@ -7256,7 +7392,8 @@ static const ber_choice_t BasicServiceCode_choice[] = { static int dissect_gsm_map_BasicServiceCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - BasicServiceCode_choice, hf_index, ett_gsm_map_BasicServiceCode, NULL); + BasicServiceCode_choice, hf_index, ett_gsm_map_BasicServiceCode, + NULL); return offset; } @@ -7267,6 +7404,7 @@ static int dissect_basicServiceGroup_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_BasicServiceCode(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_basicServiceGroup); } + static const ber_sequence_t CallBarringFeature_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_basicService }, { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ss_Status_impl }, @@ -7276,7 +7414,7 @@ static const ber_sequence_t CallBarringFeature_sequence[] = { static int dissect_gsm_map_CallBarringFeature(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CallBarringFeature_sequence, hf_index, ett_gsm_map_CallBarringFeature); + CallBarringFeature_sequence, hf_index, ett_gsm_map_CallBarringFeature); return offset; } @@ -7331,6 +7469,7 @@ static int dissect_noReplyConditionTime_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_NoReplyConditionTime(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_noReplyConditionTime); } + static const ber_sequence_t ForwardingFeature_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_basicService }, { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ss_Status_impl }, @@ -7345,7 +7484,7 @@ static const ber_sequence_t ForwardingFeature_sequence[] = { static int dissect_gsm_map_ForwardingFeature(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardingFeature_sequence, hf_index, ett_gsm_map_ForwardingFeature); + ForwardingFeature_sequence, hf_index, ett_gsm_map_ForwardingFeature); return offset; } @@ -7382,6 +7521,7 @@ dissect_gsm_map_LongForwardedToNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, return offset; } + static const ber_sequence_t ForwardingInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_forwardingFeatureList }, @@ -7391,7 +7531,7 @@ static const ber_sequence_t ForwardingInfo_sequence[] = { static int dissect_gsm_map_ForwardingInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardingInfo_sequence, hf_index, ett_gsm_map_ForwardingInfo); + ForwardingInfo_sequence, hf_index, ett_gsm_map_ForwardingInfo); return offset; } @@ -7399,6 +7539,7 @@ static int dissect_forwardingInfo_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_ForwardingInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_forwardingInfo); } + static const ber_sequence_t CallBarringInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_callBarringFeatureList }, @@ -7408,7 +7549,7 @@ static const ber_sequence_t CallBarringInfo_sequence[] = { static int dissect_gsm_map_CallBarringInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CallBarringInfo_sequence, hf_index, ett_gsm_map_CallBarringInfo); + CallBarringInfo_sequence, hf_index, ett_gsm_map_CallBarringInfo); return offset; } @@ -7417,6 +7558,7 @@ static int dissect_callBarringInfo_impl(packet_info *pinfo, proto_tree *tree, tv } + static int dissect_gsm_map_HLR_Id(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_IMSI(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -7443,6 +7585,7 @@ static int dissect_hlr_List(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, return dissect_gsm_map_HLR_List(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_hlr_List); } + static const ber_sequence_t ResetArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_hlr_Number }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_hlr_List }, @@ -7452,7 +7595,7 @@ static const ber_sequence_t ResetArg_sequence[] = { static int dissect_gsm_map_ResetArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ResetArg_sequence, hf_index, ett_gsm_map_ResetArg); + ResetArg_sequence, hf_index, ett_gsm_map_ResetArg); return offset; } @@ -7467,6 +7610,7 @@ dissect_gsm_map_Hlr_Number(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, return offset; } + static const ber_sequence_t RestoreDataArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_lmsi }, @@ -7478,11 +7622,12 @@ static const ber_sequence_t RestoreDataArg_sequence[] = { static int dissect_gsm_map_RestoreDataArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RestoreDataArg_sequence, hf_index, ett_gsm_map_RestoreDataArg); + RestoreDataArg_sequence, hf_index, ett_gsm_map_RestoreDataArg); return offset; } + static const ber_sequence_t RestoreDataRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_hlr_Number }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_msNotReachable }, @@ -7493,7 +7638,7 @@ static const ber_sequence_t RestoreDataRes_sequence[] = { static int dissect_gsm_map_RestoreDataRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RestoreDataRes_sequence, hf_index, ett_gsm_map_RestoreDataRes); + RestoreDataRes_sequence, hf_index, ett_gsm_map_RestoreDataRes); return offset; } @@ -7540,6 +7685,7 @@ static int dissect_ss_EventSpecification_item(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_OCTET_STRING_SIZE_1_20(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ss_EventSpecification_item); } + static const ber_sequence_t ActivateTraceModeArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_traceReference_impl }, @@ -7552,11 +7698,12 @@ static const ber_sequence_t ActivateTraceModeArg_sequence[] = { static int dissect_gsm_map_ActivateTraceModeArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ActivateTraceModeArg_sequence, hf_index, ett_gsm_map_ActivateTraceModeArg); + ActivateTraceModeArg_sequence, hf_index, ett_gsm_map_ActivateTraceModeArg); return offset; } + static const ber_sequence_t ActivateTraceModeRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, { 0, 0, 0, NULL } @@ -7565,11 +7712,12 @@ static const ber_sequence_t ActivateTraceModeRes_sequence[] = { static int dissect_gsm_map_ActivateTraceModeRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ActivateTraceModeRes_sequence, hf_index, ett_gsm_map_ActivateTraceModeRes); + ActivateTraceModeRes_sequence, hf_index, ett_gsm_map_ActivateTraceModeRes); return offset; } + static const ber_sequence_t DeactivateTraceModeArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_traceReference_impl }, @@ -7580,11 +7728,12 @@ static const ber_sequence_t DeactivateTraceModeArg_sequence[] = { static int dissect_gsm_map_DeactivateTraceModeArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DeactivateTraceModeArg_sequence, hf_index, ett_gsm_map_DeactivateTraceModeArg); + DeactivateTraceModeArg_sequence, hf_index, ett_gsm_map_DeactivateTraceModeArg); return offset; } + static const ber_sequence_t DeactivateTraceModeRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, { 0, 0, 0, NULL } @@ -7593,11 +7742,12 @@ static const ber_sequence_t DeactivateTraceModeRes_sequence[] = { static int dissect_gsm_map_DeactivateTraceModeRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DeactivateTraceModeRes_sequence, hf_index, ett_gsm_map_DeactivateTraceModeRes); + DeactivateTraceModeRes_sequence, hf_index, ett_gsm_map_DeactivateTraceModeRes); return offset; } + static const ber_sequence_t CUG_CheckInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_cug_Interlock }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cug_OutgoingAccess }, @@ -7608,7 +7758,7 @@ static const ber_sequence_t CUG_CheckInfo_sequence[] = { static int dissect_gsm_map_CUG_CheckInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CUG_CheckInfo_sequence, hf_index, ett_gsm_map_CUG_CheckInfo); + CUG_CheckInfo_sequence, hf_index, ett_gsm_map_CUG_CheckInfo); return offset; } @@ -7694,6 +7844,7 @@ static int dissect_forwardingReason_impl(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_ForwardingReason(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_forwardingReason); } + static const ber_sequence_t ExternalSignalInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_protocolId }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_signalInfo }, @@ -7704,7 +7855,7 @@ static const ber_sequence_t ExternalSignalInfo_sequence[] = { static int dissect_gsm_map_ExternalSignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ExternalSignalInfo_sequence, hf_index, ett_gsm_map_ExternalSignalInfo); + ExternalSignalInfo_sequence, hf_index, ett_gsm_map_ExternalSignalInfo); return offset; } @@ -7742,6 +7893,7 @@ static int dissect_callInfo_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_ExternalSignalInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callInfo); } + static const ber_sequence_t CamelInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_supportedCamelPhases }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_suppress_T_CSI }, @@ -7753,7 +7905,7 @@ static const ber_sequence_t CamelInfo_sequence[] = { static int dissect_gsm_map_CamelInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CamelInfo_sequence, hf_index, ett_gsm_map_CamelInfo); + CamelInfo_sequence, hf_index, ett_gsm_map_CamelInfo); return offset; } @@ -7775,7 +7927,7 @@ static int dissect_suppressionOfAnnouncement_impl(packet_info *pinfo, proto_tree -static int +int dissect_gsm_map_AlertingPattern(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -7820,6 +7972,7 @@ static int dissect_ext_ProtocolId(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_Ext_ProtocolId(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ext_ProtocolId); } + static const ber_sequence_t Ext_ExternalSignalInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_ext_ProtocolId }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_signalInfo }, @@ -7830,7 +7983,7 @@ static const ber_sequence_t Ext_ExternalSignalInfo_sequence[] = { static int dissect_gsm_map_Ext_ExternalSignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_ExternalSignalInfo_sequence, hf_index, ett_gsm_map_Ext_ExternalSignalInfo); + Ext_ExternalSignalInfo_sequence, hf_index, ett_gsm_map_Ext_ExternalSignalInfo); return offset; } @@ -7851,6 +8004,7 @@ static int dissect_callDiversionTreatmentIndicator_impl(packet_info *pinfo, prot return dissect_gsm_map_CallDiversionTreatmentIndicator(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callDiversionTreatmentIndicator); } + static const ber_sequence_t SendRoutingInfoArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_msisdn_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_cug_CheckInfo_impl }, @@ -7885,11 +8039,12 @@ static const ber_sequence_t SendRoutingInfoArg_sequence[] = { static int dissect_gsm_map_SendRoutingInfoArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendRoutingInfoArg_sequence, hf_index, ett_gsm_map_SendRoutingInfoArg); + SendRoutingInfoArg_sequence, hf_index, ett_gsm_map_SendRoutingInfoArg); return offset; } + static const ber_sequence_t ForwardingData_sequence[] = { { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardedToNumber_impl }, { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_forwardedToSubaddress_impl }, @@ -7902,7 +8057,7 @@ static const ber_sequence_t ForwardingData_sequence[] = { static int dissect_gsm_map_ForwardingData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardingData_sequence, hf_index, ett_gsm_map_ForwardingData); + ForwardingData_sequence, hf_index, ett_gsm_map_ForwardingData); return offset; } @@ -7929,7 +8084,8 @@ static const ber_choice_t RoutingInfo_choice[] = { static int dissect_gsm_map_RoutingInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - RoutingInfo_choice, hf_index, ett_gsm_map_RoutingInfo, NULL); + RoutingInfo_choice, hf_index, ett_gsm_map_RoutingInfo, + NULL); return offset; } @@ -7940,6 +8096,7 @@ static int dissect_routingInfo(packet_info *pinfo, proto_tree *tree, tvbuff_t *t return dissect_gsm_map_RoutingInfo(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_routingInfo); } + static const ber_sequence_t GmscCamelSubscriptionInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_t_CSI_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_o_CSI_impl }, @@ -7953,7 +8110,7 @@ static const ber_sequence_t GmscCamelSubscriptionInfo_sequence[] = { static int dissect_gsm_map_GmscCamelSubscriptionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GmscCamelSubscriptionInfo_sequence, hf_index, ett_gsm_map_GmscCamelSubscriptionInfo); + GmscCamelSubscriptionInfo_sequence, hf_index, ett_gsm_map_GmscCamelSubscriptionInfo); return offset; } @@ -7961,6 +8118,7 @@ static int dissect_gmscCamelSubscriptionInfo_impl(packet_info *pinfo, proto_tree return dissect_gsm_map_GmscCamelSubscriptionInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_gmscCamelSubscriptionInfo); } + static const ber_sequence_t CamelRoutingInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_forwardingData }, { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gmscCamelSubscriptionInfo_impl }, @@ -7971,7 +8129,7 @@ static const ber_sequence_t CamelRoutingInfo_sequence[] = { static int dissect_gsm_map_CamelRoutingInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CamelRoutingInfo_sequence, hf_index, ett_gsm_map_CamelRoutingInfo); + CamelRoutingInfo_sequence, hf_index, ett_gsm_map_CamelRoutingInfo); return offset; } @@ -7995,7 +8153,8 @@ static const ber_choice_t ExtendedRoutingInfo_choice[] = { static int dissect_gsm_map_ExtendedRoutingInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - ExtendedRoutingInfo_choice, hf_index, ett_gsm_map_ExtendedRoutingInfo, NULL); + ExtendedRoutingInfo_choice, hf_index, ett_gsm_map_ExtendedRoutingInfo, + NULL); return offset; } @@ -8005,7 +8164,7 @@ static int dissect_extendedRoutingInfo(packet_info *pinfo, proto_tree *tree, tvb -static int +int dissect_gsm_map_AgeOfLocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -8077,7 +8236,8 @@ static const ber_choice_t CellGlobalIdOrServiceAreaIdOrLAI_choice[] = { static int dissect_gsm_map_CellGlobalIdOrServiceAreaIdOrLAI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - CellGlobalIdOrServiceAreaIdOrLAI_choice, hf_index, ett_gsm_map_CellGlobalIdOrServiceAreaIdOrLAI, NULL); + CellGlobalIdOrServiceAreaIdOrLAI_choice, hf_index, ett_gsm_map_CellGlobalIdOrServiceAreaIdOrLAI, + NULL); return offset; } @@ -8107,6 +8267,7 @@ static int dissect_geodeticInformation_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_GeodeticInformation(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_geodeticInformation); } + static const ber_sequence_t LocationInformation_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ageOfLocationInformation }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_geographicalInformation_impl }, @@ -8125,7 +8286,7 @@ static const ber_sequence_t LocationInformation_sequence[] = { static int dissect_gsm_map_LocationInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LocationInformation_sequence, hf_index, ett_gsm_map_LocationInformation); + LocationInformation_sequence, hf_index, ett_gsm_map_LocationInformation); return offset; } @@ -8151,7 +8312,8 @@ static const ber_choice_t SubscriberState_choice[] = { static int dissect_gsm_map_SubscriberState(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SubscriberState_choice, hf_index, ett_gsm_map_SubscriberState, NULL); + SubscriberState_choice, hf_index, ett_gsm_map_SubscriberState, + NULL); return offset; } @@ -8172,6 +8334,7 @@ static int dissect_routeingAreaIdentity(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_RAIdentity(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_routeingAreaIdentity); } + static const ber_sequence_t LocationInformationGPRS_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_cellGlobalIdOrServiceAreaIdOrLAI }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_routeingAreaIdentity }, @@ -8189,7 +8352,7 @@ static const ber_sequence_t LocationInformationGPRS_sequence[] = { static int dissect_gsm_map_LocationInformationGPRS(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LocationInformationGPRS_sequence, hf_index, ett_gsm_map_LocationInformationGPRS); + LocationInformationGPRS_sequence, hf_index, ett_gsm_map_LocationInformationGPRS); return offset; } @@ -8255,6 +8418,7 @@ static int dissect_chargingId_impl(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_GPRSChargingID(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_chargingId); } + static const ber_sequence_t PDP_ContextInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_pdp_ContextIdentifier_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_pdp_ContextActive_impl }, @@ -8283,7 +8447,7 @@ static const ber_sequence_t PDP_ContextInfo_sequence[] = { static int dissect_gsm_map_PDP_ContextInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PDP_ContextInfo_sequence, hf_index, ett_gsm_map_PDP_ContextInfo); + PDP_ContextInfo_sequence, hf_index, ett_gsm_map_PDP_ContextInfo); return offset; } @@ -8357,7 +8521,8 @@ static const ber_choice_t PS_SubscriberState_choice[] = { static int dissect_gsm_map_PS_SubscriberState(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - PS_SubscriberState_choice, hf_index, ett_gsm_map_PS_SubscriberState, NULL); + PS_SubscriberState_choice, hf_index, ett_gsm_map_PS_SubscriberState, + NULL); return offset; } @@ -8404,6 +8569,7 @@ static int dissect_mSRadioAccessCapability_impl(packet_info *pinfo, proto_tree * return dissect_gsm_map_MSRadioAccessCapability(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_mSRadioAccessCapability); } + static const ber_sequence_t GPRSMSClass_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mSNetworkCapability_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_mSRadioAccessCapability_impl }, @@ -8413,7 +8579,7 @@ static const ber_sequence_t GPRSMSClass_sequence[] = { static int dissect_gsm_map_GPRSMSClass(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GPRSMSClass_sequence, hf_index, ett_gsm_map_GPRSMSClass); + GPRSMSClass_sequence, hf_index, ett_gsm_map_GPRSMSClass); return offset; } @@ -8422,6 +8588,7 @@ static int dissect_gprs_MS_Class_impl(packet_info *pinfo, proto_tree *tree, tvbu } + static int dissect_gsm_map_RouteingNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_TBCD_STRING(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -8454,6 +8621,7 @@ static int dissect_numberPortabilityStatus_impl(packet_info *pinfo, proto_tree * return dissect_gsm_map_NumberPortabilityStatus(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_numberPortabilityStatus); } + static const ber_sequence_t MNPInfoRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_routeingNumber_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_imsi_impl }, @@ -8466,7 +8634,7 @@ static const ber_sequence_t MNPInfoRes_sequence[] = { static int dissect_gsm_map_MNPInfoRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - MNPInfoRes_sequence, hf_index, ett_gsm_map_MNPInfoRes); + MNPInfoRes_sequence, hf_index, ett_gsm_map_MNPInfoRes); return offset; } @@ -8474,6 +8642,7 @@ static int dissect_mnpInfoRes_impl(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_MNPInfoRes(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_mnpInfoRes); } + static const ber_sequence_t SubscriberInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_subscriberState }, @@ -8490,7 +8659,7 @@ static const ber_sequence_t SubscriberInfo_sequence[] = { static int dissect_gsm_map_SubscriberInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SubscriberInfo_sequence, hf_index, ett_gsm_map_SubscriberInfo); + SubscriberInfo_sequence, hf_index, ett_gsm_map_SubscriberInfo); return offset; } @@ -8501,6 +8670,7 @@ static int dissect_subscriberInfo_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_SubscriberInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_subscriberInfo); } + static const ber_sequence_t CCBS_Indicators_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_Possible_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_keepCCBS_CallIndicator_impl }, @@ -8511,7 +8681,7 @@ static const ber_sequence_t CCBS_Indicators_sequence[] = { static int dissect_gsm_map_CCBS_Indicators(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CCBS_Indicators_sequence, hf_index, ett_gsm_map_CCBS_Indicators); + CCBS_Indicators_sequence, hf_index, ett_gsm_map_CCBS_Indicators); return offset; } @@ -8560,6 +8730,7 @@ static int dissect_unavailabilityCause_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_UnavailabilityCause(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_unavailabilityCause); } + static const ber_sequence_t SendRoutingInfoRes_sequence[] = { { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { -1/*choice*/ , -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_extendedRoutingInfo }, @@ -8590,7 +8761,7 @@ static const ber_sequence_t SendRoutingInfoRes_sequence[] = { static int dissect_gsm_map_SendRoutingInfoRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendRoutingInfoRes_sequence, hf_index, ett_gsm_map_SendRoutingInfoRes); + SendRoutingInfoRes_sequence, hf_index, ett_gsm_map_SendRoutingInfoRes); return offset; } @@ -8611,7 +8782,8 @@ static const ber_choice_t SubscriberId_choice[] = { static int dissect_gsm_map_SubscriberId(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SubscriberId_choice, hf_index, ett_gsm_map_SubscriberId, NULL); + SubscriberId_choice, hf_index, ett_gsm_map_SubscriberId, + NULL); return offset; } @@ -8632,7 +8804,8 @@ static const ber_choice_t SubscriberIdentity_choice[] = { static int dissect_gsm_map_SubscriberIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SubscriberIdentity_choice, hf_index, ett_gsm_map_SubscriberIdentity, NULL); + SubscriberIdentity_choice, hf_index, ett_gsm_map_SubscriberIdentity, + NULL); return offset; } @@ -8707,6 +8880,7 @@ dissect_gsm_map_Gmsc_Address(gboolean implicit_tag _U_, tvbuff_t *tvb, int offse return offset; } + static const ber_sequence_t ProvideRoamingNumberArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_msc_Number_impl }, @@ -8734,11 +8908,12 @@ static const ber_sequence_t ProvideRoamingNumberArg_sequence[] = { static int dissect_gsm_map_ProvideRoamingNumberArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideRoamingNumberArg_sequence, hf_index, ett_gsm_map_ProvideRoamingNumberArg); + ProvideRoamingNumberArg_sequence, hf_index, ett_gsm_map_ProvideRoamingNumberArg); return offset; } + static const ber_sequence_t ProvideRoamingNumberRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_roamingNumber }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -8749,7 +8924,7 @@ static const ber_sequence_t ProvideRoamingNumberRes_sequence[] = { static int dissect_gsm_map_ProvideRoamingNumberRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideRoamingNumberRes_sequence, hf_index, ett_gsm_map_ProvideRoamingNumberRes); + ProvideRoamingNumberRes_sequence, hf_index, ett_gsm_map_ProvideRoamingNumberRes); return offset; } @@ -8780,6 +8955,7 @@ static int dissect_uui_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, return dissect_gsm_map_UUI(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_uui); } + static const ber_sequence_t UU_Data_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uuIndicator_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uui_impl }, @@ -8791,7 +8967,7 @@ static const ber_sequence_t UU_Data_sequence[] = { static int dissect_gsm_map_UU_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UU_Data_sequence, hf_index, ett_gsm_map_UU_Data); + UU_Data_sequence, hf_index, ett_gsm_map_UU_Data); return offset; } @@ -8799,6 +8975,7 @@ static int dissect_uu_Data_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t * return dissect_gsm_map_UU_Data(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_uu_Data); } + static const ber_sequence_t ResumeCallHandlingArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callReferenceNumber_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ext_basicServiceGroup }, @@ -8820,11 +8997,12 @@ static const ber_sequence_t ResumeCallHandlingArg_sequence[] = { static int dissect_gsm_map_ResumeCallHandlingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ResumeCallHandlingArg_sequence, hf_index, ett_gsm_map_ResumeCallHandlingArg); + ResumeCallHandlingArg_sequence, hf_index, ett_gsm_map_ResumeCallHandlingArg); return offset; } + static const ber_sequence_t ResumeCallHandlingRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -8833,7 +9011,7 @@ static const ber_sequence_t ResumeCallHandlingRes_sequence[] = { static int dissect_gsm_map_ResumeCallHandlingRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ResumeCallHandlingRes_sequence, hf_index, ett_gsm_map_ResumeCallHandlingRes); + ResumeCallHandlingRes_sequence, hf_index, ett_gsm_map_ResumeCallHandlingRes); return offset; } @@ -8851,6 +9029,7 @@ static int dissect_call_Direction_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_CallDirection(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_call_Direction); } + static const ber_sequence_t ProvideSIWFSNumberArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_gsm_BearerCapability_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_isdn_BearerCapability_impl }, @@ -8866,11 +9045,12 @@ static const ber_sequence_t ProvideSIWFSNumberArg_sequence[] = { static int dissect_gsm_map_ProvideSIWFSNumberArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideSIWFSNumberArg_sequence, hf_index, ett_gsm_map_ProvideSIWFSNumberArg); + ProvideSIWFSNumberArg_sequence, hf_index, ett_gsm_map_ProvideSIWFSNumberArg); return offset; } + static const ber_sequence_t ProvideSIWFSNumberRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sIWFSNumber_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -8880,11 +9060,12 @@ static const ber_sequence_t ProvideSIWFSNumberRes_sequence[] = { static int dissect_gsm_map_ProvideSIWFSNumberRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideSIWFSNumberRes_sequence, hf_index, ett_gsm_map_ProvideSIWFSNumberRes); + ProvideSIWFSNumberRes_sequence, hf_index, ett_gsm_map_ProvideSIWFSNumberRes); return offset; } + static const ber_sequence_t SIWFSSignallingModifyArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_channelType_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_chosenChannel_impl }, @@ -8895,11 +9076,12 @@ static const ber_sequence_t SIWFSSignallingModifyArg_sequence[] = { static int dissect_gsm_map_SIWFSSignallingModifyArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SIWFSSignallingModifyArg_sequence, hf_index, ett_gsm_map_SIWFSSignallingModifyArg); + SIWFSSignallingModifyArg_sequence, hf_index, ett_gsm_map_SIWFSSignallingModifyArg); return offset; } + static const ber_sequence_t SIWFSSignallingModifyRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_channelType_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -8909,7 +9091,7 @@ static const ber_sequence_t SIWFSSignallingModifyRes_sequence[] = { static int dissect_gsm_map_SIWFSSignallingModifyRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SIWFSSignallingModifyRes_sequence, hf_index, ett_gsm_map_SIWFSSignallingModifyRes); + SIWFSSignallingModifyRes_sequence, hf_index, ett_gsm_map_SIWFSSignallingModifyRes); return offset; } @@ -8949,6 +9131,7 @@ static int dissect_ccbs_Monitoring(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_ReportingState(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ccbs_Monitoring); } + static const ber_sequence_t SetReportingStateArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_imsi }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_lmsi }, @@ -8960,7 +9143,7 @@ static const ber_sequence_t SetReportingStateArg_sequence[] = { static int dissect_gsm_map_SetReportingStateArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SetReportingStateArg_sequence, hf_index, ett_gsm_map_SetReportingStateArg); + SetReportingStateArg_sequence, hf_index, ett_gsm_map_SetReportingStateArg); return offset; } @@ -8985,6 +9168,7 @@ static int dissect_ccbs_SubscriberStatus_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_CCBS_SubscriberStatus(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ccbs_SubscriberStatus); } + static const ber_sequence_t SetReportingStateRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_SubscriberStatus_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -8994,11 +9178,12 @@ static const ber_sequence_t SetReportingStateRes_sequence[] = { static int dissect_gsm_map_SetReportingStateRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SetReportingStateRes_sequence, hf_index, ett_gsm_map_SetReportingStateRes); + SetReportingStateRes_sequence, hf_index, ett_gsm_map_SetReportingStateRes); return offset; } + static const ber_sequence_t EventReportData_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_SubscriberStatus_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -9008,7 +9193,7 @@ static const ber_sequence_t EventReportData_sequence[] = { static int dissect_gsm_map_EventReportData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - EventReportData_sequence, hf_index, ett_gsm_map_EventReportData); + EventReportData_sequence, hf_index, ett_gsm_map_EventReportData); return offset; } @@ -9055,6 +9240,7 @@ static int dissect_callOutcome_impl(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_CallOutcome(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callOutcome); } + static const ber_sequence_t CallReportData_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_monitoringMode_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callOutcome_impl }, @@ -9065,7 +9251,7 @@ static const ber_sequence_t CallReportData_sequence[] = { static int dissect_gsm_map_CallReportData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CallReportData_sequence, hf_index, ett_gsm_map_CallReportData); + CallReportData_sequence, hf_index, ett_gsm_map_CallReportData); return offset; } @@ -9073,6 +9259,7 @@ static int dissect_callReportdata_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_CallReportData(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callReportdata); } + static const ber_sequence_t StatusReportArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_eventReportData_impl }, @@ -9084,11 +9271,12 @@ static const ber_sequence_t StatusReportArg_sequence[] = { static int dissect_gsm_map_StatusReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - StatusReportArg_sequence, hf_index, ett_gsm_map_StatusReportArg); + StatusReportArg_sequence, hf_index, ett_gsm_map_StatusReportArg); return offset; } + static const ber_sequence_t StatusReportRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, { 0, 0, 0, NULL } @@ -9097,7 +9285,7 @@ static const ber_sequence_t StatusReportRes_sequence[] = { static int dissect_gsm_map_StatusReportRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - StatusReportRes_sequence, hf_index, ett_gsm_map_StatusReportRes); + StatusReportRes_sequence, hf_index, ett_gsm_map_StatusReportRes); return offset; } @@ -9125,6 +9313,7 @@ static int dissect_ruf_Outcome_impl(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_Ruf_Outcome(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ruf_Outcome); } + static const ber_sequence_t IST_AlertArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -9134,7 +9323,7 @@ static const ber_sequence_t IST_AlertArg_sequence[] = { static int dissect_gsm_map_IST_AlertArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IST_AlertArg_sequence, hf_index, ett_gsm_map_IST_AlertArg); + IST_AlertArg_sequence, hf_index, ett_gsm_map_IST_AlertArg); return offset; } @@ -9158,6 +9347,7 @@ static int dissect_callTerminationIndicator_impl(packet_info *pinfo, proto_tree return dissect_gsm_map_CallTerminationIndicator(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callTerminationIndicator); } + static const ber_sequence_t IST_AlertRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_istAlertTimer_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_istInformationWithdraw_impl }, @@ -9169,11 +9359,12 @@ static const ber_sequence_t IST_AlertRes_sequence[] = { static int dissect_gsm_map_IST_AlertRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IST_AlertRes_sequence, hf_index, ett_gsm_map_IST_AlertRes); + IST_AlertRes_sequence, hf_index, ett_gsm_map_IST_AlertRes); return offset; } + static const ber_sequence_t IST_CommandArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -9183,11 +9374,12 @@ static const ber_sequence_t IST_CommandArg_sequence[] = { static int dissect_gsm_map_IST_CommandArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IST_CommandArg_sequence, hf_index, ett_gsm_map_IST_CommandArg); + IST_CommandArg_sequence, hf_index, ett_gsm_map_IST_CommandArg); return offset; } + static const ber_sequence_t IST_CommandRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -9196,11 +9388,12 @@ static const ber_sequence_t IST_CommandRes_sequence[] = { static int dissect_gsm_map_IST_CommandRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IST_CommandRes_sequence, hf_index, ett_gsm_map_IST_CommandRes); + IST_CommandRes_sequence, hf_index, ett_gsm_map_IST_CommandRes); return offset; } + static const ber_sequence_t ReleaseResourcesArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_msrn }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -9210,11 +9403,12 @@ static const ber_sequence_t ReleaseResourcesArg_sequence[] = { static int dissect_gsm_map_ReleaseResourcesArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ReleaseResourcesArg_sequence, hf_index, ett_gsm_map_ReleaseResourcesArg); + ReleaseResourcesArg_sequence, hf_index, ett_gsm_map_ReleaseResourcesArg); return offset; } + static const ber_sequence_t ReleaseResourcesRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -9223,7 +9417,7 @@ static const ber_sequence_t ReleaseResourcesRes_sequence[] = { static int dissect_gsm_map_ReleaseResourcesRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ReleaseResourcesRes_sequence, hf_index, ett_gsm_map_ReleaseResourcesRes); + ReleaseResourcesRes_sequence, hf_index, ett_gsm_map_ReleaseResourcesRes); return offset; } @@ -9241,6 +9435,7 @@ static int dissect_ccbs_Index_impl(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_CCBS_Index(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ccbs_Index); } + static const ber_sequence_t CCBS_Feature_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_Index_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_b_subscriberNumber_impl }, @@ -9249,10 +9444,10 @@ static const ber_sequence_t CCBS_Feature_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_CCBS_Feature(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CCBS_Feature_sequence, hf_index, ett_gsm_map_CCBS_Feature); + CCBS_Feature_sequence, hf_index, ett_gsm_map_CCBS_Feature); return offset; } @@ -9266,6 +9461,7 @@ static int dissect_CCBS_FeatureList_item(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_CCBS_Feature(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_CCBS_FeatureList_item); } + static const ber_sequence_t RemoteUserFreeArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_callInfo_impl }, @@ -9280,11 +9476,12 @@ static const ber_sequence_t RemoteUserFreeArg_sequence[] = { static int dissect_gsm_map_RemoteUserFreeArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RemoteUserFreeArg_sequence, hf_index, ett_gsm_map_RemoteUserFreeArg); + RemoteUserFreeArg_sequence, hf_index, ett_gsm_map_RemoteUserFreeArg); return offset; } + static const ber_sequence_t RemoteUserFreeRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ruf_Outcome_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -9294,7 +9491,7 @@ static const ber_sequence_t RemoteUserFreeRes_sequence[] = { static int dissect_gsm_map_RemoteUserFreeRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RemoteUserFreeRes_sequence, hf_index, ett_gsm_map_RemoteUserFreeRes); + RemoteUserFreeRes_sequence, hf_index, ett_gsm_map_RemoteUserFreeRes); return offset; } @@ -9309,6 +9506,7 @@ dissect_gsm_map_TranslatedB_Number(gboolean implicit_tag _U_, tvbuff_t *tvb, int return offset; } + static const ber_sequence_t SS_Data_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ss_Status_impl }, @@ -9322,7 +9520,7 @@ static const ber_sequence_t SS_Data_sequence[] = { static int dissect_gsm_map_SS_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SS_Data_sequence, hf_index, ett_gsm_map_SS_Data); + SS_Data_sequence, hf_index, ett_gsm_map_SS_Data); return offset; } @@ -9330,6 +9528,7 @@ static int dissect_ss_Data_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t * return dissect_gsm_map_SS_Data(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ss_Data); } + static const ber_sequence_t RegisterSS_Arg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_basicService }, @@ -9342,16 +9541,16 @@ static const ber_sequence_t RegisterSS_Arg_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_RegisterSS_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RegisterSS_Arg_sequence, hf_index, ett_gsm_map_RegisterSS_Arg); + RegisterSS_Arg_sequence, hf_index, ett_gsm_map_RegisterSS_Arg); return offset; } -static const value_string gsm_map_SS_Info_vals[] = { +const value_string gsm_map_SS_Info_vals[] = { { 0, "forwardingInfo" }, { 1, "callBarringInfo" }, { 3, "ss-Data" }, @@ -9365,10 +9564,11 @@ static const ber_choice_t SS_Info_choice[] = { { 0, 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_SS_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SS_Info_choice, hf_index, ett_gsm_map_SS_Info, NULL); + SS_Info_choice, hf_index, ett_gsm_map_SS_Info, + NULL); return offset; } @@ -9399,6 +9599,7 @@ static int dissect_ccbs_FeatureList_impl(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_CCBS_FeatureList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ccbs_FeatureList); } + static const ber_sequence_t GenericServiceInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Status }, { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cliRestrictionOption }, @@ -9414,7 +9615,7 @@ static const ber_sequence_t GenericServiceInfo_sequence[] = { static int dissect_gsm_map_GenericServiceInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - GenericServiceInfo_sequence, hf_index, ett_gsm_map_GenericServiceInfo); + GenericServiceInfo_sequence, hf_index, ett_gsm_map_GenericServiceInfo); return offset; } @@ -9423,7 +9624,7 @@ static int dissect_genericServiceInfo_impl(packet_info *pinfo, proto_tree *tree, } -static const value_string gsm_map_InterrogateSS_Res_vals[] = { +const value_string gsm_map_InterrogateSS_Res_vals[] = { { 0, "ss-Status" }, { 2, "basicServiceGroupList" }, { 3, "forwardingFeatureList" }, @@ -9439,17 +9640,18 @@ static const ber_choice_t InterrogateSS_Res_choice[] = { { 0, 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_InterrogateSS_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - InterrogateSS_Res_choice, hf_index, ett_gsm_map_InterrogateSS_Res, NULL); + InterrogateSS_Res_choice, hf_index, ett_gsm_map_InterrogateSS_Res, + NULL); return offset; } -static int +int dissect_gsm_map_USSD_DataCodingScheme(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -9465,7 +9667,7 @@ static int dissect_dataCodingScheme_impl(packet_info *pinfo, proto_tree *tree, t -static int +int dissect_gsm_map_USSD_String(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -9476,6 +9678,7 @@ static int dissect_ussd_String(packet_info *pinfo, proto_tree *tree, tvbuff_t *t return dissect_gsm_map_USSD_String(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ussd_String); } + static const ber_sequence_t Ussd_Arg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ussd_DataCodingScheme }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ussd_String }, @@ -9484,24 +9687,25 @@ static const ber_sequence_t Ussd_Arg_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_Ussd_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ussd_Arg_sequence, hf_index, ett_gsm_map_Ussd_Arg); + Ussd_Arg_sequence, hf_index, ett_gsm_map_Ussd_Arg); return offset; } + static const ber_sequence_t Ussd_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ussd_DataCodingScheme }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ussd_String }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_Ussd_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ussd_Res_sequence, hf_index, ett_gsm_map_Ussd_Res); + Ussd_Res_sequence, hf_index, ett_gsm_map_Ussd_Res); return offset; } @@ -9568,6 +9772,7 @@ static int dissect_accessType(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv return dissect_gsm_map_AccessType(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_accessType); } + static const ber_sequence_t AuthenticationFailureReportArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_failureCause }, @@ -9583,11 +9788,12 @@ static const ber_sequence_t AuthenticationFailureReportArg_sequence[] = { static int dissect_gsm_map_AuthenticationFailureReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AuthenticationFailureReportArg_sequence, hf_index, ett_gsm_map_AuthenticationFailureReportArg); + AuthenticationFailureReportArg_sequence, hf_index, ett_gsm_map_AuthenticationFailureReportArg); return offset; } + static const ber_sequence_t AuthenticationFailureReportRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -9596,13 +9802,13 @@ static const ber_sequence_t AuthenticationFailureReportRes_sequence[] = { static int dissect_gsm_map_AuthenticationFailureReportRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AuthenticationFailureReportRes_sequence, hf_index, ett_gsm_map_AuthenticationFailureReportRes); + AuthenticationFailureReportRes_sequence, hf_index, ett_gsm_map_AuthenticationFailureReportRes); return offset; } -static int +int dissect_gsm_map_NewPassword(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString, pinfo, tree, tvb, offset, hf_index, @@ -9612,7 +9818,7 @@ dissect_gsm_map_NewPassword(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset } -static const value_string gsm_map_GetPasswordArg_vals[] = { +const value_string gsm_map_GetPasswordArg_vals[] = { { 0, "enterPW" }, { 1, "enterNewPW" }, { 2, "enterNewPW-Again" }, @@ -9620,7 +9826,7 @@ static const value_string gsm_map_GetPasswordArg_vals[] = { }; -static int +int dissect_gsm_map_GetPasswordArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -9629,7 +9835,7 @@ dissect_gsm_map_GetPasswordArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int off } -static int +int dissect_gsm_map_CurrentPassword(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString, pinfo, tree, tvb, offset, hf_index, @@ -9656,6 +9862,7 @@ static int dissect_serviceIndicator(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_ServiceIndicator(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_serviceIndicator); } + static const ber_sequence_t CCBS_Data_sequence[] = { { BER_CLASS_CON, 0, 0, dissect_ccbs_Feature }, { BER_CLASS_CON, 1, 0, dissect_translatedB_Number }, @@ -9668,7 +9875,7 @@ static const ber_sequence_t CCBS_Data_sequence[] = { static int dissect_gsm_map_CCBS_Data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CCBS_Data_sequence, hf_index, ett_gsm_map_CCBS_Data); + CCBS_Data_sequence, hf_index, ett_gsm_map_CCBS_Data); return offset; } @@ -9676,6 +9883,7 @@ static int dissect_ccbs_Data_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_CCBS_Data(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ccbs_Data); } + static const ber_sequence_t RegisterCC_EntryArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_Data_impl }, @@ -9685,48 +9893,51 @@ static const ber_sequence_t RegisterCC_EntryArg_sequence[] = { static int dissect_gsm_map_RegisterCC_EntryArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RegisterCC_EntryArg_sequence, hf_index, ett_gsm_map_RegisterCC_EntryArg); + RegisterCC_EntryArg_sequence, hf_index, ett_gsm_map_RegisterCC_EntryArg); return offset; } + static const ber_sequence_t RegisterCC_EntryRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_Feature_impl }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_RegisterCC_EntryRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RegisterCC_EntryRes_sequence, hf_index, ett_gsm_map_RegisterCC_EntryRes); + RegisterCC_EntryRes_sequence, hf_index, ett_gsm_map_RegisterCC_EntryRes); return offset; } + static const ber_sequence_t EraseCC_EntryArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ccbs_Index_impl }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_EraseCC_EntryArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - EraseCC_EntryArg_sequence, hf_index, ett_gsm_map_EraseCC_EntryArg); + EraseCC_EntryArg_sequence, hf_index, ett_gsm_map_EraseCC_EntryArg); return offset; } + static const ber_sequence_t EraseCC_EntryRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ss_Status_impl }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_EraseCC_EntryRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - EraseCC_EntryRes_sequence, hf_index, ett_gsm_map_EraseCC_EntryRes); + EraseCC_EntryRes_sequence, hf_index, ett_gsm_map_EraseCC_EntryRes); return offset; } @@ -9739,8 +9950,10 @@ dissect_gsm_map_ServiceCentreAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, i tvbuff_t *parameter_tvb; char *digit_str; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - ¶meter_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + ¶meter_tvb); + + if (!parameter_tvb) return offset; @@ -9797,6 +10010,7 @@ static int dissect_sm_RP_SMEA_impl(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_OCTET_STRING_SIZE_1_12(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_sm_RP_SMEA); } + static const ber_sequence_t RoutingInfoForSMArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_msisdn_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_sm_RP_PRI_impl }, @@ -9811,7 +10025,7 @@ static const ber_sequence_t RoutingInfoForSMArg_sequence[] = { static int dissect_gsm_map_RoutingInfoForSMArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RoutingInfoForSMArg_sequence, hf_index, ett_gsm_map_RoutingInfoForSMArg); + RoutingInfoForSMArg_sequence, hf_index, ett_gsm_map_RoutingInfoForSMArg); return offset; } @@ -9832,7 +10046,8 @@ static const ber_choice_t Additional_Number_choice[] = { static int dissect_gsm_map_Additional_Number(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Additional_Number_choice, hf_index, ett_gsm_map_Additional_Number, NULL); + Additional_Number_choice, hf_index, ett_gsm_map_Additional_Number, + NULL); return offset; } @@ -9840,6 +10055,7 @@ static int dissect_additional_Number_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_Additional_Number(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_additional_Number); } + static const ber_sequence_t LocationInfoWithLMSI_sequence[] = { { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_networkNode_Number_impl }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_lmsi }, @@ -9852,7 +10068,7 @@ static const ber_sequence_t LocationInfoWithLMSI_sequence[] = { static int dissect_gsm_map_LocationInfoWithLMSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LocationInfoWithLMSI_sequence, hf_index, ett_gsm_map_LocationInfoWithLMSI); + LocationInfoWithLMSI_sequence, hf_index, ett_gsm_map_LocationInfoWithLMSI); return offset; } @@ -9860,6 +10076,7 @@ static int dissect_locationInfoWithLMSI_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_LocationInfoWithLMSI(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_locationInfoWithLMSI); } + static const ber_sequence_t RoutingInfoForSM_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_locationInfoWithLMSI_impl }, @@ -9870,7 +10087,7 @@ static const ber_sequence_t RoutingInfoForSM_Res_sequence[] = { static int dissect_gsm_map_RoutingInfoForSM_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RoutingInfoForSM_Res_sequence, hf_index, ett_gsm_map_RoutingInfoForSM_Res); + RoutingInfoForSM_Res_sequence, hf_index, ett_gsm_map_RoutingInfoForSM_Res); return offset; } @@ -9895,7 +10112,8 @@ static const ber_choice_t Sm_RP_DA_choice[] = { static int dissect_gsm_map_Sm_RP_DA(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Sm_RP_DA_choice, hf_index, ett_gsm_map_Sm_RP_DA, NULL); + Sm_RP_DA_choice, hf_index, ett_gsm_map_Sm_RP_DA, + NULL); return offset; } @@ -9921,7 +10139,8 @@ static const ber_choice_t Sm_RP_OA_choice[] = { static int dissect_gsm_map_Sm_RP_OA(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Sm_RP_OA_choice, hf_index, ett_gsm_map_Sm_RP_OA, NULL); + Sm_RP_OA_choice, hf_index, ett_gsm_map_Sm_RP_OA, + NULL); return offset; } @@ -9936,8 +10155,10 @@ dissect_gsm_map_Sm_RP_UI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, p tvbuff_t *tpdu_tvb; - offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, - &tpdu_tvb); + offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, + &tpdu_tvb); + + /* * dissect the embedded TPDU message */ @@ -9952,6 +10173,7 @@ static int dissect_sm_RP_UI(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, return dissect_gsm_map_Sm_RP_UI(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_sm_RP_UI); } + static const ber_sequence_t Mo_forwardSM_Arg_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_sm_RP_DA }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_sm_RP_OA }, @@ -9964,11 +10186,12 @@ static const ber_sequence_t Mo_forwardSM_Arg_sequence[] = { static int dissect_gsm_map_Mo_forwardSM_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Mo_forwardSM_Arg_sequence, hf_index, ett_gsm_map_Mo_forwardSM_Arg); + Mo_forwardSM_Arg_sequence, hf_index, ett_gsm_map_Mo_forwardSM_Arg); return offset; } + static const ber_sequence_t Mo_forwardSM_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_sm_RP_UI }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -9978,11 +10201,12 @@ static const ber_sequence_t Mo_forwardSM_Res_sequence[] = { static int dissect_gsm_map_Mo_forwardSM_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Mo_forwardSM_Res_sequence, hf_index, ett_gsm_map_Mo_forwardSM_Res); + Mo_forwardSM_Res_sequence, hf_index, ett_gsm_map_Mo_forwardSM_Res); return offset; } + static const ber_sequence_t Mt_forwardSM_Arg_sequence[] = { { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_sm_RP_DA }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_sm_RP_OA }, @@ -9995,11 +10219,12 @@ static const ber_sequence_t Mt_forwardSM_Arg_sequence[] = { static int dissect_gsm_map_Mt_forwardSM_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Mt_forwardSM_Arg_sequence, hf_index, ett_gsm_map_Mt_forwardSM_Arg); + Mt_forwardSM_Arg_sequence, hf_index, ett_gsm_map_Mt_forwardSM_Arg); return offset; } + static const ber_sequence_t Mt_forwardSM_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_sm_RP_UI }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -10009,12 +10234,13 @@ static const ber_sequence_t Mt_forwardSM_Res_sequence[] = { static int dissect_gsm_map_Mt_forwardSM_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Mt_forwardSM_Res_sequence, hf_index, ett_gsm_map_Mt_forwardSM_Res); + Mt_forwardSM_Res_sequence, hf_index, ett_gsm_map_Mt_forwardSM_Res); return offset; } + static int dissect_gsm_map_StoredMSISDN(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_ISDN_AddressString(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -10070,6 +10296,7 @@ static int dissect_mobileNotReachableReason_impl(packet_info *pinfo, proto_tree return dissect_gsm_map_AbsentSubscriberDiagnosticSM(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_mobileNotReachableReason); } + static const ber_sequence_t ReportSM_DeliveryStatusArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_msisdn }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_serviceCentreAddress }, @@ -10086,11 +10313,12 @@ static const ber_sequence_t ReportSM_DeliveryStatusArg_sequence[] = { static int dissect_gsm_map_ReportSM_DeliveryStatusArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ReportSM_DeliveryStatusArg_sequence, hf_index, ett_gsm_map_ReportSM_DeliveryStatusArg); + ReportSM_DeliveryStatusArg_sequence, hf_index, ett_gsm_map_ReportSM_DeliveryStatusArg); return offset; } + static const ber_sequence_t ReportSM_DeliveryStatusRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_storedMSISDN }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -10100,7 +10328,7 @@ static const ber_sequence_t ReportSM_DeliveryStatusRes_sequence[] = { static int dissect_gsm_map_ReportSM_DeliveryStatusRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ReportSM_DeliveryStatusRes_sequence, hf_index, ett_gsm_map_ReportSM_DeliveryStatusRes); + ReportSM_DeliveryStatusRes_sequence, hf_index, ett_gsm_map_ReportSM_DeliveryStatusRes); return offset; } @@ -10125,6 +10353,7 @@ static int dissect_mw_Status(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb return dissect_gsm_map_T_mw_Status(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_mw_Status); } + static const ber_sequence_t InformServiceCentreArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_storedMSISDN }, { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_mw_Status }, @@ -10135,11 +10364,12 @@ static const ber_sequence_t InformServiceCentreArg_sequence[] = { static int dissect_gsm_map_InformServiceCentreArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - InformServiceCentreArg_sequence, hf_index, ett_gsm_map_InformServiceCentreArg); + InformServiceCentreArg_sequence, hf_index, ett_gsm_map_InformServiceCentreArg); return offset; } + static const ber_sequence_t AlertServiceCentreArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_msisdn }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_serviceCentreAddress }, @@ -10149,7 +10379,7 @@ static const ber_sequence_t AlertServiceCentreArg_sequence[] = { static int dissect_gsm_map_AlertServiceCentreArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AlertServiceCentreArg_sequence, hf_index, ett_gsm_map_AlertServiceCentreArg); + AlertServiceCentreArg_sequence, hf_index, ett_gsm_map_AlertServiceCentreArg); return offset; } @@ -10173,6 +10403,7 @@ static int dissect_alertReason(packet_info *pinfo, proto_tree *tree, tvbuff_t *t return dissect_gsm_map_T_alertReason(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_alertReason); } + static const ber_sequence_t ReadyForSM_Arg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_alertReason }, @@ -10184,11 +10415,12 @@ static const ber_sequence_t ReadyForSM_Arg_sequence[] = { static int dissect_gsm_map_ReadyForSM_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ReadyForSM_Arg_sequence, hf_index, ett_gsm_map_ReadyForSM_Arg); + ReadyForSM_Arg_sequence, hf_index, ett_gsm_map_ReadyForSM_Arg); return offset; } + static const ber_sequence_t ReadyForSM_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -10197,7 +10429,7 @@ static const ber_sequence_t ReadyForSM_Res_sequence[] = { static int dissect_gsm_map_ReadyForSM_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ReadyForSM_Res_sequence, hf_index, ett_gsm_map_ReadyForSM_Res); + ReadyForSM_Res_sequence, hf_index, ett_gsm_map_ReadyForSM_Res); return offset; } @@ -10221,6 +10453,7 @@ static int dissect_requestedDomain_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_T_requestedDomain(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_requestedDomain); } + static const ber_sequence_t RequestedInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_locationInformation_flg_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_subscriberState_flg_impl }, @@ -10236,7 +10469,7 @@ static const ber_sequence_t RequestedInfo_sequence[] = { static int dissect_gsm_map_RequestedInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RequestedInfo_sequence, hf_index, ett_gsm_map_RequestedInfo); + RequestedInfo_sequence, hf_index, ett_gsm_map_RequestedInfo); return offset; } @@ -10244,6 +10477,7 @@ static int dissect_requestedInfo_impl(packet_info *pinfo, proto_tree *tree, tvbu return dissect_gsm_map_RequestedInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_requestedInfo); } + static const ber_sequence_t ProvideSubscriberInfoArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lmsi_impl }, @@ -10255,11 +10489,12 @@ static const ber_sequence_t ProvideSubscriberInfoArg_sequence[] = { static int dissect_gsm_map_ProvideSubscriberInfoArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideSubscriberInfoArg_sequence, hf_index, ett_gsm_map_ProvideSubscriberInfoArg); + ProvideSubscriberInfoArg_sequence, hf_index, ett_gsm_map_ProvideSubscriberInfoArg); return offset; } + static const ber_sequence_t ProvideSubscriberInfoRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_subscriberInfo }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -10269,11 +10504,12 @@ static const ber_sequence_t ProvideSubscriberInfoRes_sequence[] = { static int dissect_gsm_map_ProvideSubscriberInfoRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideSubscriberInfoRes_sequence, hf_index, ett_gsm_map_ProvideSubscriberInfoRes); + ProvideSubscriberInfoRes_sequence, hf_index, ett_gsm_map_ProvideSubscriberInfoRes); return offset; } + static const ber_sequence_t AnyTimeInterrogationArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_subscriberIdentity }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_requestedInfo_impl }, @@ -10285,11 +10521,12 @@ static const ber_sequence_t AnyTimeInterrogationArg_sequence[] = { static int dissect_gsm_map_AnyTimeInterrogationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AnyTimeInterrogationArg_sequence, hf_index, ett_gsm_map_AnyTimeInterrogationArg); + AnyTimeInterrogationArg_sequence, hf_index, ett_gsm_map_AnyTimeInterrogationArg); return offset; } + static const ber_sequence_t AnyTimeInterrogationRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_subscriberInfo }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -10299,11 +10536,12 @@ static const ber_sequence_t AnyTimeInterrogationRes_sequence[] = { static int dissect_gsm_map_AnyTimeInterrogationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AnyTimeInterrogationRes_sequence, hf_index, ett_gsm_map_AnyTimeInterrogationRes); + AnyTimeInterrogationRes_sequence, hf_index, ett_gsm_map_AnyTimeInterrogationRes); return offset; } + static const ber_sequence_t SS_ForBS_Code_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ss_Code }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_basicService }, @@ -10311,10 +10549,10 @@ static const ber_sequence_t SS_ForBS_Code_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_SS_ForBS_Code(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SS_ForBS_Code_sequence, hf_index, ett_gsm_map_SS_ForBS_Code); + SS_ForBS_Code_sequence, hf_index, ett_gsm_map_SS_ForBS_Code); return offset; } @@ -10373,6 +10611,7 @@ static int dissect_additionalRequestedCAMEL_SubscriptionInfo(packet_info *pinfo, return dissect_gsm_map_AdditionalRequestedCAMEL_SubscriptionInfo(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_additionalRequestedCAMEL_SubscriptionInfo); } + static const ber_sequence_t RequestedSubscriptionInfo_sequence[] = { { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_requestedSS_Info_impl }, { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_odb_impl }, @@ -10387,7 +10626,7 @@ static const ber_sequence_t RequestedSubscriptionInfo_sequence[] = { static int dissect_gsm_map_RequestedSubscriptionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RequestedSubscriptionInfo_sequence, hf_index, ett_gsm_map_RequestedSubscriptionInfo); + RequestedSubscriptionInfo_sequence, hf_index, ett_gsm_map_RequestedSubscriptionInfo); return offset; } @@ -10395,6 +10634,7 @@ static int dissect_requestedSubscriptionInfo_impl(packet_info *pinfo, proto_tree return dissect_gsm_map_RequestedSubscriptionInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_requestedSubscriptionInfo); } + static const ber_sequence_t AnyTimeSubscriptionInterrogationArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_subscriberIdentity_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_requestedSubscriptionInfo_impl }, @@ -10407,11 +10647,12 @@ static const ber_sequence_t AnyTimeSubscriptionInterrogationArg_sequence[] = { static int dissect_gsm_map_AnyTimeSubscriptionInterrogationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AnyTimeSubscriptionInterrogationArg_sequence, hf_index, ett_gsm_map_AnyTimeSubscriptionInterrogationArg); + AnyTimeSubscriptionInterrogationArg_sequence, hf_index, ett_gsm_map_AnyTimeSubscriptionInterrogationArg); return offset; } + static const ber_sequence_t CallForwardingData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ext_forwardingFeatureList }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_notificationToCSE }, @@ -10422,7 +10663,7 @@ static const ber_sequence_t CallForwardingData_sequence[] = { static int dissect_gsm_map_CallForwardingData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CallForwardingData_sequence, hf_index, ett_gsm_map_CallForwardingData); + CallForwardingData_sequence, hf_index, ett_gsm_map_CallForwardingData); return offset; } @@ -10462,6 +10703,7 @@ static int dissect_wrongPasswordAttemptsCounter_impl(packet_info *pinfo, proto_t return dissect_gsm_map_WrongPasswordAttemptsCounter(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_wrongPasswordAttemptsCounter); } + static const ber_sequence_t CallBarringData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ext_callBarringFeatureList }, { BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_password }, @@ -10474,7 +10716,7 @@ static const ber_sequence_t CallBarringData_sequence[] = { static int dissect_gsm_map_CallBarringData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CallBarringData_sequence, hf_index, ett_gsm_map_CallBarringData); + CallBarringData_sequence, hf_index, ett_gsm_map_CallBarringData); return offset; } @@ -10482,6 +10724,7 @@ static int dissect_callBarringData_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_CallBarringData(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callBarringData); } + static const ber_sequence_t ODB_Info_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_odb_Data }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_notificationToCSE }, @@ -10492,7 +10735,7 @@ static const ber_sequence_t ODB_Info_sequence[] = { static int dissect_gsm_map_ODB_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ODB_Info_sequence, hf_index, ett_gsm_map_ODB_Info); + ODB_Info_sequence, hf_index, ett_gsm_map_ODB_Info); return offset; } @@ -10500,6 +10743,7 @@ static int dissect_odb_Info_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_ODB_Info(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_odb_Info); } + static const ber_sequence_t CAMEL_SubscriptionInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_o_CSI_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_o_BcsmCamelTDP_CriteriaList_impl }, @@ -10530,7 +10774,7 @@ static const ber_sequence_t CAMEL_SubscriptionInfo_sequence[] = { static int dissect_gsm_map_CAMEL_SubscriptionInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - CAMEL_SubscriptionInfo_sequence, hf_index, ett_gsm_map_CAMEL_SubscriptionInfo); + CAMEL_SubscriptionInfo_sequence, hf_index, ett_gsm_map_CAMEL_SubscriptionInfo); return offset; } @@ -10538,6 +10782,7 @@ static int dissect_camel_SubscriptionInfo_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_CAMEL_SubscriptionInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_camel_SubscriptionInfo); } + static const ber_sequence_t AnyTimeSubscriptionInterrogationRes_sequence[] = { { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callForwardingData_impl }, { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callBarringData_impl }, @@ -10554,7 +10799,7 @@ static const ber_sequence_t AnyTimeSubscriptionInterrogationRes_sequence[] = { static int dissect_gsm_map_AnyTimeSubscriptionInterrogationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AnyTimeSubscriptionInterrogationRes_sequence, hf_index, ett_gsm_map_AnyTimeSubscriptionInterrogationRes); + AnyTimeSubscriptionInterrogationRes_sequence, hf_index, ett_gsm_map_AnyTimeSubscriptionInterrogationRes); return offset; } @@ -10616,6 +10861,7 @@ static int dissect_modifyCSI_State_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_ModificationInstruction(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_modifyCSI_State); } + static const ber_sequence_t ModificationRequestFor_CF_Info_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_ext_basicService_impl }, @@ -10631,7 +10877,7 @@ static const ber_sequence_t ModificationRequestFor_CF_Info_sequence[] = { static int dissect_gsm_map_ModificationRequestFor_CF_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ModificationRequestFor_CF_Info_sequence, hf_index, ett_gsm_map_ModificationRequestFor_CF_Info); + ModificationRequestFor_CF_Info_sequence, hf_index, ett_gsm_map_ModificationRequestFor_CF_Info); return offset; } @@ -10639,6 +10885,7 @@ static int dissect_modificationRequestFor_CF_Info_impl(packet_info *pinfo, proto return dissect_gsm_map_ModificationRequestFor_CF_Info(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_modificationRequestFor_CF_Info); } + static const ber_sequence_t ModificationRequestFor_CB_Info_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_ext_basicService_impl }, @@ -10653,7 +10900,7 @@ static const ber_sequence_t ModificationRequestFor_CB_Info_sequence[] = { static int dissect_gsm_map_ModificationRequestFor_CB_Info(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ModificationRequestFor_CB_Info_sequence, hf_index, ett_gsm_map_ModificationRequestFor_CB_Info); + ModificationRequestFor_CB_Info_sequence, hf_index, ett_gsm_map_ModificationRequestFor_CB_Info); return offset; } @@ -10661,6 +10908,7 @@ static int dissect_modificationRequestFor_CB_Info_impl(packet_info *pinfo, proto return dissect_gsm_map_ModificationRequestFor_CB_Info(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_modificationRequestFor_CB_Info); } + static const ber_sequence_t ModificationRequestFor_CSI_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_requestedCamel_SubscriptionInfo_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_modifyNotificationToCSE_impl }, @@ -10673,7 +10921,7 @@ static const ber_sequence_t ModificationRequestFor_CSI_sequence[] = { static int dissect_gsm_map_ModificationRequestFor_CSI(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ModificationRequestFor_CSI_sequence, hf_index, ett_gsm_map_ModificationRequestFor_CSI); + ModificationRequestFor_CSI_sequence, hf_index, ett_gsm_map_ModificationRequestFor_CSI); return offset; } @@ -10681,6 +10929,7 @@ static int dissect_modificationRequestFor_CSI_impl(packet_info *pinfo, proto_tre return dissect_gsm_map_ModificationRequestFor_CSI(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_modificationRequestFor_CSI); } + static const ber_sequence_t ModificationRequestFor_ODB_data_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_odb_data_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_modifyNotificationToCSE_impl }, @@ -10691,7 +10940,7 @@ static const ber_sequence_t ModificationRequestFor_ODB_data_sequence[] = { static int dissect_gsm_map_ModificationRequestFor_ODB_data(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ModificationRequestFor_ODB_data_sequence, hf_index, ett_gsm_map_ModificationRequestFor_ODB_data); + ModificationRequestFor_ODB_data_sequence, hf_index, ett_gsm_map_ModificationRequestFor_ODB_data); return offset; } @@ -10699,6 +10948,7 @@ static int dissect_modificationRequestFor_ODB_data(packet_info *pinfo, proto_tre return dissect_gsm_map_ModificationRequestFor_ODB_data(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_modificationRequestFor_ODB_data); } + static const ber_sequence_t AnyTimeModificationArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_subscriberIdentity_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_gsmSCF_Address_impl }, @@ -10714,11 +10964,12 @@ static const ber_sequence_t AnyTimeModificationArg_sequence[] = { static int dissect_gsm_map_AnyTimeModificationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AnyTimeModificationArg_sequence, hf_index, ett_gsm_map_AnyTimeModificationArg); + AnyTimeModificationArg_sequence, hf_index, ett_gsm_map_AnyTimeModificationArg); return offset; } + static const ber_sequence_t Ext_ForwardingInfoFor_CSE_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ext_forwardingFeatureList_impl }, @@ -10730,7 +10981,7 @@ static const ber_sequence_t Ext_ForwardingInfoFor_CSE_sequence[] = { static int dissect_gsm_map_Ext_ForwardingInfoFor_CSE(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_ForwardingInfoFor_CSE_sequence, hf_index, ett_gsm_map_Ext_ForwardingInfoFor_CSE); + Ext_ForwardingInfoFor_CSE_sequence, hf_index, ett_gsm_map_Ext_ForwardingInfoFor_CSE); return offset; } @@ -10738,6 +10989,7 @@ static int dissect_forwardingInfoFor_CSE_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_Ext_ForwardingInfoFor_CSE(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_forwardingInfoFor_CSE); } + static const ber_sequence_t Ext_CallBarringInfoFor_CSE_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ext_callBarringFeatureList_impl }, @@ -10751,7 +11003,7 @@ static const ber_sequence_t Ext_CallBarringInfoFor_CSE_sequence[] = { static int dissect_gsm_map_Ext_CallBarringInfoFor_CSE(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ext_CallBarringInfoFor_CSE_sequence, hf_index, ett_gsm_map_Ext_CallBarringInfoFor_CSE); + Ext_CallBarringInfoFor_CSE_sequence, hf_index, ett_gsm_map_Ext_CallBarringInfoFor_CSE); return offset; } @@ -10775,7 +11027,8 @@ static const ber_choice_t Ext_SS_InfoFor_CSE_choice[] = { static int dissect_gsm_map_Ext_SS_InfoFor_CSE(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - Ext_SS_InfoFor_CSE_choice, hf_index, ett_gsm_map_Ext_SS_InfoFor_CSE, NULL); + Ext_SS_InfoFor_CSE_choice, hf_index, ett_gsm_map_Ext_SS_InfoFor_CSE, + NULL); return offset; } @@ -10783,6 +11036,7 @@ static int dissect_ss_InfoFor_CSE_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_Ext_SS_InfoFor_CSE(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ss_InfoFor_CSE); } + static const ber_sequence_t AnyTimeModificationRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_ss_InfoFor_CSE_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_camel_SubscriptionInfo_impl }, @@ -10794,11 +11048,12 @@ static const ber_sequence_t AnyTimeModificationRes_sequence[] = { static int dissect_gsm_map_AnyTimeModificationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AnyTimeModificationRes_sequence, hf_index, ett_gsm_map_AnyTimeModificationRes); + AnyTimeModificationRes_sequence, hf_index, ett_gsm_map_AnyTimeModificationRes); return offset; } + static const ber_sequence_t NoteSubscriberDataModifiedArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_msisdn }, @@ -10814,11 +11069,12 @@ static const ber_sequence_t NoteSubscriberDataModifiedArg_sequence[] = { static int dissect_gsm_map_NoteSubscriberDataModifiedArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoteSubscriberDataModifiedArg_sequence, hf_index, ett_gsm_map_NoteSubscriberDataModifiedArg); + NoteSubscriberDataModifiedArg_sequence, hf_index, ett_gsm_map_NoteSubscriberDataModifiedArg); return offset; } + static const ber_sequence_t NoteSubscriberDataModifiedRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -10827,11 +11083,12 @@ static const ber_sequence_t NoteSubscriberDataModifiedRes_sequence[] = { static int dissect_gsm_map_NoteSubscriberDataModifiedRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoteSubscriberDataModifiedRes_sequence, hf_index, ett_gsm_map_NoteSubscriberDataModifiedRes); + NoteSubscriberDataModifiedRes_sequence, hf_index, ett_gsm_map_NoteSubscriberDataModifiedRes); return offset; } + static const ber_sequence_t NoteMM_EventArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_serviceKey }, { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_eventMet_impl }, @@ -10848,11 +11105,12 @@ static const ber_sequence_t NoteMM_EventArg_sequence[] = { static int dissect_gsm_map_NoteMM_EventArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoteMM_EventArg_sequence, hf_index, ett_gsm_map_NoteMM_EventArg); + NoteMM_EventArg_sequence, hf_index, ett_gsm_map_NoteMM_EventArg); return offset; } + static const ber_sequence_t NoteMM_EventRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -10861,7 +11119,7 @@ static const ber_sequence_t NoteMM_EventRes_sequence[] = { static int dissect_gsm_map_NoteMM_EventRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoteMM_EventRes_sequence, hf_index, ett_gsm_map_NoteMM_EventRes); + NoteMM_EventRes_sequence, hf_index, ett_gsm_map_NoteMM_EventRes); return offset; } @@ -10911,6 +11169,7 @@ static int dissect_ss_EventSpecification_impl(packet_info *pinfo, proto_tree *tr return dissect_gsm_map_T_ss_EventSpecification(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_ss_EventSpecification); } + static const ber_sequence_t Ss_InvocationNotificationArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_msisdn_impl }, @@ -10923,11 +11182,12 @@ static const ber_sequence_t Ss_InvocationNotificationArg_sequence[] = { static int dissect_gsm_map_Ss_InvocationNotificationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ss_InvocationNotificationArg_sequence, hf_index, ett_gsm_map_Ss_InvocationNotificationArg); + Ss_InvocationNotificationArg_sequence, hf_index, ett_gsm_map_Ss_InvocationNotificationArg); return offset; } + static const ber_sequence_t Ss_InvocationNotificationRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -10936,7 +11196,7 @@ static const ber_sequence_t Ss_InvocationNotificationRes_sequence[] = { static int dissect_gsm_map_Ss_InvocationNotificationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ss_InvocationNotificationRes_sequence, hf_index, ett_gsm_map_Ss_InvocationNotificationRes); + Ss_InvocationNotificationRes_sequence, hf_index, ett_gsm_map_Ss_InvocationNotificationRes); return offset; } @@ -11006,6 +11266,7 @@ static int dissect_vstk_rand_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_VSTK_RAND(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_vstk_rand); } + static const ber_sequence_t PrepareGroupCallArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ext_teleservice }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_asciCallReference }, @@ -11024,11 +11285,12 @@ static const ber_sequence_t PrepareGroupCallArg_sequence[] = { static int dissect_gsm_map_PrepareGroupCallArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareGroupCallArg_sequence, hf_index, ett_gsm_map_PrepareGroupCallArg); + PrepareGroupCallArg_sequence, hf_index, ett_gsm_map_PrepareGroupCallArg); return offset; } + static const ber_sequence_t PrepareGroupCallRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_groupCallNumber }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -11038,11 +11300,12 @@ static const ber_sequence_t PrepareGroupCallRes_sequence[] = { static int dissect_gsm_map_PrepareGroupCallRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PrepareGroupCallRes_sequence, hf_index, ett_gsm_map_PrepareGroupCallRes); + PrepareGroupCallRes_sequence, hf_index, ett_gsm_map_PrepareGroupCallRes); return offset; } + static const ber_sequence_t SendGroupCallEndSignalArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -11052,11 +11315,12 @@ static const ber_sequence_t SendGroupCallEndSignalArg_sequence[] = { static int dissect_gsm_map_SendGroupCallEndSignalArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendGroupCallEndSignalArg_sequence, hf_index, ett_gsm_map_SendGroupCallEndSignalArg); + SendGroupCallEndSignalArg_sequence, hf_index, ett_gsm_map_SendGroupCallEndSignalArg); return offset; } + static const ber_sequence_t SendGroupCallEndSignalRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -11065,11 +11329,12 @@ static const ber_sequence_t SendGroupCallEndSignalRes_sequence[] = { static int dissect_gsm_map_SendGroupCallEndSignalRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendGroupCallEndSignalRes_sequence, hf_index, ett_gsm_map_SendGroupCallEndSignalRes); + SendGroupCallEndSignalRes_sequence, hf_index, ett_gsm_map_SendGroupCallEndSignalRes); return offset; } + static const ber_sequence_t ProcessGroupCallSignallingArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uplinkRequest_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uplinkReleaseIndication_impl }, @@ -11081,11 +11346,12 @@ static const ber_sequence_t ProcessGroupCallSignallingArg_sequence[] = { static int dissect_gsm_map_ProcessGroupCallSignallingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProcessGroupCallSignallingArg_sequence, hf_index, ett_gsm_map_ProcessGroupCallSignallingArg); + ProcessGroupCallSignallingArg_sequence, hf_index, ett_gsm_map_ProcessGroupCallSignallingArg); return offset; } + static const ber_sequence_t ForwardGroupCallSignallingArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_uplinkRequestAck_impl }, @@ -11100,11 +11366,12 @@ static const ber_sequence_t ForwardGroupCallSignallingArg_sequence[] = { static int dissect_gsm_map_ForwardGroupCallSignallingArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardGroupCallSignallingArg_sequence, hf_index, ett_gsm_map_ForwardGroupCallSignallingArg); + ForwardGroupCallSignallingArg_sequence, hf_index, ett_gsm_map_ForwardGroupCallSignallingArg); return offset; } + static const ber_sequence_t SGSN_Capability_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_solsaSupportIndicator }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -11120,7 +11387,7 @@ static const ber_sequence_t SGSN_Capability_sequence[] = { static int dissect_gsm_map_SGSN_Capability(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SGSN_Capability_sequence, hf_index, ett_gsm_map_SGSN_Capability); + SGSN_Capability_sequence, hf_index, ett_gsm_map_SGSN_Capability); return offset; } @@ -11128,6 +11395,7 @@ static int dissect_sgsn_Capability_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_SGSN_Capability(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_sgsn_Capability); } + static const ber_sequence_t UpdateGprsLocationArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_imsi }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_sgsn_Number }, @@ -11144,11 +11412,12 @@ static const ber_sequence_t UpdateGprsLocationArg_sequence[] = { static int dissect_gsm_map_UpdateGprsLocationArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UpdateGprsLocationArg_sequence, hf_index, ett_gsm_map_UpdateGprsLocationArg); + UpdateGprsLocationArg_sequence, hf_index, ett_gsm_map_UpdateGprsLocationArg); return offset; } + static const ber_sequence_t UpdateGprsLocationRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_hlr_Number }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -11159,11 +11428,12 @@ static const ber_sequence_t UpdateGprsLocationRes_sequence[] = { static int dissect_gsm_map_UpdateGprsLocationRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UpdateGprsLocationRes_sequence, hf_index, ett_gsm_map_UpdateGprsLocationRes); + UpdateGprsLocationRes_sequence, hf_index, ett_gsm_map_UpdateGprsLocationRes); return offset; } + static const ber_sequence_t SendRoutingInfoForGprsArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ggsn_Address_impl }, @@ -11175,11 +11445,12 @@ static const ber_sequence_t SendRoutingInfoForGprsArg_sequence[] = { static int dissect_gsm_map_SendRoutingInfoForGprsArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendRoutingInfoForGprsArg_sequence, hf_index, ett_gsm_map_SendRoutingInfoForGprsArg); + SendRoutingInfoForGprsArg_sequence, hf_index, ett_gsm_map_SendRoutingInfoForGprsArg); return offset; } + static const ber_sequence_t SendRoutingInfoForGprsRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_sgsn_Address_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ggsn_Address_impl }, @@ -11191,11 +11462,12 @@ static const ber_sequence_t SendRoutingInfoForGprsRes_sequence[] = { static int dissect_gsm_map_SendRoutingInfoForGprsRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SendRoutingInfoForGprsRes_sequence, hf_index, ett_gsm_map_SendRoutingInfoForGprsRes); + SendRoutingInfoForGprsRes_sequence, hf_index, ett_gsm_map_SendRoutingInfoForGprsRes); return offset; } + static const ber_sequence_t FailureReportArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ggsn_Number_impl }, @@ -11207,11 +11479,12 @@ static const ber_sequence_t FailureReportArg_sequence[] = { static int dissect_gsm_map_FailureReportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - FailureReportArg_sequence, hf_index, ett_gsm_map_FailureReportArg); + FailureReportArg_sequence, hf_index, ett_gsm_map_FailureReportArg); return offset; } + static const ber_sequence_t FailureReportRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ggsn_Address_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -11221,11 +11494,12 @@ static const ber_sequence_t FailureReportRes_sequence[] = { static int dissect_gsm_map_FailureReportRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - FailureReportRes_sequence, hf_index, ett_gsm_map_FailureReportRes); + FailureReportRes_sequence, hf_index, ett_gsm_map_FailureReportRes); return offset; } + static const ber_sequence_t NoteMsPresentForGprsArg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_imsi_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_sgsn_Address_impl }, @@ -11237,11 +11511,12 @@ static const ber_sequence_t NoteMsPresentForGprsArg_sequence[] = { static int dissect_gsm_map_NoteMsPresentForGprsArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoteMsPresentForGprsArg_sequence, hf_index, ett_gsm_map_NoteMsPresentForGprsArg); + NoteMsPresentForGprsArg_sequence, hf_index, ett_gsm_map_NoteMsPresentForGprsArg); return offset; } + static const ber_sequence_t NoteMsPresentForGprsRes_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, { 0, 0, 0, NULL } @@ -11250,7 +11525,7 @@ static const ber_sequence_t NoteMsPresentForGprsRes_sequence[] = { static int dissect_gsm_map_NoteMsPresentForGprsRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoteMsPresentForGprsRes_sequence, hf_index, ett_gsm_map_NoteMsPresentForGprsRes); + NoteMsPresentForGprsRes_sequence, hf_index, ett_gsm_map_NoteMsPresentForGprsRes); return offset; } @@ -11285,7 +11560,7 @@ static const asn_namedbit DeferredLocationEventType_bits[] = { { 0, NULL, 0, 0, NULL, NULL } }; -static int +int dissect_gsm_map_DeferredLocationEventType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset, DeferredLocationEventType_bits, hf_index, ett_gsm_map_DeferredLocationEventType, @@ -11297,16 +11572,17 @@ static int dissect_deferredLocationEventType(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_DeferredLocationEventType(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_deferredLocationEventType); } + static const ber_sequence_t LocationType_sequence[] = { { BER_CLASS_CON, 0, 0, dissect_locationEstimateType }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_deferredLocationEventType }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_LocationType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LocationType_sequence, hf_index, ett_gsm_map_LocationType); + LocationType_sequence, hf_index, ett_gsm_map_LocationType); return offset; } @@ -11336,6 +11612,7 @@ static int dissect_lcsClientType_impl(packet_info *pinfo, proto_tree *tree, tvbu } + static int dissect_gsm_map_NameString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_USSD_String(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -11368,6 +11645,7 @@ static int dissect_lcs_FormatIndicator_impl(packet_info *pinfo, proto_tree *tree return dissect_gsm_map_LCS_FormatIndicator(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lcs_FormatIndicator); } + static const ber_sequence_t LCSClientName_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dataCodingScheme_impl }, { BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_nameString_impl }, @@ -11375,10 +11653,10 @@ static const ber_sequence_t LCSClientName_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_LCSClientName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCSClientName_sequence, hf_index, ett_gsm_map_LCSClientName); + LCSClientName_sequence, hf_index, ett_gsm_map_LCSClientName); return offset; } @@ -11387,6 +11665,7 @@ static int dissect_lcsClientName_impl(packet_info *pinfo, proto_tree *tree, tvbu } + static int dissect_gsm_map_RequestorIDString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_USSD_String(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -11397,6 +11676,7 @@ static int dissect_requestorIDString_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_RequestorIDString(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_requestorIDString); } + static const ber_sequence_t LCSRequestorID_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dataCodingScheme_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_requestorIDString_impl }, @@ -11404,10 +11684,10 @@ static const ber_sequence_t LCSRequestorID_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_LCSRequestorID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCSRequestorID_sequence, hf_index, ett_gsm_map_LCSRequestorID); + LCSRequestorID_sequence, hf_index, ett_gsm_map_LCSRequestorID); return offset; } @@ -11415,6 +11695,7 @@ static int dissect_lcsRequestorID_impl(packet_info *pinfo, proto_tree *tree, tvb return dissect_gsm_map_LCSRequestorID(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lcsRequestorID); } + static const ber_sequence_t LCS_ClientID_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_lcsClientType_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lcsClientExternalID_impl }, @@ -11429,7 +11710,7 @@ static const ber_sequence_t LCS_ClientID_sequence[] = { static int dissect_gsm_map_LCS_ClientID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCS_ClientID_sequence, hf_index, ett_gsm_map_LCS_ClientID); + LCS_ClientID_sequence, hf_index, ett_gsm_map_LCS_ClientID); return offset; } @@ -11498,6 +11779,7 @@ static int dissect_responseTimeCategory(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_ResponseTimeCategory(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_responseTimeCategory); } + static const ber_sequence_t ResponseTime_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_responseTimeCategory }, { 0, 0, 0, NULL } @@ -11506,7 +11788,7 @@ static const ber_sequence_t ResponseTime_sequence[] = { static int dissect_gsm_map_ResponseTime(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ResponseTime_sequence, hf_index, ett_gsm_map_ResponseTime); + ResponseTime_sequence, hf_index, ett_gsm_map_ResponseTime); return offset; } @@ -11514,6 +11796,7 @@ static int dissect_responseTime_impl(packet_info *pinfo, proto_tree *tree, tvbuf return dissect_gsm_map_ResponseTime(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_responseTime); } + static const ber_sequence_t LCS_QoS_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_horizontal_accuracy_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_verticalCoordinateRequest_impl }, @@ -11523,10 +11806,10 @@ static const ber_sequence_t LCS_QoS_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_LCS_QoS(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCS_QoS_sequence, hf_index, ett_gsm_map_LCS_QoS); + LCS_QoS_sequence, hf_index, ett_gsm_map_LCS_QoS); return offset; } @@ -11545,7 +11828,7 @@ static const asn_namedbit SupportedGADShapes_bits[] = { { 0, NULL, 0, 0, NULL, NULL } }; -static int +int dissect_gsm_map_SupportedGADShapes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset, SupportedGADShapes_bits, hf_index, ett_gsm_map_SupportedGADShapes, @@ -11559,7 +11842,7 @@ static int dissect_supportedGADShapes_impl(packet_info *pinfo, proto_tree *tree, -static int +int dissect_gsm_map_LCS_ReferenceNumber(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -11571,6 +11854,7 @@ static int dissect_lcs_ReferenceNumber_impl(packet_info *pinfo, proto_tree *tree } + static int dissect_gsm_map_LCSCodewordString(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_gsm_map_USSD_String(implicit_tag, tvb, offset, pinfo, tree, hf_index); @@ -11581,16 +11865,17 @@ static int dissect_lcsCodewordString_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_LCSCodewordString(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lcsCodewordString); } + static const ber_sequence_t LCSCodeword_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_dataCodingScheme_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_lcsCodewordString_impl }, { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_LCSCodeword(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCSCodeword_sequence, hf_index, ett_gsm_map_LCSCodeword); + LCSCodeword_sequence, hf_index, ett_gsm_map_LCSCodeword); return offset; } @@ -11623,6 +11908,7 @@ static int dissect_callSessionRelated_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_PrivacyCheckRelatedAction(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_callSessionRelated); } + static const ber_sequence_t LCS_PrivacyCheck_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_callSessionUnrelated_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_callSessionRelated_impl }, @@ -11632,7 +11918,7 @@ static const ber_sequence_t LCS_PrivacyCheck_sequence[] = { static int dissect_gsm_map_LCS_PrivacyCheck(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCS_PrivacyCheck_sequence, hf_index, ett_gsm_map_LCS_PrivacyCheck); + LCS_PrivacyCheck_sequence, hf_index, ett_gsm_map_LCS_PrivacyCheck); return offset; } @@ -11675,6 +11961,7 @@ static int dissect_areaIdentification_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_AreaIdentification(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_areaIdentification); } + static const ber_sequence_t Area_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_areaType_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_areaIdentification_impl }, @@ -11684,7 +11971,7 @@ static const ber_sequence_t Area_sequence[] = { static int dissect_gsm_map_Area(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Area_sequence, hf_index, ett_gsm_map_Area); + Area_sequence, hf_index, ett_gsm_map_Area); return offset; } @@ -11708,6 +11995,7 @@ static int dissect_areaList_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_AreaList(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_areaList); } + static const ber_sequence_t AreaDefinition_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_areaList_impl }, { 0, 0, 0, NULL } @@ -11716,7 +12004,7 @@ static const ber_sequence_t AreaDefinition_sequence[] = { static int dissect_gsm_map_AreaDefinition(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AreaDefinition_sequence, hf_index, ett_gsm_map_AreaDefinition); + AreaDefinition_sequence, hf_index, ett_gsm_map_AreaDefinition); return offset; } @@ -11756,6 +12044,7 @@ static int dissect_intervalTime_impl(packet_info *pinfo, proto_tree *tree, tvbuf return dissect_gsm_map_IntervalTime(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_intervalTime); } + static const ber_sequence_t AreaEventInfo_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_areaDefinition_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_occurrenceInfo_impl }, @@ -11763,10 +12052,10 @@ static const ber_sequence_t AreaEventInfo_sequence[] = { { 0, 0, 0, NULL } }; -static int +int dissect_gsm_map_AreaEventInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AreaEventInfo_sequence, hf_index, ett_gsm_map_AreaEventInfo); + AreaEventInfo_sequence, hf_index, ett_gsm_map_AreaEventInfo); return offset; } @@ -11774,6 +12063,7 @@ static int dissect_areaEventInfo_impl(packet_info *pinfo, proto_tree *tree, tvbu return dissect_gsm_map_AreaEventInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_areaEventInfo); } + static const ber_sequence_t ProvideSubscriberLocation_Arg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_locationType }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_mlc_Number }, @@ -11799,14 +12089,14 @@ static const ber_sequence_t ProvideSubscriberLocation_Arg_sequence[] = { static int dissect_gsm_map_ProvideSubscriberLocation_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideSubscriberLocation_Arg_sequence, hf_index, ett_gsm_map_ProvideSubscriberLocation_Arg); + ProvideSubscriberLocation_Arg_sequence, hf_index, ett_gsm_map_ProvideSubscriberLocation_Arg); return offset; } -static int +int dissect_gsm_map_Ext_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -11822,7 +12112,7 @@ static int dissect_locationEstimate_impl(packet_info *pinfo, proto_tree *tree, t -static int +int dissect_gsm_map_Add_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL); @@ -11859,6 +12149,7 @@ static int dissect_utranPositioningData_impl(packet_info *pinfo, proto_tree *tre return dissect_gsm_map_UtranPositioningDataInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_utranPositioningData); } + static const ber_sequence_t ProvideSubscriberLocation_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_locationEstimate }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ageOfLocationEstimate_impl }, @@ -11875,7 +12166,7 @@ static const ber_sequence_t ProvideSubscriberLocation_Res_sequence[] = { static int dissect_gsm_map_ProvideSubscriberLocation_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ProvideSubscriberLocation_Res_sequence, hf_index, ett_gsm_map_ProvideSubscriberLocation_Res); + ProvideSubscriberLocation_Res_sequence, hf_index, ett_gsm_map_ProvideSubscriberLocation_Res); return offset; } @@ -11896,11 +12187,13 @@ static const ber_choice_t TargetMS_choice[] = { static int dissect_gsm_map_TargetMS(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - TargetMS_choice, hf_index, ett_gsm_map_TargetMS, NULL); + TargetMS_choice, hf_index, ett_gsm_map_TargetMS, + NULL); return offset; } + static const ber_sequence_t RoutingInfoForLCS_Arg_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_mlcNumber_impl }, { BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_targetMS_impl }, @@ -11911,11 +12204,12 @@ static const ber_sequence_t RoutingInfoForLCS_Arg_sequence[] = { static int dissect_gsm_map_RoutingInfoForLCS_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RoutingInfoForLCS_Arg_sequence, hf_index, ett_gsm_map_RoutingInfoForLCS_Arg); + RoutingInfoForLCS_Arg_sequence, hf_index, ett_gsm_map_RoutingInfoForLCS_Arg); return offset; } + static const ber_sequence_t LCSLocationInfo_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_networkNode_Number }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_lmsi_impl }, @@ -11930,7 +12224,7 @@ static const ber_sequence_t LCSLocationInfo_sequence[] = { static int dissect_gsm_map_LCSLocationInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LCSLocationInfo_sequence, hf_index, ett_gsm_map_LCSLocationInfo); + LCSLocationInfo_sequence, hf_index, ett_gsm_map_LCSLocationInfo); return offset; } @@ -11941,6 +12235,7 @@ static int dissect_lcsLocationInfo_impl(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_LCSLocationInfo(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_lcsLocationInfo); } + static const ber_sequence_t RoutingInfoForLCS_Res_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_targetMS }, { BER_CLASS_CON, 1, 0, dissect_lcsLocationInfo }, @@ -11955,7 +12250,7 @@ static const ber_sequence_t RoutingInfoForLCS_Res_sequence[] = { static int dissect_gsm_map_RoutingInfoForLCS_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RoutingInfoForLCS_Res_sequence, hf_index, ett_gsm_map_RoutingInfoForLCS_Res); + RoutingInfoForLCS_Res_sequence, hf_index, ett_gsm_map_RoutingInfoForLCS_Res); return offset; } @@ -12005,6 +12300,7 @@ static int dissect_terminationCause_impl(packet_info *pinfo, proto_tree *tree, t return dissect_gsm_map_TerminationCause(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_terminationCause); } + static const ber_sequence_t Deferredmt_lrData_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_deferredLocationEventType }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_terminationCause_impl }, @@ -12015,7 +12311,7 @@ static const ber_sequence_t Deferredmt_lrData_sequence[] = { static int dissect_gsm_map_Deferredmt_lrData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Deferredmt_lrData_sequence, hf_index, ett_gsm_map_Deferredmt_lrData); + Deferredmt_lrData_sequence, hf_index, ett_gsm_map_Deferredmt_lrData); return offset; } @@ -12023,6 +12319,7 @@ static int dissect_deferredmt_lrData_impl(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_Deferredmt_lrData(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_deferredmt_lrData); } + static const ber_sequence_t SubscriberLocationReport_Arg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_lcs_Event }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_lcs_ClientID }, @@ -12051,11 +12348,12 @@ static const ber_sequence_t SubscriberLocationReport_Arg_sequence[] = { static int dissect_gsm_map_SubscriberLocationReport_Arg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SubscriberLocationReport_Arg_sequence, hf_index, ett_gsm_map_SubscriberLocationReport_Arg); + SubscriberLocationReport_Arg_sequence, hf_index, ett_gsm_map_SubscriberLocationReport_Arg); return offset; } + static const ber_sequence_t SubscriberLocationReport_Res_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_na_ESRK_impl }, @@ -12066,7 +12364,7 @@ static const ber_sequence_t SubscriberLocationReport_Res_sequence[] = { static int dissect_gsm_map_SubscriberLocationReport_Res(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SubscriberLocationReport_Res_sequence, hf_index, ett_gsm_map_SubscriberLocationReport_Res); + SubscriberLocationReport_Res_sequence, hf_index, ett_gsm_map_SubscriberLocationReport_Res); return offset; } @@ -12113,7 +12411,8 @@ static const ber_choice_t OperationCode_choice[] = { static int dissect_gsm_map_OperationCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - OperationCode_choice, hf_index, ett_gsm_map_OperationCode, NULL); + OperationCode_choice, hf_index, ett_gsm_map_OperationCode, + NULL); return offset; } @@ -12137,7 +12436,8 @@ static const ber_choice_t ErrorCode_choice[] = { static int dissect_gsm_map_ErrorCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - ErrorCode_choice, hf_index, ett_gsm_map_ErrorCode, NULL); + ErrorCode_choice, hf_index, ett_gsm_map_ErrorCode, + NULL); return offset; } @@ -12163,7 +12463,8 @@ static const ber_choice_t OriginalComponentIdentifier_choice[] = { static int dissect_gsm_map_OriginalComponentIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - OriginalComponentIdentifier_choice, hf_index, ett_gsm_map_OriginalComponentIdentifier, NULL); + OriginalComponentIdentifier_choice, hf_index, ett_gsm_map_OriginalComponentIdentifier, + NULL); return offset; } @@ -12184,6 +12485,7 @@ static int dissect_initialisationVector(packet_info *pinfo, proto_tree *tree, tv return dissect_gsm_map_InitialisationVector(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_initialisationVector); } + static const ber_sequence_t SecurityHeader_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_securityParametersIndex }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_originalComponentIdentifier }, @@ -12194,7 +12496,7 @@ static const ber_sequence_t SecurityHeader_sequence[] = { int dissect_gsm_map_SecurityHeader(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SecurityHeader_sequence, hf_index, ett_gsm_map_SecurityHeader); + SecurityHeader_sequence, hf_index, ett_gsm_map_SecurityHeader); return offset; } @@ -12215,6 +12517,7 @@ static int dissect_protectedPayload(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_ProtectedPayload(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_protectedPayload); } + static const ber_sequence_t SecureTransportArg_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_securityHeader }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_protectedPayload }, @@ -12224,11 +12527,12 @@ static const ber_sequence_t SecureTransportArg_sequence[] = { static int dissect_gsm_map_SecureTransportArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SecureTransportArg_sequence, hf_index, ett_gsm_map_SecureTransportArg); + SecureTransportArg_sequence, hf_index, ett_gsm_map_SecureTransportArg); return offset; } + static const ber_sequence_t SecureTransportRes_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_securityHeader }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_protectedPayload }, @@ -12238,7 +12542,7 @@ static const ber_sequence_t SecureTransportRes_sequence[] = { static int dissect_gsm_map_SecureTransportRes(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SecureTransportRes_sequence, hf_index, ett_gsm_map_SecureTransportRes); + SecureTransportRes_sequence, hf_index, ett_gsm_map_SecureTransportRes); return offset; } @@ -12268,6 +12572,7 @@ static int dissect_networkResource(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_NetworkResource(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_networkResource); } + static const ber_sequence_t T_extensibleSystemFailureParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_networkResource }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -12277,7 +12582,7 @@ static const ber_sequence_t T_extensibleSystemFailureParam_sequence[] = { static int dissect_gsm_map_T_extensibleSystemFailureParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - T_extensibleSystemFailureParam_sequence, hf_index, ett_gsm_map_T_extensibleSystemFailureParam); + T_extensibleSystemFailureParam_sequence, hf_index, ett_gsm_map_T_extensibleSystemFailureParam); return offset; } @@ -12301,11 +12606,13 @@ static const ber_choice_t SystemFailureParam_choice[] = { static int dissect_gsm_map_SystemFailureParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - SystemFailureParam_choice, hf_index, ett_gsm_map_SystemFailureParam, NULL); + SystemFailureParam_choice, hf_index, ett_gsm_map_SystemFailureParam, + NULL); return offset; } + static const ber_sequence_t DataMissingParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12314,11 +12621,12 @@ static const ber_sequence_t DataMissingParam_sequence[] = { static int dissect_gsm_map_DataMissingParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - DataMissingParam_sequence, hf_index, ett_gsm_map_DataMissingParam); + DataMissingParam_sequence, hf_index, ett_gsm_map_DataMissingParam); return offset; } + static const ber_sequence_t UnexpectedDataParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12327,11 +12635,12 @@ static const ber_sequence_t UnexpectedDataParam_sequence[] = { static int dissect_gsm_map_UnexpectedDataParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UnexpectedDataParam_sequence, hf_index, ett_gsm_map_UnexpectedDataParam); + UnexpectedDataParam_sequence, hf_index, ett_gsm_map_UnexpectedDataParam); return offset; } + static const ber_sequence_t FacilityNotSupParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12340,11 +12649,12 @@ static const ber_sequence_t FacilityNotSupParam_sequence[] = { static int dissect_gsm_map_FacilityNotSupParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - FacilityNotSupParam_sequence, hf_index, ett_gsm_map_FacilityNotSupParam); + FacilityNotSupParam_sequence, hf_index, ett_gsm_map_FacilityNotSupParam); return offset; } + static const ber_sequence_t IncompatibleTerminalParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12353,11 +12663,12 @@ static const ber_sequence_t IncompatibleTerminalParam_sequence[] = { static int dissect_gsm_map_IncompatibleTerminalParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IncompatibleTerminalParam_sequence, hf_index, ett_gsm_map_IncompatibleTerminalParam); + IncompatibleTerminalParam_sequence, hf_index, ett_gsm_map_IncompatibleTerminalParam); return offset; } + static const ber_sequence_t ResourceLimitationParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12366,7 +12677,7 @@ static const ber_sequence_t ResourceLimitationParam_sequence[] = { static int dissect_gsm_map_ResourceLimitationParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ResourceLimitationParam_sequence, hf_index, ett_gsm_map_ResourceLimitationParam); + ResourceLimitationParam_sequence, hf_index, ett_gsm_map_ResourceLimitationParam); return offset; } @@ -12390,6 +12701,7 @@ static int dissect_unknownSubscriberDiagnostic(packet_info *pinfo, proto_tree *t return dissect_gsm_map_T_unknownSubscriberDiagnostic(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_unknownSubscriberDiagnostic); } + static const ber_sequence_t UnknownSubscriberParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_unknownSubscriberDiagnostic }, @@ -12399,11 +12711,12 @@ static const ber_sequence_t UnknownSubscriberParam_sequence[] = { static int dissect_gsm_map_UnknownSubscriberParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UnknownSubscriberParam_sequence, hf_index, ett_gsm_map_UnknownSubscriberParam); + UnknownSubscriberParam_sequence, hf_index, ett_gsm_map_UnknownSubscriberParam); return offset; } + static const ber_sequence_t NumberChangedParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12412,11 +12725,12 @@ static const ber_sequence_t NumberChangedParam_sequence[] = { static int dissect_gsm_map_NumberChangedParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NumberChangedParam_sequence, hf_index, ett_gsm_map_NumberChangedParam); + NumberChangedParam_sequence, hf_index, ett_gsm_map_NumberChangedParam); return offset; } + static const ber_sequence_t UnidentifiedSubParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12425,7 +12739,7 @@ static const ber_sequence_t UnidentifiedSubParam_sequence[] = { static int dissect_gsm_map_UnidentifiedSubParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UnidentifiedSubParam_sequence, hf_index, ett_gsm_map_UnidentifiedSubParam); + UnidentifiedSubParam_sequence, hf_index, ett_gsm_map_UnidentifiedSubParam); return offset; } @@ -12449,6 +12763,7 @@ static int dissect_roamingNotAllowedCause(packet_info *pinfo, proto_tree *tree, return dissect_gsm_map_T_roamingNotAllowedCause(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_roamingNotAllowedCause); } + static const ber_sequence_t RoamingNotAllowedParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_roamingNotAllowedCause }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -12458,11 +12773,12 @@ static const ber_sequence_t RoamingNotAllowedParam_sequence[] = { static int dissect_gsm_map_RoamingNotAllowedParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - RoamingNotAllowedParam_sequence, hf_index, ett_gsm_map_RoamingNotAllowedParam); + RoamingNotAllowedParam_sequence, hf_index, ett_gsm_map_RoamingNotAllowedParam); return offset; } + static const ber_sequence_t IllegalSubscriberParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12471,11 +12787,12 @@ static const ber_sequence_t IllegalSubscriberParam_sequence[] = { static int dissect_gsm_map_IllegalSubscriberParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IllegalSubscriberParam_sequence, hf_index, ett_gsm_map_IllegalSubscriberParam); + IllegalSubscriberParam_sequence, hf_index, ett_gsm_map_IllegalSubscriberParam); return offset; } + static const ber_sequence_t IllegalEquipmentParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12484,11 +12801,12 @@ static const ber_sequence_t IllegalEquipmentParam_sequence[] = { static int dissect_gsm_map_IllegalEquipmentParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - IllegalEquipmentParam_sequence, hf_index, ett_gsm_map_IllegalEquipmentParam); + IllegalEquipmentParam_sequence, hf_index, ett_gsm_map_IllegalEquipmentParam); return offset; } + static const ber_sequence_t BearerServNotProvParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12497,11 +12815,12 @@ static const ber_sequence_t BearerServNotProvParam_sequence[] = { static int dissect_gsm_map_BearerServNotProvParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - BearerServNotProvParam_sequence, hf_index, ett_gsm_map_BearerServNotProvParam); + BearerServNotProvParam_sequence, hf_index, ett_gsm_map_BearerServNotProvParam); return offset; } + static const ber_sequence_t TeleservNotProvParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12510,11 +12829,12 @@ static const ber_sequence_t TeleservNotProvParam_sequence[] = { static int dissect_gsm_map_TeleservNotProvParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - TeleservNotProvParam_sequence, hf_index, ett_gsm_map_TeleservNotProvParam); + TeleservNotProvParam_sequence, hf_index, ett_gsm_map_TeleservNotProvParam); return offset; } + static const ber_sequence_t TracingBufferFullParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12523,11 +12843,12 @@ static const ber_sequence_t TracingBufferFullParam_sequence[] = { static int dissect_gsm_map_TracingBufferFullParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - TracingBufferFullParam_sequence, hf_index, ett_gsm_map_TracingBufferFullParam); + TracingBufferFullParam_sequence, hf_index, ett_gsm_map_TracingBufferFullParam); return offset; } + static const ber_sequence_t NoRoamingNbParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12536,7 +12857,7 @@ static const ber_sequence_t NoRoamingNbParam_sequence[] = { static int dissect_gsm_map_NoRoamingNbParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoRoamingNbParam_sequence, hf_index, ett_gsm_map_NoRoamingNbParam); + NoRoamingNbParam_sequence, hf_index, ett_gsm_map_NoRoamingNbParam); return offset; } @@ -12561,6 +12882,7 @@ static int dissect_absentSubscriberReason_impl(packet_info *pinfo, proto_tree *t return dissect_gsm_map_T_absentSubscriberReason(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_absentSubscriberReason); } + static const ber_sequence_t AbsentSubscriberParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_absentSubscriberReason_impl }, @@ -12570,11 +12892,12 @@ static const ber_sequence_t AbsentSubscriberParam_sequence[] = { static int dissect_gsm_map_AbsentSubscriberParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AbsentSubscriberParam_sequence, hf_index, ett_gsm_map_AbsentSubscriberParam); + AbsentSubscriberParam_sequence, hf_index, ett_gsm_map_AbsentSubscriberParam); return offset; } + static const ber_sequence_t BusySubscriberParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ccbs_Possible_impl }, @@ -12585,11 +12908,12 @@ static const ber_sequence_t BusySubscriberParam_sequence[] = { static int dissect_gsm_map_BusySubscriberParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - BusySubscriberParam_sequence, hf_index, ett_gsm_map_BusySubscriberParam); + BusySubscriberParam_sequence, hf_index, ett_gsm_map_BusySubscriberParam); return offset; } + static const ber_sequence_t NoSubscriberReplyParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12598,7 +12922,7 @@ static const ber_sequence_t NoSubscriberReplyParam_sequence[] = { static int dissect_gsm_map_NoSubscriberReplyParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoSubscriberReplyParam_sequence, hf_index, ett_gsm_map_NoSubscriberReplyParam); + NoSubscriberReplyParam_sequence, hf_index, ett_gsm_map_NoSubscriberReplyParam); return offset; } @@ -12622,6 +12946,7 @@ static int dissect_callBarringCause(packet_info *pinfo, proto_tree *tree, tvbuff return dissect_gsm_map_CallBarringCause(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_callBarringCause); } + static const ber_sequence_t T_extensibleCallBarredParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_callBarringCause }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -12632,7 +12957,7 @@ static const ber_sequence_t T_extensibleCallBarredParam_sequence[] = { static int dissect_gsm_map_T_extensibleCallBarredParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - T_extensibleCallBarredParam_sequence, hf_index, ett_gsm_map_T_extensibleCallBarredParam); + T_extensibleCallBarredParam_sequence, hf_index, ett_gsm_map_T_extensibleCallBarredParam); return offset; } @@ -12656,11 +12981,13 @@ static const ber_choice_t CallBarredParam_choice[] = { static int dissect_gsm_map_CallBarredParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_choice(pinfo, tree, tvb, offset, - CallBarredParam_choice, hf_index, ett_gsm_map_CallBarredParam, NULL); + CallBarredParam_choice, hf_index, ett_gsm_map_CallBarredParam, + NULL); return offset; } + static const ber_sequence_t ForwardingFailedParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12669,11 +12996,12 @@ static const ber_sequence_t ForwardingFailedParam_sequence[] = { static int dissect_gsm_map_ForwardingFailedParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardingFailedParam_sequence, hf_index, ett_gsm_map_ForwardingFailedParam); + ForwardingFailedParam_sequence, hf_index, ett_gsm_map_ForwardingFailedParam); return offset; } + static const ber_sequence_t Or_NotAllowedParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12682,11 +13010,12 @@ static const ber_sequence_t Or_NotAllowedParam_sequence[] = { static int dissect_gsm_map_Or_NotAllowedParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Or_NotAllowedParam_sequence, hf_index, ett_gsm_map_Or_NotAllowedParam); + Or_NotAllowedParam_sequence, hf_index, ett_gsm_map_Or_NotAllowedParam); return offset; } + static const ber_sequence_t ForwardingViolationParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12695,7 +13024,7 @@ static const ber_sequence_t ForwardingViolationParam_sequence[] = { static int dissect_gsm_map_ForwardingViolationParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ForwardingViolationParam_sequence, hf_index, ett_gsm_map_ForwardingViolationParam); + ForwardingViolationParam_sequence, hf_index, ett_gsm_map_ForwardingViolationParam); return offset; } @@ -12721,6 +13050,7 @@ static int dissect_cug_RejectCause(packet_info *pinfo, proto_tree *tree, tvbuff_ return dissect_gsm_map_T_cug_RejectCause(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_cug_RejectCause); } + static const ber_sequence_t Cug_RejectParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_cug_RejectCause }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -12730,11 +13060,12 @@ static const ber_sequence_t Cug_RejectParam_sequence[] = { static int dissect_gsm_map_Cug_RejectParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Cug_RejectParam_sequence, hf_index, ett_gsm_map_Cug_RejectParam); + Cug_RejectParam_sequence, hf_index, ett_gsm_map_Cug_RejectParam); return offset; } + static const ber_sequence_t Ati_NotAllowedParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12743,11 +13074,12 @@ static const ber_sequence_t Ati_NotAllowedParam_sequence[] = { static int dissect_gsm_map_Ati_NotAllowedParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Ati_NotAllowedParam_sequence, hf_index, ett_gsm_map_Ati_NotAllowedParam); + Ati_NotAllowedParam_sequence, hf_index, ett_gsm_map_Ati_NotAllowedParam); return offset; } + static const ber_sequence_t NoGroupCallNbParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12756,11 +13088,12 @@ static const ber_sequence_t NoGroupCallNbParam_sequence[] = { static int dissect_gsm_map_NoGroupCallNbParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - NoGroupCallNbParam_sequence, hf_index, ett_gsm_map_NoGroupCallNbParam); + NoGroupCallNbParam_sequence, hf_index, ett_gsm_map_NoGroupCallNbParam); return offset; } + static const ber_sequence_t SS_IncompatibilityCause_sequence[] = { { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ss_Code_impl }, { BER_CLASS_CON, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_basicService }, @@ -12771,7 +13104,7 @@ static const ber_sequence_t SS_IncompatibilityCause_sequence[] = { static int dissect_gsm_map_SS_IncompatibilityCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SS_IncompatibilityCause_sequence, hf_index, ett_gsm_map_SS_IncompatibilityCause); + SS_IncompatibilityCause_sequence, hf_index, ett_gsm_map_SS_IncompatibilityCause); return offset; } @@ -12793,6 +13126,7 @@ dissect_gsm_map_Pw_RegistrationFailureCause(gboolean implicit_tag _U_, tvbuff_t return offset; } + static const ber_sequence_t ShortTermDenialParam_sequence[] = { { 0, 0, 0, NULL } }; @@ -12800,11 +13134,12 @@ static const ber_sequence_t ShortTermDenialParam_sequence[] = { static int dissect_gsm_map_ShortTermDenialParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - ShortTermDenialParam_sequence, hf_index, ett_gsm_map_ShortTermDenialParam); + ShortTermDenialParam_sequence, hf_index, ett_gsm_map_ShortTermDenialParam); return offset; } + static const ber_sequence_t LongTermDenialParam_sequence[] = { { 0, 0, 0, NULL } }; @@ -12812,11 +13147,12 @@ static const ber_sequence_t LongTermDenialParam_sequence[] = { static int dissect_gsm_map_LongTermDenialParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - LongTermDenialParam_sequence, hf_index, ett_gsm_map_LongTermDenialParam); + LongTermDenialParam_sequence, hf_index, ett_gsm_map_LongTermDenialParam); return offset; } + static const ber_sequence_t SubBusyForMT_SMS_Param_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_gprsConnectionSuspended }, @@ -12826,7 +13162,7 @@ static const ber_sequence_t SubBusyForMT_SMS_Param_sequence[] = { static int dissect_gsm_map_SubBusyForMT_SMS_Param(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - SubBusyForMT_SMS_Param_sequence, hf_index, ett_gsm_map_SubBusyForMT_SMS_Param); + SubBusyForMT_SMS_Param_sequence, hf_index, ett_gsm_map_SubBusyForMT_SMS_Param); return offset; } @@ -12868,6 +13204,7 @@ static int dissect_diagnosticInfo(packet_info *pinfo, proto_tree *tree, tvbuff_t return dissect_gsm_map_OCTET_STRING_SIZE_1_200(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_diagnosticInfo); } + static const ber_sequence_t Sm_DeliveryFailureCause_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_sm_EnumeratedDeliveryFailureCause }, { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_diagnosticInfo }, @@ -12878,11 +13215,12 @@ static const ber_sequence_t Sm_DeliveryFailureCause_sequence[] = { static int dissect_gsm_map_Sm_DeliveryFailureCause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - Sm_DeliveryFailureCause_sequence, hf_index, ett_gsm_map_Sm_DeliveryFailureCause); + Sm_DeliveryFailureCause_sequence, hf_index, ett_gsm_map_Sm_DeliveryFailureCause); return offset; } + static const ber_sequence_t MessageWaitListFullParam_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12891,11 +13229,12 @@ static const ber_sequence_t MessageWaitListFullParam_sequence[] = { static int dissect_gsm_map_MessageWaitListFullParam(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - MessageWaitListFullParam_sequence, hf_index, ett_gsm_map_MessageWaitListFullParam); + MessageWaitListFullParam_sequence, hf_index, ett_gsm_map_MessageWaitListFullParam); return offset; } + static const ber_sequence_t AbsentSubscriberSM_Param_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_absentSubscriberDiagnosticSM }, { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, @@ -12906,11 +13245,12 @@ static const ber_sequence_t AbsentSubscriberSM_Param_sequence[] = { static int dissect_gsm_map_AbsentSubscriberSM_Param(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - AbsentSubscriberSM_Param_sequence, hf_index, ett_gsm_map_AbsentSubscriberSM_Param); + AbsentSubscriberSM_Param_sequence, hf_index, ett_gsm_map_AbsentSubscriberSM_Param); return offset; } + static const ber_sequence_t UnauthorizedRequestingNetwork_Param_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -12919,7 +13259,7 @@ static const ber_sequence_t UnauthorizedRequestingNetwork_Param_sequence[] = { static int dissect_gsm_map_UnauthorizedRequestingNetwork_Param(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UnauthorizedRequestingNetwork_Param_sequence, hf_index, ett_gsm_map_UnauthorizedRequestingNetwork_Param); + UnauthorizedRequestingNetwork_Param_sequence, hf_index, ett_gsm_map_UnauthorizedRequestingNetwork_Param); return offset; } @@ -12946,6 +13286,7 @@ static int dissect_unauthorizedLCSClient_Diagnostic_impl(packet_info *pinfo, pro return dissect_gsm_map_T_unauthorizedLCSClient_Diagnostic(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_unauthorizedLCSClient_Diagnostic); } + static const ber_sequence_t UnauthorizedLCSClient_Param_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_unauthorizedLCSClient_Diagnostic_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -12955,7 +13296,7 @@ static const ber_sequence_t UnauthorizedLCSClient_Param_sequence[] = { static int dissect_gsm_map_UnauthorizedLCSClient_Param(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UnauthorizedLCSClient_Param_sequence, hf_index, ett_gsm_map_UnauthorizedLCSClient_Param); + UnauthorizedLCSClient_Param_sequence, hf_index, ett_gsm_map_UnauthorizedLCSClient_Param); return offset; } @@ -12986,6 +13327,7 @@ static int dissect_positionMethodFailure_Diagnostic_impl(packet_info *pinfo, pro return dissect_gsm_map_T_positionMethodFailure_Diagnostic(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_positionMethodFailure_Diagnostic); } + static const ber_sequence_t PositionMethodFailure_Param_sequence[] = { { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_positionMethodFailure_Diagnostic_impl }, { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_extensionContainer_impl }, @@ -12995,11 +13337,12 @@ static const ber_sequence_t PositionMethodFailure_Param_sequence[] = { static int dissect_gsm_map_PositionMethodFailure_Param(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - PositionMethodFailure_Param_sequence, hf_index, ett_gsm_map_PositionMethodFailure_Param); + PositionMethodFailure_Param_sequence, hf_index, ett_gsm_map_PositionMethodFailure_Param); return offset; } + static const ber_sequence_t UnknownOrUnreachableLCSClient_Param_sequence[] = { { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_extensionContainer }, { 0, 0, 0, NULL } @@ -13008,7 +13351,7 @@ static const ber_sequence_t UnknownOrUnreachableLCSClient_Param_sequence[] = { static int dissect_gsm_map_UnknownOrUnreachableLCSClient_Param(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset, - UnknownOrUnreachableLCSClient_Param_sequence, hf_index, ett_gsm_map_UnknownOrUnreachableLCSClient_Param); + UnknownOrUnreachableLCSClient_Param_sequence, hf_index, ett_gsm_map_UnknownOrUnreachableLCSClient_Param); return offset; } @@ -13537,7 +13880,7 @@ static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff offset=dissect_gsm_map_InterrogateSS_Res(FALSE, tvb, offset, pinfo, tree, -1); break; case 15: /*authenticationFailureReport*/ - offset=dissect_gsm_map_AuthenticationFailureReportArg(FALSE, tvb, offset, pinfo, tree, -1); + offset=dissect_gsm_map_AuthenticationFailureReportRes(FALSE, tvb, offset, pinfo, tree, -1); break; case 17: /*registerPassword*/ offset=dissect_gsm_map_NewPassword(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_ss_Code); @@ -13930,7 +14273,7 @@ dissect_gsm_map(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) tap_queue_packet(gsm_map_tap, pinfo, &tap_rec); } -static const value_string ssCode_vals[] = { +const value_string ssCode_vals[] = { { 0x00, "allSS - all SS" }, { 0x10 ,"allLineIdentificationSS - all line identification SS" }, { 0x11 ,"clip - calling line identification presentation" }, |