summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/sbc-ap/sbc-ap.cnf
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
commite4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch)
tree68cb5ef9081156392f1dd62a00c6ccc1451b93df /epan/dissectors/asn1/sbc-ap/sbc-ap.cnf
parentInitial commit. (diff)
downloadwireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz
wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/asn1/sbc-ap/sbc-ap.cnf')
-rw-r--r--epan/dissectors/asn1/sbc-ap/sbc-ap.cnf377
1 files changed, 377 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/sbc-ap/sbc-ap.cnf b/epan/dissectors/asn1/sbc-ap/sbc-ap.cnf
new file mode 100644
index 00000000..08a2b1f1
--- /dev/null
+++ b/epan/dissectors/asn1/sbc-ap/sbc-ap.cnf
@@ -0,0 +1,377 @@
+# sbc-ap.cnf
+# sbc-ap conformation file
+
+#.OPT
+PER
+ALIGNED
+#.END
+
+#.EXPORTS
+
+#.PDU
+SBC-AP-PDU
+
+#.MAKE_ENUM
+ProcedureCode
+ProtocolIE-ID
+
+#.NO_EMIT
+TBCD-STRING
+#.END
+
+#.OMIT_ASSIGNMENT
+# Get rid of unused code warnings
+ProtocolIE-ContainerList
+Presence
+Unknown-Tracking-Area-List
+NgENB-ID
+List-of-5GS-Cells-for-Failure
+
+#.TYPE_RENAME
+
+InitiatingMessage/value InitiatingMessage_value
+SuccessfulOutcome/value SuccessfulOutcome_value
+UnsuccessfulOutcome/value UnsuccessfulOutcome_value
+
+#.FIELD_RENAME
+
+InitiatingMessage/value initiatingMessagevalue
+UnsuccessfulOutcome/value unsuccessfulOutcome_value
+SuccessfulOutcome/value successfulOutcome_value
+
+ProtocolExtensionField/id ext_id
+
+ProtocolIE-Field/value ie_field_value
+
+#.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(ProtocolIE_ID, VALS(sbc_ap_ProtocolIE_ID_vals), "unknown (%d)"));
+ }
+#.END
+
+
+
+#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
+# Currently not used
+# FN_PARS ProtocolIE-FieldPair/firstValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairFirstValue
+# FN_PARS ProtocolIE-FieldPair/secondValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairSecondValue
+
+#.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
+#.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
+
+#--- Parameterization is not supported in asn2wrs ---
+
+#ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, SBC-AP-PROTOCOL-IES : IEsSetParam} ::=
+# SEQUENCE (SIZE (lowerBound..upperBound)) OF
+# ProtocolIE-Container {{IEsSetParam}}
+
+# FN_PARS ProtocolIE-ContainerList
+#MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
+#MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
+# FN_HDR ProtocolIE-ContainerList
+# static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
+# { "lowerBound", ASN1_PAR_INTEGER },
+# { "upperBound", ASN1_PAR_INTEGER },
+# { NULL, 0 }
+# };
+# asn1_stack_frame_check(actx, "ProtocolIE-ContainerList", ProtocolIE_ContainerList_pars);
+#.END
+#ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, SBC-AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+# SEQUENCE (SIZE (lowerBound..upperBound)) OF
+# ProtocolIE-ContainerPair {{IEsSetParam}}
+
+# following construction is not supported by asn2wrs
+# PLMNidentity ::= TBCD-STRING (SIZE (3))
+# TBCD-STRING ::= OCTET STRING
+
+#.FN_BODY PLMNidentity VAL_PTR = parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ e212_number_type_t number_type = sbc_ap_data->number_type;
+ sbc_ap_data->number_type = E212_NONE;
+
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ 3, 3, FALSE, &parameter_tvb);
+ if(tvb_reported_length(tvb)==0)
+ return offset;
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, tree, 0, number_type, FALSE);
+#.END
+
+#.TYPE_ATTR
+ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(sbc_ap_ProtocolIE_ID_vals)
+
+#.FN_BODY EUTRAN-CGI
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ sbc_ap_data->number_type = E212_ECGI;
+%(DEFAULT_BODY)s
+
+#.FN_BODY NR-CGI
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ sbc_ap_data->number_type = E212_NRCGI;
+%(DEFAULT_BODY)s
+
+#.FN_BODY TAI
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ sbc_ap_data->number_type = E212_TAI;
+%(DEFAULT_BODY)s
+
+#.TYPE_ATTR
+TAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
+#.FN_BODY TAC VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY TAI-5GS
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ sbc_ap_data->number_type = E212_5GSTAI;
+%(DEFAULT_BODY)s
+
+#.TYPE_ATTR
+TAC-5GS TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
+#.FN_BODY TAC-5GS VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 3, ENC_BIG_ENDIAN);
+ }
+
+
+#.ASSIGN_VALUE_TO_TYPE # SBC-AP does not have constants assigned to types, they are pure INTEGER
+# ProcedureCode
+id-Write-Replace-Warning ProcedureCode
+id-Stop-Warning ProcedureCode
+id-Error-Indication ProcedureCode
+id-Write-Replace-Warning-Indication ProcedureCode
+id-Stop-Warning-Indication ProcedureCode
+id-PWS-Restart-Indication ProcedureCode
+id-PWS-Failure-Indication ProcedureCode
+
+# ProtocolIE-ID
+
+id-Broadcast-Message-Content 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-Number-of-Broadcasts-Completed-List ProtocolIE-ID
+id-Number-of-Broadcasts-Requested 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-TypeOfError ProtocolIE-ID
+id-List-of-TAIs ProtocolIE-ID
+id-Warning-Area-List ProtocolIE-ID
+id-Warning-Message-Content ProtocolIE-ID
+id-Warning-Security-Information ProtocolIE-ID
+id-Warning-Type ProtocolIE-ID
+id-Omc-Id ProtocolIE-ID
+id-Concurrent-Warning-Message-Indicator ProtocolIE-ID
+id-Extended-Repetition-Period ProtocolIE-ID
+id-Unknown-Tracking-Area-List ProtocolIE-ID
+id-Broadcast-Scheduled-Area-List ProtocolIE-ID
+id-Send-Write-Replace-Warning-Indication ProtocolIE-ID
+id-Broadcast-Cancelled-Area-List ProtocolIE-ID
+id-Send-Stop-Warning-Indication ProtocolIE-ID
+id-Stop-All-Indicator ProtocolIE-ID
+id-Global-ENB-ID ProtocolIE-ID
+id-Broadcast-Empty-Area-List ProtocolIE-ID
+id-Restarted-Cell-List ProtocolIE-ID
+id-List-of-TAIs-Restart ProtocolIE-ID
+id-List-of-EAIs-Restart ProtocolIE-ID
+id-Failed-Cell-List ProtocolIE-ID
+
+id-List-of-5GS-TAIs ProtocolIE-ID
+id-Warning-Area-List-5GS ProtocolIE-ID
+id-Global-RAN-Node-ID ProtocolIE-ID
+id-Global-GNB-ID ProtocolIE-ID
+id-RAT-Selector-5GS ProtocolIE-ID
+id-Unknown-5GS-Tracking-Area-List ProtocolIE-ID
+id-Broadcast-Scheduled-Area-List-5GS ProtocolIE-ID
+id-Broadcast-Cancelled-Area-List-5GS ProtocolIE-ID
+id-Broadcast-Empty-Area-List-5GS ProtocolIE-ID
+id-Restarted-Cell-List-NR ProtocolIE-ID
+id-Failed-Cell-List-NR ProtocolIE-ID
+id-List-of-5GS-TAI-for-Restart ProtocolIE-ID
+id-Warning-Area-Coordinates ProtocolIE-ID
+
+#.REGISTER
+
+#SBC-AP-PROTOCOL-IES
+
+# N sbc_ap.ies id-Broadcast-Message-Content
+Cause N sbc_ap.ies id-Cause
+Criticality-Diagnostics N sbc_ap.ies id-Criticality-Diagnostics
+Data-Coding-Scheme N sbc_ap.ies id-Data-Coding-Scheme
+# N sbc_ap.ies id-Failure-List
+Message-Identifier N sbc_ap.ies id-Message-Identifier
+# id-Number-of-Broadcasts-Completed-List
+Number-of-Broadcasts-Requested N sbc_ap.ies id-Number-of-Broadcasts-Requested
+# not used ? N sbc_ap.ies id-Radio-Resource-Loading-List
+# not used N sbc_ap.ies id-Recovery-Indication
+Repetition-Period N sbc_ap.ies id-Repetition-Period
+Serial-Number N sbc_ap.ies id-Serial-Number
+# id-Service-Areas-List
+# id-TypeOfError
+List-of-TAIs N sbc_ap.ies id-List-of-TAIs
+Warning-Area-List N sbc_ap.ies id-Warning-Area-List
+Warning-Message-Content N sbc_ap.ies id-Warning-Message-Content
+Warning-Security-Information N sbc_ap.ies id-Warning-Security-Information
+Warning-Type N sbc_ap.ies id-Warning-Type
+Omc-Id N sbc_ap.ies id-Omc-Id
+Concurrent-Warning-Message-Indicator N sbc_ap.ies id-Concurrent-Warning-Message-Indicator
+Extended-Repetition-Period N sbc_ap.ies id-Extended-Repetition-Period
+List-of-TAIs N sbc_ap.ies id-Unknown-Tracking-Area-List
+Broadcast-Scheduled-Area-List N sbc_ap.ies id-Broadcast-Scheduled-Area-List
+Send-Write-Replace-Warning-Indication N sbc_ap.ies id-Send-Write-Replace-Warning-Indication
+Broadcast-Cancelled-Area-List N sbc_ap.ies id-Broadcast-Cancelled-Area-List
+Send-Stop-Warning-Indication N sbc_ap.ies id-Send-Stop-Warning-Indication
+Stop-All-Indicator N sbc_ap.ies id-Stop-All-Indicator
+Global-ENB-ID N sbc_ap.ies id-Global-ENB-ID
+Broadcast-Empty-Area-List N sbc_ap.ies id-Broadcast-Empty-Area-List
+Restarted-Cell-List N sbc_ap.ies id-Restarted-Cell-List
+List-of-TAIs-Restart N sbc_ap.ies id-List-of-TAIs-Restart
+List-of-EAIs-Restart N sbc_ap.ies id-List-of-EAIs-Restart
+Failed-Cell-List N sbc_ap.ies id-Failed-Cell-List
+
+List-of-5GS-TAIs N sbc_ap.extension id-List-of-5GS-TAIs
+Warning-Area-List-5GS N sbc_ap.extension id-Warning-Area-List-5GS
+Global-RAN-Node-ID N sbc_ap.extension id-Global-RAN-Node-ID
+Global-GNB-ID N sbc_ap.extension id-Global-GNB-ID
+RAT-Selector-5GS N sbc_ap.extension id-RAT-Selector-5GS
+Unknown-5GS-Tracking-Area-List N sbc_ap.extension id-Unknown-5GS-Tracking-Area-List
+Broadcast-Scheduled-Area-List-5GS N sbc_ap.extension id-Broadcast-Scheduled-Area-List-5GS
+Broadcast-Cancelled-Area-List-5GS N sbc_ap.extension id-Broadcast-Cancelled-Area-List-5GS
+Broadcast-Empty-Area-List-5GS N sbc_ap.extension id-Broadcast-Empty-Area-List-5GS
+Restarted-Cell-List-NR N sbc_ap.extension id-Restarted-Cell-List-NR
+Failed-Cell-List-NR N sbc_ap.extension id-Failed-Cell-List-NR
+List-of-5GS-TAI-for-Restart N sbc_ap.extension id-List-of-5GS-TAI-for-Restart
+Warning-Area-Coordinates N sbc_ap.ies id-Warning-Area-Coordinates
+
+
+#SBC-AP-ELEMENTARY-PROCEDURE
+Write-Replace-Warning-Request N sbc_ap.proc.imsg id-Write-Replace-Warning
+Write-Replace-Warning-Response N sbc_ap.proc.sout id-Write-Replace-Warning
+
+Stop-Warning-Request N sbc_ap.proc.imsg id-Stop-Warning
+Stop-Warning-Response N sbc_ap.proc.sout id-Stop-Warning
+
+Error-Indication N sbc_ap.proc.imsg id-Error-Indication
+
+Write-Replace-Warning-Indication N sbc_ap.proc.imsg id-Write-Replace-Warning-Indication
+
+Stop-Warning-Indication N sbc_ap.proc.imsg id-Stop-Warning-Indication
+
+PWS-Restart-Indication N sbc_ap.proc.imsg id-PWS-Restart-Indication
+
+PWS-Failure-Indication N sbc_ap.proc.imsg id-PWS-Failure-Indication
+
+#.END
+
+#.TYPE_ATTR
+Message-Identifier TYPE = FT_UINT16 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = &lte_rrc_messageIdentifier_vals_ext
+
+#.FN_HDR Write-Replace-Warning-Request
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Write-Replace-Warning-Request");
+#.FN_HDR Write-Replace-Warning-Response
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Write-Replace-Warning-Response");
+#.FN_HDR Stop-Warning-Request
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Stop-Warning-Request");
+#.FN_HDR Stop-Warning-Response
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Stop-Warning-Response");
+#.FN_HDR Error-Indication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Error-Indication");
+#.FN_HDR Write-Replace-Warning-Indication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Write-Replace-Warning-Indication");
+#.FN_HDR Stop-Warning-Indication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Stop-Warning-Indication");
+#.FN_HDR PWS-Restart-Indication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWS-Restart-Indication");
+#.FN_HDR PWS-Failure-Indication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWS-Failure-Indication");
+
+#.FN_BODY Message-Identifier VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY Serial-Number VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_sbc_ap_Serial_Number);
+ proto_tree_add_item(subtree, hf_sbc_ap_Serial_Number_gs, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_sbc_ap_Serial_Number_msg_code, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_sbc_ap_Serial_Number_upd_nb, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+Repetition-Period DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+Extended-Repetition-Period DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.FN_BODY Warning-Type VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_sbc_ap_Warning_Type);
+ proto_tree_add_item(subtree, hf_sbc_ap_Warning_Type_value, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_sbc_ap_Warning_Type_emergency_user_alert, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_sbc_ap_Warning_Type_popup, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+
+#.FN_BODY Data-Coding-Scheme VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ proto_tree *subtree;
+
+ subtree = proto_item_add_subtree(actx->created_item, ett_sbc_ap_Data_Coding_Scheme);
+ sbc_ap_data->data_coding_scheme = dissect_cbs_data_coding_scheme(parameter_tvb, actx->pinfo, subtree, 0);
+ }
+
+#.FN_BODY Warning-Message-Content VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo);
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_sbc_ap_Warning_Message_Contents);
+ dissect_s1ap_warningMessageContents(parameter_tvb, subtree, actx->pinfo, sbc_ap_data->data_coding_scheme, hf_sbc_ap_Warning_Message_Contents_nb_pages, hf_sbc_ap_Warning_Message_Contents_decoded_page);
+ }
+
+
+#
+# Editor modelines - https://www.wireshark.org/tools/modelines.html
+#
+# Local variables:
+# c-basic-offset: 2
+# tab-width: 8
+# indent-tabs-mode: nil
+# End:
+#
+# vi: set shiftwidth=2 tabstop=8 expandtab:
+# :indentSize=2:tabSize=8:noTabs=true:
+#