wireshark/asn1/gsmmap/gsmmap.cnf

296 lines
10 KiB
INI

# gsm_map.cnf
# gsm_map conformation file
# $Id$
#.MODULE_IMPORT
#.EXPORTS
#.PDU
#.NO_EMIT
#.TYPE_RENAME
InsertSubscriberDataArg/bearerServiceList bearerServiceList
InsertSubscriberDataRes/bearerServiceList bearerServiceList
InsertSubscriberDataRes/ss-List ss_List
DeleteSubscriberDataArg/ss-List ss_List
SendRoutingInfoRes/ss-List ss_List
SendIdentificationRes/authenticationSetList SendId_authenticationSetList
AnyTimeModificationArg/modificationRequestFor-CF-Info/basicService BasicService_ext
AnyTimeModificationArg/modificationRequestFor-CB-Info/basicService BasicService_ext
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/mt-smsCAMELTDP-CriteriaList/_item/sms-TriggerDetectionPoint sms_TriggerDetectionPoint
Sms-CAMEL-TDP-DataList/_item/sms-TriggerDetectionPoint sms_TriggerDetectionPoint
InsertSubscriberDataArg/vlrCamelSubscriptionInfo/ss-CSI ss_CSI
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/ss-CSI ss_CSI
SendRoutingInfoRes/extendedRoutingInfo/camelRoutingInfo/gmscCamelSubscriptionInfo/t-CSI t_CSI
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/t-CSI t_CSI
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/t-BCSM-CAMEL-TDP-CriteriaList/_item/t-BCSM-TriggerDetectionPoint t_BCSM_TriggerDetectionPoint
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/vt-BCSM-CAMEL-TDP-CriteriaList/_item/t-BCSM-TriggerDetectionPoint t_BCSM_TriggerDetectionPoint
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/vt-IM-BCSM-CAMEL-TDP-CriteriaList/_item/t-BCSM-TriggerDetectionPoint t_BCSM_TriggerDetectionPoint
#.FIELD_RENAME
RequestedInfo/locationInformation locationInformationFlag
RequestedInfo/subscriberState subscriberStateFlag
AdditionalSignalInfo/signalInfo ext_signalInfo
ForwardingInfo/forwardingFeatureList forwardingFeatureList_1_32
SendIdentificationRes/authenticationSetList sendId_authenticationSetList
AnyTimeSubscriptionInterrogationArg/requestedSubscriptionInfo/supportedVLR-CAMEL-Phases supportedVLR_CAMEL_Phases_flg
AnyTimeSubscriptionInterrogationArg/requestedSubscriptionInfo/supportedSGSN-CAMEL-Phases supportedSGSN_CAMEL_Phases_flg
RequestedInfo/imei imei_flg
AnyTimeModificationArg/modificationRequestFor-CF-Info/basicService basicService_ext
AnyTimeModificationArg/modificationRequestFor-CB-Info/basicService basicService_ext
O-BcsmCamelTDP-CriteriaList/_item/basicServiceCriteria basicServiceCriteria_lst
InterrogateSS-Res/forwardingFeatureList forwardingFeatureList_1_13
AnyTimeModificationArg/modificationRequestFor-CF-Info/noReplyConditionTime noReplyConditionTime_1_100
AnyTimeSubscriptionInterrogationRes/camel-SubscriptionInfo/o-IM-BcsmCamelTDP-CriteriaList/_item/o-BcsmTriggerDetectionPoint o-BcsmTriggerDetectionPoint
O-BcsmCamelTDP-CriteriaList/_item/o-BcsmTriggerDetectionPoint o-BcsmTriggerDetectionPoint
#----------------------------------------------------------------------------------------
#.FN_BODY Sm-RP-UI
tvbuff_t *tpdu_tvb;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&tpdu_tvb);
/*
* dissect the embedded TPDU message
*/
if (!tpdu_tvb)
return offset;
dissector_try_port(sms_dissector_table, 0, tpdu_tvb, pinfo, top_tree);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY Imsi
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
digit_str = unpack_digits(parameter_tvb, 0);
proto_tree_add_string(tree, hf_gsm_map_imsi_digits, parameter_tvb, 0, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY ServiceCentreAddress
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
proto_tree_add_item(tree, hf_gsm_map_extension, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_nature_of_number, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_number_plan, parameter_tvb, 0,1,FALSE);
digit_str = unpack_digits(parameter_tvb, 1);
proto_tree_add_string(tree, hf_gsm_map_servicecentreaddress_digits, parameter_tvb, 1, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY Msisdn
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
proto_tree_add_item(tree, hf_gsm_map_extension, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_nature_of_number, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_number_plan, parameter_tvb, 0,1,FALSE);
digit_str = unpack_digits(parameter_tvb, 1);
proto_tree_add_string(tree, hf_gsm_map_misdn_digits, parameter_tvb, 1, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY Gmsc-Address
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
proto_tree_add_item(tree, hf_gsm_map_extension, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_nature_of_number, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_number_plan, parameter_tvb, 0,1,FALSE);
digit_str = unpack_digits(parameter_tvb, 1);
proto_tree_add_string(tree, hf_gsm_map_map_gmsc_address_digits, parameter_tvb, 1, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY Hlr-Number
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
proto_tree_add_item(tree, hf_gsm_map_extension, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_nature_of_number, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_number_plan, parameter_tvb, 0,1,FALSE);
digit_str = unpack_digits(parameter_tvb, 1);
proto_tree_add_string(tree, hf_gsm_map_map_hlr_number_digits, parameter_tvb, 1, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY RoamingNumber
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
proto_tree_add_item(tree, hf_gsm_map_extension, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_nature_of_number, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_number_plan, parameter_tvb, 0,1,FALSE);
digit_str = unpack_digits(parameter_tvb, 1);
proto_tree_add_string(tree, hf_gsm_map_map_RoamingNumber_digits, parameter_tvb, 1, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY ForwardedToNumber
tvbuff_t *parameter_tvb;
char *digit_str;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
proto_tree_add_item(tree, hf_gsm_map_extension, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_nature_of_number, parameter_tvb, 0,1,FALSE);
proto_tree_add_item(tree, hf_gsm_map_number_plan, parameter_tvb, 0,1,FALSE);
digit_str = unpack_digits(parameter_tvb, 1);
proto_tree_add_string(tree, hf_gsm_map_map_ForwardedToNumber_digits, parameter_tvb, 1, -1, digit_str);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY Ss-Status
tvbuff_t *parameter_tvb;
guint8 octet;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
octet = tvb_get_guint8(parameter_tvb,0);
proto_tree_add_uint(tree, hf_gsm_map_Ss_Status_unused, parameter_tvb, 0,1,octet);
if ((octet & 0x01)== 1)
proto_tree_add_boolean(tree, hf_gsm_map_Ss_Status_q_bit, parameter_tvb, 0,1,octet);
proto_tree_add_boolean(tree, hf_gsm_map_Ss_Status_p_bit, parameter_tvb, 0,1,octet);
proto_tree_add_boolean(tree, hf_gsm_map_Ss_Status_r_bit, parameter_tvb, 0,1,octet);
proto_tree_add_boolean(tree, hf_gsm_map_Ss_Status_a_bit, parameter_tvb, 0,1,octet);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY ProtocolId
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index, &protocolId);
#----------------------------------------------------------------------------------------
#.FN_BODY SignalInfo
tvbuff_t *parameter_tvb;
guint8 octet;
guint8 length;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
&parameter_tvb);
if (!parameter_tvb)
return offset;
switch (protocolId){
/* gsm-0408 */
case 1:
break;
/* gsm-0806 */
case 2:
break;
/* gsm-BSSMAP */
case 3:
break;
/* ets-300102-1 (~Q.931 ) */
case 4:
octet = tvb_get_guint8(parameter_tvb,0);
length = tvb_get_guint8(parameter_tvb,1);
if ( octet == 4 )
dissect_q931_bearer_capability_ie(parameter_tvb, 2, length, tree);
break;
default:
break;
}
#----------------------------------------------------------------------------------------
#.FN_BODY PrivateExtension/extType
proto_tree_add_text(tree, tvb, offset, -1, "Extension Data");
call_dissector(data_handle, tvb, pinfo, tree);
offset = tvb_length_remaining(tvb,offset);
#.END
#----------------------------------------------------------------------------------------
#.TYPE_ATTR
Ss-Code TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(ssCode_vals)
Teleservice TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(Teleservice_vals)
#.END