wireshark/asn1/sabp/sabp.cnf

218 lines
7.8 KiB
INI

# sabp.cnf
# sabp conformation file
# Copyright 2007 Tomas Kukosa
# $Id$
#.OPT
PER
ALIGNED
#.END
#.NO_EMIT
#.PDU_NEW
SABP-PDU
#.MAKE_ENUM
ProcedureCode
ProtocolIE-ID
#.USE_VALS_EXT
ProcedureCode
ProtocolIE-ID
Cause
#.OMIT_ASSIGNMENT
Presence
ProtocolIE-ContainerList
#.END
#.TF_RENAME
ProtocolIE-Field/value ProtocolIE_Field_value
InitiatingMessage/value InitiatingMessage_value
SuccessfulOutcome/value SuccessfulOutcome_value
UnsuccessfulOutcome/value UnsuccessfulOutcome_value
#.END
#.FIELD_RENAME
ProtocolExtensionField/id ext_id
MessageStructure/_item/repetitionNumber repetitionNumber1
#.END
#.FN_PARS ProtocolIE-ID VAL_PTR=&ProtocolIE_ID
#.FN_FTR ProtocolIE-ID
if (tree) {
proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str_ext(ProtocolIE_ID, &sabp_ProtocolIE_ID_vals_ext, "unknown (%d)"));
}
#.END
#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
#.FN_PARS ProtocolExtensionID VAL_PTR=&ProtocolExtensionID
#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
#.FN_FTR ProcedureCode
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
val_to_str_ext(ProcedureCode, &sabp_ProcedureCode_vals_ext,
"unknown message"));
#.END
#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
#.FN_PARS SuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_SuccessfulOutcomeValue
#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
#.ASSIGN_VALUE_TO_TYPE # SABP does not have constants assigned to types, they are pure INTEGER
# ProcedureCode
id-Write-Replace ProcedureCode
id-Kill ProcedureCode
id-Load-Status-Enquiry ProcedureCode
id-Message-Status-Query ProcedureCode
id-Restart-Indication ProcedureCode
id-Reset ProcedureCode
id-Failure-Indication ProcedureCode
id-Error-Indication ProcedureCode
# ProtocolIE-ID
id-Broadcast-Message-Content ProtocolIE-ID
id-Category ProtocolIE-ID
id-Cause ProtocolIE-ID
id-Criticality-Diagnostics ProtocolIE-ID
id-Data-Coding-Scheme ProtocolIE-ID
id-Failure-List ProtocolIE-ID
id-Message-Identifier ProtocolIE-ID
id-New-Serial-Number ProtocolIE-ID
id-Number-of-Broadcasts-Completed-List ProtocolIE-ID
id-Number-of-Broadcasts-Requested ProtocolIE-ID
id-Old-Serial-Number ProtocolIE-ID
id-Radio-Resource-Loading-List ProtocolIE-ID
id-Recovery-Indication ProtocolIE-ID
id-Repetition-Period ProtocolIE-ID
id-Serial-Number ProtocolIE-ID
id-Service-Areas-List ProtocolIE-ID
id-MessageStructure ProtocolIE-ID
id-TypeOfError ProtocolIE-ID
id-Paging-ETWS-Indicator ProtocolIE-ID
id-Warning-Type ProtocolIE-ID
id-WarningSecurityInfo ProtocolIE-ID
id-Broadcast-Message-Content-Validity-Indicator ProtocolIE-ID
#.END
#.REGISTER_NEW
#SABP-PROTOCOL-IES
Message-Identifier N sabp.ies id-Message-Identifier
New-Serial-Number N sabp.ies id-New-Serial-Number
Old-Serial-Number N sabp.ies id-Old-Serial-Number
Service-Areas-List N sabp.ies id-Service-Areas-List
Category N sabp.ies id-Category
Repetition-Period N sabp.ies id-Repetition-Period
Number-of-Broadcasts-Requested N sabp.ies id-Number-of-Broadcasts-Requested
Data-Coding-Scheme N sabp.ies id-Data-Coding-Scheme
Broadcast-Message-Content N sabp.ies id-Broadcast-Message-Content
Number-of-Broadcasts-Completed-List N sabp.ies id-Number-of-Broadcasts-Completed-List
Criticality-Diagnostics N sabp.ies id-Criticality-Diagnostics
Failure-List N sabp.ies id-Failure-List
Radio-Resource-Loading-List N sabp.ies id-Radio-Resource-Loading-List
Recovery-Indication N sabp.ies id-Recovery-Indication
Serial-Number N sabp.ies id-Serial-Number
Cause N sabp.ies id-Cause
#SABP-PROTOCOL-EXTENSION
MessageStructure N sabp.extension id-MessageStructure
TypeOfError N sabp.extension id-TypeOfError
Paging-ETWS-Indicator N sabp.extension id-Paging-ETWS-Indicator
Warning-Type N sabp.extension id-Warning-Type
WarningSecurityInfo N sabp.extension id-WarningSecurityInfo
Broadcast-Message-Content-Validity-Indicator N sabp.extension id-Broadcast-Message-Content-Validity-Indicator
#SABP-ELEMENTARY-PROCEDURE
Write-Replace N sabp.proc.imsg id-Write-Replace
Write-Replace-Complete N sabp.proc.sout id-Write-Replace
Write-Replace-Failure N sabp.proc.uout id-Write-Replace
Kill N sabp.proc.imsg id-Kill
Kill-Complete N sabp.proc.sout id-Kill
Kill-Failure N sabp.proc.uout id-Kill
Load-Query N sabp.proc.imsg id-Load-Status-Enquiry
Load-Query-Complete N sabp.proc.sout id-Load-Status-Enquiry
Load-Query-Failure N sabp.proc.uout id-Load-Status-Enquiry
Message-Status-Query N sabp.proc.imsg id-Message-Status-Query
Message-Status-Query-Complete N sabp.proc.sout id-Message-Status-Query
Message-Status-Query-Failure N sabp.proc.uout id-Message-Status-Query
Reset N sabp.proc.imsg id-Reset
Reset-Complete N sabp.proc.sout id-Reset
Reset-Failure N sabp.proc.uout id-Reset
Restart N sabp.proc.imsg id-Restart-Indication
Failure N sabp.proc.imsg id-Failure-Indication
Error-Indication N sabp.proc.imsg id-Error-Indication
# following construction is not supported by asn2wrs
# PLMNidentity ::= TBCD-STRING (SIZE (3))
# TBCD-STRING ::= OCTET STRING
#.FN_BODY Service-Area-Identifier/pLMNidentity VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
proto_tree *subtree;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
3, 3, FALSE, &parameter_tvb);
if (!parameter_tvb)
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_sabp_e212);
dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, subtree, 0, FALSE);
#.FN_BODY Data-Coding-Scheme VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
proto_tree *subtree;
%(DEFAULT_BODY)s
if (!parameter_tvb)
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_sabp_cbs_data_coding);
sms_encoding = dissect_cbs_data_coding_scheme(parameter_tvb, actx->pinfo, subtree, 0);
#.FN_BODY Message-Identifier VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
%(DEFAULT_BODY)s
if (!parameter_tvb)
return offset;
dissect_cbs_message_identifier(parameter_tvb, tree, 0);
#.FN_BODY Serial-Number VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
proto_tree *subtree;
%(DEFAULT_BODY)s
if (!parameter_tvb)
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_sabp_cbs_serial_number);
dissect_cbs_serial_number(parameter_tvb, subtree, 0);
#.FN_BODY New-Serial-Number VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
proto_tree *subtree;
%(DEFAULT_BODY)s
if (!parameter_tvb)
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_sabp_cbs_new_serial_number);
dissect_cbs_serial_number(parameter_tvb, subtree, 0);
#.FN_BODY Broadcast-Message-Content VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
%(DEFAULT_BODY)s
if (!parameter_tvb)
return offset;
dissect_sabp_cb_data(parameter_tvb, actx->pinfo, tree);
# dissect_umts_cell_broadcast_message(parameter_tvb, actx->pinfo, proto_tree_get_root(tree));