aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/asn1')
-rw-r--r--epan/dissectors/asn1/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/HI2Operations/CMakeLists.txt6
-rw-r--r--epan/dissectors/asn1/HI2Operations/EN301040.asn269
-rw-r--r--epan/dissectors/asn1/HI2Operations/EpsHI2Operations.asn1143
-rw-r--r--epan/dissectors/asn1/HI2Operations/HI2Operations.cnf28
-rw-r--r--epan/dissectors/asn1/HI2Operations/HI2Operations_ver18.asn (renamed from epan/dissectors/asn1/HI2Operations/HI2Operations_ver11.asn)391
-rw-r--r--epan/dissectors/asn1/HI2Operations/HI3CCLinkData.asn66
-rw-r--r--epan/dissectors/asn1/HI2Operations/PCESP.asn365
-rw-r--r--epan/dissectors/asn1/HI2Operations/TS101909201.asn76
-rw-r--r--epan/dissectors/asn1/HI2Operations/UmtsHI2Operations.asn173
-rw-r--r--epan/dissectors/asn1/HI2Operations/packet-HI2Operations-template.c7
-rw-r--r--epan/dissectors/asn1/acp133/packet-acp133-template.c4
-rw-r--r--epan/dissectors/asn1/acse/packet-acse-template.c14
-rw-r--r--epan/dissectors/asn1/ain/ain.cnf6
-rw-r--r--epan/dissectors/asn1/ain/packet-ain-template.c36
-rw-r--r--epan/dissectors/asn1/ansi_map/ansi_map.asn106
-rw-r--r--epan/dissectors/asn1/ansi_map/packet-ansi_map-template.c539
-rw-r--r--epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c60
-rw-r--r--epan/dissectors/asn1/atn-cm/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/atn-cm/packet-atn-cm-template.c9
-rw-r--r--epan/dissectors/asn1/atn-cpdlc/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/atn-cpdlc/packet-atn-cpdlc-template.c9
-rw-r--r--epan/dissectors/asn1/atn-ulcs/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf31
-rw-r--r--epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c50
-rw-r--r--epan/dissectors/asn1/c1222/c1222.cnf2
-rw-r--r--epan/dissectors/asn1/c1222/packet-c1222-template.c185
-rw-r--r--epan/dissectors/asn1/camel/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/camel/camel.cnf56
-rw-r--r--epan/dissectors/asn1/camel/packet-camel-template.c209
-rw-r--r--epan/dissectors/asn1/cbrs-oids/packet-cbrs-oids-template.c4
-rw-r--r--epan/dissectors/asn1/cdt/packet-cdt-template.c6
-rw-r--r--epan/dissectors/asn1/charging_ase/packet-charging_ase-template.c8
-rw-r--r--epan/dissectors/asn1/cmip/packet-cmip-template.c15
-rw-r--r--epan/dissectors/asn1/cmp/cmp.cnf4
-rw-r--r--epan/dissectors/asn1/cmp/packet-cmp-template.c36
-rw-r--r--epan/dissectors/asn1/cms/CryptographicMessageSyntax.asn85
-rw-r--r--epan/dissectors/asn1/cms/cms.cnf115
-rw-r--r--epan/dissectors/asn1/cms/packet-cms-template.c71
-rw-r--r--epan/dissectors/asn1/cms/packet-cms-template.h1
-rw-r--r--epan/dissectors/asn1/credssp/credssp.cnf2
-rw-r--r--epan/dissectors/asn1/credssp/packet-credssp-template.c23
-rw-r--r--epan/dissectors/asn1/crmf/packet-crmf-template.c4
-rw-r--r--epan/dissectors/asn1/dap/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/dap/packet-dap-template.c7
-rw-r--r--epan/dissectors/asn1/disp/packet-disp-template.c15
-rw-r--r--epan/dissectors/asn1/dop/packet-dop-template.c20
-rw-r--r--epan/dissectors/asn1/dsp/packet-dsp-template.c14
-rw-r--r--epan/dissectors/asn1/e1ap/E1AP-CommonDataTypes.asn2
-rw-r--r--epan/dissectors/asn1/e1ap/E1AP-Constants.asn78
-rw-r--r--epan/dissectors/asn1/e1ap/E1AP-Containers.asn2
-rw-r--r--epan/dissectors/asn1/e1ap/E1AP-IEs.asn1107
-rw-r--r--epan/dissectors/asn1/e1ap/E1AP-PDU-Contents.asn644
-rw-r--r--epan/dissectors/asn1/e1ap/E1AP-PDU-Descriptions.asn144
-rw-r--r--epan/dissectors/asn1/e1ap/e1ap.cnf492
-rw-r--r--epan/dissectors/asn1/e1ap/packet-e1ap-template.c77
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/CMakeLists.txt7
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/E2AP-CommonDataTypes.asn4
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/E2AP-Constants.asn146
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/E2AP-Containers.asn88
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/E2AP-IEs.asn474
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/E2AP-PDU-Contents.asn1285
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/E2AP-PDU-Descriptions.asn302
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/e2ap.cnf680
-rwxr-xr-xepan/dissectors/asn1/e2ap/e2sm-kpm-v1.asn426
-rw-r--r--epan/dissectors/asn1/e2ap/e2sm-kpm-v3.00.asn448
-rw-r--r--epan/dissectors/asn1/e2ap/e2sm-ni-v1.00.asn486
-rw-r--r--epan/dissectors/asn1/e2ap/e2sm-rc-v1.03.asn1150
-rw-r--r--epan/dissectors/asn1/e2ap/e2sm-rc-v3.00.asn1332
-rw-r--r--epan/dissectors/asn1/e2ap/e2sm-v3.01.asn573
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/e2ap/packet-e2ap-template.c876
-rw-r--r--epan/dissectors/asn1/ess/packet-ess-template.c8
-rw-r--r--epan/dissectors/asn1/f1ap/F1AP-CommonDataTypes.asn6
-rw-r--r--epan/dissectors/asn1/f1ap/F1AP-Constants.asn355
-rw-r--r--epan/dissectors/asn1/f1ap/F1AP-Containers.asn16
-rw-r--r--epan/dissectors/asn1/f1ap/F1AP-IEs.asn3463
-rw-r--r--epan/dissectors/asn1/f1ap/F1AP-PDU-Contents.asn2061
-rw-r--r--epan/dissectors/asn1/f1ap/F1AP-PDU-Descriptions.asn255
-rw-r--r--epan/dissectors/asn1/f1ap/f1ap.cnf1115
-rw-r--r--epan/dissectors/asn1/f1ap/packet-f1ap-template.c529
-rw-r--r--epan/dissectors/asn1/ftam/packet-ftam-template.c14
-rw-r--r--epan/dissectors/asn1/gdt/CMakeLists.txt34
-rw-r--r--epan/dissectors/asn1/gdt/gdt.asn770
-rw-r--r--epan/dissectors/asn1/gdt/gdt.cnf30
-rw-r--r--epan/dissectors/asn1/gdt/packet-gdt-template.c94
-rw-r--r--epan/dissectors/asn1/gdt/packet-gdt-template.h19
-rw-r--r--epan/dissectors/asn1/glow/packet-glow-template.c5
-rw-r--r--epan/dissectors/asn1/goose/goose.cnf11
-rw-r--r--epan/dissectors/asn1/goose/packet-goose-template.c134
-rw-r--r--epan/dissectors/asn1/gprscdr/GPRSChargingDataTypes.asn2
-rw-r--r--epan/dissectors/asn1/gprscdr/GenericChargingDataTypes.asn2
-rw-r--r--epan/dissectors/asn1/gprscdr/gprscdr.cnf4
-rw-r--r--epan/dissectors/asn1/gprscdr/packet-gprscdr-template.c25
-rw-r--r--epan/dissectors/asn1/gsm_map/GSMMAP.asn5
-rw-r--r--epan/dissectors/asn1/gsm_map/gsm_map.cnf11
-rw-r--r--epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c300
-rw-r--r--epan/dissectors/asn1/h225/h225.cnf40
-rw-r--r--epan/dissectors/asn1/h225/packet-h225-template.c35
-rw-r--r--epan/dissectors/asn1/h225/packet-h225-template.h4
-rw-r--r--epan/dissectors/asn1/h235/packet-h235-template.c2
-rw-r--r--epan/dissectors/asn1/h245/h245.cnf32
-rw-r--r--epan/dissectors/asn1/h245/packet-h245-template.c33
-rw-r--r--epan/dissectors/asn1/h245/packet-h245-template.h4
-rw-r--r--epan/dissectors/asn1/h248/h248.cnf2
-rw-r--r--epan/dissectors/asn1/h248/packet-h248-template.c165
-rw-r--r--epan/dissectors/asn1/h282/packet-h282-template.c4
-rw-r--r--epan/dissectors/asn1/h283/packet-h283-template.c4
-rw-r--r--epan/dissectors/asn1/h323/packet-h323-template.c2
-rw-r--r--epan/dissectors/asn1/h450-ros/packet-h450-ros-template.c4
-rw-r--r--epan/dissectors/asn1/h450/packet-h450-template.c34
-rw-r--r--epan/dissectors/asn1/h460/packet-h460-template.c8
-rw-r--r--epan/dissectors/asn1/h501/packet-h501-template.c15
-rw-r--r--epan/dissectors/asn1/hnbap/hnbap.cnf5
-rw-r--r--epan/dissectors/asn1/hnbap/packet-hnbap-template.c25
-rw-r--r--epan/dissectors/asn1/idmp/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/idmp/packet-idmp-template.c40
-rw-r--r--epan/dissectors/asn1/idmp/packet-idmp-template.h2
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/CMakeLists.txt4
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/IEEE1609dot12.asn6
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2BaseTypes.asn1522
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2DataTypes.asn314
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2.asn1470
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2Crl.asn104
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2CrlBaseTypes.asn469
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/ieee1609dot2.cnf17
-rw-r--r--epan/dissectors/asn1/ieee1609dot2/packet-ieee1609dot2-template.c25
-rw-r--r--epan/dissectors/asn1/ilp/ilp.cnf4
-rw-r--r--epan/dissectors/asn1/ilp/packet-ilp-template.c19
-rw-r--r--epan/dissectors/asn1/inap/inap.cnf4
-rw-r--r--epan/dissectors/asn1/inap/packet-inap-template.c68
-rw-r--r--epan/dissectors/asn1/isdn-sup/packet-isdn-sup-template.c39
-rw-r--r--epan/dissectors/asn1/its/CAM-PDU-Descriptions.asn336
-rw-r--r--epan/dissectors/asn1/its/CAM.asn20
-rw-r--r--epan/dissectors/asn1/its/CAMv2.asn139
-rw-r--r--epan/dissectors/asn1/its/CMakeLists.txt20
-rw-r--r--epan/dissectors/asn1/its/CPM-OriginatingStationContainers.asn28
-rw-r--r--epan/dissectors/asn1/its/CPM-PDU-Descriptions.asn545
-rw-r--r--epan/dissectors/asn1/its/CPM-PerceivedObjectContainer.asn21
-rw-r--r--epan/dissectors/asn1/its/CPM-PerceptionRegionContainer.asn29
-rw-r--r--epan/dissectors/asn1/its/CPM-SensorInformationContainer.asn26
-rw-r--r--epan/dissectors/asn1/its/DENM-PDU-Descriptions.asn113
-rw-r--r--epan/dissectors/asn1/its/DENM.asn13
-rw-r--r--epan/dissectors/asn1/its/ETSI-ITS-CDD.asn2135
-rw-r--r--epan/dissectors/asn1/its/ETSI_TS_103301.asn358
-rw-r--r--epan/dissectors/asn1/its/EVCSN-PDU-Descriptions.asn5
-rw-r--r--epan/dissectors/asn1/its/IMZM-PDU-Descriptions.asn264
-rw-r--r--epan/dissectors/asn1/its/ISO19321IVIv2.asn14
-rw-r--r--epan/dissectors/asn1/its/ISO_TS_19091.asn17
-rw-r--r--epan/dissectors/asn1/its/ITS-Container.asn375
-rw-r--r--epan/dissectors/asn1/its/TIS_TPG_Transactions_Descriptions.asn7
-rw-r--r--epan/dissectors/asn1/its/VAM-PDU-Descriptions.asn98
-rw-r--r--epan/dissectors/asn1/its/VAM-Temp-Imports.asn122
-rw-r--r--epan/dissectors/asn1/its/its.cnf157
-rw-r--r--epan/dissectors/asn1/its/packet-its-template.c625
-rw-r--r--epan/dissectors/asn1/its/packet-its-template.h1
-rw-r--r--epan/dissectors/asn1/kerberos/k5.asn3
-rw-r--r--epan/dissectors/asn1/kerberos/kerberos.cnf46
-rw-r--r--epan/dissectors/asn1/kerberos/packet-kerberos-template.c957
-rw-r--r--epan/dissectors/asn1/kpm-v2/CMakeLists.txt39
-rw-r--r--epan/dissectors/asn1/kpm-v2/e2sm-kpm-v2.02.asn384
-rw-r--r--epan/dissectors/asn1/kpm-v2/e2sm-v3.01.asn388
-rw-r--r--epan/dissectors/asn1/kpm-v2/kpm-v2.cnf84
-rw-r--r--epan/dissectors/asn1/kpm-v2/packet-kpm-v2-template.c122
-rw-r--r--epan/dissectors/asn1/lcsap/LCS-AP-CommonDataTypes.asn3
-rw-r--r--epan/dissectors/asn1/lcsap/LCS-AP-Constants.asn9
-rw-r--r--epan/dissectors/asn1/lcsap/LCS-AP-Containers.asn3
-rw-r--r--epan/dissectors/asn1/lcsap/LCS-AP-IEs.asn78
-rw-r--r--epan/dissectors/asn1/lcsap/LCS-AP-PDU-Contents.asn17
-rw-r--r--epan/dissectors/asn1/lcsap/LCS-AP-PDU-Descriptions.asn3
-rw-r--r--epan/dissectors/asn1/lcsap/lcsap.cnf77
-rw-r--r--epan/dissectors/asn1/lcsap/packet-lcsap-template.c59
-rw-r--r--epan/dissectors/asn1/ldap/ldap.cnf23
-rw-r--r--epan/dissectors/asn1/ldap/packet-ldap-template.c374
-rw-r--r--epan/dissectors/asn1/ldap/packet-ldap-template.h2
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/lix2/CMakeLists.txt0
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/lix2/lix2.asn3781
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/lix2/lix2.cnf10
-rw-r--r--[-rwxr-xr-x]epan/dissectors/asn1/lix2/packet-lix2-template.c6
-rw-r--r--epan/dissectors/asn1/lnpdqp/packet-lnpdqp-template.c36
-rw-r--r--epan/dissectors/asn1/logotypecertextn/packet-logotypecertextn-template.c2
-rw-r--r--epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn12
-rw-r--r--epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn1873
-rw-r--r--epan/dissectors/asn1/lpp/lpp.cnf56
-rw-r--r--epan/dissectors/asn1/lpp/packet-lpp-template.c503
-rw-r--r--epan/dissectors/asn1/lpp/packet-lpp-template.h10
-rw-r--r--epan/dissectors/asn1/lppa/lppa.cnf7
-rw-r--r--epan/dissectors/asn1/lppa/packet-lppa-template.c4
-rw-r--r--epan/dissectors/asn1/lppe/packet-lppe-template.c6
-rw-r--r--epan/dissectors/asn1/lte-rrc/CMakeLists.txt5
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn19
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn927
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn17
-rw-r--r--epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn9
-rw-r--r--epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn330
-rw-r--r--epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn2
-rw-r--r--epan/dissectors/asn1/lte-rrc/lte-rrc.cnf165
-rw-r--r--epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c642
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn6
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-Constants.asn14
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-Containers.asn2
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-IEs.asn52
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn21
-rw-r--r--epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn10
-rw-r--r--epan/dissectors/asn1/m2ap/m2ap.cnf8
-rw-r--r--epan/dissectors/asn1/m2ap/packet-m2ap-template.c18
-rw-r--r--epan/dissectors/asn1/m3ap/packet-m3ap-template.c14
-rw-r--r--epan/dissectors/asn1/mms/mms.cnf15
-rw-r--r--epan/dissectors/asn1/mms/packet-mms-template.c16
-rw-r--r--epan/dissectors/asn1/mpeg-audio/packet-mpeg-audio-template.c156
-rw-r--r--epan/dissectors/asn1/mpeg-pes/mpeg-pes.cnf1
-rw-r--r--epan/dissectors/asn1/mpeg-pes/packet-mpeg-pes-template.c175
-rw-r--r--epan/dissectors/asn1/mudurl/packet-mudurl-template.c2
-rw-r--r--epan/dissectors/asn1/nbap/nbap.cnf51
-rw-r--r--epan/dissectors/asn1/nbap/packet-nbap-template.c47
-rw-r--r--epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn8
-rw-r--r--epan/dissectors/asn1/ngap/NGAP-Constants.asn256
-rw-r--r--epan/dissectors/asn1/ngap/NGAP-Containers.asn16
-rw-r--r--epan/dissectors/asn1/ngap/NGAP-IEs.asn1809
-rw-r--r--epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn791
-rw-r--r--epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn140
-rw-r--r--epan/dissectors/asn1/ngap/ngap.cnf1629
-rw-r--r--epan/dissectors/asn1/ngap/packet-ngap-template.c794
-rw-r--r--epan/dissectors/asn1/nist-csor/packet-nist-csor-template.c2
-rw-r--r--epan/dissectors/asn1/novell_pkis/packet-novell_pkis-template.c4
-rw-r--r--epan/dissectors/asn1/nr-rrc/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/nr-rrc/NR-InterNodeDefinitions.asn169
-rw-r--r--epan/dissectors/asn1/nr-rrc/NR-RRC-Definitions.asn6867
-rw-r--r--epan/dissectors/asn1/nr-rrc/NR-Sidelink-DiscoveryMessage.asn17
-rw-r--r--epan/dissectors/asn1/nr-rrc/NR-Sidelink-Preconf.asn39
-rw-r--r--epan/dissectors/asn1/nr-rrc/NR-UE-Variables.asn46
-rw-r--r--epan/dissectors/asn1/nr-rrc/PC5-RRC-Definitions.asn218
-rw-r--r--epan/dissectors/asn1/nr-rrc/nr-rrc.cnf321
-rw-r--r--epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c497
-rw-r--r--epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h3
-rw-r--r--epan/dissectors/asn1/nrppa/NRPPA-CommonDataTypes.asn6
-rw-r--r--epan/dissectors/asn1/nrppa/NRPPA-Constants.asn74
-rw-r--r--epan/dissectors/asn1/nrppa/NRPPA-Containers.asn16
-rw-r--r--epan/dissectors/asn1/nrppa/NRPPA-IEs.asn1078
-rw-r--r--epan/dissectors/asn1/nrppa/NRPPA-PDU-Contents.asn255
-rw-r--r--epan/dissectors/asn1/nrppa/NRPPA-PDU-Descriptions.asn50
-rw-r--r--epan/dissectors/asn1/nrppa/nrppa.cnf244
-rw-r--r--epan/dissectors/asn1/nrppa/packet-nrppa-template.c11
-rw-r--r--epan/dissectors/asn1/ns_cert_exts/packet-ns_cert_exts-template.c2
-rw-r--r--epan/dissectors/asn1/ocsp/ocsp.cnf2
-rw-r--r--epan/dissectors/asn1/ocsp/packet-ocsp-template.c18
-rw-r--r--epan/dissectors/asn1/ocsp/packet-ocsp-template.h2
-rw-r--r--epan/dissectors/asn1/p1/p1.cnf30
-rw-r--r--epan/dissectors/asn1/p1/packet-p1-template.c42
-rw-r--r--epan/dissectors/asn1/p22/p22.cnf10
-rw-r--r--epan/dissectors/asn1/p22/packet-p22-template.c5
-rw-r--r--epan/dissectors/asn1/p7/CMakeLists.txt2
-rw-r--r--epan/dissectors/asn1/p7/packet-p7-template.c5
-rw-r--r--epan/dissectors/asn1/p772/packet-p772-template.c4
-rw-r--r--epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn6
-rw-r--r--epan/dissectors/asn1/pcap/PCAP-Constants.asn43
-rw-r--r--epan/dissectors/asn1/pcap/PCAP-Containers.asn14
-rw-r--r--epan/dissectors/asn1/pcap/PCAP-IEs.asn488
-rw-r--r--epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn99
-rw-r--r--epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn8
-rw-r--r--epan/dissectors/asn1/pcap/packet-pcap-template.c34
-rw-r--r--epan/dissectors/asn1/pcap/pcap.cnf34
-rw-r--r--epan/dissectors/asn1/pkcs1/packet-pkcs1-template.c53
-rw-r--r--epan/dissectors/asn1/pkcs10/packet-pkcs10-template.c9
-rw-r--r--epan/dissectors/asn1/pkcs12/packet-pkcs12-template.c12
-rw-r--r--epan/dissectors/asn1/pkinit/PKINIT.asn10
-rw-r--r--epan/dissectors/asn1/pkinit/packet-pkinit-template.c17
-rw-r--r--epan/dissectors/asn1/pkinit/pkinit.cnf14
-rw-r--r--epan/dissectors/asn1/pkix1explicit/PKIX1EXPLICIT93.asn56
-rw-r--r--epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.c22
-rw-r--r--epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.h14
-rw-r--r--epan/dissectors/asn1/pkix1explicit/pkix1explicit.cnf6
-rw-r--r--epan/dissectors/asn1/pkix1implicit/PKIX1IMPLICIT93.asn20
-rw-r--r--epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.c8
-rw-r--r--epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.h4
-rw-r--r--epan/dissectors/asn1/pkixac/packet-pkixac-template.c4
-rw-r--r--epan/dissectors/asn1/pkixproxy/packet-pkixproxy-template.c2
-rw-r--r--epan/dissectors/asn1/pkixqualified/packet-pkixqualified-template.c2
-rw-r--r--epan/dissectors/asn1/pkixqualified/pkixqualified.cnf3
-rw-r--r--epan/dissectors/asn1/pkixtsp/packet-pkixtsp-template.c16
-rw-r--r--epan/dissectors/asn1/pres/packet-pres-template.c22
-rw-r--r--epan/dissectors/asn1/q932-ros/packet-q932-ros-template.c4
-rw-r--r--epan/dissectors/asn1/q932/packet-q932-template.c41
-rw-r--r--epan/dissectors/asn1/qsig/packet-qsig-template.c66
-rw-r--r--epan/dissectors/asn1/ranap/packet-ranap-template.c49
-rw-r--r--epan/dissectors/asn1/rnsap/packet-rnsap-template.c23
-rw-r--r--epan/dissectors/asn1/rnsap/rnsap.cnf10
-rw-r--r--epan/dissectors/asn1/ros/packet-ros-template.c36
-rw-r--r--epan/dissectors/asn1/ros/ros-rej.cnf2
-rw-r--r--epan/dissectors/asn1/rrc/Constant-definitions.asn6
-rw-r--r--epan/dissectors/asn1/rrc/InformationElements.asn742
-rw-r--r--epan/dissectors/asn1/rrc/Internode-definitions.asn152
-rw-r--r--epan/dissectors/asn1/rrc/PDU-definitions.asn420
-rw-r--r--epan/dissectors/asn1/rrc/packet-rrc-template.c43
-rw-r--r--epan/dissectors/asn1/rrc/packet-rrc-template.h4
-rw-r--r--epan/dissectors/asn1/rrc/rrc.cnf70
-rw-r--r--epan/dissectors/asn1/rrlp/packet-rrlp-template.c4
-rw-r--r--epan/dissectors/asn1/rtse/packet-rtse-template.c44
-rw-r--r--epan/dissectors/asn1/rtse/rtse.cnf4
-rw-r--r--epan/dissectors/asn1/rua/packet-rua-template.c28
-rw-r--r--epan/dissectors/asn1/rua/rua.cnf5
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn2
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-Constants.asn121
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-Containers.asn2
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-IEs.asn278
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn143
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn2
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn4
-rw-r--r--epan/dissectors/asn1/s1ap/packet-s1ap-template.c313
-rw-r--r--epan/dissectors/asn1/s1ap/s1ap.cnf146
-rw-r--r--epan/dissectors/asn1/sabp/packet-sabp-template.c30
-rw-r--r--epan/dissectors/asn1/sabp/sabp.cnf7
-rw-r--r--epan/dissectors/asn1/sbc-ap/packet-sbc-ap-template.c35
-rw-r--r--epan/dissectors/asn1/smrse/packet-smrse-template.c20
-rw-r--r--epan/dissectors/asn1/smrse/smrse.cnf5
-rw-r--r--epan/dissectors/asn1/snmp/packet-snmp-template.c340
-rw-r--r--epan/dissectors/asn1/snmp/snmp.cnf6
-rw-r--r--epan/dissectors/asn1/spnego/packet-spnego-template.c89
-rw-r--r--epan/dissectors/asn1/spnego/spnego.cnf2
-rw-r--r--epan/dissectors/asn1/sv/packet-sv-template.c84
-rw-r--r--epan/dissectors/asn1/sv/sv.cnf7
-rw-r--r--epan/dissectors/asn1/t124/packet-t124-template.c14
-rw-r--r--epan/dissectors/asn1/t124/packet-t124-template.h2
-rw-r--r--epan/dissectors/asn1/t124/t124.cnf3
-rw-r--r--epan/dissectors/asn1/t125/packet-t125-template.c12
-rw-r--r--epan/dissectors/asn1/t38/packet-t38-template.c67
-rw-r--r--epan/dissectors/asn1/t38/packet-t38-template.h9
-rw-r--r--epan/dissectors/asn1/t38/t38.cnf73
-rw-r--r--epan/dissectors/asn1/tcap/packet-tcap-template.c91
-rw-r--r--epan/dissectors/asn1/tcap/packet-tcap-template.h6
-rw-r--r--epan/dissectors/asn1/tcap/tcap.cnf4
-rw-r--r--epan/dissectors/asn1/tcg-cp-oids/packet-tcg-cp-oids-template.c4
-rw-r--r--epan/dissectors/asn1/tetra/packet-tetra-template.c57
-rw-r--r--epan/dissectors/asn1/ulp/packet-ulp-template.c123
-rw-r--r--epan/dissectors/asn1/ulp/ulp.cnf10
-rw-r--r--epan/dissectors/asn1/wlancertextn/packet-wlancertextn-template.c2
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn6
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-Constants.asn91
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-Containers.asn18
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-IEs.asn509
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn233
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn44
-rw-r--r--epan/dissectors/asn1/x2ap/packet-x2ap-template.c336
-rw-r--r--epan/dissectors/asn1/x2ap/x2ap.cnf146
-rw-r--r--epan/dissectors/asn1/x509af/packet-x509af-template.c16
-rw-r--r--epan/dissectors/asn1/x509af/x509af.cnf11
-rw-r--r--epan/dissectors/asn1/x509ce/CMakeLists.txt1
-rw-r--r--epan/dissectors/asn1/x509ce/CertificateExtensions.asn27
-rw-r--r--epan/dissectors/asn1/x509ce/CertificateExtensionsCiplus.asn10
-rw-r--r--epan/dissectors/asn1/x509ce/CertificateExtensionsRFC9310.asn28
-rw-r--r--epan/dissectors/asn1/x509ce/packet-x509ce-template.c45
-rw-r--r--epan/dissectors/asn1/x509ce/x509ce.cnf28
-rw-r--r--epan/dissectors/asn1/x509if/packet-x509if-template.c22
-rw-r--r--epan/dissectors/asn1/x509if/x509if.cnf49
-rw-r--r--epan/dissectors/asn1/x509sat/packet-x509sat-template.c4
-rw-r--r--epan/dissectors/asn1/x509sat/x509sat.cnf14
-rw-r--r--epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn2
-rw-r--r--epan/dissectors/asn1/xnap/XnAP-Constants.asn194
-rw-r--r--epan/dissectors/asn1/xnap/XnAP-Containers.asn4
-rw-r--r--epan/dissectors/asn1/xnap/XnAP-IEs.asn2536
-rw-r--r--epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn1043
-rw-r--r--epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn127
-rw-r--r--epan/dissectors/asn1/xnap/packet-xnap-template.c226
-rw-r--r--epan/dissectors/asn1/xnap/xnap.cnf1243
-rw-r--r--epan/dissectors/asn1/z3950/packet-z3950-template.c114
366 files changed, 59814 insertions, 13756 deletions
diff --git a/epan/dissectors/asn1/CMakeLists.txt b/epan/dissectors/asn1/CMakeLists.txt
index f1b9fae734..e6ea5f4255 100644
--- a/epan/dissectors/asn1/CMakeLists.txt
+++ b/epan/dissectors/asn1/CMakeLists.txt
@@ -39,6 +39,7 @@ set(ASN1_SRC_DIRS
ess
f1ap
ftam
+ gdt
glow
goose
gprscdr
@@ -62,6 +63,7 @@ set(ASN1_SRC_DIRS
isdn-sup
its
kerberos
+ kpm-v2
lcsap
ldap
lnpdqp
diff --git a/epan/dissectors/asn1/HI2Operations/CMakeLists.txt b/epan/dissectors/asn1/HI2Operations/CMakeLists.txt
index f93730a923..35eac96abe 100644
--- a/epan/dissectors/asn1/HI2Operations/CMakeLists.txt
+++ b/epan/dissectors/asn1/HI2Operations/CMakeLists.txt
@@ -10,12 +10,10 @@
set( PROTOCOL_NAME HI2Operations )
set( ASN_FILE_LIST
- HI2Operations_ver11.asn
+ HI2Operations_ver18.asn
HI3CCLinkData.asn
+ EpsHI2Operations.asn
UmtsHI2Operations.asn
- TS101909201.asn
- PCESP.asn
- EN301040.asn
)
set( EXTRA_DIST
diff --git a/epan/dissectors/asn1/HI2Operations/EN301040.asn b/epan/dissectors/asn1/HI2Operations/EN301040.asn
deleted file mode 100644
index 8c385db6c1..0000000000
--- a/epan/dissectors/asn1/HI2Operations/EN301040.asn
+++ /dev/null
@@ -1,269 +0,0 @@
-EN301040 {itu-t (0) identified-organization (4) etsi (0) en301040 (1040) interceptVersion (0)}
-
-DEFINITIONS AUTOMATIC TAGS ::=
-
-BEGIN
-
-LIACTIVATEreq ::= SEQUENCE
-{
- timeStamp UTCTime,
- invokeId INTEGER,
- targetAddress AddressType,
- expiryDateTime UTCTime,
- targetname VisibleString OPTIONAL,
- additionaltargetdata VisibleString OPTIONAL,
- monitorServiceList SEQUENCE OF ActivityType
-}
-
-LIACTIVATEconf ::= SEQUENCE
-{
- timeStamp UTCTime,
- invokeId INTEGER,
- result BOOLEAN,
- tLIInstanceid TLIIdType OPTIONAL -- Conditional on value of Result --
-}
-
-LIMODIFYreq ::= SEQUENCE
-{
- tLIInstanceid TLIIdType,
- timestamp UTCTime,
- modificationNumber INTEGER,
- modificationType CHOICE
- {
- halt BOOLEAN,
- reset BOOLEAN,
- expiryDateTime UTCTime,
- targetname VisibleString,
- additionaltargetdata VisibleString,
- monitorServiceList SEQUENCE OF ActivityType
- }
-}
-
-LIMODIFYconf ::= SEQUENCE
-{
- tLIInstanceid TLIIdType,
- timestamp UTCTime,
- modificationNumber INTEGER,
- result BOOLEAN
-}
-
-LISTATUSind ::= SEQUENCE
-{
- tLIInstanceid TLIIdType,
- timestamp UTCTime,
- tETRASysStatus StatusType
-}
-
-TARGETACTIVITYMONITORind ::= SEQUENCE
-{
- tLIInstanceid TLIIdType, -- header, who --
- timestamp UTCTime, -- header, when --
- targetLocation LocationType-en301040, -- header, where --
- targetAction ActivityType,
- supplementaryTargetaddress AddressType OPTIONAL,
- cotargetaddress SEQUENCE OF AddressType OPTIONAL,
- cotargetlocation SEQUENCE OF LocationType-en301040 OPTIONAL
-}
-
-TARGETCOMMSMONITORind ::= SEQUENCE
-{
- tLIInstanceid TLIIdType,
- timestamp UTCTime,
- targetlocation LocationType-en301040,
- supplementaryTargetaddress AddressType OPTIONAL,
- targetcommsid CircuitIdType,
- cotargetaddress SEQUENCE OF AddressType OPTIONAL,
- cotargetcommsid SEQUENCE OF CircuitIdType OPTIONAL
-}
-
-TTRAFFICind ::= SEQUENCE
-{
- tLIInstanceid TLIIdType,
- trafficPacket BIT STRING
-}
-
-CTTRAFFICind ::= SEQUENCE
-{
- tLIInstanceid TLIIdType,
- trafficPacket BIT STRING
-}
-
-
-ActivityClassType ::= ENUMERATED
-{
- allServices,
- tETRASpeech,
- singleSlotData24,
- singleSlotData48,
- singleSlotData72,
- multiSlotData224,
- multiSlotData248,
- multiSlotData272,
- multiSlotData324,
- multiSlotData348,
- multiSlotData372,
- multiSlotData424,
- multiSlotData448,
- multiSlotData472,
- sDSType1,
- sDSType2,
- sDSType3,
- sDSType4,
- status,
- sDSACKType1,
- sDSACKType2,
- sDSACKType3,
- sDSACKType4,
- statusack,
- sDSAcknowledgementsuccess,
- sDSAcknowledgementfail,
- sCLNSPacketData,
- cONSPacketData,
- internetProtocol,
- swMIauthenticationsuccess,
- swMIauthenticationfail,
- iTSIauthenticationsuccess,
- iTSIauthenticationfail,
- oTARSCKsuccess,
- oTARSCKfail,
- oTARGCKsuccess,
- oTARGCKfail,
- oTARCCKsuccess,
- oTARCCKfail,
- tARGETSUSCRIPTIONDISABLEDT,
- tARGETEQUIPMENTDISABLEDT,
- tARGETSUSCRIPTIONDISABLEDP,
- tARGETEQUIPEMENTDISABLEDP,
- tARGETSUBSCRIPTIONENABLED,
- tARGETEQUIPMENTENABLED,
- sessionregistration,
- sessionderegistration,
- mIGRATION,
- rOAMING,
- supplementaryService
-}
-
-ActivityType::= SEQUENCE
-{
- cctivity ActivityClassType,
- callRelation ENUMERATED
- {
- begin,
- end,
- continue,
- report
- },
- direction ENUMERATED
- {
- toTarget,
- fromTarget
- } OPTIONAL,
- scope ENUMERATED
- {
- point2Point,
- point2MultiPoint,
- broadcast
- } OPTIONAL,
- cPlaneData BIT STRING OPTIONAL,
- sStype SSType OPTIONAL
-}
-
-AddressType ::= SEQUENCE
-{
- tSI TSIType,
- supplementaryAddress SEQUENCE OF TETRAAddressType OPTIONAL
-}
-
-TETRAAddressType ::= CHOICE
-{
- tETRAaddress TSIType,
- pISNaddress NumericString (SIZE (20)),
- iP4address BIT STRING (SIZE (32)), -- 32 bits --
- iP6address BIT STRING (SIZE (128)), -- 128 bits --
- e164address NumericString (SIZE (20)),
- tEI TEIType
-}
-
-
-CellIdType ::= BIT STRING (SIZE (16)) -- 16 bits --
-
-LocationAreaType ::= BIT STRING (SIZE (14)) -- 14 bits, as defined in ETS 300 392-2 --
-
-LocationType-en301040 ::= CHOICE
-{
- mSLoc TETRACGIType,
- lSLoc TETRAAddressType
-}
-
-
-MCCType ::= BIT STRING (SIZE (10)) -- 10 bits, as defined in ETS 300 392-1 --
-
-MNCType ::= BIT STRING (SIZE (14)) -- 14 bits, as defined in ETS 300 392-1 --
-
-SSIType ::= BIT STRING (SIZE (24)) -- 24 bits, as defined in ETS 300 392-1 --
-
-CircuitIdType ::= NumericString (SIZE (20))
-
-SSType ::= ENUMERATED
-{
- ambienceListening,
- adviceofCharge,
- accessPriority,
- areaSelection,
- barringofIncomingCalls,
- barringofOutgoingCalls,
- callAuthorizedbyDispatcher,
- callCompletiontoBusySubscriber,
- callCompletiononNoReply,
- callForwardingonBusy,
- callForwardingonNoReply,
- callForwardingonNotReachable,
- callForwardingUnconditional,
- callingLineIdentificationPresentation,
- callingConnectedLineIdentificationRestriction,
- connectedLineIdentificationPresentation,
- callReport,
- callRetention,
- callWaiting,
- dynamicGroupNumberAssignment,
- discreetListening,
- callHold,
- includeCall,
- lateEntry,
- listSearchCall,
- priorityCall,
- preemptivePriorityCall,
- shortNumberAddressing,
- transferofControl,
- talkingPartyIdentification
-}
-
-StatusType ::= ENUMERATED
-{
- networkFullyAvailable,
- networkErrorsAffectingIntercept,
- reconfigurationInProgress,
- sessionExpired,
- gatewayServicesUnavailable
-}
-
-TETRACGIType ::= SEQUENCE
-{
- mcc MCCType,
- mnc MNCType,
- lai LocationAreaType,
- cI CellIdType OPTIONAL
-}
-
-TLIIdType ::= BIT STRING (SIZE (16)) -- 16 bits --
-
-TSIType ::= SEQUENCE
-{
- mcc MCCType,
- mnc MNCType,
- ssi SSIType
-}
-
-TEIType ::= BIT STRING (SIZE (60)) -- 60 bits, as defined in ETS 300 392-1 --
-
-END
diff --git a/epan/dissectors/asn1/HI2Operations/EpsHI2Operations.asn b/epan/dissectors/asn1/HI2Operations/EpsHI2Operations.asn
new file mode 100644
index 0000000000..459c86b129
--- /dev/null
+++ b/epan/dissectors/asn1/HI2Operations/EpsHI2Operations.asn
@@ -0,0 +1,1143 @@
+--- WS Modified EpsHI2Operations, some defines was merged in HI2Operations or fully moved there
+---
+
+EpsHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2)
+threeGPP(4) hi2eps(8) r16 (16) version-1 (1)}
+DEFINITIONS IMPLICIT TAGS ::=
+BEGIN
+IMPORTS
+ GSMLocation,
+ LawfulInterceptionIdentifier,
+ TimeStamp,
+ MapDatum,
+ Network-Identifier,
+ National-Parameters,
+ National-HI2-ASN1parameters,
+ DataNodeAddress,
+ IPAddress,
+ IP-value,
+ PartyInformation,
+ SMS-report,
+ UMTSLocation,
+ X25Address
+ FROM HI2Operations
+ {itu-t(0) identified-organization(4) etsi(0) securityDomain(2)
+ lawfulIntercept(2) hi2(1) version18(18)} -- Imported from TS 101 671 v3.14.1
+
+ CivicAddress,
+ ExtendedLocParameters,
+ LocationErrorCode
+ FROM UmtsHI2Operations
+ {itu-t(0) identified-organization(4) etsi(0) securityDomain(2)
+ lawfulintercept(2) threeGPP(4) hi2(1) r16 (16) version-0 (0)};
+ -- Imported from 3GPP TS 33.108, UMTS PS HI2
+
+-- Object Identifier Definitions
+-- Security DomainId
+-- WS Allready in HI2... lawfulInterceptDomainId OBJECT IDENTIFIER ::= {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2)}
+-- Security Subdomains
+threeGPPSUBDomainId OBJECT IDENTIFIER ::= {lawfulInterceptDomainId threeGPP(4)}
+hi2epsDomainId OBJECT IDENTIFIER ::= {threeGPPSUBDomainId hi2eps(8) r16(16) version-1 (1)}
+EpsIRIsContent ::= CHOICE
+{
+ epsiRIContent EpsIRIContent,
+ epsIRISequence EpsIRISequence
+}
+EpsIRISequence ::= SEQUENCE OF EpsIRIContent
+-- Aggregation of EpsIRIContent is an optional feature.
+-- It may be applied in cases when at a given point in time
+-- several IRI records are available for delivery to the same LEA destination.
+-- As a general rule, records created at any event shall be sent
+-- immediately and not withheld in the DF or MF in order to
+-- apply aggragation.
+-- When aggregation is not to be applied,
+-- EpsIRIContent needs to be chosen.
+-- EpsIRIContent includes events that correspond to EPS and UMTS/GPRS.
+EpsIRIContent ::= CHOICE
+{
+ iRI-Begin-record [1] IRI-Parameters, -- include at least one optional parameter
+ iRI-End-record [2] IRI-Parameters,
+ iRI-Continue-record [3] IRI-Parameters, -- include at least one optional parameter
+ iRI-Report-record [4] IRI-Parameters -- include at least one optional parameter
+}
+-- the EpsIRIContent may provide events that correspond to UMTS/GPRS as well.
+-- Parameters having the same tag numbers have to be identical in Rel-5 and onwards modules.
+IRI-Parameters ::= SEQUENCE
+{
+ hi2epsDomainId [0] OBJECT IDENTIFIER, -- 3GPP HI2 EPS domain
+ lawfulInterceptionIdentifier [1] LawfulInterceptionIdentifier,
+ -- This identifier is associated to the target.
+ timeStamp [3] TimeStamp,
+ -- date and time of the event triggering the report.)
+ initiator [4] ENUMERATED
+ {
+ not-Available (0),
+ originating-Target (1),
+ -- in case of GPRS, this indicates that the PDP context activation, modification
+ -- or deactivation is MS requested
+ -- in case of EPS, this indicated that the EPS detach, bearer activation, modification
+ -- or deactivation is UE requested
+ terminating-Target (2),
+ -- in case of GPRS, this indicates that the PDP context activation, modification or
+ -- deactivation is network initiated
+ -- in case of EPS, this indicated that the EPS detach, bearer activation, modification
+ -- or deactivation is network initiated
+ ...
+ } OPTIONAL,
+ locationOfTheTarget [8] Location OPTIONAL,
+ -- location of the target
+ -- or cell site location
+ partyInformation [9] SET SIZE (1..10) OF PartyInformation OPTIONAL,
+ -- This parameter provides the concerned party, the identiy(ies) of the party
+ --)and all the information provided by the party.
+ serviceCenterAddress [13] PartyInformation OPTIONAL,
+ -- e.g. in case of SMS message this parameter provides the address of the relevant
+ -- server
+ sMS [14] SMS-report OPTIONAL,
+ -- this parameter provides the SMS content and associated information
+ national-Parameters [16] National-Parameters OPTIONAL,
+ ePSCorrelationNumber [18] EPSCorrelationNumber OPTIONAL,
+ -- this parameter provides GPRS Correlation number when the event corresponds to UMTS/GPRS.
+ ePSevent [20] EPSEvent OPTIONAL,
+ -- This information is used to provide particular action of the target
+ -- such as attach/detach
+ sgsnAddress [21] DataNodeAddress OPTIONAL,
+ gPRSOperationErrorCode [22] GPRSOperationErrorCode OPTIONAL,
+ ggsnAddress [24] DataNodeAddress OPTIONAL,
+ qOS [25] UmtsQos OPTIONAL,
+ networkIdentifier [26] Network-Identifier OPTIONAL,
+ sMSOriginatingAddress [27] DataNodeAddress OPTIONAL,
+ sMSTerminatingAddress [28] DataNodeAddress OPTIONAL,
+ iMSevent [29] IMSevent OPTIONAL,
+ sIPMessage [30] OCTET STRING OPTIONAL,
+ servingSGSN-number [31] OCTET STRING (SIZE (1..20)) OPTIONAL,
+ servingSGSN-address [32] OCTET STRING (SIZE (5..17)) OPTIONAL,
+ -- Octets are coded according to 3GPP TS 23.003 [25]
+ ...,
+ -- Tag [33] was taken into use by ETSI module in TS 101 671v2.13.1
+ ldiEvent [34] LDIevent OPTIONAL,
+ correlation [35] CorrelationValues OPTIONAL,
+ ePS-GTPV2-specificParameters [36] EPS-GTPV2-SpecificParameters OPTIONAL,
+ -- contains parameters to be used in case of GTPV2 based intercepted messages
+ ePS-PMIP-specificParameters [37] EPS-PMIP-SpecificParameters OPTIONAL,
+ -- contains parameters to be used in case of PMIP based intercepted messages
+ ePS-DSMIP-SpecificParameters [38] EPS-DSMIP-SpecificParameters OPTIONAL,
+ -- contains parameters to be used in case of DSMIP based intercepted messages
+ ePS-MIP-SpecificParameters [39] EPS-MIP-SpecificParameters OPTIONAL,
+ -- contains parameters to be used in case of MIP based intercepted messages
+ servingNodeAddress [40] OCTET STRING OPTIONAL,
+ -- this parameter is kept for backward compatibility only and should not be used
+ -- as it has been superseeded by parameter visitedNetworkId
+ visitedNetworkId [41] UTF8String OPTIONAL,
+ -- contains the visited network identifier inside the Serving System Update for
+ -- non 3GPP access and IMS, coded according to [53] and 3GPP TS 29.229 [96]
+ mediaDecryption-info [42] MediaDecryption-info OPTIONAL,
+ servingS4-SGSN-address [43] OCTET STRING OPTIONAL,
+ -- Diameter Origin-Host and Origin-Realm of the S4-SGSN based on the TS 29.272 [59].
+ -- Only the data fields from the Diameter AVPs are provided concatenated
+ -- with a semicolon to populate this field.
+ sipMessageHeaderOffer [44] OCTET STRING OPTIONAL,
+ sipMessageHeaderAnswer [45] OCTET STRING OPTIONAL,
+ sdpOffer [46] OCTET STRING OPTIONAL,
+ sdpAnswer [47] OCTET STRING OPTIONAL,
+ uLITimestamp [48] OCTET STRING (SIZE (8)) OPTIONAL,
+ -- Coded according to 3GPP TS 29.060 [17]; The upper 4 octets shall carry the ULI Timestamp
+ -- value; The lower 4 octets are undefined and shall be ignored by the receiver
+ packetDataHeaderInformation [49] PacketDataHeaderInformation OPTIONAL,
+ mediaSecFailureIndication [50] MediaSecFailureIndication OPTIONAL,
+ csgIdentity [51] OCTET STRING (SIZE (4)) OPTIONAL, -- Octets are coded
+ -- according to 3GPP TS 23.003 [25]. The 27 bits specified in TS 23.003 shall be encoded as.
+ -- follows The most significant bit of the CSG Identity shall be encoded in the most
+ -- significant bit of the first octet of the octet string and the least significant bit coded
+ -- in bit 6 of octet 4.
+ heNBIdentity [52] OCTET STRING OPTIONAL,
+ -- 4 or 6 octets are coded with the HNBUnique Identity
+ -- as specified in 3GPP TS 23.003 [25], Clause 4.10.
+ heNBiPAddress [53] IPAddress OPTIONAL,
+ heNBLocation [54] HeNBLocation OPTIONAL,
+ tunnelProtocol [55] TunnelProtocol OPTIONAL,
+ pANI-Header-Info [56] SEQUENCE OF PANI-Header-Info OPTIONAL,
+ -- information extracted from P-Access-Network-Info headers of SIP message;
+ -- described in TS 24.229 §7.2A.4 [76]
+ imsVoIP [57] IMS-VoIP-Correlation OPTIONAL,
+ xCAPmessage [58] OCTET STRING OPTIONAL,
+ -- The HTTP message (HTPP header and any XCAP body) of any of the target's IMS supplementary
+ -- service setting management or manipulation XCAP messages occuring through the Ut interface
+ -- defined in the 3GPP TS 24 623 [77].
+ logicalFunctionInformation [59] DataNodeIdentifier OPTIONAL,
+ ccUnavailableReason [60] PrintableString OPTIONAL,
+ carrierSpecificData [61] OCTET STRING OPTIONAL,
+ -- Copy of raw data specified by the CSP or his vendor related to HSS.
+ current-previous-systems [62] Current-Previous-Systems OPTIONAL,
+ change-Of-Target-Identity [63] Change-Of-Target-Identity OPTIONAL,
+ requesting-Network-Identifier [64] OCTET STRING OPTIONAL,
+ -- the requesting network identifier PLMN id (Mobile Country Code and Mobile Network Country,
+ -- defined in E212 [87]).
+ requesting-Node-Type [65] Requesting-Node-Type OPTIONAL,
+ serving-System-Identifier [66] OCTET STRING OPTIONAL,
+ -- the serving network identifier PLMN id (MNC, Mobile Country Code and MNC,Mobile Network
+ -- Country, defined in E212 [87]) and 3GPP TR 21.905 [38], that may be included in the Diameter
+ -- AVP to and from the HSS.
+ proSeTargetType [67] ProSeTargetType OPTIONAL,
+ proSeRelayMSISDN [68] OCTET STRING (SIZE (1..9)) OPTIONAL,
+ -- coded according to 3GPP TS 29.274 [46]
+ proSeRelayIMSI [69] OCTET STRING (SIZE (3..8)) OPTIONAL,
+ -- coded according to 3GPP TS 29.274 [46]
+ proSeRelayIMEI [70] OCTET STRING (SIZE (8)) OPTIONAL,
+ -- coded according to 3GPP TS 29.274 [46]
+ extendedLocParameters [71] ExtendedLocParameters OPTIONAL, -- LALS extended parameters
+ locationErrorCode [72] LocationErrorCode OPTIONAL, -- LALS error code
+ otherIdentities [73] SEQUENCE OF PartyInformation OPTIONAL,
+ deregistrationReason [74] DeregistrationReason OPTIONAL,
+ requesting-Node-Identifier [75] OCTET STRING OPTIONAL,
+ roamingIndication [76] VoIPRoamingIndication OPTIONAL,
+ -- used for IMS events in the VPLMN.
+ cSREvent [77] CSREvent OPTIONAL,
+ ptc [78] PTC OPTIONAL, -- PTC Events
+ ptcEncryption [79] PTCEncryptionInfo OPTIONAL,
+ -- PTC Encryption Information
+ additionalCellIDs [80] SEQUENCE OF AdditionalCellID OPTIONAL,
+ scefID [81] UTF8String OPTIONAL,
+ -- SCEF-ID FQDN as defined by TS 29.336 [101], clause 8.4.5 and RFC 3588 [102] section 4.3
+ national-HI2-ASN1parameters [255] National-HI2-ASN1parameters OPTIONAL
+}
+ -- Parameters having the same tag numbers have to be identical in Rel-5 and onwards modules
+-- PARAMETERS FORMATS
+DataNodeIdentifier ::= SEQUENCE
+{
+ dataNodeAddress [1] DataNodeAddress OPTIONAL,
+ logicalFunctionType [2] LogicalFunctionType OPTIONAL,
+ dataNodeName [3] PrintableString(SIZE(7..25)) OPTIONAL,
+ --Unique identifier of a Data Node within the CSP domain. Could be a name/number combination.
+...
+}
+LogicalFunctionType ::= ENUMERATED
+{
+ pDNGW (0),
+ mME (1),
+ sGW (2),
+ ePDG (3),
+ hSS (4),
+...
+}
+PANI-Header-Info ::= SEQUENCE
+{
+ access-Type [1] OCTET STRING OPTIONAL,
+ -- ASCII chain '3GPP-UTRAN-TDD', '3GPP-E-UTRAN-TDD',... : see TS 24.229 §7.2A.4 [76]
+ access-Class [2] OCTET STRING OPTIONAL,
+ -- ASCII chain '3GPP-UTRAN', '3GPP-E-UTRAN',... : see TS 24.229 §7.2A.4 [76]
+ network-Provided [3] NULL OPTIONAL,
+ -- present if provided by the network
+ pANI-Location [4] PANI-Location OPTIONAL,
+ ...
+}
+PANI-Location ::= SEQUENCE
+{
+ raw-Location [1] OCTET STRING OPTIONAL,
+ -- raw copy of the location string from the P-Access-Network-Info header
+ location [2] Location OPTIONAL,
+ ePSLocation [3] EPSLocation OPTIONAL,
+ ...
+}
+
+Location ::= SEQUENCE
+{
+ e164-Number [1] OCTET STRING (SIZE (1..25)) OPTIONAL,
+ -- Coded in the same format as the ISUP location number (parameter
+ -- field) of the ISUP (see EN 300 356 [30]).
+ globalCellID [2] GlobalCellID OPTIONAL,
+ --see MAP format (see [4])
+ rAI [4] Rai OPTIONAL,
+ -- the Routeing Area Identifier in the current SGSN is coded in accordance with the
+ -- § 10.5.5.15 of document [9] without the Routing Area Identification IEI
+ -- (only the last 6 octets are used)
+ gsmLocation [5] GSMLocation OPTIONAL,
+ umtsLocation [6] UMTSLocation OPTIONAL,
+ sAI [7] Sai OPTIONAL,
+ -- format: PLMN-ID 3 octets (no. 1 - 3)
+ -- LAC 2 octets (no. 4 - 5)
+ -- SAC 2 octets (no. 6 - 7)
+ -- (according to 3GPP TS 25.413 [62])
+ ...,
+ oldRAI [8] Rai OPTIONAL,
+ -- the Routeing Area Identifier in the old SGSN is coded in accordance with the
+ -- § 10.5.5.15 of document [9] without the Routing Area Identification IEI
+ -- (only the last 6 octets are used).
+ civicAddress [9] CivicAddress OPTIONAL,
+ operatorSpecificInfo [10] OCTET STRING OPTIONAL,
+ -- other CSP specific information.
+ uELocationTimestamp [11] CHOICE
+ {
+ timestamp [0] TimeStamp,
+ timestampUnknown [1] NULL,
+ ...
+ } OPTIONAL
+ -- Date/time of the UE location
+}
+GlobalCellID ::= OCTET STRING (SIZE (5..7))
+Rai ::= OCTET STRING (SIZE (6))
+Sai ::= OCTET STRING (SIZE (7))
+AdditionalCellID ::= SEQUENCE
+{
+ nCGI [1] NCGI,
+ gsmLocation [2] GSMLocation OPTIONAL,
+ umtsLocation [3] UMTSLocation OPTIONAL,
+ timeOfLocation [4] GeneralizedTime OPTIONAL,
+ ...
+}
+MCC ::= NumericString (SIZE(3))
+MNC ::= NumericString (SIZE(2..3))
+PLMNID ::= SEQUENCE
+{
+ mCC [1] MCC,
+ mNC [2] MNC,
+ ...
+}
+-- TS 36.413 [100], clause 9.2.1.142
+NRCellID ::= BIT STRING (SIZE(36))
+NCGI ::= SEQUENCE
+{
+ pLMNID [1] PLMNID,
+ nRCellID [2] NRCellID,
+ ...
+}
+
+EPSCorrelationNumber ::= OCTET STRING
+ -- In case of PS interception, the size will be in the range (8..20)
+CorrelationValues ::= CHOICE {
+
+ iri-to-CC [0] IRI-to-CC-Correlation, -- correlates IRI to Content(s)
+ iri-to-iri [1] IRI-to-IRI-Correlation, -- correlates IRI to IRI
+ both-IRI-CC [2] SEQUENCE { -- correlates IRI to IRI and IRI to Content(s)
+ iri-CC [0] IRI-to-CC-Correlation,
+ iri-IRI [1] IRI-to-IRI-Correlation}
+}
+IMS-VoIP-Correlation ::= SET OF SEQUENCE {
+ ims-iri [0] IRI-to-IRI-Correlation,
+ ims-cc [1] IRI-to-CC-Correlation OPTIONAL
+}
+IRI-to-CC-Correlation ::= SEQUENCE { -- correlates IRI to Content
+ cc [0] SET OF OCTET STRING,-- correlates IRI to multiple CCs
+ iri [1] OCTET STRING OPTIONAL
+ -- correlates IRI to CC with signaling
+}
+IRI-to-IRI-Correlation ::= OCTET STRING -- correlates IRI to IRI
+EPSEvent ::= ENUMERATED
+{
+ pDPContextActivation (1),
+ startOfInterceptionWithPDPContextActive (2),
+ pDPContextDeactivation (4),
+ gPRSAttach (5),
+ gPRSDetach (6),
+ locationInfoUpdate (10),
+ sMS (11),
+ pDPContextModification (13),
+ servingSystem (14),
+ ... ,
+ startOfInterceptionWithMSAttached (15),
+ e-UTRANAttach (16),
+ e-UTRANDetach (17),
+ bearerActivation (18),
+ startOfInterceptionWithActiveBearer (19),
+ bearerModification (20),
+ bearerDeactivation (21),
+ uERequestedBearerResourceModification (22),
+ uERequestedPDNConnectivity (23),
+ uERequestedPDNDisconnection (24),
+ trackingAreaEpsLocationUpdate (25),
+ servingEvolvedPacketSystem (26),
+ pMIPAttachTunnelActivation (27),
+ pMIPDetachTunnelDeactivation (28),
+ startOfInterceptWithActivePMIPTunnel (29),
+ pMIPPdnGwInitiatedPdnDisconnection (30),
+ mIPRegistrationTunnelActivation (31),
+ mIPDeregistrationTunnelDeactivation (32),
+ startOfInterceptWithActiveMIPTunnel (33),
+ dSMIPRegistrationTunnelActivation (34),
+ dSMIPDeregistrationTunnelDeactivation (35),
+ startOfInterceptWithActiveDsmipTunnel (36),
+ dSMipHaSwitch (37),
+ pMIPResourceAllocationDeactivation (38),
+ mIPResourceAllocationDeactivation (39),
+ pMIPsessionModification (40),
+ startOfInterceptWithEUTRANAttachedUE (41),
+ dSMIPSessionModification (42),
+ packetDataHeaderInformation (43),
+ hSS-Subscriber-Record-Change (44),
+ registration-Termination (45),
+ -- FFS
+ location-Up-Date (46),
+ -- FFS
+ cancel-Location (47),
+ register-Location (48),
+ location-Information-Request (49),
+ proSeRemoteUEReport (50),
+ proSeRemoteUEStartOfCommunication (51),
+ proSeRemoteUEEndOfCommunication (52),
+ startOfLIwithProSeRemoteUEOngoingComm (53),
+ startOfLIforProSeUEtoNWRelay (54),
+ scefRequestednonIPPDNDisconnection (55)
+}
+-- see [19]
+CSREvent ::= ENUMERATED
+{
+ cSREventMessage (1),
+ ...
+}
+IMSevent ::= ENUMERATED
+{
+ unfilteredSIPmessage (1),
+ -- This value indicates to LEMF that the whole SIP message is sent , i.e. without filtering
+ -- CC; location information is removed by the DF2/MF if not required to be sent.
+ ...,
+ sIPheaderOnly (2),
+ -- If warrant requires only IRI then specific content in a 'sIPMessage'
+ -- (e.g. 'Message', etc.) has been deleted before sending it to LEMF.
+ decryptionKeysAvailable (3),
+ -- This value indicates to LEMF that the IRI carries CC decryption keys for the session
+ -- under interception.
+ startOfInterceptionForIMSEstablishedSession (4),
+ -- This value indicates to LEMF that the IRI carries information related to
+ -- interception started on an already established IMS session.
+ xCAPRequest (5),
+ -- This value indicates to LEMF that the XCAP request is sent.
+ xCAPResponse (6) ,
+ -- This value indicates to LEMF that the XCAP response is sent.
+ ccUnavailable (7),
+ -- This value indicates to LEMF that the media is not available for interception for intercept
+ -- orders that require media interception.
+ sMSOverIMS (8),
+ -- This value indicates to LEMF that the SMS utilized by SMS over IP (using IMS) is
+ -- being reported.
+ servingSystem(9),
+ -- Applicable to HSS interception
+ subscriberRecordChange(10),
+ -- Applicable to HSS interception
+ registrationTermination(11),
+ -- Applicable to HSS interception
+ locationInformationRequest(12)
+ -- Applicable to HSS interception
+}
+
+GPRS-parameters ::= SEQUENCE
+{
+ pDP-address-allocated-to-the-target [1] DataNodeAddress OPTIONAL,
+ aPN [2] OCTET STRING (SIZE(1..100)) OPTIONAL,
+ -- The Access Point Name (APN) is coded in accordance with
+ -- 3GPP TS 24.008 [9] without the APN IEI (only the last 100 octets are used).
+ -- Octets are coded according to 3GPP TS 23.003 [25].
+ pDP-type [3] OCTET STRING (SIZE(2)) OPTIONAL,
+ -- Include either Octets 3 and 4 of the Packet Data Protocol Address information element
+ -- of 3GPP TS 24.008 [9] or Octets 4 and 5 of the End User Address IE of 3GPP TS 29.060 [17].
+ -- when PDP-type is IPv4 or IPv6, the IP address is carried by parameter
+ -- pDP-address-allocated-to-the-target
+ -- when PDP-type is IPv4v6, the additional IP address is carried by parameter
+ -- additionalIPaddress
+ ...,
+ nSAPI [4] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- Include either Octet 2 of the NSAPI IE of 3GPP TS 24.008 [9]
+ -- or Octet 2 of the NSAPI IE of 3GPP TS 29.060 [17].
+ additionalIPaddress [5] DataNodeAddress OPTIONAL
+}
+GPRSOperationErrorCode ::= OCTET STRING
+-- The parameter shall carry the GMM cause value or the SM cause value, as defined in the
+-- standard [9], without the IEI.
+LDIevent ::= ENUMERATED
+{
+ targetEntersIA (1),
+ targetLeavesIA (2),
+ ...
+}
+UmtsQos ::= CHOICE
+{
+ qosMobileRadio [1] OCTET STRING,
+ -- The qosMobileRadio parameter shall be coded in accordance with the § 10.5.6.5 of
+ -- document [9] without the Quality of service IEI and Length of
+ -- quality of service IE (. That is, first
+ -- two octets carrying 'Quality of service IEI' and 'Length of quality of service
+ -- IE' shall be excluded).
+ qosGn [2] OCTET STRING
+ -- qosGn parameter shall be coded in accordance with § 7.7.34 of document [17]
+}
+EPS-GTPV2-SpecificParameters ::= SEQUENCE
+{
+ pDNAddressAllocation [1] OCTET STRING OPTIONAL,
+ aPN [2] OCTET STRING (SIZE (1..100)) OPTIONAL,
+ protConfigOptions [3] ProtConfigOptions OPTIONAL,
+ attachType [4] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47]
+ ePSBearerIdentity [5] OCTET STRING OPTIONAL,
+ detachType [6] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47], includes switch off indicator
+ rATType [7] OCTET STRING (SIZE (1)) OPTIONAL,
+ failedBearerActivationReason [8] OCTET STRING (SIZE (1)) OPTIONAL,
+ ePSBearerQoS [9] OCTET STRING OPTIONAL,
+ bearerActivationType [10] TypeOfBearer OPTIONAL,
+ aPN-AMBR [11] OCTET STRING OPTIONAL,
+ -- see 3GPP TS 29.274 [46] parameters coding rules defined for EPS-GTPV2-SpecificParameters.
+ procedureTransactionId [12] OCTET STRING OPTIONAL,
+ linkedEPSBearerId [13] OCTET STRING OPTIONAL,
+ --The Linked EPS Bearer Identity shall be included and coded according to 3GPP TS 29.274 [46].
+ tFT [14] OCTET STRING OPTIONAL,
+ -- Only octets 3 onwards of TFT IE from 3GPP TS 24.008 [9] shall be included.
+ handoverIndication [15] NULL OPTIONAL,
+ failedBearerModReason [16] OCTET STRING (SIZE (1)) OPTIONAL,
+ trafficAggregateDescription [17] OCTET STRING OPTIONAL,
+ failedTAUReason [18] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47]
+ failedEUTRANAttachReason [19] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47]
+ servingMMEaddress [20] OCTET STRING OPTIONAL,
+ -- Contains the data fields from the Diameter Origin-Host and Origin-Realm AVPs
+ -- as received in the HSS from the MME according to the TS 29.272 [59].
+ -- Only the data fields from the Diameter AVPs are provided concatenated
+ -- with a semicolon to populate this field.
+ bearerDeactivationType [21] TypeOfBearer OPTIONAL,
+ bearerDeactivationCause [22] OCTET STRING (SIZE (1)) OPTIONAL,
+ ePSlocationOfTheTarget [23] EPSLocation OPTIONAL,
+ -- the use of ePSLocationOfTheTarget is mutually exclusive with the use of locationOfTheTarget
+ -- ePSlocationOfTheTarget allows using the coding of the parameter according to SAE stage 3.
+ -- location of the target
+ -- or cell site location
+ ...,
+ pDNType [24] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47]
+ requestType [25] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47]
+ uEReqPDNConnFailReason [26] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- coded according to TS 24.301 [47]
+ extendedHandoverIndication [27] OCTET STRING (SIZE (1)) OPTIONAL,
+ -- This parameter with value 1 indicates handover based on the flags in the TS 29.274 [46].
+ -- Otherwise set to the value 0.
+ -- The use of extendedHandoverIndication and handoverIndication parameters is
+ -- mutually exclusive and depends on the actual ASN.1 encoding method.
+ uLITimestamp [28] OCTET STRING (SIZE (8)) OPTIONAL,
+ -- The upper 4 octets shall carry the ULI Timestamp value; The lower 4 octets are undefined
+ -- and shall be ignored by the receiver
+ uELocalIPAddress [29] OCTET STRING OPTIONAL,
+ uEUdpPort [30] OCTET STRING (SIZE (2)) OPTIONAL,
+ tWANIdentifier [31] OCTET STRING OPTIONAL,
+ tWANIdentifierTimestamp [32] OCTET STRING (SIZE (4)) OPTIONAL,
+ proSeRemoteUeContextConnected [33] RemoteUeContextConnected OPTIONAL,
+ proSeRemoteUeContextDisconnected [34] RemoteUeContextDisconnected OPTIONAL,
+ secondaryRATUsageIndication [35] NULL OPTIONAL
+ }
+ -- All the parameters within EPS-GTPV2-SpecificParameters are coded as the corresponding IEs
+ -- without the octets containing type and length. Unless differently stated, they are coded
+ -- according to 3GPP TS 29.274 [46]; in this case the octet containing the instance
+ -- shall also be not included.
+TypeOfBearer ::= ENUMERATED
+{
+ defaultBearer (1),
+ dedicatedBearer (2),
+ ...
+}
+EPSLocation ::= SEQUENCE
+{
+
+ userLocationInfo [1] OCTET STRING (SIZE (1..39)) OPTIONAL,
+ -- see 3GPP TS 29.274 [46] parameters coding rules defined for EPS-GTPV2-SpecificParameters.
+ gsmLocation [2] GSMLocation OPTIONAL,
+ umtsLocation [3] UMTSLocation OPTIONAL,
+ olduserLocationInfo [4] OCTET STRING (SIZE (1..39)) OPTIONAL,
+ -- coded in the same way as userLocationInfo
+ lastVisitedTAI [5] OCTET STRING (SIZE (1..5)) OPTIONAL,
+ -- the Tracking Area Identity is coded in accordance with the TAI field in 3GPP TS 29.274
+ -- [46].
+ tAIlist [6] OCTET STRING (SIZE (7..97)) OPTIONAL,
+ -- the TAI List is coded acording to 3GPP TS 24.301 [47], without the TAI list IEI
+ ...,
+ threeGPP2Bsid [7] OCTET STRING (SIZE (1..12)) OPTIONAL,
+ -- contains only the payload from the 3GPP2-BSID AVP described in the 3GPP TS 29.212 [56].
+ civicAddress [8] CivicAddress OPTIONAL,
+ operatorSpecificInfo [9] OCTET STRING OPTIONAL,
+ -- other CSP specific information.
+ uELocationTimestamp [10] CHOICE
+ {
+ timestamp [0] TimeStamp,
+ timestampUnknown [1] NULL,
+ ...
+ } OPTIONAL
+ -- Date/time of the UE location
+}
+ProtConfigOptions ::= SEQUENCE
+{
+ ueToNetwork [1] OCTET STRING (SIZE(1..251)) OPTIONAL,
+ -- This shall be coded with octet 3 onwards of the Protocol Configuration Options IE in
+ -- accordance with 3GPP TS 24.008 [9].
+ networkToUe [2] OCTET STRING (SIZE(1..251)) OPTIONAL,
+ -- This shall be coded with octet 3 onwards of the Protocol Configuration Options IE in
+ -- accordance with 3GPP TS 24.008 [9].
+...
+}
+RemoteUeContextConnected ::= SEQUENCE OF RemoteUEContext
+RemoteUEContext ::= SEQUENCE
+{
+ remoteUserID [1] RemoteUserID,
+ remoteUEIPInformation [2] RemoteUEIPInformation,
+...
+}
+RemoteUserID ::= OCTET STRING
+RemoteUEIPInformation ::= OCTET STRING
+RemoteUeContextDisconnected ::= RemoteUserID
+EPS-PMIP-SpecificParameters ::= SEQUENCE
+{
+ lifetime [1] INTEGER (0..65535) OPTIONAL,
+ accessTechnologyType [2] OCTET STRING (SIZE (4)) OPTIONAL,
+ aPN [3] OCTET STRING (SIZE (1..100)) OPTIONAL,
+ iPv6HomeNetworkPrefix [4] OCTET STRING (SIZE (20)) OPTIONAL,
+ protConfigurationOption [5] OCTET STRING OPTIONAL,
+ handoverIndication [6] OCTET STRING (SIZE (4)) OPTIONAL,
+ status [7] INTEGER (0..255) OPTIONAL,
+ revocationTrigger [8] INTEGER (0..255) OPTIONAL,
+ iPv4HomeAddress [9] OCTET STRING (SIZE (4)) OPTIONAL,
+ iPv6careOfAddress [10] OCTET STRING OPTIONAL,
+ iPv4careOfAddress [11] OCTET STRING OPTIONAL,
+ ...,
+ servingNetwork [12] OCTET STRING (SIZE (3)) OPTIONAL,
+ dHCPv4AddressAllocationInd [13] OCTET STRING (SIZE (1)) OPTIONAL,
+ ePSlocationOfTheTarget [14] EPSLocation OPTIONAL
+ -- parameters coded according to 3GPP TS 29.275 [48] and RFCs specifically
+ -- referenced in it.
+}
+EPS-DSMIP-SpecificParameters ::= SEQUENCE
+{
+ lifetime [1] INTEGER (0..65535) OPTIONAL,
+ requestedIPv6HomePrefix [2] OCTET STRING (SIZE (25)) OPTIONAL,
+ -- coded according to RFC 5026
+ homeAddress [3] OCTET STRING (SIZE (8)) OPTIONAL,
+ iPv4careOfAddress [4] OCTET STRING (SIZE (8)) OPTIONAL,
+ iPv6careOfAddress [5] OCTET STRING (SIZE(16)) OPTIONAL,
+ aPN [6] OCTET STRING (SIZE (1..100)) OPTIONAL,
+ status [7] INTEGER (0..255) OPTIONAL,
+ hSS-AAA-address [8] OCTET STRING OPTIONAL,
+ targetPDN-GW-Address [9] OCTET STRING OPTIONAL,
+ ...
+ -- parameters coded according to 3GPP TS 24.303 [49] and RFCs specifically
+ -- referenced in it.
+}
+EPS-MIP-SpecificParameters ::= SEQUENCE
+{
+ lifetime [1] INTEGER (0.. 65535) OPTIONAL,
+ homeAddress [2] OCTET STRING (SIZE (4)) OPTIONAL,
+ careOfAddress [3] OCTET STRING (SIZE (4)) OPTIONAL,
+ homeAgentAddress [4] OCTET STRING (SIZE (4)) OPTIONAL,
+ code [5] INTEGER (0..255) OPTIONAL,
+ foreignDomainAddress [7] OCTET STRING (SIZE (4)) OPTIONAL,
+ ...
+ -- parameters coded according to 3GPP TS 29.279 [63] and RFCs specifically
+ -- referenced in it.
+}
+MediaDecryption-info ::= SEQUENCE OF CCKeyInfo
+ -- One or more key can be available for decryption, one for each media streams of the
+ -- intercepted session.
+CCKeyInfo ::= SEQUENCE
+{
+ cCCSID [1] OCTET STRING,
+ -- the parameter uniquely mapping the key to the encrypted stream.
+ cCDecKey [2] OCTET STRING,
+ cCSalt [3] OCTET STRING OPTIONAL,
+ -- The field reports the value from the CS_ID field in the ticket exchange headers as
+ -- defined in IETF RFC 6043 [61].
+ ...
+}
+MediaSecFailureIndication ::= ENUMERATED
+{
+ genericFailure (0),
+ ...
+}
+PacketDataHeaderInformation ::= CHOICE
+{
+ packetDataHeader [1] PacketDataHeaderReport,
+ packetDataSummary [2] PacketDataSummaryReport,
+...
+}
+PacketDataHeaderReport ::= CHOICE
+{
+ packetDataHeaderMapped [1] PacketDataHeaderMapped,
+ packetDataHeaderCopy [2] PacketDataHeaderCopy,
+...
+}
+PacketDataHeaderMapped ::= SEQUENCE
+{
+ sourceIPAddress [1] IPAddress,
+ sourcePortNumber [2] INTEGER (0..65535) OPTIONAL,
+ destinationIPAddress [3] IPAddress,
+ destinationPortNumber [4] INTEGER (0..65535) OPTIONAL,
+ transportProtocol [5] INTEGER,
+ -- For IPv4, report the "Protocol" field and for IPv6 report "Next Header" field.
+ -- Assigned Internet Protocol Numbers can be found at
+ -- http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml
+ packetsize [6] INTEGER OPTIONAL,
+ flowLabel [7] INTEGER OPTIONAL,
+ packetCount [8] INTEGER OPTIONAL,
+ direction [9] TPDU-direction,
+...
+}
+TPDU-direction ::= ENUMERATED
+{
+ from-target (1),
+ to-target (2),
+ unknown (3)
+}
+PacketDataHeaderCopy ::= SEQUENCE
+{
+ direction [1] TPDU-direction,
+ headerCopy [2] OCTET STRING, -- includes a copy of the packet header at the IP
+ -- network layer and above including extension headers, but excluding contents.
+...
+}
+PacketDataSummaryReport ::= SEQUENCE OF PacketFlowSummary
+PacketFlowSummary ::= SEQUENCE
+{
+ sourceIPAddress [1] IPAddress,
+ sourcePortNumber [2] INTEGER (0..65535) OPTIONAL,
+ destinationIPAddress [3] IPAddress,
+ destinationPortNumber [4] INTEGER (0..65535) OPTIONAL,
+ transportProtocol [5] INTEGER,
+ -- For IPv4, report the "Protocol" field and for IPv6 report "Next Header" field.
+ -- Assigned Internet Protocol Numbers can be found at
+ -- http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml
+ flowLabel [6] INTEGER OPTIONAL,
+ summaryPeriod [7] ReportInterval,
+ packetCount [8] INTEGER,
+ sumOfPacketSizes [9] INTEGER,
+ packetDataSummaryReason [10] ReportReason,
+...
+}
+ReportReason ::= ENUMERATED
+{
+ timerExpired (0),
+ countThresholdHit (1),
+ pDPComtextDeactivated (2),
+ pDPContextModification (3),
+ otherOrUnknown (4),
+ ...
+}
+ReportInterval ::= SEQUENCE
+{
+ firstPacketTimeStamp [0] TimeStamp,
+ lastPacketTimeStamp [1] TimeStamp,
+ ...
+}
+TunnelProtocol ::= CHOICE
+{
+ rfc2868ValueField [0] OCTET STRING, -- coded to indicate the type of tunnel established between
+ -- the HeNB and the SeGW as specified in TS 33.320. The actual coding is provided in 3 octets
+ -- with the Value field of the Tunnel Type RADIUS attribute as specified in IETF RFC 2868.
+ -- This corresponds to the outer layer tunnel between the HeNB and the SeGW as viewed by the
+ -- SeGW
+ nativeIPSec [1] NULL, -- if native IPSec is required by TS 33.320 between HeNB and SeGW
+...
+}
+HeNBLocation ::= EPSLocation
+Requesting-Node-Type ::= ENUMERATED
+{
+ mSC (1),
+ sMS-Centre (2),
+ gMLC (3),
+ mME (4),
+ sGSN (5),
+ ...
+}
+Change-Of-Target-Identity ::= SEQUENCE
+{
+ new-MSISDN [1] PartyInformation OPTIONAL,
+ -- new MSISDN of the target, encoded in the same format as the AddressString
+ -- parameters defined in MAP format document TS 29.002 [4]
+ new-A-MSISDN [2] PartyInformation OPTIONAL,
+ -- new A-MSISDN of the target, encoded in the same format as the AddressString
+ -- parameters defined in TS 23.003 [25]
+ old-MSISDN [3] PartyInformation OPTIONAL,
+ -- old MSISDN of the target, encoded in the same format as the AddressString
+ -- parameters defined in MAP format document TS 29.002 [4]
+ old-A-MSISDN [4] PartyInformation OPTIONAL,
+ -- old A-MSISDN of the target, encoded in the same format as the AddressString
+ -- parameters defined in TS 23.003 [25]
+ new-IMSI [5] PartyInformation OPTIONAL,
+ -- See MAP format [4] International Mobile
+ -- Station Identity E.212 number beginning with Mobile Country Code
+ old-IMSI [6] PartyInformation OPTIONAL,
+ -- See MAP format [4] International Mobile
+ -- Station Identity E.212 number beginning with Mobile Country Code
+ new-IMEI [7] PartyInformation OPTIONAL,
+ -- See MAP format [4] International Mobile
+ -- Equipement Identity defined in MAP format document TS 29.002 [4]
+ old-IMEI [8] PartyInformation OPTIONAL,
+ -- See MAP format [4] International Mobile
+ -- Equipement Identity defined in MAP format document TS 29.002 [4]
+...,
+ new-IMPI [9] PartyInformation OPTIONAL,
+ old-IMPI [10] PartyInformation OPTIONAL,
+ new-SIP-URI [11] PartyInformation OPTIONAL,
+ old-SIP-URI [12] PartyInformation OPTIONAL,
+ new-TEL-URI [13] PartyInformation OPTIONAL,
+ old-TEL-URI [14] PartyInformation OPTIONAL
+}
+Current-Previous-Systems ::= SEQUENCE
+{
+ serving-System-Identifier [1] OCTET STRING OPTIONAL,
+ -- VPLMN id (Mobile Country Code and Mobile Network Country, E. 212 number [87]).
+ current-Serving-MME-Address [2] DataNodeIdentifier OPTIONAL,
+ -- The IP address of the current serving MME or its the Diameter Origin-Host and Origin-Realm.
+ previous-Serving-System-Identifier [3] OCTET STRING OPTIONAL,
+ -- VPLMN id (Mobile Country Code and Mobile Network Country, defined in E212 [87]).
+ previous-Serving-MME-Address [4] DataNodeIdentifier OPTIONAL,
+ -- The IP address of the previous serving MME or its Diameter Origin-Host and Origin-Realm.
+...
+}
+ProSeTargetType ::= ENUMERATED
+{
+ pRoSeRemoteUE (1),
+ pRoSeUEtoNwRelay (2),
+ ...
+}
+VoIPRoamingIndication ::= ENUMERATED {
+ roamingLBO (1), -- used in IMS events sent by VPLMN with LBO as roaming
+ roamingS8HR (2), -- used in IMS events sent by VPLMN with S8HR as roaming
+ ...
+}
+DeregistrationReason ::= CHOICE
+{
+ reason-CodeAVP [1] INTEGER,
+ server-AssignmentType [2] INTEGER,
+ -- Coded according to 3GPP TS 29.229 [96]
+ ...
+}
+PTCEncryptionInfo ::= SEQUENCE {
+ cipher [1] UTF8String,
+ cryptoContext [2] UTF8String OPTIONAL,
+ key [3] UTF8String,
+ keyEncoding [4] UTF8String,
+ salt [5] UTF8String OPTIONAL,
+ pTCOther [6] UTF8String OPTIONAL,
+ ...
+}
+PTC ::= SEQUENCE {
+ abandonCause [1] UTF8String OPTIONAL,
+ accessPolicyFailure [2] UTF8String OPTIONAL,
+ accessPolicyType [3] AccessPolicyType OPTIONAL,
+ alertIndicator [5] AlertIndicator OPTIONAL,
+ associatePresenceStatus [6] AssociatePresenceStatus OPTIONAL,
+ bearer-capability [7] UTF8String OPTIONAL,
+ -- identifies the Bearer capability information element (value part)
+ broadcastIndicator [8] BOOLEAN OPTIONAL,
+ -- default False, true indicates this is a braodcast to a group
+ contactID [9] UTF8String OPTIONAL,
+ emergency [10] Emergency OPTIONAL,
+ emergencyGroupState [11] EmergencyGroupState OPTIONAL,
+ timeStamp [12] TimeStamp,
+ pTCType [13] PTCType OPTIONAL,
+ failureCode [14] UTF8String OPTIONAL,
+ floorActivity [15] FloorActivity OPTIONAL,
+ floorSpeakerID [16] PTCAddress OPTIONAL,
+ groupAdSender [17] UTF8String OPTIONAL,
+ -- Identifies the group administrator who was the originator of the group call.
+ -- tag [18] was used in r15 (15) version-4 (4)
+ groupAuthRule [19] GroupAuthRule OPTIONAL,
+ groupCharacteristics [20] UTF8String OPTIONAL,
+ holdRetrieveInd [21] BOOLEAN OPTIONAL,
+ -- true indicates target is placed on hold, false indicates target was retrived from hold.
+ -- tag [22] was used in r15 (15) version-4 (4)
+ imminentPerilInd [23] ImminentPerilInd OPTIONAL,
+ implicitFloorReq [24] ImplicitFloorReq OPTIONAL,
+ initiationCause [25] InitiationCause OPTIONAL,
+ invitationCause [26] UTF8String OPTIONAL,
+ iPAPartyID [27] UTF8String OPTIONAL,
+ iPADirection [28] IPADirection OPTIONAL,
+ listManagementAction [29] ListManagementAction OPTIONAL,
+ listManagementFailure [30] UTF8String OPTIONAL,
+ listManagementType [31] ListManagementType OPTIONAL,
+ maxTBTime [32] UTF8String OPTIONAL, -- defined in seconds.
+ mCPTTGroupID [33] UTF8String OPTIONAL,
+ mCPTTID [34] UTF8String OPTIONAL,
+ mCPTTInd [35] BOOLEAN OPTIONAL,
+ -- default False indicates to associate from target, true indicates to the target.
+ location [36] Location OPTIONAL,
+ mCPTTOrganizationName [37] UTF8String OPTIONAL,
+ mediaStreamAvail [38] BOOLEAN OPTIONAL,
+ -- True indicates available for media, false indicates not able to accept media.
+ priority-Level [40] Priority-Level OPTIONAL,
+ preEstSessionID [41] UTF8String OPTIONAL,
+ preEstStatus [42] PreEstStatus OPTIONAL,
+ pTCGroupID [43] UTF8String OPTIONAL,
+ pTCIDList [44] UTF8String OPTIONAL,
+ pTCMediaCapability [45] UTF8String OPTIONAL,
+ pTCOriginatingId [46] UTF8String OPTIONAL,
+ pTCOther [47] UTF8String OPTIONAL,
+ pTCParticipants [48] UTF8String OPTIONAL,
+ pTCParty [49] UTF8String OPTIONAL,
+ pTCPartyDrop [50] UTF8String OPTIONAL,
+ pTCSessionInfo [51] UTF8String OPTIONAL,
+ pTCServerURI [52] UTF8String OPTIONAL,
+ pTCUserAccessPolicy [53] UTF8String OPTIONAL,
+ pTCAddress [54] PTCAddress OPTIONAL,
+ queuedFloorControl [55] BOOLEAN OPTIONAL,
+ --Default FALSE,send TRUE if Queued floor control is used.
+ queuedPosition [56] UTF8String OPTIONAL,
+ -- indicates the queued position of the Speaker (Target or associate) who has the
+ -- right to speak.
+ registrationRequest [57] RegistrationRequest OPTIONAL,
+ registrationOutcome [58] RegistrationOutcome OPTIONAL,
+ retrieveID [59] UTF8String OPTIONAL,
+ rTPSetting [60] RTPSetting OPTIONAL,
+ talkBurstPriority [61] Priority-Level OPTIONAL,
+ talkBurstReason [62] Talk-burst-reason-code OPTIONAL,
+ -- Talk-burst-reason-code Defined according to the rules and procedures
+ -- in (OMA-PoC-AD [97])
+ talkburstControlSetting [63] TalkburstControlSetting OPTIONAL,
+ targetPresenceStatus [64] UTF8String OPTIONAL,
+ port-Number [65] INTEGER (0..65535) OPTIONAL,
+ ...
+}
+AccessPolicyType ::= SEQUENCE
+{
+ userAccessPolicyAttempt [1] BOOLEAN,
+ -- default False, true indicates Target has accessed.
+ groupAuthorizationRulesAttempt [2] BOOLEAN,
+ -- default False, true indicates Target has accessed.
+ userAccessPolicyQuery [3] BOOLEAN,
+ -- default False, true indicates Target has accessed.
+ groupAuthorizationRulesQuery [4] BOOLEAN,
+ -- default False, true indicates Target has accessed.
+ userAccessPolicyResult [5] UTF8String,
+ groupAuthorizationRulesResult [6] UTF8String,
+ ...
+}
+AlertIndicator ::= ENUMERATED
+{
+ -- indicates the group call alert condition.
+ sent (1),
+ received (2),
+ cancelled (3),
+ ...
+ }
+AssociatePresenceStatus ::= SEQUENCE
+{
+ presenceID [1] UTF8String,
+ -- identity of PTC Client(s)or the PTC group
+ presenceType [2] PresenceType,
+ presenceStatus [3] BOOLEAN,
+ -- default false, true indicates connected.
+...
+}
+PresenceType ::= ENUMERATED
+{
+ pTCClient (1),
+ pTCGroup (2),
+ -- identifies the type of presenceID given [PTC Client(s) or PTC group].
+ ...
+}
+Emergency ::= ENUMERATED
+{
+ -- MCPTT services indication of peril condition.
+ imminent (1),
+ peril (2),
+ cancel (3),
+ ...
+}
+EmergencyGroupState ::= SEQUENCE
+{
+ -- indicates the state of the call, at least one of these information
+ -- elements shall be present.
+ clientEmergencyState [1] ENUMERATED
+{
+ -- in case of MCPTT call, indicates the response for the client
+ inform (1),
+ response (2),
+ cancelInform (3),
+ cancelResponse (4),
+ ...
+} OPTIONAL,
+ groupEmergencyState [2] ENUMERATED
+{
+ -- in case of MCPTT group call, indicates if there is a group emergency or
+ -- a response from the Target to indicate current Client state of emergency.
+ inForm (1),
+ reSponse (2),
+ cancelInform (3),
+ cancelResponse (4),
+...
+ },
+...
+}
+PTCType ::= ENUMERATED
+{
+ pTCStartofInterception (1),
+ pTCServinSystem (2),
+ pTCSessionInitiation (3),
+ pTCSessionAbandonEndRecord (4),
+ pTCSessionStartContinueRecord (5),
+ pTCSessionEndRecord (6),
+ pTCPre-EstablishedSessionSessionRecord (7),
+ pTCInstantPersonalAlert (8),
+ pTCPartyJoin (9),
+ pTCPartyDrop (10),
+ pTCPartyHold-RetrieveRecord (11),
+ pTCMediaModification (12),
+ pTCGroupAdvertizement (13),
+ pTCFloorConttrol (14),
+ pTCTargetPressence (15),
+ pTCAssociatePressence (16),
+ pTCListManagementEvents (17),
+ pTCAccessPolicyEvents (18),
+ pTCMediaTypeNotification (19),
+ pTCGroupCallRequest (20),
+ pTCGroupCallCancel (21),
+ pTCGroupCallResponse (22),
+ pTCGroupCallInterrogate (23),
+ pTCMCPTTImminentGroupCall (24),
+ pTCCC (25),
+ pTCRegistration (26),
+ pTCEncryption (27),
+...
+}
+FloorActivity ::= SEQUENCE
+{
+ tBCP-Request [1] BOOLEAN,
+ -- default False, true indicates Granted.
+ tBCP-Granted [2] BOOLEAN,
+ -- default False, true indicates Granted permission to talk.
+ tBCP-Deny [3] BOOLEAN,
+ -- default True, False indicates permission granted.
+ tBCP-Queued [4] BOOLEAN,
+ -- default False, true indicates the request to talk is in queue.
+ tBCP-Release [5] BOOLEAN,
+ -- default True, true indicates the Request to talk is completed,
+ -- False indicates PTC Client has the request to talk.
+ tBCP-Revoke [6] BOOLEAN,
+ -- default False, true indicates the privilege to talk is canceld from the
+ -- PTC server.
+ tBCP-Taken [7] BOOLEAN,
+ -- default True, false indicates another PTC Client has the permission to talk.
+ tBCP-Idle [8] BOOLEAN,
+ -- default True, False indicates the Talk Burst Protocol is taken.
+...
+}
+GroupAuthRule ::= ENUMERATED
+{
+ allow-Initiating-PtcSession (0),
+ block-Initiating-PtcSession (1),
+ allow-Joining-PtcSession (2),
+ block-Joining-PtcSession (3),
+ allow-Add-Participants (4),
+ block-Add-Participants (5),
+ allow-Subscription-PtcSession-State (6),
+ block-Subscription-PtcSession-State (7),
+ allow-Anonymity (8),
+ forbid-Anonymity (9),
+...
+}
+ImminentPerilInd ::= ENUMERATED
+{
+ request (1),
+ response (2),
+ cancel (3),
+ -- when the MCPTT Imminent Peril Group Call Request, Response or Cancel is detected
+...
+}
+ImplicitFloorReq ::= ENUMERATED
+{
+ join (1),
+ rejoin (2),
+ release (3),
+ -- group Call request to join, rejoin, or release of the group call
+...
+}
+InitiationCause ::= ENUMERATED
+{
+ requests (1),
+ received (2),
+ pTCOriginatingId (3),
+ -- requests or receives a session initiation from the network or another
+ -- party to initiate a PTC session. Identify the originating PTC party, if known.
+...
+}
+IPADirection ::= ENUMERATED
+{
+ toTarget (0),
+ fromTarget (1),
+...
+}
+ListManagementAction ::= ENUMERATED
+{
+ create (1),
+ modify (2),
+ retrieve (3),
+ delete (4),
+ notify (5),
+...
+}
+ListManagementType ::= ENUMERATED
+{
+ contactListManagementAttempt (1),
+ groupListManagementAttempt (2),
+ contactListManagementResult (3),
+ groupListManagementResult (4),
+ requestSuccessful (5),
+...
+}
+Priority-Level ::= ENUMERATED
+{
+ pre-emptive (0),
+ high-priority (1),
+ normal-priority (2),
+ listen-only (3),
+...
+}
+PreEstStatus ::= ENUMERATED
+{
+ established (1),
+ modify (2),
+ released (3),
+...
+}
+PTCAddress ::= SEQUENCE
+{
+ uri [0] UTF8String,
+ -- The set of URIs defined in [RFC3261] and related SIP RFCs.
+ privacy-setting [1] BOOLEAN,
+ -- Default FALSE, send TRUE if privacy is used.
+ privacy-alias [2] VisibleString OPTIONAL,
+ -- if privacy is used, the PTC Server creates an anonymous PTC Address of the form
+ -- <sip:anonymous@anonymous.invalid>. In addition to anonymity, the anonymous PTC
+ -- Addresses SHALL be unique within a PTC Session. In case more than one anonymous
+ -- PTC Addresses are used in the same PTC Session, for the second Anonymous PTC
+ -- Session and thereafter, the PTC Server SHOULD use the form
+ -- sip:anonymous-n@anonymous.invalid where n is an integer number.
+ nickname [3] UTF8String OPTIONAL,
+...
+}
+RegistrationRequest ::= ENUMERATED
+{
+ register (1),
+ re-register (2),
+ de-register (3),
+...
+}
+RegistrationOutcome ::= ENUMERATED
+{
+ success (0),
+ failure (1),
+...
+}
+RTPSetting ::= SEQUENCE
+{
+ ip-address [0] IPAddress,
+ port-number [1] Port-Number,
+ -- the IP address and port number at the PTC Server for the RTP Session
+...
+}
+Port-Number ::= INTEGER (0..65535)
+TalkburstControlSetting ::= SEQUENCE
+{
+ talk-BurstControlProtocol [1] UTF8String,
+ talk-Burst-parameters [2] SET OF VisibleString,
+ -- selected by the PTC Server from those contained in the original SDP offer in the
+ -- incoming SIP INVITE request from the PTC Client
+ tBCP-PortNumber [3] INTEGER (0..65535),
+ -- PTC Server's port number to be used for the Talk Burst Control Protocol
+...
+}
+Talk-burst-reason-code ::= VisibleString
+END -- OF EpsHI2Operations \ No newline at end of file
diff --git a/epan/dissectors/asn1/HI2Operations/HI2Operations.cnf b/epan/dissectors/asn1/HI2Operations/HI2Operations.cnf
index b37be29d7c..b70a2c7d6f 100644
--- a/epan/dissectors/asn1/HI2Operations/HI2Operations.cnf
+++ b/epan/dissectors/asn1/HI2Operations/HI2Operations.cnf
@@ -2,10 +2,8 @@
# HI2Operations conformation file
#.MODULE
+EpsHI2Operations EpsHI2
UmtsHI2Operations UmtsHI2
-PCESP PCESP
-TS101909201 TS101909201
-EN301040 EN301040
HI3CCLinkData hi3cclinkdata
#.MODULE_IMPORT
@@ -21,32 +19,27 @@ UUS1-Content
#.OMIT_ASSIGNMENT
# Get rid of unused code warnings
-TTRAFFIC
-CTTRAFFIC
-LIACTIVATEreq
-LIACTIVATEconf
-LIMODIFYreq
-LIMODIFYconf
-LISTATUSind
-StatusType
+CallContentLinkCharacteristics
+CCLink-State
+Intercepted-Call-State
+GPRSCorrelationNumber
+GPRSEvent
+TetraLocation
#.FIELD_RENAME
GSMLocation/geoCoordinates/latitude geoCoordinates_latitude
GSMLocation/geoCoordinates/longitude geoCoordinates_longitude
-TetraLocation/ms-Loc/mnc ms_Loc_mnc
-TetraLocation/ms-Loc/mcc ms_Loc_mcc
-TetraLocation/ms-Loc/lai ms_Loc_lai
#.FN_HDR UUS1-Content
/* Heuristic test to see if it's our content */
gint8 tmp_class;
- gboolean tmp_pc;
+ bool tmp_pc;
gint32 tmp_tag;
int tmp_offset;
guint length = tvb_captured_length(tvb);
guint32 tmp_length;
- gboolean tmp_ind;
+ bool tmp_ind;
/* Check for min length */
if (length < 6){
@@ -103,8 +96,5 @@ TetraLocation/ms-Loc/lai ms_Loc_lai
#.FIELD_ATTR
GSMLocation/geoCoordinates/latitude ABBREV=geoCoordinates.latitude
GSMLocation/geoCoordinates/longitude ABBREV=geoCoordinates.longitude
-TetraLocation/ms-Loc/mnc ABBREV=ms_loc.mnc
-TetraLocation/ms-Loc/mcc ABBREV=ms_loc.mcc
-TetraLocation/ms-Loc/lai ABBREV=ms_loc.lai
#.END
diff --git a/epan/dissectors/asn1/HI2Operations/HI2Operations_ver11.asn b/epan/dissectors/asn1/HI2Operations/HI2Operations_ver18.asn
index 1038a74d59..a5e62292b4 100644
--- a/epan/dissectors/asn1/HI2Operations/HI2Operations_ver11.asn
+++ b/epan/dissectors/asn1/HI2Operations/HI2Operations_ver18.asn
@@ -1,5 +1,8 @@
HI2Operations
-{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version11(11)}
+{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version17(18)}
+
+ -- It is advised not to use version11(11) of this ASN.1 module since it contains a syntax error.
+ -- Version11(11) of HI2Operations is only defined in TS 101 671 v3.5.1 [81].
DEFINITIONS IMPLICIT TAGS ::=
@@ -11,25 +14,15 @@ IMPORTS OPERATION,
{joint-iso-itu-t(2) remote-operations(4) informationObjects(5) version1(0)}
-- from 3GPP TS 33.108 [61]
- UmtsQos,
+ CorrelationValues,
+ EpsIRIsContent,
+ GPRS-parameters,
IMSevent,
LDIevent,
- CorrelationValues
- FROM UmtsHI2Operations
- {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi2(1) r8(8) version-1(1)}
-
- -- from TS 101 909-20-01 [69]
- TARGETACTIVITYMONITOR-1
- FROM TS101909201
- {itu-t(0) identified-organization(4) etsi(0) ts101909(1909) part20(20) subpart1(1) interceptVersion(0)}
-
- -- from EN 301 040 [72]
- TARGETACTIVITYMONITORind,
- TARGETCOMMSMONITORind,
- TTRAFFICind,
- CTTRAFFICind
- FROM EN301040
- {itu-t(0) identified-organization(4) etsi(0) en301040 (1040) interceptVersion (0)};
+ Location,
+ UmtsQos
+ FROM EpsHI2Operations
+ {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi2(1) r11(11) version-0(0)};
-- =============================
-- Object Identifier Definitions
@@ -40,7 +33,7 @@ lawfulInterceptDomainId OBJECT IDENTIFIER ::= {itu-t(0) identified-organization(
-- Security Subdomains
hi2DomainId OBJECT IDENTIFIER ::= {lawfulInterceptDomainId hi2(1)}
-hi2OperationId OBJECT IDENTIFIER ::= {hi2DomainId version11(11)}
+hi2OperationId OBJECT IDENTIFIER ::= {hi2DomainId version18(18)}
sending-of-IRI OPERATION ::=
{
@@ -52,38 +45,15 @@ sending-of-IRI OPERATION ::=
-- The timer default value is 60s.
-- NOTE: The same note as for HI management operation applies.
-IRIsContent ::= CHOICE
-{
- iRIContent [0] IRIContent,
- iRISequence [1] IRISequence
-}
-
-IRISequence ::= SEQUENCE OF IRIContent
- -- Aggregation of IRIContent is an optional feature.
- -- It may be applied in cases when at a given point in time several IRI records are
- -- available for delivery to the same LEA destination.
- -- As a general rule, records created at any event shall be sent immediately and shall
- -- not held in the DF or MF in order to apply aggregation.
- -- When aggregation is not to be applied, IRIContent needs to be chosen.
-
-IRIContent ::= CHOICE
-{
- iRI-Begin-record [1] IRI-Parameters,
- -- At least one optional parameter must be included within the iRI-Begin-Record.
- iRI-End-record [2] IRI-Parameters,
- iRI-Continue-record [3] IRI-Parameters,
- -- At least one optional parameter must be included within the iRI-Continue-Record.
- iRI-Report-record [4] IRI-Parameters,
- -- At least one optional parameter must be included within the iRI-Report-Record.
- ...
-}
+-- WS replace IRIsContent with EpsIRIsContent
+IRIsContent ::= EpsIRIsContent
-unknown-version ERROR ::= {CODE local:0}
+unknown-version ERROR ::= {CODE local:0}
missing-parameter ERROR ::= {CODE local:1}
unknown-parameter-value ERROR ::= {CODE local:2}
unknown-parameter ERROR ::= {CODE local:3}
-OperationErrors ERROR ::=
+OperationErrors ERROR ::=
{
unknown-version |
missing-parameter |
@@ -92,143 +62,6 @@ OperationErrors ERROR ::=
}
-- These values may be sent by the LEMF, when an operation or a parameter is misunderstood.
-IRI-Parameters ::= SEQUENCE
-{
- domainID [0] OBJECT IDENTIFIER (hi2OperationId) OPTIONAL,
- -- for the sending entity the inclusion of the Object Identifier is mandatory
- iRIversion [23] ENUMERATED
- {
- version2(2),
- ...,
- version3(3),
- version4(4),
- version5(5),
- version6(6),
- version7(7),
- lastVersion(8)
- } OPTIONAL,
- -- Optional parameter "iRIversion" (tag 23) is redundant starting
- -- from TS 101 671 v2.4.1 [i.5]
- -- where to the object identifier "domainID" was introduced into IRI-Parameters.
- -- In order to keep backward compatibility, even when the version of the "domainID"
- -- parameter will be incremented it is recommended to always send to LEMF the same:
- -- enumeration value "lastVersion(8)".
- -- if not present, it means version 1 is handled
- lawfulInterceptionIdentifier [1] LawfulInterceptionIdentifier,
- -- This identifier is associated to the target.
- communicationIdentifier [2] CommunicationIdentifier,
- -- used to uniquely identify an intercepted call.
- -- Called "callIdentifier" in v1.1.1 of ES 201 671 [i.5].
- timeStamp [3] TimeStamp,
- -- date and time of the event triggering the report.
- intercepted-Call-Direct [4] ENUMERATED
- {
- not-Available(0),
- originating-Target(1),
- -- In case of GPRS, this indicates that the PDP context activation, modification
- -- or deactivation is MS requested.
- terminating-Target(2),
- -- In case of GPRS, this indicates that the PDP context activation, modification
- -- or deactivation is network initiated.
- ...
- } OPTIONAL,
- intercepted-Call-State [5] Intercepted-Call-State OPTIONAL,
- ringingDuration [6] OCTET STRING (SIZE (3)) OPTIONAL,
- -- Duration in seconds. BCD coded : HHMMSS
- conversationDuration [7] OCTET STRING (SIZE (3)) OPTIONAL,
- -- Duration in seconds. BCD coded : HHMMSS
- locationOfTheTarget [8] Location OPTIONAL,
- -- location of the target subscriber
- partyInformation [9] SET SIZE (1..10) OF PartyInformation OPTIONAL,
- -- This parameter provides the concerned party (Originating, Terminating or forwarded
- -- party), the identity(ies) of the party and all the information provided by the party.
- callContentLinkInformation [10] SEQUENCE
- {
- cCLink1Characteristics [1] CallContentLinkCharacteristics OPTIONAL,
- -- Information concerning the Content of Communication Link Tx channel established
- -- toward the LEMF (or the sum signal channel, in case of mono mode).
- cCLink2Characteristics [2] CallContentLinkCharacteristics OPTIONAL,
- -- Information concerning the Content of Communication Link Rx channel established
- -- toward the LEMF.
- ...
- } OPTIONAL,
- release-Reason-Of-Intercepted-Call [11] OCTET STRING (SIZE (2)) OPTIONAL,
- -- Release cause coded in ITU-T Q.850 [31] format.
- -- This parameter indicates the reason why the intercepted call cannot be established or
- -- why the intercepted call has been released after the active phase.
- nature-Of-The-intercepted-call [12] ENUMERATED
- {
- -- Nature of the intercepted "call":
- gSM-ISDN-PSTN-circuit-call(0),
- -- the possible UUS content is sent through the HI2 or HI3 "data" interface
- -- the possible call content call is established through the HI3 "circuit" interface
- gSM-SMS-Message(1),
- -- the SMS content is sent through the HI2 or HI3 "data" interface
- uUS4-Messages(2),
- -- the UUS content is sent through the HI2 or HI3 "data" interface
- tETRA-circuit-call(3),
- -- the possible call content call is established through the HI3 "circuit" interface
- -- the possible data are sent through the HI3 "data" interface
- teTRA-Packet-Data(4),
- -- the data are sent through the HI3 "data" interface
- gPRS-Packet-Data(5),
- -- the data are sent through the HI3 "data" interface
- ...,
- uMTS-circuit-call(6)
- -- the possible call content call is established through the HI3 "circuit" interface
- -- the possible data are sent through the HI3 "data" interface
- } OPTIONAL,
- serverCenterAddress [13] PartyInformation OPTIONAL,
- -- e.g. in case of SMS message this parameter provides the address of the relevant
- -- server within the calling (if server is originating) or called
- -- (if server is terminating) party address parameters
- sMS [14] SMS-report OPTIONAL,
- -- this parameter provides the SMS content and associated information
- cC-Link-Identifier [15] CC-Link-Identifier OPTIONAL,
- -- Depending on a network option, this parameter may be used to identify a CC link
- -- in case of multiparty calls.
- national-Parameters [16] National-Parameters OPTIONAL,
- gPRSCorrelationNumber [18] GPRSCorrelationNumber OPTIONAL,
- gPRSevent [20] GPRSEvent OPTIONAL,
- -- This information is used to provide particular action of the target
- -- such as attach/detach
- sgsnAddress [21] DataNodeAddress OPTIONAL,
- gPRSOperationErrorCode [22] GPRSOperationErrorCode OPTIONAL,
- ...,
- ggsnAddress [24] DataNodeAddress OPTIONAL,
- qOS [25] UmtsQos OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- networkIdentifier [26] Network-Identifier OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- sMSOriginatingAddress [27] DataNodeAddress OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- sMSTerminatingAddress [28] DataNodeAddress OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- iMSevent [29] IMSevent OPTIONAL,
- sIPMessage [30] OCTET STRING OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- servingSGSN-number [31] OCTET STRING (SIZE (1..20)) OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- servingSGSN-address [32] OCTET STRING (SIZE (5..17)) OPTIONAL,
- -- Octets are coded according to 3GPP TS 23.003 [76]
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- tARGETACTIVITYMONITOR [33] TARGETACTIVITYMONITOR-1 OPTIONAL,
- -- Parameter is used in TS 101 909-20-1 [69]
- ldiEvent [34] LDIevent OPTIONAL,
- -- The "Location Dependent Interception" parameter is duplicated from 3GPP TS 33.108 [61]
- correlation [35] CorrelationValues OPTIONAL,
- -- This parameter is duplicated from 3GPP TS 33.108 [61]
- tARGETACTIVITYMONITORind [36] TARGETACTIVITYMONITORind OPTIONAL,
- -- Parameter is used in EN 301 040 [72]
- tARGETCOMMSMONITORind [37] TARGETCOMMSMONITORind OPTIONAL,
- -- Parameter is used in EN 301 040 [72]
- tTRAFFICind [38] TTRAFFICind OPTIONAL,
- -- Parameter is used in EN 301 040 [72]
- cTTRAFFICind [39] CTTRAFFICind OPTIONAL,
- -- Parameter is used in EN 301 040 [72]
- national-HI2-ASN1parameters [255] National-HI2-ASN1parameters OPTIONAL
-}
-
-- ==================
-- PARAMETERS FORMATS
-- ==================
@@ -247,10 +80,10 @@ CommunicationIdentifier ::= SEQUENCE
network-Identifier [1] Network-Identifier,
...
}
--- NOTE: The same "CommunicationIdentifier" value is sent :
--- with the HI3 information for correlation purpose between the IRI and the information sent on
--- the HI3 interfaces (CCLink, data, ..) with each IRI associated to a same intercepted call
--- for correlation purpose between the different IRI.
+-- NOTE: The same "CommunicationIdentifier" value is sent:
+-- with the HI3 information for correlation purpose between the IRI and the information sent
+-- on the HI3 interfaces (CCLink, data, ..) with each IRI associated to a same intercepted
+-- call for correlation purpose between the different IRI.
Network-Identifier ::= SEQUENCE
{
@@ -277,7 +110,7 @@ Network-Element-Identifier ::= CHOICE
iP-Address [5] IPAddress
}
-CC-Link-Identifier ::= OCTET STRING (SIZE (1..8))
+CC-Link-Identifier ::= OCTET STRING (SIZE (1..8))
-- Depending on a network option, this parameter may be used to identify a CClink
-- in case of multiparty calls.
-- The individual digits of the CC-Link-Identifier shall be represented in
@@ -310,7 +143,7 @@ LocalTimeStamp ::= SEQUENCE
PartyInformation ::= SEQUENCE
{
- party-Qualifier [0] ENUMERATED
+ party-Qualifier [0] ENUMERATED
{
originating-Party(0),
-- In this case, the partyInformation parameter provides the identities related to
@@ -327,7 +160,7 @@ PartyInformation ::= SEQUENCE
gPRS-Target(3),
...
},
- partyIdentity [1] SEQUENCE
+ partyIdentity [1] SEQUENCE
{
imei [1] OCTET STRING (SIZE (8)) OPTIONAL,
-- See MAP format TS GSM 09.02 [32]
@@ -351,9 +184,22 @@ PartyInformation ::= SEQUENCE
sip-uri [8] OCTET STRING OPTIONAL,
-- Session Initiation Protocol - Uniform Resource Identifier. See RFC 3261 [59].
-- This parameter is duplicated from 3GPP TS 33.108 [61].
- tel-url [9] OCTET STRING OPTIONAL
+ tel-url [9] OCTET STRING OPTIONAL,
-- See "URLs for Telephone Calls", RFC 3966 [68].
-- This parameter is duplicated from 3GPP TS 33.108 [61].
+ nai [10] OCTET STRING OPTIONAL,
+ -- NAI of the target, encoded in the same format as defined by [EPS stage 3 specs]
+ x-3GPP-Asserted-Identity [11] OCTET STRING OPTIONAL,
+ -- X-3GPP-Asserted-Identity header (3GPP TS 24.109 [79]) of the target, used in
+ -- some XCAP transactions as a complement information to SIP URI or Tel URI.
+ xUI [12] OCTET STRING OPTIONAL,
+ -- XCAP User Identifier (XUI)is a string, valid as a path element in an XCAP URI, that is
+ -- may be associated with each user served by a XCAP resource server. Defined in IETF RFC
+ -- 4825[80] as a complement information to SIP URI or Tel URI
+ iMPI [13] OCTET STRING OPTIONAL,
+ -- Private User Identity as defined in 3GPP TS 23.003 [25]
+ extID [14] UTF8String OPTIONAL
+ -- RFC 4282 [102] compliant string as per TS 23.003 [25], clause 19.7.2
},
services-Information [2] Services-Information OPTIONAL,
-- This parameter is used to transmit all the information concerning the
@@ -362,7 +208,7 @@ PartyInformation ::= SEQUENCE
-- This parameter is used to transmit all the information concerning the
-- activation/invocation of supplementary services during a call or out-of call not
-- provided by the previous parameters.
- services-Data-Information [4] Services-Data-Information OPTIONAL,
+ services-Data-Information [4] Services-Data-Information OPTIONAL,
-- This parameter is used to transmit all the information concerning the complementary
-- information associated to the basic data call.
...
@@ -386,7 +232,7 @@ CalledPartyNumber ::= CHOICE
{
iSUP-Format [1] OCTET STRING (SIZE (1..25)),
-- Encoded in the same format as the called party number (parameter field)
- -- of the ISUP (see EN 300 356 [5]).
+ -- of the ISUP (see EN 300 356 [5]).
mAP-Format [2] OCTET STRING (SIZE (1..25)),
-- Encoded as AddressString of the MAP protocol TS GSM 09.02 [32].
dSS1-Format [3] OCTET STRING (SIZE (1..25)),
@@ -396,34 +242,6 @@ CalledPartyNumber ::= CHOICE
...
}
-Location ::= SEQUENCE
-{
- e164-Number [1] OCTET STRING (SIZE (1..25)) OPTIONAL,
- -- Coded in the same format as the ISUP location number (parameter
- --field) of the ISUP (see EN 300 356 [5]).
- globalCellID [2] OCTET STRING (SIZE (5..7)) OPTIONAL,
- -- See MAP format (see TS GSM 09.02 [32]).
- tetraLocation [3] TetraLocation OPTIONAL,
- -- This optional parameter is not in use anymore, but is kept for backwards compatibility.
- rAI [4] OCTET STRING (SIZE (6)) OPTIONAL,
- -- The Routeing Area Identifier (RAI) in the current SGSN is coded in accordance with
- -- 3GPP TS 24.008 [41] without the Routing Area Identification IEI (only the
- -- last 6 octets are used).
- gsmLocation [5] GSMLocation OPTIONAL,
- umtsLocation [6] UMTSLocation OPTIONAL,
- sAI [7] OCTET STRING (SIZE (7)) OPTIONAL,
- -- format: PLMN-ID 3 octets (no. 1-3),
- -- LAC 2 octets (no. 4-5),
- -- SAC 2 octets (no. 6-7)
- -- (according to 3GPP TS 25.431 [62]).
- ...,
- oldRAI [8] OCTET STRING (SIZE (6)) OPTIONAL
- -- the "Routeing Area Identifier" in the old SGSN is coded in accordance with
- -- 3GPP TS 24.008 [41] without the Routing Area Identification IEI
- -- (only the last 6 octets are used).
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
-}
-
TetraLocation ::= CHOICE
-- This optional parameter is not in use anymore, but is kept for backwards compatibility.
{
@@ -442,7 +260,7 @@ TetraLocation ::= CHOICE
GSMLocation ::= CHOICE
{
- geoCoordinates [1] SEQUENCE
+ geoCoordinates [1] SEQUENCE
{
latitude [1] PrintableString (SIZE(7..10)),
-- format: XDDMMSS.SS
@@ -453,19 +271,19 @@ GSMLocation ::= CHOICE
azimuth [4] INTEGER (0..359) OPTIONAL
-- The azimuth is the bearing, relative to true north
},
- -- format: XDDDMMSS.SS
+ -- format: XDDDMMSS.SS
-- X : N(orth), S(outh), E(ast), W(est)
- -- DD or DDD : degrees (numeric characters)
+ -- DD or DDD : degrees (numeric characters)
-- MM : minutes (numeric characters)
- -- SS.SS : seconds, the second part (.SS) is optional
+ -- SS.SS : seconds, the second part (.SS) is optional
-- Example:
-- latitude short form N502312
-- longitude long form E1122312.18
utmCoordinates [2] SEQUENCE
{
- utm-East [1] PrintableString (SIZE(10)),
- utm-North [2] PrintableString (SIZE(7)),
+ utm-East [1] PrintableString (SIZE(10)),
+ utm-North [2] PrintableString (SIZE(7)),
-- Universal Transverse Mercator
-- example utm-East 32U0439955
-- utm-North 5540736
@@ -477,22 +295,22 @@ GSMLocation ::= CHOICE
utmRefCoordinates [3] SEQUENCE
{
- utmref-string [2] PrintableString (SIZE(13)),
- mapDatum [3] MapDatum DEFAULT wGS84,
+ utmref-string PrintableString (SIZE(13)),
+ mapDatum MapDatum DEFAULT wGS84,
...
},
-- example 32UPU91294045
- wGS84Coordinates [4] OCTET STRING
+ wGS84Coordinates [4] OCTET STRING
-- format is as defined in 3GPP TS 03.32 [57]
}
MapDatum ::= ENUMERATED
{
- wGS84(0),
+ wGS84,
-- World Geodetic System 1984
- wGS72(1),
- eD50(2),
+ wGS72,
+ eD50,
-- European Datum 50
...
}
@@ -507,26 +325,26 @@ UMTSLocation ::= CHOICE
GeographicalCoordinates ::= SEQUENCE
{
- latitudeSign [0] ENUMERATED
+ latitudeSign ENUMERATED
{
- north(0),
- south(1)
+ north,
+ south
},
- latitude [1] INTEGER (0..8388607),
- longitude [2] INTEGER (-8388608..8388607),
+ latitude INTEGER (0..8388607),
+ longitude INTEGER (-8388608..8388607),
...
}
GA-Point ::= SEQUENCE
{
- geographicalCoordinates [0] GeographicalCoordinates,
+ geographicalCoordinates GeographicalCoordinates,
...
}
GA-PointWithUnCertainty ::=SEQUENCE
{
- geographicalCoordinates [0] GeographicalCoordinates,
- uncertaintyCode [1] INTEGER (0..127)
+ geographicalCoordinates GeographicalCoordinates,
+ uncertaintyCode INTEGER (0..127)
}
maxNrOfPoints INTEGER ::= 15
@@ -534,7 +352,7 @@ maxNrOfPoints INTEGER ::= 15
GA-Polygon ::= SEQUENCE (SIZE (1..maxNrOfPoints)) OF
SEQUENCE
{
- geographicalCoordinates [0] GeographicalCoordinates,
+ geographicalCoordinates GeographicalCoordinates,
...
}
@@ -671,7 +489,7 @@ ISUP-SS-parameters ::= SET SIZE (1..256) OF OCTET STRING (SIZE (1..256))
-- RedirectingNumber: format defined in EN 300 356 [5].
-- This parameter can be provided with the "Party Information" of the "originating party"
- -- or/and of the "terminating party".
+ -- or/and of the “terminating party”.
-- Original Called Party Number: format defined in EN 300 356 [5].
-- This parameter can be provided with the "Party Information" of the "originating party".
@@ -715,11 +533,11 @@ DSS1-SS-parameters-codeset-0 ::= SET SIZE (1..256) OF OCTET STRING (SIZE (1..256
-- Called Party Subaddress: format defined in EN 300 403-1 [6].
-- This parameter can be provided with the "Party Information" of the "calling party".
- -- Connected Subaddress: format defined in recommendation (see EN 300 097-1 [14]).
+ -- Connected Subaddress: format defined in recommendation (see EN 300 097-1 [14]).
-- This parameter can be provided with the "Party Information" of the
-- "called party" or "forwarded to party".
- -- Connected Number: format defined in recommendation (see EN 300 097-1 [14]).
+ -- Connected Number: format defined in recommendation (see EN 300 097-1 [14]).
-- This parameter can be provided with the "Party Information" of the
-- "called party" or "forwarded to party".
@@ -730,7 +548,7 @@ DSS1-SS-parameters-codeset-0 ::= SET SIZE (1..256) OF OCTET STRING (SIZE (1..256
-- Called Party Number: format defined in EN 300 403-1 [6].
-- This parameter could be provided with the "Party Information" of the "calling party"
-- when target is the originating party; it contains the dialled digits before modification
- -- at network level (e.g. IN interaction, translation, etc ...).
+ -- at network level (e.g. IN interaction, translation, etc …).
-- User-user: format defined in EN 300 286-1 [23]).
-- This parameter can be provided with the "Party Information" of the
@@ -856,12 +674,31 @@ SMS-report ::= SEQUENCE
} OPTIONAL,
content [4] OCTET STRING (SIZE (1..270)) OPTIONAL,
-- Encoded in the format defined for the SMS mobile.
- ...
+ -- The content and enhancedContent fields are mutually exclusive.
+ -- The content field is dedicated for 3GPP purposes.
+ ...,
+ enhancedContent [5] SEQUENCE
+ {
+ content [1] OCTET STRING,
+ -- The character encoding used in the content field is specified in the
+ -- character-encoding field.
+ character-encoding [2] ENUMERATED
+ {
+ gsm-7-bit-ascii(0),
+ eight-bit-ascii(1),
+ eight-bit-binary(2),
+ ucs-2(3),
+ utf-8(4),
+ utf-16(5),
+ other(6),
+ ...
+ }
+ } OPTIONAL
}
}
LawfulInterceptionIdentifier ::= OCTET STRING (SIZE (1..25))
- -- It is recommended to use ASCII characters in "a"..."z", "A"..."Z", "-", "_", ".", and "0"..."9".
+ -- It is recommended to use ASCII characters in "a"…"z", "A"…"Z", "-", "_", ".", and "0"…"9".
-- For subaddress option only "0"..."9" shall be used.
National-Parameters ::= SET SIZE (1..40) OF OCTET STRING (SIZE (1..256))
@@ -880,47 +717,42 @@ GPRSEvent ::= ENUMERATED
cellOrRAUpdate(10),
sMS(11),
...,
- pDPContextModification(13)
+ pDPContextModification(13),
+ endOfInterceptionWithPDPContextActive(14),
+ startOfInterceptionWithMSAttached (15),
+ packetDataHeaderInformation (16) , hSS-Subscriber-Record-Change (17),
+ registration-Termination (18),
+ -- FFS
+ location-Up-Date (19),
+ -- FFS
+ cancel-Location (20),
+ register-Location (21),
+ location-Information-Request (22)
}
Services-Data-Information ::= SEQUENCE
{
- gPRS-parameters [1] GPRS-parameters OPTIONAL,
+ gPRS-parameters [1] GPRS-parameters OPTIONAL,
...
}
-GPRS-parameters ::= SEQUENCE
-{
- pDP-address-allocated-to-the-target [1] DataNodeAddress OPTIONAL,
- aPN [2] OCTET STRING (SIZE(1..100)) OPTIONAL,
- -- The Access Point Name (APN) is coded in accordance with
- -- 3GPP TS 24.008 [41] without the APN IEI (only the last 100 octets are used).
- -- Octets are coded according to 3GPP TS 23.003 [76].
- -- This parameter is duplicated from 3GPP TS 33.108 [61].
- pDP-type [3] OCTET STRING (SIZE(2)) OPTIONAL,
- ...
-}
-
-GPRSOperationErrorCode ::= OCTET STRING (SIZE(2))
- -- Refer to 3GPP TS 24.008 [41] for values (GMM cause or SM cause parameter).
-
DataNodeAddress ::= CHOICE
{
- ipAddress [1] IPAddress,
- x25Address [2] X25Address,
+ ipAddress [1] IPAddress,
+ x25Address [2] X25Address,
...
}
IPAddress ::= SEQUENCE
{
- iP-type [1] ENUMERATED
+ iP-type [1] ENUMERATED
{
iPV4(0),
iPV6(1),
...
},
- iP-value [2] IP-value,
- iP-assignment [3] ENUMERATED
+ iP-value [2] IP-value,
+ iP-assignment [3] ENUMERATED
{
static(1),
-- The static coding shall be used to report a static address.
@@ -931,13 +763,28 @@ IPAddress ::= SEQUENCE
-- allocated IP addresses.
...
} OPTIONAL,
- ...
+ ...,
+ iPv6PrefixLength [4] INTEGER (1..128) OPTIONAL,
+ -- Indicates the length of the prefix delegated by the CSP to the subscriber
+ -- example: 60 if IP address is “2001:db8:0:85a3::ac1f:8001/60”
+ -- Mandatory in case where the iP-value contains an IPv6 binary value
+ iPv4SubnetMask [5] OCTET STRING (SIZE(4)) OPTIONAL
+ -- For IPv4 addresses, this indicates the subnetmask to be applied to the iP-value field.
+ -- The subnet mask is intended to be presented as a binary value, e.g. "ff ff ff f8" to
+ -- represent the dotted-decimal subnet mask of "255.255.255.248" corresponding to
+ -- a /29 CIDR-format subnet mask
}
IP-value ::= CHOICE
{
iPBinaryAddress [1] OCTET STRING (SIZE(4..16)),
+ -- In case of IPv6, the Prefix Length is provided by the "iPv6PrefixLength"
+ -- In case of IPv4, the netmask is provided by the "iPv4SubnetMask"
iPTextAddress [2] IA5String (SIZE(7..45)),
+ -- In case of IPv6, the delivered iPTextAddress field could include a complete
+ -- single IPv6-Address or an IPv6-Prefix for a subnetwork on the target side.
+ -- In case of IPv4, the delivered iPTextAddress field could include a single
+ -- IPv4 address or an IPv4address/netmask, for example "192.168.1.1" or "192.168.1.1/24"
...
}
@@ -954,7 +801,7 @@ National-HI2-ASN1parameters ::= SEQUENCE
-- extension marker (...).
-- It is recommended that "version parameter" and "vendor identification parameter" are
-- included in the national parameters definition. Vendor identifications can be
- -- retrieved from the IANA web site (see annex J). Besides, it is recommended to avoid
+ -- retrieved from the IANA web site (see annex K). Besides, it is recommended to avoid
-- using tags from 240 to 255 in a formal type definition.
}
diff --git a/epan/dissectors/asn1/HI2Operations/HI3CCLinkData.asn b/epan/dissectors/asn1/HI2Operations/HI3CCLinkData.asn
index ccd7a5cdc9..2588543a06 100644
--- a/epan/dissectors/asn1/HI2Operations/HI3CCLinkData.asn
+++ b/epan/dissectors/asn1/HI2Operations/HI3CCLinkData.asn
@@ -6,12 +6,12 @@ DEFINITIONS IMPLICIT TAGS ::=
BEGIN
IMPORTS
- -- from clause D.5
- LawfulInterceptionIdentifier,
- CommunicationIdentifier,
- CC-Link-Identifier
- FROM HI2Operations
- {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version8(8)};
+ -- from clause D.5
+ LawfulInterceptionIdentifier,
+ CommunicationIdentifier,
+ CC-Link-Identifier
+ FROM HI2Operations
+ {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version8(8)};
-- =============================
-- Object Identifier Definitions
@@ -24,45 +24,45 @@ IMPORTS
hi3CCLinkId OBJECT IDENTIFIER ::= {lawfulInterceptDomainId hi3(2) ccLinkLI(4)}
hi3CCLinkIdOperationId OBJECT IDENTIFIER ::= {hi3CCLinkId version4(4)}
-UUS1-Content ::= SEQUENCE
+UUS1-Content ::= SEQUENCE
{
- domainID [0] OBJECT IDENTIFIER (hi3CCLinkIdOperationId) OPTIONAL,
- -- Once using FTP delivery mechanism
- lawfullInterceptionIdentifier [1] LawfulInterceptionIdentifier,
- communicationIdentifier [2] CommunicationIdentifier,
- cC-Link-Identifier [3] CC-Link-Identifier OPTIONAL,
- direction-Indication [4] Direction-Indication,
- bearer-capability [5] OCTET STRING (SIZE(1..12)) OPTIONAL,
- -- transport the Bearer capability information element (value part)
- -- Protocol: EN 300 403-1 [6]
- service-Information [7] Service-Information OPTIONAL,
- ...
+ domainID [0] OBJECT IDENTIFIER (hi3CCLinkIdOperationId) OPTIONAL,
+ -- Once using FTP delivery mechanism
+ lawfullInterceptionIdentifier [1] LawfulInterceptionIdentifier,
+ communicationIdentifier [2] CommunicationIdentifier,
+ cC-Link-Identifier [3] CC-Link-Identifier OPTIONAL,
+ direction-Indication [4] Direction-Indication,
+ bearer-capability [5] OCTET STRING (SIZE(1..12)) OPTIONAL,
+ -- transport the Bearer capability information element (value part)
+ -- Protocol: EN 300 403-1 [6]
+ service-Information [7] Service-Information OPTIONAL,
+ ...
}
-- ==================
-- PARAMETERS FORMATS
-- ==================
-Direction-Indication ::= ENUMERATED
+Direction-Indication ::= ENUMERATED
{
- mono-mode(0),
- cc-from-target(1),
- cc-from-other-party(2),
- ...,
- direction-unknown(3)
+ mono-mode(0),
+ cc-from-target(1),
+ cc-from-other-party(2),
+ ...,
+ direction-unknown(3)
}
Service-Information ::= SET
{
- high-layer-capability [0] OCTET STRING (SIZE(1)) OPTIONAL,
- -- HLC (octet 4 only)
- -- Protocol: EN 300 403-1 [6]
- tMR [1] OCTET STRING (SIZE(1)) OPTIONAL,
- -- Transmission Medium Requirement
- -- Protocol: ISUP EN 300 356 [5]
- bearerServiceCode [2] OCTET STRING (SIZE(1)) OPTIONAL,
- teleServiceCode [3] OCTET STRING (SIZE(1)) OPTIONAL
- -- from MAP, TS GSM 09.02 [32], clause 14.7.9 and clause 14.7.10
+ high-layer-capability [0] OCTET STRING (SIZE(1)) OPTIONAL,
+ -- HLC (octet 4 only)
+ -- Protocol: EN 300 403-1 [6]
+ tMR [1] OCTET STRING (SIZE(1)) OPTIONAL,
+ -- Transmission Medium Requirement
+ -- Protocol: ISUP EN 300 356 [5]
+ bearerServiceCode [2] OCTET STRING (SIZE(1)) OPTIONAL,
+ teleServiceCode [3] OCTET STRING (SIZE(1)) OPTIONAL
+ -- from MAP, TS GSM 09.02 [32], clause 14.7.9 and clause 14.7.10
}
END -- end of HI3CCLinkData
diff --git a/epan/dissectors/asn1/HI2Operations/PCESP.asn b/epan/dissectors/asn1/HI2Operations/PCESP.asn
deleted file mode 100644
index 767401849e..0000000000
--- a/epan/dissectors/asn1/HI2Operations/PCESP.asn
+++ /dev/null
@@ -1,365 +0,0 @@
-PCESP {iso(1) identified-organization(3) dod(6) internet(1) private(4)
- enterprise(1) cable-Television-Laboratories-Inc(4491) clabProject(2)
- clabProjPacketCable(2) pktcLawfulIntercept(5) pcesp(1) version-3(3)}
-
-DEFINITIONS IMPLICIT TAGS ::=
-BEGIN
-
-ProtocolVersion ::= ENUMERATED {
- -- Versions IO1 and IO2 do not support protocol versioning.
- io3(3),
- ...}
-
-CdcPdu ::= SEQUENCE {
- protocolVersion [0] ProtocolVersion,
- message [1] Message,
- ...
-}
-
-Message ::= CHOICE {
- answer [1] Answer,
- ccclose [2] CCClose,
- ccopen [3] CCOpen,
- reserved0 [4] NULL, -- Reserved
- origination [5] Origination,
- reserved1 [6] NULL, -- Reserved
- redirection [7] Redirection,
- release [8] Release,
- reserved2 [9] NULL, -- Reserved
- terminationattempt [10] TerminationAttempt,
- reserved [11] NULL, -- Reserved
- ccchange [12] CCChange,
- reserved3 [13] NULL, -- Reserved
- reserved4 [14] NULL, -- Reserved
- reserved5 [15] NULL, -- Reserved
- networksignal [16] NetworkSignal,
- subjectsignal [17] SubjectSignal,
- mediareport [18] MediaReport,
- serviceinstance [19] ServiceInstance,
- ...
-}
-
-Answer ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- answering [4] PartyId OPTIONAL,
- ...
-}
-
-CCChange ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- cCCId [4] EXPLICIT CCCId,
- subject [5] SDP OPTIONAL,
- associate [6] SDP OPTIONAL,
- flowDirection [7] FlowDirection,
- resourceState [8] ResourceState OPTIONAL,
- ...
-}
-
-CCClose ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- cCCId [3] EXPLICIT CCCId,
- flowDirection [4] FlowDirection,
- ...
-}
-
-CCOpen ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- ccOpenOption CHOICE {
- ccOpenTime [3] SEQUENCE OF CallId,
- reserved0 [4] NULL, -- Reserved
- ...
- },
- cCCId [5] EXPLICIT CCCId,
- subject [6] SDP OPTIONAL,
- associate [7] SDP OPTIONAL,
- flowDirection [8] FlowDirection,
- ...
-}
-
-MediaReport ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- subject [4] SDP OPTIONAL,
- associate [5] SDP OPTIONAL,
- ...
-}
-
-NetworkSignal ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- -- Signal
- -- The following four parameters are used to report
- -- information regarding network-generated signals.
- -- Include at least one of the following four
- -- parameters to identify the network-generated signal
- -- being reported.
- alertingSignal [4] AlertingSignal OPTIONAL,
- subjectAudibleSignal [5] AudibleSignal OPTIONAL,
- terminalDisplayInfo [6] TerminalDisplayInfo OPTIONAL,
- other [7] VisibleString (SIZE (1..128, ...)) OPTIONAL,
- -- Can be used to report undefined network signals
- ...
-}
-
-Origination ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- calling [4] PartyId,
- called [5] PartyId OPTIONAL,
- input CHOICE {
- userinput [6] VisibleString (SIZE (1..32, ...)),
- translationinput [7] VisibleString (SIZE (1..32, ...)),
- ...
- },
- reserved0 [8] NULL, -- Reserved
- transitCarrierId [9] TransitCarrierId OPTIONAL,
- ...
-}
-
-Redirection ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- old [3] CallId,
- redirectedto [4] PartyId,
- transitCarrierId [5] TransitCarrierId OPTIONAL,
- reserved0 [6] NULL, -- Reserved
- reserved1 [7] NULL, -- Reserved
- new [8] CallId OPTIONAL,
- redirectedfrom [9] PartyId OPTIONAL,
- ...
-}
-
-Release ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- ...
-}
-
-ServiceInstance ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- relatedCallId [4] CallId OPTIONAL,
- serviceName [5] VisibleString (SIZE (1..128, ...)),
- firstCallCalling [6] PartyId OPTIONAL,
- secondCallCalling [7] PartyId OPTIONAL,
- called [8] PartyId OPTIONAL,
- calling [9] PartyId OPTIONAL,
- ...
-}
-
-SubjectSignal ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId OPTIONAL,
- signal [4] SEQUENCE {
- -- The following four parameters are used to report
- -- information regarding subject-initiated dialing and
- -- signaling. Include at least one of the following four
- -- parameters to identify the subject- initiated dialing
- -- and signaling information being reported.
- switchhookFlash [0] VisibleString (SIZE (1..128, ...)) OPTIONAL,
- dialedDigits [1] VisibleString (SIZE (1..128, ...)) OPTIONAL,
- featureKey [2] VisibleString (SIZE (1..128, ...)) OPTIONAL,
- otherSignalingInformation [3] VisibleString (SIZE (1..128, ...)) OPTIONAL,
- -- Can be used to report undefined subject signals
- ...
- },
- ...
-}
-
-TerminationAttempt ::= SEQUENCE {
- caseId [0] CaseId,
- accessingElementId [1] AccessingElementId,
- eventTime [2] EventTime,
- callId [3] CallId,
- calling [4] PartyId OPTIONAL,
- called [5] PartyId OPTIONAL,
- reserved0 [6] NULL, -- Reserved
- redirectedFromInfo [7] RedirectedFromInfo OPTIONAL,
- ...
-}
-
-AccessingElementId ::= VisibleString (SIZE(1..15, ...))
- -- Statically configured element number
-
-AlertingSignal ::= ENUMERATED {
- notUsed (0), -- Reserved
- alertingPattern0 (1), -- normal ringing
- alertingPattern1 (2), -- distinctive ringing: intergroup
- alertingPattern2 (3), -- distinctive ringing: special/priority
- alertingPattern3 (4), -- distinctive ringing: electronic key
- -- telephone srvc
- alertingPattern4 (5), -- ringsplash, reminder ring
- callWaitingPattern1 (6), -- normal call waiting tone
- callWaitingPattern2 (7), -- incoming additional call waiting tone
- callWaitingPattern3 (8), -- priority additional call waiting tone
- callWaitingPattern4 (9), -- distinctive call waiting tone
- bargeInTone (10), -- barge-in tone (e.g. for operator barge-in)
- alertingPattern5 (11), -- distinctive ringing: solution specific
- alertingPattern6 (12), -- distinctive ringing: solution specific
- alertingPattern7 (13), -- distinctive ringing: solution specific
- alertingPattern8 (14), -- distinctive ringing: solution specific
- alertingPattern9 (15), -- distinctive ringing: solution specific
- ...
-}
--- This parameter identifies the type of alerting (ringing) signal that is
--- applied toward the surveillance subject. See GR-506-CORE, LSSGR: Signaling
--- for Analog Interfaces (A Module of the LATA Switching Systems Generic
--- Requirements [LSSGR], FR-64).
-
-AudibleSignal ::= ENUMERATED {
- notUsed (0), -- Reserved
- dialTone (1),
- recallDialTone (2), -- recall dial tone, stutter dial tone
- ringbackTone (3), -- tone indicates ringing at called party
- -- end
- reorderTone (4), -- reorder tone, congestion tone
- busyTone (5),
- confirmationTone (6), -- tone confirms receipt and processing of
- -- request
- expensiveRouteTone (7), -- tone indicates outgoing route is
- -- expensive
- messageWaitingTone (8),
- receiverOffHookTone (9), -- receiver off-hook tone, off-hook warning
- -- tone
- specialInfoTone (10), -- tone indicates call sent to announcement
- denialTone (11), -- tone indicates denial of feature request
- interceptTone (12), -- wireless intercept/mobile reorder tone
- answerTone (13), -- wireless service tone
- tonesOff (14), -- wireless service tone
- pipTone (15), -- wireless service tone
- abbreviatedIntercept (16), -- wireless service tone
- abbreviatedCongestion (17), -- wireless service tone
- warningTone (18), -- wireless service tone
- dialToneBurst (19), -- wireless service tone
- numberUnObtainableTone (20), -- wireless service tone
- authenticationFailureTone (21), -- wireless service tone
- ...
-}
--- This parameter identifies the type of audible tone that is applied toward
--- the surveillance subject. See GR-506-CORE, LSSGR: Signaling for Analog
--- Interfaces (A Module of the LATA Switching Systems Generic Requirements
--- [LSSGR], FR-64), ANSI/TIA/EIA-41-D, Cellular Radiotelecommunications
--- Intersystem Operations, and GSM 02.40, Digital cellular telecommunications
--- system (Phase 2+); Procedure for call progress indications.
-
-CallId ::= SEQUENCE {
- sequencenumber [0] VisibleString (SIZE(1..25, ...)),
- systemidentity [1] VisibleString (SIZE(1..15, ...)),
- ...
-}
--- The Delivery Function generates this structure from the
--- Billing-Correlation-ID (contained in the Event Messages).
--- The sequencenumber is generated by converting the
--- Timestamp (32 bits) and Event-Counter (32 bits) into
--- ASCII strings, separating them with a comma.
--- The systemidentity field is copied from the
--- Element-ID field
-
-CaseId ::= VisibleString (SIZE(1..25, ...))
-
-CCCId ::= CHOICE {
- combCCC [0] VisibleString (SIZE(1..20, ...)),
- sepCCCpair [1] SEQUENCE{
- sepXmitCCC [0] VisibleString (SIZE(1..20, ...)),
- sepRecvCCC [1] VisibleString (SIZE(1..20, ...)),
- ...
- },
- ...
-}
--- The Delivery Function MUST generate this structure
--- from the CCC-Identifier used for the corresponding
--- Call Content packet stream by converting the 32-bit
--- value into an 8-character (hex-encoded) ASCII string
--- consisting of digits 0-9 and letters A-F.
-
-EventTime ::= GeneralizedTime
-
-FlowDirection ::= ENUMERATED {
- downstream (1),
- upstream (2),
- downstream-and-upstream (3),
- ...
-}
-
-PartyId ::= SEQUENCE {
- reserved0 [0] NULL OPTIONAL, -- Reserved
- reserved1 [1] NULL OPTIONAL, -- Reserved
- reserved2 [2] NULL OPTIONAL, -- Reserved
- reserved3 [3] NULL OPTIONAL, -- Reserved
- reserved4 [4] NULL OPTIONAL, -- Reserved
- reserved5 [5] NULL OPTIONAL, -- Reserved
- dn [6] VisibleString (SIZE(1..15, ...)) OPTIONAL,
- userProvided [7] VisibleString (SIZE(1..15, ...)) OPTIONAL,
- reserved6 [8] NULL OPTIONAL, -- Reserved
- reserved7 [9] NULL OPTIONAL, -- Reserved
- ipAddress [10] VisibleString (SIZE(1..32, ...)) OPTIONAL,
- reserved8 [11] NULL OPTIONAL, -- Reserved
- trunkId [12] VisibleString (SIZE(1..32, ...)) OPTIONAL,
- reserved9 [13] NULL OPTIONAL, -- Reserved
- genericAddress [14] VisibleString (SIZE(1..32, ...)) OPTIONAL,
- genericDigits [15] VisibleString (SIZE(1..32, ...)) OPTIONAL,
- genericName [16] VisibleString (SIZE(1..48, ...)) OPTIONAL,
- port [17] VisibleString (SIZE(1..32, ...)) OPTIONAL,
- context [18] VisibleString (SIZE(1..32, ...)) OPTIONAL,
- ...
-}
-
-RedirectedFromInfo ::= SEQUENCE {
- lastRedirecting [0] PartyId OPTIONAL,
- originalCalled [1] PartyId OPTIONAL,
- numRedirections [2] INTEGER (1..100, ...) OPTIONAL,
- ...
-}
-
-ResourceState ::= ENUMERATED {reserved(1), committed(2), ...}
-
-SDP ::= UTF8String
--- The format and syntax of this field are defined in [8].
-
-TerminalDisplayInfo ::= SEQUENCE {
- generalDisplay [0] VisibleString (SIZE (1..80, ...)) OPTIONAL,
- -- Can be used to report display-related
- -- network signals not addressed by
- -- other parameters.
- calledNumber [1] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- callingNumber [2] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- callingName [3] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- originalCalledNumber [4] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- lastRedirectingNumber [5] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- redirectingName [6] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- redirectingReason [7] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- messageWaitingNotif [8] VisibleString (SIZE (1..40, ...)) OPTIONAL,
- ...
-}
--- This parameter reports information that is displayed on the surveillance
--- subject's terminal. See GR-506-CORE, LSSGR: Signaling for Analog
--- Interfaces (A Module of the LATA Switching Systems Generic Requirements
--- [LSSGR], FR-64).
-
-TransitCarrierId ::= VisibleString (SIZE(3..7, ...))
-
-END -- PCESP
-
diff --git a/epan/dissectors/asn1/HI2Operations/TS101909201.asn b/epan/dissectors/asn1/HI2Operations/TS101909201.asn
deleted file mode 100644
index deb341c35c..0000000000
--- a/epan/dissectors/asn1/HI2Operations/TS101909201.asn
+++ /dev/null
@@ -1,76 +0,0 @@
-TS101909201 {itu-t (0) identified-organization (4) etsi (0) ts101909 (1909) part20 (20) subpart1(1) interceptVersion (0)}
-
-DEFINITIONS AUTOMATIC TAGS ::=
-
-BEGIN
-
-IMPORTS
-
-CdcPdu FROM
- PCESP {iso(1) identified-organization(3) dod(6) internet(1) private(4)
- enterprise(1) cable-Television-Laboratories-Inc(4491) clabProject(2)
- clabProjPacketCable(2) pktcLawfulIntercept(5) pcesp(1) version-4(4)};
-
-TARGETACTIVITYMONITOR-1 ::= SEQUENCE
-{
- version INTEGER DEFAULT 1, -- header, version -
- lIInstanceid LIIDType, -- header, who -
- timestamp UTCTime, -- header, when -
- targetLocation LocationType, -- header, where -
- direction DirectionType,
- iRITransaction IRITransactionType DEFAULT iRIreport,
- iRITransactionNumber INTEGER,
- userSignal UserSignalType, -- Either copy or interpreted signalling
- cryptoCheckSum BIT STRING OPTIONAL
-}
-
-TTRAFFIC ::= SEQUENCE
-{
- version INTEGER DEFAULT 1, -- header, version -
- lIInstanceid LIIDType,
- iRITransactionNumber INTEGER,
- trafficPacket BIT STRING,
- cryptoChecksum BIT STRING OPTIONAL
-}
-
-CTTRAFFIC ::= SEQUENCE
-{
- version INTEGER DEFAULT 1, -- header, version -
- lIInstanceid LIIDType,
- correspondentCount INTEGER,
- iRITransactionNumber INTEGER,
- trafficPacket BIT STRING,
- cryptoChecksum BIT STRING OPTIONAL
-}
-
-DirectionType ::= ENUMERATED
-{
- toTarget,
- fromTarget,
- unknown
-}
-
-UserSignalType ::= CHOICE
-{
- copySignal BIT STRING,
- interpretedSignal INTEGER,
- cdcPdu CdcPdu
-}
-
-IRITransactionType ::= ENUMERATED
-{
- iRIbegin,
- iRIcontinue,
- iRIend,
- iRIreport
-}
-
-LocationType ::= CHOICE
-{
- geodeticData BIT STRING,
- nameAddress PrintableString (SIZE (1..100))
-}
-
-LIIDType ::= INTEGER (0..65535) -- 16 bit integer to identify interception
-
-END \ No newline at end of file
diff --git a/epan/dissectors/asn1/HI2Operations/UmtsHI2Operations.asn b/epan/dissectors/asn1/HI2Operations/UmtsHI2Operations.asn
index f13d62c1bf..f8645c6e97 100644
--- a/epan/dissectors/asn1/HI2Operations/UmtsHI2Operations.asn
+++ b/epan/dissectors/asn1/HI2Operations/UmtsHI2Operations.asn
@@ -1,56 +1,139 @@
--- WS Modified UmtsHI2Operations just containing the imported defines
---
-UmtsHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi2(1) r8(8) version-1(1)}
+--- WS Modified UmtsHI2Operations just containing the imported defines
+---
+UmtsHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2)
+threeGPP(4) hi2(1) r16 (16) version-1 (1)}
DEFINITIONS IMPLICIT TAGS ::=
-
BEGIN
+IMPORTS
+ LawfulInterceptionIdentifier,
+ TimeStamp,
+ Network-Identifier,
+ National-Parameters,
+ National-HI2-ASN1parameters,
+ DataNodeAddress,
+ IPAddress,
+ IP-value,
+ X25Address
+ FROM HI2Operations
+ {itu-t(0) identified-organization(4) etsi(0) securityDomain(2)
+ lawfulIntercept(2) hi2(1) version18(18)}; -- Imported from TS 101 671 v3.14.1
-UmtsQos ::= CHOICE
-{
- qosMobileRadio [1] OCTET STRING,
- -- The qosMobileRadio parameter shall be coded in accordance with the S 10.5.6.5 of
- -- document [9] without the Quality of service IEI and Length of
- -- quality of service IE (. That is, first
- -- two octets carrying 'Quality of service IEI' and 'Length of quality of service
- -- IE' shall be excluded).
- qosGn [2] OCTET STRING
- -- qosGn parameter shall be coded in accordance with S 7.7.34 of document [17]
+CivicAddress ::= CHOICE {
+ detailedCivicAddress SET OF DetailedCivicAddress,
+ xmlCivicAddress XmlCivicAddress,
+ ...
}
-
-IMSevent ::= ENUMERATED
-{
- unfilteredSIPmessage (1),
- -- This value indicates to LEMF that the whole SIP message is sent.
-
- ...,
- sIPheaderOnly (2)
- -- If warrant requires only IRI then specific content in a 'sIPMessage'
- -- (e.g. 'Message', etc.) has been deleted before sending it to LEMF.
+XmlCivicAddress ::= UTF8String
+ -- Must conform to the February 2008 version of the XML format on the representation of
+ -- civic location described in IETF RFC 5139[72].
+DetailedCivicAddress ::= SEQUENCE {
+ building [1] UTF8String OPTIONAL,
+ -- Building (structure), for example Hope Theatre
+ room [2] UTF8String OPTIONAL,
+ -- Unit (apartment, suite), for example 12a
+ placeType [3] UTF8String OPTIONAL,
+ -- Place-type, for example office
+ postalCommunityName [4] UTF8String OPTIONAL,
+ -- Postal Community Name, for example Leonia
+ additionalCode [5] UTF8String OPTIONAL,
+ -- Additional Code, for example 13203000003
+ seat [6] UTF8String OPTIONAL,
+ -- Seat, desk, or cubicle, workstation, for example WS 181
+ primaryRoad [7] UTF8String OPTIONAL,
+ -- RD is the primary road name, for example Broadway
+ primaryRoadDirection [8] UTF8String OPTIONAL,
+ -- PRD is the leading road direction, for example N or North
+ trailingStreetSuffix [9] UTF8String OPTIONAL,
+ -- POD or trailing street suffix, for example SW or South West
+ streetSuffix [10] UTF8String OPTIONAL,
+ -- Street suffix or type, for example Avenue or Platz or Road
+ houseNumber [11] UTF8String OPTIONAL,
+ -- House number, for example 123
+ houseNumberSuffix [12] UTF8String OPTIONAL,
+ -- House number suffix, for example A or Ter
+ landmarkAddress [13] UTF8String OPTIONAL,
+ -- Landmark or vanity address, for example Columbia University
+ additionalLocation [114] UTF8String OPTIONAL,
+ -- Additional location, for example South Wing
+ name [15] UTF8String OPTIONAL,
+ -- Residence and office occupant, for example Joe's Barbershop
+ floor [16] UTF8String OPTIONAL,
+ -- Floor, for example 4th floor
+ primaryStreet [17] UTF8String OPTIONAL,
+ -- Primary street name, for example Broadway
+ primaryStreetDirection [18] UTF8String OPTIONAL,
+ -- PSD is the leading street direction, for example N or North
+ roadSection [19] UTF8String OPTIONAL,
+ -- Road section, for example 14
+ roadBranch [20] UTF8String OPTIONAL,
+ -- Road branch, for example Lane 7
+ roadSubBranch [21] UTF8String OPTIONAL,
+ -- Road sub-branch, for example Alley 8
+ roadPreModifier [22] UTF8String OPTIONAL,
+ -- Road pre-modifier, for example Old
+ roadPostModifier [23] UTF8String OPTIONAL,
+ -- Road post-modifier, for example Extended
+ postalCode [24]UTF8String OPTIONAL,
+ -- Postal/zip code, for example 10027-1234
+ town [25] UTF8String OPTIONAL,
+ county [26] UTF8String OPTIONAL,
+ -- An administrative sub-section, often defined in ISO.3166-2[74] International
+ -- Organization for Standardization, "Codes for the representation of names of
+ -- countries and their subdivisions - Part 2: Country subdivision code"
+ country [27] UTF8String,
+ -- Defined in ISO.3166-1 [39] International Organization for Standardization, "Codes for
+ -- the representation of names of countries and their subdivisions - Part 1: Country
+ -- codes". Such definition is not optional in case of civic address. It is the
+ -- minimum information needed to qualify and describe a civic address, when a
+ -- regulation of a specific country requires such information
+ language [28] UTF8String,
+ -- Language defined in the IANA registry according to the assignments found
+ -- in the standard ISO 639 Part 1, "ISO 639-1:2002[75], Codes for the representation of
+ -- names of languages - Part 1: Alpha-2 code" or using assignments subsequently made
+ -- by the ISO 639 Part 1 maintenance agency
+ ...
}
-LDIevent ::= ENUMERATED
+-- LALS extended location parameters are mapped from the MLP pos element parameters
+-- and attributes defined in [88]. For details see specific [88] clauses refered below.
+ExtendedLocParameters ::= SEQUENCE
{
- targetEntersIA (1),
- targetLeavesIA (2),
- ...
-}
-
-CorrelationValues ::= CHOICE {
-
- iri-to-CC [0] IRI-to-CC-Correlation, -- correlates IRI to Content(s)
- iri-to-iri [1] IRI-to-IRI-Correlation, -- correlates IRI to IRI
- both-IRI-CC [2] SEQUENCE { -- correlates IRI to IRI and IRI to Content(s)
- iri-CC [0] IRI-to-CC-Correlation,
- iri-IRI [1] IRI-to-IRI-Correlation}
-}
-
+ posMethod [0] PrintableString OPTIONAL, -- clause 5.3.93.1
+ mapData [1] -- clause 5.2.2.3
+ CHOICE {base64Map [0] PrintableString, -- clause 5.3.12
+ url [1] PrintableString -- clause 5.3.138
+ } OPTIONAL,
+ altitude [2]
+ SEQUENCE {alt PrintableString, -- clause 5.3.5
+ alt-uncertainty PrintableString OPTIONAL -- clause 5.3.7
+ } OPTIONAL,
+ speed [3] PrintableString OPTIONAL, -- clause 5.3.119
+ direction [4] PrintableString OPTIONAL, -- clause 5.3.26
+ level-conf [5] PrintableString OPTIONAL, -- clause 5.3.24
+ qOS-not-met [6] BOOLEAN OPTIONAL, -- clause 5.3.97
+ motionStateList [7] -- clause 5.2.2.3
+ SEQUENCE {primaryMotionState [0] PrintableString, -- clause 5.3.69
+ secondaryMotionState [1] SEQUENCE OF PrintableString OPTIONAL,
+ confidence [2] PrintableString -- clause 5.3.24
+ } OPTIONAL,
+ floor [8]
+ SEQUENCE {floor-number PrintableString, -- clause 5.3.39
+ floor-number-uncertainty PrintableString OPTIONAL
+ -- clause 5.3.40
+ } OPTIONAL,
+ additional-info [9] PrintableString OPTIONAL, -- clause 5.3.1
+-- The following parameter contains a copy of the unparsed XML code of
+-- MLP response message, i.e. the entire XML document containing
+-- a <slia> (described in [88], clause 5.2.3.2.2) or
+-- a <slirep> (described in [88], clause 5.2.3.2.3) MLP message.
+-- This parameter is present when the LI-LCS client cannot fully map
+-- the MLP response message into an ASN.1 Location object.
-IRI-to-CC-Correlation ::= SEQUENCE { -- correlates IRI to Content
- cc [0] SET OF OCTET STRING,-- correlates IRI to multiple CCs
- iri [1] OCTET STRING OPTIONAL
- -- correlates IRI to CC with signaling
+ lALS-rawMLPPosData [10] UTF8String OPTIONAL,
+ ...
}
-IRI-to-IRI-Correlation ::= OCTET STRING -- correlates IRI to IRI
+LocationErrorCode ::= INTEGER (1..699)
+-- LALS location error codes are the OMA MLP result identifiers defined in [88], Clause 5.4
-END -- OF UmtsHI2Operations
+END -- OF UmtsHI2Operations
diff --git a/epan/dissectors/asn1/HI2Operations/packet-HI2Operations-template.c b/epan/dissectors/asn1/HI2Operations/packet-HI2Operations-template.c
index 129940f5b4..1694efdf18 100644
--- a/epan/dissectors/asn1/HI2Operations/packet-HI2Operations-template.c
+++ b/epan/dissectors/asn1/HI2Operations/packet-HI2Operations-template.c
@@ -1,6 +1,7 @@
/* packet-HI2Operations.c
- * Routines for HI2 (ETSI TS 101 671 V3.5.1 (2009-11))
+ * Routines for HI2 (ETSI TS 101 671 V3.15.1 (2018-06))
* Erwin van Eijk 2010
+ * Joakim Karlsson 2023
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -22,13 +23,13 @@
#define PNAME "HI2Operations"
#define PSNAME "HI2OPERATIONS"
-#define PFNAME "hi2operations"
+#define PFNAME "HI2operations"
void proto_register_HI2Operations(void);
void proto_reg_handoff_HI2Operations(void);
/* Initialize the protocol and registered fields */
-int proto_HI2Operations = -1;
+int proto_HI2Operations;
#include "packet-HI2Operations-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/acp133/packet-acp133-template.c b/epan/dissectors/asn1/acp133/packet-acp133-template.c
index 22d3c38592..030156ef0b 100644
--- a/epan/dissectors/asn1/acp133/packet-acp133-template.c
+++ b/epan/dissectors/asn1/acp133/packet-acp133-template.c
@@ -33,13 +33,13 @@ void proto_register_acp133(void);
void proto_reg_handoff_acp133(void);
/* Initialize the protocol and registered fields */
-static int proto_acp133 = -1;
+static int proto_acp133;
#include "packet-acp133-hf.c"
/* Initialize the subtree pointers */
-static gint ett_acp133 = -1;
+static gint ett_acp133;
#include "packet-acp133-ett.c"
#include "packet-acp133-fn.c"
diff --git a/epan/dissectors/asn1/acse/packet-acse-template.c b/epan/dissectors/asn1/acse/packet-acse-template.c
index d10208abb8..68d0851995 100644
--- a/epan/dissectors/asn1/acse/packet-acse-template.c
+++ b/epan/dissectors/asn1/acse/packet-acse-template.c
@@ -47,21 +47,21 @@ void proto_register_acse(void);
void proto_reg_handoff_acse(void);
/* Initialize the protocol and registered fields */
-int proto_acse = -1;
-int proto_clacse = -1;
+int proto_acse;
+int proto_clacse;
#include "packet-acse-hf.c"
-static gint hf_acse_user_data = -1;
+static gint hf_acse_user_data;
/* Initialize the subtree pointers */
-static gint ett_acse = -1;
+static gint ett_acse;
#include "packet-acse-ett.c"
-static expert_field ei_acse_dissector_not_available = EI_INIT;
-static expert_field ei_acse_malformed = EI_INIT;
-static expert_field ei_acse_invalid_oid = EI_INIT;
+static expert_field ei_acse_dissector_not_available;
+static expert_field ei_acse_malformed;
+static expert_field ei_acse_invalid_oid;
static dissector_handle_t acse_handle = NULL;
diff --git a/epan/dissectors/asn1/ain/ain.cnf b/epan/dissectors/asn1/ain/ain.cnf
index 1ed7ab7e75..3d388fd572 100644
--- a/epan/dissectors/asn1/ain/ain.cnf
+++ b/epan/dissectors/asn1/ain/ain.cnf
@@ -199,7 +199,7 @@ static const ain_err_t ain_err_tab[] = {
proto_tree_add_item(subtree, hf_ain_numbering_plan, parameter_tvb, 1, 1, ENC_BIG_ENDIAN);
- proto_tree_add_item(subtree, hf_ain_bcd_digits, parameter_tvb, 2, tvb_reported_length_remaining(parameter_tvb, 2), ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(subtree, hf_ain_bcd_digits, parameter_tvb, 2, tvb_reported_length_remaining(parameter_tvb, 2), ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
#.FN_BODY CarrierFormat VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
@@ -218,7 +218,7 @@ static const ain_err_t ain_err_tab[] = {
proto_tree_add_item(subtree, hf_ain_nr_digits, parameter_tvb, 1, 1, ENC_BIG_ENDIAN);
/* 2nd Digit 1st Digit .. */
- proto_tree_add_item(subtree, hf_ain_carrier_bcd_digits, parameter_tvb, 2, tvb_reported_length_remaining(parameter_tvb, 2), ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(subtree, hf_ain_carrier_bcd_digits, parameter_tvb, 2, tvb_reported_length_remaining(parameter_tvb, 2), ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
#.FN_BODY AMAslpID VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
@@ -231,7 +231,7 @@ static const ain_err_t ain_err_tab[] = {
subtree = proto_item_add_subtree(actx->created_item, ett_ain_amaslpid);
- proto_tree_add_item(subtree, hf_ain_amaslpid, parameter_tvb, 0, tvb_reported_length_remaining(parameter_tvb, 0), ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(subtree, hf_ain_amaslpid, parameter_tvb, 0, tvb_reported_length_remaining(parameter_tvb, 0), ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
#.FIELD_ATTR
DisplayInformation/notificationIndicator ABBREV=displayInformation.notificationIndicator
diff --git a/epan/dissectors/asn1/ain/packet-ain-template.c b/epan/dissectors/asn1/ain/packet-ain-template.c
index cf64e68a5f..e9e598adac 100644
--- a/epan/dissectors/asn1/ain/packet-ain-template.c
+++ b/epan/dissectors/asn1/ain/packet-ain-template.c
@@ -41,37 +41,37 @@ void proto_reg_handoff_ain(void);
/* Initialize the protocol and registered fields */
-static int proto_ain = -1;
+static int proto_ain;
static dissector_handle_t ain_handle;
/* include constants */
#include "packet-ain-val.h"
-static int hf_ain_ext_type_oid = -1;
-static int hf_ain_odd_even_indicator = -1;
-static int hf_ain_nature_of_address = -1;
-static int hf_ain_numbering_plan = -1;
-static int hf_ain_bcd_digits = -1;
-static int hf_ain_carrier_selection = -1;
-static int hf_ain_nature_of_carrier = -1;
-static int hf_ain_nr_digits = -1;
-static int hf_ain_carrier_bcd_digits = -1;
-static int hf_ain_amaslpid = -1;
+static int hf_ain_ext_type_oid;
+static int hf_ain_odd_even_indicator;
+static int hf_ain_nature_of_address;
+static int hf_ain_numbering_plan;
+static int hf_ain_bcd_digits;
+static int hf_ain_carrier_selection;
+static int hf_ain_nature_of_carrier;
+static int hf_ain_nr_digits;
+static int hf_ain_carrier_bcd_digits;
+static int hf_ain_amaslpid;
#include "packet-ain-hf.c"
/* Initialize the subtree pointers */
-static int ett_ain = -1;
-static int ett_ain_digits = -1;
-static int ett_ain_carrierformat = -1;
-static int ett_ain_amaslpid = -1;
+static int ett_ain;
+static int ett_ain_digits;
+static int ett_ain_carrierformat;
+static int ett_ain_amaslpid;
#include "packet-ain-ett.c"
-static expert_field ei_ain_unknown_invokeData = EI_INIT;
-static expert_field ei_ain_unknown_returnResultData = EI_INIT;
-static expert_field ei_ain_unknown_returnErrorData = EI_INIT;
+static expert_field ei_ain_unknown_invokeData;
+static expert_field ei_ain_unknown_returnResultData;
+static expert_field ei_ain_unknown_returnErrorData;
/* Global variables */
static guint32 opcode = 0;
diff --git a/epan/dissectors/asn1/ansi_map/ansi_map.asn b/epan/dissectors/asn1/ansi_map/ansi_map.asn
index bd7c4b6f4e..cfda655b6f 100644
--- a/epan/dissectors/asn1/ansi_map/ansi_map.asn
+++ b/epan/dissectors/asn1/ansi_map/ansi_map.asn
@@ -1773,9 +1773,6 @@ OriginationRequest ::= [PRIVATE 18] SET {
--(Originating MSC) M 6.5.2.82 1 0 0 1 0 1 0 1 (0x95)(0x15)
msid MSID OPTIONAL,
-- M 6.5.2.bv k
- originationTriggers [98] IMPLICIT OriginationTriggers,
- --M 6.5.2.90 1 0 0 1 1 1 1 1 (0x9f)
- -- 0 1 1 0 0 0 1 0 (0x62) (98)
transactionCapability [123] IMPLICIT TransactionCapability,
--M 6.5.2.160 1 0 0 1 1 1 1 1 (0x9f)
acgencountered [340] IMPLICIT ACGEncountered OPTIONAL,
@@ -1793,12 +1790,7 @@ OriginationRequest ::= [PRIVATE 18] SET {
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
--O 6.5.2.25 a 1 0 0 1 1 1 1 1 (0x9f)
-- 0 1 0 1 0 1 0 0 (0x54)
- cdmaServiceOption [175] IMPLICIT CDMAServiceOption OPTIONAL,
- -- O 6.5.2.f
locationAreaID [33] IMPLICIT LocationAreaID OPTIONAL,
- -- O 6.5.2.77 a
- mobileDirectoryNumber [93] IMPLICIT MobileDirectoryNumber OPTIONAL,
- --O 6.5.2.80 b 1 0 0 1 1 1 1 1 (0x9f)
-- 0 1 0 1 1 1 0 1 (0x5d)
featureIndicator [306] IMPLICIT FeatureIndicator OPTIONAL,
-- O 6.5.2.ej m
@@ -1811,8 +1803,6 @@ OriginationRequest ::= [PRIVATE 18] SET {
pc-ssn [32] IMPLICIT PC-SSN OPTIONAL,
--(Originating MSC), O 6.5.2.93 e 1 0 0 1 1 1 1 1 (0x9f)
-- 0 0 1 0 0 0 0 0 (0x20)
- preferredLanguageIndicator [147] IMPLICIT PreferredLanguageIndicator OPTIONAL,
- -- O 6.5.2.96 j
senderIdentificationNumber [103] IMPLICIT SenderIdentificationNumber OPTIONAL,
--O 6.5.2.116 f 1 0 0 1 1 1 1 1 (0x9f)
-- 0 1 1 0 0 1 1 1 (0x67)
@@ -1825,11 +1815,101 @@ OriginationRequest ::= [PRIVATE 18] SET {
winCapability [280] IMPLICIT WINCapability OPTIONAL,
-- O 6.5.2.di a
-- NS0027
- callingPartyCategory [355] IMPLICIT CallingPartyCategory OPTIONAL,
- -- O 6.5.2.gl
meid [390] IMPLICIT MEID OPTIONAL,
+-- Profile **Macro** O 6.5.2.97 h
+ authenticationCapability [78] IMPLICIT AuthenticationCapability OPTIONAL,
+ -- O 6.5.2.8 a
+ callingFeaturesIndicator [25] IMPLICIT CallingFeaturesIndicator OPTIONAL,
+ -- O 6.5.2.20 b
+ carrierDigits [86] IMPLICIT CarrierDigits OPTIONAL,
+ -- O 6.5.2.28 c
+ cdmaServiceOptionList [176] IMPLICIT CDMAServiceOptionList OPTIONAL,
+ -- O 6.5.2.g d
+ controlNetworkID [307] IMPLICIT ControlNetworkID OPTIONAL,
+ -- O 6.5.2.ek u
+ dmh-AccountCodeDigits [140] IMPLICIT DMH-AccountCodeDigits OPTIONAL,
+ -- O 6.5.2.59 d
+ dmh-AlternateBillingDigits [141] IMPLICIT DMH-AlternateBillingDigits OPTIONAL,
+ -- O 6.5.2.60 d
+ dmh-BillingDigits [142] IMPLICIT DMH-BillingDigits OPTIONAL,
+ -- O 6.5.2.61 d
+ geographicAuthorization [143] IMPLICIT GeographicAuthorization OPTIONAL,
+ -- O 6.5.2.68 e
+ meidValidated [401] IMPLICIT MEIDValidated OPTIONAL,
+ -- O 3.2.2.98
+ messageWaitingNotificationCount [92] IMPLICIT MessageWaitingNotificationCount OPTIONAL,
+ -- O 6.5.2.78 f
+ messageWaitingNotificationType [145] IMPLICIT MessageWaitingNotificationType OPTIONAL,
+ -- O 6.5.2.79 g
+ mobileDirectoryNumber [93] IMPLICIT MobileDirectoryNumber OPTIONAL,
+ -- O 6.5.2.80 d
+ mobilePositionCapability [335] IMPLICIT MobilePositionCapability OPTIONAL,
+ -- O 6.5.2.fm t TIA/EIA/J-STD-036-A
+ originationIndicator [23] IMPLICIT OriginationIndicator OPTIONAL,
+ -- O 6.5.2.89 h
+ originationTriggers [98] IMPLICIT OriginationTriggers OPTIONAL,
+ -- O 6.5.2.90 i
+ pACAIndicator [146] IMPLICIT PACAIndicator OPTIONAL,
+ -- O 6.5.2.91 j
+ preferredLanguageIndicator [147] IMPLICIT PreferredLanguageIndicator OPTIONAL,
+ -- O 6.5.2.96 k
+ qosPriority [348] IMPLICIT QoSPriority OPTIONAL,
+ --6.5.2.ge z
+ restrictionDigits [227] IMPLICIT RestrictionDigits OPTIONAL,
+ -- O 6.5.2.113 l
+ routingDigits [150] IMPLICIT RoutingDigits OPTIONAL,
+ -- O 6.5.2.114 m
+ pSID-RSIDList [203] IMPLICIT PSID-RSIDList OPTIONAL,
+ -- O 6 .5.2.ag u , w
+ sms-OriginationRestrictions [115] IMPLICIT SMS-OriginationRestrictions OPTIONAL,
+ -- O 6.5.2.136 n
+ sms-TerminationRestrictions [117] IMPLICIT SMS-TerminationRestrictions OPTIONAL,
+ -- O 6.5.2.138 o
+ spinipin [154] IMPLICIT SPINIPIN OPTIONAL,
+ -- O 6.5.2.139 p
+ spiniTriggers [155] IMPLICIT SPINITriggers OPTIONAL,
+ -- O 6.5.2.140 q
+ tdmaDataFeaturesIndicator [221] IMPLICIT TDMADataFeaturesIndicator OPTIONAL,
+ -- O 6.5.2.az s
+ terminationRestrictionCode [24] IMPLICIT TerminationRestrictionCode OPTIONAL,
+ -- O 6.5.2.157 r
+ terminationTriggers [122] IMPLICIT TerminationTriggers OPTIONAL,
+ -- O 6.5.2.159 s
+ triggerAddressList [276] IMPLICIT TriggerAddressList OPTIONAL,
+ -- O 6.5.2.de t
+ userGroup [208] IMPLICIT UserGroup OPTIONAL,
+ -- O 6 .5.2.al p
+ nonPublicData [200] IMPLICIT NonPublicData OPTIONAL,
+ -- O 6 .5.2.ad v
+ userZoneData [209] IMPLICIT UserZoneData OPTIONAL,
+ -- O 6 .5.2.am v , w
+ callingPartyCategory [355] IMPLICIT CallingPartyCategory OPTIONAL,
+ -- O 6.5.2.gl z
+ lirMode [369] IMPLICIT LIRMode OPTIONAL,
+ -- O 6.5.2.gz z
+-- END MACRO
+-- Mobinfo_CDMA **Macro** O 6.5.2.fo g expanded:
+ cdmaChannelData [63] IMPLICIT CDMAChannelData OPTIONAL,
+ -- (Serving) O 6.5.2.30 c
+ cdmaCodeChannel [68] IMPLICIT CDMACodeChannel OPTIONAL,
+ -- O 6.5.2.31 a
+ cdmaMobileCapabilities [330] IMPLICIT CDMAMobileCapabilities OPTIONAL,
+ -- O 6.5.2.xx a
+ cdmaPrivateLongCodeMask [67] IMPLICIT CDMAPrivateLongCodeMask OPTIONAL,
+ -- O 6.5.2.36 a
+ cdmaServingOneWayDelay2 [347] IMPLICIT CDMAServingOneWayDelay2 OPTIONAL,
+ -- O 6.5.2.gd a
+ cdmaServiceOption [175] IMPLICIT CDMAServiceOption OPTIONAL,
+ -- O 6.5.2.f m
+ cdmaTargetMAHOList [136] IMPLICIT CDMATargetMAHOList OPTIONAL,
+ -- O 6.5.2.43 g
+ cdmaPSMMList [346] IMPLICIT CDMAPSMMList OPTIONAL,
+ -- O 6.5.2.gc a
-- O
- ... }
+ mpcAddress [370] IMPLICIT MPCAddress OPTIONAL,
+ -- O 6.5.2.ha z, ab
+ ...
+ }
-- OriginationRequest RETURN RESULT Parameters
OriginationRequestRes ::= [PRIVATE 18] SET {
diff --git a/epan/dissectors/asn1/ansi_map/packet-ansi_map-template.c b/epan/dissectors/asn1/ansi_map/packet-ansi_map-template.c
index 544517f9c5..b71d81b3e8 100644
--- a/epan/dissectors/asn1/ansi_map/packet-ansi_map-template.c
+++ b/epan/dissectors/asn1/ansi_map/packet-ansi_map-template.c
@@ -105,251 +105,253 @@ static gint ansi_map_response_matching_type = ANSI_MAP_TID_AND_SOURCE;
static dissector_handle_t ansi_map_handle=NULL;
/* Initialize the protocol and registered fields */
-static int ansi_map_tap = -1;
-static int proto_ansi_map = -1;
-
-static int hf_ansi_map_op_code_fam = -1;
-static int hf_ansi_map_op_code = -1;
-
-static int hf_ansi_map_reservedBitH = -1;
-static int hf_ansi_map_reservedBitHG = -1;
-static int hf_ansi_map_reservedBitHGFE = -1;
-static int hf_ansi_map_reservedBitFED = -1;
-static int hf_ansi_map_reservedBitD = -1;
-static int hf_ansi_map_reservedBitED = -1;
-
-static int hf_ansi_map_type_of_digits = -1;
-static int hf_ansi_map_na = -1;
-static int hf_ansi_map_pi = -1;
-static int hf_ansi_map_navail = -1;
-static int hf_ansi_map_si = -1;
-static int hf_ansi_map_digits_enc = -1;
-static int hf_ansi_map_np = -1;
-static int hf_ansi_map_nr_digits = -1;
-static int hf_ansi_map_bcd_digits = -1;
-static int hf_ansi_map_ia5_digits = -1;
-static int hf_ansi_map_subaddr_type = -1;
-static int hf_ansi_map_subaddr_odd_even = -1;
-static int hf_ansi_alertcode_cadence = -1;
-static int hf_ansi_alertcode_pitch = -1;
-static int hf_ansi_alertcode_alertaction = -1;
-static int hf_ansi_map_announcementcode_tone = -1;
-static int hf_ansi_map_announcementcode_class = -1;
-static int hf_ansi_map_announcementcode_std_ann = -1;
-static int hf_ansi_map_announcementcode_cust_ann = -1;
-static int hf_ansi_map_authorizationperiod_period = -1;
-static int hf_ansi_map_value = -1;
-static int hf_ansi_map_msc_type = -1;
-static int hf_ansi_map_handoffstate_pi = -1;
-static int hf_ansi_map_tgn = -1;
-static int hf_ansi_map_tmn = -1;
-static int hf_ansi_map_messagewaitingnotificationcount_tom = -1;
-static int hf_ansi_map_messagewaitingnotificationcount_no_mw = -1;
-static int hf_ansi_map_messagewaitingnotificationtype_mwi = -1;
-static int hf_ansi_map_messagewaitingnotificationtype_apt = -1;
-static int hf_ansi_map_messagewaitingnotificationtype_pt = -1;
-
-static int hf_ansi_map_trans_cap_prof = -1;
-static int hf_ansi_map_trans_cap_busy = -1;
-static int hf_ansi_map_trans_cap_ann = -1;
-static int hf_ansi_map_trans_cap_rui = -1;
-static int hf_ansi_map_trans_cap_spini = -1;
-static int hf_ansi_map_trans_cap_uzci = -1;
-static int hf_ansi_map_trans_cap_ndss = -1;
-static int hf_ansi_map_trans_cap_nami = -1;
-static int hf_ansi_trans_cap_multerm = -1;
-static int hf_ansi_map_terminationtriggers_busy = -1;
-static int hf_ansi_map_terminationtriggers_rf = -1;
-static int hf_ansi_map_terminationtriggers_npr = -1;
-static int hf_ansi_map_terminationtriggers_na = -1;
-static int hf_ansi_map_terminationtriggers_nr = -1;
-static int hf_ansi_trans_cap_tl = -1;
-static int hf_ansi_map_cdmaserviceoption = -1;
-static int hf_ansi_trans_cap_waddr = -1;
-static int hf_ansi_map_MarketID = -1;
-static int hf_ansi_map_swno = -1;
-static int hf_ansi_map_idno = -1;
-static int hf_ansi_map_segcount = -1;
-static int hf_ansi_map_sms_originationrestrictions_fmc = -1;
-static int hf_ansi_map_sms_originationrestrictions_direct = -1;
-static int hf_ansi_map_sms_originationrestrictions_default = -1;
-static int hf_ansi_map_systemcapabilities_auth = -1;
-static int hf_ansi_map_systemcapabilities_se = -1;
-static int hf_ansi_map_systemcapabilities_vp = -1;
-static int hf_ansi_map_systemcapabilities_cave = -1;
-static int hf_ansi_map_systemcapabilities_ssd = -1;
-static int hf_ansi_map_systemcapabilities_dp = -1;
-
-static int hf_ansi_map_mslocation_lat = -1;
-static int hf_ansi_map_mslocation_long = -1;
-static int hf_ansi_map_mslocation_res = -1;
-static int hf_ansi_map_nampscallmode_namps = -1;
-static int hf_ansi_map_nampscallmode_amps = -1;
-static int hf_ansi_map_nampschanneldata_navca = -1;
-static int hf_ansi_map_nampschanneldata_CCIndicator = -1;
-
-static int hf_ansi_map_callingfeaturesindicator_cfufa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cfbfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cfnafa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cwfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_3wcfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_pcwfa =-1;
-static int hf_ansi_map_callingfeaturesindicator_dpfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_ahfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_uscfvmfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_uscfmsfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_uscfnrfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cpdsfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_ccsfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_epefa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cdfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_vpfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_ctfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cnip1fa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cnip2fa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cnirfa = -1;
-static int hf_ansi_map_callingfeaturesindicator_cniroverfa = -1;
-static int hf_ansi_map_cdmacallmode_cdma = -1;
-static int hf_ansi_map_cdmacallmode_amps = -1;
-static int hf_ansi_map_cdmacallmode_namps = -1;
-static int hf_ansi_map_cdmacallmode_cls1 = -1;
-static int hf_ansi_map_cdmacallmode_cls2 = -1;
-static int hf_ansi_map_cdmacallmode_cls3 = -1;
-static int hf_ansi_map_cdmacallmode_cls4 = -1;
-static int hf_ansi_map_cdmacallmode_cls5 = -1;
-static int hf_ansi_map_cdmacallmode_cls6 = -1;
-static int hf_ansi_map_cdmacallmode_cls7 = -1;
-static int hf_ansi_map_cdmacallmode_cls8 = -1;
-static int hf_ansi_map_cdmacallmode_cls9 = -1;
-static int hf_ansi_map_cdmacallmode_cls10 = -1;
-static int hf_ansi_map_cdmachanneldata_Frame_Offset = -1;
-static int hf_ansi_map_cdmachanneldata_CDMA_ch_no = -1;
-static int hf_ansi_map_cdmachanneldata_band_cls = -1;
-static int hf_ansi_map_cdmachanneldata_lc_mask_b6 = -1;
-static int hf_ansi_map_cdmachanneldata_lc_mask_b5 = -1;
-static int hf_ansi_map_cdmachanneldata_lc_mask_b4 = -1;
-static int hf_ansi_map_cdmachanneldata_lc_mask_b3 = -1;
-static int hf_ansi_map_cdmachanneldata_lc_mask_b2 = -1;
-static int hf_ansi_map_cdmachanneldata_lc_mask_b1 = -1;
-static int hf_ansi_map_cdmachanneldata_np_ext = -1;
-static int hf_ansi_map_cdmachanneldata_nominal_pwr = -1;
-static int hf_ansi_map_cdmachanneldata_nr_preamble = -1;
-
-static int hf_ansi_map_cdmastationclassmark_pc = -1;
-static int hf_ansi_map_cdmastationclassmark_dtx = -1;
-static int hf_ansi_map_cdmastationclassmark_smi = -1;
-static int hf_ansi_map_cdmastationclassmark_dmi = -1;
-static int hf_ansi_map_channeldata_vmac = -1;
-static int hf_ansi_map_channeldata_dtx = -1;
-static int hf_ansi_map_channeldata_scc = -1;
-static int hf_ansi_map_channeldata_chno = -1;
-static int hf_ansi_map_ConfidentialityModes_vp = -1;
-static int hf_ansi_map_controlchanneldata_dcc = -1;
-static int hf_ansi_map_controlchanneldata_cmac = -1;
-static int hf_ansi_map_controlchanneldata_chno = -1;
-static int hf_ansi_map_controlchanneldata_sdcc1 = -1;
-static int hf_ansi_map_controlchanneldata_sdcc2 = -1;
-static int hf_ansi_map_ConfidentialityModes_se = -1;
-static int hf_ansi_map_deniedauthorizationperiod_period = -1;
-static int hf_ansi_map_ConfidentialityModes_dp = -1;
-
-static int hf_ansi_map_originationtriggers_all = -1;
-static int hf_ansi_map_originationtriggers_local = -1;
-static int hf_ansi_map_originationtriggers_ilata = -1;
-static int hf_ansi_map_originationtriggers_olata = -1;
-static int hf_ansi_map_originationtriggers_int = -1;
-static int hf_ansi_map_originationtriggers_wz = -1;
-static int hf_ansi_map_originationtriggers_unrec = -1;
-static int hf_ansi_map_originationtriggers_rvtc = -1;
-static int hf_ansi_map_originationtriggers_star = -1;
-static int hf_ansi_map_originationtriggers_ds = -1;
-static int hf_ansi_map_originationtriggers_pound = -1;
-static int hf_ansi_map_originationtriggers_dp = -1;
-static int hf_ansi_map_originationtriggers_pa = -1;
-static int hf_ansi_map_originationtriggers_nodig = -1;
-static int hf_ansi_map_originationtriggers_onedig = -1;
-static int hf_ansi_map_originationtriggers_twodig = -1;
-static int hf_ansi_map_originationtriggers_threedig = -1;
-static int hf_ansi_map_originationtriggers_fourdig = -1;
-static int hf_ansi_map_originationtriggers_fivedig = -1;
-static int hf_ansi_map_originationtriggers_sixdig = -1;
-static int hf_ansi_map_originationtriggers_sevendig = -1;
-static int hf_ansi_map_originationtriggers_eightdig = -1;
-static int hf_ansi_map_originationtriggers_ninedig = -1;
-static int hf_ansi_map_originationtriggers_tendig = -1;
-static int hf_ansi_map_originationtriggers_elevendig = -1;
-static int hf_ansi_map_originationtriggers_twelvedig = -1;
-static int hf_ansi_map_originationtriggers_thirteendig = -1;
-static int hf_ansi_map_originationtriggers_fourteendig = -1;
-static int hf_ansi_map_originationtriggers_fifteendig = -1;
-static int hf_ansi_map_triggercapability_init = -1;
-static int hf_ansi_map_triggercapability_kdigit = -1;
-static int hf_ansi_map_triggercapability_all = -1;
-static int hf_ansi_map_triggercapability_rvtc = -1;
-static int hf_ansi_map_triggercapability_oaa = -1;
-static int hf_ansi_map_triggercapability_oans = -1;
-static int hf_ansi_map_triggercapability_odisc = -1;
-static int hf_ansi_map_triggercapability_ona = -1;
-static int hf_ansi_map_triggercapability_ct = -1;
-static int hf_ansi_map_triggercapability_unrec =-1;
-static int hf_ansi_map_triggercapability_pa = -1;
-static int hf_ansi_map_triggercapability_at = -1;
-static int hf_ansi_map_triggercapability_cgraa = -1;
-static int hf_ansi_map_triggercapability_it = -1;
-static int hf_ansi_map_triggercapability_cdraa = -1;
-static int hf_ansi_map_triggercapability_obsy = -1;
-static int hf_ansi_map_triggercapability_tra = -1;
-static int hf_ansi_map_triggercapability_tbusy = -1;
-static int hf_ansi_map_triggercapability_tna = -1;
-static int hf_ansi_map_triggercapability_tans = -1;
-static int hf_ansi_map_triggercapability_tdisc = -1;
-static int hf_ansi_map_winoperationscapability_conn = -1;
-static int hf_ansi_map_winoperationscapability_ccdir = -1;
-static int hf_ansi_map_winoperationscapability_pos = -1;
-static int hf_ansi_map_PACA_Level = -1;
-static int hf_ansi_map_pacaindicator_pa = -1;
-
-static int hf_ansi_map_point_code = -1;
-static int hf_ansi_map_SSN = -1;
-static int hf_ansi_map_win_trigger_list = -1;
+static int ansi_map_tap;
+static int proto_ansi_map;
+
+#if 0
+static int hf_ansi_map_op_code_fam;
+static int hf_ansi_map_op_code;
+#endif
+
+static int hf_ansi_map_reservedBitH;
+static int hf_ansi_map_reservedBitHG;
+static int hf_ansi_map_reservedBitHGFE;
+static int hf_ansi_map_reservedBitFED;
+static int hf_ansi_map_reservedBitD;
+static int hf_ansi_map_reservedBitED;
+
+static int hf_ansi_map_type_of_digits;
+static int hf_ansi_map_na;
+static int hf_ansi_map_pi;
+static int hf_ansi_map_navail;
+static int hf_ansi_map_si;
+static int hf_ansi_map_digits_enc;
+static int hf_ansi_map_np;
+static int hf_ansi_map_nr_digits;
+static int hf_ansi_map_bcd_digits;
+static int hf_ansi_map_ia5_digits;
+static int hf_ansi_map_subaddr_type;
+static int hf_ansi_map_subaddr_odd_even;
+static int hf_ansi_alertcode_cadence;
+static int hf_ansi_alertcode_pitch;
+static int hf_ansi_alertcode_alertaction;
+static int hf_ansi_map_announcementcode_tone;
+static int hf_ansi_map_announcementcode_class;
+static int hf_ansi_map_announcementcode_std_ann;
+static int hf_ansi_map_announcementcode_cust_ann;
+static int hf_ansi_map_authorizationperiod_period;
+static int hf_ansi_map_value;
+static int hf_ansi_map_msc_type;
+static int hf_ansi_map_handoffstate_pi;
+static int hf_ansi_map_tgn;
+static int hf_ansi_map_tmn;
+static int hf_ansi_map_messagewaitingnotificationcount_tom;
+static int hf_ansi_map_messagewaitingnotificationcount_no_mw;
+static int hf_ansi_map_messagewaitingnotificationtype_mwi;
+static int hf_ansi_map_messagewaitingnotificationtype_apt;
+static int hf_ansi_map_messagewaitingnotificationtype_pt;
+
+static int hf_ansi_map_trans_cap_prof;
+static int hf_ansi_map_trans_cap_busy;
+static int hf_ansi_map_trans_cap_ann;
+static int hf_ansi_map_trans_cap_rui;
+static int hf_ansi_map_trans_cap_spini;
+static int hf_ansi_map_trans_cap_uzci;
+static int hf_ansi_map_trans_cap_ndss;
+static int hf_ansi_map_trans_cap_nami;
+static int hf_ansi_trans_cap_multerm;
+static int hf_ansi_map_terminationtriggers_busy;
+static int hf_ansi_map_terminationtriggers_rf;
+static int hf_ansi_map_terminationtriggers_npr;
+static int hf_ansi_map_terminationtriggers_na;
+static int hf_ansi_map_terminationtriggers_nr;
+static int hf_ansi_trans_cap_tl;
+static int hf_ansi_map_cdmaserviceoption;
+static int hf_ansi_trans_cap_waddr;
+static int hf_ansi_map_MarketID;
+static int hf_ansi_map_swno;
+static int hf_ansi_map_idno;
+static int hf_ansi_map_segcount;
+static int hf_ansi_map_sms_originationrestrictions_fmc;
+static int hf_ansi_map_sms_originationrestrictions_direct;
+static int hf_ansi_map_sms_originationrestrictions_default;
+static int hf_ansi_map_systemcapabilities_auth;
+static int hf_ansi_map_systemcapabilities_se;
+static int hf_ansi_map_systemcapabilities_vp;
+static int hf_ansi_map_systemcapabilities_cave;
+static int hf_ansi_map_systemcapabilities_ssd;
+static int hf_ansi_map_systemcapabilities_dp;
+
+static int hf_ansi_map_mslocation_lat;
+static int hf_ansi_map_mslocation_long;
+static int hf_ansi_map_mslocation_res;
+static int hf_ansi_map_nampscallmode_namps;
+static int hf_ansi_map_nampscallmode_amps;
+static int hf_ansi_map_nampschanneldata_navca;
+static int hf_ansi_map_nampschanneldata_CCIndicator;
+
+static int hf_ansi_map_callingfeaturesindicator_cfufa;
+static int hf_ansi_map_callingfeaturesindicator_cfbfa;
+static int hf_ansi_map_callingfeaturesindicator_cfnafa;
+static int hf_ansi_map_callingfeaturesindicator_cwfa;
+static int hf_ansi_map_callingfeaturesindicator_3wcfa;
+static int hf_ansi_map_callingfeaturesindicator_pcwfa;
+static int hf_ansi_map_callingfeaturesindicator_dpfa;
+static int hf_ansi_map_callingfeaturesindicator_ahfa;
+static int hf_ansi_map_callingfeaturesindicator_uscfvmfa;
+static int hf_ansi_map_callingfeaturesindicator_uscfmsfa;
+static int hf_ansi_map_callingfeaturesindicator_uscfnrfa;
+static int hf_ansi_map_callingfeaturesindicator_cpdsfa;
+static int hf_ansi_map_callingfeaturesindicator_ccsfa;
+static int hf_ansi_map_callingfeaturesindicator_epefa;
+static int hf_ansi_map_callingfeaturesindicator_cdfa;
+static int hf_ansi_map_callingfeaturesindicator_vpfa;
+static int hf_ansi_map_callingfeaturesindicator_ctfa;
+static int hf_ansi_map_callingfeaturesindicator_cnip1fa;
+static int hf_ansi_map_callingfeaturesindicator_cnip2fa;
+static int hf_ansi_map_callingfeaturesindicator_cnirfa;
+static int hf_ansi_map_callingfeaturesindicator_cniroverfa;
+static int hf_ansi_map_cdmacallmode_cdma;
+static int hf_ansi_map_cdmacallmode_amps;
+static int hf_ansi_map_cdmacallmode_namps;
+static int hf_ansi_map_cdmacallmode_cls1;
+static int hf_ansi_map_cdmacallmode_cls2;
+static int hf_ansi_map_cdmacallmode_cls3;
+static int hf_ansi_map_cdmacallmode_cls4;
+static int hf_ansi_map_cdmacallmode_cls5;
+static int hf_ansi_map_cdmacallmode_cls6;
+static int hf_ansi_map_cdmacallmode_cls7;
+static int hf_ansi_map_cdmacallmode_cls8;
+static int hf_ansi_map_cdmacallmode_cls9;
+static int hf_ansi_map_cdmacallmode_cls10;
+static int hf_ansi_map_cdmachanneldata_Frame_Offset;
+static int hf_ansi_map_cdmachanneldata_CDMA_ch_no;
+static int hf_ansi_map_cdmachanneldata_band_cls;
+static int hf_ansi_map_cdmachanneldata_lc_mask_b6;
+static int hf_ansi_map_cdmachanneldata_lc_mask_b5;
+static int hf_ansi_map_cdmachanneldata_lc_mask_b4;
+static int hf_ansi_map_cdmachanneldata_lc_mask_b3;
+static int hf_ansi_map_cdmachanneldata_lc_mask_b2;
+static int hf_ansi_map_cdmachanneldata_lc_mask_b1;
+static int hf_ansi_map_cdmachanneldata_np_ext;
+static int hf_ansi_map_cdmachanneldata_nominal_pwr;
+static int hf_ansi_map_cdmachanneldata_nr_preamble;
+
+static int hf_ansi_map_cdmastationclassmark_pc;
+static int hf_ansi_map_cdmastationclassmark_dtx;
+static int hf_ansi_map_cdmastationclassmark_smi;
+static int hf_ansi_map_cdmastationclassmark_dmi;
+static int hf_ansi_map_channeldata_vmac;
+static int hf_ansi_map_channeldata_dtx;
+static int hf_ansi_map_channeldata_scc;
+static int hf_ansi_map_channeldata_chno;
+static int hf_ansi_map_ConfidentialityModes_vp;
+static int hf_ansi_map_controlchanneldata_dcc;
+static int hf_ansi_map_controlchanneldata_cmac;
+static int hf_ansi_map_controlchanneldata_chno;
+static int hf_ansi_map_controlchanneldata_sdcc1;
+static int hf_ansi_map_controlchanneldata_sdcc2;
+static int hf_ansi_map_ConfidentialityModes_se;
+static int hf_ansi_map_deniedauthorizationperiod_period;
+static int hf_ansi_map_ConfidentialityModes_dp;
+
+static int hf_ansi_map_originationtriggers_all;
+static int hf_ansi_map_originationtriggers_local;
+static int hf_ansi_map_originationtriggers_ilata;
+static int hf_ansi_map_originationtriggers_olata;
+static int hf_ansi_map_originationtriggers_int;
+static int hf_ansi_map_originationtriggers_wz;
+static int hf_ansi_map_originationtriggers_unrec;
+static int hf_ansi_map_originationtriggers_rvtc;
+static int hf_ansi_map_originationtriggers_star;
+static int hf_ansi_map_originationtriggers_ds;
+static int hf_ansi_map_originationtriggers_pound;
+static int hf_ansi_map_originationtriggers_dp;
+static int hf_ansi_map_originationtriggers_pa;
+static int hf_ansi_map_originationtriggers_nodig;
+static int hf_ansi_map_originationtriggers_onedig;
+static int hf_ansi_map_originationtriggers_twodig;
+static int hf_ansi_map_originationtriggers_threedig;
+static int hf_ansi_map_originationtriggers_fourdig;
+static int hf_ansi_map_originationtriggers_fivedig;
+static int hf_ansi_map_originationtriggers_sixdig;
+static int hf_ansi_map_originationtriggers_sevendig;
+static int hf_ansi_map_originationtriggers_eightdig;
+static int hf_ansi_map_originationtriggers_ninedig;
+static int hf_ansi_map_originationtriggers_tendig;
+static int hf_ansi_map_originationtriggers_elevendig;
+static int hf_ansi_map_originationtriggers_twelvedig;
+static int hf_ansi_map_originationtriggers_thirteendig;
+static int hf_ansi_map_originationtriggers_fourteendig;
+static int hf_ansi_map_originationtriggers_fifteendig;
+static int hf_ansi_map_triggercapability_init;
+static int hf_ansi_map_triggercapability_kdigit;
+static int hf_ansi_map_triggercapability_all;
+static int hf_ansi_map_triggercapability_rvtc;
+static int hf_ansi_map_triggercapability_oaa;
+static int hf_ansi_map_triggercapability_oans;
+static int hf_ansi_map_triggercapability_odisc;
+static int hf_ansi_map_triggercapability_ona;
+static int hf_ansi_map_triggercapability_ct;
+static int hf_ansi_map_triggercapability_unrec;
+static int hf_ansi_map_triggercapability_pa;
+static int hf_ansi_map_triggercapability_at;
+static int hf_ansi_map_triggercapability_cgraa;
+static int hf_ansi_map_triggercapability_it;
+static int hf_ansi_map_triggercapability_cdraa;
+static int hf_ansi_map_triggercapability_obsy;
+static int hf_ansi_map_triggercapability_tra;
+static int hf_ansi_map_triggercapability_tbusy;
+static int hf_ansi_map_triggercapability_tna;
+static int hf_ansi_map_triggercapability_tans;
+static int hf_ansi_map_triggercapability_tdisc;
+static int hf_ansi_map_winoperationscapability_conn;
+static int hf_ansi_map_winoperationscapability_ccdir;
+static int hf_ansi_map_winoperationscapability_pos;
+static int hf_ansi_map_PACA_Level;
+static int hf_ansi_map_pacaindicator_pa;
+
+static int hf_ansi_map_point_code;
+static int hf_ansi_map_SSN;
+static int hf_ansi_map_win_trigger_list;
#include "packet-ansi_map-hf.c"
/* Initialize the subtree pointers */
-static gint ett_ansi_map = -1;
-static gint ett_mintype = -1;
-static gint ett_digitstype = -1;
-static gint ett_billingid = -1;
-static gint ett_sms_bearer_data = -1;
-static gint ett_sms_teleserviceIdentifier = -1;
-static gint ett_extendedmscid = -1;
-static gint ett_extendedsystemmytypecode = -1;
-static gint ett_handoffstate = -1;
-static gint ett_mscid = -1;
-static gint ett_cdmachanneldata = -1;
-static gint ett_cdmastationclassmark = -1;
-static gint ett_channeldata = -1;
-static gint ett_confidentialitymodes = -1;
-static gint ett_controlchanneldata = -1;
-static gint ett_CDMA2000HandoffInvokeIOSData = -1;
-static gint ett_CDMA2000HandoffResponseIOSData = -1;
-static gint ett_originationtriggers = -1;
-static gint ett_pacaindicator = -1;
-static gint ett_callingpartyname = -1;
-static gint ett_triggercapability = -1;
-static gint ett_winoperationscapability = -1;
-static gint ett_win_trigger_list = -1;
-static gint ett_controlnetworkid = -1;
-static gint ett_transactioncapability = -1;
-static gint ett_cdmaserviceoption = -1;
-static gint ett_systemcapabilities = -1;
-static gint ett_sms_originationrestrictions = -1;
+static gint ett_ansi_map;
+static gint ett_mintype;
+static gint ett_digitstype;
+static gint ett_billingid;
+static gint ett_sms_bearer_data;
+static gint ett_sms_teleserviceIdentifier;
+static gint ett_extendedmscid;
+static gint ett_extendedsystemmytypecode;
+static gint ett_handoffstate;
+static gint ett_mscid;
+static gint ett_cdmachanneldata;
+static gint ett_cdmastationclassmark;
+static gint ett_channeldata;
+static gint ett_confidentialitymodes;
+static gint ett_controlchanneldata;
+static gint ett_CDMA2000HandoffInvokeIOSData;
+static gint ett_CDMA2000HandoffResponseIOSData;
+static gint ett_originationtriggers;
+static gint ett_pacaindicator;
+static gint ett_callingpartyname;
+static gint ett_triggercapability;
+static gint ett_winoperationscapability;
+static gint ett_win_trigger_list;
+static gint ett_controlnetworkid;
+static gint ett_transactioncapability;
+static gint ett_cdmaserviceoption;
+static gint ett_systemcapabilities;
+static gint ett_sms_originationrestrictions;
#include "packet-ansi_map-ett.c"
-static expert_field ei_ansi_map_nr_not_used = EI_INIT;
-static expert_field ei_ansi_map_unknown_invokeData_blob = EI_INIT;
-static expert_field ei_ansi_map_no_data = EI_INIT;
+static expert_field ei_ansi_map_nr_not_used;
+static expert_field ei_ansi_map_unknown_invokeData_blob;
+static expert_field ei_ansi_map_no_data;
/* Global variables */
static dissector_table_t is637_tele_id_dissector_table; /* IS-637 Teleservice ID */
@@ -375,7 +377,7 @@ static void dissect_ansi_map_win_trigger_list(tvbuff_t *tvb, packet_info *pinfo
/* Transaction table */
-static wmem_map_t *TransactionId_table=NULL;
+static wmem_multimap_t *TransactionId_table=NULL;
/* Store Invoke information needed for the corresponding reply */
static void
@@ -393,7 +395,7 @@ update_saved_invokedata(packet_info *pinfo, struct ansi_tcap_private_t *p_privat
/* Data from the TCAP dissector */
if ((!pinfo->fd->visited)&&(p_private_tcap->TransactionID_str)){
/* Only do this once XXX I hope it's the right thing to do */
- /* The hash string needs to contain src and dest to distiguish differnt flows */
+ /* The hash string needs to contain src and dest to distinguish different flows */
switch(ansi_map_response_matching_type){
case ANSI_MAP_TID_ONLY:
buf = wmem_strdup(pinfo->pool, p_private_tcap->TransactionID_str);
@@ -406,17 +408,14 @@ update_saved_invokedata(packet_info *pinfo, struct ansi_tcap_private_t *p_privat
buf = wmem_strdup_printf(pinfo->pool, "%s%s%s",p_private_tcap->TransactionID_str,src_str,dst_str);
break;
}
- /* If the entry allready exists don't owervrite it */
- ansi_map_saved_invokedata = (struct ansi_map_invokedata_t *)wmem_map_lookup(TransactionId_table,buf);
- if(ansi_map_saved_invokedata)
- return;
ansi_map_saved_invokedata = wmem_new(wmem_file_scope(), struct ansi_map_invokedata_t);
ansi_map_saved_invokedata->opcode = p_private_tcap->d.OperationCode_private;
ansi_map_saved_invokedata->ServiceIndicator = ServiceIndicator;
- wmem_map_insert(TransactionId_table,
+ wmem_multimap_insert32(TransactionId_table,
wmem_strdup(wmem_file_scope(), buf),
+ pinfo->num,
ansi_map_saved_invokedata);
/*ws_warning("Invoke Hash string %s pkt: %u",buf,pinfo->num);*/
@@ -542,7 +541,7 @@ static value_string_ext ansi_map_opr_code_strings_ext = VALUE_STRING_EXT_INIT(an
static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx);
static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx);
-static int dissect_ansi_map_SystemMyTypeCode(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+static int dissect_ansi_map_SystemMyTypeCode(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
/* Type of Digits (octet 1, bits A-H) */
static const value_string ansi_map_type_of_digits_vals[] = {
@@ -617,7 +616,7 @@ dissect_ansi_map_min_type(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tre
subtree = proto_item_add_subtree(actx->created_item, ett_mintype);
- proto_tree_add_item_ret_display_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, tvb_reported_length_remaining(tvb, offset), ENC_BCD_DIGITS_0_9, pinfo->pool, &digit_str);
+ proto_tree_add_item_ret_display_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, tvb_reported_length_remaining(tvb, offset), ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN, pinfo->pool, &digit_str);
proto_item_append_text(actx->created_item, " - %s", digit_str);
}
@@ -661,7 +660,7 @@ dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
if(octet_len == 0)
return;
offset++;
- proto_tree_add_item_ret_display_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, -1, ENC_KEYPAD_BC_TBCD, pinfo->pool, &digit_str);
+ proto_tree_add_item_ret_display_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, -1, ENC_KEYPAD_BC_TBCD|ENC_LITTLE_ENDIAN, pinfo->pool, &digit_str);
proto_item_append_text(actx->created_item, " - %s", digit_str);
break;
case 2:
@@ -702,7 +701,7 @@ dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
switch ((octet&0xf)){
case 1:
/* BCD Coding */
- proto_tree_add_item_ret_display_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, -1, ENC_KEYPAD_BC_TBCD, pinfo->pool, &digit_str);
+ proto_tree_add_item_ret_display_string(subtree, hf_ansi_map_bcd_digits, tvb, offset, -1, ENC_KEYPAD_BC_TBCD|ENC_LITTLE_ENDIAN, pinfo->pool, &digit_str);
proto_item_append_text(actx->created_item, " - %s", digit_str);
break;
case 2:
@@ -754,12 +753,6 @@ dissect_ansi_map_digits_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
}
/* 6.5.3.13. Subaddress */
-#if 0
-static const true_false_string ansi_map_Odd_Even_Ind_bool_val = {
- "Odd",
- "Even"
-};
-#endif
/* Type of Subaddress (octet 1, bits E-G) */
static const value_string ansi_map_sub_addr_type_vals[] = {
{ 0, "NSAP (CCITT Rec. X.213 or ISO 8348 AD2)"},
@@ -902,7 +895,7 @@ static const value_string ansi_map_AlertResult_result_vals[] = {
{ 0, NULL }
};
-/* 6.5.2.5 AnnouncementCode Updatef from NS0018Re*/
+/* 6.5.2.5 AnnouncementCode Updated from NS0018Re*/
/* Tone (octet 1) */
static const value_string ansi_map_AnnouncementCode_tone_vals[] = {
{ 0, "DialTone"},
@@ -1476,10 +1469,6 @@ dissect_ansi_map_channeldata(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *
/* Updated with N.S0008-0 v 1.0*/
/* Voice Privacy (VP) Confidentiality Status (octet 1, bit A) */
-static const true_false_string ansi_map_ConfidentialityModes_bool_val = {
- "On",
- "Off"
-};
static void
dissect_ansi_map_confidentialitymodes(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_, asn1_ctx_t *actx _U_){
int offset = 0;
@@ -3957,7 +3946,7 @@ static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
case 93: /*Geo Position Directive*/
break;
case 94: /*Geo Position Request*/
- offset = dissect_ansi_map_GeoPositionRequest(TRUE, tvb, offset, actx, tree, hf_ansi_map_interSystemPositionRequest);
+ offset = dissect_ansi_map_GeoPositionRequest(TRUE, tvb, offset, actx, tree, hf_ansi_map_geoPositionRequest);
break;
case 95: /*Inter System Position Request*/
offset = dissect_ansi_map_InterSystemPositionRequest(TRUE, tvb, offset, actx, tree, hf_ansi_map_interSystemPositionRequest);
@@ -4243,7 +4232,7 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
offset = dissect_ansi_map_InterSystemPositionRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_interSystemPositionRequestRes);
break;
case 96: /*Inter System Position Request Forward*/
- offset = dissect_ansi_map_InterSystemPositionRequestForwardRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_interSystemPositionRequestRes);
+ offset = dissect_ansi_map_InterSystemPositionRequestForwardRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_interSystemPositionRequestForwardRes);
break;
case 98: /*Roamer Database Verification Request*/
offset = dissect_ansi_map_RoamerDatabaseVerificationRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_roamerDatabaseVerificationRequestRes);
@@ -4310,25 +4299,25 @@ find_saved_invokedata(asn1_ctx_t *actx, struct ansi_tcap_private_t *p_private_tc
buf=(char *)wmem_alloc(actx->pinfo->pool, 1024);
/* Data from the TCAP dissector */
- /* The hash string needs to contain src and dest to distiguish differnt flows */
+ /* The hash string needs to contain src and dest to distinguish different flows */
src_str = address_to_str(actx->pinfo->pool, src);
dst_str = address_to_str(actx->pinfo->pool, dst);
/* Reverse order to invoke */
switch(ansi_map_response_matching_type){
case ANSI_MAP_TID_ONLY:
- g_snprintf(buf,1024,"%s",p_private_tcap->TransactionID_str);
+ snprintf(buf,1024,"%s",p_private_tcap->TransactionID_str);
break;
case ANSI_MAP_TID_AND_SOURCE:
- g_snprintf(buf,1024,"%s%s",p_private_tcap->TransactionID_str,dst_str);
+ snprintf(buf,1024,"%s%s",p_private_tcap->TransactionID_str,dst_str);
break;
case ANSI_MAP_TID_SOURCE_AND_DEST:
default:
- g_snprintf(buf,1024,"%s%s%s",p_private_tcap->TransactionID_str,dst_str,src_str);
+ snprintf(buf,1024,"%s%s%s",p_private_tcap->TransactionID_str,dst_str,src_str);
break;
}
/*ws_warning("Find Hash string %s pkt: %u",buf,actx->pinfo->num);*/
- ansi_map_saved_invokedata = (struct ansi_map_invokedata_t *)wmem_map_lookup(TransactionId_table, buf);
+ ansi_map_saved_invokedata = (struct ansi_map_invokedata_t *)wmem_multimap_lookup32_le(TransactionId_table, buf, actx->pinfo->num);
if(ansi_map_saved_invokedata){
OperationCode = ansi_map_saved_invokedata->opcode & 0xff;
ServiceIndicator = ansi_map_saved_invokedata->ServiceIndicator;
@@ -4475,7 +4464,7 @@ static void ansi_map_stat_init(stat_tap_table_ui* new_stat)
static tap_packet_status
-ansi_map_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *data)
+ansi_map_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *data, tap_flags_t flags _U_)
{
stat_data_t* stat_data = (stat_data_t*)tapdata;
const ansi_map_tap_rec_t *data_p = (const ansi_map_tap_rec_t *)data;
@@ -4558,10 +4547,12 @@ void proto_register_ansi_map(void) {
/* List of fields */
static hf_register_info hf[] = {
+#if 0
{ &hf_ansi_map_op_code_fam,
{ "Operation Code Family", "ansi_map.op_code_fam",
FT_UINT8, BASE_DEC, NULL, 0,
NULL, HFILL }},
+#endif
{ &hf_ansi_map_reservedBitH,
{ "Reserved", "ansi_map.reserved_bitH",
FT_BOOLEAN, 8, NULL,0x80,
@@ -4586,10 +4577,12 @@ void proto_register_ansi_map(void) {
{ "Reserved", "ansi_map.reserved_bitED",
FT_UINT8, BASE_DEC, NULL, 0x18,
NULL, HFILL }},
+#if 0
{ &hf_ansi_map_op_code,
{ "Operation Code", "ansi_map.op_code",
FT_UINT8, BASE_DEC|BASE_EXT_STRING, &ansi_map_opr_code_strings_ext, 0x0,
NULL, HFILL }},
+#endif
{ &hf_ansi_map_type_of_digits,
{ "Type of Digits", "ansi_map.type_of_digits",
FT_UINT8, BASE_DEC, VALS(ansi_map_type_of_digits_vals), 0x0,
@@ -5052,7 +5045,7 @@ void proto_register_ansi_map(void) {
NULL, HFILL }},
{&hf_ansi_map_cdmachanneldata_nominal_pwr,
{ "Nominal Power", "ansi_map.cdmachanneldata.nominal_pwr",
- FT_UINT8, BASE_DEC, NULL, 0x71,
+ FT_UINT8, BASE_DEC, NULL, 0x78,
NULL, HFILL }},
{&hf_ansi_map_cdmachanneldata_nr_preamble,
{ "Number Preamble", "ansi_map.cdmachanneldata.nr_preamble",
@@ -5094,7 +5087,7 @@ void proto_register_ansi_map(void) {
NULL, HFILL }},
{ &hf_ansi_map_ConfidentialityModes_vp,
{ "Voice Privacy (VP) Confidentiality Status", "ansi_map.confidentialitymodes.vp",
- FT_BOOLEAN, 8, TFS(&ansi_map_ConfidentialityModes_bool_val),0x01,
+ FT_BOOLEAN, 8, TFS(&tfs_on_off),0x01,
NULL, HFILL }},
{ &hf_ansi_map_controlchanneldata_dcc,
{ "Digital Color Code (DCC)", "ansi_map.controlchanneldata.dcc",
@@ -5118,11 +5111,11 @@ void proto_register_ansi_map(void) {
NULL, HFILL }},
{ &hf_ansi_map_ConfidentialityModes_se,
{ "Signaling Message Encryption (SE) Confidentiality Status", "ansi_map.confidentialitymodes.se",
- FT_BOOLEAN, 8, TFS(&ansi_map_ConfidentialityModes_bool_val),0x02,
+ FT_BOOLEAN, 8, TFS(&tfs_on_off),0x02,
NULL, HFILL }},
{ &hf_ansi_map_ConfidentialityModes_dp,
{ "DataPrivacy (DP) Confidentiality Status", "ansi_map.confidentialitymodes.dp",
- FT_BOOLEAN, 8, TFS(&ansi_map_ConfidentialityModes_bool_val),0x04,
+ FT_BOOLEAN, 8, TFS(&tfs_on_off),0x04,
NULL, HFILL }},
{ &hf_ansi_map_deniedauthorizationperiod_period,
@@ -5474,7 +5467,7 @@ void proto_register_ansi_map(void) {
"Type of matching invoke/response, risk of mismatch if loose matching chosen",
&ansi_map_response_matching_type, ansi_map_response_matching_type_values, FALSE);
- TransactionId_table = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), wmem_str_hash, g_str_equal);
+ TransactionId_table = wmem_multimap_new_autoreset(wmem_epan_scope(), wmem_file_scope(), wmem_str_hash, g_str_equal);
register_stat_tap_table_ui(&stat_table);
}
diff --git a/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c b/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c
index 1c7e8921ea..7b37a64222 100644
--- a/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c
+++ b/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c
@@ -38,29 +38,31 @@ void proto_reg_handoff_ansi_tcap(void);
static gint ansi_tcap_response_matching_type = ANSI_TCAP_TID_ONLY;
/* Initialize the protocol and registered fields */
-static int proto_ansi_tcap = -1;
+static int proto_ansi_tcap;
-static int hf_ansi_tcapsrt_SessionId = -1;
-static int hf_ansi_tcapsrt_Duplicate = -1;
-static int hf_ansi_tcapsrt_BeginSession = -1;
-static int hf_ansi_tcapsrt_EndSession = -1;
-static int hf_ansi_tcapsrt_SessionTime = -1;
-static int hf_ansi_tcap_bit_h = -1;
-static int hf_ansi_tcap_op_family = -1;
-static int hf_ansi_tcap_op_specifier = -1;
+#if 0
+static int hf_ansi_tcapsrt_SessionId;
+static int hf_ansi_tcapsrt_Duplicate;
+static int hf_ansi_tcapsrt_BeginSession;
+static int hf_ansi_tcapsrt_EndSession;
+static int hf_ansi_tcapsrt_SessionTime;
+#endif
+static int hf_ansi_tcap_bit_h;
+static int hf_ansi_tcap_op_family;
+static int hf_ansi_tcap_op_specifier;
#include "packet-ansi_tcap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_tcap = -1;
-static gint ett_param = -1;
-static gint ett_ansi_tcap_op_code_nat = -1;
+static gint ett_tcap;
+static gint ett_param;
+static gint ett_ansi_tcap_op_code_nat;
-static gint ett_otid = -1;
-static gint ett_dtid = -1;
-static gint ett_ansi_tcap_stat = -1;
+static gint ett_otid;
+static gint ett_dtid;
+static gint ett_ansi_tcap_stat;
-static expert_field ei_ansi_tcap_dissector_not_implemented = EI_INIT;
+static expert_field ei_ansi_tcap_dissector_not_implemented;
static struct tcapsrt_info_t * gp_tcapsrt_info;
static gboolean tcap_subdissector_used=FALSE;
@@ -132,7 +134,7 @@ struct ansi_tcap_invokedata_t {
gint32 OperationCode_national;
};
-static wmem_map_t *TransactionId_table=NULL;
+static wmem_multimap_t *TransactionId_table=NULL;
/* Store Invoke information needed for the corresponding reply */
static void
@@ -147,7 +149,7 @@ save_invoke_data(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U_){
if ((!pinfo->fd->visited)&&(ansi_tcap_private.TransactionID_str)){
/* Only do this once XXX I hope it's the right thing to do */
- /* The hash string needs to contain src and dest to distiguish differnt flows */
+ /* The hash string needs to contain src and dest to distiguish different flows */
switch(ansi_tcap_response_matching_type){
case ANSI_TCAP_TID_ONLY:
buf = wmem_strdup(pinfo->pool, ansi_tcap_private.TransactionID_str);
@@ -161,18 +163,14 @@ save_invoke_data(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U_){
break;
}
- /* If the entry allready exists don't owervrite it */
- ansi_tcap_saved_invokedata = (struct ansi_tcap_invokedata_t *)wmem_map_lookup(TransactionId_table,buf);
- if(ansi_tcap_saved_invokedata)
- return;
-
ansi_tcap_saved_invokedata = wmem_new(wmem_file_scope(), struct ansi_tcap_invokedata_t);
ansi_tcap_saved_invokedata->OperationCode = ansi_tcap_private.d.OperationCode;
ansi_tcap_saved_invokedata->OperationCode_national = ansi_tcap_private.d.OperationCode_national;
ansi_tcap_saved_invokedata->OperationCode_private = ansi_tcap_private.d.OperationCode_private;
- wmem_map_insert(TransactionId_table,
+ wmem_multimap_insert32(TransactionId_table,
wmem_strdup(wmem_file_scope(), buf),
+ pinfo->num,
ansi_tcap_saved_invokedata);
/*
ws_warning("Tcap Invoke Hash string %s",buf);
@@ -193,24 +191,24 @@ find_saved_invokedata(packet_info *pinfo, proto_tree *tree _U_, tvbuff_t *tvb _U
src = address_to_str(pinfo->pool, &(pinfo->src));
dst = address_to_str(pinfo->pool, &(pinfo->dst));
- /* The hash string needs to contain src and dest to distiguish differnt flows */
+ /* The hash string needs to contain src and dest to distiguish different flows */
buf = (char *)wmem_alloc(pinfo->pool, MAX_TID_STR_LEN);
buf[0] = '\0';
/* Reverse order to invoke */
switch(ansi_tcap_response_matching_type){
case ANSI_TCAP_TID_ONLY:
- g_snprintf(buf,MAX_TID_STR_LEN,"%s",ansi_tcap_private.TransactionID_str);
+ snprintf(buf,MAX_TID_STR_LEN,"%s",ansi_tcap_private.TransactionID_str);
break;
case ANSI_TCAP_TID_AND_SOURCE:
- g_snprintf(buf,MAX_TID_STR_LEN,"%s%s",ansi_tcap_private.TransactionID_str,dst);
+ snprintf(buf,MAX_TID_STR_LEN,"%s%s",ansi_tcap_private.TransactionID_str,dst);
break;
case ANSI_TCAP_TID_SOURCE_AND_DEST:
default:
- g_snprintf(buf,MAX_TID_STR_LEN,"%s%s%s",ansi_tcap_private.TransactionID_str,dst,src);
+ snprintf(buf,MAX_TID_STR_LEN,"%s%s%s",ansi_tcap_private.TransactionID_str,dst,src);
break;
}
- ansi_tcap_saved_invokedata = (struct ansi_tcap_invokedata_t *)wmem_map_lookup(TransactionId_table, buf);
+ ansi_tcap_saved_invokedata = (struct ansi_tcap_invokedata_t *)wmem_multimap_lookup32_le(TransactionId_table, buf, pinfo->num);
if(ansi_tcap_saved_invokedata){
ansi_tcap_private.d.OperationCode = ansi_tcap_saved_invokedata->OperationCode;
ansi_tcap_private.d.OperationCode_national = ansi_tcap_saved_invokedata->OperationCode_national;
@@ -389,6 +387,7 @@ proto_register_ansi_tcap(void)
/* Setup list of header fields See Section 1.6.1 for details*/
static hf_register_info hf[] = {
+#if 0
/* Tcap Service Response Time */
{ &hf_ansi_tcapsrt_SessionId,
{ "Session Id",
@@ -420,6 +419,7 @@ proto_register_ansi_tcap(void)
FT_UINT32, BASE_DEC, NULL, 0x0,
NULL, HFILL }
},
+#endif
{ &hf_ansi_tcap_bit_h,
{ "Require Reply", "ansi_tcap.req_rep",
FT_BOOLEAN, 16, NULL, 0x8000,
@@ -483,5 +483,5 @@ proto_register_ansi_tcap(void)
"Type of matching invoke/response, risk of mismatch if loose matching chosen",
&ansi_tcap_response_matching_type, ansi_tcap_response_matching_type_values, FALSE);
- TransactionId_table = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), wmem_str_hash, g_str_equal);
+ TransactionId_table = wmem_multimap_new_autoreset(wmem_epan_scope(), wmem_file_scope(), wmem_str_hash, g_str_equal);
}
diff --git a/epan/dissectors/asn1/atn-cm/CMakeLists.txt b/epan/dissectors/asn1/atn-cm/CMakeLists.txt
index 20c5c21081..0d2f4acf3f 100644
--- a/epan/dissectors/asn1/atn-cm/CMakeLists.txt
+++ b/epan/dissectors/asn1/atn-cm/CMakeLists.txt
@@ -32,7 +32,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -u -L )
+set( A2W_FLAGS -u )
set( EXTRA_CNF
)
diff --git a/epan/dissectors/asn1/atn-cm/packet-atn-cm-template.c b/epan/dissectors/asn1/atn-cm/packet-atn-cm-template.c
index 479d794ed3..ed6cb46532 100644
--- a/epan/dissectors/asn1/atn-cm/packet-atn-cm-template.c
+++ b/epan/dissectors/asn1/atn-cm/packet-atn-cm-template.c
@@ -42,10 +42,10 @@ void proto_reg_handoff_atn_cm(void);
#include "packet-atn-cm-hf.c"
#include "packet-atn-cm-ett.c"
-static gint ett_atn_cm = -1;
+static gint ett_atn_cm;
#include "packet-atn-cm-fn.c"
-static int proto_atn_cm = -1;
+static int proto_atn_cm;
static int
dissect_atn_cm(
@@ -187,10 +187,7 @@ void proto_register_atn_cm (void)
};
/* register CM application */
- proto_atn_cm = proto_register_protocol(
- ATN_CM_PROTO ,
- "ATN-CM",
- "atn-cm");
+ proto_atn_cm = proto_register_protocol(ATN_CM_PROTO, "ATN-CM", "atn-cm");
proto_register_field_array(
proto_atn_cm,
diff --git a/epan/dissectors/asn1/atn-cpdlc/CMakeLists.txt b/epan/dissectors/asn1/atn-cpdlc/CMakeLists.txt
index 0a316b1bbe..12e357c5f6 100644
--- a/epan/dissectors/asn1/atn-cpdlc/CMakeLists.txt
+++ b/epan/dissectors/asn1/atn-cpdlc/CMakeLists.txt
@@ -32,7 +32,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -u -L )
+set( A2W_FLAGS -u )
set( EXTRA_CNF
)
diff --git a/epan/dissectors/asn1/atn-cpdlc/packet-atn-cpdlc-template.c b/epan/dissectors/asn1/atn-cpdlc/packet-atn-cpdlc-template.c
index f7249916d2..2981f3e18c 100644
--- a/epan/dissectors/asn1/atn-cpdlc/packet-atn-cpdlc-template.c
+++ b/epan/dissectors/asn1/atn-cpdlc/packet-atn-cpdlc-template.c
@@ -84,12 +84,12 @@ static int dissect_ProtectedAircraftPDUs_PDU(
#include "packet-atn-cpdlc-hf.c"
#include "packet-atn-cpdlc-ett.c"
-static gint ett_atn_cpdlc = -1;
+static gint ett_atn_cpdlc;
#include "packet-atn-cpdlc-fn.c"
/* Wireshark ID of CPDLC protocol */
-static int proto_atn_cpdlc = -1;
+static int proto_atn_cpdlc;
static int
@@ -310,10 +310,7 @@ void proto_register_atn_cpdlc (void)
};
/* register CPDLC */
- proto_atn_cpdlc = proto_register_protocol(
- ATN_CPDLC_PROTO ,
- "ATN-CPDLC",
- "atn-cpdlc");
+ proto_atn_cpdlc = proto_register_protocol(ATN_CPDLC_PROTO, "ATN-CPDLC", "atn-cpdlc");
proto_register_field_array(
proto_atn_cpdlc,
diff --git a/epan/dissectors/asn1/atn-ulcs/CMakeLists.txt b/epan/dissectors/asn1/atn-ulcs/CMakeLists.txt
index 015ab8e097..c95e802572 100644
--- a/epan/dissectors/asn1/atn-ulcs/CMakeLists.txt
+++ b/epan/dissectors/asn1/atn-ulcs/CMakeLists.txt
@@ -33,7 +33,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -u -L )
+set( A2W_FLAGS -u )
set( EXTRA_CNF
)
diff --git a/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf b/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf
index a30d334af3..c6a1765f56 100644
--- a/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf
+++ b/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf
@@ -62,7 +62,7 @@ PDV-list/presentation-data-values/arbitrary pdv-list_presentation-data-values_ar
NULL);
if (tvb_usr) {
- /* call appropiate dissector for bitstring data */
+ /* call appropriate dissector for bitstring data */
switch(ulcs_context_value){
case 1: /* ACSE PDU*/
atn_ulcs_tree = proto_tree_add_subtree(
@@ -422,6 +422,35 @@ PDV-list/presentation-data-values/arbitrary pdv-list_presentation-data-values_ar
#.END
+#.FN_BODY RDNSequence
+
+ /*
+ * atn-ulcs.asn currently defines
+ *
+ * RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
+ * RelativeDistinguishedName ::= SET SIZE (1 .. MAX) OF AttributeTypeAndValue
+ * AttributeTypeAndValue ::= SEQUENCE { null NULL}
+ *
+ * which makes it easy to spam the dissection tree with null items. Dissect
+ * the first item only.
+ */
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_atn_ulcs_RDNSequence, RDNSequence_sequence_of,
+ 1, 1, FALSE);
+
+#.END
+
+#.FN_BODY RelativeDistinguishedName
+
+ /*
+ * Dissect the first null item only, similar to RDNSequence.
+ */
+ offset = dissect_per_constrained_set_of(tvb, offset, actx, tree, hf_index,
+ ett_atn_ulcs_RelativeDistinguishedName, RelativeDistinguishedName_set_of,
+ 1, 1, FALSE);
+
+#.END
+
#.FN_BODY EXTERNALt/data-value-descriptor
offset = dissect_per_octet_string(
diff --git a/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c b/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c
index e2fbcd9ca9..19a421c974 100644
--- a/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c
+++ b/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c
@@ -38,10 +38,10 @@
why not using existing ses, pres and acse dissectors ?
ATN upper layers are derived from OSI standards for session,
presentation and application but the encoding differs
- (it's PER instead of BER encoding to save bandwith).
+ (it's PER instead of BER encoding to save bandwidth).
Session and presentation use the "null" encoding option,
meaning that they are only present at connection establishment
- and ommitted otherwise.
+ and omitted otherwise.
Instead of adapting existing dissectors it seemed simpler and cleaner
to implement everything the new atn-ulcs dissector.
@@ -121,7 +121,7 @@ static heur_dissector_list_t atn_ulcs_heur_subdissector_list;
static dissector_handle_t atn_cm_handle = NULL;
static dissector_handle_t atn_cpdlc_handle = NULL;
-static int proto_atn_ulcs = -1;
+static int proto_atn_ulcs;
static guint32 ulcs_context_value = 0;
static const char *object_identifier_id;
@@ -177,8 +177,8 @@ static gint dissect_atn_ulcs(
#include "packet-atn-ulcs-hf.c"
#include "packet-atn-ulcs-ett.c"
-static gint ett_atn_ulcs = -1;
-static gint ett_atn_acse = -1;
+static gint ett_atn_ulcs;
+static gint ett_atn_acse;
#include "packet-atn-ulcs-fn.c"
@@ -223,30 +223,30 @@ static const per_choice_t External_encoding_choice[] =
#define SES_PARAM_B2_MASK 0x02
#define SES_PARAM_B1_MASK 0x01
-static int hf_atn_ses_type = -1;
-static int hf_atn_ses_param_ind = -1;
-static int hf_atn_ses_param_b1 = -1;
-static int hf_atn_ses_param_b2 = -1;
+static int hf_atn_ses_type;
+static int hf_atn_ses_param_ind;
+static int hf_atn_ses_param_b1;
+static int hf_atn_ses_param_b2;
-static gint ett_atn_ses = -1;
+static gint ett_atn_ses;
#define ATN_SES_PROTO "ICAO Doc9705 ULCS Session (ISO 8326/8327-1:1994)"
-const value_string atn_ses_param_ind[] =
+static const value_string atn_ses_param_ind[] =
{
{0, "No Parameter Indication "},
{1, "Parameter Indication "},
{0, NULL }
};
-const value_string srf_b2[] =
+static const value_string srf_b2[] =
{
{0, "Transport Connection is kept"},
{1, "Transport Connection is released" },
{0, NULL }
};
-const value_string srf_b1[] =
+static const value_string srf_b1[] =
{
{0, "Transport Connection is transient"},
{1, "Transport Connection is persistent"},
@@ -260,7 +260,7 @@ const value_string srf_b1[] =
#define SES_ATN_SRF 0xe0
#define SES_ATN_SRFC 0xa0
-const value_string atn_ses_type[] =
+static const value_string atn_ses_type[] =
{
{ 0x1d, "Short Connect (SCN) SPDU" },
{ 0x1f, "Short Connect Accept (SAC) SPDU" },
@@ -273,15 +273,15 @@ const value_string atn_ses_type[] =
/* ATN Presentation layer */
#define ATN_PRES_PROTO "ICAO Doc9705 ULCS Presentation (ISO 8822/8823-1:1994)"
-static int hf_atn_pres_err = -1;
-static int hf_atn_pres_pdu_type = -1;
-static gint ett_atn_pres = -1;
+static int hf_atn_pres_err;
+static int hf_atn_pres_pdu_type;
+static gint ett_atn_pres;
#define ATN_SES_PRES_MASK 0xf803
#define PRES_CPR_ER_MASK 0x70
/* type determined by SPDU and PPDU */
-const value_string atn_pres_vals[] =
+static const value_string atn_pres_vals[] =
{
{ 0xe802, "Short Presentation Connect PPDU (CP) " },
{ 0xf802, "Short Presentation Connect PPDU (CP) " },
@@ -293,7 +293,7 @@ const value_string atn_pres_vals[] =
};
/* Short Presentation Connect Reject PPDU's 0yyy 00zz */
-const value_string atn_pres_err[] =
+static const value_string atn_pres_err[] =
{
{ 0x00, "Presentation-user" },
{ 0x01, "Reason not specified (transient)"},
@@ -400,7 +400,7 @@ guint32 get_aircraft_24_bit_address_from_nsap(
if((adr_prefix == 0x470027c1) ||
(adr_prefix == 0x47002741)) {
/* ICAO doc9507 Ed2 SV5 5.4.3.8.4.4 */
- /* states that the ARS subfield containes */
+ /* states that the ARS subfield contains */
/* the 24-bitaddress of the aircraft */
ars = ((addr[8])<<16) |
((addr[9])<<8) |
@@ -425,7 +425,7 @@ guint32 get_aircraft_24_bit_address_from_nsap(
if((adr_prefix == 0x470027c1) ||
(adr_prefix == 0x47002741)) {
/* ICAO doc9507 Ed2 SV5 5.4.3.8.4.4 */
- /* states that the ARS subfield containes */
+ /* states that the ARS subfield contains */
/* the 24-bitaddress of the aircraft */
ars = ((addr[8])<<16) |
((addr[9])<<8) |
@@ -435,7 +435,7 @@ guint32 get_aircraft_24_bit_address_from_nsap(
}
/* determine whether a PDU is uplink or downlink */
-/* by checking for known aircraft address prefices*/
+/* by checking for known aircraft address prefixes*/
int check_heur_msg_type(packet_info *pinfo _U_)
{
int t = no_msg;
@@ -664,7 +664,7 @@ dissect_atn_ulcs(
1,
value_ses_pres,
"%s (0x%02x)",
- val_to_str( value_ses_pres & ATN_SES_PRES_MASK , atn_pres_vals, "?"),
+ val_to_str_const( value_ses_pres & ATN_SES_PRES_MASK, atn_pres_vals, "?"),
value_pres);
/* PPDU errorcode in case of SRF/CPR */
@@ -819,7 +819,7 @@ void proto_register_atn_ulcs (void)
HFILL}},
{ &hf_atn_pres_pdu_type,
{ "PDU type", "atn-ulcs.pres.pdu_type",
- FT_UINT8,
+ FT_UINT16,
BASE_HEX,
NULL,
ATN_SES_PRES_MASK,
@@ -855,7 +855,7 @@ void proto_register_atn_ulcs (void)
proto_atn_ulcs);
/* initiate sub dissector list */
- atn_ulcs_heur_subdissector_list = register_heur_dissector_list("atn-ulcs", proto_atn_ulcs);
+ atn_ulcs_heur_subdissector_list = register_heur_dissector_list_with_description("atn-ulcs", "ATN-ULCS unhandled data", proto_atn_ulcs);
/* init aare/aare data */
aarq_data_tree = wmem_tree_new_autoreset(wmem_epan_scope(), wmem_file_scope());
diff --git a/epan/dissectors/asn1/c1222/c1222.cnf b/epan/dissectors/asn1/c1222/c1222.cnf
index 4868f59c0e..d3bf6dd56f 100644
--- a/epan/dissectors/asn1/c1222/c1222.cnf
+++ b/epan/dissectors/asn1/c1222/c1222.cnf
@@ -24,7 +24,7 @@ AE-qualifier TYPE=FT_UINT32
#.FN_BODY User-information
gint8 end_device_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
proto_item *tf = NULL;
diff --git a/epan/dissectors/asn1/c1222/packet-c1222-template.c b/epan/dissectors/asn1/c1222/packet-c1222-template.c
index f9d25c9cb6..60252356a6 100644
--- a/epan/dissectors/asn1/c1222/packet-c1222-template.c
+++ b/epan/dissectors/asn1/c1222/packet-c1222-template.c
@@ -37,8 +37,8 @@
#define C1222_EPSEM_FLAG_RESPONSE_CONTROL 0x03
#define C1222_PROCEDURE_RESPONSE 0xf000
-#define C1222_PROCEDURE_MFG 0x800
-#define C1222_PROCEDURE_NUMBER 0x7ff
+#define C1222_PROCEDURE_MFG 0x0800
+#define C1222_PROCEDURE_NUMBER 0x07ff
/* if the packet is encrypted, it can be
* good, bad, or simply not checked
@@ -70,18 +70,18 @@ static dissector_handle_t c1222_handle=NULL;
static dissector_handle_t c1222_udp_handle=NULL;
/* Initialize the protocol and registered fields */
-static int proto_c1222 = -1;
+static int proto_c1222;
#include "packet-c1222-hf.c"
/* These are the EPSEM pieces */
/* first, the flag components */
-static int hf_c1222_epsem_flags = -1;
-static int hf_c1222_epsem_flags_reserved = -1;
-static int hf_c1222_epsem_flags_recovery = -1;
-static int hf_c1222_epsem_flags_proxy = -1;
-static int hf_c1222_epsem_flags_ed_class = -1;
-static int hf_c1222_epsem_flags_security_modes = -1;
-static int hf_c1222_epsem_flags_response_control = -1;
+static int hf_c1222_epsem_flags;
+static int hf_c1222_epsem_flags_reserved;
+static int hf_c1222_epsem_flags_recovery;
+static int hf_c1222_epsem_flags_proxy;
+static int hf_c1222_epsem_flags_ed_class;
+static int hf_c1222_epsem_flags_security_modes;
+static int hf_c1222_epsem_flags_response_control;
/* and the structure of the flag components */
static int * const c1222_flags[] = {
&hf_c1222_epsem_flags_reserved,
@@ -93,53 +93,53 @@ static int * const c1222_flags[] = {
NULL
};
/* next the optional ed_class */
-static int hf_c1222_epsem_ed_class = -1;
+static int hf_c1222_epsem_ed_class;
/* now the aggregate epsem */
-static int hf_c1222_epsem_total = -1;
+static int hf_c1222_epsem_total;
/* generic command */
-static int hf_c1222_cmd = -1;
-static int hf_c1222_err = -1;
-static int hf_c1222_data = -1;
+static int hf_c1222_cmd;
+static int hf_c1222_err;
+static int hf_c1222_data;
/* individual epsem fields */
-static int hf_c1222_logon_id = -1;
-static int hf_c1222_logon_user = -1;
-static int hf_c1222_security_password = -1;
-static int hf_c1222_auth_len = -1;
-static int hf_c1222_auth_data = -1;
-static int hf_c1222_read_table = -1;
-static int hf_c1222_read_offset = -1;
-static int hf_c1222_read_count = -1;
-static int hf_c1222_write_table = -1;
-static int hf_c1222_write_offset = -1;
-static int hf_c1222_write_size = -1;
-static int hf_c1222_write_data = -1;
-static int hf_c1222_procedure_response = -1;
-static int hf_c1222_procedure_mfg = -1;
-static int hf_c1222_procedure_num = -1;
-static int hf_c1222_procedure_sequence = -1;
-static int hf_c1222_write_chksum = -1;
-static int hf_c1222_write_chksum_status = -1;
-static int hf_c1222_wait_secs = -1;
-static int hf_c1222_neg_pkt_size = -1;
-static int hf_c1222_neg_nbr_pkts = -1;
-static int hf_c1222_timing_setup_traffic = -1;
-static int hf_c1222_timing_setup_inter_char = -1;
-static int hf_c1222_timing_setup_resp_to = -1;
-static int hf_c1222_timing_setup_nbr_retries = -1;
+static int hf_c1222_logon_id;
+static int hf_c1222_logon_user;
+static int hf_c1222_security_password;
+static int hf_c1222_auth_len;
+static int hf_c1222_auth_data;
+static int hf_c1222_read_table;
+static int hf_c1222_read_offset;
+static int hf_c1222_read_count;
+static int hf_c1222_write_table;
+static int hf_c1222_write_offset;
+static int hf_c1222_write_size;
+static int hf_c1222_write_data;
+static int hf_c1222_procedure_response;
+static int hf_c1222_procedure_mfg;
+static int hf_c1222_procedure_num;
+static int hf_c1222_procedure_sequence;
+static int hf_c1222_write_chksum;
+static int hf_c1222_write_chksum_status;
+static int hf_c1222_wait_secs;
+static int hf_c1222_neg_pkt_size;
+static int hf_c1222_neg_nbr_pkts;
+static int hf_c1222_timing_setup_traffic;
+static int hf_c1222_timing_setup_inter_char;
+static int hf_c1222_timing_setup_resp_to;
+static int hf_c1222_timing_setup_nbr_retries;
/* the MAC */
-static int hf_c1222_epsem_mac = -1;
+static int hf_c1222_epsem_mac;
/* crypto result flags */
-static int hf_c1222_epsem_crypto_good = -1;
-static int hf_c1222_epsem_crypto_bad = -1;
+static int hf_c1222_epsem_crypto_good;
+static int hf_c1222_epsem_crypto_bad;
/* Initialize the subtree pointers */
-static int ett_c1222 = -1;
-static int ett_c1222_epsem = -1;
-static int ett_c1222_flags = -1;
-static int ett_c1222_crypto = -1;
-static int ett_c1222_cmd = -1;
+static int ett_c1222;
+static int ett_c1222_epsem;
+static int ett_c1222_flags;
+static int ett_c1222_crypto;
+static int ett_c1222_cmd;
/* these pointers are for the header elements that may be needed to verify the crypto */
static guint8 *aSO_context = NULL;
@@ -167,17 +167,30 @@ static guint32 calling_AP_title_len = 0;
static guint32 key_id_element_len = 0;
static guint32 iv_element_len = 0;
+/* these are the related allocation sizes (which might be different from the lengths) */
+static guint32 aSO_context_allocated = 0;
+static guint32 called_AP_title_allocated = 0;
+static guint32 called_AP_invocation_id_allocated = 0;
+static guint32 calling_AE_qualifier_allocated = 0;
+static guint32 calling_AP_invocation_id_allocated = 0;
+static guint32 mechanism_name_allocated = 0;
+static guint32 calling_authentication_value_allocated = 0;
+static guint32 user_information_allocated = 0;
+static guint32 calling_AP_title_allocated = 0;
+static guint32 key_id_element_allocated = 0;
+static guint32 iv_element_allocated = 0;
+
#include "packet-c1222-ett.c"
-static expert_field ei_c1222_command_truncated = EI_INIT;
-static expert_field ei_c1222_bad_checksum = EI_INIT;
-static expert_field ei_c1222_epsem_missing = EI_INIT;
-static expert_field ei_c1222_epsem_failed_authentication = EI_INIT;
-static expert_field ei_c1222_epsem_not_decryped = EI_INIT;
-static expert_field ei_c1222_ed_class_missing = EI_INIT;
-static expert_field ei_c1222_epsem_ber_length_error = EI_INIT;
-static expert_field ei_c1222_epsem_field_length_error = EI_INIT;
-static expert_field ei_c1222_mac_missing = EI_INIT;
+static expert_field ei_c1222_command_truncated;
+static expert_field ei_c1222_bad_checksum;
+static expert_field ei_c1222_epsem_missing;
+static expert_field ei_c1222_epsem_failed_authentication;
+static expert_field ei_c1222_epsem_not_decrypted;
+static expert_field ei_c1222_ed_class_missing;
+static expert_field ei_c1222_epsem_ber_length_error;
+static expert_field ei_c1222_epsem_field_length_error;
+static expert_field ei_c1222_mac_missing;
/* Preferences */
static gboolean c1222_desegment = TRUE;
@@ -300,11 +313,13 @@ static uat_t *c1222_uat;
#define FILL_TABLE(fieldname) \
length = offset - start_offset; \
fieldname = (guint8 *)tvb_memdup(actx->pinfo->pool, tvb, start_offset, length); \
- fieldname##_len = length;
+ fieldname##_len = length; \
+ fieldname##_allocated = length;
#define FILL_TABLE_TRUNCATE(fieldname, len) \
length = 1 + 2*(offset - start_offset); \
fieldname = (guint8 *)tvb_memdup(actx->pinfo->pool, tvb, start_offset, length); \
- fieldname##_len = len;
+ fieldname##_len = len; \
+ fieldname##_allocated = length;
#define FILL_TABLE_APTITLE(fieldname) \
length = offset - start_offset; \
switch (tvb_get_guint8(tvb, start_offset)) { \
@@ -312,6 +327,7 @@ static uat_t *c1222_uat;
tvb_ensure_bytes_exist(tvb, start_offset, length); \
fieldname##_len = length + c1222_baseoid_len; \
fieldname = (guint8 *)wmem_alloc(actx->pinfo->pool, fieldname##_len); \
+ fieldname##_allocated = fieldname##_len; \
fieldname[0] = 0x06; /* create absolute OID tag */ \
fieldname[1] = (fieldname##_len - 2) & 0xff; \
memcpy(&(fieldname[2]), c1222_baseoid, c1222_baseoid_len); \
@@ -321,6 +337,7 @@ static uat_t *c1222_uat;
default: \
fieldname = (guint8 *)tvb_memdup(actx->pinfo->pool, tvb, start_offset, length); \
fieldname##_len = length; \
+ fieldname##_allocated = length; \
break; \
}
@@ -641,21 +658,23 @@ typedef struct tagTOP_ELEMENT_CONTROL
guint8 **element;
/* pointer to element length */
guint32 *length;
+ /* pointer to element allocated size */
+ guint32 *allocated;
} TOP_ELEMENT_CONTROL;
static const TOP_ELEMENT_CONTROL canonifyTable[] = {
- { FALSE, FALSE, 0xA1, TRUE, &aSO_context, &aSO_context_len },
- { TRUE , FALSE, 0xA2, TRUE, &called_AP_title, &called_AP_title_len },
- { FALSE, FALSE, 0xA4, TRUE, &called_AP_invocation_id, &called_AP_invocation_id_len },
- { FALSE, FALSE, 0xA7, TRUE, &calling_AE_qualifier, &calling_AE_qualifier_len },
- { TRUE, FALSE, 0xA8, TRUE, &calling_AP_invocation_id, &calling_AP_invocation_id_len },
- { FALSE, FALSE, 0x8B, TRUE, &mechanism_name, &mechanism_name_len },
- { FALSE, FALSE, 0xAC, TRUE, &calling_authentication_value, &calling_authentication_value_len },
- { TRUE , TRUE , 0xBE, TRUE, &user_information, &user_information_len },
- { FALSE, FALSE, 0xA6, TRUE, &calling_AP_title, &calling_AP_title_len },
- { FALSE, FALSE, 0xAC, FALSE, &key_id_element, &key_id_element_len },
- { FALSE, FALSE, 0xAC, FALSE, &iv_element, &iv_element_len },
- { FALSE, FALSE, 0x0, TRUE, NULL, NULL }
+ { FALSE, FALSE, 0xA1, TRUE, &aSO_context, &aSO_context_len, &aSO_context_allocated },
+ { TRUE , FALSE, 0xA2, TRUE, &called_AP_title, &called_AP_title_len, &called_AP_title_allocated },
+ { FALSE, FALSE, 0xA4, TRUE, &called_AP_invocation_id, &called_AP_invocation_id_len, &called_AP_invocation_id_allocated },
+ { FALSE, FALSE, 0xA7, TRUE, &calling_AE_qualifier, &calling_AE_qualifier_len, &calling_AE_qualifier_allocated },
+ { TRUE, FALSE, 0xA8, TRUE, &calling_AP_invocation_id, &calling_AP_invocation_id_len, &calling_AP_invocation_id_allocated },
+ { FALSE, FALSE, 0x8B, TRUE, &mechanism_name, &mechanism_name_len, &mechanism_name_allocated },
+ { FALSE, FALSE, 0xAC, TRUE, &calling_authentication_value, &calling_authentication_value_len, &calling_authentication_value_allocated },
+ { TRUE , TRUE , 0xBE, TRUE, &user_information, &user_information_len, &user_information_allocated },
+ { FALSE, FALSE, 0xA6, TRUE, &calling_AP_title, &calling_AP_title_len, &calling_AP_title_allocated },
+ { FALSE, FALSE, 0xAC, FALSE, &key_id_element, &key_id_element_len, &key_id_element_allocated },
+ { FALSE, FALSE, 0xAC, FALSE, &iv_element, &iv_element_len, &iv_element_allocated },
+ { FALSE, FALSE, 0x0, TRUE, NULL, NULL, NULL }
};
static void
@@ -729,7 +748,7 @@ c1222_uat_data_copy_cb(void *dest, const void *source, size_t len _U_)
* \param err is updated to point to an error string if needed
* \return FALSE if error; TRUE otherwise
*/
-static gboolean
+static bool
c1222_uat_data_update_cb(void* n, char** err)
{
c1222_uat_data_t* new_rec = (c1222_uat_data_t *)n;
@@ -765,11 +784,12 @@ static gboolean
canonify_unencrypted_header(guchar *buff, guint32 *offset, guint32 buffsize)
{
const TOP_ELEMENT_CONTROL *t = canonifyTable;
- guint32 len;
+ guint32 len, allocated;
for (t = canonifyTable; t->element != NULL; t++)
{
len = *(t->length);
+ allocated = *(t->allocated);
if (t->required && *(t->element) == NULL)
return FALSE;
if (*(t->element) != NULL) {
@@ -786,6 +806,11 @@ canonify_unencrypted_header(guchar *buff, guint32 *offset, guint32 buffsize)
if (buffsize < *offset + len) {
return FALSE;
}
+ /* bail out if our we're trying to read past the end of our element */
+ /* the network is always hostile */
+ if (allocated < len) {
+ return FALSE;
+ }
memcpy(&buff[*offset], *(t->element), len);
(*offset) += len;
if (t->addtag) {
@@ -929,7 +954,7 @@ dissect_epsem(tvbuff_t *tvb, int offset, guint32 len, packet_info *pinfo, proto_
int local_offset;
gint len2;
int cmd_err;
- gboolean ind;
+ bool ind;
guchar *buffer;
tvbuff_t *epsem_buffer = NULL;
gboolean crypto_good = FALSE;
@@ -990,7 +1015,7 @@ dissect_epsem(tvbuff_t *tvb, int offset, guint32 len, packet_info *pinfo, proto_
/* it's only encrypted if we have an undecrypted payload */
if (encrypted) {
proto_tree_add_item(tree, hf_c1222_epsem_total, tvb, offset, -1, ENC_NA);
- expert_add_info(pinfo, tree, &ei_c1222_epsem_not_decryped);
+ expert_add_info(pinfo, tree, &ei_c1222_epsem_not_decrypted);
local_offset = offset+len2-4;
epsem_buffer = tvb;
} else { /* it's not (now) encrypted */
@@ -1082,7 +1107,7 @@ get_c1222_message_len(packet_info *pinfo, tvbuff_t *tvb, int offset, void *data
{
int orig_offset;
guint length;
- gboolean ind;
+ bool ind;
orig_offset = offset;
/* note that this assumes a Tag length of 1 which is always valid for C12.22 */
@@ -1368,7 +1393,7 @@ void proto_register_c1222(void) {
{ &ei_c1222_bad_checksum, { "c1222.bad_checksum", PI_CHECKSUM, PI_ERROR, "Bad checksum", EXPFILL }},
{ &ei_c1222_epsem_missing, { "c1222.epsem.missing", PI_MALFORMED, PI_ERROR, "C12.22 EPSEM missing", EXPFILL }},
{ &ei_c1222_epsem_failed_authentication, { "c1222.epsem.failed_authentication", PI_SECURITY, PI_ERROR, "C12.22 EPSEM failed authentication", EXPFILL }},
- { &ei_c1222_epsem_not_decryped, { "c1222.epsem.not_decryped", PI_UNDECODED, PI_WARN, "C12.22 EPSEM could not be decrypted", EXPFILL }},
+ { &ei_c1222_epsem_not_decrypted, { "c1222.epsem.not_decrypted", PI_UNDECODED, PI_WARN, "C12.22 EPSEM could not be decrypted", EXPFILL }},
{ &ei_c1222_ed_class_missing, { "c1222.ed_class_missing", PI_SECURITY, PI_ERROR, "C12.22 ED Class missing", EXPFILL }},
{ &ei_c1222_epsem_ber_length_error, { "c1222.epsem.ber_length_error", PI_MALFORMED, PI_ERROR, "C12.22 EPSEM BER length error", EXPFILL }},
{ &ei_c1222_epsem_field_length_error, { "c1222.epsem.field_length_error", PI_MALFORMED, PI_ERROR, "C12.22 EPSEM field length error", EXPFILL }},
@@ -1391,6 +1416,10 @@ void proto_register_c1222(void) {
proto_register_subtree_array(ett, array_length(ett));
expert_c1222 = expert_register_protocol(proto_c1222);
expert_register_field_array(expert_c1222, ei, array_length(ei));
+ /* Register dissectors */
+ c1222_handle = register_dissector("c1222.tcp", dissect_c1222, proto_c1222);
+ c1222_udp_handle = register_dissector("c1222.udp", dissect_c1222_common, proto_c1222);
+ /* Register dissection preferences */
c1222_module = prefs_register_protocol(proto_c1222, proto_reg_handoff_c1222);
prefs_register_bool_preference(c1222_module, "desegment",
"Reassemble all C12.22 messages spanning multiple TCP segments",
@@ -1438,8 +1467,6 @@ proto_reg_handoff_c1222(void)
guint8 *temp = NULL;
if( !initialized ) {
- c1222_handle = create_dissector_handle(dissect_c1222, proto_c1222);
- c1222_udp_handle = create_dissector_handle(dissect_c1222_common, proto_c1222);
dissector_add_uint_with_preference("tcp.port", C1222_PORT, c1222_handle);
dissector_add_uint_with_preference("udp.port", C1222_PORT, c1222_udp_handle);
initialized = TRUE;
diff --git a/epan/dissectors/asn1/camel/CMakeLists.txt b/epan/dissectors/asn1/camel/CMakeLists.txt
index b713a98b09..addfed178b 100644
--- a/epan/dissectors/asn1/camel/CMakeLists.txt
+++ b/epan/dissectors/asn1/camel/CMakeLists.txt
@@ -48,7 +48,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -b -L )
+set( A2W_FLAGS -b )
set( EXTRA_CNF
"${CMAKE_CURRENT_BINARY_DIR}/../inap/inap-exp.cnf"
diff --git a/epan/dissectors/asn1/camel/camel.cnf b/epan/dissectors/asn1/camel/camel.cnf
index 246016f00b..c49330584e 100644
--- a/epan/dissectors/asn1/camel/camel.cnf
+++ b/epan/dissectors/asn1/camel/camel.cnf
@@ -705,7 +705,7 @@ proto_tree *subtree;
tvbuff_t *parameter_tvb;
proto_tree *subtree;
gint ett = -1;
- gboolean digits = FALSE;
+ bool digits = FALSE;
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
&parameter_tvb);
@@ -759,6 +759,60 @@ proto_tree *subtree;
}
%(DEFAULT_BODY)s
+#.FN_BODY TimeAndTimezone VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+ proto_item *item;
+ gchar *digit_str;
+ guint length;
+ gchar year[5];
+ gchar month[3];
+ gchar day[3];
+ gchar hour[3];
+ gchar minute[3];
+ gchar second[3];
+
+ guint8 oct;
+ int8_t tz;
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+ length = tvb_reported_length(parameter_tvb);
+ if (length < 8 /*cAPSpecificBoundSetminTimeAndTimezoneLength*/){
+ expert_add_info(actx->pinfo, actx->created_item, &ei_camel_par_wrong_length);
+ return offset;
+ }
+ subtree = proto_item_add_subtree(actx->created_item, ett_camel_timeandtimezone);
+ item = proto_tree_add_item_ret_display_string(subtree, hf_camel_timeandtimezone_time, parameter_tvb, 0, 7, ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN, actx->pinfo->pool, &digit_str);
+
+/*
+The Time Zone indicates the difference, expressed in quarters of an hour, between the local time and GMT. In the first of the two semi octets,
+the first bit (bit 3 of the seventh octet of the TP Service Centre Time Stamp field) represents the algebraic sign of this difference (0: positive, 1: negative).
+*/
+ oct = tvb_get_guint8(parameter_tvb,7);
+
+ /* packet-gsm_sms.c time dis_field_scts_aux() */
+ tz = (oct >> 4) + (oct & 0x07) * 10;
+ tz = (oct & 0x08) ? -tz : tz;
+
+ proto_tree_add_int_format_value(subtree, hf_camel_timeandtimezone_tz, parameter_tvb, 7, 1, tz, "GMT %%+d hours %%d minutes", tz / 4, tz %% 4 * 15);
+
+ /* ENC_BCD_DIGITS_0_9 truncates if the nibble is 0xf. */
+ if (strlen(digit_str) < 14 || strchr(digit_str, '?')) {
+ expert_add_info(actx->pinfo, item, &ei_camel_bcd_not_digit);
+ return offset;
+ }
+
+ (void) g_strlcpy(year, digit_str, 5);
+ (void) g_strlcpy(month, digit_str+4, 3);
+ (void) g_strlcpy(day, digit_str+6, 3);
+ (void) g_strlcpy(hour, digit_str+8, 3);
+ (void) g_strlcpy(minute, digit_str+10, 3);
+ (void) g_strlcpy(second, digit_str+12, 3);
+
+ proto_item_append_text(item, " (%%s-%%s-%%s %%s:%%s:%%s)",year,month,day,hour,minute,second);
+
#.TYPE_ATTR
PDPTypeOrganization TYPE = FT_UINT8 DISPLAY = BASE_DEC BITMASK = 0x0f STRINGS = VALS(gsm_map_PDP_Type_Organisation_vals)
DateAndTime TYPE = FT_STRING DISPLAY = BASE_NONE
diff --git a/epan/dissectors/asn1/camel/packet-camel-template.c b/epan/dissectors/asn1/camel/packet-camel-template.c
index b883fdfae3..298da2351f 100644
--- a/epan/dissectors/asn1/camel/packet-camel-template.c
+++ b/epan/dissectors/asn1/camel/packet-camel-template.c
@@ -48,9 +48,9 @@
#define PFNAME "camel"
/* Initialize the protocol and registered fields */
-static int proto_camel = -1;
-int date_format = 1; /*assume european date format */
-int camel_tap = -1;
+static int proto_camel;
+static int date_format = 1; /*assume european date format */
+static int camel_tap;
/* Global variables */
static guint32 opcode=0;
static guint32 errorCode=0;
@@ -66,38 +66,40 @@ static struct camelsrt_info_t camelsrt_global_info[MAX_CAMEL_INSTANCE];
/* ROSE context */
static rose_ctx_t camel_rose_ctx;
-static int hf_digit = -1;
-static int hf_camel_extension_code_local = -1;
-static int hf_camel_error_code_local = -1;
-static int hf_camel_cause_indicator = -1;
-static int hf_camel_PDPTypeNumber_etsi = -1;
-static int hf_camel_PDPTypeNumber_ietf = -1;
-static int hf_camel_PDPAddress_IPv4 = -1;
-static int hf_camel_PDPAddress_IPv6 = -1;
-static int hf_camel_cellGlobalIdOrServiceAreaIdFixedLength = -1;
-static int hf_camel_RP_Cause = -1;
-static int hf_camel_CAMEL_AChBillingChargingCharacteristics = -1;
-static int hf_camel_CAMEL_FCIBillingChargingCharacteristics = -1;
-static int hf_camel_CAMEL_FCIGPRSBillingChargingCharacteristics = -1;
-static int hf_camel_CAMEL_FCISMSBillingChargingCharacteristics = -1;
-static int hf_camel_CAMEL_SCIBillingChargingCharacteristics = -1;
-static int hf_camel_CAMEL_SCIGPRSBillingChargingCharacteristics = -1;
-static int hf_camel_CAMEL_CallResult = -1;
+static int hf_digit;
+static int hf_camel_extension_code_local;
+static int hf_camel_error_code_local;
+static int hf_camel_cause_indicator;
+static int hf_camel_PDPTypeNumber_etsi;
+static int hf_camel_PDPTypeNumber_ietf;
+static int hf_camel_PDPAddress_IPv4;
+static int hf_camel_PDPAddress_IPv6;
+static int hf_camel_cellGlobalIdOrServiceAreaIdFixedLength;
+static int hf_camel_RP_Cause;
+static int hf_camel_CAMEL_AChBillingChargingCharacteristics;
+static int hf_camel_CAMEL_FCIBillingChargingCharacteristics;
+static int hf_camel_CAMEL_FCIGPRSBillingChargingCharacteristics;
+static int hf_camel_CAMEL_FCISMSBillingChargingCharacteristics;
+static int hf_camel_CAMEL_SCIBillingChargingCharacteristics;
+static int hf_camel_CAMEL_SCIGPRSBillingChargingCharacteristics;
+static int hf_camel_CAMEL_CallResult;
/* Used by persistent data */
-static int hf_camelsrt_SessionId=-1;
-static int hf_camelsrt_RequestNumber=-1;
-static int hf_camelsrt_Duplicate=-1;
-static int hf_camelsrt_RequestFrame=-1;
-static int hf_camelsrt_ResponseFrame=-1;
-static int hf_camelsrt_DeltaTime=-1;
-static int hf_camelsrt_SessionTime=-1;
-static int hf_camelsrt_DeltaTime31=-1;
-static int hf_camelsrt_DeltaTime75=-1;
-static int hf_camelsrt_DeltaTime65=-1;
-static int hf_camelsrt_DeltaTime22=-1;
-static int hf_camelsrt_DeltaTime35=-1;
-static int hf_camelsrt_DeltaTime80=-1;
+static int hf_camelsrt_SessionId;
+//static int hf_camelsrt_RequestNumber;
+static int hf_camelsrt_Duplicate;
+static int hf_camelsrt_RequestFrame;
+static int hf_camelsrt_ResponseFrame;
+//static int hf_camelsrt_DeltaTime;
+//static int hf_camelsrt_SessionTime;
+static int hf_camelsrt_DeltaTime31;
+static int hf_camelsrt_DeltaTime75;
+static int hf_camelsrt_DeltaTime65;
+static int hf_camelsrt_DeltaTime22;
+static int hf_camelsrt_DeltaTime35;
+static int hf_camelsrt_DeltaTime80;
+static int hf_camel_timeandtimezone_time;
+static int hf_camel_timeandtimezone_tz;
#include "packet-camel-hf.c"
@@ -107,46 +109,48 @@ static struct camelsrt_info_t * gp_camelsrt_info;
static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset,asn1_ctx_t *actx);
static int dissect_returnResultData(proto_tree *tree, tvbuff_t *tvb, int offset,asn1_ctx_t *actx);
static int dissect_returnErrorData(proto_tree *tree, tvbuff_t *tvb, int offset,asn1_ctx_t *actx);
-static int dissect_camel_CAMEL_AChBillingChargingCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_camel_CAMEL_AChBillingChargingCharacteristicsV2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_camel_CAMEL_CallResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_camel_EstablishTemporaryConnectionArgV2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_camel_SpecializedResourceReportArgV23(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_camel_CAMEL_AChBillingChargingCharacteristics(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_camel_CAMEL_AChBillingChargingCharacteristicsV2(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_camel_CAMEL_CallResult(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_camel_EstablishTemporaryConnectionArgV2(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_camel_SpecializedResourceReportArgV23(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
/* XXX - can we get rid of these and always do the SRT work? */
-static gboolean gcamel_HandleSRT=FALSE;
static gboolean gcamel_PersistentSRT=FALSE;
static gboolean gcamel_DisplaySRT=FALSE;
gboolean gcamel_StatSRT=FALSE;
/* Initialize the subtree pointers */
-static gint ett_camel = -1;
-static gint ett_camelisup_parameter = -1;
-static gint ett_camel_AccessPointName = -1;
-static gint ett_camel_pdptypenumber = -1;
-static gint ett_camel_cause = -1;
-static gint ett_camel_RPcause = -1;
-static gint ett_camel_stat = -1;
-static gint ett_camel_calledpartybcdnumber = -1;
-static gint ett_camel_callingpartynumber = -1;
-static gint ett_camel_originalcalledpartyid = -1;
-static gint ett_camel_redirectingpartyid = -1;
-static gint ett_camel_locationnumber = -1;
-static gint ett_camel_additionalcallingpartynumber = -1;
-static gint ett_camel_calledAddressValue = -1;
-static gint ett_camel_callingAddressValue = -1;
-static gint ett_camel_assistingSSPIPRoutingAddress = -1;
-static gint ett_camel_correlationID = -1;
-static gint ett_camel_dTMFDigitsCompleted = -1;
-static gint ett_camel_dTMFDigitsTimeOut = -1;
-static gint ett_camel_number = -1;
-static gint ett_camel_digitsResponse = -1;
+static gint ett_camel;
+static gint ett_camelisup_parameter;
+static gint ett_camel_AccessPointName;
+static gint ett_camel_pdptypenumber;
+static gint ett_camel_cause;
+static gint ett_camel_RPcause;
+static gint ett_camel_stat;
+static gint ett_camel_calledpartybcdnumber;
+static gint ett_camel_callingpartynumber;
+static gint ett_camel_originalcalledpartyid;
+static gint ett_camel_redirectingpartyid;
+static gint ett_camel_locationnumber;
+static gint ett_camel_additionalcallingpartynumber;
+static gint ett_camel_calledAddressValue;
+static gint ett_camel_callingAddressValue;
+static gint ett_camel_assistingSSPIPRoutingAddress;
+static gint ett_camel_correlationID;
+static gint ett_camel_dTMFDigitsCompleted;
+static gint ett_camel_dTMFDigitsTimeOut;
+static gint ett_camel_number;
+static gint ett_camel_digitsResponse;
+static gint ett_camel_timeandtimezone;
#include "packet-camel-ett.c"
-static expert_field ei_camel_unknown_invokeData = EI_INIT;
-static expert_field ei_camel_unknown_returnResultData = EI_INIT;
-static expert_field ei_camel_unknown_returnErrorData = EI_INIT;
+static expert_field ei_camel_unknown_invokeData;
+static expert_field ei_camel_unknown_returnResultData;
+static expert_field ei_camel_unknown_returnErrorData;
+static expert_field ei_camel_par_wrong_length;
+static expert_field ei_camel_bcd_not_digit;
/* Preference settings default */
#define MAX_SSN 254
@@ -184,7 +188,7 @@ static const value_string camel_Component_vals[] = {
const value_string camelSRTtype_naming[]= {
{ CAMELSRT_SESSION, "TCAP_Session" },
- { CAMELSRT_VOICE_INITIALDP, "InialDP/Continue" },
+ { CAMELSRT_VOICE_INITIALDP, "InitialDP/Continue" },
{ CAMELSRT_VOICE_ACR1, "Slice1_ACR/ACH" },
{ CAMELSRT_VOICE_ACR2, "Slice2_ACR/ACH" },
{ CAMELSRT_VOICE_ACR3, "Slice3_ACR/ACH" },
@@ -342,7 +346,7 @@ camelstat_init(struct register_srt* srt _U_, GArray* srt_array)
}
static tap_packet_status
-camelstat_packet(void *pcamel, packet_info *pinfo, epan_dissect_t *edt _U_, const void *psi)
+camelstat_packet(void *pcamel, packet_info *pinfo, epan_dissect_t *edt _U_, const void *psi, tap_flags_t flags _U_)
{
guint idx = 0;
srt_stat_table *camel_srt_table;
@@ -400,7 +404,7 @@ dissect_RP_cause_ie(tvbuff_t *tvb, guint32 offset, _U_ guint len,
return(curr_offset - offset);
}
-static int dissect_camel_InitialDPArgExtensionV2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_camel_InitialDPArgExtensionV2(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
#include "packet-camel-fn.c"
@@ -496,9 +500,9 @@ camelsrt_init_routine(void)
/* The Display of SRT is enable
* 1) For wireshark only if Persistent Stat is enable
- * 2) For Tshark, if the SRT handling is enable
+ * 2) For Tshark, if the SRT CLI tap is registered
*/
- gcamel_DisplaySRT=gcamel_PersistentSRT || gcamel_HandleSRT&gcamel_StatSRT;
+ gcamel_DisplaySRT=gcamel_PersistentSRT || gcamel_StatSRT;
}
@@ -1054,7 +1058,7 @@ static guint8 camel_pdu_size = 0;
static int
-dissect_camel_camelPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_,proto_tree *tree,
+dissect_camel_camelPDU(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_,proto_tree *tree,
int hf_index, struct tcap_private_t * p_private_tcap) {
opcode = 0;
@@ -1105,8 +1109,7 @@ dissect_camel_all(int version, const char* col_protocol, const char* suffix,
dissect_camel_camelPDU(FALSE, tvb, 0, &asn1_ctx , tree, -1, p_private_tcap);
/* If a Tcap context is associated to this transaction */
- if (gcamel_HandleSRT &&
- gp_camelsrt_info->tcap_context ) {
+ if (gp_camelsrt_info->tcap_context ) {
if (gcamel_DisplaySRT && tree) {
stat_tree = proto_tree_add_subtree(tree, tvb, 0, 0, ett_camel_stat, NULL, "Stat");
}
@@ -1175,6 +1178,7 @@ static void camel_stat_init(stat_tap_table_ui* new_stat)
table = stat_tap_init_table(table_name, num_fields, 0, NULL);
stat_tap_add_table(new_stat, table);
+ memset(items, 0x0, sizeof(items));
items[MESSAGE_TYPE_COLUMN].type = TABLE_ITEM_STRING;
items[COUNT_COLUMN].type = TABLE_ITEM_UINT;
items[COUNT_COLUMN].value.uint_value = 0;
@@ -1185,9 +1189,9 @@ static void camel_stat_init(stat_tap_table_ui* new_stat)
const char *ocs = try_val_to_str(i, camel_opr_code_strings);
char *col_str;
if (ocs) {
- col_str = g_strdup_printf("Request %s", ocs);
+ col_str = ws_strdup_printf("Request %s", ocs);
} else {
- col_str = g_strdup_printf("Unknown op code %d", i);
+ col_str = ws_strdup_printf("Unknown op code %d", i);
}
items[MESSAGE_TYPE_COLUMN].value.string_value = col_str;
@@ -1196,7 +1200,7 @@ static void camel_stat_init(stat_tap_table_ui* new_stat)
}
static tap_packet_status
-camel_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *csi_ptr)
+camel_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *csi_ptr, tap_flags_t flags _U_)
{
stat_data_t* stat_data = (stat_data_t*)tapdata;
const struct camelsrt_info_t *csi = (const struct camelsrt_info_t *) csi_ptr;
@@ -1376,12 +1380,12 @@ void proto_register_camel(void) {
FT_UINT32, BASE_DEC, NULL, 0x0,
NULL, HFILL }
},
- { &hf_camelsrt_RequestNumber,
- { "Request Number",
- "camel.srt.request_number",
- FT_UINT64, BASE_DEC, NULL, 0x0,
- NULL, HFILL }
- },
+ //{ &hf_camelsrt_RequestNumber,
+ // { "Request Number",
+ // "camel.srt.request_number",
+ // FT_UINT64, BASE_DEC, NULL, 0x0,
+ // NULL, HFILL }
+ //},
{ &hf_camelsrt_Duplicate,
{ "Request Duplicate",
"camel.srt.duplicate",
@@ -1400,18 +1404,18 @@ void proto_register_camel(void) {
FT_FRAMENUM, BASE_NONE, NULL, 0x0,
"SRT Response Frame", HFILL }
},
- { &hf_camelsrt_DeltaTime,
- { "Service Response Time",
- "camel.srt.deltatime",
- FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0,
- "DeltaTime between Request and Response", HFILL }
- },
- { &hf_camelsrt_SessionTime,
- { "Session duration",
- "camel.srt.sessiontime",
- FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0,
- "Duration of the TCAP session", HFILL }
- },
+ //{ &hf_camelsrt_DeltaTime,
+ // { "Service Response Time",
+ // "camel.srt.deltatime",
+ // FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0,
+ // "DeltaTime between Request and Response", HFILL }
+ //},
+ //{ &hf_camelsrt_SessionTime,
+ // { "Session duration",
+ // "camel.srt.sessiontime",
+ // FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0,
+ // "Duration of the TCAP session", HFILL }
+ //},
{ &hf_camelsrt_DeltaTime31,
{ "Service Response Time",
"camel.srt.deltatime31",
@@ -1448,7 +1452,18 @@ void proto_register_camel(void) {
FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0,
"DeltaTime between EventReportGPRS and ContinueGPRS", HFILL }
},
-
+ { &hf_camel_timeandtimezone_time,
+ { "Time",
+ "camel.timeandtimezone.time",
+ FT_STRING, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_camel_timeandtimezone_tz,
+ { "Time Zone",
+ "camel.timeandtimezone.timezone",
+ FT_INT8, BASE_DEC, NULL, 0x0,
+ "Difference, expressed in quarters of an hour, between local time and GMT", HFILL }
+ },
#ifdef REMOVED
#endif
#include "packet-camel-hfarr.c"
@@ -1477,6 +1492,7 @@ void proto_register_camel(void) {
&ett_camel_dTMFDigitsTimeOut,
&ett_camel_number,
&ett_camel_digitsResponse,
+ &ett_camel_timeandtimezone,
#include "packet-camel-ettarr.c"
};
@@ -1485,6 +1501,8 @@ void proto_register_camel(void) {
{ &ei_camel_unknown_invokeData, { "camel.unknown.invokeData", PI_MALFORMED, PI_WARN, "Unknown invokeData", EXPFILL }},
{ &ei_camel_unknown_returnResultData, { "camel.unknown.returnResultData", PI_MALFORMED, PI_WARN, "Unknown returnResultData", EXPFILL }},
{ &ei_camel_unknown_returnErrorData, { "camel.unknown.returnErrorData", PI_MALFORMED, PI_WARN, "Unknown returnResultData", EXPFILL }},
+ { &ei_camel_par_wrong_length, { "camel.par_wrong_length", PI_PROTOCOL, PI_ERROR, "Wrong length of parameter", EXPFILL }},
+ { &ei_camel_bcd_not_digit, { "camel.bcd_not_digit", PI_MALFORMED, PI_WARN, "BCD number contains a value that is not a digit", EXPFILL }},
};
expert_module_t* expert_camel;
@@ -1552,10 +1570,7 @@ void proto_register_camel(void) {
"TCAP Subsystem numbers used for Camel",
&global_ssn_range, MAX_SSN);
- prefs_register_bool_preference(camel_module, "srt",
- "Analyze Service Response Time",
- "Enable response time analysis",
- &gcamel_HandleSRT);
+ prefs_register_obsolete_preference(camel_module, "srt");
prefs_register_bool_preference(camel_module, "persistentsrt",
"Persistent stats for SRT",
diff --git a/epan/dissectors/asn1/cbrs-oids/packet-cbrs-oids-template.c b/epan/dissectors/asn1/cbrs-oids/packet-cbrs-oids-template.c
index 542c01e556..063591419c 100644
--- a/epan/dissectors/asn1/cbrs-oids/packet-cbrs-oids-template.c
+++ b/epan/dissectors/asn1/cbrs-oids/packet-cbrs-oids-template.c
@@ -31,9 +31,9 @@ void proto_register_cbrs_oids(void);
void proto_reg_handoff_cbrs_oids(void);
/* Initialize the protocol and registered fields */
-static int proto_cbrs_oids = -1;
+static int proto_cbrs_oids;
#include "packet-cbrs-oids-hf.c"
-static int hf_cbrs_oids_UTF8String_PDU = -1;
+static int hf_cbrs_oids_UTF8String_PDU;
/* Initialize the subtree pointers */
#include "packet-cbrs-oids-fn.c"
diff --git a/epan/dissectors/asn1/cdt/packet-cdt-template.c b/epan/dissectors/asn1/cdt/packet-cdt-template.c
index 8cf27bbdbe..7820380c13 100644
--- a/epan/dissectors/asn1/cdt/packet-cdt-template.c
+++ b/epan/dissectors/asn1/cdt/packet-cdt-template.c
@@ -44,14 +44,14 @@ static proto_item *cdt_item = NULL;
static guint32 content_type = 0;
/* Initialize the protocol and registered fields */
-static int proto_cdt = -1;
+static int proto_cdt;
#include "packet-cdt-hf.c"
/* Initialize the subtree pointers */
#include "packet-cdt-ett.c"
-static expert_field ei_cdt_unable_compress_content = EI_INIT;
-static expert_field ei_cdt_unable_uncompress_content = EI_INIT;
+static expert_field ei_cdt_unable_compress_content;
+static expert_field ei_cdt_unable_uncompress_content;
#include "packet-cdt-fn.c"
diff --git a/epan/dissectors/asn1/charging_ase/packet-charging_ase-template.c b/epan/dissectors/asn1/charging_ase/packet-charging_ase-template.c
index 0bc3074144..780e1cadc5 100644
--- a/epan/dissectors/asn1/charging_ase/packet-charging_ase-template.c
+++ b/epan/dissectors/asn1/charging_ase/packet-charging_ase-template.c
@@ -26,14 +26,14 @@ void proto_register_charging_ase(void);
void proto_reg_handoff_charging_ase(void);
/* Define the Charging ASE proto */
-static int proto_charging_ase = -1;
+static int proto_charging_ase;
#include "packet-charging_ase-hf.c"
-static int ett_charging_ase = -1;
+static int ett_charging_ase;
#include "packet-charging_ase-ett.c"
-static expert_field ei_charging_ase_extensions_not_dissected = EI_INIT;
+static expert_field ei_charging_ase_extensions_not_dissected;
static dissector_handle_t charging_ase_handle;
@@ -82,12 +82,12 @@ proto_register_charging_ase(void)
proto_register_subtree_array(ett, array_length(ett));
expert_charging_ase = expert_register_protocol(proto_charging_ase);
expert_register_field_array(expert_charging_ase, ei, array_length(ei));
+ charging_ase_handle = register_dissector("charging_ase", dissect_charging_ase, proto_charging_ase);
}
/* The registration hand-off routine */
void
proto_reg_handoff_charging_ase(void)
{
- charging_ase_handle = create_dissector_handle(dissect_charging_ase, proto_charging_ase);
}
diff --git a/epan/dissectors/asn1/cmip/packet-cmip-template.c b/epan/dissectors/asn1/cmip/packet-cmip-template.c
index dbac6c6b54..4e7a249493 100644
--- a/epan/dissectors/asn1/cmip/packet-cmip-template.c
+++ b/epan/dissectors/asn1/cmip/packet-cmip-template.c
@@ -15,6 +15,7 @@
#include <epan/expert.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-acse.h"
@@ -33,19 +34,19 @@ void proto_reg_handoff_cmip(void);
#include "packet-pres.h"
/* Initialize the protocol and registered fields */
-static int proto_cmip = -1;
-static int hf_cmip_actionType_OID = -1;
-static int hf_cmip_eventType_OID = -1;
-static int hf_cmip_attributeId_OID = -1;
-static int hf_cmip_errorId_OID = -1;
+static int proto_cmip;
+static int hf_cmip_actionType_OID;
+static int hf_cmip_eventType_OID;
+static int hf_cmip_attributeId_OID;
+static int hf_cmip_errorId_OID;
#include "packet-cmip-hf.c"
/* Initialize the subtree pointers */
-static gint ett_cmip = -1;
+static gint ett_cmip;
#include "packet-cmip-ett.c"
-static expert_field ei_wrong_spdu_type = EI_INIT;
+static expert_field ei_wrong_spdu_type;
static guint32 opcode;
diff --git a/epan/dissectors/asn1/cmp/cmp.cnf b/epan/dissectors/asn1/cmp/cmp.cnf
index 05d3b5e42f..ec60a0210c 100644
--- a/epan/dissectors/asn1/cmp/cmp.cnf
+++ b/epan/dissectors/asn1/cmp/cmp.cnf
@@ -63,7 +63,7 @@ RevRepContent/status ABBREV=rvrpcnt_status
%(DEFAULT_BODY)s
- col_append_fstr(actx->pinfo->cinfo, COL_INFO, " Body=%%s", val_to_str(branch_taken, cmp_PKIBody_vals, "unknown"));
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " Body=%%s", val_to_str_const(branch_taken, cmp_PKIBody_vals, "unknown"));
#.FN_PARS PKIStatus
VAL_PTR = &value
@@ -73,6 +73,6 @@ RevRepContent/status ABBREV=rvrpcnt_status
%(DEFAULT_BODY)s
- col_append_fstr(actx->pinfo->cinfo, COL_INFO, " Status=%%s", val_to_str(value, cmp_PKIStatus_vals, "unknown"));
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " Status=%%s", val_to_str_const(value, cmp_PKIStatus_vals, "unknown"));
#.END_OF_CNF
diff --git a/epan/dissectors/asn1/cmp/packet-cmp-template.c b/epan/dissectors/asn1/cmp/packet-cmp-template.c
index 21e3b27ed4..c6af656260 100644
--- a/epan/dissectors/asn1/cmp/packet-cmp-template.c
+++ b/epan/dissectors/asn1/cmp/packet-cmp-template.c
@@ -18,6 +18,7 @@
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-cmp.h"
#include "packet-crmf.h"
@@ -36,6 +37,10 @@
void proto_register_cmp(void);
+static dissector_handle_t cmp_http_handle;
+static dissector_handle_t cmp_tcp_style_http_handle;
+static dissector_handle_t cmp_tcp_handle;
+
/* desegmentation of CMP over TCP */
static gboolean cmp_desegment = TRUE;
@@ -43,19 +48,19 @@ static guint cmp_alternate_http_port = 0;
static guint cmp_alternate_tcp_style_http_port = 0;
/* Initialize the protocol and registered fields */
-static int proto_cmp = -1;
-static int hf_cmp_type_oid = -1;
-static int hf_cmp_tcptrans_len = -1;
-static int hf_cmp_tcptrans_type = -1;
-static int hf_cmp_tcptrans_poll_ref = -1;
-static int hf_cmp_tcptrans_next_poll_ref = -1;
-static int hf_cmp_tcptrans_ttcb = -1;
-static int hf_cmp_tcptrans10_version = -1;
-static int hf_cmp_tcptrans10_flags = -1;
+static int proto_cmp;
+static int hf_cmp_type_oid;
+static int hf_cmp_tcptrans_len;
+static int hf_cmp_tcptrans_type;
+static int hf_cmp_tcptrans_poll_ref;
+static int hf_cmp_tcptrans_next_poll_ref;
+static int hf_cmp_tcptrans_ttcb;
+static int hf_cmp_tcptrans10_version;
+static int hf_cmp_tcptrans10_flags;
#include "packet-cmp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_cmp = -1;
+static gint ett_cmp;
#include "packet-cmp-ett.c"
#include "packet-cmp-fn.c"
@@ -316,6 +321,7 @@ void proto_register_cmp(void) {
proto_register_field_array(proto_cmp, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ /* Register preferences */
cmp_module = prefs_register_protocol(proto_cmp, proto_reg_handoff_cmp);
prefs_register_bool_preference(cmp_module, "desegment",
"Reassemble CMP-over-TCP messages spanning multiple TCP segments",
@@ -337,6 +343,10 @@ void proto_register_cmp(void) {
10,
&cmp_alternate_tcp_style_http_port);
+ /* Register dissectors */
+ cmp_http_handle = register_dissector("cmp.http", dissect_cmp_http, proto_cmp);
+ cmp_tcp_style_http_handle = register_dissector("cmp.tcp_pdu", dissect_cmp_tcp_pdu, proto_cmp);
+ cmp_tcp_handle = register_dissector("cmp", dissect_cmp_tcp, proto_cmp);
register_ber_syntax_dissector("PKIMessage", proto_cmp, dissect_cmp_pdu);
}
@@ -344,22 +354,16 @@ void proto_register_cmp(void) {
/*--- proto_reg_handoff_cmp -------------------------------------------*/
void proto_reg_handoff_cmp(void) {
static gboolean inited = FALSE;
- static dissector_handle_t cmp_http_handle;
- static dissector_handle_t cmp_tcp_style_http_handle;
- static dissector_handle_t cmp_tcp_handle;
static guint cmp_alternate_http_port_prev = 0;
static guint cmp_alternate_tcp_style_http_port_prev = 0;
if (!inited) {
- cmp_http_handle = create_dissector_handle(dissect_cmp_http, proto_cmp);
dissector_add_string("media_type", "application/pkixcmp", cmp_http_handle);
dissector_add_string("media_type", "application/x-pkixcmp", cmp_http_handle);
- cmp_tcp_style_http_handle = create_dissector_handle(dissect_cmp_tcp_pdu, proto_cmp);
dissector_add_string("media_type", "application/pkixcmp-poll", cmp_tcp_style_http_handle);
dissector_add_string("media_type", "application/x-pkixcmp-poll", cmp_tcp_style_http_handle);
- cmp_tcp_handle = create_dissector_handle(dissect_cmp_tcp, proto_cmp);
dissector_add_uint_with_preference("tcp.port", TCP_PORT_CMP, cmp_tcp_handle);
oid_add_from_string("Cryptlib-presence-check","1.3.6.1.4.1.3029.3.1.1");
diff --git a/epan/dissectors/asn1/cms/CryptographicMessageSyntax.asn b/epan/dissectors/asn1/cms/CryptographicMessageSyntax.asn
index 3ade46892a..a2b9d92185 100644
--- a/epan/dissectors/asn1/cms/CryptographicMessageSyntax.asn
+++ b/epan/dissectors/asn1/cms/CryptographicMessageSyntax.asn
@@ -398,3 +398,88 @@ RC2CBCParameters ::= CHOICE {
END -- of CryptographicMessageSyntax2004
+
+CMS-AuthEnvelopedData-2007 { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
+ pkcs-9(9) smime(16) modules(0) cms-authEnvelopedData(31) }
+
+DEFINITIONS IMPLICIT TAGS ::=
+BEGIN
+
+-- EXPORTS All
+-- The types and values defined in this module are exported for use
+-- in the other ASN.1 modules. Other applications may use them for
+-- their own purposes.
+
+-- IMPORTS
+
+-- Imports from RFC 3852 [CMS], Section 12.1
+-- AuthAttributes,
+-- CMSVersion,
+-- EncryptedContentInfo,
+-- MessageAuthenticationCode,
+-- OriginatorInfo,
+-- RecipientInfos,
+-- UnauthAttributes
+-- FROM CryptographicMessageSyntax2004
+-- { iso(1) member-body(2) us(840) rsadsi(113549)
+-- pkcs(1) pkcs-9(9) smime(16) modules(0)
+-- cms-2004(24) } ;
+
+
+AuthEnvelopedData ::= SEQUENCE {
+ version CMSVersion,
+ originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
+ recipientInfos RecipientInfos,
+ authEncryptedContentInfo EncryptedContentInfo,
+ authAttrs [1] IMPLICIT AuthAttributes OPTIONAL,
+ mac MessageAuthenticationCode,
+ unauthAttrs [2] IMPLICIT UnauthAttributes OPTIONAL }
+
+id-ct-authEnvelopedData OBJECT IDENTIFIER ::= { iso(1)
+ member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-9(9)
+ smime(16) ct(1) 23 }
+
+END -- of CMS-AuthEnvelopedData-2007
+
+CMS-AES-CCM-and-AES-GCM
+ { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
+ pkcs-9(9) smime(16) modules(0) cms-aes-ccm-and-gcm(32) }
+
+DEFINITIONS IMPLICIT TAGS ::= BEGIN
+
+-- EXPORTS All
+
+-- Object Identifiers
+
+aes OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840)
+ organization(1) gov(101) csor(3) nistAlgorithm(4) 1 }
+
+id-aes128-CCM OBJECT IDENTIFIER ::= { aes 7 }
+
+id-aes192-CCM OBJECT IDENTIFIER ::= { aes 27 }
+
+id-aes256-CCM OBJECT IDENTIFIER ::= { aes 47 }
+
+id-aes128-GCM OBJECT IDENTIFIER ::= { aes 6 }
+
+id-aes192-GCM OBJECT IDENTIFIER ::= { aes 26 }
+
+id-aes256-GCM OBJECT IDENTIFIER ::= { aes 46 }
+
+
+-- Parameters for AigorithmIdentifier
+
+CCMParameters ::= SEQUENCE {
+ aes-nonce OCTET STRING (SIZE(7..13)),
+ aes-ICVlen AES-CCM-ICVlen DEFAULT 12 }
+
+AES-CCM-ICVlen ::= INTEGER (4 | 6 | 8 | 10 | 12 | 14 | 16)
+
+GCMParameters ::= SEQUENCE {
+ aes-nonce OCTET STRING, -- recommended size is 12 octets
+ aes-ICVlen AES-GCM-ICVlen DEFAULT 12 }
+
+AES-GCM-ICVlen ::= INTEGER (12 | 13 | 14 | 15 | 16)
+
+END
+
diff --git a/epan/dissectors/asn1/cms/cms.cnf b/epan/dissectors/asn1/cms/cms.cnf
index 5ce647b941..77da31436b 100644
--- a/epan/dissectors/asn1/cms/cms.cnf
+++ b/epan/dissectors/asn1/cms/cms.cnf
@@ -21,6 +21,7 @@ DigestAlgorithmIdentifiers
DigestInfo
EncapsulatedContentInfo
EnvelopedData
+AuthEnvelopedData
IssuerAndSerialNumber
SignedAttributes
SignedData
@@ -38,6 +39,8 @@ EnvelopedData B "1.2.840.113549.1.7.3" "id-envelopedData"
DigestedData B "1.2.840.113549.1.7.5" "id-digestedData"
EncryptedData B "1.2.840.113549.1.7.6" "id-encryptedData"
AuthenticatedData B "1.2.840.113549.1.9.16.1.2" "id-ct-authenticatedData"
+EncryptedContentInfo B "1.2.840.113549.1.9.16.1.9" "id-ct-compressedData"
+AuthEnvelopedData B "1.2.840.113549.1.9.16.1.23" "id-ct-authEnvelopedData"
ContentType B "1.2.840.113549.1.9.3" "id-contentType"
MessageDigest B "1.2.840.113549.1.9.4" "id-messageDigest"
@@ -53,6 +56,22 @@ SMIMEEncryptionKeyPreference B "1.2.840.113549.1.9.16.2.11" "id-encryption-key-p
# I think the following should be RC2CBCParameter - but that appears to be incorrect
RC2CBCParameters B "1.2.840.113549.3.4" "id-alg-rc4"
+KeyEncryptionAlgorithmIdentifier B "0.4.0.127.0.7.1.1.5.1.1.3" "ecka-eg-X963KDF-SHA256"
+KeyEncryptionAlgorithmIdentifier B "0.4.0.127.0.7.1.1.5.1.1.4" "ecka-eg-X963KDF-SHA384"
+KeyEncryptionAlgorithmIdentifier B "0.4.0.127.0.7.1.1.5.1.1.5" "ecka-eg-X963KDF-SHA512"
+
+KeyEncryptionAlgorithmIdentifier B "2.16.840.1.101.3.4.1.5" "id-aes128-wrap"
+KeyEncryptionAlgorithmIdentifier B "2.16.840.1.101.3.4.1.25" "id-aes192-wrap"
+KeyEncryptionAlgorithmIdentifier B "2.16.840.1.101.3.4.1.45" "id-aes256-wrap"
+
+GCMParameters B "2.16.840.1.101.3.4.1.6" "id-aes128-GCM"
+GCMParameters B "2.16.840.1.101.3.4.1.26" "id-aes192-GCM"
+GCMParameters B "2.16.840.1.101.3.4.1.46" "id-aes256-GCM"
+
+CCMParameters B "2.16.840.1.101.3.4.1.7" "id-aes128-CCM"
+CCMParameters B "2.16.840.1.101.3.4.1.27" "id-aes192-CCM"
+CCMParameters B "2.16.840.1.101.3.4.1.44" "id-aes256-CCM"
+
# EC algorithms from RFC 3278 / RFC 5753
KeyWrapAlgorithm B "1.3.133.16.840.63.0.2" "dhSinglePass-stdDH-sha1kdf-scheme"
KeyWrapAlgorithm B "1.3.132.1.11.0" "dhSinglePass-stdDH-sha224kdf-scheme"
@@ -121,72 +140,94 @@ FirmwarePackageLoadError/version fwErrorVersion
#.FN_BODY ContentInfo
top_tree = tree;
%(DEFAULT_BODY)s
- content_tvb = NULL;
- object_identifier_id = NULL;
top_tree = NULL;
#.FN_PARS ContentType
- FN_VARIANT = _str VAL_PTR = &object_identifier_id
+ FN_VARIANT = _str VAL_PTR = &cms_data->object_identifier_id
#.FN_BODY ContentType
- const char *name = NULL;
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->object_identifier_id = NULL;
+ const char *name = NULL;
- %(DEFAULT_BODY)s
+ %(DEFAULT_BODY)s
- if(object_identifier_id) {
- name = oid_resolved_from_string(actx->pinfo->pool, object_identifier_id);
- proto_item_append_text(tree, " (%%s)", name ? name : object_identifier_id);
- }
+ if(cms_data->object_identifier_id) {
+ name = oid_resolved_from_string(actx->pinfo->pool, cms_data->object_identifier_id);
+ proto_item_append_text(tree, " (%%s)", name ? name : cms_data->object_identifier_id);
+ }
#.FN_BODY ContentInfo/content
- offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ offset=call_ber_oid_callback(cms_data->object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
#.FN_BODY EncapsulatedContentInfo/eContent
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->content_tvb = NULL;
+ offset = dissect_ber_octet_string(FALSE, actx, tree, tvb, offset, hf_index, &cms_data->content_tvb);
- offset = dissect_ber_octet_string(FALSE, actx, tree, tvb, offset, hf_index, &content_tvb);
-
- if(content_tvb) {
- proto_item_set_text(actx->created_item, "eContent (%%u bytes)", tvb_reported_length (content_tvb));
+ if(cms_data->content_tvb) {
+ proto_item_set_text(actx->created_item, "eContent (%%u bytes)", tvb_reported_length(cms_data->content_tvb));
- call_ber_oid_callback(object_identifier_id, content_tvb, 0, actx->pinfo, top_tree ? top_tree : tree, NULL);
+ call_ber_oid_callback(cms_data->object_identifier_id, cms_data->content_tvb, 0, actx->pinfo, top_tree ? top_tree : tree, NULL);
}
#.FN_PARS OtherRecipientInfo/oriType
- FN_VARIANT = _str VAL_PTR = &object_identifier_id
+ FN_VARIANT = _str VAL_PTR = &cms_data->object_identifier_id
+
+#.FN_HDR OtherRecipientInfo/oriType
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->object_identifier_id = NULL;
#.FN_BODY OtherRecipientInfo/oriValue
- offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ offset=call_ber_oid_callback(cms_data->object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
#.FN_PARS OtherKeyAttribute/keyAttrId
- FN_VARIANT = _str HF_INDEX = hf_cms_ci_contentType VAL_PTR = &object_identifier_id
+ FN_VARIANT = _str HF_INDEX = hf_cms_ci_contentType VAL_PTR = &cms_data->object_identifier_id
+
+#.FN_HDR OtherKeyAttribute/keyAttrId
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->object_identifier_id = NULL;
#.FN_BODY OtherKeyAttribute/keyAttr
- offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ offset=call_ber_oid_callback(cms_data->object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+
#.FN_PARS OtherRevocationInfoFormat/otherRevInfoFormat
- FN_VARIANT = _str VAL_PTR = &object_identifier_id
+ FN_VARIANT = _str VAL_PTR = &cms_data->object_identifier_id
+
+#.FN_HDR OtherRevocationInfoFormat/otherRevInfoFormat
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->object_identifier_id = NULL;
#.FN_BODY OtherRevocationInfoFormat/otherRevInfo
- offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ offset=call_ber_oid_callback(cms_data->object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
#.FN_PARS Attribute/attrType
- FN_VARIANT = _str HF_INDEX = hf_cms_attrType VAL_PTR = &object_identifier_id
+ FN_VARIANT = _str HF_INDEX = hf_cms_attrType VAL_PTR = &cms_data->object_identifier_id
#.FN_BODY Attribute/attrType
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->object_identifier_id = NULL;
const char *name = NULL;
%(DEFAULT_BODY)s
- if(object_identifier_id) {
- name = oid_resolved_from_string(actx->pinfo->pool, object_identifier_id);
- proto_item_append_text(tree, " (%%s)", name ? name : object_identifier_id);
+ if(cms_data->object_identifier_id) {
+ name = oid_resolved_from_string(actx->pinfo->pool, cms_data->object_identifier_id);
+ proto_item_append_text(tree, " (%%s)", name ? name : cms_data->object_identifier_id);
}
#.FN_BODY AttributeValue
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
- offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+ offset=call_ber_oid_callback(cms_data->object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
#.FN_BODY MessageDigest
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
proto_item *pi;
int old_offset = offset;
@@ -198,26 +239,29 @@ FirmwarePackageLoadError/version fwErrorVersion
old_offset = get_ber_identifier(tvb, old_offset, NULL, NULL, NULL);
old_offset = get_ber_length(tvb, old_offset, NULL, NULL);
- if(content_tvb)
- cms_verify_msg_digest(pi, content_tvb, x509af_get_last_algorithm_id(), tvb, old_offset);
+ if(cms_data->content_tvb)
+ cms_verify_msg_digest(pi, cms_data->content_tvb, x509af_get_last_algorithm_id(), tvb, old_offset);
#.FN_PARS SMIMECapability/capability
- FN_VARIANT = _str HF_INDEX = hf_cms_attrType VAL_PTR = &object_identifier_id
+ FN_VARIANT = _str HF_INDEX = hf_cms_attrType VAL_PTR = &cms_data->object_identifier_id
#.FN_BODY SMIMECapability/capability
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
+ cms_data->object_identifier_id = NULL;
const char *name = NULL;
%(DEFAULT_BODY)s
- if(object_identifier_id) {
- name = oid_resolved_from_string(actx->pinfo->pool, object_identifier_id);
- proto_item_append_text(tree, " %%s", name ? name : object_identifier_id);
+ if(cms_data->object_identifier_id) {
+ name = oid_resolved_from_string(actx->pinfo->pool, cms_data->object_identifier_id);
+ proto_item_append_text(tree, " %%s", name ? name : cms_data->object_identifier_id);
cap_tree = tree;
}
#.FN_BODY SMIMECapability/parameters
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
- offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
+ offset=call_ber_oid_callback(cms_data->object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
#.FN_PARS RC2ParameterVersion
VAL_PTR = &length
@@ -238,10 +282,11 @@ FirmwarePackageLoadError/version fwErrorVersion
#.END
#.FN_FTR EncryptedContent
+ struct cms_private_data *cms_data = cms_get_private_data(actx->pinfo);
- item = actx->created_item;
+ item = actx->created_item;
- PBE_decrypt_data(object_identifier_id, encrypted_tvb, actx->pinfo, actx, item);
+ PBE_decrypt_data(cms_data->object_identifier_id, encrypted_tvb, actx->pinfo, actx, item);
#.END
diff --git a/epan/dissectors/asn1/cms/packet-cms-template.c b/epan/dissectors/asn1/cms/packet-cms-template.c
index 931fd4fc0c..fb3b3a316f 100644
--- a/epan/dissectors/asn1/cms/packet-cms-template.c
+++ b/epan/dissectors/asn1/cms/packet-cms-template.c
@@ -2,6 +2,7 @@
* Routines for RFC5652 Cryptographic Message Syntax packet dissection
* Ronnie Sahlberg 2004
* Stig Bjorlykke 2010
+ * Uwe Heuert 2022
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -15,6 +16,7 @@
#include <epan/packet.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include <wsutil/wsgcrypt.h>
#include "packet-ber.h"
@@ -33,18 +35,22 @@ void proto_register_cms(void);
void proto_reg_handoff_cms(void);
/* Initialize the protocol and registered fields */
-static int proto_cms = -1;
-static int hf_cms_ci_contentType = -1;
+static int proto_cms;
+static int hf_cms_ci_contentType;
#include "packet-cms-hf.c"
/* Initialize the subtree pointers */
+static gint ett_cms;
#include "packet-cms-ett.c"
-static int dissect_cms_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) ; /* XXX kill a compiler warning until asn2wrs stops generating these silly wrappers */
+static dissector_handle_t cms_handle = NULL;
+static int dissect_cms_OCTET_STRING(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) ; /* XXX kill a compiler warning until asn2wrs stops generating these silly wrappers */
-static const char *object_identifier_id = NULL;
-static tvbuff_t *content_tvb = NULL;
+struct cms_private_data {
+ const char *object_identifier_id;
+ tvbuff_t *content_tvb;
+};
static proto_tree *top_tree=NULL;
static proto_tree *cap_tree=NULL;
@@ -62,6 +68,42 @@ static proto_tree *cap_tree=NULL;
unsigned char digest_buf[MAX(HASH_SHA1_LENGTH, HASH_MD5_LENGTH)];
+/*
+* Dissect CMS PDUs inside a PPDU.
+*/
+static int
+dissect_cms(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* data _U_)
+{
+ int offset = 0;
+ proto_item *item=NULL;
+ proto_tree *tree=NULL;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
+
+ if(parent_tree){
+ item = proto_tree_add_item(parent_tree, proto_cms, tvb, 0, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_cms);
+ }
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "CMS");
+ col_clear(pinfo->cinfo, COL_INFO);
+
+ while (tvb_reported_length_remaining(tvb, offset) > 0){
+ offset=dissect_cms_ContentInfo(FALSE, tvb, offset, &asn1_ctx , tree, -1);
+ }
+ return tvb_captured_length(tvb);
+}
+
+static struct cms_private_data*
+cms_get_private_data(packet_info *pinfo)
+{
+ struct cms_private_data *cms_data = (struct cms_private_data*)p_get_proto_data(pinfo->pool, pinfo, proto_cms, 0);
+ if (!cms_data) {
+ cms_data = wmem_new0(pinfo->pool, struct cms_private_data);
+ p_add_proto_data(pinfo->pool, pinfo, proto_cms, 0, cms_data);
+ }
+ return cms_data;
+}
+
static void
cms_verify_msg_digest(proto_item *pi, tvbuff_t *content, const char *alg, tvbuff_t *tvb, int offset)
{
@@ -114,12 +156,15 @@ void proto_register_cms(void) {
/* List of subtrees */
static gint *ett[] = {
+ &ett_cms,
#include "packet-cms-ettarr.c"
};
/* Register protocol */
proto_cms = proto_register_protocol(PNAME, PSNAME, PFNAME);
+ cms_handle = register_dissector(PFNAME, dissect_cms, proto_cms);
+
/* Register fields and subtrees */
proto_register_field_array(proto_cms, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
@@ -143,10 +188,24 @@ void proto_reg_handoff_cms(void) {
register_ber_oid_dissector("1.2.840.113549.1.9.16.3.6", dissect_ber_oid_NULL_callback, proto_cms, "id-alg-CMS3DESwrap");
oid_add_from_string("id-data","1.2.840.113549.1.7.1");
+ oid_add_from_string("id-alg-des-ede3-cbc","1.2.840.113549.3.7");
oid_add_from_string("id-alg-des-cbc","1.3.14.3.2.7");
+ oid_add_from_string("id-ct-authEnvelopedData","1.2.840.113549.1.9.16.1.23");
+ oid_add_from_string("id-aes-CBC-CMAC-128","0.4.0.127.0.7.1.3.1.1.2");
+ oid_add_from_string("id-aes-CBC-CMAC-192","0.4.0.127.0.7.1.3.1.1.3");
+ oid_add_from_string("id-aes-CBC-CMAC-256","0.4.0.127.0.7.1.3.1.1.4");
+ oid_add_from_string("ecdsaWithSHA256","1.2.840.10045.4.3.2");
+ oid_add_from_string("ecdsaWithSHA384","1.2.840.10045.4.3.3");
+ oid_add_from_string("ecdsaWithSHA512","1.2.840.10045.4.3.4");
+
content_info_handle = create_dissector_handle (dissect_ContentInfo_PDU, proto_cms);
+
dissector_add_string("media_type", "application/pkcs7-mime", content_info_handle);
dissector_add_string("media_type", "application/pkcs7-signature", content_info_handle);
- dissector_add_string("rfc7468.preeb_label", "CMS", content_info_handle);
+
+ dissector_add_string("media_type", "application/vnd.de-dke-k461-ic1+xml", content_info_handle);
+ dissector_add_string("media_type", "application/vnd.de-dke-k461-ic1+xml; encap=cms-tr03109", content_info_handle);
+ dissector_add_string("media_type", "application/vnd.de-dke-k461-ic1+xml; encap=cms-tr03109-zlib", content_info_handle);
+ dissector_add_string("media_type", "application/hgp;encap=cms", content_info_handle);
}
diff --git a/epan/dissectors/asn1/cms/packet-cms-template.h b/epan/dissectors/asn1/cms/packet-cms-template.h
index fc72844c75..eb1f45fbee 100644
--- a/epan/dissectors/asn1/cms/packet-cms-template.h
+++ b/epan/dissectors/asn1/cms/packet-cms-template.h
@@ -2,6 +2,7 @@
* Routines for RFC5652 Cryptographic Message Syntax packet dissection
* Ronnie Sahlberg 2004
* Stig Bjorlykke 2010
+ * Uwe Heuert 2022
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
diff --git a/epan/dissectors/asn1/credssp/credssp.cnf b/epan/dissectors/asn1/credssp/credssp.cnf
index c7006415d3..a55b150729 100644
--- a/epan/dissectors/asn1/credssp/credssp.cnf
+++ b/epan/dissectors/asn1/credssp/credssp.cnf
@@ -87,7 +87,7 @@ TSRequest
#.TYPE_ATTR
-TSRemoteGuardPackageCred/packageName TYPE = FT_STRING DISPLAY = STR_UNICODE STRINGS = NULL
+TSRemoteGuardPackageCred/packageName TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
#.FN_BODY TSRemoteGuardPackageCred/packageName VAL_PTR = &pname
tvbuff_t *pname = NULL;
diff --git a/epan/dissectors/asn1/credssp/packet-credssp-template.c b/epan/dissectors/asn1/credssp/packet-credssp-template.c
index 1a9b9c2717..8e6b229d91 100644
--- a/epan/dissectors/asn1/credssp/packet-credssp-template.c
+++ b/epan/dissectors/asn1/credssp/packet-credssp-template.c
@@ -17,7 +17,6 @@
#include <epan/exported_pdu.h>
#include "packet-ber.h"
-#include "packet-dcerpc.h"
#include "packet-gssapi.h"
#include "packet-kerberos.h"
#include "packet-ntlmssp.h"
@@ -46,7 +45,7 @@ static gint credssp_TS_RGC_package;
static gint exported_pdu_tap = -1;
/* Initialize the protocol and registered fields */
-static int proto_credssp = -1;
+static int proto_credssp;
/* List of dissectors to call for negoToken data */
static heur_dissector_list_t credssp_heur_subdissector_list;
@@ -54,16 +53,16 @@ static heur_dissector_list_t credssp_heur_subdissector_list;
static dissector_handle_t gssapi_handle;
static dissector_handle_t gssapi_wrap_handle;
-static int hf_credssp_TSPasswordCreds = -1; /* TSPasswordCreds */
-static int hf_credssp_TSSmartCardCreds = -1; /* TSSmartCardCreds */
-static int hf_credssp_TSRemoteGuardCreds = -1;/* TSRemoteGuardCreds */
-static int hf_credssp_TSCredentials = -1; /* TSCredentials */
-static int hf_credssp_decr_PublicKeyAuth = -1;/* decr_PublicKeyAuth */
+static int hf_credssp_TSPasswordCreds; /* TSPasswordCreds */
+static int hf_credssp_TSSmartCardCreds; /* TSSmartCardCreds */
+static int hf_credssp_TSRemoteGuardCreds;/* TSRemoteGuardCreds */
+static int hf_credssp_TSCredentials; /* TSCredentials */
+static int hf_credssp_decr_PublicKeyAuth;/* decr_PublicKeyAuth */
#include "packet-credssp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_credssp = -1;
-static gint ett_credssp_RGC_CredBuffer = -1;
+static gint ett_credssp;
+static gint ett_credssp_RGC_CredBuffer;
#include "packet-credssp-ett.c"
@@ -97,7 +96,7 @@ dissect_credssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree,
asn1_ctx_t asn1_ctx;
int offset = 0;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 length;
gint8 ver;
@@ -118,7 +117,7 @@ dissect_credssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree,
ver = tvb_get_guint8(tvb, offset);
if((length == 1) && (ver > 1) && (ver < 99)) {
if (have_tap_listener(exported_pdu_tap)) {
- exp_pdu_data_t *exp_pdu_data = export_pdu_create_common_tags(pinfo, "credssp", EXP_PDU_TAG_PROTO_NAME);
+ exp_pdu_data_t *exp_pdu_data = export_pdu_create_common_tags(pinfo, "credssp", EXP_PDU_TAG_DISSECTOR_NAME);
exp_pdu_data->tvb_captured_length = tvb_captured_length(tvb);
exp_pdu_data->tvb_reported_length = tvb_reported_length(tvb);
@@ -183,7 +182,7 @@ void proto_register_credssp(void) {
proto_register_subtree_array(ett, array_length(ett));
/* heuristic dissectors for any premable e.g. CredSSP before RDP */
- credssp_heur_subdissector_list = register_heur_dissector_list("credssp", proto_credssp);
+ credssp_heur_subdissector_list = register_heur_dissector_list_with_description("credssp", "Unused", proto_credssp);
}
diff --git a/epan/dissectors/asn1/crmf/packet-crmf-template.c b/epan/dissectors/asn1/crmf/packet-crmf-template.c
index 682f8bd114..152ad46f2b 100644
--- a/epan/dissectors/asn1/crmf/packet-crmf-template.c
+++ b/epan/dissectors/asn1/crmf/packet-crmf-template.c
@@ -29,8 +29,8 @@ void proto_register_crmf(void);
void proto_reg_handoff_crmf(void);
/* Initialize the protocol and registered fields */
-static int proto_crmf = -1;
-static int hf_crmf_type_oid = -1;
+static int proto_crmf;
+static int hf_crmf_type_oid;
#include "packet-crmf-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/dap/CMakeLists.txt b/epan/dissectors/asn1/dap/CMakeLists.txt
index c52b401431..856a6221f7 100644
--- a/epan/dissectors/asn1/dap/CMakeLists.txt
+++ b/epan/dissectors/asn1/dap/CMakeLists.txt
@@ -35,7 +35,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -b -L )
+set( A2W_FLAGS -b )
set( EXTRA_CNF
"${CMAKE_CURRENT_BINARY_DIR}/../acse/acse-exp.cnf"
diff --git a/epan/dissectors/asn1/dap/packet-dap-template.c b/epan/dissectors/asn1/dap/packet-dap-template.c
index c5884becd6..faea88614c 100644
--- a/epan/dissectors/asn1/dap/packet-dap-template.c
+++ b/epan/dissectors/asn1/dap/packet-dap-template.c
@@ -16,6 +16,7 @@
#include <epan/expert.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-acse.h"
@@ -42,16 +43,16 @@ void proto_register_dap(void);
void proto_reg_handoff_dap(void);
/* Initialize the protocol and registered fields */
-static int proto_dap = -1;
+static int proto_dap;
#include "packet-dap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_dap = -1;
+static gint ett_dap;
#include "packet-dap-ett.c"
-static expert_field ei_dap_anonymous = EI_INIT;
+static expert_field ei_dap_anonymous;
#include "packet-dap-val.h"
diff --git a/epan/dissectors/asn1/disp/packet-disp-template.c b/epan/dissectors/asn1/disp/packet-disp-template.c
index a28aa4e8e3..6b8091a897 100644
--- a/epan/dissectors/asn1/disp/packet-disp-template.c
+++ b/epan/dissectors/asn1/disp/packet-disp-template.c
@@ -16,6 +16,7 @@
#include <epan/prefs.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-acse.h"
@@ -43,18 +44,18 @@ void proto_register_disp(void);
void proto_reg_handoff_disp(void);
/* Initialize the protocol and registered fields */
-static int proto_disp = -1;
+static int proto_disp;
#include "packet-disp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_disp = -1;
+static gint ett_disp;
#include "packet-disp-ett.c"
-static expert_field ei_disp_unsupported_opcode = EI_INIT;
-static expert_field ei_disp_unsupported_errcode = EI_INIT;
-static expert_field ei_disp_unsupported_pdu = EI_INIT;
-static expert_field ei_disp_zero_pdu = EI_INIT;
+static expert_field ei_disp_unsupported_opcode;
+static expert_field ei_disp_unsupported_errcode;
+static expert_field ei_disp_unsupported_pdu;
+static expert_field ei_disp_zero_pdu;
static dissector_handle_t disp_handle = NULL;
@@ -71,7 +72,7 @@ dissect_disp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* d
proto_item *item;
proto_tree *tree;
struct SESSION_DATA_STRUCTURE* session;
- int (*disp_dissector)(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) = NULL;
+ int (*disp_dissector)(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) = NULL;
const char *disp_op_name;
asn1_ctx_t asn1_ctx;
diff --git a/epan/dissectors/asn1/dop/packet-dop-template.c b/epan/dissectors/asn1/dop/packet-dop-template.c
index 3b7b1362db..8182586832 100644
--- a/epan/dissectors/asn1/dop/packet-dop-template.c
+++ b/epan/dissectors/asn1/dop/packet-dop-template.c
@@ -39,7 +39,7 @@ void proto_register_dop(void);
void proto_reg_handoff_dop(void);
/* Initialize the protocol and registered fields */
-static int proto_dop = -1;
+static int proto_dop;
static const char *binding_type = NULL; /* binding_type */
@@ -48,15 +48,15 @@ static int call_dop_oid_callback(const char *base_string, tvbuff_t *tvb, int off
#include "packet-dop-hf.c"
/* Initialize the subtree pointers */
-static gint ett_dop = -1;
-static gint ett_dop_unknown = -1;
+static gint ett_dop;
+static gint ett_dop_unknown;
#include "packet-dop-ett.c"
-static expert_field ei_dop_unknown_binding_parameter = EI_INIT;
-static expert_field ei_dop_unsupported_opcode = EI_INIT;
-static expert_field ei_dop_unsupported_errcode = EI_INIT;
-static expert_field ei_dop_unsupported_pdu = EI_INIT;
-static expert_field ei_dop_zero_pdu = EI_INIT;
+static expert_field ei_dop_unknown_binding_parameter;
+static expert_field ei_dop_unsupported_opcode;
+static expert_field ei_dop_unsupported_errcode;
+static expert_field ei_dop_unsupported_pdu;
+static expert_field ei_dop_zero_pdu;
static dissector_handle_t dop_handle = NULL;
@@ -110,7 +110,7 @@ dissect_dop(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* da
proto_item *item;
proto_tree *tree;
struct SESSION_DATA_STRUCTURE* session;
- int (*dop_dissector)(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) = NULL;
+ int (*dop_dissector)(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) = NULL;
const char *dop_op_name;
asn1_ctx_t asn1_ctx;
@@ -249,7 +249,7 @@ void proto_register_dop(void) {
dop_handle = register_dissector("dop", dissect_dop, proto_dop);
- dop_dissector_table = register_dissector_table("dop.oid", "DOP OID", proto_dop, FT_STRING, BASE_NONE);
+ dop_dissector_table = register_dissector_table("dop.oid", "DOP OID", proto_dop, FT_STRING, STRING_CASE_SENSITIVE);
/* Register fields and subtrees */
proto_register_field_array(proto_dop, hf, array_length(hf));
diff --git a/epan/dissectors/asn1/dsp/packet-dsp-template.c b/epan/dissectors/asn1/dsp/packet-dsp-template.c
index bbf00d67a3..e47133ecf0 100644
--- a/epan/dissectors/asn1/dsp/packet-dsp-template.c
+++ b/epan/dissectors/asn1/dsp/packet-dsp-template.c
@@ -37,18 +37,18 @@ void proto_register_dsp(void);
void proto_reg_handoff_dsp(void);
/* Initialize the protocol and registered fields */
-static int proto_dsp = -1;
+static int proto_dsp;
#include "packet-dsp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_dsp = -1;
+static gint ett_dsp;
#include "packet-dsp-ett.c"
-static expert_field ei_dsp_unsupported_opcode = EI_INIT;
-static expert_field ei_dsp_unsupported_errcode = EI_INIT;
-static expert_field ei_dsp_unsupported_pdu = EI_INIT;
-static expert_field ei_dsp_zero_pdu = EI_INIT;
+static expert_field ei_dsp_unsupported_opcode;
+static expert_field ei_dsp_unsupported_errcode;
+static expert_field ei_dsp_unsupported_pdu;
+static expert_field ei_dsp_zero_pdu;
#include "packet-dsp-fn.c"
@@ -65,7 +65,7 @@ dissect_dsp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* da
proto_item *item;
proto_tree *tree;
struct SESSION_DATA_STRUCTURE* session;
- int (*dsp_dissector)(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) = NULL;
+ int (*dsp_dissector)(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) = NULL;
const char *dsp_op_name;
asn1_ctx_t asn1_ctx;
diff --git a/epan/dissectors/asn1/e1ap/E1AP-CommonDataTypes.asn b/epan/dissectors/asn1/e1ap/E1AP-CommonDataTypes.asn
index 0d96a85c81..f2d2200b42 100644
--- a/epan/dissectors/asn1/e1ap/E1AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/e1ap/E1AP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.463 V16.7.0 (2021-10)
+-- 3GPP TS 37.483 V17.7.0 (2023-12)
-- **************************************************************
--
-- Common definitions
diff --git a/epan/dissectors/asn1/e1ap/E1AP-Constants.asn b/epan/dissectors/asn1/e1ap/E1AP-Constants.asn
index 6a7496581a..25033bee74 100644
--- a/epan/dissectors/asn1/e1ap/E1AP-Constants.asn
+++ b/epan/dissectors/asn1/e1ap/E1AP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.463 V16.7.0 (2021-10)
+-- 3GPP TS 37.483 V17.7.0 (2023-12)
-- **************************************************************
--
-- Constant definitions
@@ -54,6 +54,18 @@ id-iAB-UPTNLAddressUpdate ProcedureCode ::= 24
id-CellTrafficTrace ProcedureCode ::= 25
id-earlyForwardingSNTransfer ProcedureCode ::= 26
id-gNB-CU-CPMeasurementResultsInformation ProcedureCode ::= 27
+id-iABPSKNotification ProcedureCode ::= 28
+id-BCBearerContextSetup ProcedureCode ::= 29
+id-BCBearerContextModification ProcedureCode ::= 30
+id-BCBearerContextModificationRequired ProcedureCode ::= 31
+id-BCBearerContextRelease ProcedureCode ::= 32
+id-BCBearerContextReleaseRequest ProcedureCode ::= 33
+id-MCBearerContextSetup ProcedureCode ::= 34
+id-MCBearerContextModification ProcedureCode ::= 35
+id-MCBearerContextModificationRequired ProcedureCode ::= 36
+id-MCBearerContextRelease ProcedureCode ::= 37
+id-MCBearerContextReleaseRequest ProcedureCode ::= 38
+id-MCBearerNotification ProcedureCode ::= 39
-- **************************************************************
@@ -84,6 +96,13 @@ maxnoofQoSParaSets INTEGER ::= 8
maxnoofExtSliceItems INTEGER ::= 65535
maxnoofDataForwardingTunneltoE-UTRAN INTEGER ::= 256
maxnoofExtNRCGI INTEGER ::= 16384
+maxnoofPSKs INTEGER ::= 256
+maxnoofECGI INTEGER ::= 512
+maxnoofSMBRValues INTEGER ::= 8
+maxnoofMBSAreaSessionIDs INTEGER ::= 256
+maxnoofSharedNG-UTerminations INTEGER ::= 8
+maxnoofMRBs INTEGER ::= 32
+maxnoofMBSSessionIDs INTEGER ::= 512
-- **************************************************************
@@ -217,7 +236,7 @@ id-CHOInitiation ProtocolIE-ID ::= 121
id-EarlyForwardingCOUNTReq ProtocolIE-ID ::= 122
id-EarlyForwardingCOUNTInfo ProtocolIE-ID ::= 123
id-AlternativeQoSParaSetList ProtocolIE-ID ::= 124
- id-ExtendedSliceSupportList ProtocolIE-ID ::= 125
+id-ExtendedSliceSupportList ProtocolIE-ID ::= 125
id-MCG-OfferedGBRQoSFlowInfo ProtocolIE-ID ::= 126
id-Number-of-tunnels ProtocolIE-ID ::= 127
id-DRB-Measurement-Results-Information-List ProtocolIE-ID ::= 128
@@ -232,6 +251,61 @@ id-DataForwardingtoNG-RANQoSFlowInformationList ProtocolIE-ID ::= 136
id-MaxCIDEHCDL ProtocolIE-ID ::= 137
id-ignoreMappingRuleIndication ProtocolIE-ID ::= 138
id-DirectForwardingPathAvailability ProtocolIE-ID ::= 139
+id-EarlyDataForwardingIndicator ProtocolIE-ID ::= 140
+id-QoSFlowsDRBRemapping ProtocolIE-ID ::= 141
+id-DataForwardingSourceIPAddress ProtocolIE-ID ::= 142
+id-SecurityIndicationModify ProtocolIE-ID ::= 143
+id-IAB-Donor-CU-UPPSKInfo ProtocolIE-ID ::= 144
+id-ECGI-Support-List ProtocolIE-ID ::= 145
+id-MDTPollutedMeasurementIndicator ProtocolIE-ID ::= 146
+id-M4ReportAmount ProtocolIE-ID ::= 147
+id-M6ReportAmount ProtocolIE-ID ::= 148
+id-M7ReportAmount ProtocolIE-ID ::= 149
+id-UESliceMaximumBitRateList ProtocolIE-ID ::= 150
+id-PDUSession-PairID ProtocolIE-ID ::= 151
+id-SurvivalTime ProtocolIE-ID ::= 152
+id-UDC-Parameters ProtocolIE-ID ::= 153
+id-SCGActivationStatus ProtocolIE-ID ::= 154
+id-GNB-CU-CP-MBS-E1AP-ID ProtocolIE-ID ::= 155
+id-GNB-CU-UP-MBS-E1AP-ID ProtocolIE-ID ::= 156
+id-GlobalMBSSessionID ProtocolIE-ID ::= 157
+id-BCBearerContextToSetup ProtocolIE-ID ::= 158
+id-BCBearerContextToSetupResponse ProtocolIE-ID ::= 159
+id-BCBearerContextToModify ProtocolIE-ID ::= 160
+id-BCBearerContextToModifyResponse ProtocolIE-ID ::= 161
+id-BCBearerContextToModifyRequired ProtocolIE-ID ::= 162
+id-BCBearerContextToModifyConfirm ProtocolIE-ID ::= 163
+id-MCBearerContextToSetup ProtocolIE-ID ::= 164
+id-MCBearerContextToSetupResponse ProtocolIE-ID ::= 165
+id-MCBearerContextToModify ProtocolIE-ID ::= 166
+id-MCBearerContextToModifyResponse ProtocolIE-ID ::= 167
+id-MCBearerContextToModifyRequired ProtocolIE-ID ::= 168
+id-MCBearerContextToModifyConfirm ProtocolIE-ID ::= 169
+id-MBSMulticastF1UContextDescriptor ProtocolIE-ID ::= 170
+id-gNB-CU-UP-MBS-Support-Info ProtocolIE-ID ::= 171
+id-SecurityIndication ProtocolIE-ID ::= 172
+id-SecurityResult ProtocolIE-ID ::= 173
+id-SDTContinueROHC ProtocolIE-ID ::= 174
+id-SDTindicatorSetup ProtocolIE-ID ::= 175
+id-SDTindicatorMod ProtocolIE-ID ::= 176
+id-DiscardTimerExtended ProtocolIE-ID ::= 177
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID ::= 178
+id-MCForwardingResourceRequest ProtocolIE-ID ::= 179
+id-MCForwardingResourceIndication ProtocolIE-ID ::= 180
+id-MCForwardingResourceResponse ProtocolIE-ID ::= 181
+id-MCForwardingResourceRelease ProtocolIE-ID ::= 182
+id-MCForwardingResourceReleaseIndication ProtocolIE-ID ::= 183
+id-PDCP-COUNT-Reset ProtocolIE-ID ::= 184
+id-MBSSessionAssociatedInfoNonSupportToSupport ProtocolIE-ID ::= 185
+id-VersionID ProtocolIE-ID ::= 186
+id-InactivityInformationRequest ProtocolIE-ID ::= 187
+id-UEInactivityInformation ProtocolIE-ID ::= 188
+id-MBSAreaSessionID ProtocolIE-ID ::= 189
+id-Secondary-PDU-Session-Data-Forwarding-Information ProtocolIE-ID ::= 190
+id-MBSSessionResourceNotification ProtocolIE-ID ::= 191
+id-MCBearerContextInactivityTimer ProtocolIE-ID ::= 192
+id-MCBearerContextStatusChange ProtocolIE-ID ::= 193
+
END
diff --git a/epan/dissectors/asn1/e1ap/E1AP-Containers.asn b/epan/dissectors/asn1/e1ap/E1AP-Containers.asn
index 0d5b2d14da..6b3d0369c6 100644
--- a/epan/dissectors/asn1/e1ap/E1AP-Containers.asn
+++ b/epan/dissectors/asn1/e1ap/E1AP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.463 V16.7.0 (2021-10)
+-- 3GPP TS 37.483 V17.7.0 (2023-12)
-- **************************************************************
--
-- Container definitions
diff --git a/epan/dissectors/asn1/e1ap/E1AP-IEs.asn b/epan/dissectors/asn1/e1ap/E1AP-IEs.asn
index 5ae007bb38..994902775d 100644
--- a/epan/dissectors/asn1/e1ap/E1AP-IEs.asn
+++ b/epan/dissectors/asn1/e1ap/E1AP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.463 V16.7.0 (2021-10)
+-- 3GPP TS 37.483 V17.7.0 (2023-12)
-- **************************************************************
--
-- Information Element Definitions
@@ -53,6 +53,38 @@ IMPORTS
id-DataForwardingtoNG-RANQoSFlowInformationList,
id-MaxCIDEHCDL,
id-ignoreMappingRuleIndication,
+ id-EarlyDataForwardingIndicator,
+ id-QoSFlowsDRBRemapping,
+ id-SecurityIndicationModify,
+ id-DataForwardingSourceIPAddress,
+ id-M4ReportAmount,
+ id-M6ReportAmount,
+ id-M7ReportAmount,
+ id-PDUSession-PairID,
+ id-SurvivalTime,
+ id-UDC-Parameters,
+ id-SecurityIndication,
+ id-SecurityResult,
+ id-SDTindicatorSetup,
+ id-SDTindicatorMod,
+ id-DiscardTimerExtended,
+ id-MCForwardingResourceRequest,
+ id-MCForwardingResourceIndication,
+ id-MCForwardingResourceResponse,
+ id-MCForwardingResourceRelease,
+ id-MCForwardingResourceReleaseIndication,
+ id-PDCP-COUNT-Reset,
+ id-MBSSessionAssociatedInfoNonSupportToSupport,
+ id-VersionID,
+ id-MBSAreaSessionID,
+ id-Secondary-PDU-Session-Data-Forwarding-Information,
+ id-MBSSessionResourceNotification,
+ id-MCBearerContextInactivityTimer,
+ id-MCBearerContextStatusChange,
+ maxnoofMBSAreaSessionIDs,
+ maxnoofSharedNG-UTerminations,
+ maxnoofMRBs,
+ maxnoofMBSSessionIDs,
maxnoofQoSParaSets,
maxnoofErrors,
maxnoofSliceItems,
@@ -71,7 +103,9 @@ IMPORTS
maxnoofMDTPLMNs,
maxnoofExtSliceItems,
maxnoofDataForwardingTunneltoE-UTRAN,
- maxnoofExtNRCGI
+ maxnoofExtNRCGI,
+ maxnoofECGI,
+ maxnoofSMBRValues
FROM E1AP-Constants
@@ -143,14 +177,225 @@ AlternativeQoSParaSetItem-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
-- B
+-- BCBearerContextToSetup
+
+BCBearerContextToSetup ::= SEQUENCE {
+ snssai SNSSAI,
+ bcBearerContextNGU-TNLInfoat5GC BCBearerContextNGU-TNLInfoat5GC OPTIONAL,
+ bcMRBToSetupList BCMRBSetupConfiguration,
+ requestedAction RequestedAction4AvailNGUTermination OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCBearerContextToSetup-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCBearerContextToSetup-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BCBearerContextNGU-TNLInfoat5GC::= CHOICE {
+ locationindependent MBSNGUInformationAt5GC,
+ locationdependent LocationDependentMBSNGUInformationAt5GC,
+ choice-extension ProtocolIE-SingleContainer {{BCBearerContextNGU-TNLInfoat5GC-ExtIEs}}
+}
+
+BCBearerContextNGU-TNLInfoat5GC-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+BCMRBSetupConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF BCMRBSetupConfiguration-Item
+
+BCMRBSetupConfiguration-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ mbs-pdcp-config PDCP-Configuration,
+ qoS-Flow-QoS-Parameter-List QoS-Flow-QoS-Parameter-List,
+ qoSFlowLevelQoSParameters QoSFlowLevelQoSParameters OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCMRBSetupConfiguration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCMRBSetupConfiguration-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- BCBearerContextToSetupResponse
+
+BCBearerContextToSetupResponse ::= SEQUENCE {
+ bcBearerContextNGU-TNLInfoatNGRAN BCBearerContextNGU-TNLInfoatNGRAN OPTIONAL,
+ bcMRBSetupResponseList BCMRBSetupResponseList,
+ bcMRBFailedList BCMRBFailedList OPTIONAL,
+ availableBCMRBConfig BCMRBSetupConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCBearerContextToSetupResponse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCBearerContextToSetupResponse-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BCBearerContextNGU-TNLInfoatNGRAN::= CHOICE {
+ locationindependent MBSNGUInformationAtNGRAN,
+ locationdependent LocationDependentMBSNGUInformationAtNGRAN,
+ choice-extension ProtocolIE-SingleContainer {{BCBearerContextNGU-TNLInfoatNGRAN-ExtIEs}}
+}
+
+BCBearerContextNGU-TNLInfoatNGRAN-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+BCMRBSetupResponseList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF BCMRBSetupResponseList-Item
+BCMRBSetupResponseList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ qosflow-setup QoS-Flow-List,
+ qosflow-failed QoS-Flow-Failed-List OPTIONAL,
+ bcBearerContextF1U-TNLInfoatCU BCBearerContextF1U-TNLInfoatCU,
+ iE-Extensions ProtocolExtensionContainer { {BCMRBSetupResponseList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCMRBSetupResponseList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BCBearerContextF1U-TNLInfoatCU ::= CHOICE {
+ locationindependent MBSF1UInformationAtCU,
+ locationdependent LocationDependentMBSF1UInformationAtCU,
+ choice-extension ProtocolIE-SingleContainer {{BCBearerContextF1U-TNLInfoatCU-ExtIEs}}
+}
+
+BCBearerContextF1U-TNLInfoatCU-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+
+BCMRBFailedList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF BCMRBFailedList-Item
+BCMRBFailedList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { {BCMRBFailedList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCMRBFailedList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- BCBearerContextToModify
+
+BCBearerContextToModify ::= SEQUENCE {
+ bcBearerContextNGU-TNLInfoat5GC BCBearerContextNGU-TNLInfoat5GC OPTIONAL,
+ bcMRBToSetupList BCMRBSetupConfiguration OPTIONAL,
+ bcMRBToModifyList BCMRBModifyConfiguration OPTIONAL,
+ bcMRBToRemoveList BCMRBRemoveConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCBearerContextToModify-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCBearerContextToModify-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BCMRBModifyConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF BCMRBModifyConfiguration-Item
+
+BCMRBModifyConfiguration-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ bcBearerContextF1U-TNLInfoatDU BCBearerContextF1U-TNLInfoatDU OPTIONAL,
+ mbs-pdcp-config PDCP-Configuration OPTIONAL,
+ qoS-Flow-QoS-Parameter-List QoS-Flow-QoS-Parameter-List OPTIONAL,
+ qoSFlowLevelQoSParameters QoSFlowLevelQoSParameters OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCMRBModifyConfiguration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCMRBModifyConfiguration-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BCBearerContextF1U-TNLInfoatDU ::= CHOICE {
+ locationindependent MBSF1UInformationAtDU,
+ locationdependent LocationDependentMBSF1UInformationAtDU,
+ choice-extension ProtocolIE-SingleContainer {{BCBearerContextF1U-TNLInfoatDU-ExtIEs}}
+}
+
+BCBearerContextF1U-TNLInfoatDU-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+BCMRBRemoveConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MRB-ID
+
+
+-- BCBearerContextToModifyResponse
+
+BCBearerContextToModifyResponse ::= SEQUENCE {
+ bcBearerContextNGU-TNLInfoatNGRAN BCBearerContextNGU-TNLInfoatNGRAN OPTIONAL,
+ bcMRBSetupModifyResponseList BCMRBSetupModifyResponseList,
+ bcMRBFailedList BCMRBFailedList OPTIONAL,
+ availableBCMRBConfig BCMRBSetupConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCBearerContextToModifyResponse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCBearerContextToModifyResponse-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BCMRBSetupModifyResponseList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF BCMRBSetupModifyResponseList-Item
+
+BCMRBSetupModifyResponseList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ qosflow-setup QoS-Flow-List OPTIONAL,
+ qosflow-failed QoS-Flow-Failed-List OPTIONAL,
+ bcBearerContextF1U-TNLInfoatCU BCBearerContextF1U-TNLInfoatCU OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCMRBSetupModifyResponseList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCMRBSetupModifyResponseList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- BCBearerContextToModifyRequired
+
+BCBearerContextToModifyRequired ::= SEQUENCE {
+ bcMRBToRemoveList BCMRBRemoveConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {BCBearerContextToModifyRequired-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCBearerContextToModifyRequired-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- BCBearerContextToModifyConfirm
+
+BCBearerContextToModifyConfirm ::= SEQUENCE {
+ iE-Extensions ProtocolExtensionContainer { {BCBearerContextToModifyConfirm-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BCBearerContextToModifyConfirm-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
BearerContextStatusChange ::= ENUMERATED {
suspend,
resume,
- ...
+ ... ,
+ resumeforSDT
}
BitRate ::= INTEGER (0..4000000000000,...)
+BufferSize ::= ENUMERATED {
+ kbyte2,
+ kbyte4,
+ kbyte8,
+ ...
+}
+
-- C
Cause ::= CHOICE {
@@ -220,7 +465,13 @@ CauseRadioNetwork ::= ENUMERATED {
report-characteristic-empty,
existing-measurement-ID,
measurement-temporarily-not-available,
- measurement-not-supported-for-the-object
+ measurement-not-supported-for-the-object,
+ scg-activation-deactivation-failure,
+ scg-deactivation-failure-due-to-data-transmission,
+ unknown-or-already-allocated-gNB-CU-CP-MBS-E1AP-ID,
+ unknown-or-already-allocated-gNB-CU-UP-MBS-E1AP-ID,
+ unknown-or-inconsistent-pair-of-MBS-E1AP-ID,
+ unknown-or-inconsistent-MRB-ID
}
CauseTransport ::= ENUMERATED {
@@ -284,7 +535,6 @@ ConfidentialityProtectionResult ::= ENUMERATED {
...
}
-
CP-TNL-Information ::= CHOICE {
endpoint-IP-Address TransportLayerAddress,
choice-extension ProtocolIE-SingleContainer {{CP-TNL-Information-ExtIEs}}
@@ -424,13 +674,22 @@ DefaultDRB ::= ENUMERATED {
...
}
+Dictionary ::= ENUMERATED {
+ sip-SDP,
+ operator,
+ ...
+}
+
DirectForwardingPathAvailability ::= ENUMERATED {
inter-system-direct-path-available,
- ...
+ ...,
+ intra-system-direct-path-available
}
DiscardTimer ::= ENUMERATED {ms10, ms20, ms30, ms40, ms50, ms60, ms75, ms100, ms150, ms200, ms250, ms300, ms500, ms750, ms1500, infinity}
+DiscardTimerExtended ::= ENUMERATED {ms0dot5, ms1, ms2, ms4, ms6, ms8,..., ms2000}
+
DLDiscarding ::= SEQUENCE {
dLDiscardingCountVal PDCP-Count,
iE-Extensions ProtocolExtensionContainer { { DLDiscarding-ExtIEs } } OPTIONAL
@@ -683,6 +942,8 @@ DRB-Setup-Item-EUTRAN ::= SEQUENCE {
}
DRB-Setup-Item-EUTRAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-DataForwardingSourceIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ {ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional},
...
}
@@ -698,6 +959,8 @@ DRB-Setup-Mod-Item-EUTRAN ::= SEQUENCE {
}
DRB-Setup-Mod-Item-EUTRAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional}|
+ {ID id-DataForwardingSourceIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -831,9 +1094,13 @@ DRB-To-Modify-Item-NG-RAN ::= SEQUENCE {
DRB-To-Modify-Item-NG-RAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
{ID id-OldQoSFlowMap-ULendmarkerexpected CRITICALITY reject EXTENSION QoS-Flow-List PRESENCE optional}|
- {ID id-DRB-QoS CRITICALITY ignore EXTENSION QoSFlowLevelQoSParameters PRESENCE optional}|
- {ID id-EarlyForwardingCOUNTReq CRITICALITY reject EXTENSION EarlyForwardingCOUNTReq PRESENCE optional}|
- {ID id-EarlyForwardingCOUNTInfo CRITICALITY reject EXTENSION EarlyForwardingCOUNTInfo PRESENCE optional},
+ {ID id-DRB-QoS CRITICALITY ignore EXTENSION QoSFlowLevelQoSParameters PRESENCE optional}|
+ {ID id-EarlyForwardingCOUNTReq CRITICALITY reject EXTENSION EarlyForwardingCOUNTReq PRESENCE optional}|
+ {ID id-EarlyForwardingCOUNTInfo CRITICALITY reject EXTENSION EarlyForwardingCOUNTInfo PRESENCE optional}|
+ {ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional}|
+ {ID id-EarlyDataForwardingIndicator CRITICALITY ignore EXTENSION EarlyDataForwardingIndicator PRESENCE optional}|
+ {ID id-SDTindicatorMod CRITICALITY reject EXTENSION SDTindicatorMod PRESENCE optional}|
+ {ID id-PDCP-COUNT-Reset CRITICALITY reject EXTENSION PDCP-COUNT-Reset PRESENCE optional },
...
}
@@ -904,6 +1171,8 @@ DRB-To-Setup-Item-EUTRAN ::= SEQUENCE {
}
DRB-To-Setup-Item-EUTRAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-DataForwardingSourceIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ {ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
...
}
@@ -923,6 +1192,8 @@ DRB-To-Setup-Mod-Item-EUTRAN ::= SEQUENCE {
}
DRB-To-Setup-Mod-Item-EUTRAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional}|
+ {ID id-DataForwardingSourceIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -942,9 +1213,11 @@ DRB-To-Setup-Item-NG-RAN ::= SEQUENCE {
}
DRB-To-Setup-Item-NG-RAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
- {ID id-DRB-QoS CRITICALITY ignore EXTENSION QoSFlowLevelQoSParameters PRESENCE optional}|
- {ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional}|
- {ID id-ignoreMappingRuleIndication CRITICALITY reject EXTENSION IgnoreMappingRuleIndication PRESENCE optional},
+ {ID id-DRB-QoS CRITICALITY ignore EXTENSION QoSFlowLevelQoSParameters PRESENCE optional}|
+ {ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional}|
+ {ID id-ignoreMappingRuleIndication CRITICALITY reject EXTENSION IgnoreMappingRuleIndication PRESENCE optional}|
+ {ID id-QoSFlowsDRBRemapping CRITICALITY reject EXTENSION QoS-Flows-DRB-Remapping PRESENCE optional}|
+ {ID id-SDTindicatorSetup CRITICALITY reject EXTENSION SDTindicatorSetup PRESENCE optional},
...
}
@@ -966,7 +1239,8 @@ DRB-To-Setup-Mod-Item-NG-RAN ::= SEQUENCE {
DRB-To-Setup-Mod-Item-NG-RAN-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
{ID id-DRB-QoS CRITICALITY ignore EXTENSION QoSFlowLevelQoSParameters PRESENCE optional}|
{ID id-ignoreMappingRuleIndication CRITICALITY reject EXTENSION IgnoreMappingRuleIndication PRESENCE optional}|
- {ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional},
+ {ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional}|
+ {ID id-SDTindicatorSetup CRITICALITY reject EXTENSION SDTindicatorSetup PRESENCE optional},
...
}
@@ -1017,6 +1291,8 @@ DataDiscardRequired ::= ENUMERATED {
-- E
+EarlyDataForwardingIndicator ::= ENUMERATED {stop, ...}
+
EarlyForwardingCOUNTInfo ::= CHOICE {
firstDLCount FirstDLCount,
dLDiscardingCount DLDiscarding,
@@ -1039,7 +1315,7 @@ EHC-Common-Parameters-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
}
EHC-Downlink-Parameters ::= SEQUENCE {
- drb-ContinueEHC-DL ENUMERATED { true, ...},
+ drb-ContinueEHC-DL ENUMERATED {true, ..., false},
iE-Extensions ProtocolExtensionContainer { { EHC-Downlink-Parameters-ExtIEs } } OPTIONAL
}
@@ -1049,7 +1325,7 @@ EHC-Downlink-Parameters-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
}
EHC-Uplink-Parameters ::= SEQUENCE {
- drb-ContinueEHC-UL ENUMERATED { true, ...},
+ drb-ContinueEHC-UL ENUMERATED {true, ... , false},
iE-Extensions ProtocolExtensionContainer { { EHC-Uplink-Parameters-ExtIEs } } OPTIONAL
}
@@ -1088,13 +1364,36 @@ EUTRANAllocationAndRetentionPriority ::= SEQUENCE {
...
}
-ExtendedPacketDelayBudget ::= INTEGER (1..65535, ...)
+ExtendedPacketDelayBudget ::= INTEGER (1..65535, ..., 65536..109999)
EUTRANAllocationAndRetentionPriority-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
...
}
+E-UTRAN-Cell-Identity ::= BIT STRING (SIZE(28))
+
+ECGI ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ eUTRAN-Cell-Identity E-UTRAN-Cell-Identity,
+ iE-Extensions ProtocolExtensionContainer { { ECGI-ExtIEs } } OPTIONAL
+}
+
+ECGI-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ECGI-Support-List ::= SEQUENCE (SIZE(1.. maxnoofECGI)) OF ECGI-Support-Item
+
+ECGI-Support-Item ::= SEQUENCE {
+ eCGI ECGI,
+ iE-Extensions ProtocolExtensionContainer { { ECGI-Support-Item-ExtIEs } } OPTIONAL
+}
+
+ECGI-Support-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
EUTRAN-QoS-Support-List ::= SEQUENCE (SIZE(1.. maxnoofEUTRANQOSParameters)) OF EUTRAN-QoS-Support-Item
EUTRAN-QoS-Support-Item ::= SEQUENCE {
@@ -1133,6 +1432,17 @@ FirstDLCount-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
-- G
+GlobalMBSSessionID ::= SEQUENCE {
+ tmgi OCTET STRING (SIZE(6)),
+ nid NID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { GlobalMBSSessionID-ExtIEs } } OPTIONAL,
+ ...
+}
+
+GlobalMBSSessionID-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
GNB-CU-CP-Name ::= PrintableString(SIZE(1..150,...))
Extended-GNB-CU-CP-Name ::= SEQUENCE {
@@ -1146,11 +1456,12 @@ Extended-GNB-CU-CP-Name-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
...
}
+GNB-CU-CP-MBS-E1AP-ID ::= INTEGER (0..16777215)
+
GNB-CU-CP-NameVisibleString ::= VisibleString(SIZE(1..150,...))
GNB-CU-CP-NameUTF8String ::= UTF8String(SIZE(1..150,...))
-
GNB-CU-CP-UE-E1AP-ID ::= INTEGER (0..4294967295)
GNB-CU-UP-Capacity ::= INTEGER (0..255)
@@ -1170,6 +1481,17 @@ GNB-CU-UP-CellGroupRelatedConfiguration-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::=
GNB-CU-UP-ID ::= INTEGER (0..68719476735)
+GNB-CU-UP-MBS-Support-Info ::= SEQUENCE {
+ mbs-Support-Info-ToAdd-List MBS-Support-Info-ToAdd-List OPTIONAL,
+ mbs-Support-Info-ToRemove-List MBS-Support-Info-ToRemove-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { GNB-CU-UP-MBS-Support-Info-ExtIEs } } OPTIONAL,
+ ...
+}
+
+GNB-CU-UP-MBS-Support-Info-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
GNB-CU-UP-Name ::= PrintableString(SIZE(1..150,...))
Extended-GNB-CU-UP-Name ::= SEQUENCE {
@@ -1183,6 +1505,8 @@ Extended-GNB-CU-UP-Name-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
...
}
+GNB-CU-UP-MBS-E1AP-ID ::= INTEGER (0..65535)
+
GNB-CU-UP-NameVisibleString ::= VisibleString(SIZE(1..150,...))
GNB-CU-UP-NameUTF8String ::= UTF8String(SIZE(1..150,...))
@@ -1315,7 +1639,7 @@ HFN ::= INTEGER (0..4294967295)
HW-CapacityIndicator ::= SEQUENCE {
offeredThroughput INTEGER (1..16777216, ...),
availableThroughput INTEGER (0..100, ...),
- iE-Extensions ProtocolExtensionContainer { { HW-CapacityIndicator-ExtIEs } },
+ iE-Extensions ProtocolExtensionContainer { { HW-CapacityIndicator-ExtIEs } } OPTIONAL,
...
}
@@ -1369,6 +1693,21 @@ ImmediateMDT-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
...
}
+IAB-Donor-CU-UPPSKInfo-Item ::= SEQUENCE {
+ iAB-donor-CU-UPPSK IAB-donor-CU-UPPSK,
+ iAB-donor-CU-UPIPAddress TransportLayerAddress,
+ iAB-DUIPAddress TransportLayerAddress,
+ iE-Extensions ProtocolExtensionContainer { { IAB-donor-CU-UPPSKInfoItemExtIEs } } OPTIONAL,
+ ...
+}
+IAB-donor-CU-UPPSKInfoItemExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+IAB-donor-CU-UPPSK ::= OCTET STRING
+
+InactivityInformationRequest ::= ENUMERATED {true, ...}
+
+
-- J
-- K
@@ -1382,6 +1721,59 @@ Links-to-log ::= ENUMERATED {
...
}
+
+LocationDependentMBSNGUInformationAt5GC ::= SEQUENCE (SIZE(1..maxnoofMBSAreaSessionIDs)) OF LocationDependentMBSNGUInformationAt5GC-Item
+
+LocationDependentMBSNGUInformationAt5GC-Item ::= SEQUENCE {
+ mbsAreaSession-ID MBSAreaSessionID,
+ mbsNGUInformationAt5GC MBSNGUInformationAt5GC,
+ iE-Extensions ProtocolExtensionContainer { { LocationDependentMBSNGUInformationAt5GC-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+LocationDependentMBSNGUInformationAt5GC-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+LocationDependentMBSF1UInformationAtCU ::= SEQUENCE (SIZE(1..maxnoofMBSAreaSessionIDs)) OF LocationDependentMBSF1UInformationAtCU-Item
+
+LocationDependentMBSF1UInformationAtCU-Item ::= SEQUENCE {
+ mbsAreaSession-ID MBSAreaSessionID,
+ mbs-f1u-info-at-CU UP-TNL-Information,
+ iE-Extensions ProtocolExtensionContainer { { LocationDependentMBSF1UInformationAtCU-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+LocationDependentMBSF1UInformationAtCU-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+LocationDependentMBSF1UInformationAtDU ::= SEQUENCE (SIZE(1..maxnoofMBSAreaSessionIDs)) OF LocationDependentMBSF1UInformationAtDU-Item
+
+LocationDependentMBSF1UInformationAtDU-Item ::= SEQUENCE {
+ mbsAreaSession-ID MBSAreaSessionID,
+ mbs-f1u-info-at-DU UP-TNL-Information,
+ iE-Extensions ProtocolExtensionContainer { { LocationDependentMBSF1UInformationAtDU-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+LocationDependentMBSF1UInformationAtDU-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+LocationDependentMBSNGUInformationAtNGRAN ::= SEQUENCE (SIZE(1..maxnoofMBSAreaSessionIDs)) OF LocationDependentMBSNGUInformationAtNGRAN-Item
+
+LocationDependentMBSNGUInformationAtNGRAN-Item ::= SEQUENCE {
+ mbsAreaSession-ID MBSAreaSessionID,
+ mbsNGUInformationAtNGRAN MBSNGUInformationAtNGRAN,
+ iE-Extensions ProtocolExtensionContainer { { LocationDependentMBSNGUInformationAtNGRAN-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+LocationDependentMBSNGUInformationAtNGRAN-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
-- M
MaxDataBurstVolume ::= INTEGER (0..4095, ..., 4096.. 2000000)
@@ -1406,6 +1798,582 @@ MaxPacketLossRate ::= INTEGER (0..1000, ...)
MaxCIDEHCDL ::= INTEGER (1..32767, ...)
+MBSAreaSessionID ::= INTEGER (0..65535, ...)
+
+MBSF1UInformationAtCU ::= SEQUENCE {
+ mbs-f1u-info-at-CU UP-TNL-Information,
+ iE-Extensions ProtocolExtensionContainer { { MBSF1UInformationAtCU-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSF1UInformationAtCU-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSF1UInformationAtDU ::= SEQUENCE {
+ mbs-f1u-info-at-DU UP-TNL-Information,
+ iE-Extensions ProtocolExtensionContainer { { MBSF1UInformationAtDU-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSF1UInformationAtDU-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSNGUInformationAt5GC ::= CHOICE {
+ multicast MBSNGUInformationAt5GC-Multicast,
+ choice-extension ProtocolIE-SingleContainer {{MBSNGUInformationAt5GC-ExtIEs}}
+}
+
+MBSNGUInformationAt5GC-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBSNGUInformationAt5GC-Multicast ::= SEQUENCE {
+ ipmcAddress TransportLayerAddress,
+ ipsourceAddress TransportLayerAddress,
+ gtpDLTEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { {MBSNGUInformationAt5GC-Multicast-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSNGUInformationAt5GC-Multicast-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSNGUInformationAtNGRAN ::= CHOICE {
+ unicast UP-TNL-Information,
+ choice-extension ProtocolIE-SingleContainer {{MBSNGUInformationAtNGRAN-ExtIEs}}
+}
+
+MBSNGUInformationAtNGRAN-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+
+MBSSessionAssociatedInfoNonSupportToSupport ::= SEQUENCE {
+ ue-Reference-ID GNB-CU-CP-UE-E1AP-ID,
+ pDU-Session-ID PDU-Session-ID,
+ associatedQoSFlowInformationList MBSSessionAssociatedInformationList,
+ iE-Extensions ProtocolExtensionContainer { {MBSSessionAssociatedInfoNonSupportToSupport-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionAssociatedInfoNonSupportToSupport-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionAssociatedInformation ::= SEQUENCE {
+ mbsSessionAssociatedInformationList MBSSessionAssociatedInformationList,
+ mbsSessionForwardingAddress UP-TNL-Information,
+ iE-Extensions ProtocolExtensionContainer { {MBSSessionAssociatedInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionAssociatedInformation-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionAssociatedInformationList ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF MBSSessionAssociatedInformation-Item
+
+MBSSessionAssociatedInformation-Item ::= SEQUENCE {
+ mbs-QoS-Flow-Identifier QoS-Flow-Identifier,
+ associated-unicast-QoS-Flow-Identifier QoS-Flow-Identifier,
+ iE-Extensions ProtocolExtensionContainer { { MBSSessionAssociatedInformation-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSSessionAssociatedInformation-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-Support-Info-ToAdd-List ::= SEQUENCE (SIZE(1..maxnoofMBSSessionIDs)) OF MBS-Support-Info-ToAdd-Item
+
+MBS-Support-Info-ToAdd-Item ::= SEQUENCE {
+ globalMBSSessionID GlobalMBSSessionID,
+ iE-Extensions ProtocolExtensionContainer { { MBS-Support-Info-ToAdd-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-Support-Info-ToAdd-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-Support-Info-ToRemove-List ::= SEQUENCE (SIZE(1..maxnoofMBSSessionIDs)) OF MBS-Support-Info-ToRemove-Item
+
+MBSSessionResourceNotification ::= CHOICE {
+ mbs-DL-Data-Arrival MBS-DL-Data-Arrival,
+ inactivity MCBearerContext-Inactivity,
+ choice-extension ProtocolIE-SingleContainer {{ MBSSessionResourceNotification-ExtIEs}}
+}
+
+MBSSessionResourceNotification-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBS-DL-Data-Arrival ::= SEQUENCE {
+ dlDataArrival ENUMERATED {true, ...},
+ ppi PPI OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-DL-Data-Arrival-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DL-Data-Arrival-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MCBearerContext-Inactivity ::= SEQUENCE {
+ mcBearerContext-Inactivity-Indication ENUMERATED {true, ...},
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContext-Inactivity-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContext-Inactivity-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-Support-Info-ToRemove-Item ::= SEQUENCE {
+ globalMBSSessionID GlobalMBSSessionID,
+ iE-Extensions ProtocolExtensionContainer { { MBS-Support-Info-ToRemove-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-Support-Info-ToRemove-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- MCBearerContextToSetup
+
+MCBearerContextToSetup ::= SEQUENCE {
+ snssai SNSSAI,
+ mcMRBToSetupList MCMRBSetupConfiguration OPTIONAL,
+ requestedAction RequestedAction4AvailNGUTermination OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextToSetup-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextToSetup-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-MBSSessionAssociatedInfoNonSupportToSupport CRITICALITY ignore EXTENSION MBSSessionAssociatedInfoNonSupportToSupport PRESENCE optional}|
+ {ID id-MBSAreaSessionID CRITICALITY ignore EXTENSION MBSAreaSessionID PRESENCE optional}|
+ {ID id-MCBearerContextInactivityTimer CRITICALITY ignore EXTENSION Inactivity-Timer PRESENCE optional}|
+ {ID id-MCBearerContextStatusChange CRITICALITY ignore EXTENSION MCBearerContextStatusChange PRESENCE optional},
+ ...
+}
+
+MCMRBSetupConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBSetupConfiguration-Item
+
+MCMRBSetupConfiguration-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ mbs-pdcp-config PDCP-Configuration,
+ qoS-Flow-QoS-Parameter-List QoS-Flow-QoS-Parameter-List,
+ qoSFlowLevelQoSParameters QoSFlowLevelQoSParameters OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCMRBSetupConfiguration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBSetupConfiguration-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MCBearerContextStatusChange ::= ENUMERATED {suspend, resume, ...}
+
+
+-- MCBearerContextToSetupResponse
+
+MCBearerContextToSetupResponse ::= SEQUENCE {
+ mcBearerContextNGU-TNLInfoatNGRAN MCBearerContextNGU-TNLInfoatNGRAN OPTIONAL,
+ mcMRBSetupResponseList MCMRBSetupResponseList OPTIONAL,
+ mcMRBFailedList MCMRBFailedList OPTIONAL,
+ availableMCMRBConfig MCMRBSetupConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextToSetupResponse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextToSetupResponse-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MCBearerContextNGU-TNLInfoatNGRAN::= CHOICE {
+ locationindependent MBSNGUInformationAtNGRAN,
+ locationdependent LocationDependentMBSNGUInformationAtNGRAN,
+ choice-extension ProtocolIE-SingleContainer {{MCBearerContextNGU-TNLInfoatNGRAN-ExtIEs}}
+}
+
+MCBearerContextNGU-TNLInfoatNGRAN-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+MCMRBSetupResponseList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBSetupResponseList-Item
+
+MCMRBSetupResponseList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ qosflow-setup QoS-Flow-List,
+ qosflow-failed QoS-Flow-Failed-List OPTIONAL,
+ mBS-PDCP-COUNT MBS-PDCP-COUNT OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCMRBSetupResponseList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBSetupResponseList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-PDCP-COUNT ::= BIT STRING (SIZE (32))
+
+MCMRBFailedList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBFailedList-Item
+
+MCMRBFailedList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { {MCMRBFailedList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBFailedList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- MCBearerContextToModify
+
+MCBearerContextToModify ::= SEQUENCE {
+ mcBearerContextNGUTNLInfoat5GC MCBearerContextNGUTNLInfoat5GC OPTIONAL,
+ mcBearerContextNGUTnlInfoatNGRANRequest MCBearerContextNGUTnlInfoatNGRANRequest OPTIONAL,
+ mbsMulticastF1UContextDescriptor MBSMulticastF1UContextDescriptor OPTIONAL,
+-- This IE shall be present if either the MC MRB To Setup or Modify List IE or the MC MRB To Remove List IE or both IEs are included.
+ requestedAction RequestedAction4AvailNGUTermination OPTIONAL,
+ mcMRBToSetupModifyList MCMRBSetupModifyConfiguration OPTIONAL,
+ mcMRBToRemoveList MCMRBRemoveConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextToModify-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextToModify-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-MCForwardingResourceRequest CRITICALITY ignore EXTENSION MCForwardingResourceRequest PRESENCE optional}|
+ {ID id-MCForwardingResourceIndication CRITICALITY ignore EXTENSION MCForwardingResourceIndication PRESENCE optional}|
+ {ID id-MCForwardingResourceRelease CRITICALITY ignore EXTENSION MCForwardingResourceRelease PRESENCE optional}|
+ {ID id-MBSSessionAssociatedInfoNonSupportToSupport CRITICALITY ignore EXTENSION MBSSessionAssociatedInfoNonSupportToSupport PRESENCE optional}|
+ {ID id-MCBearerContextInactivityTimer CRITICALITY ignore EXTENSION Inactivity-Timer PRESENCE optional}|
+ {ID id-MCBearerContextStatusChange CRITICALITY ignore EXTENSION MCBearerContextStatusChange PRESENCE optional},
+ ...
+}
+
+MCBearerContextNGUTNLInfoat5GC ::= SEQUENCE {
+ mbsNGUInformationAt5GC MBSNGUInformationAt5GC,
+ mbsAreaSession-ID MBSAreaSessionID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextNGUTNLInfoat5GC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextNGUTNLInfoat5GC-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MCBearerContextNGUTnlInfoatNGRANRequest ::= SEQUENCE {
+ ngRANNGUTNLRequested ENUMERATED {requested, ...},
+ mbsAreaSession-ID MBSAreaSessionID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextNGUTnlInfoatNGRANRequest-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextNGUTnlInfoatNGRANRequest-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MCMRBSetupModifyConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBSetupModifyConfiguration-Item
+
+MCMRBSetupModifyConfiguration-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ f1uTNLatDU MCBearerContextF1UTNLInfoatDU OPTIONAL,
+ mbs-pdcp-config PDCP-Configuration OPTIONAL,
+ qoS-Flow-QoS-Parameter-List QoS-Flow-QoS-Parameter-List OPTIONAL,
+ mrbQoS QoSFlowLevelQoSParameters OPTIONAL,
+ mbs-PDCP-COUNT-Req MBS-PDCP-COUNT-Req OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCMRBSetupModifyConfiguration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBSetupModifyConfiguration-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MCBearerContextF1UTNLInfoatDU ::= SEQUENCE {
+ mbsF1UInfoatDU UP-TNL-Information,
+ mbsMulticastF1UContextDescriptor MBSMulticastF1UContextDescriptor,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextF1UTNLInfoatDU-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextF1UTNLInfoatDU-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastF1UContextReferenceE1 ::= OCTET STRING (SIZE(4))
+
+MBSMulticastF1UContextDescriptor ::= SEQUENCE {
+ multicastF1UContextReferenceE1 MulticastF1UContextReferenceE1,
+ mc-F1UCtxtusage ENUMERATED {ptm, ptp, ptp-retransmission, ptp-forwarding, ...},
+ mbsAreaSession MBSAreaSessionID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBSMulticastF1UContextDescriptor-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSMulticastF1UContextDescriptor-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+MCMRBRemoveConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MRB-ID
+
+MBS-PDCP-COUNT-Req ::= ENUMERATED {true, ... }
+
+
+-- MCBearerContextToModifyResponse
+
+MCBearerContextToModifyResponse ::= SEQUENCE {
+ mcBearerContextNGU-TNLInfoatNGRANModifyResponse MCBearerContextNGU-TNLInfoatNGRANModifyResponse OPTIONAL,
+ mbsMulticastF1UContextDescriptor MBSMulticastF1UContextDescriptor OPTIONAL,
+-- This IE shall be present if either the MC MRB Setup or Modify Response List IE or the MC MRB Failed List IE or both IEs are included.
+ mcMRBModifySetupResponseList MCMRBSetupModifyResponseList OPTIONAL,
+ mcMRBFailedList MCMRBFailedList OPTIONAL,
+ availableMCMRBConfig MCMRBSetupConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextToModifyResponse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextToModifyResponse-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-MCForwardingResourceResponse CRITICALITY ignore EXTENSION MCForwardingResourceResponse PRESENCE optional},
+ ...
+}
+
+MCBearerContextNGU-TNLInfoatNGRANModifyResponse ::= SEQUENCE {
+ mbs-NGU-InfoatNGRAN MBSNGUInformationAtNGRAN,
+ mbsAreaSession MBSAreaSessionID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextNGU-TNLInfoatNGRANModifyResponse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextNGU-TNLInfoatNGRANModifyResponse-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MCMRBSetupModifyResponseList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBSetupModifyResponseList-Item
+
+MCMRBSetupModifyResponseList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ qosflow-setup QoS-Flow-List OPTIONAL,
+ qosflow-failed QoS-Flow-Failed-List OPTIONAL,
+ mcBearerContextF1UTNLInfoatCU UP-TNL-Information OPTIONAL,
+ mBS-PDCP-COUNT MBS-PDCP-COUNT OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCMRBSetupModifyResponseList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBSetupModifyResponseList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- MCBearerContextToModifyRequired
+
+MCBearerContextToModifyRequired ::= SEQUENCE {
+ mbsMulticastF1UContextDescriptor MBSMulticastF1UContextDescriptor OPTIONAL,
+-- This IE shall be present if either the MC MRB To Remove List Required IE is included.
+ mcMRBToRemoveRequiredList MCMRBRemoveConfiguration OPTIONAL,
+ mcMRBToModifyRequiredList MCMRBModifyRequiredConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextToModifyRequired-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCBearerContextToModifyRequired-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-MCForwardingResourceReleaseIndication CRITICALITY ignore EXTENSION MCForwardingResourceReleaseIndication PRESENCE optional},
+ ...
+}
+
+MCMRBModifyRequiredConfiguration ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBModifyRequiredConfiguration-Item
+
+MCMRBModifyRequiredConfiguration-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ mBS-PDCP-COUNT MBS-PDCP-COUNT OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MCMRBModifyRequiredConfiguration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBModifyRequiredConfiguration-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- MCBearerContextToModifyConfirm
+
+MCBearerContextToModifyConfirm ::= SEQUENCE {
+ mbsMulticastF1UContextDescriptor MBSMulticastF1UContextDescriptor OPTIONAL,
+ mcMRBModifyConfirmList MCMRBModifyConfirmList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCBearerContextToModifyConfirm-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBModifyConfirmList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MCMRBModifyConfirmList-Item
+
+MCMRBModifyConfirmList-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { MCMRBModifyConfirmList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCMRBModifyConfirmList-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MCBearerContextToModifyConfirm-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- MCForwardingResourceRequest
+
+MCForwardingResourceRequest ::= SEQUENCE {
+ mcForwardingResourceID MCForwardingResourceID,
+ mbsAreaSession-ID MBSAreaSessionID OPTIONAL,
+ mrbForwardingResourceRequestList MRBForwardingResourceRequestList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCForwardingResourceRequest-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCForwardingResourceRequest-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MRBForwardingResourceRequestList ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF MRBForwardingResourceRequest-Item
+
+MRBForwardingResourceRequest-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ mrbProgressRequestType MRB-ProgressInformationType OPTIONAL,
+ mrbForwardingAddressRequest ENUMERATED {request, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MRBForwardingResourceRequest-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MRBForwardingResourceRequest-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- MCForwardingResourceIndication
+
+MCForwardingResourceIndication ::= SEQUENCE {
+ mcForwardingResourceID MCForwardingResourceID,
+ mrbForwardingResourceIndicationList MRBForwardingResourceIndicationList OPTIONAL,
+ mbsSessionAssociatedInformation MBSSessionAssociatedInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCForwardingResourceIndication-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCForwardingResourceIndication-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MRBForwardingResourceIndicationList ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF MRBForwardingResourceIndication-Item
+
+MRBForwardingResourceIndication-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ mrb-ProgressInformation MRB-ProgressInformation OPTIONAL,
+ mrbForwardingAddress UP-TNL-Information OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MRBForwardingResourceIndication-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MRBForwardingResourceIndication-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- MCForwardingResourceResponse
+
+MCForwardingResourceResponse ::= SEQUENCE {
+ mcForwardingResourceID MCForwardingResourceID,
+ mrbForwardingResourceResponseList MRBForwardingResourceResponseList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MCForwardingResourceResponse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCForwardingResourceResponse-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MRBForwardingResourceResponseList ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF MRBForwardingResourceResponse-Item
+
+MRBForwardingResourceResponse-Item ::= SEQUENCE {
+ mrb-ID MRB-ID,
+ mrb-ProgressInformation MRB-ProgressInformation OPTIONAL,
+ mrbForwardingAddress UP-TNL-Information OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MRBForwardingResourceResponse-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MRBForwardingResourceResponse-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- MCForwardingResourceRelease
+
+MCForwardingResourceRelease ::= SEQUENCE {
+ mcForwardingResourceID MCForwardingResourceID,
+ iE-Extensions ProtocolExtensionContainer { {MCForwardingResourceRelease-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCForwardingResourceRelease-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- MCForwardingResourceReleaseIndication
+
+MCForwardingResourceReleaseIndication ::= SEQUENCE {
+ mcForwardingResourceID MCForwardingResourceID,
+ iE-Extensions ProtocolExtensionContainer { {MCForwardingResourceReleaseIndication-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCForwardingResourceReleaseIndication-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MCForwardingResourceID ::= OCTET STRING (SIZE(2))
+
+
+MDTPollutedMeasurementIndicator ::= ENUMERATED {
+ iDC,
+ no-IDC,
+ ...
+}
+
+MRB-ID ::= INTEGER (1..512, ...)
+
+MRB-ProgressInformation ::= SEQUENCE {
+ mrb-ProgressInformationSNs MRB-ProgressInformationSNs,
+ mrb-ProgressInformationType MRB-ProgressInformationType,
+ iE-Extensions ProtocolExtensionContainer { {MRB-ProgressInformation-ExtIEs} } OPTIONAL,
+...
+}
+
+MRB-ProgressInformation-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MRB-ProgressInformationSNs ::= CHOICE {
+ pdcp-SN12 INTEGER (0..4095),
+ pdcp-SN18 INTEGER (0..262143),
+ choice-extension ProtocolIE-SingleContainer { { MRB-ProgressInformationSNs-ExtIEs} }
+}
+
+MRB-ProgressInformationSNs-ExtIEs E1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+MRB-ProgressInformationType ::= ENUMERATED {oldest-available, last-delivered, ...}
+
MRDC-Data-Usage-Report-Item ::= SEQUENCE {
startTimeStamp OCTET STRING (SIZE(4)),
endTimeStamp OCTET STRING (SIZE(4)),
@@ -1438,11 +2406,14 @@ M4Configuration ::= SEQUENCE {
}
M4Configuration-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-M4ReportAmount CRITICALITY ignore EXTENSION M4ReportAmount PRESENCE optional },
...
}
M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
+M4ReportAmount ::= ENUMERATED { r1, r2, r4, r8, r16, r32, r64, infinity, ... }
+
M6Configuration ::= SEQUENCE {
m6report-Interval M6report-Interval,
m6-links-to-log Links-to-log,
@@ -1451,9 +2422,12 @@ M6Configuration ::= SEQUENCE {
}
M6Configuration-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-M6ReportAmount CRITICALITY ignore EXTENSION M6ReportAmount PRESENCE optional },
...
}
+M6ReportAmount ::= ENUMERATED { r1, r2, r4, r8, r16, r32, r64, infinity, ... }
+
M6report-Interval ::= ENUMERATED { ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, ms20480 ,ms40960, min1, min6, min12, min30, ... }
M7Configuration ::= SEQUENCE {
@@ -1464,11 +2438,14 @@ M7Configuration ::= SEQUENCE {
}
M7Configuration-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-M7ReportAmount CRITICALITY ignore EXTENSION M7ReportAmount PRESENCE optional },
...
}
M7period ::= INTEGER(1..60, ...)
+M7ReportAmount ::= ENUMERATED { r1, r2, r4, r8, r16, r32, r64, infinity, ... }
+
MDT-Activation ::= ENUMERATED {
immediate-MDT-only,
immediate-MDT-and-Trace,
@@ -1498,6 +2475,8 @@ MeasurementsToActivate ::= BIT STRING (SIZE (8))
MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMN-Identity
+MDTPLMNModificationList ::= SEQUENCE (SIZE(0..maxnoofMDTPLMNs)) OF PLMN-Identity
+
-- N
NetworkInstance ::= INTEGER (1..256, ...)
@@ -1662,7 +2641,14 @@ PDCP-Configuration ::= SEQUENCE {
PDCP-Configuration-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
{ID id-PDCP-StatusReportIndication CRITICALITY ignore EXTENSION PDCP-StatusReportIndication PRESENCE optional}|
{ ID id-AdditionalPDCPduplicationInformation CRITICALITY ignore EXTENSION AdditionalPDCPduplicationInformation PRESENCE optional }|
- { ID id-EHC-Parameters CRITICALITY ignore EXTENSION EHC-Parameters PRESENCE optional},
+ { ID id-EHC-Parameters CRITICALITY ignore EXTENSION EHC-Parameters PRESENCE optional}|
+ { ID id-UDC-Parameters CRITICALITY ignore EXTENSION UDC-Parameters PRESENCE optional}|
+ { ID id-DiscardTimerExtended CRITICALITY reject EXTENSION DiscardTimerExtended PRESENCE optional},
+ ...
+}
+
+PDCP-COUNT-Reset ::= ENUMERATED {
+ true,
...
}
@@ -1715,7 +2701,10 @@ PDCP-SN ::= INTEGER (0..262143)
PDCP-SN-Size ::= ENUMERATED {
s-12,
s-18,
- ...
+ ...,
+s-7,
+s-15,
+s-16
}
PDCP-SN-Status-Information ::= SEQUENCE {
@@ -1749,6 +2738,8 @@ DRBBStatusTransfer-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
PDU-Session-ID ::= INTEGER (0..255)
+PDUSession-PairID ::= INTEGER (0..255, ...)
+
PDU-Session-Resource-Activity ::= ENUMERATED {
active,
not-active,
@@ -1914,11 +2905,13 @@ PDU-Session-Resource-To-Modify-Item ::= SEQUENCE {
}
PDU-Session-Resource-To-Modify-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
- {ID id-SNSSAI CRITICALITY reject EXTENSION SNSSAI PRESENCE optional}|
- { ID id-CommonNetworkInstance CRITICALITY ignore EXTENSION CommonNetworkInstance PRESENCE optional }|
- {ID id-redundant-nG-UL-UP-TNL-Information CRITICALITY ignore EXTENSION UP-TNL-Information PRESENCE optional }|
- {ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION CommonNetworkInstance PRESENCE optional }|
- {ID id-DataForwardingtoE-UTRANInformationList CRITICALITY ignore EXTENSION DataForwardingtoE-UTRANInformationList PRESENCE optional },
+ {ID id-SNSSAI CRITICALITY reject EXTENSION SNSSAI PRESENCE optional}|
+ {ID id-CommonNetworkInstance CRITICALITY ignore EXTENSION CommonNetworkInstance PRESENCE optional }|
+ {ID id-redundant-nG-UL-UP-TNL-Information CRITICALITY ignore EXTENSION UP-TNL-Information PRESENCE optional }|
+ {ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION CommonNetworkInstance PRESENCE optional }|
+ {ID id-DataForwardingtoE-UTRANInformationList CRITICALITY ignore EXTENSION DataForwardingtoE-UTRANInformationList PRESENCE optional }|
+ {ID id-SecurityIndicationModify CRITICALITY ignore EXTENSION SecurityIndication PRESENCE optional }|
+ {ID id-Secondary-PDU-Session-Data-Forwarding-Information CRITICALITY ignore EXTENSION Data-Forwarding-Information PRESENCE optional },
...
}
@@ -2056,7 +3049,8 @@ QoS-Flow-Item ::= SEQUENCE {
}
QoS-Flow-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
- {ID id-QoSFlowMappingIndication CRITICALITY ignore EXTENSION QoS-Flow-Mapping-Indication PRESENCE optional},
+ {ID id-QoSFlowMappingIndication CRITICALITY ignore EXTENSION QoS-Flow-Mapping-Indication PRESENCE optional}|
+ {ID id-DataForwardingSourceIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -2088,6 +3082,8 @@ QoS-Flow-Mapping-Item-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
QoS-Flow-Mapping-Indication ::= ENUMERATED {ul, dl, ...}
+QoS-Flows-DRB-Remapping ::= ENUMERATED {update, source-configuration, ...}
+
QoS-Parameters-Support-List ::= SEQUENCE {
eUTRAN-QoS-Support-List EUTRAN-QoS-Support-List OPTIONAL,
nG-RAN-QoS-Support-List NG-RAN-QoS-Support-List OPTIONAL,
@@ -2124,7 +3120,8 @@ QoSFlowLevelQoSParameters ::= SEQUENCE {
gBR-QoS-Flow-Information GBR-QoSFlowInformation OPTIONAL,
reflective-QoS-Attribute ENUMERATED {subject-to, ...} OPTIONAL,
additional-QoS-Information ENUMERATED {more-likely, ...} OPTIONAL,
- paging-Policy-Indicator INTEGER (1..8, ...) OPTIONAL,
+ paging-Policy-Index INTEGER (1..8, ...) OPTIONAL,
+-- The paging-Policy-Index IE is not used in this version of the specification.
reflective-QoS-Indicator ENUMERATED {enabled, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { QoSFlowLevelQoSParameters-ExtIEs } } OPTIONAL
}
@@ -2133,7 +3130,8 @@ QoSFlowLevelQoSParameters-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
{ID id-QoSMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}|
{ID id-MCG-OfferedGBRQoSFlowInfo CRITICALITY ignore EXTENSION GBR-QoSFlowInformation PRESENCE optional}|
{ID id-QosMonitoringReportingFrequency CRITICALITY ignore EXTENSION QosMonitoringReportingFrequency PRESENCE optional}|
- {ID id-QoSMonitoringDisabled CRITICALITY ignore EXTENSION QosMonitoringDisabled PRESENCE optional},
+ {ID id-QoSMonitoringDisabled CRITICALITY ignore EXTENSION QosMonitoringDisabled PRESENCE optional}|
+ {ID id-DataForwardingSourceIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -2204,6 +3202,7 @@ RedundantPDUSessionInformation ::= SEQUENCE {
}
RedundantPDUSessionInformation-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-PDUSession-PairID CRITICALITY ignore EXTENSION PDUSession-PairID PRESENCE optional },
...
}
@@ -2225,6 +3224,14 @@ ReportingPeriodicity ::= ENUMERATED {
...
}
+RequestedAction4AvailNGUTermination ::= ENUMERATED {
+ apply-available-configuration,
+ apply-requested-configuration,
+ ...,
+ apply-available-configuration-if-same-as-requested
+
+}
+
RLC-Mode ::= ENUMERATED {
rlc-tm,
rlc-am,
@@ -2259,6 +3266,8 @@ ROHC-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
-- S
+SCGActivationStatus ::= ENUMERATED { scg-activated, scg-deactivated, ...}
+
SecurityAlgorithm ::= SEQUENCE {
cipheringAlgorithm CipheringAlgorithm,
integrityProtectionAlgorithm IntegrityProtectionAlgorithm OPTIONAL,
@@ -2350,8 +3359,16 @@ SDAP-Header-UL ::= ENUMERATED {
...
}
+SDTContinueROHC ::= ENUMERATED {true, ...}
+
+SDTindicatorSetup ::= ENUMERATED {true, ...}
+
+SDTindicatorMod ::= ENUMERATED {true, false, ...}
+
SubscriberProfileIDforRFP ::= INTEGER (1..256, ...)
+SurvivalTime ::= INTEGER (0..1920000, ...)
+
-- T
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
@@ -2368,7 +3385,7 @@ TNL-AvailableCapacityIndicator ::= SEQUENCE {
dL-TNL-AvailableCapacity INTEGER (0..100, ...),
uL-TNL-OfferedCapacity INTEGER (0..16777216, ...),
uL-TNL-AvailableCapacity INTEGER (0..100, ...),
- iE-Extensions ProtocolExtensionContainer { { TNL-AvailableCapacityIndicator-ExtIEs } },
+ iE-Extensions ProtocolExtensionContainer { { TNL-AvailableCapacityIndicator-ExtIEs } } OPTIONAL,
...
}
@@ -2393,6 +3410,7 @@ TSCTrafficInformation ::= SEQUENCE {
}
TSCTrafficInformation-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-SurvivalTime CRITICALITY ignore EXTENSION SurvivalTime PRESENCE optional},
...
}
@@ -2487,6 +3505,23 @@ Transport-UP-Layer-Addresses-Info-To-Remove-ItemExtIEs E1AP-PROTOCOL-EXTENSION :
}
-- U
+UDC-Parameters ::= SEQUENCE {
+ bufferSize BufferSize,
+ dictionary Dictionary OPTIONAL,
+ continueUDC ENUMERATED {true, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UDC-Parameters-ExtIEs } } OPTIONAL
+}
+
+-- WS modification: define a dedicated type
+VersionID ::= INTEGER (0..15)
+
+UDC-Parameters-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+-- WS modification: define a dedicated type
+-- { ID id-VersionID CRITICALITY ignore EXTENSION INTEGER (0..15) PRESENCE optional},
+ { ID id-VersionID CRITICALITY ignore EXTENSION VersionID PRESENCE optional},
+ ...
+}
+
UE-Activity ::= ENUMERATED {
active,
not-active,
@@ -2504,6 +3539,18 @@ UE-associatedLogicalE1-ConnectionItemExtIEs E1AP-PROTOCOL-EXTENSION ::= {
...
}
+UESliceMaximumBitRateList ::= SEQUENCE (SIZE(1.. maxnoofSMBRValues)) OF UESliceMaximumBitRateItem
+UESliceMaximumBitRateItem ::= SEQUENCE {
+ sNSSAI SNSSAI,
+ uESliceMaximumBitRateDL BitRate,
+ iE-Extensions ProtocolExtensionContainer { { UESliceMaximumBitRateItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UESliceMaximumBitRateItem-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
UL-Configuration ::= ENUMERATED {
no-data,
shared,
@@ -2571,6 +3618,8 @@ UplinkOnlyROHC-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
URIaddress ::= VisibleString
+UEInactivityInformation ::= INTEGER (1..7200, ...)
+
-- V
-- W
diff --git a/epan/dissectors/asn1/e1ap/E1AP-PDU-Contents.asn b/epan/dissectors/asn1/e1ap/E1AP-PDU-Contents.asn
index 4d0a1ac7cc..4164c3d0b0 100644
--- a/epan/dissectors/asn1/e1ap/E1AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/e1ap/E1AP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.463 V16.7.0 (2021-10)
+-- 3GPP TS 37.483 V17.7.0 (2023-12)
-- **************************************************************
--
-- PDU definitions for E1AP
@@ -23,6 +23,8 @@ IMPORTS
Cause,
CriticalityDiagnostics,
+ GNB-CU-CP-MBS-E1AP-ID,
+ GNB-CU-UP-MBS-E1AP-ID,
GNB-CU-CP-UE-E1AP-ID,
GNB-CU-UP-UE-E1AP-ID,
UE-associatedLogicalE1-ConnectionItem,
@@ -115,7 +117,32 @@ IMPORTS
TransportLayerAddress,
AdditionalHandoverInfo,
Extended-NR-CGI-Support-List,
- DirectForwardingPathAvailability
+ DirectForwardingPathAvailability,
+ IAB-Donor-CU-UPPSKInfo-Item,
+ ECGI-Support-List,
+ MDTPollutedMeasurementIndicator,
+ UESliceMaximumBitRateList,
+ SCGActivationStatus,
+ GlobalMBSSessionID,
+ BCBearerContextToSetup,
+ BCBearerContextToSetupResponse,
+ BCBearerContextToModify,
+ BCBearerContextToModifyResponse,
+ BCBearerContextToModifyRequired,
+ BCBearerContextToModifyConfirm,
+ MCBearerContextToSetup,
+ MCBearerContextToSetupResponse,
+ MCBearerContextToModify,
+ MCBearerContextToModifyResponse,
+ MCBearerContextToModifyRequired,
+ MCBearerContextToModifyConfirm,
+ MBSMulticastF1UContextDescriptor,
+ GNB-CU-UP-MBS-Support-Info,
+ SDTContinueROHC,
+ MDTPLMNModificationList,
+ InactivityInformationRequest,
+ UEInactivityInformation,
+ MBSSessionResourceNotification
FROM E1AP-IEs
@@ -234,14 +261,40 @@ FROM E1AP-Containers
id-ExtendedSliceSupportList,
id-AdditionalHandoverInfo,
id-Extended-NR-CGI-Support-List,
- id-DirectForwardingPathAvailability,
-
+ id-DirectForwardingPathAvailability, id-IAB-Donor-CU-UPPSKInfo,
+ id-ECGI-Support-List,
+ id-MDTPollutedMeasurementIndicator,
+ id-UESliceMaximumBitRateList,
+ id-SCGActivationStatus,
+ id-GNB-CU-CP-MBS-E1AP-ID,
+ id-GNB-CU-UP-MBS-E1AP-ID,
+ id-GlobalMBSSessionID,
+ id-BCBearerContextToSetup,
+ id-BCBearerContextToSetupResponse,
+ id-BCBearerContextToModify,
+ id-BCBearerContextToModifyResponse,
+ id-BCBearerContextToModifyRequired,
+ id-BCBearerContextToModifyConfirm,
+ id-MCBearerContextToSetup,
+ id-MCBearerContextToSetupResponse,
+ id-MCBearerContextToModify,
+ id-MCBearerContextToModifyResponse,
+ id-MCBearerContextToModifyRequired,
+ id-MCBearerContextToModifyConfirm,
+ id-MBSMulticastF1UContextDescriptor,
+ id-gNB-CU-UP-MBS-Support-Info,
+ id-SDTContinueROHC,
+ id-ManagementBasedMDTPLMNModificationList,
+ id-InactivityInformationRequest,
+ id-UEInactivityInformation,
+ id-MBSSessionResourceNotification,
maxnoofErrors,
maxnoofSPLMNs,
maxnoofDRBs,
maxnoofTNLAssociations,
maxnoofIndividualE1ConnectionsToReset,
- maxnoofTNLAddresses
+ maxnoofTNLAddresses,
+ maxnoofPSKs
FROM E1AP-Constants;
@@ -335,7 +388,9 @@ ErrorIndication-IEs E1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-CP-UE-E1AP-ID CRITICALITY ignore TYPE GNB-CU-CP-UE-E1AP-ID PRESENCE optional}|
{ ID id-gNB-CU-UP-UE-E1AP-ID CRITICALITY ignore TYPE GNB-CU-UP-UE-E1AP-ID PRESENCE optional}|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional}|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY ignore TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE optional}|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY ignore TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE optional},
...
}
@@ -363,8 +418,9 @@ GNB-CU-UP-E1SetupRequestIEs E1AP-PROTOCOL-IES ::= {
{ ID id-CNSupport CRITICALITY reject TYPE CNSupport PRESENCE mandatory }|
{ ID id-SupportedPLMNs CRITICALITY reject TYPE SupportedPLMNs-List PRESENCE mandatory }|
{ ID id-gNB-CU-UP-Capacity CRITICALITY ignore TYPE GNB-CU-UP-Capacity PRESENCE optional }|
- { ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
- { ID id-Extended-GNB-CU-UP-Name CRITICALITY ignore TYPE Extended-GNB-CU-UP-Name PRESENCE optional },
+ { ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
+ { ID id-Extended-GNB-CU-UP-Name CRITICALITY ignore TYPE Extended-GNB-CU-UP-Name PRESENCE optional }|
+ { ID id-gNB-CU-UP-MBS-Support-Info CRITICALITY reject TYPE GNB-CU-UP-MBS-Support-Info PRESENCE optional },
...
}
@@ -382,7 +438,8 @@ SupportedPLMNs-Item ::= SEQUENCE {
SupportedPLMNs-ExtIEs E1AP-PROTOCOL-EXTENSION ::= {
{ ID id-NPNSupportInfo CRITICALITY reject EXTENSION NPNSupportInfo PRESENCE optional}|
{ ID id-ExtendedSliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional}|
- { ID id-Extended-NR-CGI-Support-List CRITICALITY ignore EXTENSION Extended-NR-CGI-Support-List PRESENCE optional},
+ { ID id-Extended-NR-CGI-Support-List CRITICALITY ignore EXTENSION Extended-NR-CGI-Support-List PRESENCE optional}|
+ { ID id-ECGI-Support-List CRITICALITY ignore EXTENSION ECGI-Support-List PRESENCE optional},
...
}
@@ -401,7 +458,8 @@ GNB-CU-UP-E1SetupResponseIEs E1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-gNB-CU-CP-Name CRITICALITY ignore TYPE GNB-CU-CP-Name PRESENCE optional }|
{ ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
- { ID id-Extended-GNB-CU-CP-Name CRITICALITY ignore TYPE Extended-GNB-CU-CP-Name PRESENCE optional },
+ { ID id-Extended-GNB-CU-CP-Name CRITICALITY ignore TYPE Extended-GNB-CU-CP-Name PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -419,8 +477,8 @@ GNB-CU-UP-E1SetupFailure ::= SEQUENCE {
GNB-CU-UP-E1SetupFailureIEs E1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
- { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -463,12 +521,13 @@ GNB-CU-CP-E1SetupResponse ::= SEQUENCE {
GNB-CU-CP-E1SetupResponseIEs E1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-gNB-CU-UP-ID CRITICALITY reject TYPE GNB-CU-UP-ID PRESENCE mandatory }|
- { ID id-gNB-CU-UP-Name CRITICALITY ignore TYPE GNB-CU-UP-Name PRESENCE optional }|
+ { ID id-gNB-CU-UP-Name CRITICALITY ignore TYPE GNB-CU-UP-Name PRESENCE optional }|
{ ID id-CNSupport CRITICALITY reject TYPE CNSupport PRESENCE mandatory }|
{ ID id-SupportedPLMNs CRITICALITY reject TYPE SupportedPLMNs-List PRESENCE mandatory }|
- { ID id-gNB-CU-UP-Capacity CRITICALITY ignore TYPE GNB-CU-UP-Capacity PRESENCE optional }|
+ { ID id-gNB-CU-UP-Capacity CRITICALITY ignore TYPE GNB-CU-UP-Capacity PRESENCE optional }|
{ ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
- { ID id-Extended-GNB-CU-UP-Name CRITICALITY ignore TYPE Extended-GNB-CU-UP-Name PRESENCE optional },
+ { ID id-Extended-GNB-CU-UP-Name CRITICALITY ignore TYPE Extended-GNB-CU-UP-Name PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -516,7 +575,8 @@ GNB-CU-UP-ConfigurationUpdateIEs E1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UP-Capacity CRITICALITY ignore TYPE GNB-CU-UP-Capacity PRESENCE optional }|
{ ID id-GNB-CU-UP-TNLA-To-Remove-List CRITICALITY reject TYPE GNB-CU-UP-TNLA-To-Remove-List PRESENCE optional }|
{ ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
- { ID id-Extended-GNB-CU-UP-Name CRITICALITY ignore TYPE Extended-GNB-CU-UP-Name PRESENCE optional },
+ { ID id-Extended-GNB-CU-UP-Name CRITICALITY ignore TYPE Extended-GNB-CU-UP-Name PRESENCE optional }|
+ { ID id-gNB-CU-UP-MBS-Support-Info CRITICALITY reject TYPE GNB-CU-UP-MBS-Support-Info PRESENCE optional },
...
}
@@ -669,7 +729,8 @@ E1ReleaseResponse ::= SEQUENCE {
}
E1ReleaseResponseIEs E1AP-PROTOCOL-IES ::= {
- { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory },
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -708,7 +769,10 @@ BearerContextSetupRequestIEs E1AP-PROTOCOL-IES ::= {
{ ID id-CHOInitiation CRITICALITY reject TYPE CHOInitiation PRESENCE optional }|
{ ID id-AdditionalHandoverInfo CRITICALITY ignore TYPE AdditionalHandoverInfo PRESENCE optional }|
{ ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }|
- { ID id-gNB-CU-UP-UE-E1AP-ID CRITICALITY ignore TYPE GNB-CU-UP-UE-E1AP-ID PRESENCE optional },
+ { ID id-gNB-CU-UP-UE-E1AP-ID CRITICALITY ignore TYPE GNB-CU-UP-UE-E1AP-ID PRESENCE optional }|
+ { ID id-MDTPollutedMeasurementIndicator CRITICALITY ignore TYPE MDTPollutedMeasurementIndicator PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional },
...
}
@@ -751,7 +815,8 @@ BearerContextSetupResponse ::= SEQUENCE {
BearerContextSetupResponseIEs E1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-CP-UE-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-UE-E1AP-ID PRESENCE mandatory }|
{ ID id-gNB-CU-UP-UE-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-UE-E1AP-ID PRESENCE mandatory }|
- { ID id-System-BearerContextSetupResponse CRITICALITY ignore TYPE System-BearerContextSetupResponse PRESENCE mandatory },
+ { ID id-System-BearerContextSetupResponse CRITICALITY ignore TYPE System-BearerContextSetupResponse PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -827,7 +892,13 @@ BearerContextModificationRequestIEs E1AP-PROTOCOL-IES ::= {
{ ID id-System-BearerContextModificationRequest CRITICALITY reject TYPE System-BearerContextModificationRequest PRESENCE optional }|
{ ID id-RANUEID CRITICALITY ignore TYPE RANUEID PRESENCE optional }|
{ ID id-GNB-DU-ID CRITICALITY ignore TYPE GNB-DU-ID PRESENCE optional }|
- { ID id-ActivityNotificationLevel CRITICALITY ignore TYPE ActivityNotificationLevel PRESENCE optional },
+ { ID id-ActivityNotificationLevel CRITICALITY ignore TYPE ActivityNotificationLevel PRESENCE optional }|
+ { ID id-MDTPollutedMeasurementIndicator CRITICALITY ignore TYPE MDTPollutedMeasurementIndicator PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional }|
+ { ID id-SDTContinueROHC CRITICALITY reject TYPE SDTContinueROHC PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional}|
+ { ID id-InactivityInformationRequest CRITICALITY ignore TYPE InactivityInformationRequest PRESENCE optional},
...
}
@@ -873,7 +944,9 @@ BearerContextModificationResponse ::= SEQUENCE {
BearerContextModificationResponseIEs E1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-CP-UE-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-UE-E1AP-ID PRESENCE mandatory }|
{ ID id-gNB-CU-UP-UE-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-UE-E1AP-ID PRESENCE mandatory }|
- { ID id-System-BearerContextModificationResponse CRITICALITY ignore TYPE System-BearerContextModificationResponse PRESENCE optional },
+ { ID id-System-BearerContextModificationResponse CRITICALITY ignore TYPE System-BearerContextModificationResponse PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-UEInactivityInformation CRITICALITY ignore TYPE UEInactivityInformation PRESENCE optional},
...
}
@@ -987,7 +1060,8 @@ BearerContextModificationConfirm ::= SEQUENCE {
BearerContextModificationConfirmIEs E1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-CP-UE-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-UE-E1AP-ID PRESENCE mandatory }|
{ ID id-gNB-CU-UP-UE-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-UE-E1AP-ID PRESENCE mandatory }|
- { ID id-System-BearerContextModificationConfirm CRITICALITY ignore TYPE System-BearerContextModificationConfirm PRESENCE optional },
+ { ID id-System-BearerContextModificationConfirm CRITICALITY ignore TYPE System-BearerContextModificationConfirm PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -1335,8 +1409,8 @@ DeactivateTraceIEs E1AP-PROTOCOL-IES ::= {
-- **************************************************************
CellTrafficTrace ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { { CellTrafficTraceIEs } },
- ...
+protocolIEs ProtocolIE-Container { { CellTrafficTraceIEs } },
+...
}
CellTrafficTraceIEs E1AP-PROTOCOL-IES ::= {
@@ -1345,7 +1419,7 @@ CellTrafficTraceIEs E1AP-PROTOCOL-IES ::= {
{ID id-TraceID CRITICALITY ignore TYPE TraceID PRESENCE mandatory}|
{ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }|
{ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional}|
- {ID id-URIaddress CRITICALITY ignore TYPE URIaddress PRESENCE optional},
+{ID id-URIaddress CRITICALITY ignore TYPE URIaddress PRESENCE optional},
...
}
@@ -1389,7 +1463,7 @@ ResourceStatusRequestIEs E1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UP-Measurement-ID CRITICALITY ignore TYPE Measurement-ID PRESENCE optional}|
{ ID id-RegistrationRequest CRITICALITY reject TYPE RegistrationRequest PRESENCE mandatory}|
{ ID id-ReportCharacteristics CRITICALITY reject TYPE ReportCharacteristics PRESENCE conditional}|
- { ID id-ReportingPeriodicity CRITICALITY reject TYPE ReportingPeriodicity PRESENCE optional},
+ { ID id-ReportingPeriodicity CRITICALITY ignore TYPE ReportingPeriodicity PRESENCE optional},
...
}
@@ -1458,10 +1532,10 @@ ResourceStatusUpdateIEs E1AP-PROTOCOL-IES ::= {
-- { ID id-gNB-CU-CP-Measurement-ID CRITICALITY reject TYPE INTEGER (1..4095, ...) PRESENCE mandatory}|
{ ID id-gNB-CU-CP-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
-- WS modification: define a specific type
--- { ID id-gNB-CU-UP-Measurement-ID CRITICALITY ignore TYPE INTEGER (1..4095, ...) PRESENCE optional}|
- { ID id-gNB-CU-UP-Measurement-ID CRITICALITY ignore TYPE Measurement-ID PRESENCE optional}|
+-- { ID id-gNB-CU-UP-Measurement-ID CRITICALITY ignore TYPE INTEGER (1..4095, ...) PRESENCE mandatory}|
+ { ID id-gNB-CU-UP-Measurement-ID CRITICALITY ignore TYPE Measurement-ID PRESENCE mandatory}|
{ ID id-TNL-AvailableCapacityIndicator CRITICALITY ignore TYPE TNL-AvailableCapacityIndicator PRESENCE optional}|
- { ID id-HW-CapacityIndicator CRITICALITY ignore TYPE HW-CapacityIndicator PRESENCE mandatory},
+ { ID id-HW-CapacityIndicator CRITICALITY ignore TYPE HW-CapacityIndicator PRESENCE optional},
...
}
@@ -1555,4 +1629,516 @@ EarlyForwardingSNTransferIEs E1AP-PROTOCOL-IES ::= {
...
}
+-- **************************************************************
+--
+-- IAB PSK NOTIFICATION
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- IAB PSK Notification
+--
+-- **************************************************************
+
+IABPSKNotification ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { IABPSKNotificationIEs } },
+ ...
+}
+
+IABPSKNotificationIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-IAB-Donor-CU-UPPSKInfo CRITICALITY reject TYPE IAB-Donor-CU-UPPSKInfo PRESENCE mandatory },
+ ...
+}
+
+IAB-Donor-CU-UPPSKInfo ::= SEQUENCE (SIZE(1.. maxnoofPSKs)) OF IAB-Donor-CU-UPPSKInfo-Item
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT SETUP
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT SETUP REQUEST
+--
+-- **************************************************************
+
+BCBearerContextSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextSetupRequestIEs } },
+ ...
+}
+
+BCBearerContextSetupRequestIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GlobalMBSSessionID CRITICALITY reject TYPE GlobalMBSSessionID PRESENCE mandatory }|
+ { ID id-BCBearerContextToSetup CRITICALITY reject TYPE BCBearerContextToSetup PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT SETUP RESPONSE
+--
+-- **************************************************************
+
+BCBearerContextSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextSetupResponseIEs } },
+ ...
+}
+
+BCBearerContextSetupResponseIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-BCBearerContextToSetupResponse CRITICALITY reject TYPE BCBearerContextToSetupResponse PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT SETUP FAILURE
+--
+-- **************************************************************
+
+BCBearerContextSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextSetupFailureIEs } },
+ ...
+}
+
+BCBearerContextSetupFailureIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY ignore TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION REQUEST
+--
+-- **************************************************************
+
+BCBearerContextModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextModificationRequestIEs } },
+ ...
+}
+
+BCBearerContextModificationRequestIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-BCBearerContextToModify CRITICALITY reject TYPE BCBearerContextToModify PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION RESPONSE
+--
+-- **************************************************************
+
+BCBearerContextModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextModificationResponseIEs } },
+ ...
+}
+
+BCBearerContextModificationResponseIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-BCBearerContextToModifyResponse CRITICALITY reject TYPE BCBearerContextToModifyResponse PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION FAILURE
+--
+-- **************************************************************
+
+BCBearerContextModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextModificationFailureIEs } },
+ ...
+}
+
+BCBearerContextModificationFailureIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION REQUIRED
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION REQUIRED
+--
+-- **************************************************************
+
+BCBearerContextModificationRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextModificationRequiredIEs } },
+ ...
+}
+
+BCBearerContextModificationRequiredIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-BCBearerContextToModifyRequired CRITICALITY reject TYPE BCBearerContextToModifyRequired PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT MODIFICATION CONFIRM
+--
+-- **************************************************************
+
+BCBearerContextModificationConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextModificationConfirmIEs } },
+ ...
+}
+
+BCBearerContextModificationConfirmIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-BCBearerContextToModifyConfirm CRITICALITY reject TYPE BCBearerContextToModifyConfirm PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT RELEASE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT RELEASE COMMAND
+--
+-- **************************************************************
+
+BCBearerContextReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextReleaseCommandIEs } },
+ ...
+}
+
+BCBearerContextReleaseCommandIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT RELEASE COMPLETE
+--
+-- **************************************************************
+
+BCBearerContextReleaseComplete ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextReleaseCompleteIEs } },
+ ...
+}
+
+BCBearerContextReleaseCompleteIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT RELEASE REQUEST
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BC BEARER CONTEXT RELEASE REQUEST
+--
+-- **************************************************************
+
+BCBearerContextReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BCBearerContextReleaseRequestIEs } },
+ ...
+}
+
+BCBearerContextReleaseRequestIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT SETUP
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT SETUP REQUEST
+--
+-- **************************************************************
+
+MCBearerContextSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextSetupRequestIEs } },
+ ...
+}
+
+MCBearerContextSetupRequestIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GlobalMBSSessionID CRITICALITY reject TYPE GlobalMBSSessionID PRESENCE mandatory }|
+ { ID id-MCBearerContextToSetup CRITICALITY reject TYPE MCBearerContextToSetup PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT SETUP RESPONSE
+--
+-- **************************************************************
+
+
+MCBearerContextSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextSetupResponseIEs } },
+ ...
+}
+
+MCBearerContextSetupResponseIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MCBearerContextToSetupResponse CRITICALITY reject TYPE MCBearerContextToSetupResponse PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT SETUP FAILURE
+--
+-- **************************************************************
+
+MCBearerContextSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextSetupFailureIEs } },
+ ...
+}
+
+MCBearerContextSetupFailureIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY ignore TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION REQUEST
+--
+-- **************************************************************
+
+MCBearerContextModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextModificationRequestIEs } },
+ ...
+}
+
+MCBearerContextModificationRequestIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MCBearerContextToModify CRITICALITY reject TYPE MCBearerContextToModify PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION RESPONSE
+--
+-- **************************************************************
+
+MCBearerContextModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextModificationResponseIEs } },
+ ...
+}
+
+MCBearerContextModificationResponseIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MCBearerContextToModifyResponse CRITICALITY reject TYPE MCBearerContextToModifyResponse PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION FAILURE
+--
+-- **************************************************************
+
+MCBearerContextModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextModificationFailureIEs } },
+ ...
+}
+
+MCBearerContextModificationFailureIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MBSMulticastF1UContextDescriptor CRITICALITY reject TYPE MBSMulticastF1UContextDescriptor PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION REQUIRED
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION REQUIRED
+--
+-- **************************************************************
+
+MCBearerContextModificationRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextModificationRequiredIEs } },
+ ...
+}
+
+MCBearerContextModificationRequiredIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MCBearerContextToModifyRequired CRITICALITY reject TYPE MCBearerContextToModifyRequired PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT MODIFICATION CONFIRM
+--
+-- **************************************************************
+
+MCBearerContextModificationConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextModificationConfirmIEs } },
+ ...
+}
+
+MCBearerContextModificationConfirmIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MCBearerContextToModifyConfirm CRITICALITY reject TYPE MCBearerContextToModifyConfirm PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT RELEASE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT RELEASE COMMAND
+--
+-- **************************************************************
+
+MCBearerContextReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextReleaseCommandIEs } },
+ ...
+}
+
+MCBearerContextReleaseCommandIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT RELEASE COMPLETE
+--
+-- **************************************************************
+
+MCBearerContextReleaseComplete ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextReleaseCompleteIEs } },
+ ...
+}
+
+MCBearerContextReleaseCompleteIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT RELEASE REQUEST
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MC BEARER CONTEXT RELEASE REQUEST
+--
+-- **************************************************************
+
+MCBearerContextReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerContextReleaseRequestIEs } },
+ ...
+}
+
+MCBearerContextReleaseRequestIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MC BEARER NOTIFICATION
+--
+-- **************************************************************
+
+MCBearerNotification ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MCBearerNotificationIEs } },
+ ...
+}
+
+MCBearerNotificationIEs E1AP-PROTOCOL-IES ::= {
+ { ID id-GNB-CU-CP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-CP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-GNB-CU-UP-MBS-E1AP-ID CRITICALITY reject TYPE GNB-CU-UP-MBS-E1AP-ID PRESENCE mandatory }|
+ { ID id-MBSSessionResourceNotification CRITICALITY ignore TYPE MBSSessionResourceNotification PRESENCE mandatory },
+ ...
+}
+
+
END
diff --git a/epan/dissectors/asn1/e1ap/E1AP-PDU-Descriptions.asn b/epan/dissectors/asn1/e1ap/E1AP-PDU-Descriptions.asn
index d79c5d129d..f7538c59b9 100644
--- a/epan/dissectors/asn1/e1ap/E1AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/e1ap/E1AP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.463 V16.7.0 (2021-10)
+-- 3GPP TS 37.483 V17.7.0 (2023-12)
-- **************************************************************
--
-- Elementary Procedure definitions
@@ -39,6 +39,17 @@ FROM E1AP-CommonDataTypes
GNB-CU-CP-ConfigurationUpdate,
GNB-CU-CP-ConfigurationUpdateAcknowledge,
GNB-CU-CP-ConfigurationUpdateFailure,
+ BCBearerContextSetupRequest,
+ BCBearerContextSetupResponse,
+ BCBearerContextSetupFailure,
+ BCBearerContextModificationRequest,
+ BCBearerContextModificationResponse,
+ BCBearerContextModificationFailure,
+ BCBearerContextModificationRequired,
+ BCBearerContextModificationConfirm,
+ BCBearerContextReleaseCommand,
+ BCBearerContextReleaseComplete,
+ BCBearerContextReleaseRequest,
BearerContextSetupRequest,
BearerContextSetupResponse,
BearerContextSetupFailure,
@@ -58,6 +69,18 @@ FROM E1AP-CommonDataTypes
E1ReleaseResponse,
GNB-CU-UP-CounterCheckRequest,
GNB-CU-UP-StatusIndication,
+ MCBearerContextSetupRequest,
+ MCBearerContextSetupResponse,
+ MCBearerContextSetupFailure,
+ MCBearerContextModificationRequest,
+ MCBearerContextModificationResponse,
+ MCBearerContextModificationFailure,
+ MCBearerContextModificationRequired,
+ MCBearerContextModificationConfirm,
+ MCBearerNotification,
+ MCBearerContextReleaseCommand,
+ MCBearerContextReleaseComplete,
+ MCBearerContextReleaseRequest,
MRDC-DataUsageReport,
DeactivateTrace,
TraceStart,
@@ -71,7 +94,8 @@ FROM E1AP-CommonDataTypes
IAB-UPTNLAddressUpdateFailure,
CellTrafficTrace,
EarlyForwardingSNTransfer,
- GNB-CU-CPMeasurementResultsInformation
+ GNB-CU-CPMeasurementResultsInformation,
+ IABPSKNotification
FROM E1AP-PDU-Contents
id-reset,
@@ -101,7 +125,19 @@ FROM E1AP-PDU-Contents
id-iAB-UPTNLAddressUpdate,
id-CellTrafficTrace,
id-earlyForwardingSNTransfer,
- id-gNB-CU-CPMeasurementResultsInformation
+ id-gNB-CU-CPMeasurementResultsInformation,
+ id-iABPSKNotification,
+ id-BCBearerContextSetup,
+ id-BCBearerContextModification,
+ id-BCBearerContextModificationRequired,
+ id-BCBearerContextRelease,
+ id-BCBearerContextReleaseRequest,
+ id-MCBearerContextSetup,
+ id-MCBearerContextModification,
+ id-MCBearerContextModificationRequired,
+ id-MCBearerNotification,
+ id-MCBearerContextRelease,
+ id-MCBearerContextReleaseRequest
FROM E1AP-Constants;
@@ -183,7 +219,15 @@ E1AP-ELEMENTARY-PROCEDURES-CLASS-1 E1AP-ELEMENTARY-PROCEDURE ::= {
bearerContextModificationRequired |
bearerContextRelease |
resourceStatusReportingInitiation |
- iAB-UPTNLAddressUpdate ,
+ iAB-UPTNLAddressUpdate |
+ bCBearerContextSetup |
+ bCBearerContextModification |
+ bCBearerContextModificationRequired |
+ bCBearerContextRelease |
+ mCBearerContextSetup |
+ mCBearerContextModification |
+ mCBearerContextModificationRequired |
+ mCBearerContextRelease ,
...
}
@@ -195,7 +239,7 @@ E1AP-ELEMENTARY-PROCEDURES-CLASS-2 E1AP-ELEMENTARY-PROCEDURE ::= {
uLDataNotification |
dataUsageReport |
gNB-CU-UP-CounterCheck |
- gNB-CU-UP-StatusIndication |
+ gNB-CU-UP-StatusIndication |
mRDC-DataUsageReport |
deactivateTrace |
traceStart |
@@ -203,7 +247,11 @@ E1AP-ELEMENTARY-PROCEDURES-CLASS-2 E1AP-ELEMENTARY-PROCEDURE ::= {
cellTrafficTrace |
resourceStatusReporting |
earlyForwardingSNTransfer |
- gNB-CU-CPMeasurementResultsInformation,
+ gNB-CU-CPMeasurementResultsInformation |
+ iABPSKNotification |
+ bCBearerContextReleaseRequest |
+ mCBearerContextReleaseRequest |
+ mCBearerNotification ,
...
}
@@ -401,4 +449,88 @@ earlyForwardingSNTransfer E1AP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY ignore
}
+iABPSKNotification E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE IABPSKNotification
+ PROCEDURE CODE id-iABPSKNotification
+ CRITICALITY reject
+}
+
+bCBearerContextSetup E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BCBearerContextSetupRequest
+ SUCCESSFUL OUTCOME BCBearerContextSetupResponse
+ UNSUCCESSFUL OUTCOME BCBearerContextSetupFailure
+ PROCEDURE CODE id-BCBearerContextSetup
+ CRITICALITY reject
+}
+
+bCBearerContextModification E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BCBearerContextModificationRequest
+ SUCCESSFUL OUTCOME BCBearerContextModificationResponse
+ UNSUCCESSFUL OUTCOME BCBearerContextModificationFailure
+ PROCEDURE CODE id-BCBearerContextModification
+ CRITICALITY reject
+}
+
+bCBearerContextModificationRequired E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BCBearerContextModificationRequired
+ SUCCESSFUL OUTCOME BCBearerContextModificationConfirm
+ PROCEDURE CODE id-BCBearerContextModificationRequired
+ CRITICALITY reject
+}
+
+bCBearerContextRelease E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BCBearerContextReleaseCommand
+ SUCCESSFUL OUTCOME BCBearerContextReleaseComplete
+ PROCEDURE CODE id-BCBearerContextRelease
+ CRITICALITY reject
+}
+
+bCBearerContextReleaseRequest E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BCBearerContextReleaseRequest
+ PROCEDURE CODE id-BCBearerContextReleaseRequest
+ CRITICALITY reject
+}
+
+mCBearerContextSetup E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MCBearerContextSetupRequest
+ SUCCESSFUL OUTCOME MCBearerContextSetupResponse
+ UNSUCCESSFUL OUTCOME MCBearerContextSetupFailure
+ PROCEDURE CODE id-MCBearerContextSetup
+ CRITICALITY reject
+}
+
+mCBearerContextModification E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MCBearerContextModificationRequest
+ SUCCESSFUL OUTCOME MCBearerContextModificationResponse
+ UNSUCCESSFUL OUTCOME MCBearerContextModificationFailure
+ PROCEDURE CODE id-MCBearerContextModification
+ CRITICALITY reject
+}
+
+mCBearerContextModificationRequired E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MCBearerContextModificationRequired
+ SUCCESSFUL OUTCOME MCBearerContextModificationConfirm
+ PROCEDURE CODE id-MCBearerContextModificationRequired
+ CRITICALITY reject
+}
+
+mCBearerNotification E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MCBearerNotification
+ PROCEDURE CODE id-MCBearerNotification
+ CRITICALITY reject
+}
+
+mCBearerContextRelease E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MCBearerContextReleaseCommand
+ SUCCESSFUL OUTCOME MCBearerContextReleaseComplete
+ PROCEDURE CODE id-MCBearerContextRelease
+ CRITICALITY reject
+}
+
+mCBearerContextReleaseRequest E1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MCBearerContextReleaseRequest
+ PROCEDURE CODE id-MCBearerContextReleaseRequest
+ CRITICALITY reject
+}
+
END
diff --git a/epan/dissectors/asn1/e1ap/e1ap.cnf b/epan/dissectors/asn1/e1ap/e1ap.cnf
index d856763ccd..721e7f52a4 100644
--- a/epan/dissectors/asn1/e1ap/e1ap.cnf
+++ b/epan/dissectors/asn1/e1ap/e1ap.cnf
@@ -147,148 +147,216 @@ id-iAB-UPTNLAddressUpdate ProcedureCode
id-CellTrafficTrace ProcedureCode
id-earlyForwardingSNTransfer ProcedureCode
id-gNB-CU-CPMeasurementResultsInformation ProcedureCode
+id-iABPSKNotification ProcedureCode
+id-BCBearerContextSetup ProcedureCode
+id-BCBearerContextModification ProcedureCode
+id-BCBearerContextModificationRequired ProcedureCode
+id-BCBearerContextRelease ProcedureCode
+id-BCBearerContextReleaseRequest ProcedureCode
+id-MCBearerContextSetup ProcedureCode
+id-MCBearerContextModification ProcedureCode
+id-MCBearerContextModificationRequired ProcedureCode
+id-MCBearerContextRelease ProcedureCode
+id-MCBearerContextReleaseRequest ProcedureCode
+id-MCBearerNotification ProcedureCode
# ProtocolIE-ID
-id-Cause ProtocolIE-ID
-id-CriticalityDiagnostics ProtocolIE-ID
-id-gNB-CU-CP-UE-E1AP-ID ProtocolIE-ID
-id-gNB-CU-UP-UE-E1AP-ID ProtocolIE-ID
-id-ResetType ProtocolIE-ID
-id-UE-associatedLogicalE1-ConnectionItem ProtocolIE-ID
-id-UE-associatedLogicalE1-ConnectionListResAck ProtocolIE-ID
-id-gNB-CU-UP-ID ProtocolIE-ID
-id-gNB-CU-UP-Name ProtocolIE-ID
-id-gNB-CU-CP-Name ProtocolIE-ID
-id-CNSupport ProtocolIE-ID
-id-SupportedPLMNs ProtocolIE-ID
-id-TimeToWait ProtocolIE-ID
-id-SecurityInformation ProtocolIE-ID
-id-UEDLAggregateMaximumBitRate ProtocolIE-ID
-id-System-BearerContextSetupRequest ProtocolIE-ID
-id-System-BearerContextSetupResponse ProtocolIE-ID
-id-BearerContextStatusChange ProtocolIE-ID
-id-System-BearerContextModificationRequest ProtocolIE-ID
-id-System-BearerContextModificationResponse ProtocolIE-ID
-id-System-BearerContextModificationConfirm ProtocolIE-ID
-id-System-BearerContextModificationRequired ProtocolIE-ID
-id-DRB-Status-List ProtocolIE-ID
-id-ActivityNotificationLevel ProtocolIE-ID
-id-ActivityInformation ProtocolIE-ID
-id-Data-Usage-Report-List ProtocolIE-ID
-id-New-UL-TNL-Information-Required ProtocolIE-ID
-id-GNB-CU-CP-TNLA-To-Add-List ProtocolIE-ID
-id-GNB-CU-CP-TNLA-To-Remove-List ProtocolIE-ID
-id-GNB-CU-CP-TNLA-To-Update-List ProtocolIE-ID
-id-GNB-CU-CP-TNLA-Setup-List ProtocolIE-ID
-id-GNB-CU-CP-TNLA-Failed-To-Setup-List ProtocolIE-ID
-id-DRB-To-Setup-List-EUTRAN ProtocolIE-ID
-id-DRB-To-Modify-List-EUTRAN ProtocolIE-ID
-id-DRB-To-Remove-List-EUTRAN ProtocolIE-ID
-id-DRB-Required-To-Modify-List-EUTRAN ProtocolIE-ID
-id-DRB-Required-To-Remove-List-EUTRAN ProtocolIE-ID
-id-DRB-Setup-List-EUTRAN ProtocolIE-ID
-id-DRB-Failed-List-EUTRAN ProtocolIE-ID
-id-DRB-Modified-List-EUTRAN ProtocolIE-ID
-id-DRB-Failed-To-Modify-List-EUTRAN ProtocolIE-ID
-id-DRB-Confirm-Modified-List-EUTRAN ProtocolIE-ID
-id-PDU-Session-Resource-To-Setup-List ProtocolIE-ID
-id-PDU-Session-Resource-To-Modify-List ProtocolIE-ID
-id-PDU-Session-Resource-To-Remove-List ProtocolIE-ID
-id-PDU-Session-Resource-Required-To-Modify-List ProtocolIE-ID
-id-PDU-Session-Resource-Setup-List ProtocolIE-ID
-id-PDU-Session-Resource-Failed-List ProtocolIE-ID
-id-PDU-Session-Resource-Modified-List ProtocolIE-ID
-id-PDU-Session-Resource-Failed-To-Modify-List ProtocolIE-ID
-id-PDU-Session-Resource-Confirm-Modified-List ProtocolIE-ID
-id-DRB-To-Setup-Mod-List-EUTRAN ProtocolIE-ID
-id-DRB-Setup-Mod-List-EUTRAN ProtocolIE-ID
-id-DRB-Failed-Mod-List-EUTRAN ProtocolIE-ID
-id-PDU-Session-Resource-Setup-Mod-List ProtocolIE-ID
-id-PDU-Session-Resource-Failed-Mod-List ProtocolIE-ID
-id-PDU-Session-Resource-To-Setup-Mod-List ProtocolIE-ID
-id-TransactionID ProtocolIE-ID
-id-Serving-PLMN ProtocolIE-ID
-id-UE-Inactivity-Timer ProtocolIE-ID
-id-System-GNB-CU-UP-CounterCheckRequest ProtocolIE-ID
-id-DRBs-Subject-To-Counter-Check-List-EUTRAN ProtocolIE-ID
-id-DRBs-Subject-To-Counter-Check-List-NG-RAN ProtocolIE-ID
-id-PPI ProtocolIE-ID
-id-gNB-CU-UP-Capacity ProtocolIE-ID
-id-GNB-CU-UP-OverloadInformation ProtocolIE-ID
-id-UEDLMaximumIntegrityProtectedDataRate ProtocolIE-ID
-id-PDU-Session-To-Notify-List ProtocolIE-ID
-id-PDU-Session-Resource-Data-Usage-List ProtocolIE-ID
-id-SNSSAI ProtocolIE-ID
-id-DataDiscardRequired ProtocolIE-ID
-id-OldQoSFlowMap-ULendmarkerexpected ProtocolIE-ID
-id-DRB-QoS ProtocolIE-ID
-id-GNB-CU-UP-TNLA-To-Remove-List ProtocolIE-ID
-id-endpoint-IP-Address-and-Port ProtocolIE-ID
-id-TNLAssociationTransportLayerAddressgNBCUUP ProtocolIE-ID
-id-RANUEID ProtocolIE-ID
-id-GNB-DU-ID ProtocolIE-ID
-id-CommonNetworkInstance ProtocolIE-ID
-id-NetworkInstance ProtocolIE-ID
-id-QoSFlowMappingIndication ProtocolIE-ID
-id-TraceActivation ProtocolIE-ID
-id-TraceID ProtocolIE-ID
-id-SubscriberProfileIDforRFP ProtocolIE-ID
-id-AdditionalRRMPriorityIndex ProtocolIE-ID
-id-RetainabilityMeasurementsInfo ProtocolIE-ID
-id-Transport-Layer-Address-Info ProtocolIE-ID
-id-QoSMonitoringRequest ProtocolIE-ID
-id-PDCP-StatusReportIndication ProtocolIE-ID
-id-gNB-CU-CP-Measurement-ID ProtocolIE-ID
-id-gNB-CU-UP-Measurement-ID ProtocolIE-ID
-id-RegistrationRequest ProtocolIE-ID
-id-ReportCharacteristics ProtocolIE-ID
-id-ReportingPeriodicity ProtocolIE-ID
-id-TNL-AvailableCapacityIndicator ProtocolIE-ID
-id-HW-CapacityIndicator ProtocolIE-ID
-id-RedundantCommonNetworkInstance ProtocolIE-ID
-id-redundant-nG-UL-UP-TNL-Information ProtocolIE-ID
-id-redundant-nG-DL-UP-TNL-Information ProtocolIE-ID
-id-RedundantQosFlowIndicator ProtocolIE-ID
-id-TSCTrafficCharacteristics ProtocolIE-ID
-id-CNPacketDelayBudgetDownlink ProtocolIE-ID
-id-CNPacketDelayBudgetUplink ProtocolIE-ID
-id-ExtendedPacketDelayBudget ProtocolIE-ID
-id-AdditionalPDCPduplicationInformation ProtocolIE-ID
-id-RedundantPDUSessionInformation ProtocolIE-ID
-id-RedundantPDUSessionInformation-used ProtocolIE-ID
-id-QoS-Mapping-Information ProtocolIE-ID
-id-DLUPTNLAddressToUpdateList ProtocolIE-ID
-id-ULUPTNLAddressToUpdateList ProtocolIE-ID
-id-NPNSupportInfo ProtocolIE-ID
-id-NPNContextInfo ProtocolIE-ID
-id-MDTConfiguration ProtocolIE-ID
-id-ManagementBasedMDTPLMNList ProtocolIE-ID
-id-TraceCollectionEntityIPAddress ProtocolIE-ID
-id-PrivacyIndicator ProtocolIE-ID
-id-TraceCollectionEntityURI ProtocolIE-ID
-id-URIaddress ProtocolIE-ID
-id-EHC-Parameters ProtocolIE-ID
-id-DRBs-Subject-To-Early-Forwarding-List ProtocolIE-ID
-id-DAPSRequestInfo ProtocolIE-ID
-id-CHOInitiation ProtocolIE-ID
-id-EarlyForwardingCOUNTReq ProtocolIE-ID
-id-EarlyForwardingCOUNTInfo ProtocolIE-ID
-id-AlternativeQoSParaSetList ProtocolIE-ID
-id-ExtendedSliceSupportList ProtocolIE-ID
-id-MCG-OfferedGBRQoSFlowInfo ProtocolIE-ID
-id-Number-of-tunnels ProtocolIE-ID
-id-DRB-Measurement-Results-Information-List ProtocolIE-ID
-id-Extended-GNB-CU-CP-Name ProtocolIE-ID
-id-Extended-GNB-CU-UP-Name ProtocolIE-ID
-id-DataForwardingtoE-UTRANInformationList ProtocolIE-ID
-id-QosMonitoringReportingFrequency ProtocolIE-ID
-id-QoSMonitoringDisabled ProtocolIE-ID
-id-AdditionalHandoverInfo ProtocolIE-ID
-id-Extended-NR-CGI-Support-List ProtocolIE-ID
-id-DataForwardingtoNG-RANQoSFlowInformationList ProtocolIE-ID
-id-MaxCIDEHCDL ProtocolIE-ID
-id-ignoreMappingRuleIndication ProtocolIE-ID
-id-DirectForwardingPathAvailability ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-gNB-CU-CP-UE-E1AP-ID ProtocolIE-ID
+id-gNB-CU-UP-UE-E1AP-ID ProtocolIE-ID
+id-ResetType ProtocolIE-ID
+id-UE-associatedLogicalE1-ConnectionItem ProtocolIE-ID
+id-UE-associatedLogicalE1-ConnectionListResAck ProtocolIE-ID
+id-gNB-CU-UP-ID ProtocolIE-ID
+id-gNB-CU-UP-Name ProtocolIE-ID
+id-gNB-CU-CP-Name ProtocolIE-ID
+id-CNSupport ProtocolIE-ID
+id-SupportedPLMNs ProtocolIE-ID
+id-TimeToWait ProtocolIE-ID
+id-SecurityInformation ProtocolIE-ID
+id-UEDLAggregateMaximumBitRate ProtocolIE-ID
+id-System-BearerContextSetupRequest ProtocolIE-ID
+id-System-BearerContextSetupResponse ProtocolIE-ID
+id-BearerContextStatusChange ProtocolIE-ID
+id-System-BearerContextModificationRequest ProtocolIE-ID
+id-System-BearerContextModificationResponse ProtocolIE-ID
+id-System-BearerContextModificationConfirm ProtocolIE-ID
+id-System-BearerContextModificationRequired ProtocolIE-ID
+id-DRB-Status-List ProtocolIE-ID
+id-ActivityNotificationLevel ProtocolIE-ID
+id-ActivityInformation ProtocolIE-ID
+id-Data-Usage-Report-List ProtocolIE-ID
+id-New-UL-TNL-Information-Required ProtocolIE-ID
+id-GNB-CU-CP-TNLA-To-Add-List ProtocolIE-ID
+id-GNB-CU-CP-TNLA-To-Remove-List ProtocolIE-ID
+id-GNB-CU-CP-TNLA-To-Update-List ProtocolIE-ID
+id-GNB-CU-CP-TNLA-Setup-List ProtocolIE-ID
+id-GNB-CU-CP-TNLA-Failed-To-Setup-List ProtocolIE-ID
+id-DRB-To-Setup-List-EUTRAN ProtocolIE-ID
+id-DRB-To-Modify-List-EUTRAN ProtocolIE-ID
+id-DRB-To-Remove-List-EUTRAN ProtocolIE-ID
+id-DRB-Required-To-Modify-List-EUTRAN ProtocolIE-ID
+id-DRB-Required-To-Remove-List-EUTRAN ProtocolIE-ID
+id-DRB-Setup-List-EUTRAN ProtocolIE-ID
+id-DRB-Failed-List-EUTRAN ProtocolIE-ID
+id-DRB-Modified-List-EUTRAN ProtocolIE-ID
+id-DRB-Failed-To-Modify-List-EUTRAN ProtocolIE-ID
+id-DRB-Confirm-Modified-List-EUTRAN ProtocolIE-ID
+id-PDU-Session-Resource-To-Setup-List ProtocolIE-ID
+id-PDU-Session-Resource-To-Modify-List ProtocolIE-ID
+id-PDU-Session-Resource-To-Remove-List ProtocolIE-ID
+id-PDU-Session-Resource-Required-To-Modify-List ProtocolIE-ID
+id-PDU-Session-Resource-Setup-List ProtocolIE-ID
+id-PDU-Session-Resource-Failed-List ProtocolIE-ID
+id-PDU-Session-Resource-Modified-List ProtocolIE-ID
+id-PDU-Session-Resource-Failed-To-Modify-List ProtocolIE-ID
+id-PDU-Session-Resource-Confirm-Modified-List ProtocolIE-ID
+id-DRB-To-Setup-Mod-List-EUTRAN ProtocolIE-ID
+id-DRB-Setup-Mod-List-EUTRAN ProtocolIE-ID
+id-DRB-Failed-Mod-List-EUTRAN ProtocolIE-ID
+id-PDU-Session-Resource-Setup-Mod-List ProtocolIE-ID
+id-PDU-Session-Resource-Failed-Mod-List ProtocolIE-ID
+id-PDU-Session-Resource-To-Setup-Mod-List ProtocolIE-ID
+id-TransactionID ProtocolIE-ID
+id-Serving-PLMN ProtocolIE-ID
+id-UE-Inactivity-Timer ProtocolIE-ID
+id-System-GNB-CU-UP-CounterCheckRequest ProtocolIE-ID
+id-DRBs-Subject-To-Counter-Check-List-EUTRAN ProtocolIE-ID
+id-DRBs-Subject-To-Counter-Check-List-NG-RAN ProtocolIE-ID
+id-PPI ProtocolIE-ID
+id-gNB-CU-UP-Capacity ProtocolIE-ID
+id-GNB-CU-UP-OverloadInformation ProtocolIE-ID
+id-UEDLMaximumIntegrityProtectedDataRate ProtocolIE-ID
+id-PDU-Session-To-Notify-List ProtocolIE-ID
+id-PDU-Session-Resource-Data-Usage-List ProtocolIE-ID
+id-SNSSAI ProtocolIE-ID
+id-DataDiscardRequired ProtocolIE-ID
+id-OldQoSFlowMap-ULendmarkerexpected ProtocolIE-ID
+id-DRB-QoS ProtocolIE-ID
+id-GNB-CU-UP-TNLA-To-Remove-List ProtocolIE-ID
+id-endpoint-IP-Address-and-Port ProtocolIE-ID
+id-TNLAssociationTransportLayerAddressgNBCUUP ProtocolIE-ID
+id-RANUEID ProtocolIE-ID
+id-GNB-DU-ID ProtocolIE-ID
+id-CommonNetworkInstance ProtocolIE-ID
+id-NetworkInstance ProtocolIE-ID
+id-QoSFlowMappingIndication ProtocolIE-ID
+id-TraceActivation ProtocolIE-ID
+id-TraceID ProtocolIE-ID
+id-SubscriberProfileIDforRFP ProtocolIE-ID
+id-AdditionalRRMPriorityIndex ProtocolIE-ID
+id-RetainabilityMeasurementsInfo ProtocolIE-ID
+id-Transport-Layer-Address-Info ProtocolIE-ID
+id-QoSMonitoringRequest ProtocolIE-ID
+id-PDCP-StatusReportIndication ProtocolIE-ID
+id-gNB-CU-CP-Measurement-ID ProtocolIE-ID
+id-gNB-CU-UP-Measurement-ID ProtocolIE-ID
+id-RegistrationRequest ProtocolIE-ID
+id-ReportCharacteristics ProtocolIE-ID
+id-ReportingPeriodicity ProtocolIE-ID
+id-TNL-AvailableCapacityIndicator ProtocolIE-ID
+id-HW-CapacityIndicator ProtocolIE-ID
+id-RedundantCommonNetworkInstance ProtocolIE-ID
+id-redundant-nG-UL-UP-TNL-Information ProtocolIE-ID
+id-redundant-nG-DL-UP-TNL-Information ProtocolIE-ID
+id-RedundantQosFlowIndicator ProtocolIE-ID
+id-TSCTrafficCharacteristics ProtocolIE-ID
+id-CNPacketDelayBudgetDownlink ProtocolIE-ID
+id-CNPacketDelayBudgetUplink ProtocolIE-ID
+id-ExtendedPacketDelayBudget ProtocolIE-ID
+id-AdditionalPDCPduplicationInformation ProtocolIE-ID
+id-RedundantPDUSessionInformation ProtocolIE-ID
+id-RedundantPDUSessionInformation-used ProtocolIE-ID
+id-QoS-Mapping-Information ProtocolIE-ID
+id-DLUPTNLAddressToUpdateList ProtocolIE-ID
+id-ULUPTNLAddressToUpdateList ProtocolIE-ID
+id-NPNSupportInfo ProtocolIE-ID
+id-NPNContextInfo ProtocolIE-ID
+id-MDTConfiguration ProtocolIE-ID
+id-ManagementBasedMDTPLMNList ProtocolIE-ID
+id-TraceCollectionEntityIPAddress ProtocolIE-ID
+id-PrivacyIndicator ProtocolIE-ID
+id-TraceCollectionEntityURI ProtocolIE-ID
+id-URIaddress ProtocolIE-ID
+id-EHC-Parameters ProtocolIE-ID
+id-DRBs-Subject-To-Early-Forwarding-List ProtocolIE-ID
+id-DAPSRequestInfo ProtocolIE-ID
+id-CHOInitiation ProtocolIE-ID
+id-EarlyForwardingCOUNTReq ProtocolIE-ID
+id-EarlyForwardingCOUNTInfo ProtocolIE-ID
+id-AlternativeQoSParaSetList ProtocolIE-ID
+id-ExtendedSliceSupportList ProtocolIE-ID
+id-MCG-OfferedGBRQoSFlowInfo ProtocolIE-ID
+id-Number-of-tunnels ProtocolIE-ID
+id-DRB-Measurement-Results-Information-List ProtocolIE-ID
+id-Extended-GNB-CU-CP-Name ProtocolIE-ID
+id-Extended-GNB-CU-UP-Name ProtocolIE-ID
+id-DataForwardingtoE-UTRANInformationList ProtocolIE-ID
+id-QosMonitoringReportingFrequency ProtocolIE-ID
+id-QoSMonitoringDisabled ProtocolIE-ID
+id-AdditionalHandoverInfo ProtocolIE-ID
+id-Extended-NR-CGI-Support-List ProtocolIE-ID
+id-DataForwardingtoNG-RANQoSFlowInformationList ProtocolIE-ID
+id-MaxCIDEHCDL ProtocolIE-ID
+id-ignoreMappingRuleIndication ProtocolIE-ID
+id-DirectForwardingPathAvailability ProtocolIE-ID
+id-EarlyDataForwardingIndicator ProtocolIE-ID
+id-QoSFlowsDRBRemapping ProtocolIE-ID
+id-DataForwardingSourceIPAddress ProtocolIE-ID
+id-SecurityIndicationModify ProtocolIE-ID
+id-IAB-Donor-CU-UPPSKInfo ProtocolIE-ID
+id-ECGI-Support-List ProtocolIE-ID
+id-MDTPollutedMeasurementIndicator ProtocolIE-ID
+id-M4ReportAmount ProtocolIE-ID
+id-M6ReportAmount ProtocolIE-ID
+id-M7ReportAmount ProtocolIE-ID
+id-UESliceMaximumBitRateList ProtocolIE-ID
+id-PDUSession-PairID ProtocolIE-ID
+id-SurvivalTime ProtocolIE-ID
+id-UDC-Parameters ProtocolIE-ID
+id-SCGActivationStatus ProtocolIE-ID
+id-GNB-CU-CP-MBS-E1AP-ID ProtocolIE-ID
+id-GNB-CU-UP-MBS-E1AP-ID ProtocolIE-ID
+id-GlobalMBSSessionID ProtocolIE-ID
+id-BCBearerContextToSetup ProtocolIE-ID
+id-BCBearerContextToSetupResponse ProtocolIE-ID
+id-BCBearerContextToModify ProtocolIE-ID
+id-BCBearerContextToModifyResponse ProtocolIE-ID
+id-BCBearerContextToModifyRequired ProtocolIE-ID
+id-BCBearerContextToModifyConfirm ProtocolIE-ID
+id-MCBearerContextToSetup ProtocolIE-ID
+id-MCBearerContextToSetupResponse ProtocolIE-ID
+id-MCBearerContextToModify ProtocolIE-ID
+id-MCBearerContextToModifyResponse ProtocolIE-ID
+id-MCBearerContextToModifyRequired ProtocolIE-ID
+id-MCBearerContextToModifyConfirm ProtocolIE-ID
+id-MBSMulticastF1UContextDescriptor ProtocolIE-ID
+id-gNB-CU-UP-MBS-Support-Info ProtocolIE-ID
+id-SecurityIndication ProtocolIE-ID
+id-SecurityResult ProtocolIE-ID
+id-SDTContinueROHC ProtocolIE-ID
+id-SDTindicatorSetup ProtocolIE-ID
+id-SDTindicatorMod ProtocolIE-ID
+id-DiscardTimerExtended ProtocolIE-ID
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID
+id-MCForwardingResourceRequest ProtocolIE-ID
+id-MCForwardingResourceIndication ProtocolIE-ID
+id-MCForwardingResourceResponse ProtocolIE-ID
+id-MCForwardingResourceRelease ProtocolIE-ID
+id-MCForwardingResourceReleaseIndication ProtocolIE-ID
+id-PDCP-COUNT-Reset ProtocolIE-ID
+id-MBSSessionAssociatedInfoNonSupportToSupport ProtocolIE-ID
+id-VersionID ProtocolIE-ID
+id-InactivityInformationRequest ProtocolIE-ID
+id-UEInactivityInformation ProtocolIE-ID
+id-MBSAreaSessionID ProtocolIE-ID
+id-Secondary-PDU-Session-Data-Forwarding-Information ProtocolIE-ID
+id-MBSSessionResourceNotification ProtocolIE-ID
+id-MCBearerContextInactivityTimer ProtocolIE-ID
+id-MCBearerContextStatusChange ProtocolIE-ID
+
+
#.END
#.REGISTER
@@ -395,6 +463,32 @@ Extended-GNB-CU-CP-Name N e1ap.ies id-Extended-GNB-CU-CP-Na
Extended-GNB-CU-UP-Name N e1ap.ies id-Extended-GNB-CU-UP-Name
AdditionalHandoverInfo N e1ap.ies id-AdditionalHandoverInfo
DirectForwardingPathAvailability N e1ap.ies id-DirectForwardingPathAvailability
+IAB-Donor-CU-UPPSKInfo N e1ap.ies id-IAB-Donor-CU-UPPSKInfo
+MDTPollutedMeasurementIndicator N e1ap.ies id-MDTPollutedMeasurementIndicator
+UESliceMaximumBitRateList N e1ap.ies id-UESliceMaximumBitRateList
+SCGActivationStatus N e1ap.ies id-SCGActivationStatus
+GNB-CU-CP-MBS-E1AP-ID N e1ap.ies id-GNB-CU-CP-MBS-E1AP-ID
+GNB-CU-UP-MBS-E1AP-ID N e1ap.ies id-GNB-CU-UP-MBS-E1AP-ID
+GlobalMBSSessionID N e1ap.ies id-GlobalMBSSessionID
+BCBearerContextToSetup N e1ap.ies id-BCBearerContextToSetup
+BCBearerContextToSetupResponse N e1ap.ies id-BCBearerContextToSetupResponse
+BCBearerContextToModify N e1ap.ies id-BCBearerContextToModify
+BCBearerContextToModifyResponse N e1ap.ies id-BCBearerContextToModifyResponse
+BCBearerContextToModifyRequired N e1ap.ies id-BCBearerContextToModifyRequired
+BCBearerContextToModifyConfirm N e1ap.ies id-BCBearerContextToModifyConfirm
+MCBearerContextToSetup N e1ap.ies id-MCBearerContextToSetup
+MCBearerContextToSetupResponse N e1ap.ies id-MCBearerContextToSetupResponse
+MCBearerContextToModify N e1ap.ies id-MCBearerContextToModify
+MCBearerContextToModifyResponse N e1ap.ies id-MCBearerContextToModifyResponse
+MCBearerContextToModifyRequired N e1ap.ies id-MCBearerContextToModifyRequired
+MCBearerContextToModifyConfirm N e1ap.ies id-MCBearerContextToModifyConfirm
+MBSMulticastF1UContextDescriptor N e1ap.ies id-MBSMulticastF1UContextDescriptor
+GNB-CU-UP-MBS-Support-Info N e1ap.ies id-gNB-CU-UP-MBS-Support-Info
+SDTContinueROHC N e1ap.ies id-SDTContinueROHC
+MDTPLMNModificationList N e1ap.ies id-ManagementBasedMDTPLMNModificationList
+InactivityInformationRequest N e1ap.ies id-InactivityInformationRequest
+UEInactivityInformation N e1ap.ies id-UEInactivityInformation
+MBSSessionResourceNotification N e1ap.ies id-MBSSessionResourceNotification
#E1AP-PROTOCOL-EXTENSION
SNSSAI N e1ap.extension id-SNSSAI
@@ -436,6 +530,34 @@ Extended-NR-CGI-Support-List N e1ap.extension id-Extended-NR-CGI
DataForwardingtoNG-RANQoSFlowInformationList N e1ap.extension id-DataForwardingtoNG-RANQoSFlowInformationList
MaxCIDEHCDL N e1ap.extension id-MaxCIDEHCDL
IgnoreMappingRuleIndication N e1ap.extension id-ignoreMappingRuleIndication
+EarlyDataForwardingIndicator N e1ap.extension id-EarlyDataForwardingIndicator
+QoS-Flows-DRB-Remapping N e1ap.extension id-QoSFlowsDRBRemapping
+TransportLayerAddress N e1ap.extension id-DataForwardingSourceIPAddress
+SecurityIndication N e1ap.extension id-SecurityIndicationModify
+ECGI-Support-List N e1ap.extension id-ECGI-Support-List
+M4ReportAmount N e1ap.extension id-M4ReportAmount
+M6ReportAmount N e1ap.extension id-M6ReportAmount
+M7ReportAmount N e1ap.extension id-M7ReportAmount
+PDUSession-PairID N e1ap.extension id-PDUSession-PairID
+SurvivalTime N e1ap.extension id-SurvivalTime
+UDC-Parameters N e1ap.extension id-UDC-Parameters
+SecurityIndication N e1ap.extension id-SecurityIndication
+SecurityResult N e1ap.extension id-SecurityResult
+SDTindicatorSetup N e1ap.extension id-SDTindicatorSetup
+SDTindicatorMod N e1ap.extension id-SDTindicatorMod
+DiscardTimerExtended N e1ap.extension id-DiscardTimerExtended
+MCForwardingResourceRequest N e1ap.extension id-MCForwardingResourceRequest
+MCForwardingResourceIndication N e1ap.extension id-MCForwardingResourceIndication
+MCForwardingResourceResponse N e1ap.extension id-MCForwardingResourceResponse
+MCForwardingResourceRelease N e1ap.extension id-MCForwardingResourceRelease
+MCForwardingResourceReleaseIndication N e1ap.extension id-MCForwardingResourceReleaseIndication
+PDCP-COUNT-Reset N e1ap.extension id-PDCP-COUNT-Reset
+MBSSessionAssociatedInfoNonSupportToSupport N e1ap.extension id-MBSSessionAssociatedInfoNonSupportToSupport
+VersionID N e1ap.extension id-VersionID
+MBSAreaSessionID N e1ap.extension id-MBSAreaSessionID
+Data-Forwarding-Information N e1ap.extension id-Secondary-PDU-Session-Data-Forwarding-Information
+Inactivity-Timer N e1ap.extension id-MCBearerContextInactivityTimer
+MCBearerContextStatusChange N e1ap.extension id-MCBearerContextStatusChange
#E1AP-ELEMENTARY-PROCEDURE
Reset N e1ap.proc.imsg id-reset
@@ -514,6 +636,42 @@ CellTrafficTrace N e1ap.proc.imsg id-CellTrafficTrace
EarlyForwardingSNTransfer N e1ap.proc.imsg id-earlyForwardingSNTransfer
+IABPSKNotification N e1ap.proc.imsg id-iABPSKNotification
+
+BCBearerContextSetupRequest N e1ap.proc.imsg id-BCBearerContextSetup
+BCBearerContextSetupResponse N e1ap.proc.sout id-BCBearerContextSetup
+BCBearerContextSetupFailure N e1ap.proc.uout id-BCBearerContextSetup
+
+BCBearerContextModificationRequest N e1ap.proc.imsg id-BCBearerContextModification
+BCBearerContextModificationResponse N e1ap.proc.sout id-BCBearerContextModification
+BCBearerContextModificationFailure N e1ap.proc.uout id-BCBearerContextModification
+
+BCBearerContextModificationRequired N e1ap.proc.imsg id-BCBearerContextModificationRequired
+BCBearerContextModificationConfirm N e1ap.proc.sout id-BCBearerContextModificationRequired
+
+BCBearerContextReleaseCommand N e1ap.proc.imsg id-BCBearerContextRelease
+BCBearerContextReleaseComplete N e1ap.proc.sout id-BCBearerContextRelease
+
+BCBearerContextReleaseRequest N e1ap.proc.imsg id-BCBearerContextReleaseRequest
+
+MCBearerContextSetupRequest N e1ap.proc.imsg id-MCBearerContextSetup
+MCBearerContextSetupResponse N e1ap.proc.sout id-MCBearerContextSetup
+MCBearerContextSetupFailure N e1ap.proc.uout id-MCBearerContextSetup
+
+MCBearerContextModificationRequest N e1ap.proc.imsg id-MCBearerContextModification
+MCBearerContextModificationResponse N e1ap.proc.sout id-MCBearerContextModification
+MCBearerContextModificationFailure N e1ap.proc.uout id-MCBearerContextModification
+
+MCBearerContextModificationRequired N e1ap.proc.imsg id-MCBearerContextModificationRequired
+MCBearerContextModificationConfirm N e1ap.proc.sout id-MCBearerContextModificationRequired
+
+MCBearerNotification N e1ap.proc.imsg id-MCBearerNotification
+
+MCBearerContextReleaseCommand N e1ap.proc.imsg id-MCBearerContextRelease
+MCBearerContextReleaseComplete N e1ap.proc.sout id-MCBearerContextRelease
+
+MCBearerContextReleaseRequest N e1ap.proc.imsg id-MCBearerContextReleaseRequest
+
#.FN_BODY PLMN-Identity VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
e1ap_private_data_t *e1ap_data = e1ap_get_private_data(actx->pinfo);
@@ -702,6 +860,12 @@ DRB-Measurement-Results-Information-Item/uL-D1-Result DISPLAY = BASE_CUSTOM STRI
#.TYPE_ATTR
QosMonitoringReportingFrequency DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+#.TYPE_ATTR
+SurvivalTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
+
+#.TYPE_ATTR
+UEInactivityInformation DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
#.FN_HDR Reset
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Reset");
#.FN_HDR ResetAcknowledge
@@ -798,6 +962,54 @@ QosMonitoringReportingFrequency DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace");
#.FN_HDR EarlyForwardingSNTransfer
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "EarlyForwardingSNTransfer");
+#.FN_HDR IABPSKNotification
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABPSKNotification");
+#.FN_HDR BCBearerContextSetupRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextSetupRequest");
+#.FN_HDR BCBearerContextSetupResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextSetupResponse");
+#.FN_HDR BCBearerContextSetupFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextSetupFailure");
+#.FN_HDR BCBearerContextModificationRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextModificationRequest");
+#.FN_HDR BCBearerContextModificationResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextModificationResponse");
+#.FN_HDR BCBearerContextModificationFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextModificationFailure");
+#.FN_HDR BCBearerContextModificationRequired
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextModificationRequired");
+#.FN_HDR BCBearerContextModificationConfirm
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextModificationConfirm");
+#.FN_HDR BCBearerContextReleaseCommand
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextReleaseCommand");
+#.FN_HDR BCBearerContextReleaseComplete
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextReleaseComplete");
+#.FN_HDR BCBearerContextReleaseRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BCBearerContextReleaseRequest");
+#.FN_HDR MCBearerContextSetupRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextSetupRequest");
+#.FN_HDR MCBearerContextSetupResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextSetupResponse");
+#.FN_HDR MCBearerContextSetupFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextSetupFailure");
+#.FN_HDR MCBearerContextModificationRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextModificationRequest");
+#.FN_HDR MCBearerContextModificationResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextModificationResponse");
+#.FN_HDR MCBearerContextModificationFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextModificationFailure");
+#.FN_HDR MCBearerContextModificationRequired
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextModificationRequired");
+#.FN_HDR MCBearerContextModificationConfirm
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextModificationConfirm");
+#.FN_HDR MCBearerNotification
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerNotification");
+#.FN_HDR MCBearerContextReleaseCommand
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextReleaseCommand");
+#.FN_HDR MCBearerContextReleaseComplete
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextReleaseComplete");
+#.FN_HDR MCBearerContextReleaseRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MCBearerContextReleaseRequest");
#.END
#
diff --git a/epan/dissectors/asn1/e1ap/packet-e1ap-template.c b/epan/dissectors/asn1/e1ap/packet-e1ap-template.c
index 82482ffa4f..b37d7bb3d0 100644
--- a/epan/dissectors/asn1/e1ap/packet-e1ap-template.c
+++ b/epan/dissectors/asn1/e1ap/packet-e1ap-template.c
@@ -1,6 +1,6 @@
/* packet-e1ap.c
* Routines for E-UTRAN E1 Application Protocol (E1AP) packet dissection
- * Copyright 2018-2020, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2018-2024, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -8,7 +8,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * References: 3GPP TS 38.463 V16.6.0 (2021-07)
+ * References: 3GPP TS 37.483 V17.7.0 (2023-12)
*/
#include "config.h"
@@ -38,35 +38,35 @@ void proto_reg_handoff_e1ap(void);
#include "packet-e1ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_e1ap = -1;
-
-static int hf_e1ap_transportLayerAddressIPv4 = -1;
-static int hf_e1ap_transportLayerAddressIPv6 = -1;
-static int hf_e1ap_InterfacesToTrace_NG_C = -1;
-static int hf_e1ap_InterfacesToTrace_Xn_C = -1;
-static int hf_e1ap_InterfacesToTrace_Uu = -1;
-static int hf_e1ap_InterfacesToTrace_F1_C = -1;
-static int hf_e1ap_InterfacesToTrace_E1 = -1;
-static int hf_e1ap_InterfacesToTrace_Reserved = -1;
-static int hf_e1ap_MeasurementsToActivate_Reserved1 = -1;
-static int hf_e1ap_MeasurementsToActivate_M4 = -1;
-static int hf_e1ap_MeasurementsToActivate_Reserved2 = -1;
-static int hf_e1ap_MeasurementsToActivate_M6 = -1;
-static int hf_e1ap_MeasurementsToActivate_M7 = -1;
-static int hf_e1ap_ReportCharacteristics_TNLAvailableCapacityIndPeriodic = -1;
-static int hf_e1ap_ReportCharacteristics_HWCapacityIndPeriodic = -1;
-static int hf_e1ap_ReportCharacteristics_Reserved = -1;
-static int hf_e1ap_tcp_pdu_len = -1;
+static int proto_e1ap;
+
+static int hf_e1ap_transportLayerAddressIPv4;
+static int hf_e1ap_transportLayerAddressIPv6;
+static int hf_e1ap_InterfacesToTrace_NG_C;
+static int hf_e1ap_InterfacesToTrace_Xn_C;
+static int hf_e1ap_InterfacesToTrace_Uu;
+static int hf_e1ap_InterfacesToTrace_F1_C;
+static int hf_e1ap_InterfacesToTrace_E1;
+static int hf_e1ap_InterfacesToTrace_Reserved;
+static int hf_e1ap_MeasurementsToActivate_Reserved1;
+static int hf_e1ap_MeasurementsToActivate_M4;
+static int hf_e1ap_MeasurementsToActivate_Reserved2;
+static int hf_e1ap_MeasurementsToActivate_M6;
+static int hf_e1ap_MeasurementsToActivate_M7;
+static int hf_e1ap_ReportCharacteristics_TNLAvailableCapacityIndPeriodic;
+static int hf_e1ap_ReportCharacteristics_HWCapacityIndPeriodic;
+static int hf_e1ap_ReportCharacteristics_Reserved;
+static int hf_e1ap_tcp_pdu_len;
#include "packet-e1ap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_e1ap = -1;
-static gint ett_e1ap_PLMN_Identity = -1;
-static gint ett_e1ap_TransportLayerAddress = -1;
-static gint ett_e1ap_InterfacesToTrace = -1;
-static gint ett_e1ap_MeasurementsToActivate = -1;
-static gint ett_e1ap_ReportCharacteristics = -1;
-static gint ett_e1ap_BurstArrivalTime = -1;
+static gint ett_e1ap;
+static gint ett_e1ap_PLMN_Identity;
+static gint ett_e1ap_TransportLayerAddress;
+static gint ett_e1ap_InterfacesToTrace;
+static gint ett_e1ap_MeasurementsToActivate;
+static gint ett_e1ap_ReportCharacteristics;
+static gint ett_e1ap_BurstArrivalTime;
#include "packet-e1ap-ett.c"
enum{
@@ -100,27 +100,22 @@ static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, pro
static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
-static const true_false_string e1ap_tfs_InterfacesToTrace = {
- "Should be traced",
- "Should not be traced"
-};
-
static void
e1ap_MaxPacketLossRate_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
}
static void
e1ap_PacketDelayBudget_uL_D1_Result_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
}
static void
e1ap_ExtendedPacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
}
static e1ap_private_data_t*
@@ -241,23 +236,23 @@ void proto_register_e1ap(void) {
NULL, HFILL }},
{ &hf_e1ap_InterfacesToTrace_NG_C,
{ "NG-C", "e1ap.InterfacesToTrace.NG_C",
- FT_BOOLEAN, 8, TFS(&e1ap_tfs_InterfacesToTrace), 0x80,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x80,
NULL, HFILL }},
{ &hf_e1ap_InterfacesToTrace_Xn_C,
{ "Xn-C", "e1ap.InterfacesToTrace.Xn_C",
- FT_BOOLEAN, 8, TFS(&e1ap_tfs_InterfacesToTrace), 0x40,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x40,
NULL, HFILL }},
{ &hf_e1ap_InterfacesToTrace_Uu,
{ "Uu", "e1ap.InterfacesToTrace.Uu",
- FT_BOOLEAN, 8, TFS(&e1ap_tfs_InterfacesToTrace), 0x20,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x20,
NULL, HFILL }},
{ &hf_e1ap_InterfacesToTrace_F1_C,
{ "F1-C", "e1ap.InterfacesToTrace.F1_C",
- FT_BOOLEAN, 8, TFS(&e1ap_tfs_InterfacesToTrace), 0x10,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x10,
NULL, HFILL }},
{ &hf_e1ap_InterfacesToTrace_E1,
{ "E1", "e1ap.InterfacesToTrace.E1",
- FT_BOOLEAN, 8, TFS(&e1ap_tfs_InterfacesToTrace), 0x08,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x08,
NULL, HFILL }},
{ &hf_e1ap_InterfacesToTrace_Reserved,
{ "Reserved", "e1ap.InterfacesToTrace.Reserved",
diff --git a/epan/dissectors/asn1/e2ap/CMakeLists.txt b/epan/dissectors/asn1/e2ap/CMakeLists.txt
index b82a03b844..fb5efef436 100755..100644
--- a/epan/dissectors/asn1/e2ap/CMakeLists.txt
+++ b/epan/dissectors/asn1/e2ap/CMakeLists.txt
@@ -12,7 +12,7 @@ set( PROTOCOL_NAME e2ap )
set( PROTO_OPT )
set( EXPORT_FILES
- ${PROTOCOL_NAME}-exp.cnf
+ ${PROTOCOL_NAME}-exp.cnf
)
set( EXT_ASN_FILE_LIST
@@ -25,7 +25,10 @@ set( ASN_FILE_LIST
E2AP-IEs.asn
E2AP-PDU-Contents.asn
E2AP-PDU-Descriptions.asn
- e2sm-kpm-v1.asn
+ e2sm-v3.01.asn
+ e2sm-rc-v1.03.asn
+ e2sm-kpm-v3.00.asn
+ e2sm-ni-v1.00.asn
)
set( EXTRA_DIST
diff --git a/epan/dissectors/asn1/e2ap/E2AP-CommonDataTypes.asn b/epan/dissectors/asn1/e2ap/E2AP-CommonDataTypes.asn
index 3901fab690..7f3e526256 100755..100644
--- a/epan/dissectors/asn1/e2ap/E2AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/e2ap/E2AP-CommonDataTypes.asn
@@ -2,12 +2,12 @@
-- **************************************************************
--
-- Common definitions
--- Derived from 3GPP 38.413 v15.4.0
+-- Derived from 3GPP 38.413 (NGAP)
--
-- **************************************************************
E2AP-CommonDataTypes {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-CommonDataTypes (3) }
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-CommonDataTypes (3) }
DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/e2ap/E2AP-Constants.asn b/epan/dissectors/asn1/e2ap/E2AP-Constants.asn
index 4947634a83..a38b7f26c8 100755..100644
--- a/epan/dissectors/asn1/e2ap/E2AP-Constants.asn
+++ b/epan/dissectors/asn1/e2ap/E2AP-Constants.asn
@@ -6,15 +6,15 @@
-- **************************************************************
E2AP-Constants {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-Constants (4) }
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-Constants (4) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
-ProcedureCode,
-ProtocolIE-ID
+ ProcedureCode,
+ ProtocolIE-ID
FROM E2AP-CommonDataTypes;
-- **************************************************************
@@ -31,6 +31,13 @@ id-RICserviceQuery ProcedureCode ::= 6
id-RICserviceUpdate ProcedureCode ::= 7
id-RICsubscription ProcedureCode ::= 8
id-RICsubscriptionDelete ProcedureCode ::= 9
+id-E2nodeConfigurationUpdate ProcedureCode ::= 10
+id-E2connectionUpdate ProcedureCode ::= 11
+id-RICsubscriptionDeleteRequired ProcedureCode ::= 12
+id-E2removal ProcedureCode ::= 13
+id-RICsubscriptionModification ProcedureCode ::= 14
+id-RICsubscriptionModificationRequired ProcedureCode ::= 15
+id-RICquery ProcedureCode ::= 16
-- **************************************************************
--
@@ -47,47 +54,112 @@ maxProtocolIEs INTEGER ::= 65535
--
-- **************************************************************
maxnoofErrors INTEGER ::= 256
+maxofE2nodeComponents INTEGER ::= 1024
maxofRANfunctionID INTEGER ::= 256
maxofRICactionID INTEGER ::= 16
+maxofTNLA INTEGER ::= 32
+maxofRICrequestID INTEGER ::= 1024
+
-- **************************************************************
--
-- IEs
--
-- **************************************************************
-id-Cause ProtocolIE-ID ::= 1
-id-CriticalityDiagnostics ProtocolIE-ID ::= 2
-id-GlobalE2node-ID ProtocolIE-ID ::= 3
-id-GlobalRIC-ID ProtocolIE-ID ::= 4
-id-RANfunctionID ProtocolIE-ID ::= 5
-id-RANfunctionID-Item ProtocolIE-ID ::= 6
-id-RANfunctionIEcause-Item ProtocolIE-ID ::= 7
-id-RANfunction-Item ProtocolIE-ID ::= 8
-id-RANfunctionsAccepted ProtocolIE-ID ::= 9
-id-RANfunctionsAdded ProtocolIE-ID ::= 10
-id-RANfunctionsDeleted ProtocolIE-ID ::= 11
-id-RANfunctionsModified ProtocolIE-ID ::= 12
-id-RANfunctionsRejected ProtocolIE-ID ::= 13
-id-RICaction-Admitted-Item ProtocolIE-ID ::= 14
-id-RICactionID ProtocolIE-ID ::= 15
-id-RICaction-NotAdmitted-Item ProtocolIE-ID ::= 16
-id-RICactions-Admitted ProtocolIE-ID ::= 17
-id-RICactions-NotAdmitted ProtocolIE-ID ::= 18
-id-RICaction-ToBeSetup-Item ProtocolIE-ID ::= 19
-id-RICcallProcessID ProtocolIE-ID ::= 20
-id-RICcontrolAckRequest ProtocolIE-ID ::= 21
-id-RICcontrolHeader ProtocolIE-ID ::= 22
-id-RICcontrolMessage ProtocolIE-ID ::= 23
-id-RICcontrolStatus ProtocolIE-ID ::= 24
-id-RICindicationHeader ProtocolIE-ID ::= 25
-id-RICindicationMessage ProtocolIE-ID ::= 26
-id-RICindicationSN ProtocolIE-ID ::= 27
-id-RICindicationType ProtocolIE-ID ::= 28
-id-RICrequestID ProtocolIE-ID ::= 29
-id-RICsubscriptionDetails ProtocolIE-ID ::= 30
-id-TimeToWait ProtocolIE-ID ::= 31
-id-RICcontrolOutcome ProtocolIE-ID ::= 32
-
-
+id-Cause ProtocolIE-ID ::= 1
+id-CriticalityDiagnostics ProtocolIE-ID ::= 2
+id-GlobalE2node-ID ProtocolIE-ID ::= 3
+id-GlobalRIC-ID ProtocolIE-ID ::= 4
+id-RANfunctionID ProtocolIE-ID ::= 5
+id-RANfunctionID-Item ProtocolIE-ID ::= 6
+id-RANfunctionIEcause-Item ProtocolIE-ID ::= 7
+id-RANfunction-Item ProtocolIE-ID ::= 8
+id-RANfunctionsAccepted ProtocolIE-ID ::= 9
+id-RANfunctionsAdded ProtocolIE-ID ::= 10
+id-RANfunctionsDeleted ProtocolIE-ID ::= 11
+id-RANfunctionsModified ProtocolIE-ID ::= 12
+id-RANfunctionsRejected ProtocolIE-ID ::= 13
+id-RICaction-Admitted-Item ProtocolIE-ID ::= 14
+id-RICactionID ProtocolIE-ID ::= 15
+id-RICaction-NotAdmitted-Item ProtocolIE-ID ::= 16
+id-RICactions-Admitted ProtocolIE-ID ::= 17
+id-RICactions-NotAdmitted ProtocolIE-ID ::= 18
+id-RICaction-ToBeSetup-Item ProtocolIE-ID ::= 19
+id-RICcallProcessID ProtocolIE-ID ::= 20
+id-RICcontrolAckRequest ProtocolIE-ID ::= 21
+id-RICcontrolHeader ProtocolIE-ID ::= 22
+id-RICcontrolMessage ProtocolIE-ID ::= 23
+id-RICcontrolStatus ProtocolIE-ID ::= 24
+id-RICindicationHeader ProtocolIE-ID ::= 25
+id-RICindicationMessage ProtocolIE-ID ::= 26
+id-RICindicationSN ProtocolIE-ID ::= 27
+id-RICindicationType ProtocolIE-ID ::= 28
+id-RICrequestID ProtocolIE-ID ::= 29
+id-RICsubscriptionDetails ProtocolIE-ID ::= 30
+id-TimeToWait ProtocolIE-ID ::= 31
+id-RICcontrolOutcome ProtocolIE-ID ::= 32
+id-E2nodeComponentConfigUpdate ProtocolIE-ID ::= 33
+id-E2nodeComponentConfigUpdate-Item ProtocolIE-ID ::= 34
+id-E2nodeComponentConfigUpdateAck ProtocolIE-ID ::= 35
+id-E2nodeComponentConfigUpdateAck-Item ProtocolIE-ID ::= 36
+id-E2connectionSetup ProtocolIE-ID ::= 39
+id-E2connectionSetupFailed ProtocolIE-ID ::= 40
+id-E2connectionSetupFailed-Item ProtocolIE-ID ::= 41
+id-E2connectionFailed-Item ProtocolIE-ID ::= 42
+id-E2connectionUpdate-Item ProtocolIE-ID ::= 43
+id-E2connectionUpdateAdd ProtocolIE-ID ::= 44
+id-E2connectionUpdateModify ProtocolIE-ID ::= 45
+id-E2connectionUpdateRemove ProtocolIE-ID ::= 46
+id-E2connectionUpdateRemove-Item ProtocolIE-ID ::= 47
+id-TNLinformation ProtocolIE-ID ::= 48
+id-TransactionID ProtocolIE-ID ::= 49
+id-E2nodeComponentConfigAddition ProtocolIE-ID ::= 50
+id-E2nodeComponentConfigAddition-Item ProtocolIE-ID ::= 51
+id-E2nodeComponentConfigAdditionAck ProtocolIE-ID ::= 52
+id-E2nodeComponentConfigAdditionAck-Item ProtocolIE-ID ::= 53
+id-E2nodeComponentConfigRemoval ProtocolIE-ID ::= 54
+id-E2nodeComponentConfigRemoval-Item ProtocolIE-ID ::= 55
+id-E2nodeComponentConfigRemovalAck ProtocolIE-ID ::= 56
+id-E2nodeComponentConfigRemovalAck-Item ProtocolIE-ID ::= 57
+id-E2nodeTNLassociationRemoval ProtocolIE-ID ::= 58
+id-E2nodeTNLassociationRemoval-Item ProtocolIE-ID ::= 59
+id-RICsubscriptionToBeRemoved ProtocolIE-ID ::= 60
+id-RICsubscription-withCause-Item ProtocolIE-ID ::= 61
+id-RICsubscriptionStartTime ProtocolIE-ID ::= 62
+id-RICsubscriptionEndTime ProtocolIE-ID ::= 63
+id-RICeventTriggerDefinitionToBeModified ProtocolIE-ID ::= 64
+id-RICactionsToBeRemovedForModification-List ProtocolIE-ID ::= 65
+id-RICaction-ToBeRemovedForModification-Item ProtocolIE-ID ::= 66
+id-RICactionsToBeModifiedForModification-List ProtocolIE-ID ::= 67
+id-RICaction-ToBeModifiedForModification-Item ProtocolIE-ID ::= 68
+id-RICactionsToBeAddedForModification-List ProtocolIE-ID ::= 69
+id-RICaction-ToBeAddedForModification-Item ProtocolIE-ID ::= 70
+id-RICactionsRemovedForModification-List ProtocolIE-ID ::= 71
+id-RICaction-RemovedForModification-Item ProtocolIE-ID ::= 72
+id-RICactionsFailedToBeRemovedForModification-List ProtocolIE-ID ::= 73
+id-RICaction-FailedToBeRemovedForModification-Item ProtocolIE-ID ::= 74
+id-RICactionsModifiedForModification-List ProtocolIE-ID ::= 75
+id-RICaction-ModifiedForModification-Item ProtocolIE-ID ::= 76
+id-RICactionsFailedToBeModifiedForModification-List ProtocolIE-ID ::= 77
+id-RICaction-FailedToBeModifiedForModification-Item ProtocolIE-ID ::= 78
+id-RICactionsAddedForModification-List ProtocolIE-ID ::= 79
+id-RICaction-AddedForModification-Item ProtocolIE-ID ::= 80
+id-RICactionsFailedToBeAddedForModification-List ProtocolIE-ID ::= 81
+id-RICaction-FailedToBeAddedForModification-Item ProtocolIE-ID ::= 82
+id-RICactionsRequiredToBeModified-List ProtocolIE-ID ::= 83
+id-RICaction-RequiredToBeModified-Item ProtocolIE-ID ::= 84
+id-RICactionsRequiredToBeRemoved-List ProtocolIE-ID ::= 85
+id-RICaction-RequiredToBeRemoved-Item ProtocolIE-ID ::= 86
+id-RICactionsConfirmedForModification-List ProtocolIE-ID ::= 87
+id-RICaction-ConfirmedForModification-Item ProtocolIE-ID ::= 88
+id-RICactionsRefusedToBeModified-List ProtocolIE-ID ::= 89
+id-RICaction-RefusedToBeModified-Item ProtocolIE-ID ::= 90
+id-RICactionsConfirmedForRemoval-List ProtocolIE-ID ::= 91
+id-RICaction-ConfirmedForRemoval-Item ProtocolIE-ID ::= 92
+id-RICactionsRefusedToBeRemoved-List ProtocolIE-ID ::= 93
+id-RICaction-RefusedToBeRemoved-Item ProtocolIE-ID ::= 94
+id-RICqueryHeader ProtocolIE-ID ::= 95
+id-RICqueryDefinition ProtocolIE-ID ::= 96
+id-RICqueryOutcome ProtocolIE-ID ::= 97
END
-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/E2AP-Containers.asn b/epan/dissectors/asn1/e2ap/E2AP-Containers.asn
index b07d354ff8..11bf4dacd2 100755..100644
--- a/epan/dissectors/asn1/e2ap/E2AP-Containers.asn
+++ b/epan/dissectors/asn1/e2ap/E2AP-Containers.asn
@@ -3,11 +3,11 @@
--
-- Container definitions
--
--- derived from 3GPP 38.413 v15.4.0
+-- derived from 3GPP 38.413 (NGAP)
-- **************************************************************
E2AP-Containers {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-Containers (5) }
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-Containers (5) }
DEFINITIONS AUTOMATIC TAGS ::=
@@ -21,14 +21,12 @@ BEGIN
IMPORTS
-Criticality,
-Presence,
-PrivateIE-ID,
-ProtocolExtensionID,
-ProtocolIE-ID
+ Criticality,
+ Presence,
+ ProtocolIE-ID
FROM E2AP-CommonDataTypes
-maxProtocolIEs
+ maxProtocolIEs
FROM E2AP-Constants;
-- **************************************************************
@@ -38,16 +36,16 @@ FROM E2AP-Constants;
-- **************************************************************
E2AP-PROTOCOL-IES ::= CLASS {
-&id ProtocolIE-ID UNIQUE,
-&criticality Criticality,
-&Value,
-&presence Presence
+ &id ProtocolIE-ID UNIQUE,
+ &criticality Criticality,
+ &Value,
+ &presence Presence
}
WITH SYNTAX {
-ID &id
-CRITICALITY &criticality
-TYPE &Value
-PRESENCE &presence
+ ID &id
+ CRITICALITY &criticality
+ TYPE &Value
+ PRESENCE &presence
}
-- **************************************************************
@@ -57,20 +55,20 @@ PRESENCE &presence
-- **************************************************************
E2AP-PROTOCOL-IES-PAIR ::= CLASS {
-&id ProtocolIE-ID UNIQUE,
-&firstCriticality Criticality,
-&FirstValue,
-&secondCriticality Criticality,
-&SecondValue,
-&presence Presence
+ &id ProtocolIE-ID UNIQUE,
+ &firstCriticality Criticality,
+ &FirstValue,
+ &secondCriticality Criticality,
+ &SecondValue,
+ &presence Presence
}
WITH SYNTAX {
-ID &id
-FIRST CRITICALITY &firstCriticality
-FIRST TYPE &FirstValue
-SECOND CRITICALITY &secondCriticality
-SECOND TYPE &SecondValue
-PRESENCE &presence
+ ID &id
+ FIRST CRITICALITY &firstCriticality
+ FIRST TYPE &FirstValue
+ SECOND CRITICALITY &secondCriticality
+ SECOND TYPE &SecondValue
+ PRESENCE &presence
}
@@ -83,16 +81,16 @@ PRESENCE &presence
-- **************************************************************
ProtocolIE-Container {E2AP-PROTOCOL-IES : IEsSetParam} ::=
-SEQUENCE (SIZE (0..maxProtocolIEs)) OF
-ProtocolIE-Field {{IEsSetParam}}
+ SEQUENCE (SIZE (0..maxProtocolIEs)) OF
+ ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-SingleContainer {E2AP-PROTOCOL-IES : IEsSetParam} ::=
-ProtocolIE-Field {{IEsSetParam}}
+ ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field {E2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
-id E2AP-PROTOCOL-IES.&id ({IEsSetParam}),
-criticality E2AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
-value E2AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
+ id E2AP-PROTOCOL-IES.&id ({IEsSetParam}),
+ criticality E2AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
+ value E2AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
}
-- **************************************************************
@@ -102,15 +100,15 @@ value E2AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
-- **************************************************************
ProtocolIE-ContainerPair {E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
-SEQUENCE (SIZE (0..maxProtocolIEs)) OF
-ProtocolIE-FieldPair {{IEsSetParam}}
+ SEQUENCE (SIZE (0..maxProtocolIEs)) OF
+ ProtocolIE-FieldPair {{IEsSetParam}}
ProtocolIE-FieldPair {E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
-id E2AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}),
-firstCriticality E2AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}),
-firstValue E2AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}),
-secondCriticality E2AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}),
-secondValue E2AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
+ id E2AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}),
+ firstCriticality E2AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}),
+ firstValue E2AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}),
+ secondCriticality E2AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}),
+ secondValue E2AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
}
-- **************************************************************
@@ -120,12 +118,12 @@ secondValue E2AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
-- **************************************************************
ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, E2AP-PROTOCOL-IES : IEsSetParam} ::=
-SEQUENCE (SIZE (lowerBound..upperBound)) OF
-ProtocolIE-SingleContainer {{IEsSetParam}}
+ SEQUENCE (SIZE (lowerBound..upperBound)) OF
+ ProtocolIE-SingleContainer {{IEsSetParam}}
ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
-SEQUENCE (SIZE (lowerBound..upperBound)) OF
-ProtocolIE-ContainerPair {{IEsSetParam}}
+ SEQUENCE (SIZE (lowerBound..upperBound)) OF
+ ProtocolIE-ContainerPair {{IEsSetParam}}
END
diff --git a/epan/dissectors/asn1/e2ap/E2AP-IEs.asn b/epan/dissectors/asn1/e2ap/E2AP-IEs.asn
index 8e046bfaee..52e856d7ba 100755..100644
--- a/epan/dissectors/asn1/e2ap/E2AP-IEs.asn
+++ b/epan/dissectors/asn1/e2ap/E2AP-IEs.asn
@@ -6,221 +6,329 @@
-- **************************************************************
E2AP-IEs {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-IEs (2)}
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-IEs (2)}
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
-Criticality,
-Presence,
-ProcedureCode,
-ProtocolIE-ID,
-TriggeringMessage
+ Criticality,
+ Presence,
+ ProcedureCode,
+ ProtocolIE-ID,
+ TriggeringMessage
FROM E2AP-CommonDataTypes
-maxnoofErrors,
-maxProtocolIEs
+ maxnoofErrors,
+ maxProtocolIEs
FROM E2AP-Constants;
-- A
+
+-- **************************************************************
+-- [New for E2AP v02.00] copied from 3GPP 38.413 (NGAP) IEs
+-- **************************************************************
+AMFName ::= PrintableString (SIZE(1..150, ...))
+
-- B
-- C
Cause ::= CHOICE {
-ricRequest CauseRIC,
-ricService CauseRICservice,
-transport CauseTransport,
-protocol CauseProtocol,
-misc CauseMisc,
-...
+ ricRequest CauseRICrequest,
+ ricService CauseRICservice,
+ e2Node CauseE2node,
+ transport CauseTransport,
+ protocol CauseProtocol,
+ misc CauseMisc,
+ ...
+}
+
+CauseE2node ::= ENUMERATED {
+ e2node-component-unknown,
+ ...
}
CauseMisc ::= ENUMERATED {
-control-processing-overload,
-hardware-failure,
-om-intervention,
-unspecified,
-...
+ control-processing-overload,
+ hardware-failure,
+ om-intervention,
+ unspecified,
+ ...
}
+
CauseProtocol ::= ENUMERATED {
-transfer-syntax-error,
-abstract-syntax-error-reject,
-abstract-syntax-error-ignore-and-notify,
-message-not-compatible-with-receiver-state,
-semantic-error,
-abstract-syntax-error-falsely-constructed-message,
-unspecified,
-...
-}
-
-CauseRIC ::= ENUMERATED {
-ran-function-id-Invalid,
-action-not-supported,
-excessive-actions,
-duplicate-action,
-duplicate-event,
-function-resource-limit,
-request-id-unknown,
-inconsistent-action-subsequent-action-sequence,
-control-message-invalid,
-call-process-id-invalid,
-unspecified,
-...
+ transfer-syntax-error,
+ abstract-syntax-error-reject,
+ abstract-syntax-error-ignore-and-notify,
+ message-not-compatible-with-receiver-state,
+ semantic-error,
+ abstract-syntax-error-falsely-constructed-message,
+ unspecified,
+ ...
+}
+
+CauseRICrequest ::= ENUMERATED {
+ ran-function-id-invalid,
+ action-not-supported,
+ excessive-actions,
+ duplicate-action,
+ duplicate-event-trigger,
+ function-resource-limit,
+ request-id-unknown,
+ inconsistent-action-subsequent-action-sequence,
+ control-message-invalid,
+ ric-call-process-id-invalid,
+ control-timer-expired,
+ control-failed-to-execute,
+ system-not-ready,
+ unspecified,
+ ... ,
+ ric-subscription-end-time-expired,
+ ric-subscription-end-time-invalid,
+ duplicate-ric-request-id,
+ eventTriggerNotSupported,
+ requested-information-unavailable,
+ invalid-information-request
}
CauseRICservice ::= ENUMERATED{
-function-not-required,
-excessive-functions,
-ric-resource-limit,
-...
+ ran-function-not-supported,
+ excessive-functions,
+ ric-resource-limit,
+ ...
}
CauseTransport ::= ENUMERATED {
-unspecified,
-transport-resource-unavailable,
-...
+ unspecified,
+ transport-resource-unavailable,
+ ...
}
-- **************************************************************
--- copied from 3GPP 38.413 NGAP IEs v15.5.0
+-- copied from 3GPP 38.413 (NGAP) IEs
-- note: ie-Extensions removed
-- **************************************************************
CriticalityDiagnostics ::= SEQUENCE {
-procedureCode ProcedureCode OPTIONAL,
-triggeringMessage TriggeringMessage OPTIONAL,
-procedureCriticality Criticality OPTIONAL,
-ricRequestorID RICrequestID OPTIONAL,
-iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
-...
+ procedureCode ProcedureCode OPTIONAL,
+ triggeringMessage TriggeringMessage OPTIONAL,
+ procedureCriticality Criticality OPTIONAL,
+ ricRequestorID RICrequestID OPTIONAL,
+ iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
+ ...
}
CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE(1..maxnoofErrors)) OF CriticalityDiagnostics-IE-Item
CriticalityDiagnostics-IE-Item ::= SEQUENCE {
-iECriticality Criticality,
-iE-ID ProtocolIE-ID,
-typeOfError TypeOfError,
-...
+ iECriticality Criticality,
+ iE-ID ProtocolIE-ID,
+ typeOfError TypeOfError,
+ ...
}
-- D
-- E
+-- Following IE used to carry 3GPP defined SETUP and RAN Configuration messages defined in F1AP, E1AP, XnAP, etc.
+E2nodeComponentConfiguration ::= SEQUENCE{
+ e2nodeComponentRequestPart OCTET STRING,
+ e2nodeComponentResponsePart OCTET STRING,
+ ...
+}
+
+E2nodeComponentConfigurationAck ::= SEQUENCE{
+ updateOutcome ENUMERATED {success, failure, ...},
+ failureCause Cause OPTIONAL,
+ ...
+}
+
+E2nodeComponentInterfaceType ::= ENUMERATED {ng, xn, e1, f1, w1, s1, x2,...}
+
+E2nodeComponentID ::= CHOICE{
+ e2nodeComponentInterfaceTypeNG E2nodeComponentInterfaceNG,
+ e2nodeComponentInterfaceTypeXn E2nodeComponentInterfaceXn,
+ e2nodeComponentInterfaceTypeE1 E2nodeComponentInterfaceE1,
+ e2nodeComponentInterfaceTypeF1 E2nodeComponentInterfaceF1,
+ e2nodeComponentInterfaceTypeW1 E2nodeComponentInterfaceW1,
+ e2nodeComponentInterfaceTypeS1 E2nodeComponentInterfaceS1,
+ e2nodeComponentInterfaceTypeX2 E2nodeComponentInterfaceX2,
+ ...
+}
+
+E2nodeComponentInterfaceE1 ::= SEQUENCE{
+ gNB-CU-UP-ID GNB-CU-UP-ID,
+ ...
+}
+
+E2nodeComponentInterfaceF1 ::= SEQUENCE{
+ gNB-DU-ID GNB-DU-ID,
+ ...
+}
+
+E2nodeComponentInterfaceNG ::= SEQUENCE{
+ amf-name AMFName,
+ ...
+}
+
+E2nodeComponentInterfaceS1 ::= SEQUENCE{
+ mme-name MMEname,
+ ...
+}
+
+E2nodeComponentInterfaceX2 ::= SEQUENCE{
+ global-eNB-ID GlobalENB-ID OPTIONAL,
+ global-en-gNB-ID GlobalenGNB-ID OPTIONAL,
+ ...
+}
+
+E2nodeComponentInterfaceXn ::= SEQUENCE{
+ global-NG-RAN-Node-ID GlobalNG-RANNode-ID,
+ ...
+}
+
+E2nodeComponentInterfaceW1 ::= SEQUENCE{
+ ng-eNB-DU-ID NGENB-DU-ID,
+ ...
+}
+
-- **************************************************************
--- copied from 3GPP X2AP IEs v15.4.0
+-- copied from 3GPP 36.423 (X2AP) IEs
-- note: ie-Extensions removed
-- **************************************************************
ENB-ID ::= CHOICE {
-macro-eNB-ID BIT STRING (SIZE (20)),
-home-eNB-ID BIT STRING (SIZE (28)),
-... ,
-short-Macro-eNB-ID BIT STRING (SIZE(18)),
-long-Macro-eNB-ID BIT STRING (SIZE(21))
+ macro-eNB-ID BIT STRING (SIZE (20)),
+ home-eNB-ID BIT STRING (SIZE (28)),
+ ... ,
+ short-Macro-eNB-ID BIT STRING (SIZE(18)),
+ long-Macro-eNB-ID BIT STRING (SIZE(21))
}
-- **************************************************************
--- copied from 3GPP 38.423 v15.5.0 XnAP IEs
+-- copied from 3GPP 38.423 (XnAP) IEs
+-- note: choice-extension removed
-- **************************************************************
ENB-ID-Choice ::= CHOICE {
-enb-ID-macro BIT STRING (SIZE(20)),
-enb-ID-shortmacro BIT STRING (SIZE(18)),
-enb-ID-longmacro BIT STRING (SIZE(21)),
-...
+ enb-ID-macro BIT STRING (SIZE(20)),
+ enb-ID-shortmacro BIT STRING (SIZE(18)),
+ enb-ID-longmacro BIT STRING (SIZE(21)),
+ ...
}
-- **************************************************************
--- copied from 3GPP X2AP IEs v15.4.0
+-- copied from 3GPP 36.423 (X2AP) IEs
-- note: ie-Extensions removed
-- Note: to avoid duplicate names with XnAP, GNB-ID renamed ENGNB-ID, GlobalGNB-ID renamed GlobalenGNB-ID
-- **************************************************************
ENGNB-ID ::= CHOICE {
-gNB-ID BIT STRING (SIZE (22..32)),
-...
+ gNB-ID BIT STRING (SIZE (22..32)),
+ ...
}
-- F
-- G
GlobalE2node-ID ::= CHOICE{
-gNB GlobalE2node-gNB-ID,
-en-gNB GlobalE2node-en-gNB-ID,
-ng-eNB GlobalE2node-ng-eNB-ID,
-eNB GlobalE2node-eNB-ID,
-...
+ gNB GlobalE2node-gNB-ID,
+ en-gNB GlobalE2node-en-gNB-ID,
+ ng-eNB GlobalE2node-ng-eNB-ID,
+ eNB GlobalE2node-eNB-ID,
+ ...
}
GlobalE2node-en-gNB-ID ::= SEQUENCE{
-global-gNB-ID GlobalenGNB-ID,
-...
+ global-en-gNB-ID GlobalenGNB-ID,
+ en-gNB-CU-UP-ID GNB-CU-UP-ID OPTIONAL,
+ en-gNB-DU-ID GNB-DU-ID OPTIONAL,
+ ...
}
GlobalE2node-eNB-ID ::= SEQUENCE{
-global-eNB-ID GlobalENB-ID,
-...
+ global-eNB-ID GlobalENB-ID,
+ ...
}
GlobalE2node-gNB-ID ::= SEQUENCE{
-global-gNB-ID GlobalgNB-ID,
-gNB-CU-UP-ID GNB-CU-UP-ID OPTIONAL,
-gNB-DU-ID GNB-DU-ID OPTIONAL,
-...
+ global-gNB-ID GlobalgNB-ID,
+ global-en-gNB-ID GlobalenGNB-ID OPTIONAL,
+ gNB-CU-UP-ID GNB-CU-UP-ID OPTIONAL,
+ gNB-DU-ID GNB-DU-ID OPTIONAL,
+ ...
}
GlobalE2node-ng-eNB-ID ::= SEQUENCE{
-global-ng-eNB-ID GlobalngeNB-ID,
-...
+ global-ng-eNB-ID GlobalngeNB-ID,
+ global-eNB-ID GlobalENB-ID OPTIONAL,
+ ngENB-DU-ID NGENB-DU-ID OPTIONAL,
+ ...
}
-- **************************************************************
--- copied from 3GPP X2AP IEs v15.4.0
+-- copied from 3GPP 36.423 (X2AP) IEs
-- note: ie-Extensions removed
-- **************************************************************
GlobalENB-ID ::= SEQUENCE {
-pLMN-Identity PLMN-Identity,
-eNB-ID ENB-ID,
-...
+ pLMN-Identity PLMN-Identity,
+ eNB-ID ENB-ID,
+ ...
}
-- **************************************************************
--- copied from 3GPP X2AP IEs v15.4.0
+-- copied from 3GPP 36.423 (X2AP) IEs
-- Note: to avoid duplicate names with XnAP, GNB-ID renamed ENGNB-ID, GlobalGNB-ID renamed GlobalenGNB-ID
-- **************************************************************
GlobalenGNB-ID ::= SEQUENCE {
-pLMN-Identity PLMN-Identity,
-gNB-ID ENGNB-ID,
-...
+ pLMN-Identity PLMN-Identity,
+ gNB-ID ENGNB-ID,
+ ...
}
-- **************************************************************
--- copied from 3GPP 38.423 v15.5.0 XnAP IEs
+-- copied from 3GPP 38.423 (XnAP) IEs
+-- note: choice-extension removed
-- **************************************************************
GlobalgNB-ID ::= SEQUENCE {
-plmn-id PLMN-Identity,
-gnb-id GNB-ID-Choice,
-...
+ plmn-id PLMN-Identity,
+ gnb-id GNB-ID-Choice,
+ ...
}
-- **************************************************************
--- copied from 3GPP 38.423 v15.5.0 XnAP IEs
+-- copied from 3GPP 38.423 (XnAP) IEs
+-- note: choice-extension removed
-- **************************************************************
GlobalngeNB-ID ::= SEQUENCE {
-plmn-id PLMN-Identity,
-enb-id ENB-ID-Choice,
-...
+ plmn-id PLMN-Identity,
+ enb-id ENB-ID-Choice,
+ ...
+}
+
+-- **************************************************************
+-- [NEW for E2AP v02.00] copied from 3GPP 38.423 (XnAP) IEs
+-- Note: extension field removed
+-- **************************************************************
+
+GlobalNG-RANNode-ID ::= CHOICE {
+ gNB GlobalgNB-ID,
+ ng-eNB GlobalngeNB-ID,
+ ...
}
GlobalRIC-ID ::= SEQUENCE{
-pLMN-Identity PLMN-Identity,
-ric-ID BIT STRING (SIZE (20)),
-...
+ pLMN-Identity PLMN-Identity,
+ ric-ID BIT STRING (SIZE (20)),
+ ...
}
-- **************************************************************
--- copied from 3GPP 38.463 v15.5.0 E1AP IEs
+-- copied from 3GPP 37.483 (E1AP) IEs
-- **************************************************************
GNB-CU-UP-ID::= INTEGER (0..68719476735)
+
+-- **************************************************************
+-- copied from 3GPP 38.473 (F1AP) IEs
+-- **************************************************************
GNB-DU-ID::= INTEGER (0..68719476735)
-- **************************************************************
--- copied from 3GPP 38.423 v15.5.0 XnAP IEs
+-- copied from 3GPP 38.423 (XnAP) IEs
+-- note: choice-extension removed
-- **************************************************************
GNB-ID-Choice ::= CHOICE {
-gnb-ID BIT STRING (SIZE(22..32)),
-...
+ gnb-ID BIT STRING (SIZE(22..32)),
+ ...
}
-- H
-- I
@@ -228,11 +336,24 @@ gnb-ID BIT STRING (SIZE(22..32)),
-- K
-- L
-- M
+
+-- **************************************************************
+-- [New for E2AP v02.00] copied from 3GPP 36.413 (S1AP) IEs
+-- **************************************************************
+MMEname ::= PrintableString (SIZE (1..150,...))
+
-- N
+
+-- **************************************************************
+-- copied from 3GPP 37.473 (W1AP) IEs
+-- **************************************************************
+NGENB-DU-ID ::= INTEGER (0..68719476735)
+
+
-- O
-- P
-- **************************************************************
--- copied from 3GPP X2AP IEs v15.4.0
+-- copied from 3GPP 36.423 (X2AP) IEs
-- **************************************************************
PLMN-Identity ::= OCTET STRING (SIZE(3))
@@ -245,6 +366,8 @@ RANfunctionDefinition ::= OCTET STRING
RANfunctionID ::= INTEGER (0..4095)
+RANfunctionOID ::= PrintableString(SIZE(1..1000,...))
+
RANfunctionRevision ::= INTEGER (0..4095)
-- **************************************************************
@@ -252,13 +375,16 @@ RANfunctionRevision ::= INTEGER (0..4095)
-- **************************************************************
RICactionDefinition ::= OCTET STRING
+-- new in E2AP-v03.00
+RICactionExecutionOrder ::= INTEGER (0..255, ...)
+
RICactionID ::= INTEGER (0..255)
RICactionType ::= ENUMERATED{
-report,
-insert,
-policy,
-...
+ report,
+ insert,
+ policy,
+ ...
}
-- **************************************************************
@@ -267,10 +393,9 @@ policy,
RICcallProcessID ::= OCTET STRING
RICcontrolAckRequest ::= ENUMERATED{
-noAck,
-ack,
-nAck,
-...
+ noAck,
+ ack,
+ ...
}
-- **************************************************************
@@ -288,13 +413,6 @@ RICcontrolMessage ::= OCTET STRING
-- **************************************************************
RICcontrolOutcome ::= OCTET STRING
-RICcontrolStatus ::= ENUMERATED{
-success,
-rejected,
-failed,
-...
-}
-
-- **************************************************************
-- Following IE defined in E2SM
-- **************************************************************
@@ -313,64 +431,92 @@ RICindicationMessage ::= OCTET STRING
RICindicationSN ::= INTEGER (0..65535)
RICindicationType ::= ENUMERATED{
-report,
-insert,
-...
+ report,
+ insert,
+ ...
}
RICrequestID ::= SEQUENCE {
-ricRequestorID INTEGER (0..65535),
-ricInstanceID INTEGER (0..65535),
-...
+ ricRequestorID INTEGER (0..65535),
+ ricInstanceID INTEGER (0..65535),
+ ...
}
+RICsubscriptionTime ::= OCTET STRING (SIZE(8))
+
RICsubsequentAction ::=SEQUENCE{
-ricSubsequentActionType RICsubsequentActionType,
-ricTimeToWait RICtimeToWait,
-...
+ ricSubsequentActionType RICsubsequentActionType,
+ ricTimeToWait RICtimeToWait,
+ ...
}
RICsubsequentActionType ::= ENUMERATED{
-continue,
-wait,
-...
+ continue,
+ wait,
+ ...
}
+-- **************************************************************
+-- Following IE defined in E2SM
+-- **************************************************************
+RICqueryHeader ::= OCTET STRING
+
+-- **************************************************************
+-- Following IE defined in E2SM
+-- **************************************************************
+RICqueryDefinition ::= OCTET STRING
+
+-- **************************************************************
+-- Following IE defined in E2SM
+-- **************************************************************
+RICqueryOutcome ::= OCTET STRING
+
+
RICtimeToWait ::= ENUMERATED{
-zero,
-w1ms,
-w2ms,
-w5ms,
-w10ms,
-w20ms,
-w30ms,
-w40ms,
-w50ms,
-w100ms,
-w200ms,
-w500ms,
-w1s,
-w2s,
-w5s,
-w10s,
-w20s,
-w60s,
-...
+ w1ms,
+ w2ms,
+ w5ms,
+ w10ms,
+ w20ms,
+ w30ms,
+ w40ms,
+ w50ms,
+ w100ms,
+ w200ms,
+ w500ms,
+ w1s,
+ w2s,
+ w5s,
+ w10s,
+ w20s,
+ w60s,
+ ...
}
-- S
-- T
-- **************************************************************
--- copied from 3GPP 38.413 NGAP IEs v15.5.0
+-- copied from 3GPP 38.413 (NGAP) IEs
-- **************************************************************
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
+
+TNLinformation ::= SEQUENCE{
+ tnlAddress BIT STRING (SIZE(1..160,...)),
+ tnlPort BIT STRING (SIZE(16)) OPTIONAL,
+ ...
+}
+
+TNLusage ::= ENUMERATED{ric-service, support-function, both, ...}
+
+TransactionID ::= INTEGER (0..255,...)
+
-- **************************************************************
--- copied from 3GPP 38.413 NGAP IEs v15.5.0
+-- copied from 3GPP 38.413 (NGAP) IEs
-- **************************************************************
TypeOfError ::= ENUMERATED {
-not-understood,
-missing,
-...
+ not-understood,
+ missing,
+ ...
}
-- U
diff --git a/epan/dissectors/asn1/e2ap/E2AP-PDU-Contents.asn b/epan/dissectors/asn1/e2ap/E2AP-PDU-Contents.asn
index 4323ac054a..bd3b3f8ed1 100755..100644
--- a/epan/dissectors/asn1/e2ap/E2AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/e2ap/E2AP-PDU-Contents.asn
@@ -2,12 +2,12 @@
-- **************************************************************
--
-- PDU definitions for E2AP
--- Derived from 3GPP 38.413 v15.4.0 NGAP
+-- Derived from 3GPP 38.413 (NGAP)
--
-- **************************************************************
E2AP-PDU-Contents {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-PDU-Contents (1) }
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-PDU-Contents (1) }
DEFINITIONS AUTOMATIC TAGS ::=
@@ -20,80 +20,158 @@ BEGIN
-- **************************************************************
IMPORTS
-Cause,
-CriticalityDiagnostics,
-GlobalE2node-ID,
-GlobalRIC-ID,
-RANfunctionDefinition,
-RANfunctionID,
-RANfunctionRevision,
-RICactionDefinition,
-RICactionID,
-RICactionType,
-RICcallProcessID,
-RICcontrolAckRequest,
-RICcontrolHeader,
-RICcontrolMessage,
-RICcontrolOutcome,
-RICcontrolStatus,
-RICeventTriggerDefinition,
-RICindicationHeader,
-RICindicationMessage,
-RICindicationSN,
-RICindicationType,
-RICrequestID,
-RICsubsequentAction,
-TimeToWait
+ Cause,
+ CriticalityDiagnostics,
+ E2nodeComponentConfiguration,
+ E2nodeComponentConfigurationAck,
+ E2nodeComponentID,
+ E2nodeComponentInterfaceType,
+ GlobalE2node-ID,
+ GlobalRIC-ID,
+ RANfunctionDefinition,
+ RANfunctionID,
+ RANfunctionOID,
+ RANfunctionRevision,
+ RICactionDefinition,
+ RICactionExecutionOrder,
+ RICactionID,
+ RICactionType,
+ RICcallProcessID,
+ RICcontrolAckRequest,
+ RICcontrolHeader,
+ RICcontrolMessage,
+ RICcontrolOutcome,
+ RICeventTriggerDefinition,
+ RICindicationHeader,
+ RICindicationMessage,
+ RICindicationSN,
+ RICindicationType,
+ RICrequestID,
+ RICsubsequentAction,
+ RICsubscriptionTime,
+ RICqueryHeader,
+ RICqueryDefinition,
+ RICqueryOutcome,
+ TimeToWait,
+ TNLinformation,
+ TNLusage,
+ TransactionID
FROM E2AP-IEs
-ProtocolIE-Container{},
-ProtocolIE-ContainerList{},
-ProtocolIE-SingleContainer{},
-E2AP-PROTOCOL-IES,
-E2AP-PROTOCOL-IES-PAIR
+ ProtocolIE-Container{},
+ ProtocolIE-ContainerList{},
+ ProtocolIE-SingleContainer{},
+ E2AP-PROTOCOL-IES,
+ E2AP-PROTOCOL-IES-PAIR
FROM E2AP-Containers
-id-Cause,
-id-CriticalityDiagnostics,
-id-GlobalE2node-ID,
-id-GlobalRIC-ID,
-id-RANfunctionID,
-id-RANfunctionID-Item,
-id-RANfunctionIEcause-Item,
-id-RANfunction-Item,
-id-RANfunctionsAccepted,
-id-RANfunctionsAdded,
-id-RANfunctionsDeleted,
-id-RANfunctionsModified,
-id-RANfunctionsRejected,
-id-RICaction-Admitted-Item,
-id-RICactionID,
-id-RICaction-NotAdmitted-Item,
-id-RICactions-Admitted,
-id-RICactions-NotAdmitted,
-id-RICaction-ToBeSetup-Item,
-id-RICcallProcessID,
-id-RICcontrolAckRequest,
-id-RICcontrolHeader,
-id-RICcontrolMessage,
-id-RICcontrolOutcome,
-id-RICcontrolStatus,
-id-RICindicationHeader,
-id-RICindicationMessage,
-id-RICindicationSN,
-id-RICindicationType,
-id-RICrequestID,
-id-RICserviceQuery,
-id-RICsubscriptionDetails,
-id-TimeToWait,
-
-maxofRANfunctionID,
-maxofRICactionID
+ id-Cause,
+ id-CriticalityDiagnostics,
+ id-E2connectionSetup,
+ id-E2connectionSetupFailed,
+ id-E2connectionSetupFailed-Item,
+ id-E2connectionFailed-Item,
+ id-E2connectionUpdate-Item,
+ id-E2connectionUpdateAdd,
+ id-E2connectionUpdateModify,
+ id-E2connectionUpdateRemove,
+ id-E2connectionUpdateRemove-Item,
+ id-E2nodeComponentConfigAddition,
+ id-E2nodeComponentConfigAddition-Item,
+ id-E2nodeComponentConfigAdditionAck,
+ id-E2nodeComponentConfigAdditionAck-Item,
+ id-E2nodeComponentConfigRemoval,
+ id-E2nodeComponentConfigRemoval-Item,
+ id-E2nodeComponentConfigRemovalAck,
+ id-E2nodeComponentConfigRemovalAck-Item,
+ id-E2nodeComponentConfigUpdate,
+ id-E2nodeComponentConfigUpdate-Item,
+ id-E2nodeComponentConfigUpdateAck,
+ id-E2nodeComponentConfigUpdateAck-Item,
+ id-E2nodeTNLassociationRemoval,
+ id-E2nodeTNLassociationRemoval-Item,
+ id-GlobalE2node-ID,
+ id-GlobalRIC-ID,
+ id-RANfunctionID,
+ id-RANfunctionID-Item,
+ id-RANfunctionIEcause-Item,
+ id-RANfunction-Item,
+ id-RANfunctionsAccepted,
+ id-RANfunctionsAdded,
+ id-RANfunctionsDeleted,
+ id-RANfunctionsModified,
+ id-RANfunctionsRejected,
+ id-RICaction-Admitted-Item,
+ id-RICactionID,
+ id-RICaction-NotAdmitted-Item,
+ id-RICactions-Admitted,
+ id-RICactions-NotAdmitted,
+ id-RICaction-ToBeSetup-Item,
+ id-RICactionsToBeRemovedForModification-List,
+ id-RICaction-ToBeRemovedForModification-Item,
+ id-RICactionsToBeModifiedForModification-List,
+ id-RICaction-ToBeModifiedForModification-Item,
+ id-RICactionsToBeAddedForModification-List,
+ id-RICaction-ToBeAddedForModification-Item,
+ id-RICactionsRemovedForModification-List,
+ id-RICaction-RemovedForModification-Item,
+ id-RICactionsFailedToBeRemovedForModification-List,
+ id-RICaction-FailedToBeRemovedForModification-Item,
+ id-RICactionsModifiedForModification-List,
+ id-RICaction-ModifiedForModification-Item,
+ id-RICactionsFailedToBeModifiedForModification-List,
+ id-RICaction-FailedToBeModifiedForModification-Item,
+ id-RICactionsAddedForModification-List,
+ id-RICaction-AddedForModification-Item,
+ id-RICactionsFailedToBeAddedForModification-List,
+ id-RICaction-FailedToBeAddedForModification-Item,
+ id-RICactionsRequiredToBeModified-List,
+ id-RICaction-RequiredToBeModified-Item,
+ id-RICactionsRequiredToBeRemoved-List,
+ id-RICaction-RequiredToBeRemoved-Item,
+ id-RICactionsConfirmedForModification-List,
+ id-RICaction-ConfirmedForModification-Item,
+ id-RICactionsRefusedToBeModified-List,
+ id-RICaction-RefusedToBeModified-Item,
+ id-RICactionsConfirmedForRemoval-List,
+ id-RICaction-ConfirmedForRemoval-Item,
+ id-RICactionsRefusedToBeRemoved-List,
+ id-RICaction-RefusedToBeRemoved-Item,
+ id-RICcallProcessID,
+ id-RICcontrolAckRequest,
+ id-RICcontrolHeader,
+ id-RICcontrolMessage,
+ id-RICcontrolOutcome,
+ id-RICeventTriggerDefinitionToBeModified,
+ id-RICindicationHeader,
+ id-RICindicationMessage,
+ id-RICindicationSN,
+ id-RICindicationType,
+ id-RICrequestID,
+ id-RICserviceQuery,
+ id-RICsubscriptionDetails,
+ id-RICsubscriptionToBeRemoved,
+ id-RICsubscription-withCause-Item,
+ id-RICsubscriptionStartTime,
+ id-RICsubscriptionEndTime,
+ id-RICqueryHeader,
+ id-RICqueryDefinition,
+ id-RICqueryOutcome,
+ id-TimeToWait,
+ id-TNLinformation,
+ id-TransactionID,
+
+ maxofE2nodeComponents,
+ maxofRANfunctionID,
+ maxofRICactionID,
+ maxofRICrequestID,
+ maxofTNLA
FROM E2AP-Constants;
+
-- **************************************************************
--
--- MESSAGES FOR NEAR-RT RIC FUNCTIONAL PROCEDURES
+-- MESSAGES FOR RIC FUNCTIONAL PROCEDURES
--
-- **************************************************************
@@ -108,37 +186,41 @@ FROM E2AP-Constants;
--
-- **************************************************************
RICsubscriptionRequest ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICsubscriptionRequest-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICsubscriptionRequest-IEs}},
+ ...
}
RICsubscriptionRequest-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
-{ ID id-RICsubscriptionDetails CRITICALITY reject TYPE RICsubscriptionDetails PRESENCE mandatory},
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-RICsubscriptionDetails CRITICALITY reject TYPE RICsubscriptionDetails PRESENCE mandatory},
+ ...,
+ { ID id-RICsubscriptionStartTime CRITICALITY reject TYPE RICsubscriptionTime PRESENCE optional}|
+ { ID id-RICsubscriptionEndTime CRITICALITY reject TYPE RICsubscriptionTime PRESENCE optional}
}
RICsubscriptionDetails ::= SEQUENCE {
-ricEventTriggerDefinition RICeventTriggerDefinition,
-ricAction-ToBeSetup-List RICactions-ToBeSetup-List,
-...
+ ricEventTriggerDefinition RICeventTriggerDefinition,
+ ricAction-ToBeSetup-List RICactions-ToBeSetup-List,
+ ...
}
RICactions-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxofRICactionID)) OF ProtocolIE-SingleContainer { {RICaction-ToBeSetup-ItemIEs} }
RICaction-ToBeSetup-ItemIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICaction-ToBeSetup-Item CRITICALITY ignore TYPE RICaction-ToBeSetup-Item PRESENCE mandatory },
-...
+ { ID id-RICaction-ToBeSetup-Item CRITICALITY ignore TYPE RICaction-ToBeSetup-Item PRESENCE mandatory },
+ ...
}
RICaction-ToBeSetup-Item ::= SEQUENCE {
-ricActionID RICactionID,
-ricActionType RICactionType,
-ricActionDefinition RICactionDefinition OPTIONAL,
-ricSubsequentAction RICsubsequentAction OPTIONAL,
-...
+ ricActionID RICactionID,
+ ricActionType RICactionType,
+ ricActionDefinition RICactionDefinition OPTIONAL,
+ ricSubsequentAction RICsubsequentAction OPTIONAL,
+ ...,
+ ricActionExecutionOrder RICactionExecutionOrder OPTIONAL -- New in E2APv03.00
+
}
-- **************************************************************
@@ -147,16 +229,16 @@ ricSubsequentAction RICsubsequentAction OPTIONAL,
--
-- **************************************************************
RICsubscriptionResponse ::= SEQUENCE {
-protocolIEs ProtocolIE-Container{{RICsubscriptionResponse-IEs}},
-...
+ protocolIEs ProtocolIE-Container{{RICsubscriptionResponse-IEs}},
+ ...
}
RICsubscriptionResponse-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory } |
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory } |
-{ ID id-RICactions-Admitted CRITICALITY reject TYPE RICaction-Admitted-List PRESENCE mandatory } |
-{ ID id-RICactions-NotAdmitted CRITICALITY reject TYPE RICaction-NotAdmitted-List PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory } |
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory } |
+ { ID id-RICactions-Admitted CRITICALITY reject TYPE RICaction-Admitted-List PRESENCE mandatory } |
+ { ID id-RICactions-NotAdmitted CRITICALITY reject TYPE RICaction-NotAdmitted-List PRESENCE optional },
+ ...
}
@@ -164,26 +246,26 @@ RICsubscriptionResponse-IEs E2AP-PROTOCOL-IES ::= {
RICaction-Admitted-List ::= SEQUENCE (SIZE(1..maxofRICactionID)) OF ProtocolIE-SingleContainer{{RICaction-Admitted-ItemIEs}}
RICaction-Admitted-ItemIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICaction-Admitted-Item CRITICALITY ignore TYPE RICaction-Admitted-Item PRESENCE mandatory },
-...
+ { ID id-RICaction-Admitted-Item CRITICALITY ignore TYPE RICaction-Admitted-Item PRESENCE mandatory },
+ ...
}
RICaction-Admitted-Item ::= SEQUENCE {
-ricActionID RICactionID,
-...
+ ricActionID RICactionID,
+ ...
}
RICaction-NotAdmitted-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer { {RICaction-NotAdmitted-ItemIEs} }
RICaction-NotAdmitted-ItemIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICaction-NotAdmitted-Item CRITICALITY ignore TYPE RICaction-NotAdmitted-Item PRESENCE mandatory },
-...
+ { ID id-RICaction-NotAdmitted-Item CRITICALITY ignore TYPE RICaction-NotAdmitted-Item PRESENCE mandatory },
+ ...
}
RICaction-NotAdmitted-Item ::= SEQUENCE {
-ricActionID RICactionID,
-cause Cause,
-...
+ ricActionID RICactionID,
+ cause Cause,
+ ...
}
-- **************************************************************
@@ -192,16 +274,16 @@ cause Cause,
--
-- **************************************************************
RICsubscriptionFailure ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICsubscriptionFailure-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICsubscriptionFailure-IEs}},
+ ...
}
RICsubscriptionFailure-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
-{ ID id-RICactions-NotAdmitted CRITICALITY reject TYPE RICaction-NotAdmitted-List PRESENCE mandatory }|
-{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -215,14 +297,14 @@ RICsubscriptionFailure-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICsubscriptionDeleteRequest ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteRequest-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteRequest-IEs}},
+ ...
}
RICsubscriptionDeleteRequest-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory },
+ ...
}
-- **************************************************************
@@ -231,14 +313,14 @@ RICsubscriptionDeleteRequest-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICsubscriptionDeleteResponse ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteResponse-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteResponse-IEs}},
+ ...
}
RICsubscriptionDeleteResponse-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory },
+ ...
}
-- **************************************************************
--
@@ -246,18 +328,373 @@ RICsubscriptionDeleteResponse-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICsubscriptionDeleteFailure ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteFailure-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteFailure-IEs}},
+ ...
}
RICsubscriptionDeleteFailure-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
-{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
-{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC Subscription Delete Required Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION DELETE REQUIRED
+--
+-- **************************************************************
+
+RICsubscriptionDeleteRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteRequired-IEs}},
+ ...
+}
+
+RICsubscriptionDeleteRequired-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICsubscriptionToBeRemoved CRITICALITY ignore TYPE RICsubscription-List-withCause PRESENCE mandatory },
+ ...
+}
+
+RICsubscription-List-withCause ::= SEQUENCE (SIZE(1..maxofRICrequestID)) OF ProtocolIE-SingleContainer { {RICsubscription-withCause-ItemIEs} }
+
+RICsubscription-withCause-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICsubscription-withCause-Item CRITICALITY ignore TYPE RICsubscription-withCause-Item PRESENCE mandatory },
+ ...
+}
+
+RICsubscription-withCause-Item ::= SEQUENCE {
+ ricRequestID RICrequestID,
+ ranFunctionID RANfunctionID,
+ cause Cause,
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC Subscription Modification Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION MODIFICATION REQUEST
+--
+-- **************************************************************
+RICsubscriptionModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionModificationRequest-IEs}},
+ ...
+}
+
+RICsubscriptionModificationRequest-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-RICeventTriggerDefinitionToBeModified CRITICALITY ignore TYPE RICeventTriggerDefinition PRESENCE optional}|
+ { ID id-RICactionsToBeRemovedForModification-List CRITICALITY ignore TYPE RICactions-ToBeRemovedForModification-List PRESENCE optional}|
+ { ID id-RICactionsToBeModifiedForModification-List CRITICALITY ignore TYPE RICactions-ToBeModifiedForModification-List PRESENCE optional}|
+ { ID id-RICactionsToBeAddedForModification-List CRITICALITY ignore TYPE RICactions-ToBeAddedForModification-List PRESENCE optional},
+ ...
+}
+
+RICactions-ToBeRemovedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-ToBeRemovedForModification-ItemIEs} }
+
+RICaction-ToBeRemovedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-ToBeRemovedForModification-Item CRITICALITY ignore TYPE RICaction-ToBeRemovedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-ToBeRemovedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ...
+}
+
+RICactions-ToBeModifiedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-ToBeModifiedForModification-ItemIEs} }
+
+RICaction-ToBeModifiedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-ToBeModifiedForModification-Item CRITICALITY ignore TYPE RICaction-ToBeModifiedForModification-Item PRESENCE mandatory },
+ ...
}
+RICaction-ToBeModifiedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ricActionDefinition RICactionDefinition OPTIONAL,
+ ricActionExecutionOrder RICactionExecutionOrder OPTIONAL,
+ ricSubsequentAction RICsubsequentAction OPTIONAL,
+ ...
+}
+
+
+RICactions-ToBeAddedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-ToBeAddedForModification-ItemIEs} }
+
+RICaction-ToBeAddedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-ToBeAddedForModification-Item CRITICALITY ignore TYPE RICaction-ToBeAddedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-ToBeAddedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ricActionType RICactionType,
+ ricActionDefinition RICactionDefinition,
+ ricActionExecutionOrder RICactionExecutionOrder,
+ ricSubsequentAction RICsubsequentAction OPTIONAL,
+ ...
+}
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION MODIFICATION RESPONSE
+--
+-- **************************************************************
+RICsubscriptionModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionModificationResponse-IEs}},
+ ...
+}
+
+RICsubscriptionModificationResponse-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-RICactionsRemovedForModification-List CRITICALITY ignore TYPE RICactions-RemovedForModification-List PRESENCE optional}|
+ { ID id-RICactionsFailedToBeRemovedForModification-List CRITICALITY ignore TYPE RICactions-FailedToBeRemovedForModification-List PRESENCE optional}|
+ { ID id-RICactionsModifiedForModification-List CRITICALITY ignore TYPE RICactions-ModifiedForModification-List PRESENCE optional}|
+ { ID id-RICactionsFailedToBeModifiedForModification-List CRITICALITY ignore TYPE RICactions-FailedToBeModifiedForModification-List PRESENCE optional}|
+ { ID id-RICactionsAddedForModification-List CRITICALITY ignore TYPE RICactions-AddedForModification-List PRESENCE optional}|
+ { ID id-RICactionsFailedToBeAddedForModification-List CRITICALITY ignore TYPE RICactions-FailedToBeAddedForModification-List PRESENCE optional},
+ ...
+}
+
+RICactions-RemovedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-RemovedForModification-ItemIEs} }
+
+RICaction-RemovedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-RemovedForModification-Item CRITICALITY ignore TYPE RICaction-RemovedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-RemovedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ...
+}
+RICactions-FailedToBeRemovedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-FailedToBeRemovedForModification-ItemIEs} }
+
+RICaction-FailedToBeRemovedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-FailedToBeRemovedForModification-Item CRITICALITY ignore TYPE RICaction-FailedToBeRemovedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-FailedToBeRemovedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ cause Cause,
+ ...
+}
+
+RICactions-ModifiedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-ModifiedForModification-ItemIEs} }
+
+RICaction-ModifiedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-ModifiedForModification-Item CRITICALITY ignore TYPE RICaction-ModifiedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-ModifiedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ...
+}
+
+RICactions-FailedToBeModifiedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-FailedToBeModifiedForModification-ItemIEs} }
+
+RICaction-FailedToBeModifiedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-FailedToBeModifiedForModification-Item CRITICALITY ignore TYPE RICaction-FailedToBeModifiedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-FailedToBeModifiedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ cause Cause,
+ ...
+}
+
+RICactions-AddedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-AddedForModification-ItemIEs} }
+
+RICaction-AddedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-AddedForModification-Item CRITICALITY ignore TYPE RICaction-AddedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-AddedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ...
+}
+
+RICactions-FailedToBeAddedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-FailedToBeAddedForModification-ItemIEs} }
+
+RICaction-FailedToBeAddedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-FailedToBeAddedForModification-Item CRITICALITY ignore TYPE RICaction-FailedToBeAddedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-FailedToBeAddedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ cause Cause,
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION MODIFICATION FAILURE
+--
+-- **************************************************************
+RICsubscriptionModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionModificationFailure-IEs}},
+ ...
+}
+
+RICsubscriptionModificationFailure-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC Subscription Modification Required Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION MODIFICATION REQUIRED
+--
+-- **************************************************************
+RICsubscriptionModificationRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionModificationRequired-IEs}},
+ ...
+}
+
+RICsubscriptionModificationRequired-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-RICactionsRequiredToBeModified-List CRITICALITY ignore TYPE RICactions-RequiredToBeModified-List PRESENCE optional}|
+ { ID id-RICactionsRequiredToBeRemoved-List CRITICALITY ignore TYPE RICactions-RequiredToBeRemoved-List PRESENCE optional},
+ ...
+}
+
+RICactions-RequiredToBeModified-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-RequiredToBeModified-ItemIEs} }
+
+RICaction-RequiredToBeModified-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-RequiredToBeModified-Item CRITICALITY ignore TYPE RICaction-RequiredToBeModified-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-RequiredToBeModified-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ricTimeToWait RICtimeToWait,
+ ...
+}
+
+RICactions-RequiredToBeRemoved-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-RequiredToBeRemoved-ItemIEs} }
+
+RICaction-RequiredToBeRemoved-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-RequiredToBeRemoved-Item CRITICALITY ignore TYPE RICaction-RequiredToBeRemoved-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-RequiredToBeRemoved-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ cause Cause,
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION MODIFICATION CONFIRM
+--
+-- **************************************************************
+RICsubscriptionModificationConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionModificationConfirm-IEs}},
+ ...
+}
+
+RICsubscriptionModificationConfirm-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-RICactionsConfirmedForModification-List CRITICALITY ignore TYPE RICactions-ConfirmedForModification-List PRESENCE optional}|
+ { ID id-RICactionsRefusedToBeModified-List CRITICALITY ignore TYPE RICactions-RefusedToBeModified-List PRESENCE optional}|
+ { ID id-RICactionsConfirmedForRemoval-List CRITICALITY ignore TYPE RICactions-ConfirmedForRemoval-List PRESENCE optional}|
+ { ID id-RICactionsRefusedToBeRemoved-List CRITICALITY ignore TYPE RICactions-RefusedToBeRemoved-List PRESENCE optional},
+ ...
+}
+
+RICactions-ConfirmedForModification-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-ConfirmedForModification-ItemIEs} }
+
+RICaction-ConfirmedForModification-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-ConfirmedForModification-Item CRITICALITY ignore TYPE RICaction-ConfirmedForModification-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-ConfirmedForModification-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ...
+}
+RICactions-RefusedToBeModified-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-RefusedToBeModified-ItemIEs} }
+
+RICaction-RefusedToBeModified-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-RefusedToBeModified-Item CRITICALITY ignore TYPE RICaction-RefusedToBeModified-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-RefusedToBeModified-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ cause Cause,
+ ...
+}
+
+RICactions-ConfirmedForRemoval-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-ConfirmedForRemoval-ItemIEs} }
+
+RICaction-ConfirmedForRemoval-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-ConfirmedForRemoval-Item CRITICALITY ignore TYPE RICaction-ConfirmedForRemoval-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-ConfirmedForRemoval-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ ...
+}
+
+RICactions-RefusedToBeRemoved-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer {{RICaction-RefusedToBeRemoved-ItemIEs} }
+
+RICaction-RefusedToBeRemoved-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICaction-RefusedToBeRemoved-Item CRITICALITY ignore TYPE RICaction-RefusedToBeRemoved-Item PRESENCE mandatory },
+ ...
+}
+
+RICaction-RefusedToBeRemoved-Item ::= SEQUENCE {
+ ricActionID RICactionID,
+ cause Cause,
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC SUBSCRIPTION MODIFICATION REFUSE
+--
+-- **************************************************************
+RICsubscriptionModificationRefuse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICsubscriptionModificationRefuse-IEs}},
+ ...
+}
+
+
+RICsubscriptionModificationRefuse-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+
-- **************************************************************
--
-- RIC Indication Elementary Procedure
@@ -269,20 +706,20 @@ RICsubscriptionDeleteFailure-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICindication ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICindication-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICindication-IEs}},
+ ...
}
RICindication-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
-{ ID id-RICactionID CRITICALITY reject TYPE RICactionID PRESENCE mandatory }|
-{ ID id-RICindicationSN CRITICALITY reject TYPE RICindicationSN PRESENCE optional }|
-{ ID id-RICindicationType CRITICALITY reject TYPE RICindicationType PRESENCE mandatory }|
-{ ID id-RICindicationHeader CRITICALITY reject TYPE RICindicationHeader PRESENCE mandatory }|
-{ ID id-RICindicationMessage CRITICALITY reject TYPE RICindicationMessage PRESENCE mandatory }|
-{ ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-RICactionID CRITICALITY reject TYPE RICactionID PRESENCE mandatory }|
+ { ID id-RICindicationSN CRITICALITY reject TYPE RICindicationSN PRESENCE optional }|
+ { ID id-RICindicationType CRITICALITY reject TYPE RICindicationType PRESENCE mandatory }|
+ { ID id-RICindicationHeader CRITICALITY reject TYPE RICindicationHeader PRESENCE mandatory }|
+ { ID id-RICindicationMessage CRITICALITY reject TYPE RICindicationMessage PRESENCE mandatory }|
+ { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -296,18 +733,18 @@ RICindication-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICcontrolRequest ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICcontrolRequest-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICcontrolRequest-IEs}},
+ ...
}
RICcontrolRequest-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
-{ ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }|
-{ ID id-RICcontrolHeader CRITICALITY reject TYPE RICcontrolHeader PRESENCE mandatory }|
-{ ID id-RICcontrolMessage CRITICALITY reject TYPE RICcontrolMessage PRESENCE mandatory }|
-{ ID id-RICcontrolAckRequest CRITICALITY reject TYPE RICcontrolAckRequest PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }|
+ { ID id-RICcontrolHeader CRITICALITY reject TYPE RICcontrolHeader PRESENCE mandatory }|
+ { ID id-RICcontrolMessage CRITICALITY reject TYPE RICcontrolMessage PRESENCE mandatory }|
+ { ID id-RICcontrolAckRequest CRITICALITY reject TYPE RICcontrolAckRequest PRESENCE optional },
+ ...
}
-- **************************************************************
--
@@ -315,17 +752,16 @@ RICcontrolRequest-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICcontrolAcknowledge ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICcontrolAcknowledge-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICcontrolAcknowledge-IEs}},
+ ...
}
RICcontrolAcknowledge-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
-{ ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }|
-{ ID id-RICcontrolStatus CRITICALITY reject TYPE RICcontrolStatus PRESENCE mandatory } |
-{ ID id-RICcontrolOutcome CRITICALITY reject TYPE RICcontrolOutcome PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }|
+ { ID id-RICcontrolOutcome CRITICALITY reject TYPE RICcontrolOutcome PRESENCE optional },
+ ...
}
-- **************************************************************
--
@@ -333,17 +769,75 @@ RICcontrolAcknowledge-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICcontrolFailure ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICcontrolFailure-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICcontrolFailure-IEs}},
+ ...
}
RICcontrolFailure-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
-{ ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }|
-{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory } |
-{ ID id-RICcontrolOutcome CRITICALITY reject TYPE RICcontrolOutcome PRESENCE optional },
-...
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-RICcontrolOutcome CRITICALITY reject TYPE RICcontrolOutcome PRESENCE optional },
+ ...,
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }
+}
+
+-- **************************************************************
+--
+-- RIC QUERY Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- RIC QUERY REQUEST
+--
+-- **************************************************************
+RICQueryRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICQueryRequest-IEs}},
+ ...
+}
+
+RICQueryRequest-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-RICqueryHeader CRITICALITY reject TYPE RICqueryHeader PRESENCE mandatory }|
+ { ID id-RICqueryDefinition CRITICALITY reject TYPE RICqueryDefinition PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- RIC QUERY RESPONSE
+--
+-- **************************************************************
+RICQueryResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICQueryResponse-IEs}},
+ ...
+}
+
+RICQueryResponse-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-RICqueryOutcome CRITICALITY reject TYPE RICqueryOutcome PRESENCE mandatory },
+ ...
+}
+-- **************************************************************
+--
+-- RIC QUERY FAILURE
+--
+-- **************************************************************
+RICQueryFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RICQueryFailure-IEs}},
+ ...
+}
+
+RICQueryFailure-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -363,16 +857,17 @@ RICcontrolFailure-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
ErrorIndication ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{ErrorIndication-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{ErrorIndication-IEs}},
+ ...
}
ErrorIndication-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE optional }|
-{ ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE optional }|
-{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional }|
-{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE optional }|
+ { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE optional }|
+ { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -387,14 +882,16 @@ ErrorIndication-IEs E2AP-PROTOCOL-IES ::= {
-- **************************************************************
E2setupRequest ::= SEQUENCE {
-protocolIEs ProtocolIE-Container { {E2setupRequestIEs} },
-...
+ protocolIEs ProtocolIE-Container { {E2setupRequestIEs} },
+ ...
}
E2setupRequestIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-GlobalE2node-ID CRITICALITY reject TYPE GlobalE2node-ID PRESENCE mandatory }|
-{ ID id-RANfunctionsAdded CRITICALITY reject TYPE RANfunctions-List PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-GlobalE2node-ID CRITICALITY reject TYPE GlobalE2node-ID PRESENCE mandatory }|
+ { ID id-RANfunctionsAdded CRITICALITY reject TYPE RANfunctions-List PRESENCE mandatory }|
+ { ID id-E2nodeComponentConfigAddition CRITICALITY reject TYPE E2nodeComponentConfigAddition-List PRESENCE mandatory },
+ ...
}
-- **************************************************************
@@ -404,15 +901,17 @@ E2setupRequestIEs E2AP-PROTOCOL-IES ::= {
-- **************************************************************
E2setupResponse ::= SEQUENCE {
-protocolIEs ProtocolIE-Container { {E2setupResponseIEs} },
-...
+ protocolIEs ProtocolIE-Container { {E2setupResponseIEs} },
+ ...
}
E2setupResponseIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-GlobalRIC-ID CRITICALITY reject TYPE GlobalRIC-ID PRESENCE mandatory }|
-{ ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional }|
-{ ID id-RANfunctionsRejected CRITICALITY reject TYPE RANfunctionsIDcause-List PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-GlobalRIC-ID CRITICALITY reject TYPE GlobalRIC-ID PRESENCE mandatory }|
+ { ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional }|
+ { ID id-RANfunctionsRejected CRITICALITY reject TYPE RANfunctionsIDcause-List PRESENCE optional }|
+ { ID id-E2nodeComponentConfigAdditionAck CRITICALITY reject TYPE E2nodeComponentConfigAdditionAck-List PRESENCE mandatory },
+ ...
}
-- **************************************************************
@@ -422,15 +921,272 @@ E2setupResponseIEs E2AP-PROTOCOL-IES ::= {
-- **************************************************************
E2setupFailure ::= SEQUENCE {
-protocolIEs ProtocolIE-Container { {E2setupFailureIEs} },
-...
+ protocolIEs ProtocolIE-Container { {E2setupFailureIEs} },
+ ...
}
E2setupFailureIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
-{ ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
-{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-TNLinformation CRITICALITY ignore TYPE TNLinformation PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 Connection Update Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- E2 CONNECTION UPDATE
+--
+-- **************************************************************
+E2connectionUpdate ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{E2connectionUpdate-IEs}},
+ ...
+}
+
+E2connectionUpdate-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-E2connectionUpdateAdd CRITICALITY reject TYPE E2connectionUpdate-List PRESENCE optional }|
+ { ID id-E2connectionUpdateRemove CRITICALITY reject TYPE E2connectionUpdateRemove-List PRESENCE optional }|
+ { ID id-E2connectionUpdateModify CRITICALITY reject TYPE E2connectionUpdate-List PRESENCE optional },
+ ...
+}
+
+E2connectionUpdate-List ::= SEQUENCE (SIZE(1..maxofTNLA)) OF ProtocolIE-SingleContainer { {E2connectionUpdate-ItemIEs} }
+
+E2connectionUpdate-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2connectionUpdate-Item CRITICALITY ignore TYPE E2connectionUpdate-Item PRESENCE mandatory },
+ ...
+}
+
+E2connectionUpdate-Item ::= SEQUENCE {
+ tnlInformation TNLinformation,
+ tnlUsage TNLusage,
+ ...
+}
+
+E2connectionUpdateRemove-List ::= SEQUENCE (SIZE(1..maxofTNLA)) OF ProtocolIE-SingleContainer { {E2connectionUpdateRemove-ItemIEs} }
+
+E2connectionUpdateRemove-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2connectionUpdateRemove-Item CRITICALITY ignore TYPE E2connectionUpdateRemove-Item PRESENCE mandatory },
+ ...
+}
+
+E2connectionUpdateRemove-Item ::= SEQUENCE {
+ tnlInformation TNLinformation,
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- E2 CONNECTION UPDATE ACKNOWLEDGE
+--
+-- **************************************************************
+E2connectionUpdateAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{E2connectionUpdateAck-IEs}},
+ ...
+}
+
+E2connectionUpdateAck-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-E2connectionSetup CRITICALITY reject TYPE E2connectionUpdate-List PRESENCE optional }|
+ { ID id-E2connectionSetupFailed CRITICALITY reject TYPE E2connectionSetupFailed-List PRESENCE optional },
+ ...
+}
+
+E2connectionSetupFailed-List ::= SEQUENCE (SIZE(1..maxofTNLA)) OF ProtocolIE-SingleContainer { {E2connectionSetupFailed-ItemIEs} }
+
+E2connectionSetupFailed-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2connectionSetupFailed-Item CRITICALITY ignore TYPE E2connectionSetupFailed-Item PRESENCE mandatory },
+ ...
+}
+
+E2connectionSetupFailed-Item ::= SEQUENCE {
+ tnlInformation TNLinformation,
+ cause Cause,
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 CONNECTION UPDATE FAILURE
+--
+-- **************************************************************
+E2connectionUpdateFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{E2connectionUpdateFailure-IEs}},
+ ...
+}
+
+E2connectionUpdateFailure-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE optional }|
+ { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 Node Configuration Update Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- E2 NODE CONFIGURATION UPDATE
+--
+-- **************************************************************
+E2nodeConfigurationUpdate ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{E2nodeConfigurationUpdate-IEs}},
+ ...
+}
+
+E2nodeConfigurationUpdate-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-GlobalE2node-ID CRITICALITY reject TYPE GlobalE2node-ID PRESENCE optional }|
+ { ID id-E2nodeComponentConfigAddition CRITICALITY reject TYPE E2nodeComponentConfigAddition-List PRESENCE optional }|
+ { ID id-E2nodeComponentConfigUpdate CRITICALITY reject TYPE E2nodeComponentConfigUpdate-List PRESENCE optional }|
+ { ID id-E2nodeComponentConfigRemoval CRITICALITY reject TYPE E2nodeComponentConfigRemoval-List PRESENCE optional }|
+ { ID id-E2nodeTNLassociationRemoval CRITICALITY reject TYPE E2nodeTNLassociationRemoval-List PRESENCE optional },
+ ...
+}
+
+E2nodeComponentConfigAddition-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigAddition-ItemIEs} }
+
+E2nodeComponentConfigAddition-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeComponentConfigAddition-Item CRITICALITY reject TYPE E2nodeComponentConfigAddition-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeComponentConfigAddition-Item ::= SEQUENCE {
+ e2nodeComponentInterfaceType E2nodeComponentInterfaceType,
+ e2nodeComponentID E2nodeComponentID,
+ e2nodeComponentConfiguration E2nodeComponentConfiguration,
+ ...
+}
+
+E2nodeComponentConfigUpdate-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigUpdate-ItemIEs} }
+
+E2nodeComponentConfigUpdate-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeComponentConfigUpdate-Item CRITICALITY reject TYPE E2nodeComponentConfigUpdate-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeComponentConfigUpdate-Item ::= SEQUENCE {
+ e2nodeComponentInterfaceType E2nodeComponentInterfaceType,
+ e2nodeComponentID E2nodeComponentID,
+ e2nodeComponentConfiguration E2nodeComponentConfiguration,
+ ...
+}
+
+E2nodeComponentConfigRemoval-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigRemoval-ItemIEs} }
+
+E2nodeComponentConfigRemoval-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeComponentConfigRemoval-Item CRITICALITY reject TYPE E2nodeComponentConfigRemoval-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeComponentConfigRemoval-Item ::= SEQUENCE {
+ e2nodeComponentInterfaceType E2nodeComponentInterfaceType,
+ e2nodeComponentID E2nodeComponentID,
+ ...
+}
+
+E2nodeTNLassociationRemoval-List ::= SEQUENCE (SIZE(1..maxofTNLA)) OF ProtocolIE-SingleContainer { {E2nodeTNLassociationRemoval-ItemIEs} }
+
+E2nodeTNLassociationRemoval-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeTNLassociationRemoval-Item CRITICALITY reject TYPE E2nodeTNLassociationRemoval-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeTNLassociationRemoval-Item ::= SEQUENCE {
+ tnlInformation TNLinformation,
+ tnlInformationRIC TNLinformation,
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 NODE CONFIGURATION UPDATE ACKNOWLEDGE
+--
+-- **************************************************************
+E2nodeConfigurationUpdateAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{E2nodeConfigurationUpdateAcknowledge-IEs}},
+ ...
+}
+
+E2nodeConfigurationUpdateAcknowledge-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-E2nodeComponentConfigAdditionAck CRITICALITY reject TYPE E2nodeComponentConfigAdditionAck-List PRESENCE optional }|
+ { ID id-E2nodeComponentConfigUpdateAck CRITICALITY reject TYPE E2nodeComponentConfigUpdateAck-List PRESENCE optional }|
+ { ID id-E2nodeComponentConfigRemovalAck CRITICALITY reject TYPE E2nodeComponentConfigRemovalAck-List PRESENCE optional },
+ ...
+}
+
+E2nodeComponentConfigAdditionAck-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigAdditionAck-ItemIEs} }
+
+E2nodeComponentConfigAdditionAck-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeComponentConfigAdditionAck-Item CRITICALITY reject TYPE E2nodeComponentConfigAdditionAck-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeComponentConfigAdditionAck-Item ::= SEQUENCE {
+ e2nodeComponentInterfaceType E2nodeComponentInterfaceType,
+ e2nodeComponentID E2nodeComponentID,
+ e2nodeComponentConfigurationAck E2nodeComponentConfigurationAck,
+ ...
+}
+
+E2nodeComponentConfigUpdateAck-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigUpdateAck-ItemIEs} }
+
+E2nodeComponentConfigUpdateAck-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeComponentConfigUpdateAck-Item CRITICALITY reject TYPE E2nodeComponentConfigUpdateAck-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeComponentConfigUpdateAck-Item ::= SEQUENCE {
+ e2nodeComponentInterfaceType E2nodeComponentInterfaceType,
+ e2nodeComponentID E2nodeComponentID,
+ e2nodeComponentConfigurationAck E2nodeComponentConfigurationAck,
+ ...
+}
+
+E2nodeComponentConfigRemovalAck-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigRemovalAck-ItemIEs} }
+
+E2nodeComponentConfigRemovalAck-ItemIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-E2nodeComponentConfigRemovalAck-Item CRITICALITY reject TYPE E2nodeComponentConfigRemovalAck-Item PRESENCE mandatory },
+ ...
+}
+
+E2nodeComponentConfigRemovalAck-Item ::= SEQUENCE {
+ e2nodeComponentInterfaceType E2nodeComponentInterfaceType,
+ e2nodeComponentID E2nodeComponentID,
+ e2nodeComponentConfigurationAck E2nodeComponentConfigurationAck,
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 NODE CONFIGURATION UPDATE FAILURE
+--
+-- **************************************************************
+E2nodeConfigurationUpdateFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{E2nodeConfigurationUpdateFailure-IEs}},
+ ...
+}
+
+E2nodeConfigurationUpdateFailure-IEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -446,13 +1202,14 @@ E2setupFailureIEs E2AP-PROTOCOL-IES ::= {
-- **************************************************************
ResetRequest ::= SEQUENCE {
-protocolIEs ProtocolIE-Container { {ResetRequestIEs} },
-...
+ protocolIEs ProtocolIE-Container { {ResetRequestIEs} },
+ ...
}
ResetRequestIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
}
-- **************************************************************
@@ -462,13 +1219,14 @@ ResetRequestIEs E2AP-PROTOCOL-IES ::= {
-- **************************************************************
ResetResponse ::= SEQUENCE {
-protocolIEs ProtocolIE-Container { {ResetResponseIEs} },
-...
+ protocolIEs ProtocolIE-Container { {ResetResponseIEs} },
+ ...
}
ResetResponseIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -482,45 +1240,45 @@ ResetResponseIEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICserviceUpdate ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICserviceUpdate-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICserviceUpdate-IEs}},
+ ...
}
RICserviceUpdate-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunctionsAdded CRITICALITY reject TYPE RANfunctions-List PRESENCE optional }|
-{ ID id-RANfunctionsModified CRITICALITY reject TYPE RANfunctions-List PRESENCE optional }|
-{ ID id-RANfunctionsDeleted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-RANfunctionsAdded CRITICALITY reject TYPE RANfunctions-List PRESENCE optional }|
+ { ID id-RANfunctionsModified CRITICALITY reject TYPE RANfunctions-List PRESENCE optional }|
+ { ID id-RANfunctionsDeleted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional },
+ ...
}
-RANfunctions-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF ProtocolIE-SingleContainer { {RANfunction-ItemIEs} }
--- TODO (dodgy). also note that NGAP doesn't do this...
---RANfunctions-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF RANfunction-ItemIEs
+RANfunctions-List ::= SEQUENCE (SIZE(1..maxofRANfunctionID)) OF ProtocolIE-SingleContainer { {RANfunction-ItemIEs} }
RANfunction-ItemIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunction-Item CRITICALITY ignore TYPE RANfunction-Item PRESENCE mandatory },
-...
+ { ID id-RANfunction-Item CRITICALITY ignore TYPE RANfunction-Item PRESENCE mandatory },
+ ...
}
RANfunction-Item ::= SEQUENCE {
-ranFunctionID RANfunctionID,
-ranFunctionDefinition RANfunctionDefinition,
-ranFunctionRevision RANfunctionRevision,
-...
+ ranFunctionID RANfunctionID,
+ ranFunctionDefinition RANfunctionDefinition,
+ ranFunctionRevision RANfunctionRevision,
+ ranFunctionOID RANfunctionOID,
+ ...
}
-RANfunctionsID-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF ProtocolIE-SingleContainer{{RANfunctionID-ItemIEs}}
+RANfunctionsID-List ::= SEQUENCE (SIZE(1..maxofRANfunctionID)) OF ProtocolIE-SingleContainer{{RANfunctionID-ItemIEs}}
RANfunctionID-ItemIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunctionID-Item CRITICALITY ignore TYPE RANfunctionID-Item PRESENCE mandatory },
-...
+ { ID id-RANfunctionID-Item CRITICALITY ignore TYPE RANfunctionID-Item PRESENCE mandatory },
+ ...
}
RANfunctionID-Item ::= SEQUENCE {
-ranFunctionID RANfunctionID,
-ranFunctionRevision RANfunctionRevision,
-...
+ ranFunctionID RANfunctionID,
+ ranFunctionRevision RANfunctionRevision,
+ ...
}
-- **************************************************************
@@ -529,28 +1287,29 @@ ranFunctionRevision RANfunctionRevision,
--
-- **************************************************************
RICserviceUpdateAcknowledge ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICserviceUpdateAcknowledge-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICserviceUpdateAcknowledge-IEs}},
+ ...
}
RICserviceUpdateAcknowledge-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional }|
-{ ID id-RANfunctionsRejected CRITICALITY reject TYPE RANfunctionsIDcause-List PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional }|
+ { ID id-RANfunctionsRejected CRITICALITY reject TYPE RANfunctionsIDcause-List PRESENCE optional },
+ ...
}
-RANfunctionsIDcause-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF ProtocolIE-SingleContainer { {RANfunctionIDcause-ItemIEs} }
+RANfunctionsIDcause-List ::= SEQUENCE (SIZE(1..maxofRANfunctionID)) OF ProtocolIE-SingleContainer { {RANfunctionIDcause-ItemIEs} }
RANfunctionIDcause-ItemIEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunctionIEcause-Item CRITICALITY ignore TYPE RANfunctionIDcause-Item PRESENCE mandatory },
-...
+ { ID id-RANfunctionIEcause-Item CRITICALITY ignore TYPE RANfunctionIDcause-Item PRESENCE mandatory },
+ ...
}
RANfunctionIDcause-Item ::= SEQUENCE {
-ranFunctionID RANfunctionID,
-cause Cause,
-...
+ ranFunctionID RANfunctionID,
+ cause Cause,
+ ...
}
@@ -560,15 +1319,16 @@ cause Cause,
--
-- **************************************************************
RICserviceUpdateFailure ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICserviceUpdateFailure-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICserviceUpdateFailure-IEs}},
+ ...
}
RICserviceUpdateFailure-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunctionsRejected CRITICALITY ignore TYPE RANfunctionsIDcause-List PRESENCE optional }|
-{ ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
-{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory }|
+ { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
-- **************************************************************
@@ -582,13 +1342,70 @@ RICserviceUpdateFailure-IEs E2AP-PROTOCOL-IES ::= {
--
-- **************************************************************
RICserviceQuery ::= SEQUENCE {
-protocolIEs ProtocolIE-Container {{RICserviceQuery-IEs}},
-...
+ protocolIEs ProtocolIE-Container {{RICserviceQuery-IEs}},
+ ...
}
RICserviceQuery-IEs E2AP-PROTOCOL-IES ::= {
-{ ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional },
-...
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 Removal Elementary Procedure
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- E2 REMOVAL REQUEST
+--
+-- **************************************************************
+
+E2RemovalRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E2RemovalRequestIEs} },
+ ...
+}
+
+E2RemovalRequestIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 REMOVAL RESPONSE
+--
+-- **************************************************************
+
+E2RemovalResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E2RemovalResponseIEs} },
+ ...
+}
+
+E2RemovalResponseIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- E2 REMOVAL FAILURE
+--
+-- **************************************************************
+
+E2RemovalFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E2RemovalFailureIEs} },
+ ...
+}
+
+E2RemovalFailureIEs E2AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
}
END
diff --git a/epan/dissectors/asn1/e2ap/E2AP-PDU-Descriptions.asn b/epan/dissectors/asn1/e2ap/E2AP-PDU-Descriptions.asn
index a545df82f7..3a1a3035cf 100755..100644
--- a/epan/dissectors/asn1/e2ap/E2AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/e2ap/E2AP-PDU-Descriptions.asn
@@ -6,7 +6,7 @@
-- **************************************************************
E2AP-PDU-Descriptions {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-PDU-Descriptions (0) }
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-PDU-Descriptions (0) }
DEFINITIONS AUTOMATIC TAGS ::=
@@ -19,43 +19,69 @@ BEGIN
-- **************************************************************
IMPORTS
-Criticality,
-ProcedureCode
+ Criticality,
+ ProcedureCode
FROM E2AP-CommonDataTypes
-E2setupFailure,
-E2setupRequest,
-E2setupResponse,
-ErrorIndication,
-ResetRequest,
-ResetResponse,
-RICcontrolAcknowledge,
-RICcontrolFailure,
-RICcontrolRequest,
-RICindication,
-RICserviceQuery,
-RICserviceUpdate,
-RICserviceUpdateAcknowledge,
-RICserviceUpdateFailure,
-RICsubscriptionFailure,
-RICsubscriptionRequest,
-RICsubscriptionResponse,
-RICsubscriptionDeleteFailure,
-RICsubscriptionDeleteRequest,
-RICsubscriptionDeleteResponse
+ E2connectionUpdate,
+ E2connectionUpdateAcknowledge,
+ E2connectionUpdateFailure,
+ E2nodeConfigurationUpdate,
+ E2nodeConfigurationUpdateAcknowledge,
+ E2nodeConfigurationUpdateFailure,
+ E2RemovalRequest,
+ E2RemovalResponse,
+ E2RemovalFailure,
+ E2setupFailure,
+ E2setupRequest,
+ E2setupResponse,
+ ErrorIndication,
+ ResetRequest,
+ ResetResponse,
+ RICcontrolAcknowledge,
+ RICcontrolFailure,
+ RICcontrolRequest,
+ RICindication,
+ RICserviceQuery,
+ RICserviceUpdate,
+ RICserviceUpdateAcknowledge,
+ RICserviceUpdateFailure,
+ RICsubscriptionFailure,
+ RICsubscriptionRequest,
+ RICsubscriptionResponse,
+ RICsubscriptionDeleteFailure,
+ RICsubscriptionDeleteRequest,
+ RICsubscriptionDeleteResponse,
+ RICsubscriptionDeleteRequired,
+ RICsubscriptionModificationRequest,
+ RICsubscriptionModificationResponse,
+ RICsubscriptionModificationFailure,
+ RICsubscriptionModificationRequired,
+ RICsubscriptionModificationConfirm,
+ RICsubscriptionModificationRefuse,
+ RICqueryRequest,
+ RICqueryResponse,
+ RICqueryFailure
FROM E2AP-PDU-Contents
-id-E2setup,
-id-ErrorIndication,
-id-Reset,
-id-RICcontrol,
-id-RICindication,
-id-RICserviceQuery,
-id-RICserviceUpdate,
-id-RICsubscription,
-id-RICsubscriptionDelete
+ id-E2connectionUpdate,
+ id-E2nodeConfigurationUpdate,
+ id-E2removal,
+ id-E2setup,
+ id-ErrorIndication,
+ id-Reset,
+ id-RICcontrol,
+ id-RICindication,
+ id-RICserviceQuery,
+ id-RICserviceUpdate,
+ id-RICsubscription,
+ id-RICsubscriptionDelete,
+ id-RICsubscriptionDeleteRequired,
+ id-RICsubscriptionModification,
+ id-RICsubscriptionModificationRequired,
+ id-RICquery
FROM E2AP-Constants;
-- **************************************************************
@@ -65,19 +91,19 @@ FROM E2AP-Constants;
-- **************************************************************
E2AP-ELEMENTARY-PROCEDURE ::= CLASS {
-&InitiatingMessage ,
-&SuccessfulOutcome OPTIONAL ,
-&UnsuccessfulOutcome OPTIONAL ,
-&procedureCode ProcedureCode UNIQUE ,
-&criticality Criticality DEFAULT ignore
+ &InitiatingMessage ,
+ &SuccessfulOutcome OPTIONAL ,
+ &UnsuccessfulOutcome OPTIONAL ,
+ &procedureCode ProcedureCode UNIQUE ,
+ &criticality Criticality DEFAULT ignore
}
WITH SYNTAX {
-INITIATING MESSAGE &InitiatingMessage
-[SUCCESSFUL OUTCOME &SuccessfulOutcome]
-[UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome]
-PROCEDURE CODE &procedureCode
-[CRITICALITY &criticality]
+ INITIATING MESSAGE &InitiatingMessage
+ [SUCCESSFUL OUTCOME &SuccessfulOutcome]
+ [UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome]
+ PROCEDURE CODE &procedureCode
+ [CRITICALITY &criticality]
}
-- **************************************************************
@@ -87,28 +113,28 @@ PROCEDURE CODE &procedureCode
-- **************************************************************
E2AP-PDU ::= CHOICE {
-initiatingMessage InitiatingMessage,
-successfulOutcome SuccessfulOutcome,
-unsuccessfulOutcome UnsuccessfulOutcome,
-...
+ initiatingMessage InitiatingMessage,
+ successfulOutcome SuccessfulOutcome,
+ unsuccessfulOutcome UnsuccessfulOutcome,
+ ...
}
InitiatingMessage ::= SEQUENCE {
-procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}),
-criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
-value E2AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+ procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}),
+ criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value E2AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
SuccessfulOutcome ::= SEQUENCE {
-procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}),
-criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
-value E2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+ procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}),
+ criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value E2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
UnsuccessfulOutcome ::= SEQUENCE {
-procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}),
-criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
-value E2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+ procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}),
+ criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value E2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
-- **************************************************************
@@ -118,26 +144,33 @@ value E2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDU
-- **************************************************************
E2AP-ELEMENTARY-PROCEDURES E2AP-ELEMENTARY-PROCEDURE ::= {
-E2AP-ELEMENTARY-PROCEDURES-CLASS-1 |
-E2AP-ELEMENTARY-PROCEDURES-CLASS-2,
-...
+ E2AP-ELEMENTARY-PROCEDURES-CLASS-1 |
+ E2AP-ELEMENTARY-PROCEDURES-CLASS-2,
+ ...
}
E2AP-ELEMENTARY-PROCEDURES-CLASS-1 E2AP-ELEMENTARY-PROCEDURE ::= {
-ricSubscription |
-ricSubscriptionDelete |
-ricServiceUpdate |
-ricControl |
-e2setup |
-reset,
-...
+ ricSubscription |
+ ricSubscriptionDelete |
+ ricSubscriptionModification |
+ ricSubscriptionModificationRequired |
+ ricQuery |
+ ricServiceUpdate |
+ ricControl |
+ e2setup |
+ e2nodeConfigurationUpdate |
+ e2connectionUpdate |
+ reset |
+ e2removal,
+ ...
}
E2AP-ELEMENTARY-PROCEDURES-CLASS-2 E2AP-ELEMENTARY-PROCEDURE ::= {
-ricIndication |
-ricServiceQuery |
-errorIndication,
-...
+ ricIndication |
+ ricServiceQuery |
+ errorIndication |
+ ricSubscriptionDeleteRequired,
+ ...
}
-- **************************************************************
@@ -146,71 +179,126 @@ errorIndication,
--
-- **************************************************************
+-- New for v01.01
+e2connectionUpdate E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E2connectionUpdate
+ SUCCESSFUL OUTCOME E2connectionUpdateAcknowledge
+ UNSUCCESSFUL OUTCOME E2connectionUpdateFailure
+ PROCEDURE CODE id-E2connectionUpdate
+ CRITICALITY reject
+}
+
+e2nodeConfigurationUpdate E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E2nodeConfigurationUpdate
+ SUCCESSFUL OUTCOME E2nodeConfigurationUpdateAcknowledge
+ UNSUCCESSFUL OUTCOME E2nodeConfigurationUpdateFailure
+ PROCEDURE CODE id-E2nodeConfigurationUpdate
+ CRITICALITY reject
+}
+
+-- New for v02.01
+e2removal E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E2RemovalRequest
+ SUCCESSFUL OUTCOME E2RemovalResponse
+ UNSUCCESSFUL OUTCOME E2RemovalFailure
+ PROCEDURE CODE id-E2removal
+ CRITICALITY reject
+}
+
e2setup E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE E2setupRequest
-SUCCESSFUL OUTCOME E2setupResponse
-UNSUCCESSFUL OUTCOME E2setupFailure
-PROCEDURE CODE id-E2setup
-CRITICALITY reject
+ INITIATING MESSAGE E2setupRequest
+ SUCCESSFUL OUTCOME E2setupResponse
+ UNSUCCESSFUL OUTCOME E2setupFailure
+ PROCEDURE CODE id-E2setup
+ CRITICALITY reject
}
errorIndication E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE ErrorIndication
-PROCEDURE CODE id-ErrorIndication
-CRITICALITY ignore
+ INITIATING MESSAGE ErrorIndication
+ PROCEDURE CODE id-ErrorIndication
+ CRITICALITY ignore
}
reset E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE ResetRequest
-SUCCESSFUL OUTCOME ResetResponse
-PROCEDURE CODE id-Reset
-CRITICALITY reject
+ INITIATING MESSAGE ResetRequest
+ SUCCESSFUL OUTCOME ResetResponse
+ PROCEDURE CODE id-Reset
+ CRITICALITY reject
}
ricControl E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE RICcontrolRequest
-SUCCESSFUL OUTCOME RICcontrolAcknowledge
-UNSUCCESSFUL OUTCOME RICcontrolFailure
-PROCEDURE CODE id-RICcontrol
-CRITICALITY reject
+ INITIATING MESSAGE RICcontrolRequest
+ SUCCESSFUL OUTCOME RICcontrolAcknowledge
+ UNSUCCESSFUL OUTCOME RICcontrolFailure
+ PROCEDURE CODE id-RICcontrol
+ CRITICALITY reject
}
ricIndication E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE RICindication
-PROCEDURE CODE id-RICindication
-CRITICALITY ignore
+ INITIATING MESSAGE RICindication
+ PROCEDURE CODE id-RICindication
+ CRITICALITY ignore
}
ricServiceQuery E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE RICserviceQuery
-PROCEDURE CODE id-RICserviceQuery
-CRITICALITY ignore
+ INITIATING MESSAGE RICserviceQuery
+ PROCEDURE CODE id-RICserviceQuery
+ CRITICALITY ignore
}
ricServiceUpdate E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE RICserviceUpdate
-SUCCESSFUL OUTCOME RICserviceUpdateAcknowledge
-UNSUCCESSFUL OUTCOME RICserviceUpdateFailure
-PROCEDURE CODE id-RICserviceUpdate
-CRITICALITY reject
+ INITIATING MESSAGE RICserviceUpdate
+ SUCCESSFUL OUTCOME RICserviceUpdateAcknowledge
+ UNSUCCESSFUL OUTCOME RICserviceUpdateFailure
+ PROCEDURE CODE id-RICserviceUpdate
+ CRITICALITY reject
}
ricSubscription E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE RICsubscriptionRequest
-SUCCESSFUL OUTCOME RICsubscriptionResponse
-UNSUCCESSFUL OUTCOME RICsubscriptionFailure
-PROCEDURE CODE id-RICsubscription
-CRITICALITY reject
+ INITIATING MESSAGE RICsubscriptionRequest
+ SUCCESSFUL OUTCOME RICsubscriptionResponse
+ UNSUCCESSFUL OUTCOME RICsubscriptionFailure
+ PROCEDURE CODE id-RICsubscription
+ CRITICALITY reject
}
ricSubscriptionDelete E2AP-ELEMENTARY-PROCEDURE ::= {
-INITIATING MESSAGE RICsubscriptionDeleteRequest
-SUCCESSFUL OUTCOME RICsubscriptionDeleteResponse
-UNSUCCESSFUL OUTCOME RICsubscriptionDeleteFailure
-PROCEDURE CODE id-RICsubscriptionDelete
-CRITICALITY reject
+ INITIATING MESSAGE RICsubscriptionDeleteRequest
+ SUCCESSFUL OUTCOME RICsubscriptionDeleteResponse
+ UNSUCCESSFUL OUTCOME RICsubscriptionDeleteFailure
+ PROCEDURE CODE id-RICsubscriptionDelete
+ CRITICALITY reject
}
+ricSubscriptionDeleteRequired E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RICsubscriptionDeleteRequired
+ PROCEDURE CODE id-RICsubscriptionDeleteRequired
+ CRITICALITY ignore
+}
+
+ricSubscriptionModification E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RICsubscriptionModificationRequest
+ SUCCESSFUL OUTCOME RICsubscriptionModificationResponse
+ UNSUCCESSFUL OUTCOME RICsubscriptionModificationFailure
+ PROCEDURE CODE id-RICsubscriptionModification
+ CRITICALITY reject
+}
+
+ricSubscriptionModificationRequired E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RICsubscriptionModificationRequired
+ SUCCESSFUL OUTCOME RICsubscriptionModificationConfirm
+ UNSUCCESSFUL OUTCOME RICsubscriptionModificationRefuse
+ PROCEDURE CODE id-RICsubscriptionModificationRequired
+ CRITICALITY reject
+}
+
+ricQuery E2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RICQueryRequest
+ SUCCESSFUL OUTCOME RICQueryResponse
+ UNSUCCESSFUL OUTCOME RICQueryFailure
+ PROCEDURE CODE id-RICquery
+ CRITICALITY reject
+}
END
-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/e2ap.cnf b/epan/dissectors/asn1/e2ap/e2ap.cnf
index db95eff625..42cdb1cc8c 100755..100644
--- a/epan/dissectors/asn1/e2ap/e2ap.cnf
+++ b/epan/dissectors/asn1/e2ap/e2ap.cnf
@@ -9,6 +9,7 @@ ALIGNED
#.USE_VALS_EXT
ProcedureCode
ProtocolIE-ID
+NI-ProtocolIE-ID
#.EXPORTS ONLY_VALS WS_DLL
@@ -17,18 +18,43 @@ ProtocolIE-ID
#.PDU
E2AP-PDU
-E2SM-KPM-ActionDefinition
-E2SM-KPM-RANfunction-Description
E2SM-KPM-EventTriggerDefinition
+E2SM-KPM-ActionDefinition
E2SM-KPM-IndicationHeader
-RANcallProcess-ID-string
-E2SM-KPM-IndicationMessage-Format1
+E2SM-KPM-IndicationMessage
+E2SM-KPM-RANfunction-Description
+
+E2SM-RC-EventTrigger
+E2SM-RC-ActionDefinition
+E2SM-RC-RANFunctionDefinition
+E2SM-RC-IndicationMessage
+E2SM-RC-IndicationHeader
+E2SM-RC-CallProcessID
+E2SM-RC-ControlHeader
+E2SM-RC-ControlMessage
+E2SM-RC-ControlOutcome
+# New for v3
+# E2SM-RC-QueryOutcome
+# E2SM-RC-QueryDefinition
+# E2SM-RC-QueryHeader
+
+
+E2SM-NI-EventTriggerDefinition
+E2SM-NI-ActionDefinition
+E2SM-NI-RANfunction-Description
+E2SM-NI-IndicationMessage
+E2SM-NI-IndicationHeader
+E2SM-NI-CallProcessID
+E2SM-NI-ControlHeader
+E2SM-NI-ControlMessage
+E2SM-NI-ControlOutcome
#.MAKE_ENUM
ProcedureCode
ProtocolIE-ID
+
#.NO_EMIT
#.OMIT_ASSIGNMENT
@@ -38,20 +64,20 @@ ProtocolIE-ContainerList
ProtocolIE-ContainerPair
ProtocolIE-ContainerPairList
Presence
-
-# KPM items. Don't know which E2AP OCTET STRING is supposed to use this...
-GNB-DU-Name
-
-E2SM-KPM-IndicationMessage
+FreqBandNrItem
+IndexToRFSP
+EN-GNB-ID
+SubscriberProfileIDforRFP
+QoSID
+GroupID
+CoreCPID
#.END
#.TYPE_ATTR
-E2SM-KPM-IndicationMessage DISPLAY=BASE_DEC STRINGS=VALS(e2ap_E2SM_KPM_IndicationMessage_vals)
-
-#.TYPE_ATTR
-E2SM-KPM-IndicationHeader DISPLAY=BASE_DEC STRINGS=VALS(e2ap_E2SM_KPM_IndicationHeader_vals)
+#E2SM-KPM-IndicationMessage DISPLAY=BASE_DEC STRINGS=VALS(e2ap_E2SM_KPM_IndicationMessage_vals)
+#E2SM-KPM-IndicationHeader DISPLAY=BASE_DEC STRINGS=VALS(e2ap_E2SM_KPM_IndicationHeader_vals)
#.TYPE_RENAME
@@ -97,7 +123,6 @@ SuccessfulOutcome/value successfulOutcome_value
# FN_PARS ProtocolIE-FieldPair/secondValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairSecondValue
-
#.FN_BODY ProcedureCode VAL_PTR = &e2ap_data->procedure_code
struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
%(DEFAULT_BODY)s
@@ -213,40 +238,196 @@ SuccessfulOutcome/value successfulOutcome_value
# col_set_fence(actx->pinfo->cinfo, COL_INFO);
# call_dissector(e2ap_handle, parameter_tvb, actx->pinfo, subtree);
+#.FN_BODY E2SM-KPM-IndicationHeader-Format1/colletStartTime
+ int ts_offset = offset;
+ %(DEFAULT_BODY)s
+ /* Add as a generated field the timestamp decoded */
+ const char *time_str = tvb_ntp_fmt_ts_sec(tvb, (ts_offset+7)/8);
+ proto_item *ti = proto_tree_add_string(tree, hf_e2ap_timestamp_string, tvb, (ts_offset+7)/8, 4, time_str);
+ proto_item_set_generated(ti);
-# Calling in-depth KPM definitions of E2AP OCTET STRING fields.
+# ################################################################################
+# Calling in-depth definitions of E2AP OCTET STRING fields.
-#.FN_BODY RICactionDefinition VAL_PTR = &parameter_tvb
+#.FN_BODY RANfunctionDefinition VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
+
+ /* We know that the next thing is a RANFunction-Name, but it's wrapped up in a sequence,
+ so can't silently/hiddenly call ranFunctionName here... */
+
%(DEFAULT_BODY)s
- dissect_E2SM_KPM_ActionDefinition_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+
+ /* Looking for shortName string near beginning of tvb */
+ gboolean found = FALSE;
+ /* For each RAN function name.. */
+ int n, found_index;
+ for (n=KPM_RANFUNCTIONS; n<MAX_RANFUNCTIONS && !found; n++) {
+ guint32 tvb_len = tvb_captured_length(parameter_tvb);
+ guint name_len = (gint)strlen(g_ran_function_name_table[n]);
+ /* For each of several byte positions.. */
+ for (int m=0; (m<30) && ((m+name_len+1))<tvb_len; m++) {
+ /* Have we found a match on the name? */
+ if (tvb_strneql(parameter_tvb, m, g_ran_function_name_table[n], name_len) == 0) {
+ /* We don't yet know the OID (should be OK),
+ so for now just call with the first/only available dissector for this RAN Function name */
+ if (g_ran_functions_available_dissectors[n].num_available_dissectors) {
+ g_ran_functions_available_dissectors[n].ran_function_dissectors[0]->functions.ran_function_definition_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ found = TRUE;
+ found_index = n;
+ break;
+ }
+ }
+ }
+ }
+
+ if (found && (found_index==CCC_RANFUNCTIONS)) {
+ // ranFunctionName, for this ranFunction, is inside the JSON. Rather than try to retrive it,
+ // just use this proxy that ought to appear at the start... OID should get set in the normal way.
+ if (!actx->pinfo->fd->visited) {
+ e2ap_store_ran_function_mapping(actx->pinfo, tree, parameter_tvb, "{" /*"ORAN-E2SM-CCC"*/);
+ }
+ }
+
+ if (!found) {
+ proto_item *ti = proto_tree_add_item(tree, hf_e2ap_ran_function_name_not_recognised, tvb, 0, 0, ENC_NA);
+ expert_add_info_format(actx->pinfo, ti, &ei_e2ap_ran_function_names_no_match,
+ "ShortName does not match any known Service Model");
+ }
+
+#.FN_BODY RANfunction-Name/ranFunction-ShortName VAL_PTR=&value_tvb
+ tvbuff_t *value_tvb;
+%(DEFAULT_BODY)s
+ if (!actx->pinfo->fd->visited) {
+ /* N.B. too early to work out exact dissector, as don't have OID yet */
+ e2ap_store_ran_function_mapping(actx->pinfo, tree, value_tvb,
+ tvb_get_string_enc(actx->pinfo->pool, value_tvb, 0, tvb_captured_length(value_tvb), ENC_ASCII));
+ }
+
+#.FN_BODY RANfunctionOID VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ /* Now complete mapping with OID string */
+ e2ap_update_ran_function_mapping(actx->pinfo, tree, parameter_tvb,
+ tvb_get_string_enc(actx->pinfo->pool, parameter_tvb, 0,
+ tvb_captured_length(parameter_tvb), ENC_ASCII));
+
+
+
+# TODO: for these IEs, report as expert info if have RAN Function dissector, but it lacks that IE!
+
+#.FN_BODY RICcontrolHeader VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ric_control_header_dissector) {
+ dissector->functions.ric_control_header_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+
+#.FN_BODY RICcontrolMessage VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ric_control_message_dissector) {
+ dissector->functions.ric_control_message_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+
+#.FN_BODY RICcontrolOutcome VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ric_control_outcome_dissector) {
+ dissector->functions.ric_control_outcome_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+
+#.FN_BODY RICqueryOutcome VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ric_query_outcome_dissector) {
+ dissector->functions.ric_query_outcome_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+
+#.FN_BODY RICqueryDefinition VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ric_query_definition_dissector) {
+ dissector->functions.ric_query_definition_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+
+#.FN_BODY RICqueryHeader VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ric_query_header_dissector) {
+ dissector->functions.ric_query_header_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+
+
#.FN_BODY RICeventTriggerDefinition VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
%(DEFAULT_BODY)s
- dissect_E2SM_KPM_EventTriggerDefinition_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ran_event_trigger_dissector) {
+ dissector->functions.ran_event_trigger_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
-#.FN_BODY RICindicationHeader VAL_PTR = &parameter_tvb
+#.FN_BODY RICactionDefinition VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
%(DEFAULT_BODY)s
- dissect_E2SM_KPM_IndicationHeader_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ran_action_definition_dissector) {
+ dissector->functions.ran_action_definition_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
-#.FN_BODY RICindicationMessage VAL_PTR = &parameter_tvb
+#.FN_BODY RICindicationHeader VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
%(DEFAULT_BODY)s
- /* It is believed that this is an error in the ASN in V1 of the spec... */
- dissect_E2SM_KPM_IndicationMessage_Format1_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ran_indication_header_dissector) {
+ dissector->functions.ran_indication_header_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
-#.FN_BODY RANfunctionDefinition VAL_PTR = &parameter_tvb
+#.FN_BODY RICindicationMessage VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
%(DEFAULT_BODY)s
- dissect_E2SM_KPM_RANfunction_Description_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ran_indication_message_dissector) {
+ dissector->functions.ran_indication_message_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
#.FN_BODY RICcallProcessID VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
%(DEFAULT_BODY)s
- dissect_RANcallProcess_ID_string_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+ ran_function_dissector_t* dissector = lookup_ranfunction_dissector(actx->pinfo, tree, parameter_tvb);
+ if (dissector) {
+ if (dissector->functions.ran_callprocessid_dissector) {
+ dissector->functions.ran_callprocessid_dissector(parameter_tvb, actx->pinfo, tree, NULL);
+ }
+ }
+# ################################################################################
@@ -262,8 +443,14 @@ id-RICserviceQuery ProcedureCode
id-RICserviceUpdate ProcedureCode
id-RICsubscription ProcedureCode
id-RICsubscriptionDelete ProcedureCode
-#id-E2nodeConfigurationUpdate ProcedureCode
-#id-E2connectionUpdate ProcedureCode
+id-E2nodeConfigurationUpdate ProcedureCode
+id-E2connectionUpdate ProcedureCode
+id-RICsubscriptionDeleteRequired ProcedureCode
+id-E2removal ProcedureCode
+# New for v3
+id-RICsubscriptionModification ProcedureCode
+id-RICsubscriptionModificationRequired ProcedureCode
+id-RICquery ProcedureCode
@@ -278,7 +465,6 @@ id-RANfunctionIEcause-Item ProtocolIE-ID
id-RANfunction-Item ProtocolIE-ID
id-RANfunctionsAccepted ProtocolIE-ID
id-RANfunctionsAdded ProtocolIE-ID
-
id-RANfunctionsDeleted ProtocolIE-ID
id-RANfunctionsModified ProtocolIE-ID
id-RANfunctionsRejected ProtocolIE-ID
@@ -289,7 +475,6 @@ id-RICactions-Admitted ProtocolIE-ID
id-RICactions-NotAdmitted ProtocolIE-ID
id-RICaction-ToBeSetup-Item ProtocolIE-ID
id-RICcallProcessID ProtocolIE-ID
-
id-RICcontrolAckRequest ProtocolIE-ID
id-RICcontrolHeader ProtocolIE-ID
id-RICcontrolMessage ProtocolIE-ID
@@ -300,25 +485,74 @@ id-RICindicationSN ProtocolIE-ID
id-RICindicationType ProtocolIE-ID
id-RICrequestID ProtocolIE-ID
id-RICsubscriptionDetails ProtocolIE-ID
-
id-TimeToWait ProtocolIE-ID
id-RICcontrolOutcome ProtocolIE-ID
-#id-E2nodeComponentConfigUpdate ProtocolIE-ID
-#id-E2nodeComponentConfigUpdate-Item ProtocolIE-ID
-#id-E2nodeComponentConfigUpdateAck ProtocolIE-ID
-#id-E2nodeComponentConfigUpdateAck-Item ProtocolIE-ID
-#id-E2connectionSetup ProtocolIE-ID
-#id-E2connectionSetupFailed ProtocolIE-ID
-
-#id-E2connectionSetupFailed-Item ProtocolIE-ID
-#id-E2connectionFailed-Item ProtocolIE-ID
-#id-E2connectionUpdate-Item ProtocolIE-ID
-#id-E2connectionUpdateAdd ProtocolIE-ID
-#id-E2connectionUpdateModify ProtocolIE-ID
-#id-E2connectionUpdateRemove ProtocolIE-ID
-#id-E2connectionUpdateRemove-Item ProtocolIE-ID
-#id-TNLinformation ProtocolIE-ID
-#id-TransactionID ProtocolIE-ID
+
+id-E2nodeComponentConfigUpdate ProtocolIE-ID
+id-E2nodeComponentConfigUpdate-Item ProtocolIE-ID
+id-E2nodeComponentConfigUpdateAck ProtocolIE-ID
+id-E2nodeComponentConfigUpdateAck-Item ProtocolIE-ID
+id-E2connectionSetup ProtocolIE-ID
+id-E2connectionSetupFailed ProtocolIE-ID
+id-E2connectionSetupFailed-Item ProtocolIE-ID
+id-E2connectionFailed-Item ProtocolIE-ID
+id-E2connectionUpdate-Item ProtocolIE-ID
+id-E2connectionUpdateAdd ProtocolIE-ID
+id-E2connectionUpdateModify ProtocolIE-ID
+id-E2connectionUpdateRemove ProtocolIE-ID
+id-E2connectionUpdateRemove-Item ProtocolIE-ID
+id-TNLinformation ProtocolIE-ID
+id-TransactionID ProtocolIE-ID
+
+id-E2nodeComponentConfigAddition ProtocolIE-ID
+id-E2nodeComponentConfigAddition-Item ProtocolIE-ID
+id-E2nodeComponentConfigAdditionAck ProtocolIE-ID
+id-E2nodeComponentConfigAdditionAck-Item ProtocolIE-ID
+id-E2nodeComponentConfigRemoval ProtocolIE-ID
+id-E2nodeComponentConfigRemoval-Item ProtocolIE-ID
+id-E2nodeComponentConfigRemovalAck ProtocolIE-ID
+id-E2nodeComponentConfigRemovalAck-Item ProtocolIE-ID
+id-E2nodeTNLassociationRemoval ProtocolIE-ID
+id-E2nodeTNLassociationRemoval-Item ProtocolIE-ID
+id-RICsubscriptionToBeRemoved ProtocolIE-ID
+id-RICsubscription-withCause-Item ProtocolIE-ID
+# New for v3
+id-RICsubscriptionStartTime ProtocolIE-ID
+id-RICsubscriptionEndTime ProtocolIE-ID
+id-RICeventTriggerDefinitionToBeModified ProtocolIE-ID
+id-RICactionsToBeRemovedForModification-List ProtocolIE-ID
+id-RICaction-ToBeRemovedForModification-Item ProtocolIE-ID
+id-RICactionsToBeModifiedForModification-List ProtocolIE-ID
+id-RICaction-ToBeModifiedForModification-Item ProtocolIE-ID
+id-RICactionsToBeAddedForModification-List ProtocolIE-ID
+id-RICaction-ToBeAddedForModification-Item ProtocolIE-ID
+id-RICactionsRemovedForModification-List ProtocolIE-ID
+id-RICaction-RemovedForModification-Item ProtocolIE-ID
+id-RICactionsFailedToBeRemovedForModification-List ProtocolIE-ID
+id-RICaction-FailedToBeRemovedForModification-Item ProtocolIE-ID
+id-RICactionsModifiedForModification-List ProtocolIE-ID
+id-RICaction-ModifiedForModification-Item ProtocolIE-ID
+id-RICactionsFailedToBeModifiedForModification-List ProtocolIE-ID
+id-RICaction-FailedToBeModifiedForModification-Item ProtocolIE-ID
+id-RICactionsAddedForModification-List ProtocolIE-ID
+id-RICaction-AddedForModification-Item ProtocolIE-ID
+id-RICactionsFailedToBeAddedForModification-List ProtocolIE-ID
+id-RICaction-FailedToBeAddedForModification-Item ProtocolIE-ID
+id-RICactionsRequiredToBeModified-List ProtocolIE-ID
+id-RICaction-RequiredToBeModified-Item ProtocolIE-ID
+id-RICactionsRequiredToBeRemoved-List ProtocolIE-ID
+id-RICaction-RequiredToBeRemoved-Item ProtocolIE-ID
+id-RICactionsConfirmedForModification-List ProtocolIE-ID
+id-RICaction-ConfirmedForModification-Item ProtocolIE-ID
+id-RICactionsRefusedToBeModified-List ProtocolIE-ID
+id-RICaction-RefusedToBeModified-Item ProtocolIE-ID
+id-RICactionsConfirmedForRemoval-List ProtocolIE-ID
+id-RICaction-ConfirmedForRemoval-Item ProtocolIE-ID
+id-RICactionsRefusedToBeRemoved-List ProtocolIE-ID
+id-RICaction-RefusedToBeRemoved-Item ProtocolIE-ID
+id-RICqueryHeader ProtocolIE-ID
+id-RICqueryDefinition ProtocolIE-ID
+id-RICqueryOutcome ProtocolIE-ID
#.END
@@ -328,7 +562,6 @@ id-RICcontrolOutcome ProtocolIE-ID
Cause N e2ap.ies id-Cause
CriticalityDiagnostics N e2ap.ies id-CriticalityDiagnostics
-
GlobalE2node-ID N e2ap.ies id-GlobalE2node-ID
GlobalRIC-ID N e2ap.ies id-GlobalRIC-ID
RANfunctionID N e2ap.ies id-RANfunctionID
@@ -343,7 +576,7 @@ RANfunctionsIDcause-List N e2ap.ies id-RANfunctionsRejected
RICaction-Admitted-Item N e2ap.ies id-RICaction-Admitted-Item
RICactionID N e2ap.ies id-RICactionID
RICaction-NotAdmitted-Item N e2ap.ies id-RICaction-NotAdmitted-Item
-RICaction-Admitted-List N e2ap.ies id-RICactions-Admitted
+RICaction-Admitted-List N e2ap.ies id-RICactions-Admitted
RICaction-ToBeSetup-Item N e2ap.ies id-RICaction-ToBeSetup-Item
RICcallProcessID N e2ap.ies id-RICcallProcessID
RICaction-NotAdmitted-List N e2ap.ies id-RICactions-NotAdmitted
@@ -351,68 +584,97 @@ RICcontrolAckRequest N e2ap.ies id-RICcontrolAckRequest
RICcontrolHeader N e2ap.ies id-RICcontrolHeader
RICcontrolMessage N e2ap.ies id-RICcontrolMessage
RICcontrolOutcome N e2ap.ies id-RICcontrolOutcome
-RICcontrolStatus N e2ap.ies id-RICcontrolStatus
+#RICcontrolStatus N e2ap.ies id-RICcontrolStatus
RICindicationHeader N e2ap.ies id-RICindicationHeader
RICindicationMessage N e2ap.ies id-RICindicationMessage
RICindicationSN N e2ap.ies id-RICindicationSN
RICindicationType N e2ap.ies id-RICindicationType
RICrequestID N e2ap.ies id-RICrequestID
RICsubscriptionDetails N e2ap.ies id-RICsubscriptionDetails
-TimeToWait N e2ap.ies id-TimeToWait
-#TNLinformation N e2ap.ies id-TNLinformation
-#TransactionID N e2ap.ies id-TransactionID
-
-
-
-
-# TODO: V2?
-#Cause N e2ap.ies id-Cause
-#CriticalityDiagnostics N e2ap.ies id-CriticalityDiagnostics
-#E2nodeComponentConfigUpdate N e2ap.ies id-E2nodeComponentConfigUpdate
-#E2nodeComponentConfigUpdateAck N e2ap.ies id-E2nodeComponentConfigUpdateAck
-#E2nodeComponentID N e2ap.ies id-E2nodeComponentID
-#E2nodeComponentType N e2ap.ies id-E2nodeComponentType
-#GlobalE2node-ID N e2ap.ies id-GlobalE2node-ID
-#GlobalRIC-ID N e2ap.ies id-GlobalRIC-ID
-#RANfunctionDefinition N e2ap.ies id-RANfunctionDefinition
-#RANfunctionID N e2ap.ies id-RANfunctionID
-#RANfunctionOID N e2ap.ies id-RANfunctionOID
-#RANfunctionRevision N e2ap.ies id-RANfunctionRevision
-#RICactionDefinition N e2ap.ies id-RICactionDefinition
-#RICactionID N e2ap.ies id-RICactionID
-#RICactionType N e2ap.ies id-RICactionType
-#RICcallProcessID N e2ap.ies id-RICcallProcessID
-#RICcontrolAckRequest N e2ap.ies id-RICcontrolAckRequest
-#RICcontrolHeader N e2ap.ies id-RICcontrolHeader
-#RICcontrolMessage N e2ap.ies id-RICcontrolMessage
-#RICcontrolOutcome N e2ap.ies id-RICcontrolOutcome
-#RICcontrolStatus N e2ap.ies id-RICcontrolStatus
-#RICeventTriggerDefinition N e2ap.ies id-RICeventTriggerDefinition
-#RICindicationHeader N e2ap.ies id-RICindicationHeader
-#RICindicationMessage N e2ap.ies id-RICindicationMessage
-#RICindicationSN N e2ap.ies id-RICindicationSN
-#RICindicationType N e2ap.ies id-RICindicationType
-#RICrequestID N e2ap.ies id-RICrequestID
-#RICsubsequentAction N e2ap.ies id-RICsubsequentAction
-#TimeToWait N e2ap.ies id-TimeToWait
-#TNLinformation N e2ap.ies id-TNLinformation
-#TNLusage N e2ap.ies id-TNLusage
-#TransactionID N e2ap.ies id-TransactionID
+#RICcontrolHeader N e2ap.ies id-RICcontrolHeader
+#RICcontrolMessage N e2ap.ies id-RICcontrolMessage
+TimeToWait N e2ap.ies id-TimeToWait
+#RICcontrolOutcome N e2ap.ies id-RICcontrolOutcome
+
+E2nodeComponentConfigUpdate-List N e2ap.ies id-E2nodeComponentConfigUpdate
+E2nodeComponentConfigUpdate-Item N e2ap.ies id-E2nodeComponentConfigUpdate-Item
+E2nodeComponentConfigUpdateAck-List N e2ap.ies id-E2nodeComponentConfigUpdateAck
+E2nodeComponentConfigUpdateAck-Item N e2ap.ies id-E2nodeComponentConfigUpdateAck-Item
+E2connectionUpdate-List N e2ap.ies id-E2connectionSetup
+E2connectionSetupFailed-List N e2ap.ies id-E2connectionSetupFailed
+E2connectionSetupFailed-Item N e2ap.ies id-E2connectionSetupFailed-Item
+#E2connectionSetupFailed-Item N e2ap.ies id-E2connectionFailed-Item
+E2connectionUpdate-Item N e2ap.ies id-E2connectionUpdate-Item
+E2connectionUpdate-List N e2ap.ies id-E2connectionUpdateAdd
+E2connectionUpdate-List N e2ap.ies id-E2connectionUpdateModify
+E2connectionUpdateRemove-List N e2ap.ies id-E2connectionUpdateRemove
+E2connectionUpdateRemove-Item N e2ap.ies id-E2connectionUpdateRemove-Item
+TNLinformation N e2ap.ies id-TNLinformation
+TransactionID N e2ap.ies id-TransactionID
+
+E2nodeComponentConfigAddition-List N e2ap.ies id-E2nodeComponentConfigAddition
+E2nodeComponentConfigAddition-Item N e2ap.ies id-E2nodeComponentConfigAddition-Item
+E2nodeComponentConfigAdditionAck-List N e2ap.ies id-E2nodeComponentConfigAdditionAck
+E2nodeComponentConfigAdditionAck-Item N e2ap.ies id-E2nodeComponentConfigAdditionAck-Item
+E2nodeComponentConfigRemoval-List N e2ap.ies id-E2nodeComponentConfigRemoval
+E2nodeComponentConfigRemoval-Item N e2ap.ies id-E2nodeComponentConfigRemoval-Item
+E2nodeComponentConfigRemovalAck-List N e2ap.ies id-E2nodeComponentConfigRemovalAck
+E2nodeComponentConfigRemovalAck-Item N e2ap.ies id-E2nodeComponentConfigRemovalAck-Item
+E2nodeTNLassociationRemoval-List N e2ap.ies id-E2nodeTNLassociationRemoval
+E2nodeTNLassociationRemoval-Item N e2ap.ies id-E2nodeTNLassociationRemoval-Item
+RICsubscription-List-withCause N e2ap.ies id-RICsubscriptionToBeRemoved
+RICsubscription-withCause-Item N e2ap.ies id-RICsubscription-withCause-Item
+
+# New for v3
+RICsubscriptionTime N e2ap.ies id-RICsubscriptionStartTime
+RICsubscriptionTime N e2ap.ies id-RICsubscriptionEndTime
+RICeventTriggerDefinition N e2ap.ies id-RICeventTriggerDefinitionToBeModified
+RICactions-ToBeRemovedForModification-List N e2ap.ies id-RICactionsToBeRemovedForModification-List
+RICaction-ToBeRemovedForModification-Item N e2ap.ies id-RICaction-ToBeRemovedForModification-Item
+RICactions-ToBeModifiedForModification-List N e2ap.ies id-RICactionsToBeModifiedForModification-List
+RICaction-ToBeModifiedForModification-Item N e2ap.ies id-RICaction-ToBeModifiedForModification-Item
+RICactions-ToBeAddedForModification-List N e2ap.ies id-RICactionsToBeAddedForModification-List
+RICaction-ToBeAddedForModification-Item N e2ap.ies id-RICaction-ToBeAddedForModification-Item
+RICactions-RemovedForModification-List N e2ap.ies id-RICactionsRemovedForModification-List
+RICaction-RemovedForModification-Item N e2ap.ies id-RICaction-RemovedForModification-Item
+RICactions-FailedToBeRemovedForModification-List N e2ap.ies id-RICactionsFailedToBeRemovedForModification-List
+RICaction-FailedToBeRemovedForModification-Item N e2ap.ies id-RICaction-FailedToBeRemovedForModification-Item
+RICactions-ModifiedForModification-List N e2ap.ies id-RICactionsModifiedForModification-List
+RICaction-ModifiedForModification-Item N e2ap.ies id-RICaction-ModifiedForModification-Item
+RICactions-FailedToBeModifiedForModification-List N e2ap.ies id-RICactionsFailedToBeModifiedForModification-List
+RICaction-FailedToBeModifiedForModification-Item N e2ap.ies id-RICaction-FailedToBeModifiedForModification-Item
+RICactions-AddedForModification-List N e2ap.ies id-RICactionsAddedForModification-List
+RICaction-AddedForModification-Item N e2ap.ies id-RICaction-AddedForModification-Item
+RICactions-FailedToBeAddedForModification-List N e2ap.ies id-RICactionsFailedToBeAddedForModification-List
+RICaction-FailedToBeAddedForModification-Item N e2ap.ies id-RICaction-FailedToBeAddedForModification-Item
+RICactions-RequiredToBeModified-List N e2ap.ies id-RICactionsRequiredToBeModified-List
+RICaction-RequiredToBeModified-Item N e2ap.ies id-RICaction-RequiredToBeModified-Item
+RICactions-RequiredToBeRemoved-List N e2ap.ies id-RICactionsRequiredToBeRemoved-List
+RICaction-RequiredToBeRemoved-Item N e2ap.ies id-RICaction-RequiredToBeRemoved-Item
+RICactions-ConfirmedForModification-List N e2ap.ies id-RICactionsConfirmedForModification-List
+RICaction-ConfirmedForModification-Item N e2ap.ies id-RICaction-ConfirmedForModification-Item
+RICactions-RefusedToBeModified-List N e2ap.ies id-RICactionsRefusedToBeModified-List
+RICaction-RefusedToBeModified-Item N e2ap.ies id-RICaction-RefusedToBeModified-Item
+RICactions-ConfirmedForRemoval-List N e2ap.ies id-RICactionsConfirmedForRemoval-List
+RICaction-ConfirmedForRemoval-Item N e2ap.ies id-RICaction-ConfirmedForRemoval-Item
+RICactions-RefusedToBeRemoved-List N e2ap.ies id-RICactionsRefusedToBeRemoved-List
+RICaction-RefusedToBeRemoved-Item N e2ap.ies id-RICaction-RefusedToBeRemoved-Item
+RICqueryHeader N e2ap.ies id-RICqueryHeader
+RICqueryDefinition N e2ap.ies id-RICqueryDefinition
+RICqueryOutcome N e2ap.ies id-RICqueryOutcome
#e2ap-PROTOCOL-EXTENSION
-
-
#E2AP-ELEMENTARY-PROCEDURE
-#E2connectionUpdate N e2ap.proc.imsg id-E2connectionUpdate
-#E2connectionUpdateAcknowledge N e2ap.proc.sout id-E2connectionUpdate
-#E2connectionUpdateFailure N e2ap.proc.uout id-E2connectionUpdate
+E2connectionUpdate N e2ap.proc.imsg id-E2connectionUpdate
+E2connectionUpdateAcknowledge N e2ap.proc.sout id-E2connectionUpdate
+E2connectionUpdateFailure N e2ap.proc.uout id-E2connectionUpdate
-#E2nodeConfigurationUpdate N e2ap.proc.imsg id-E2nodeConfigurationUpdate
-#E2nodeConfigurationUpdateAcknowledge N e2ap.proc.sout id-E2nodeConfigurationUpdate
-#E2nodeConfigurationUpdateFailure N e2ap.proc.uout id-E2nodeConfigurationUpdate
+E2nodeConfigurationUpdate N e2ap.proc.imsg id-E2nodeConfigurationUpdate
+E2nodeConfigurationUpdateAcknowledge N e2ap.proc.sout id-E2nodeConfigurationUpdate
+E2nodeConfigurationUpdateFailure N e2ap.proc.uout id-E2nodeConfigurationUpdate
E2setupFailure N e2ap.proc.uout id-E2setup
E2setupRequest N e2ap.proc.imsg id-E2setup
@@ -443,80 +705,248 @@ RICsubscriptionDeleteFailure N e2ap.proc.uout id-RICsubscriptionDele
RICsubscriptionDeleteRequest N e2ap.proc.imsg id-RICsubscriptionDelete
RICsubscriptionDeleteResponse N e2ap.proc.sout id-RICsubscriptionDelete
+RICsubscriptionDeleteRequired N e2ap.proc.sout id-RICsubscriptionDeleteRequired
+
+E2RemovalFailure N e2ap.proc.uout id-E2removal
+E2RemovalRequest N e2ap.proc.imsg id-E2removal
+E2RemovalResponse N e2ap.proc.sout id-E2removal
+
+RICsubscriptionModificationFailure N e2ap.proc.uout id-RICsubscriptionModification
+RICsubscriptionModificationRequest N e2ap.proc.imsg id-RICsubscriptionModification
+RICsubscriptionModificationResponse N e2ap.proc.sout id-RICsubscriptionModification
+
+RICsubscriptionModificationRefuse N e2ap.proc.uout id-RICsubscriptionModificationRequired
+RICsubscriptionModificationRequired N e2ap.proc.imsg id-RICsubscriptionModificationRequired
+RICsubscriptionModificationConfirm N e2ap.proc.sout id-RICsubscriptionModificationRequired
+
+RICQueryFailure N e2ap.proc.uout id-RICquery
+RICQueryRequest N e2ap.proc.imsg id-RICquery
+RICQueryResponse N e2ap.proc.sout id-RICquery
+
+
+
+#.FN_BODY RANfunctionID VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->ran_function_id = value;
+
+
+#.FN_BODY GlobalgNB-ID/gnb-id
+ int start_offset = offset;
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ /* Limit length, but really can't be > 5 bytes.. */
+ e2ap_data->gnb_id_len = MIN((offset-start_offset)/8, MAX_GNB_ID_BYTES);
+ tvb_memcpy(tvb, &e2ap_data->gnb_id_bytes, start_offset/8, e2ap_data->gnb_id_len);
+ update_conversation_from_gnb_id(actx);
+
+
+
+#.FN_BODY TNLinformation/tnlAddress VAL_PTR=&value_tvb
+ tvbuff_t *value_tvb;
+%(DEFAULT_BODY)s
+ if (tvb_captured_length(value_tvb)==4) {
+ proto_item_append_text(tree, " (%%s", tvb_ip_to_str(actx->pinfo->pool, value_tvb, 0));
+ }
+ else {
+ proto_item_append_text(tree, " (%%s", tvb_ip6_to_str(actx->pinfo->pool, value_tvb, 0));
+ }
+
+#.FN_BODY TNLinformation/tnlPort
+ proto_item_append_text(tree, ":%%u)", tvb_get_ntohs(tvb, offset/8));
+%(DEFAULT_BODY)s
+
+
+#.FN_BODY E2nodeComponentConfiguration/e2nodeComponentRequestPart VAL_PTR=&value_tvb
+ tvbuff_t *value_tvb;
+%(DEFAULT_BODY)s
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ if (e2ap_data->component_configuration_dissector) {
+ col_append_str(actx->pinfo->cinfo, COL_PROTOCOL, "|");
+ col_set_fence(actx->pinfo->cinfo, COL_PROTOCOL);
+ col_set_writable(actx->pinfo->cinfo, COL_INFO, FALSE);
+ call_dissector(e2ap_data->component_configuration_dissector, value_tvb, actx->pinfo, tree);
+ col_set_writable(actx->pinfo->cinfo, COL_INFO, TRUE);
+ }
+
+#.FN_BODY E2nodeComponentConfiguration/e2nodeComponentResponsePart VAL_PTR=&value_tvb
+ tvbuff_t *value_tvb;
+%(DEFAULT_BODY)s
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ if (e2ap_data->component_configuration_dissector) {
+ col_set_writable(actx->pinfo->cinfo, COL_INFO, FALSE);
+ call_dissector(e2ap_data->component_configuration_dissector, value_tvb, actx->pinfo, tree);
+ col_set_writable(actx->pinfo->cinfo, COL_INFO, TRUE);
+ }
+
+
+#.FN_BODY E2nodeComponentID/e2nodeComponentInterfaceTypeNG
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->component_configuration_dissector = find_dissector("ngap");
+
+#.FN_BODY E2nodeComponentID/e2nodeComponentInterfaceTypeXn
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->component_configuration_dissector = find_dissector("xnap");
+
+#.FN_BODY E2nodeComponentID/e2nodeComponentInterfaceTypeE1
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->component_configuration_dissector = find_dissector("e1ap");
+
+#.FN_BODY E2nodeComponentID/e2nodeComponentInterfaceTypeF1
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->component_configuration_dissector = find_dissector("f1ap");
+
+# There is not yet a dissector for W1AP..
+
+#.FN_BODY E2nodeComponentID/e2nodeComponentInterfaceTypeS1
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->component_configuration_dissector = find_dissector("s1ap");
+
+#.FN_BODY E2nodeComponentID/e2nodeComponentInterfaceTypeX2
+%(DEFAULT_BODY)s
+ /* Store value in packet-private data */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(actx->pinfo);
+ e2ap_data->component_configuration_dissector = find_dissector("x2ap");
+
+
+
+# Set labels and update stats for the various message types
+
+#.FN_HDR E2connectionUpdate
+ set_message_label(actx, MTYPE_E2_CONNECTION_UPDATE);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_CONNECTION_UPDATE);
+
+
+#.FN_HDR E2connectionUpdateAcknowledge
+ set_message_label(actx, MTYPE_E2_CONNECTION_UPDATE_ACK);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_CONNECTION_UPDATE_ACK);
+
+#.FN_HDR E2connectionUpdateFailure
+ set_message_label(actx, MTYPE_E2_CONNECTION_UPDATE_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_CONNECTION_UPDATE_FAIL);
+
+
+#.FN_HDR E2nodeConfigurationUpdate
+ set_message_label(actx, MTYPE_E2_CONFIGURATION_UPDATE_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_CONFIGURATION_UPDATE_FAIL);
+
+
+#.FN_HDR E2nodeConfigurationUpdateAcknowledge
+ set_message_label(actx, MTYPE_E2_CONFIGURATION_UPDATE_ACK);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_CONFIGURATION_UPDATE_ACK);
+
+#.FN_HDR E2nodeConfigurationUpdateFailure
+ set_message_label(actx, MTYPE_E2_CONFIGURATION_UPDATE_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_CONFIGURATION_UPDATE_FAIL);
#.FN_HDR E2setupFailure
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E2setupFailure");
+ set_message_label(actx, MTYPE_E2_SETUP_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_SETUP_FAIL);
#.FN_HDR E2setupRequest
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E2setupRequest");
+ set_message_label(actx, MTYPE_E2_SETUP_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_SETUP_REQUEST);
#.FN_HDR E2setupResponse
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E2setupResponse");
+ set_message_label(actx, MTYPE_E2_SETUP_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_E2_SETUP_RESPONSE);
+
+
#.FN_HDR ErrorIndication
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication");
+ set_message_label(actx, MTYPE_ERROR_INDICATION);
+ set_stats_message_type(actx->pinfo, MTYPE_ERROR_INDICATION);
+
#.FN_HDR ResetRequest
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetRequest");
+ set_message_label(actx, MTYPE_RESET_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_RESET_REQUEST);
#.FN_HDR ResetResponse
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetResponse");
-
-#.FN_HDR RICcontrolAcknowledge
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICcontrolAcknowledge");
+ set_message_label(actx, MTYPE_RESET_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_RESET_RESPONSE);
+#.FN_HDR RICcontrolAcknowledge
+ set_message_label(actx, MTYPE_RIC_CONTROL_ACK);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_CONTROL_ACK);
#.FN_HDR RICcontrolFailure
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICcontrolFailure");
+ set_message_label(actx, MTYPE_RIC_CONTROL_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_CONTROL_FAIL);
#.FN_HDR RICcontrolRequest
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICcontrolRequest");
+ set_message_label(actx, MTYPE_RIC_CONTROL_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_CONTROL_REQUEST);
+
#.FN_HDR RICindication
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICindication");
+ set_message_label(actx, MTYPE_RIC_IND);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_IND);
#.FN_HDR RICserviceQuery
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICserviceQuery");
+ set_message_label(actx, MTYPE_RIC_SERVICE_QUERY);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SERVICE_QUERY);
-#.FN_HDR RICserviceUpdate
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICserviceUpdate");
+#.FN_HDR RICserviceUpdate
+ set_message_label(actx, MTYPE_RIC_SERVICE_UPDATE);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SERVICE_UPDATE);
#.FN_HDR RICserviceUpdateAcknowledge
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICserviceUpdateAcknowledge");
+ set_message_label(actx, MTYPE_RIC_SERVICE_UPDATE_ACK);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SERVICE_UPDATE_ACK);
#.FN_HDR RICserviceUpdateFailure
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICserviceUpdateFailure");
+ set_message_label(actx, MTYPE_RIC_SERVICE_UPDATE_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SERVICE_UPDATE_FAIL);
#.FN_HDR RICsubscriptionFailure
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICsubscriptionFailure");
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_FAIL);
#.FN_HDR RICsubscriptionRequest
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICsubscriptionRequest");
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_REQUEST);
#.FN_HDR RICsubscriptionResponse
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICsubscriptionResponse");
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_RESPONSE);
#.FN_HDR RICsubscriptionDeleteFailure
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICsubscriptionDeleteFailure");
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_DELETE_FAIL);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_DELETE_FAIL);
#.FN_HDR RICsubscriptionDeleteRequest
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICsubscriptionDeleteRequest");
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_DELETE_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_DELETE_REQUEST);
#.FN_HDR RICsubscriptionDeleteResponse
- col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RICsubscriptionDeleteResponse");
-
-
-
-
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_DELETE_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_DELETE_RESPONSE);
+#.FN_HDR RICsubscriptionDeleteRequired
+ set_message_label(actx, MTYPE_RIC_SUBSCRIPTION_DELETE_REQUIRED);
+ set_stats_message_type(actx->pinfo, MTYPE_RIC_SUBSCRIPTION_DELETE_REQUIRED);
#
diff --git a/epan/dissectors/asn1/e2ap/e2sm-kpm-v1.asn b/epan/dissectors/asn1/e2ap/e2sm-kpm-v1.asn
deleted file mode 100755
index 8e20c77f7f..0000000000
--- a/epan/dissectors/asn1/e2ap/e2sm-kpm-v1.asn
+++ /dev/null
@@ -1,426 +0,0 @@
--- ASN1START
--- **************************************************************
--- E2SM-KPM
--- Information Element Definitions
---
--- **************************************************************
-
-
-E2SM-KPM-IEs {
-iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2sm(2) e2sm-KPMMON-IEs (2)}
-
-DEFINITIONS AUTOMATIC TAGS ::=
-
-BEGIN
-
--- **************************************************************
--- IEs
--- **************************************************************
-
--- **************************************************************
-
-GlobalKPMnode-ID ::= CHOICE{
- gNB GlobalKPMnode-gNB-ID,
- en-gNB GlobalKPMnode-en-gNB-ID,
- ng-eNB GlobalKPMnode-ng-eNB-ID,
- eNB GlobalKPMnode-eNB-ID,
- ...
-}
-
--- **************************************************************
-
-GlobalKPMnode-gNB-ID ::= SEQUENCE{
- global-gNB-ID GlobalgNB-ID,
- gNB-CU-UP-ID GNB-CU-UP-ID OPTIONAL,
- gNB-DU-ID GNB-DU-ID OPTIONAL,
- ...
-}
-
---GlobalgNB-ID ::= SEQUENCE {
--- plmn-id PLMN-Identity,
--- gnb-id GNB-ID-Choice,
--- ...
---}
-
--- GNB-CU-UP-ID ::= INTEGER (0..68719476735)
--- GNB-DU-ID ::= INTEGER (0..68719476735)
-
--- GNB-ID-Choice ::= CHOICE {
--- gnb-ID BIT STRING (SIZE(22..32)),
--- ...
---}
-
--- **************************************************************
-
-GlobalKPMnode-en-gNB-ID ::= SEQUENCE{
- global-gNB-ID GlobalenGNB-ID,
- ...
-}
-
---GlobalenGNB-ID ::= SEQUENCE {
--- pLMN-Identity PLMN-Identity,
--- gNB-ID ENGNB-ID,
--- ...
---}
-
---ENGNB-ID ::= CHOICE {
--- gNB-ID BIT STRING (SIZE (22..32)),
--- ...
---}
-
--- **************************************************************
-
-GlobalKPMnode-ng-eNB-ID ::= SEQUENCE{
- global-ng-eNB-ID GlobalngeNB-ID,
- ...
-}
-
---GlobalngeNB-ID ::= SEQUENCE {
--- plmn-id PLMN-Identity,
--- enb-id ENB-ID-Choice,
--- ...
---}
-
---ENB-ID-Choice ::= CHOICE {
--- enb-ID-macro BIT STRING (SIZE(20)),
--- enb-ID-shortmacro BIT STRING (SIZE(18)),
--- enb-ID-longmacro BIT STRING (SIZE(21)),
--- ...
---}
-
--- **************************************************************
-
-GlobalKPMnode-eNB-ID ::= SEQUENCE{
- global-eNB-ID GlobalENB-ID,
- ...
-}
-
---GlobalENB-ID ::= SEQUENCE {
--- pLMN-Identity PLMN-Identity,
--- eNB-ID ENB-ID,
--- ...
---}
-
---ENB-ID ::= CHOICE {
--- macro-eNB-ID BIT STRING (SIZE (20)),
--- home-eNB-ID BIT STRING (SIZE (28)),
--- ... ,
--- short-Macro-eNB-ID BIT STRING (SIZE(18)),
--- long-Macro-eNB-ID BIT STRING (SIZE(21))
---}
-
-
-NRCGI ::= SEQUENCE {
- pLMN-Identity PLMN-Identity,
- nRCellIdentity NRCellIdentity
-}
-
---PLMN-Identity ::= OCTET STRING (SIZE(3))
-
-NRCellIdentity ::= BIT STRING (SIZE(36))
-
-SNSSAI ::= SEQUENCE {
- sST OCTET STRING (SIZE(1)),
- sD OCTET STRING (SIZE(3)) OPTIONAL
-}
-
--- **************************************************************
---
--- Lists
---
--- **************************************************************
-
-maxofMessageProtocolTests INTEGER ::= 15
-maxofRICstyles INTEGER ::= 63
-maxnoofQCI INTEGER ::= 256
-maxnoofQoSFlows INTEGER ::= 64
-maxnoofSliceItems INTEGER ::= 1024
-maxnoofContainerListItems INTEGER ::= 3
-maxCellingNBDU INTEGER ::= 512
-maxofContainers INTEGER ::= 8
-maxPLMN INTEGER ::= 12 -- Maximum number of PLMNs broadcast and reported by UE at establisghment
-
-RIC-Style-Type ::= INTEGER
-
-RIC-Style-Name ::= PrintableString(SIZE(1..150,...))
-
-RIC-Format-Type ::= INTEGER
-
-
--- **************************************************************
--- E2SM-KPM Service model IEs
--- **************************************************************
-
--- **************************************************************
--- Event Trigger Definition OCTET STRING contents
--- **************************************************************
-
--- E2SM-KPM-EventTriggerDefinition IE
-E2SM-KPM-EventTriggerDefinition ::= CHOICE{
- eventDefinition-Format1 E2SM-KPM-EventTriggerDefinition-Format1,
- ...
-}
-
--- E2SM-KPM-EventTriggerDefinition IE is used for Event Trigger Definition Format 1
-E2SM-KPM-EventTriggerDefinition-Format1 ::= SEQUENCE{
- policyTest-List SEQUENCE (SIZE(1..maxofMessageProtocolTests)) OF Trigger-ConditionIE-Item OPTIONAL,
- ...
-}
-
--- **************************************************************
--- Action Definition OCTET STRING contents
--- **************************************************************
-
--- E2SM-KPM-ActionDefinition IE
-E2SM-KPM-ActionDefinition ::= SEQUENCE{
- ric-Style-Type RIC-Style-Type,
- ...
-}
-
--- **************************************************************
--- Indication Header OCTET STRING contents
--- **************************************************************
-
--- E2SM-KPM-IndicationHeader IE
-E2SM-KPM-IndicationHeader ::= CHOICE{
- indicationHeader-Format1 E2SM-KPM-IndicationHeader-Format1,
- ...
-}
-
--- E2SM-KPM-IndicationHeader Format 1
-E2SM-KPM-IndicationHeader-Format1 ::= SEQUENCE{
- id-GlobalKPMnode-ID GlobalKPMnode-ID OPTIONAL,
- nRCGI NRCGI OPTIONAL,
- pLMN-Identity PLMN-Identity OPTIONAL,
- sliceID SNSSAI OPTIONAL,
- fiveQI INTEGER (0..255) OPTIONAL,
- qci INTEGER (0..255) OPTIONAL,
- ...
-}
-
--- **************************************************************
--- Indication Message OCTET STRING contents
--- **************************************************************
-
--- E2SM-KPM-IndicationMessage IE
-E2SM-KPM-IndicationMessage ::= CHOICE{
- ric-Style-Type RIC-Style-Type,
- indicationMessage-Format1 E2SM-KPM-IndicationMessage-Format1,
- ...
-}
-
--- E2SM-KPM-IndicationMessage-Format 1 IE
-E2SM-KPM-IndicationMessage-Format1 ::= SEQUENCE{
- pm-Containers SEQUENCE (SIZE(1..maxCellingNBDU)) OF PM-Containers-List,
- ...
-}
-
-PM-Containers-List ::= SEQUENCE{
- performanceContainer PF-Container OPTIONAL,
- theRANContainer RAN-Container OPTIONAL,
- ...
-}
-
--- ***************************************************************
--- RAN Function Description OCTET STRING contents
--- ***************************************************************
-
--- E2SM-KPM-RANfunction-Description
-E2SM-KPM-RANfunction-Description ::= SEQUENCE{
- ranFunction-Name RANfunction-Name,
- e2SM-KPM-RANfunction-Item SEQUENCE{
- ric-EventTriggerStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-EventTriggerStyle-List OPTIONAL,
- ric-ReportStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-ReportStyle-List OPTIONAL,
- ...
- },
- ...
-}
-
-
--- ***************************************************************
--- commmon IEs
--- ***************************************************************
-
-NI-Type ::= ENUMERATED{
- x2-u,
- xn-u,
- f1-u,
- ...
-}
-
-RAN-Container ::= OCTET STRING
-
-Trigger-ConditionIE-Item ::= SEQUENCE{
- report-Period-IE RT-Period-IE,
- ...
-}
-
-RT-Period-IE ::= ENUMERATED{ ms10, ms20, ms32, ms40, ms60, ms64, ms70, ms80, ms128, ms160, ms256, ms320, ms512, ms640, ms1024, ms1280, ms2048, ms2560, ms5120, ms10240, ...}
-
-RANcallProcess-ID-string ::= PrintableString(SIZE(1..150,...))
-
-RANfunction-Name ::= SEQUENCE{
- ranFunction-ShortName PrintableString(SIZE(1..150,...)),
- ranFunction-E2SM-OID PrintableString(SIZE(1..1000,...)),
- ranFunction-Description PrintableString(SIZE(1..150,...)),
- ranFunction-Instance INTEGER OPTIONAL,
- ...
-}
-
-RIC-EventTriggerStyle-List ::= SEQUENCE{
- ric-EventTriggerStyle-Type RIC-Style-Type,
- ric-EventTriggerStyle-Name RIC-Style-Name,
- ric-EventTriggerFormat-Type RIC-Format-Type,
- ...
-}
-
-RIC-ReportStyle-List ::= SEQUENCE{
- ric-ReportStyle-Type RIC-Style-Type,
- ric-ReportStyle-Name RIC-Style-Name,
- ric-IndicationHeaderFormat-Type RIC-Format-Type,
- ric-IndicationMessageFormat-Type RIC-Format-Type,
- ...
-}
-
-PF-Container ::= CHOICE {
- oDU ODU-PF-Container,
- oCU-CP OCUCP-PF-Container,
- oCU-UP OCUUP-PF-Container
-}
-
-GNB-CU-CP-Name ::= PrintableString(SIZE(1..150,...))
-
-GNB-DU-Name ::= PrintableString(SIZE(1..150,...))
-
-GNB-CU-UP-Name ::= PrintableString(SIZE(1..150,...))
-
-
--- **************************************************************
--- O-DU Container IEs
--- **************************************************************
-
-
-ODU-PF-Container ::= SEQUENCE{
- cellResourceReportList SEQUENCE (SIZE(1..maxCellingNBDU)) OF CellResourceReportListItem,
- ...
-}
-
-CellResourceReportListItem ::= SEQUENCE{
- nRCGI NRCGI,
- dl-TotalofAvailablePRBs INTEGER (0..273) OPTIONAL,
- ul-TotalofAvailablePRBs INTEGER (0..273) OPTIONAL,
- servedPlmnPerCellList SEQUENCE (SIZE(1..maxPLMN)) OF ServedPlmnPerCellListItem,
- ...
-}
-
-ServedPlmnPerCellListItem ::= SEQUENCE{
- pLMN-Identity PLMN-Identity,
- du-PM-5GC FGC-DU-PM-Container OPTIONAL,
- du-PM-EPC EPC-DU-PM-Container OPTIONAL,
- ...
-}
-
-FGC-DU-PM-Container ::= SEQUENCE{
- slicePerPlmnPerCellList SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SlicePerPlmnPerCellListItem,
- ...
-}
-
-SlicePerPlmnPerCellListItem ::= SEQUENCE{
- sliceID SNSSAI,
- fQIPERSlicesPerPlmnPerCellList SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF FQIPERSlicesPerPlmnPerCellListItem,
- ...
-}
-
-FQIPERSlicesPerPlmnPerCellListItem ::= SEQUENCE{
- fiveQI INTEGER (0..255),
- dl-PRBUsage INTEGER (0..273) OPTIONAL,
- ul-PRBUsage INTEGER (0..273) OPTIONAL,
- ...
-}
-
-EPC-DU-PM-Container ::= SEQUENCE{
- perQCIReportList SEQUENCE (SIZE(1..maxnoofQCI)) OF PerQCIReportListItem,
- ...
-}
-
-PerQCIReportListItem ::= SEQUENCE{
- qci INTEGER (0..255),
- dl-PRBUsage INTEGER (0..100) OPTIONAL,
- ul-PRBUsage INTEGER (0..100) OPTIONAL,
- ...
-}
-
--- **************************************************************
--- O-CUCP Container IEs
--- **************************************************************
-
-
-OCUCP-PF-Container ::= SEQUENCE{
- gNB-CU-CP-Name GNB-CU-CP-Name OPTIONAL,
- cu-CP-Resource-Status SEQUENCE {
- numberOfActive-UEs INTEGER (1..65536, ...) OPTIONAL
- }
-}
-
--- **************************************************************
--- O-CU-UP Container IEs
--- **************************************************************
-
-OCUUP-PF-Container ::= SEQUENCE{
- gNB-CU-UP-Name GNB-CU-UP-Name OPTIONAL,
- pf-ContainerList SEQUENCE (SIZE(1..maxnoofContainerListItems)) OF PF-ContainerListItem,
- ...
-}
-
-PF-ContainerListItem ::= SEQUENCE{
- interface-type NI-Type,
- o-CU-UP-PM-Container CUUPMeasurement-Container,
- ...
-}
-
-CUUPMeasurement-Container ::= SEQUENCE{
- plmnList SEQUENCE (SIZE(1.. maxPLMN)) OF PlmnID-List,
- ...
-}
-
-PlmnID-List ::= SEQUENCE{
- pLMN-Identity PLMN-Identity,
- cu-UP-PM-5GC FGC-CUUP-PM-Format OPTIONAL,
- cu-UP-PM-EPC EPC-CUUP-PM-Format OPTIONAL,
- ...
-}
-
-FGC-CUUP-PM-Format ::= SEQUENCE{
- sliceToReportList SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SliceToReportListItem,
- ...
-}
-
-SliceToReportListItem ::= SEQUENCE{
- sliceID SNSSAI,
- fQIPERSlicesPerPlmnList SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF FQIPERSlicesPerPlmnListItem,
- ...
-}
-
-FQIPERSlicesPerPlmnListItem ::= SEQUENCE{
- fiveQI INTEGER (0..255),
- pDCPBytesDL INTEGER (0..10000000000,...) OPTIONAL,
- pDCPBytesUL INTEGER (0..10000000000,...) OPTIONAL,
- ...
-}
-
-EPC-CUUP-PM-Format ::= SEQUENCE{
- perQCIReportList SEQUENCE (SIZE(1..maxnoofQCI)) OF PerQCIReportListItemFormat,
- ...
-}
-
-PerQCIReportListItemFormat ::= SEQUENCE{
- qci INTEGER (0..255),
- pDCPBytesDL INTEGER (0..10000000000,...) OPTIONAL,
- pDCPBytesUL INTEGER (0..10000000000,...) OPTIONAL,
- ...
-}
-
-
-END
-
--- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/e2sm-kpm-v3.00.asn b/epan/dissectors/asn1/e2ap/e2sm-kpm-v3.00.asn
new file mode 100644
index 0000000000..388c18f06e
--- /dev/null
+++ b/epan/dissectors/asn1/e2ap/e2sm-kpm-v3.00.asn
@@ -0,0 +1,448 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM-KPM Information Element Definitions
+-- **************************************************************
+
+E2SM-KPM-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) oran(53148) e2(1) version3(3) e2sm(2) e2sm-KPMMON-IEs (2)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+-- IEs
+-- **************************************************************
+
+IMPORTS
+ CGI,
+ FiveQI,
+ PLMNIdentity,
+ QCI,
+ QosFlowIdentifier,
+ RANfunction-Name,
+ RIC-Format-Type,
+ RIC-Style-Name,
+ RIC-Style-Type,
+ S-NSSAI,
+ UEID
+FROM E2SM-COMMON-IEs;
+
+TimeStamp ::= OCTET STRING (SIZE(8))
+
+BinIndex ::= INTEGER (1.. 65535, ...)
+
+BinRangeValue ::= CHOICE {
+ valueInt INTEGER,
+ valueReal REAL,
+ ...
+}
+
+GranularityPeriod ::= INTEGER (1.. 4294967295)
+
+-- LogicalOR ::= ENUMERATED {true, ...}
+
+MeasurementType ::= CHOICE {
+ measName MeasurementTypeName,
+ measID MeasurementTypeID,
+ ...
+}
+
+MeasurementTypeName ::= PrintableString(SIZE(1.. 150, ...))
+
+MeasurementTypeID ::= INTEGER (1.. 65536, ...)
+
+MeasurementLabel ::= SEQUENCE {
+ noLabel ENUMERATED {true, ...} OPTIONAL,
+ plmnID PLMNIdentity OPTIONAL,
+ sliceID S-NSSAI OPTIONAL,
+ fiveQI FiveQI OPTIONAL,
+ qFI QosFlowIdentifier OPTIONAL,
+ qCI QCI OPTIONAL,
+ qCImax QCI OPTIONAL,
+ qCImin QCI OPTIONAL,
+ aRPmax INTEGER (1.. 15, ...) OPTIONAL,
+ aRPmin INTEGER (1.. 15, ...) OPTIONAL,
+ bitrateRange INTEGER (1.. 65535, ...) OPTIONAL,
+ layerMU-MIMO INTEGER (1.. 65535, ...) OPTIONAL,
+ sUM ENUMERATED {true, ...} OPTIONAL,
+ distBinX INTEGER (1.. 65535, ...) OPTIONAL,
+ distBinY INTEGER (1.. 65535, ...) OPTIONAL,
+ distBinZ INTEGER (1.. 65535, ...) OPTIONAL,
+ preLabelOverride ENUMERATED {true, ...} OPTIONAL,
+ startEndInd ENUMERATED {start, end, ...} OPTIONAL,
+ min ENUMERATED {true, ...} OPTIONAL,
+ max ENUMERATED {true, ...} OPTIONAL,
+ avg ENUMERATED {true, ...} OPTIONAL,
+ ...,
+ ssbIndex INTEGER (1.. 65535, ...) OPTIONAL,
+ nonGoB-BFmode-Index INTEGER (1.. 65535, ...) OPTIONAL,
+ mIMO-mode-Index INTEGER (1.. 2, ...) OPTIONAL
+}
+
+TestCondInfo ::= SEQUENCE{
+ testType TestCond-Type,
+ testExpr TestCond-Expression OPTIONAL,
+ testValue TestCond-Value OPTIONAL,
+ ...
+}
+
+TestCond-Type ::= CHOICE{
+ gBR ENUMERATED {true, ...},
+ aMBR ENUMERATED {true, ...},
+ isStat ENUMERATED {true, ...},
+ isCatM ENUMERATED {true, ...},
+ rSRP ENUMERATED {true, ...},
+ rSRQ ENUMERATED {true, ...},
+ ...,
+ ul-rSRP ENUMERATED {true, ...},
+ cQI ENUMERATED {true, ...},
+ fiveQI ENUMERATED {true, ...},
+ qCI ENUMERATED {true, ...},
+ sNSSAI ENUMERATED {true, ...}
+}
+
+TestCond-Expression ::= ENUMERATED {
+equal,
+greaterthan,
+lessthan,
+contains,
+present,
+...
+}
+
+TestCond-Value ::= CHOICE{
+ valueInt INTEGER,
+ valueEnum INTEGER,
+ valueBool BOOLEAN,
+ valueBitS BIT STRING,
+ valueOctS OCTET STRING,
+ valuePrtS PrintableString,
+ ...,
+ valueReal REAL
+}
+
+-- **************************************************************
+-- Lists
+-- **************************************************************
+
+maxnoofCells INTEGER ::= 16384
+-- maxnoofRICStyles INTEGER ::= 63
+maxnoofMeasurementInfo INTEGER ::= 65535
+maxnoofLabelInfo INTEGER ::= 2147483647
+maxnoofMeasurementRecord INTEGER ::= 65535
+maxnoofMeasurementValue INTEGER ::= 2147483647
+maxnoofConditionInfo INTEGER ::= 32768
+-- maxnoofUEID INTEGER ::= 65535
+maxnoofConditionInfoPerSub INTEGER ::= 32768
+maxnoofUEIDPerSub INTEGER ::= 65535
+maxnoofUEMeasReport INTEGER ::= 65535
+maxnoofBin INTEGER ::= 65535
+
+BinRangeDefinition ::= SEQUENCE {
+binRangeListX BinRangeList,
+binRangeListY BinRangeList OPTIONAL -- This IE shall not be present for a distribution measurement type that doesn't use Distribution Bin Y --,
+binRangeListZ BinRangeList OPTIONAL -- This IE shall not be present for a distribution measurement type that doesn't use Distribution Bin Z --,
+...
+}
+
+BinRangeList ::= SEQUENCE (SIZE(1..maxnoofBin)) OF BinRangeItem
+
+BinRangeItem ::= SEQUENCE {
+ binIndex BinIndex,
+ startValue BinRangeValue,
+ endValue BinRangeValue,
+ ...
+}
+
+DistMeasurementBinRangeList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF DistMeasurementBinRangeItem
+
+DistMeasurementBinRangeItem ::= SEQUENCE {
+ measType MeasurementType,
+ binRangeDef BinRangeDefinition,
+ ...
+}
+
+MeasurementInfoList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementInfoItem
+
+MeasurementInfoItem ::= SEQUENCE {
+ measType MeasurementType,
+ labelInfoList LabelInfoList,
+ ...
+}
+
+LabelInfoList ::= SEQUENCE (SIZE(1..maxnoofLabelInfo)) OF LabelInfoItem
+
+LabelInfoItem ::= SEQUENCE {
+ measLabel MeasurementLabel,
+ ...
+}
+
+MeasurementData ::= SEQUENCE (SIZE(1..maxnoofMeasurementRecord)) OF MeasurementDataItem
+
+MeasurementDataItem ::= SEQUENCE {
+measRecord MeasurementRecord,
+incompleteFlag ENUMERATED {true, ...} OPTIONAL,
+...
+}
+
+MeasurementRecord ::= SEQUENCE (SIZE(1..maxnoofMeasurementValue)) OF MeasurementRecordItem
+
+MeasurementRecordItem ::= CHOICE {
+ integer INTEGER (0.. 4294967295),
+ real REAL,
+ noValue NULL,
+ ...
+}
+
+MeasurementInfo-Action-List ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementInfo-Action-Item
+
+MeasurementInfo-Action-Item ::= SEQUENCE {
+ measName MeasurementTypeName,
+ measID MeasurementTypeID OPTIONAL,
+ ...,
+ binRangeDef BinRangeDefinition OPTIONAL
+}
+
+MeasurementCondList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementCondItem
+
+MeasurementCondItem ::= SEQUENCE {
+ measType MeasurementType,
+ matchingCond MatchingCondList,
+ ...,
+ binRangeDef BinRangeDefinition OPTIONAL
+}
+
+MeasurementCondUEidList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementCondUEidItem
+
+MeasurementCondUEidItem ::= SEQUENCE {
+ measType MeasurementType,
+ matchingCond MatchingCondList,
+ matchingUEidList MatchingUEidList OPTIONAL,
+ ...,
+ matchingUEidPerGP MatchingUEidPerGP OPTIONAL
+}
+
+MatchingCondList ::= SEQUENCE (SIZE(1..maxnoofConditionInfo)) OF MatchingCondItem
+
+MatchingCondItem ::= SEQUENCE {
+matchingCondChoice MatchingCondItem-Choice,
+logicalOR LogicalOR OPTIONAL,
+...
+}
+
+MatchingCondItem-Choice ::= CHOICE{
+ measLabel MeasurementLabel,
+ testCondInfo TestCondInfo,
+ ...
+}
+
+MatchingUEidList ::= SEQUENCE (SIZE(1..maxnoofUEID)) OF MatchingUEidItem
+
+MatchingUEidItem ::= SEQUENCE{
+ ueID UEID,
+ ...
+}
+
+MatchingUEidPerGP ::= SEQUENCE (SIZE(1..maxnoofMeasurementRecord)) OF MatchingUEidPerGP-Item
+
+MatchingUEidPerGP-Item ::= SEQUENCE{
+ matchedPerGP CHOICE{
+ noUEmatched ENUMERATED {true, ...},
+ oneOrMoreUEmatched MatchingUEidList-PerGP,
+ ...
+ },
+ ...
+}
+
+MatchingUEidList-PerGP ::= SEQUENCE (SIZE(1..maxnoofUEID)) OF MatchingUEidItem-PerGP
+
+MatchingUEidItem-PerGP ::= SEQUENCE{
+ ueID UEID,
+ ...
+}
+
+
+MatchingUeCondPerSubList ::= SEQUENCE (SIZE(1..maxnoofConditionInfoPerSub)) OF MatchingUeCondPerSubItem
+
+MatchingUeCondPerSubItem ::= SEQUENCE{
+ testCondInfo TestCondInfo,
+ ...,
+ logicalOR LogicalOR OPTIONAL
+}
+
+MatchingUEidPerSubList ::= SEQUENCE (SIZE(2..maxnoofUEIDPerSub)) OF MatchingUEidPerSubItem
+
+MatchingUEidPerSubItem ::= SEQUENCE{
+ ueID UEID,
+ ...
+}
+
+UEMeasurementReportList ::= SEQUENCE (SIZE(1..maxnoofUEMeasReport)) OF UEMeasurementReportItem
+
+UEMeasurementReportItem ::= SEQUENCE{
+ ueID UEID,
+ measReport E2SM-KPM-IndicationMessage-Format1,
+ ...
+}
+
+
+
+-- **************************************************************
+-- E2SM-KPM Service Model IEs
+-- **************************************************************
+
+-- **************************************************************
+-- Event Trigger Definition OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-EventTriggerDefinition ::= SEQUENCE{
+ eventDefinition-formats CHOICE{
+ eventDefinition-Format1 E2SM-KPM-EventTriggerDefinition-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-KPM-EventTriggerDefinition-Format1 ::= SEQUENCE{
+ reportingPeriod INTEGER (1.. 4294967295),
+ ...
+}
+
+-- **************************************************************
+-- Action Definition OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-ActionDefinition ::= SEQUENCE{
+ ric-Style-Type RIC-Style-Type,
+ actionDefinition-formats CHOICE{
+ actionDefinition-Format1 E2SM-KPM-ActionDefinition-Format1,
+ actionDefinition-Format2 E2SM-KPM-ActionDefinition-Format2,
+ actionDefinition-Format3 E2SM-KPM-ActionDefinition-Format3,
+ ...,
+ actionDefinition-Format4 E2SM-KPM-ActionDefinition-Format4,
+ actionDefinition-Format5 E2SM-KPM-ActionDefinition-Format5
+ },
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format1 ::= SEQUENCE {
+ measInfoList MeasurementInfoList,
+ granulPeriod GranularityPeriod,
+ cellGlobalID CGI OPTIONAL,
+ ...,
+ distMeasBinRangeInfo DistMeasurementBinRangeList OPTIONAL
+}
+
+E2SM-KPM-ActionDefinition-Format2 ::= SEQUENCE {
+ ueID UEID,
+ subscriptInfo E2SM-KPM-ActionDefinition-Format1,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format3 ::= SEQUENCE {
+ measCondList MeasurementCondList,
+ granulPeriod GranularityPeriod,
+ cellGlobalID CGI OPTIONAL,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format4 ::= SEQUENCE {
+ matchingUeCondList MatchingUeCondPerSubList,
+ subscriptionInfo E2SM-KPM-ActionDefinition-Format1,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format5 ::= SEQUENCE {
+ matchingUEidList MatchingUEidPerSubList,
+ subscriptionInfo E2SM-KPM-ActionDefinition-Format1,
+ ...
+}
+
+
+-- **************************************************************
+-- Indication Header OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-IndicationHeader ::= SEQUENCE{
+ indicationHeader-formats CHOICE{
+ indicationHeader-Format1 E2SM-KPM-IndicationHeader-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-KPM-IndicationHeader-Format1 ::= SEQUENCE{
+ colletStartTime TimeStamp,
+ fileFormatversion PrintableString (SIZE (0..15), ...) OPTIONAL,
+ senderName PrintableString (SIZE (0..400), ...) OPTIONAL,
+ senderType PrintableString (SIZE (0..8), ...) OPTIONAL,
+ vendorName PrintableString (SIZE (0..32), ...) OPTIONAL,
+ ...
+}
+
+-- **************************************************************
+-- Indication Message OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-IndicationMessage ::= SEQUENCE{
+ indicationMessage-formats CHOICE{
+ indicationMessage-Format1 E2SM-KPM-IndicationMessage-Format1,
+ indicationMessage-Format2 E2SM-KPM-IndicationMessage-Format2,
+ ...,
+ indicationMessage-Format3 E2SM-KPM-IndicationMessage-Format3
+ },
+ ...
+}
+
+E2SM-KPM-IndicationMessage-Format1 ::= SEQUENCE {
+ measData MeasurementData,
+ measInfoList MeasurementInfoList OPTIONAL,
+ granulPeriod GranularityPeriod OPTIONAL,
+ ...
+}
+
+E2SM-KPM-IndicationMessage-Format2 ::= SEQUENCE {
+ measData MeasurementData,
+ measCondUEidList MeasurementCondUEidList,
+ granulPeriod GranularityPeriod OPTIONAL,
+ ...
+}
+
+E2SM-KPM-IndicationMessage-Format3 ::= SEQUENCE {
+ ueMeasReportList UEMeasurementReportList,
+ ...
+}
+
+
+-- ***************************************************************
+-- RAN Function Definition OCTET STRING contents
+-- ***************************************************************
+
+E2SM-KPM-RANfunction-Description ::= SEQUENCE{
+ ranFunction-Name RANfunction-Name,
+ ric-EventTriggerStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RIC-EventTriggerStyle-Item OPTIONAL,
+ ric-ReportStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RIC-ReportStyle-Item OPTIONAL,
+ ...
+}
+
+RIC-EventTriggerStyle-Item ::= SEQUENCE{
+ ric-EventTriggerStyle-Type RIC-Style-Type,
+ ric-EventTriggerStyle-Name RIC-Style-Name,
+ ric-EventTriggerFormat-Type RIC-Format-Type,
+ ...
+}
+
+RIC-ReportStyle-Item ::= SEQUENCE{
+ ric-ReportStyle-Type RIC-Style-Type,
+ ric-ReportStyle-Name RIC-Style-Name,
+ ric-ActionFormat-Type RIC-Format-Type,
+ measInfo-Action-List MeasurementInfo-Action-List,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ...
+}
+
+END
+
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/e2sm-ni-v1.00.asn b/epan/dissectors/asn1/e2ap/e2sm-ni-v1.00.asn
new file mode 100644
index 0000000000..52b04b1adc
--- /dev/null
+++ b/epan/dissectors/asn1/e2ap/e2sm-ni-v1.00.asn
@@ -0,0 +1,486 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM-NI
+-- Information Element Definitions
+--
+-- **************************************************************
+
+E2SM-NI-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1
+(1) e2sm(2) e2sm-NI-IEs (1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+-- IEs
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- Lists
+--
+-- **************************************************************
+
+maxofInterfaceProtocolTests INTEGER ::= 15
+maxofRANueGroups INTEGER ::= 255
+maxofActionParameters INTEGER ::= 255
+maxofRANparameters INTEGER ::= 65535
+maxofNItypes INTEGER ::= 63
+maxofRICstyles INTEGER ::= 63
+
+-- **************************************************************
+-- E2SM-NI Service model IEs
+-- **************************************************************
+
+--
+-- Event Trigger Definition OCTET STRING contents
+--
+
+-- E2SM-NI-EventTriggerDefinition IE
+E2SM-NI-EventTriggerDefinition ::= CHOICE{
+ eventDefinition-Format1 E2SM-NI-EventTriggerDefinition-Format1,
+ ...
+}
+
+-- E2SM-NI-EventTriggerDefinition IE is used for Event Trigger Definition Format 1
+E2SM-NI-EventTriggerDefinition-Format1 ::= SEQUENCE{
+ interface-type NI-Type,
+ interface-ID NI-Identifier,
+ interfaceDirection NI-Direction,
+ interfaceMessageType NI-MessageType,
+ interfaceProtocolIE-List SEQUENCE (SIZE(1..maxofInterfaceProtocolTests)) OF NI-ProtocolIE-Item OPTIONAL,
+ ...
+}
+
+--
+-- Action Definition OCTET STRING contents
+--
+-- E2SM-NI-ActionDefinition IE
+ E2SM-NI-ActionDefinition ::= SEQUENCE{
+ ric-Style-Type RIC-Style-Type,
+ action-Definition-Format E2SM-NI-ActionDefinitionFormat,
+ ...
+}
+
+E2SM-NI-ActionDefinitionFormat ::= CHOICE{
+ actionDefinition-Format1 E2SM-NI-ActionDefinition-Format1,
+ actionDefinition-Format2 E2SM-NI-ActionDefinition-Format2,
+ ...
+}
+
+-- E2SM-NI-ActionDefinition IE is used for Action Format 1
+E2SM-NI-ActionDefinition-Format1 ::= SEQUENCE{
+ actionParameter-List SEQUENCE (SIZE(1..maxofActionParameters)) OF RANparameter-Item OPTIONAL,
+ ...
+}
+
+
+-- E2SM-NI-ActionDefinition IE is used for Action Format 2
+E2SM-NI-ActionDefinition-Format2 ::= SEQUENCE{
+ ranUEgroup-List SEQUENCE (SIZE(1..maxofRANueGroups)) OF RANueGroup-Item OPTIONAL,
+ ...
+}
+
+--
+-- Indication Header OCTET STRING contents
+--
+
+-- E2SM-NI-IndicationHeader IE
+E2SM-NI-IndicationHeader ::= CHOICE{
+ indicationHeader-Format1 E2SM-NI-IndicationHeader-Format1,
+ ...
+}
+
+-- E2SM-NI-IndicationHeader Format 1
+E2SM-NI-IndicationHeader-Format1 ::= SEQUENCE{
+ interface-type NI-Type,
+ interface-ID NI-Identifier,
+ interfaceDirection NI-Direction,
+ timestamp NI-TimeStamp OPTIONAL,
+ ...
+}
+
+--
+-- Indication Message OCTET STRING contents
+--
+
+-- E2SM-NI-IndicationMessage IE
+E2SM-NI-IndicationMessage ::= CHOICE{
+ indicationMessage-Format1 E2SM-NI-IndicationMessage-Format1,
+ ...
+}
+
+-- E2SM-NI-IndicationMessage IE
+E2SM-NI-IndicationMessage-Format1 ::= SEQUENCE{
+ interfaceMessage NI-Message,
+ ...
+}
+
+--
+-- Call Process ID
+--
+
+E2SM-NI-CallProcessID ::= CHOICE{
+ callProcessID-Format1 E2SM-NI-CallProcessID-Format1,
+ callProcessID-Format2 E2SM-NI-CallProcessID-Format2,
+ ...
+}
+-- E2SM-NI-callProcessID IE Format 1
+
+E2SM-NI-CallProcessID-Format1 ::= SEQUENCE{
+ callProcess-ID RANcallProcess-ID-number,
+ ...
+}
+
+E2SM-NI-CallProcessID-Format2 ::= SEQUENCE{
+ callProcess-ID RANcallProcess-ID-string,
+ ...
+}
+
+--
+-- Control Header OCTET STRING contents
+--
+
+-- E2SM-NI-ControlHeader IE
+E2SM-NI-ControlHeader ::= CHOICE{
+ controlHeader-Format1 E2SM-NI-ControlHeader-Format1,
+ ...
+}
+-- E2SM-NI-ControlHeader Format 1
+E2SM-NI-ControlHeader-Format1 ::= SEQUENCE{
+ interface-type NI-Type,
+ interface-ID NI-Identifier,
+ interface-Direction NI-Direction,
+ ric-Control-Message-Priority RIC-Control-Message-Priority OPTIONAL,
+ ...
+}
+
+
+--
+-- Control Message OCTET STRING contents
+--
+
+-- E2SM-NI-ControlHeader IE
+E2SM-NI-ControlMessage ::= CHOICE{
+ controlMessage-Format1 E2SM-NI-ControlMessage-Format1,
+ ...
+}
+
+-- E2SM-NI-ControlMessage Format 1
+E2SM-NI-ControlMessage-Format1 ::= SEQUENCE{
+ interfaceMessage NI-Message,
+ ...
+}
+
+--
+-- Control Outcome OCTET STRING contents
+--
+
+-- E2SM-NI-ControlOutcome IE
+E2SM-NI-ControlOutcome ::= CHOICE{
+ controlOutcome-Format1 E2SM-NI-ControlOutcome-Format1,
+ ...
+}
+
+-- E2SM-NI-ControlOutcome Format 1
+E2SM-NI-ControlOutcome-Format1 ::= SEQUENCE{
+ outcomeElement-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANparameter-Item OPTIONAL,
+ ...
+}
+
+--
+-- RAN Function Description OCTET STRING contents
+--
+
+-- E2SM-NI-RANfunction-Description
+E2SM-NI-RANfunction-Description ::= SEQUENCE{
+ ranFunction-Name RANfunction-Name,
+ ni-Type-List SEQUENCE (SIZE(1..maxofNItypes)) OF E2SM-NI-RANfunction-Item OPTIONAL,
+ ...
+}
+
+E2SM-NI-RANfunction-Item ::= SEQUENCE{
+ interface-type NI-Type,
+ ric-EventTriggerStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-EventTriggerStyle-List OPTIONAL,
+ ric-ReportStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-ReportStyle-List OPTIONAL,
+ ric-InsertStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-InsertStyle-List OPTIONAL,
+ ric-ControlStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-ControlStyle-List OPTIONAL,
+ ric-PolicyStyle-List SEQUENCE (SIZE(1..maxofRICstyles)) OF RIC-PolicyStyle-List OPTIONAL,
+ ...
+}
+
+--
+-- commmon IEs
+--
+
+-- A
+-- B
+-- C
+-- D
+-- E
+-- F
+-- G
+Global-eNB-ID ::= GlobalENB-ID
+Global-en-gNB-ID ::= GlobalenGNB-ID
+Global-gNB-DU-ID ::= SEQUENCE{
+ global-ng-RAN-ID Global-ng-RAN-ID,
+ gNB-DU-ID GNB-DU-ID
+}
+
+Global-gNB-CU-UP-ID ::= SEQUENCE{
+ global-ng-RAN-ID Global-ng-RAN-ID,
+ gNB-CU-UP-ID GNB-CU-UP-ID
+}
+
+Global-ng-RAN-ID ::= GlobalNG-RANNode-ID
+-- H
+-- I
+-- J
+-- K
+-- L
+-- M
+-- N
+NI-Direction ::= ENUMERATED{
+ incoming,
+ outgoing,
+ both,
+ ...
+}
+
+
+
+NI-Identifier ::= CHOICE{
+ global-eNB-ID Global-eNB-ID,
+ global-en-gNB-ID Global-en-gNB-ID,
+ global-ng-RAN-ID Global-ng-RAN-ID,
+ global-gNB-DU-ID Global-gNB-DU-ID,
+ global-gNB-CU-UP-ID Global-gNB-CU-UP-ID,
+ ...
+}
+
+
+
+NI-Message ::= OCTET STRING
+
+NI-MessageType::= CHOICE{
+ s1MessageType NI-MessageTypeS1,
+ x2MessageType NI-MessageTypeX2,
+ ngMessageType NI-MessageTypeNG,
+ xnMessageType NI-MessageTypeXn,
+ f1MessageType NI-MessageTypeF1,
+ e1MessageType NI-MessageTypeE1,
+ ...
+}
+
+NI-MessageTypeS1 ::= NI-MessageTypeApproach1
+NI-MessageTypeX2 ::= NI-MessageTypeApproach1
+NI-MessageTypeNG ::= NI-MessageTypeApproach1
+NI-MessageTypeXn ::= NI-MessageTypeApproach1
+NI-MessageTypeF1 ::= NI-MessageTypeApproach1
+NI-MessageTypeE1 ::= NI-MessageTypeApproach1
+
+NI-MessageTypeApproach1 ::= SEQUENCE {
+ procedureCode ProcedureCode,
+ typeOfMessage TypeOfMessage,
+ ...
+}
+
+TypeOfMessage ::= ENUMERATED { nothing, initiating-message, successful-outcome, unsuccessful-outcome }
+
+
+NI-ProtocolIE-Item ::= SEQUENCE{
+ interfaceProtocolIE-ID NI-ProtocolIE-ID,
+ interfaceProtocolIE-Test NI-ProtocolIE-Test,
+ interfaceProtocolIE-Value NI-ProtocolIE-Value,
+ ...
+}
+
+NI-ProtocolIE-ID ::= ProtocolIE-ID
+
+NI-ProtocolIE-Test ::= ENUMERATED{
+ equal,
+ greaterthan,
+ lessthan,
+ contains,
+ present,
+ ...
+}
+
+NI-ProtocolIE-Value ::= CHOICE{
+ valueInt INTEGER,
+ valueEnum INTEGER,
+ valueBool BOOLEAN,
+ valueBitS BIT STRING,
+ valueOctS OCTET STRING,
+ valuePrtS PrintableString,
+ ...
+}
+
+NI-TimeStamp ::= OCTET STRING (SIZE(8))
+
+NI-Type ::= ENUMERATED{
+ s1,
+ x2,
+ ng,
+ xn,
+ f1,
+ e1,
+ ...
+}
+
+-- O
+-- P
+-- Q
+-- R
+
+RANcallProcess-ID-number ::= INTEGER
+
+RANcallProcess-ID-string ::= PrintableString(SIZE(1..150,...))
+
+
+RANimperativePolicy ::= SEQUENCE{
+ ranImperativePolicy-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANparameter-Item OPTIONAL,
+ ...
+}
+
+RANparameter-Item ::= SEQUENCE {
+ ranParameter-ID RANparameter-ID,
+ ranParameter-Value RANparameter-Value,
+ ...
+}
+
+RANparameterDef-Item ::= SEQUENCE {
+ ranParameter-ID RANparameter-ID,
+ ranParameter-Name RANparameter-Name,
+ ranParameter-Type RANparameter-Type,
+ ...
+}
+
+RANparameter-ID ::= INTEGER (0..maxofRANparameters)
+
+RANparameter-Name ::= PrintableString(SIZE(1..150,...))
+
+RANparameter-Test-Condition ::= ENUMERATED{
+ equal,
+ greaterthan,
+ lessthan,
+ contains,
+ present,
+ ...
+}
+
+RANparameter-Type ::= ENUMERATED{
+ integer,
+ enumerated,
+ boolean,
+ bit-string,
+ octet-string,
+ printable-string,
+ ...
+}
+
+RANparameter-Value ::= CHOICE{
+ valueInt INTEGER,
+ valueEnum INTEGER,
+ valueBool BOOLEAN,
+ valueBitS BIT STRING,
+ valueOctS OCTET STRING,
+ valuePrtS PrintableString,
+ ...
+}
+
+
+RANueGroupID ::= INTEGER (0..maxofRANueGroups)
+
+RANueGroup-Item ::= SEQUENCE {
+ ranUEgroupID RANueGroupID,
+ ranUEgroupDefinition RANueGroupDefinition,
+ ranPolicy RANimperativePolicy,
+ ...
+}
+
+
+
+RANueGroupDefinition ::= SEQUENCE{
+ ranUEgroupDef-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANueGroupDef-Item OPTIONAL,
+ ...
+}
+
+
+RANueGroupDef-Item ::= SEQUENCE{
+ ranParameter-ID RANparameter-ID,
+ ranParameter-Test RANparameter-Test-Condition,
+ ranParameter-Value RANparameter-Value,
+ ...
+}
+
+RIC-Control-Message-Priority ::= INTEGER
+
+
+RIC-ControlStyle-List ::= SEQUENCE{
+ ric-ControlStyle-Type RIC-Style-Type,
+ ric-ControlStyle-Name RIC-Style-Name,
+ ric-ControlFormat-Type RIC-Format-Type,
+ ric-ControlHeaderFormat-Type RIC-Format-Type,
+ ric-ControlMessageFormat-Type RIC-Format-Type,
+ ric-CallProcessIDFormat-Type RIC-Format-Type,
+ ric-ControlOutcomeFormat-Type RIC-Format-Type,
+ ric-ControlOutcomeRanParaDef-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANparameterDef-Item,
+ ...
+}
+
+RIC-EventTriggerStyle-List ::= SEQUENCE{
+ ric-EventTriggerStyle-Type RIC-Style-Type,
+ ric-EventTriggerStyle-Name RIC-Style-Name,
+ ric-EventTriggerFormat-Type RIC-Format-Type,
+ ...
+}
+RIC-InsertStyle-List ::= SEQUENCE{
+ ric-InsertStyle-Type RIC-Style-Type,
+ ric-InsertStyle-Name RIC-Style-Name,
+ ric-InsertActionFormat-Type RIC-Format-Type,
+ ric-InsertRanParameterDef-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANparameterDef-Item,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ric-CallProcessIDFormat-Type RIC-Format-Type,
+ ...
+}
+RIC-PolicyStyle-List ::= SEQUENCE{
+ ric-PolicyStyle-Type RIC-Style-Type,
+ ric-PolicyStyle-Name RIC-Style-Name,
+ ric-PolicyActionFormat-Type RIC-Format-Type,
+ ric-PolicyRanParameterDef-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANparameterDef-Item,
+ ...
+}
+
+RIC-ReportStyle-List ::= SEQUENCE{
+ ric-ReportStyle-Type RIC-Style-Type,
+ ric-ReportStyle-Name RIC-Style-Name,
+ ric-ReportActionFormat-Type RIC-Format-Type,
+ ric-ReportRanParameterDef-List SEQUENCE (SIZE(1..maxofRANparameters)) OF RANparameterDef-Item,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ...
+}
+
+-- RIC-Format-Type ::= INTEGER
+
+-- RIC-Style-Type ::= INTEGER
+
+-- RIC-Style-Name ::= PrintableString(SIZE(1..150,...))
+
+
+-- S
+-- T
+-- U
+-- V
+-- W
+-- X
+-- Y
+-- Z
+
+END
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/e2sm-rc-v1.03.asn b/epan/dissectors/asn1/e2ap/e2sm-rc-v1.03.asn
new file mode 100644
index 0000000000..0ec017c796
--- /dev/null
+++ b/epan/dissectors/asn1/e2ap/e2sm-rc-v1.03.asn
@@ -0,0 +1,1150 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM-RC Information Element Definitions
+-- **************************************************************
+
+E2SM-RC-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) oran(53148) e2(1) version1(1) e2sm(2) e2sm-RC-IEs (3)}
+
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+
+-- **************************************************************
+-- E2SM Common IEs
+-- **************************************************************
+
+IMPORTS
+ CGI,
+ E-UTRA-ARFCN,
+ EUTRA-CGI,
+ E-UTRA-PCI,
+ E-UTRA-TAC,
+ FiveGS-TAC,
+ InterfaceIdentifier,
+ InterfaceType,
+ Interface-MessageID,
+ NRFrequencyInfo,
+ -- NR-CGI,
+ NR-PCI,
+ RANfunction-Name,
+ RIC-Format-Type,
+ RIC-Style-Name,
+ RIC-Style-Type,
+ RRC-MessageID,
+ ServingCell-ARFCN,
+ ServingCell-PCI,
+ UEID
+FROM E2SM-COMMON-IEs;
+
+
+-- *****************************************************
+-- CONSTANTS
+-- *****************************************************
+
+maxnoofMessages INTEGER ::= 65535
+maxnoofE2InfoChanges INTEGER ::= 65535
+maxnoofUEInfoChanges INTEGER ::= 65535
+maxnoofRRCstate INTEGER ::= 8
+maxnoofParametersToReport INTEGER ::= 65535
+maxnoofPolicyConditions INTEGER ::= 65535
+maxnoofAssociatedRANParameters INTEGER ::= 65535
+maxnoofUEID INTEGER ::= 65535
+maxnoofCellID INTEGER ::= 65535
+maxnoofRANOutcomeParameters INTEGER ::= 255
+maxnoofParametersinStructure INTEGER ::= 65535
+maxnoofItemsinList INTEGER ::= 65535
+maxnoofUEInfo INTEGER ::= 65535
+maxnoofCellInfo INTEGER ::= 65535
+maxnoofUEeventInfo INTEGER ::= 65535
+maxnoofRANparamTest INTEGER ::= 255
+maxnoofNeighbourCell INTEGER ::= 65535
+maxnoofRICStyles INTEGER ::= 63
+maxnoofCallProcessTypes INTEGER ::= 65535
+maxnoofCallProcessBreakpoints INTEGER ::= 65535
+maxnoofInsertIndication INTEGER ::= 65535
+maxnoofControlAction INTEGER ::= 65535
+maxnoofPolicyAction INTEGER ::= 65535
+maxnoofInsertIndicationActions INTEGER ::= 63
+maxnoofMulCtrlActions INTEGER ::= 63
+
+
+-- *****************************************************
+-- IEs
+-- *****************************************************
+
+-- N.B.. copied from ric 2.01...
+-- copied from v16.2.0
+-- NR-CGI ::= SEQUENCE {
+-- pLMNIdentity PLMNIdentity,
+-- nRCellIdentity NRCellIdentity,
+-- ...
+-- }
+
+LogicalOR ::= ENUMERATED {true, false, ...}
+
+NeighborCell-List ::= SEQUENCE (SIZE(1..maxnoofNeighbourCell)) OF NeighborCell-Item
+
+NeighborCell-Item ::= CHOICE {
+ ranType-Choice-NR NeighborCell-Item-Choice-NR,
+ ranType-Choice-EUTRA NeighborCell-Item-Choice-E-UTRA,
+ ...
+}
+
+NeighborCell-Item-Choice-NR ::= SEQUENCE {
+ nR-CGI NR-CGI,
+ nR-PCI NR-PCI,
+ fiveGS-TAC FiveGS-TAC,
+ nR-mode-info ENUMERATED {fdd, tdd, ...},
+ nR-FreqInfo NRFrequencyInfo,
+ x2-Xn-established ENUMERATED {true, false, ...},
+ hO-validated ENUMERATED {true, false, ...},
+ version INTEGER (1..65535, ...),
+ ...
+}
+
+NeighborCell-Item-Choice-E-UTRA ::= SEQUENCE {
+ eUTRA-CGI EUTRA-CGI,
+ eUTRA-PCI E-UTRA-PCI,
+ eUTRA-ARFCN E-UTRA-ARFCN,
+ eUTRA-TAC E-UTRA-TAC,
+ x2-Xn-established ENUMERATED {true, false, ...},
+ hO-validated ENUMERATED {true, false, ...},
+ version INTEGER (1..65535, ...),
+ ...
+}
+
+NeighborRelation-Info ::= SEQUENCE {
+ servingCellPCI ServingCell-PCI,
+ servingCellARFCN ServingCell-ARFCN,
+ neighborCell-List NeighborCell-List,
+ ...
+}
+
+RRC-State ::= ENUMERATED {rrc-connected, rrc-inactive, rrc-idle, any, ...}
+
+
+-------------------------------
+-- Event Trigger related IEs
+-------------------------------
+
+EventTrigger-Cell-Info ::= SEQUENCE {
+cellInfo-List SEQUENCE (SIZE(1..maxnoofCellInfo)) OF EventTrigger-Cell-Info-Item,
+ ...
+}
+
+EventTrigger-Cell-Info-Item ::= SEQUENCE {
+ eventTriggerCellID RIC-EventTrigger-Cell-ID,
+ cellType CHOICE {
+ cellType-Choice-Individual EventTrigger-Cell-Info-Item-Choice-Individual,
+ cellType-Choice-Group EventTrigger-Cell-Info-Item-Choice-Group,
+ ...
+ },
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+EventTrigger-Cell-Info-Item-Choice-Individual ::= SEQUENCE {
+ cellGlobalID CGI,
+ ...
+}
+
+EventTrigger-Cell-Info-Item-Choice-Group ::= SEQUENCE {
+ ranParameterTesting RANParameter-Testing,
+ ...
+}
+
+
+
+EventTrigger-UE-Info ::= SEQUENCE {
+ueInfo-List SEQUENCE (SIZE(1..maxnoofUEInfo)) OF EventTrigger-UE-Info-Item,
+...
+}
+
+EventTrigger-UE-Info-Item ::= SEQUENCE {
+ eventTriggerUEID RIC-EventTrigger-UE-ID,
+ ueType CHOICE {
+ ueType-Choice-Individual EventTrigger-UE-Info-Item-Choice-Individual,
+ ueType-Choice-Group EventTrigger-UE-Info-Item-Choice-Group,
+ ...
+ },
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+EventTrigger-UE-Info-Item-Choice-Individual ::= SEQUENCE {
+ ueID UEID,
+ ranParameterTesting RANParameter-Testing OPTIONAL,
+ ...
+}
+
+EventTrigger-UE-Info-Item-Choice-Group ::= SEQUENCE {
+ ranParameterTesting RANParameter-Testing,
+ ...
+}
+
+
+
+EventTrigger-UEevent-Info ::= SEQUENCE {
+ueEvent-List SEQUENCE (SIZE(1..maxnoofUEeventInfo)) OF EventTrigger-UEevent-Info-Item,
+...
+}
+
+EventTrigger-UEevent-Info-Item ::= SEQUENCE {
+ ueEventID RIC-EventTrigger-UEevent-ID,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+-------------------------------
+-- RAN Parameter related IEs
+-------------------------------
+
+-- RANParameter-ID ::= INTEGER (1..2^32, ...)
+RANParameter-ID ::= INTEGER (1..4294967296, ...)
+
+RANParameter-Name ::= PrintableString (SIZE(1..150, ...))
+
+RANParameter-Definition ::= SEQUENCE {
+ ranParameter-Definition-Choice RANParameter-Definition-Choice,
+ ...
+}
+
+RANParameter-Definition-Choice ::= CHOICE {
+ choiceLIST RANParameter-Definition-Choice-LIST,
+ choiceSTRUCTURE RANParameter-Definition-Choice-STRUCTURE,
+ ...
+}
+
+RANParameter-Definition-Choice-LIST ::= SEQUENCE {
+ ranParameter-List SEQUENCE (SIZE(1..maxnoofItemsinList)) OF RANParameter-Definition-Choice-LIST-Item,
+ ...
+}
+
+RANParameter-Definition-Choice-LIST-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ ...
+}
+
+RANParameter-Definition-Choice-STRUCTURE ::= SEQUENCE {
+ ranParameter-STRUCTURE SEQUENCE (SIZE(1..maxnoofParametersinStructure)) OF RANParameter-Definition-Choice-STRUCTURE-Item,
+ ...
+}
+
+RANParameter-Definition-Choice-STRUCTURE-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ ...
+}
+
+RANParameter-Value ::= CHOICE {
+ valueBoolean BOOLEAN,
+ valueInt INTEGER,
+ valueReal REAL,
+ valueBitS BIT STRING,
+ valueOctS OCTET STRING,
+ valuePrintableString PrintableString,
+ ...
+}
+
+RANParameter-ValueType ::= CHOICE {
+ ranP-Choice-ElementTrue RANParameter-ValueType-Choice-ElementTrue,
+ ranP-Choice-ElementFalse RANParameter-ValueType-Choice-ElementFalse,
+ ranP-Choice-Structure RANParameter-ValueType-Choice-Structure,
+ ranP-Choice-List RANParameter-ValueType-Choice-List,
+ ...
+}
+
+
+
+RANParameter-ValueType-Choice-ElementTrue ::= SEQUENCE {
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+RANParameter-ValueType-Choice-ElementFalse ::= SEQUENCE {
+ ranParameter-value RANParameter-Value OPTIONAL,
+-- C-ifControl: This IE shall be present if it is part of a RIC Control Request message. Otherwise it is optional.
+ ...
+}
+
+RANParameter-ValueType-Choice-Structure ::= SEQUENCE {
+ ranParameter-Structure RANParameter-STRUCTURE,
+ ...
+}
+
+RANParameter-ValueType-Choice-List ::= SEQUENCE {
+ ranParameter-List RANParameter-LIST,
+ ...
+}
+
+
+RANParameter-STRUCTURE ::= SEQUENCE {
+ sequence-of-ranParameters SEQUENCE (SIZE(1..maxnoofParametersinStructure)) OF RANParameter-STRUCTURE-Item OPTIONAL,
+ ...
+}
+
+RANParameter-STRUCTURE-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+RANParameter-LIST ::= SEQUENCE {
+ list-of-ranParameter SEQUENCE (SIZE(1..maxnoofItemsinList)) OF RANParameter-STRUCTURE,
+ ...
+}
+
+
+RANParameter-Testing ::= SEQUENCE (SIZE(1..maxnoofRANparamTest)) OF RANParameter-Testing-Item
+
+RANParameter-TestingCondition ::= CHOICE {
+ ranP-Choice-comparison ENUMERATED {equal, difference, greaterthan, lessthan, contains, starts-with, ...},
+ ranP-Choice-presence ENUMERATED {present, configured, rollover, non-zero, ...},
+ ...
+}
+
+RANParameter-Testing-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-Type CHOICE {
+ ranP-Choice-List RANParameter-Testing-Item-Choice-List,
+ ranP-Choice-Structure RANParameter-Testing-Item-Choice-Structure,
+ ranP-Choice-ElementTrue RANParameter-Testing-Item-Choice-ElementTrue,
+ ranP-Choice-ElementFalse RANParameter-Testing-Item-Choice-ElementFalse,
+ ...
+ },
+ ...
+}
+
+RANParameter-Testing-Item-Choice-List ::= SEQUENCE {
+ ranParameter-List RANParameter-Testing-LIST,
+ ...
+}
+
+RANParameter-Testing-Item-Choice-Structure ::= SEQUENCE {
+ ranParameter-Structure RANParameter-Testing-STRUCTURE,
+ ...
+}
+
+RANParameter-Testing-Item-Choice-ElementTrue ::= SEQUENCE {
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+RANParameter-Testing-Item-Choice-ElementFalse ::= SEQUENCE {
+ ranParameter-TestCondition RANParameter-TestingCondition,
+ ranParameter-Value RANParameter-Value OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+RANParameter-Testing-LIST ::= SEQUENCE (SIZE(1..maxnoofItemsinList)) OF RANParameter-Testing-Item
+
+RANParameter-Testing-STRUCTURE ::= SEQUENCE (SIZE(1..maxnoofParametersinStructure)) OF RANParameter-Testing-Item
+
+
+
+----------------------------
+-- RIC Service related IEs
+----------------------------
+
+RAN-CallProcess-ID ::= INTEGER (1..232, ...)
+
+RIC-CallProcessType-ID ::= INTEGER (1..65535, ...)
+
+RIC-CallProcessType-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-CallProcessBreakpoint-ID ::= INTEGER (1..65535, ...)
+
+RIC-CallProcessBreakpoint-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-ControlAction-ID ::= INTEGER (1..65535, ...)
+
+RIC-ControlAction-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-EventTriggerCondition-ID ::= INTEGER (1..65535, ...)
+
+RIC-EventTrigger-UE-ID ::= INTEGER (1..65535, ...)
+
+RIC-EventTrigger-UEevent-ID ::= INTEGER (1..65535, ...)
+
+RIC-EventTrigger-Cell-ID ::= INTEGER (1..65535, ...)
+
+RIC-InsertIndication-ID ::= INTEGER (1..65535, ...)
+
+RIC-InsertIndication-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-PolicyAction ::= SEQUENCE {
+ ric-PolicyAction-ID RIC-ControlAction-ID,
+ ranParameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF RIC-PolicyAction-RANParameter-Item OPTIONAL,
+ ...,
+ ric-PolicyDecision ENUMERATED {accept, reject, ...} OPTIONAL
+}
+
+
+RIC-PolicyAction-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+-- **************************************************************
+-- E2SM-RC Service Model IEs
+-- **************************************************************
+
+
+-- ***************************************************
+-- Event Trigger OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-EventTrigger ::= SEQUENCE {
+ ric-eventTrigger-formats CHOICE {
+ eventTrigger-Format1 E2SM-RC-EventTrigger-Format1,
+ eventTrigger-Format2 E2SM-RC-EventTrigger-Format2,
+ eventTrigger-Format3 E2SM-RC-EventTrigger-Format3,
+ eventTrigger-Format4 E2SM-RC-EventTrigger-Format4,
+ eventTrigger-Format5 E2SM-RC-EventTrigger-Format5,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-EventTrigger-Format1 ::= SEQUENCE {
+ message-List SEQUENCE (SIZE(1..maxnoofMessages)) OF E2SM-RC-EventTrigger-Format1-Item,
+ globalAssociatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ ...
+}
+
+E2SM-RC-EventTrigger-Format1-Item ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID,
+ messageType MessageType-Choice,
+ messageDirection ENUMERATED {incoming, outgoing, ...} OPTIONAL,
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ associatedUEEvent EventTrigger-UEevent-Info OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+MessageType-Choice ::= CHOICE {
+ messageType-Choice-NI MessageType-Choice-NI,
+ messageType-Choice-RRC MessageType-Choice-RRC,
+ ...
+}
+
+
+MessageType-Choice-NI ::= SEQUENCE {
+ nI-Type InterfaceType,
+ nI-Identifier InterfaceIdentifier OPTIONAL,
+ nI-Message Interface-MessageID OPTIONAL,
+ ...
+}
+
+MessageType-Choice-RRC ::= SEQUENCE {
+ rRC-Message RRC-MessageID,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format2 ::= SEQUENCE {
+ ric-callProcessType-ID RIC-CallProcessType-ID,
+ ric-callProcessBreakpoint-ID RIC-CallProcessBreakpoint-ID,
+ associatedE2NodeInfo RANParameter-Testing OPTIONAL,
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format3 ::= SEQUENCE {
+ e2NodeInfoChange-List SEQUENCE (SIZE(1..maxnoofE2InfoChanges)) OF E2SM-RC-EventTrigger-Format3-Item,
+ ...
+}
+
+E2SM-RC-EventTrigger-Format3-Item ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID,
+ e2NodeInfoChange-ID INTEGER (1..512, ...),
+ associatedCellInfo EventTrigger-Cell-Info OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format4 ::= SEQUENCE {
+ uEInfoChange-List SEQUENCE (SIZE(1..maxnoofUEInfoChanges)) OF E2SM-RC-EventTrigger-Format4-Item,
+ ...
+}
+
+E2SM-RC-EventTrigger-Format4-Item ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID,
+ triggerType TriggerType-Choice,
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+TriggerType-Choice ::= CHOICE {
+ triggerType-Choice-RRCstate TriggerType-Choice-RRCstate,
+ triggerType-Choice-UEID TriggerType-Choice-UEID,
+ triggerType-Choice-L2state TriggerType-Choice-L2state,
+ ...
+}
+
+TriggerType-Choice-RRCstate ::= SEQUENCE {
+ rrcState-List SEQUENCE (SIZE(1..maxnoofRRCstate)) OF TriggerType-Choice-RRCstate-Item,
+ ...
+}
+
+TriggerType-Choice-RRCstate-Item ::= SEQUENCE {
+ stateChangedTo RRC-State,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+TriggerType-Choice-UEID ::= SEQUENCE {
+ ueIDchange-ID INTEGER (1..512, ...),
+ ...
+}
+
+TriggerType-Choice-L2state ::= SEQUENCE {
+ associatedL2variables RANParameter-Testing,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format5 ::= SEQUENCE {
+ onDemand ENUMERATED {true, ...},
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ associatedCellInfo EventTrigger-Cell-Info OPTIONAL,
+ ...
+}
+
+
+
+-- ***************************************************
+-- Action Definition OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-ActionDefinition ::= SEQUENCE {
+ ric-Style-Type RIC-Style-Type,
+ ric-actionDefinition-formats CHOICE {
+ actionDefinition-Format1 E2SM-RC-ActionDefinition-Format1,
+ actionDefinition-Format2 E2SM-RC-ActionDefinition-Format2,
+ actionDefinition-Format3 E2SM-RC-ActionDefinition-Format3,
+ ...,
+ actionDefinition-Format4 E2SM-RC-ActionDefinition-Format4
+
+ },
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format1 ::= SEQUENCE {
+ ranP-ToBeReported-List SEQUENCE (SIZE(1..maxnoofParametersToReport)) OF E2SM-RC-ActionDefinition-Format1-Item,
+ ...
+}
+
+
+E2SM-RC-ActionDefinition-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+E2SM-RC-ActionDefinition-Format2 ::= SEQUENCE {
+ ric-PolicyConditions-List SEQUENCE (SIZE(1..maxnoofPolicyConditions)) OF E2SM-RC-ActionDefinition-Format2-Item,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format2-Item ::= SEQUENCE {
+ ric-PolicyAction RIC-PolicyAction,
+ ric-PolicyConditionDefinition RANParameter-Testing OPTIONAL,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format3 ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ranP-InsertIndication-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-ActionDefinition-Format3-Item,
+ ueID UEID OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-ActionDefinition-Format3-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+E2SM-RC-ActionDefinition-Format4 ::= SEQUENCE {
+ ric-InsertStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-ActionDefinition-Format4-Style-Item,
+ ueID UEID OPTIONAL,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format4-Style-Item ::= SEQUENCE {
+ requested-Insert-Style-Type RIC-Style-Type,
+ ric-InsertIndication-List SEQUENCE (SIZE(1..maxnoofInsertIndicationActions)) OF E2SM-RC-ActionDefinition-Format4-Indication-Item,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format4-Indication-Item ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ranP-InsertIndication-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-ActionDefinition-Format4-RANP-Item,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format4-RANP-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+-- ***************************************************
+-- Indication Header OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-IndicationHeader ::= SEQUENCE {
+ric-indicationHeader-formats CHOICE {
+ indicationHeader-Format1 E2SM-RC-IndicationHeader-Format1,
+ indicationHeader-Format2 E2SM-RC-IndicationHeader-Format2,
+ ...,
+ indicationHeader-Format3 E2SM-RC-IndicationHeader-Format3
+
+ },
+ ...
+}
+
+E2SM-RC-IndicationHeader-Format1 ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID OPTIONAL,
+ ...
+}
+
+E2SM-RC-IndicationHeader-Format2 ::= SEQUENCE {
+ ueID UEID,
+ ric-InsertStyle-Type RIC-Style-Type,
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ...
+}
+
+E2SM-RC-IndicationHeader-Format3 ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID OPTIONAL,
+ ueID UEID OPTIONAL,
+ ...
+}
+
+
+-- ***************************************************
+-- Indication Message OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-IndicationMessage ::= SEQUENCE {
+ric-indicationMessage-formats CHOICE {
+ indicationMessage-Format1 E2SM-RC-IndicationMessage-Format1,
+ indicationMessage-Format2 E2SM-RC-IndicationMessage-Format2,
+ indicationMessage-Format3 E2SM-RC-IndicationMessage-Format3,
+ indicationMessage-Format4 E2SM-RC-IndicationMessage-Format4,
+ indicationMessage-Format5 E2SM-RC-IndicationMessage-Format5,
+ ...,
+ indicationMessage-Format6 E2SM-RC-IndicationMessage-Format6
+
+ },
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format1 ::= SEQUENCE {
+ ranP-Reported-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format1-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format2 ::= SEQUENCE {
+ ueParameter-List SEQUENCE (SIZE(1..maxnoofUEID)) OF E2SM-RC-IndicationMessage-Format2-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format2-Item ::= SEQUENCE {
+ ueID UEID,
+ ranP-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format2-RANParameter-Item,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format2-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format3 ::= SEQUENCE {
+ cellInfo-List SEQUENCE (SIZE(1..maxnoofCellID)) OF E2SM-RC-IndicationMessage-Format3-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format3-Item ::= SEQUENCE {
+ cellGlobal-ID CGI,
+ cellContextInfo OCTET STRING OPTIONAL,
+ cellDeleted BOOLEAN OPTIONAL,
+ neighborRelation-Table NeighborRelation-Info OPTIONAL,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format4 ::= SEQUENCE {
+ ueInfo-List SEQUENCE (SIZE(0..maxnoofUEID)) OF E2SM-RC-IndicationMessage-Format4-ItemUE,
+ cellInfo-List SEQUENCE (SIZE(0..maxnoofCellID)) OF E2SM-RC-IndicationMessage-Format4-ItemCell,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format4-ItemUE ::= SEQUENCE {
+ ueID UEID,
+ ueContextInfo OCTET STRING OPTIONAL,
+ cellGlobal-ID CGI,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format4-ItemCell ::= SEQUENCE {
+ cellGlobal-ID CGI,
+ cellContextInfo OCTET STRING OPTIONAL,
+ neighborRelation-Table NeighborRelation-Info OPTIONAL,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format5 ::= SEQUENCE{
+ ranP-Requested-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format5-Item,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format5-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6 ::= SEQUENCE {
+ ric-InsertStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-IndicationMessage-Format6-Style-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6-Style-Item ::= SEQUENCE {
+ indicated-Insert-Style-Type RIC-Style-Type,
+ ric-InsertIndication-List SEQUENCE (SIZE(1..maxnoofInsertIndicationActions)) OF E2SM-RC-IndicationMessage-Format6-Indication-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6-Indication-Item ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ranP-InsertIndication-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format6-RANP-Item ,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6-RANP-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+-- **************************************************
+-- Call Process ID OCTET STRING contents
+-- **************************************************
+
+E2SM-RC-CallProcessID ::= SEQUENCE {
+ric-callProcessID-formats CHOICE {
+ callProcessID-Format1 E2SM-RC-CallProcessID-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-CallProcessID-Format1 ::= SEQUENCE {
+ ric-callProcess-ID RAN-CallProcess-ID,
+ ...
+}
+
+
+-- ***************************************************
+-- Control Header OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-ControlHeader ::= SEQUENCE {
+ ric-controlHeader-formats CHOICE {
+ controlHeader-Format1 E2SM-RC-ControlHeader-Format1,
+ ...,
+ controlHeader-Format2 E2SM-RC-ControlHeader-Format2
+ },
+ ...
+}
+
+E2SM-RC-ControlHeader-Format1 ::= SEQUENCE {
+ ueID UEID,
+ ric-Style-Type RIC-Style-Type,
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ric-ControlDecision ENUMERATED {accept, reject, ...} OPTIONAL,
+ ...
+}
+
+E2SM-RC-ControlHeader-Format2 ::= SEQUENCE {
+ ueID UEID OPTIONAL,
+ ric-ControlDecision ENUMERATED {accept, reject, ...} OPTIONAL,
+ ...
+}
+
+-- ***************************************************
+-- Control Message OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-ControlMessage ::= SEQUENCE {
+ ric-controlMessage-formats CHOICE {
+ controlMessage-Format1 E2SM-RC-ControlMessage-Format1,
+ ...,
+ controlMessage-Format2 E2SM-RC-ControlMessage-Format2
+
+ },
+ ...
+}
+
+E2SM-RC-ControlMessage-Format1 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-ControlMessage-Format1-Item,
+ ...
+}
+
+
+E2SM-RC-ControlMessage-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format2 ::= SEQUENCE {
+ ric-ControlStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-ControlMessage-Format2-Style-Item,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format2-Style-Item ::= SEQUENCE {
+ indicated-Control-Style-Type RIC-Style-Type,
+ ric-ControlAction-List SEQUENCE (SIZE(1..maxnoofMulCtrlActions)) OF E2SM-RC-ControlMessage-Format2-ControlAction-Item,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format2-ControlAction-Item ::= SEQUENCE {
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ranP-List E2SM-RC-ControlMessage-Format1,
+ ...
+}
+
+-- ****************************************************
+-- Control Outcome OCTET STRING contents
+-- ****************************************************
+
+E2SM-RC-ControlOutcome ::= SEQUENCE {
+ ric-controlOutcome-formats CHOICE {
+ controlOutcome-Format1 E2SM-RC-ControlOutcome-Format1,
+ ...,
+ controlOutcome-Format2 E2SM-RC-ControlOutcome-Format2,
+ controlOutcome-Format3 E2SM-RC-ControlOutcome-Format3 },
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format1 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(0..maxnoofRANOutcomeParameters)) OF E2SM-RC-ControlOutcome-Format1-Item,
+ ...
+}
+
+
+E2SM-RC-ControlOutcome-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2 ::= SEQUENCE {
+ ric-ControlStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-ControlOutcome-Format2-Style-Item,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2-Style-Item ::= SEQUENCE {
+ indicated-Control-Style-Type RIC-Style-Type,
+ ric-ControlOutcome-List SEQUENCE (SIZE(1..maxnoofMulCtrlActions)) OF E2SM-RC-ControlOutcome-Format2-ControlOutcome-Item,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2-ControlOutcome-Item ::= SEQUENCE {
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ranP-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-ControlOutcome-Format2-RANP-Item,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2-RANP-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format3 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(0..maxnoofRANOutcomeParameters)) OF E2SM-RC-ControlOutcome-Format3-Item,
+ ...
+}
+
+
+E2SM-RC-ControlOutcome-Format3-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+-- **************************************************************
+-- RAN Function Definition IEs
+-- **************************************************************
+
+E2SM-RC-RANFunctionDefinition ::= SEQUENCE{
+ ranFunction-Name RANfunction-Name,
+ ranFunctionDefinition-EventTrigger RANFunctionDefinition-EventTrigger OPTIONAL,
+ ranFunctionDefinition-Report RANFunctionDefinition-Report OPTIONAL,
+ ranFunctionDefinition-Insert RANFunctionDefinition-Insert OPTIONAL,
+ ranFunctionDefinition-Control RANFunctionDefinition-Control OPTIONAL,
+ ranFunctionDefinition-Policy RANFunctionDefinition-Policy OPTIONAL,
+ ...
+}
+
+-------------------------------
+-- Event Trigger
+-------------------------------
+RANFunctionDefinition-EventTrigger ::= SEQUENCE {
+ ric-EventTriggerStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-EventTrigger-Style-Item,
+ ran-L2Parameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF L2Parameters-RANParameter-Item OPTIONAL,
+ ran-CallProcessTypes-List SEQUENCE (SIZE(1..maxnoofCallProcessTypes)) OF RANFunctionDefinition-EventTrigger-CallProcess-Item OPTIONAL,
+ ran-UEIdentificationParameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF UEIdentification-RANParameter-Item OPTIONAL,
+ ran-CellIdentificationParameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF CellIdentification-RANParameter-Item OPTIONAL,
+ ...
+}
+
+RANFunctionDefinition-EventTrigger-Style-Item ::= SEQUENCE {
+ ric-EventTriggerStyle-Type RIC-Style-Type,
+ ric-EventTriggerStyle-Name RIC-Style-Name,
+ ric-EventTriggerFormat-Type RIC-Format-Type,
+ ...
+}
+
+
+L2Parameters-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+UEIdentification-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+CellIdentification-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+RANFunctionDefinition-EventTrigger-CallProcess-Item ::= SEQUENCE {
+ callProcessType-ID RIC-CallProcessType-ID,
+ callProcessType-Name RIC-CallProcessType-Name,
+ callProcessBreakpoints-List SEQUENCE (SIZE (1..maxnoofCallProcessBreakpoints)) OF RANFunctionDefinition-EventTrigger-Breakpoint-Item,
+ ...
+}
+
+
+RANFunctionDefinition-EventTrigger-Breakpoint-Item ::= SEQUENCE {
+ callProcessBreakpoint-ID RIC-CallProcessBreakpoint-ID,
+ callProcessBreakpoint-Name RIC-CallProcessBreakpoint-Name,
+ ran-CallProcessBreakpointParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF CallProcessBreakpoint-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+CallProcessBreakpoint-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+-------------------------------
+-- Report
+-------------------------------
+
+RANFunctionDefinition-Report ::= SEQUENCE {
+ ric-ReportStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Report-Item,
+ ...
+}
+
+
+RANFunctionDefinition-Report-Item ::= SEQUENCE {
+ ric-ReportStyle-Type RIC-Style-Type,
+ ric-ReportStyle-Name RIC-Style-Name,
+ ric-SupportedEventTriggerStyle-Type RIC-Style-Type,
+ ric-ReportActionFormat-Type RIC-Format-Type,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ran-ReportParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF Report-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+Report-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+-------------------------------
+-- Insert
+-------------------------------
+
+RANFunctionDefinition-Insert ::= SEQUENCE {
+ ric-InsertStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Insert-Item,
+ ...
+}
+
+RANFunctionDefinition-Insert-Item ::= SEQUENCE {
+ ric-InsertStyle-Type RIC-Style-Type,
+ ric-InsertStyle-Name RIC-Style-Name,
+ ric-SupportedEventTriggerStyle-Type RIC-Style-Type,
+ ric-ActionDefinitionFormat-Type RIC-Format-Type,
+ ric-InsertIndication-List SEQUENCE (SIZE(1..maxnoofInsertIndication)) OF RANFunctionDefinition-Insert-Indication-Item OPTIONAL,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ric-CallProcessIDFormat-Type RIC-Format-Type,
+ ...
+}
+
+
+RANFunctionDefinition-Insert-Indication-Item ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ric-InsertIndication-Name RIC-InsertIndication-Name,
+ ran-InsertIndicationParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF InsertIndication-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+InsertIndication-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+-------------------------------
+-- Control
+-------------------------------
+
+RANFunctionDefinition-Control ::= SEQUENCE {
+ ric-ControlStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Control-Item,
+ ...
+}
+
+
+RANFunctionDefinition-Control-Item ::= SEQUENCE {
+ ric-ControlStyle-Type RIC-Style-Type,
+ ric-ControlStyle-Name RIC-Style-Name,
+ ric-ControlAction-List SEQUENCE (SIZE(1..maxnoofControlAction)) OF RANFunctionDefinition-Control-Action-Item OPTIONAL,
+ ric-ControlHeaderFormat-Type RIC-Format-Type,
+ ric-ControlMessageFormat-Type RIC-Format-Type,
+ ric-CallProcessIDFormat-Type RIC-Format-Type OPTIONAL,
+ ric-ControlOutcomeFormat-Type RIC-Format-Type,
+ ran-ControlOutcomeParameters-List SEQUENCE (SIZE(1..maxnoofRANOutcomeParameters)) OF ControlOutcome-RANParameter-Item OPTIONAL,
+ ...
+}
+
+ControlOutcome-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+RANFunctionDefinition-Control-Action-Item ::= SEQUENCE {
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ric-ControlAction-Name RIC-ControlAction-Name,
+ ran-ControlActionParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF ControlAction-RANParameter-Item OPTIONAL,
+ ...
+}
+
+ControlAction-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+-------------------------------
+-- Policy
+-------------------------------
+
+RANFunctionDefinition-Policy ::= SEQUENCE {
+ ric-PolicyStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Policy-Item,
+ ...
+}
+
+RANFunctionDefinition-Policy-Item ::= SEQUENCE {
+ ric-PolicyStyle-Type RIC-Style-Type,
+ ric-PolicyStyle-Name RIC-Style-Name,
+ ric-SupportedEventTriggerStyle-Type RIC-Style-Type,
+ ric-PolicyAction-List SEQUENCE (SIZE(1..maxnoofPolicyAction)) OF RANFunctionDefinition-Policy-Action-Item OPTIONAL,
+ ...
+}
+
+
+RANFunctionDefinition-Policy-Action-Item ::= SEQUENCE {
+ ric-PolicyAction-ID RIC-ControlAction-ID,
+ ric-PolicyAction-Name RIC-ControlAction-Name,
+ ric-ActionDefinitionFormat-Type RIC-Format-Type,
+ ran-PolicyActionParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF PolicyAction-RANParameter-Item OPTIONAL,
+ ran-PolicyConditionParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF PolicyCondition-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+PolicyAction-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+PolicyCondition-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+
+END
+
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/e2sm-rc-v3.00.asn b/epan/dissectors/asn1/e2ap/e2sm-rc-v3.00.asn
new file mode 100644
index 0000000000..760d65d7c4
--- /dev/null
+++ b/epan/dissectors/asn1/e2ap/e2sm-rc-v3.00.asn
@@ -0,0 +1,1332 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM-RC Information Element Definitions
+-- **************************************************************
+
+E2SM-RC-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) oran(53148) e2(1) version1(1) e2sm(2) e2sm-RC-IEs (3)}
+
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+
+-- **************************************************************
+-- E2SM Common IEs
+-- **************************************************************
+
+IMPORTS
+ CGI,
+ E-UTRA-ARFCN,
+ EUTRA-CGI,
+ E-UTRA-PCI,
+ E-UTRA-TAC,
+ FiveGS-TAC,
+ InterfaceIdentifier,
+ InterfaceType,
+ Interface-MessageID,
+ NRFrequencyInfo,
+ NR-CGI,
+ NR-PCI,
+ RANfunction-Name,
+ RIC-Format-Type,
+ RIC-Style-Name,
+ RIC-Style-Type,
+ RRC-MessageID,
+ ServingCell-ARFCN,
+ ServingCell-PCI,
+ UEID
+FROM E2SM-COMMON-IEs;
+
+
+-- *****************************************************
+-- CONSTANTS
+-- *****************************************************
+
+maxnoofMessages INTEGER ::= 65535
+maxnoofE2InfoChanges INTEGER ::= 65535
+maxnoofUEInfoChanges INTEGER ::= 65535
+maxnoofRRCstate INTEGER ::= 8
+maxnoofParametersToReport INTEGER ::= 65535
+maxnoofPolicyConditions INTEGER ::= 65535
+maxnoofAssociatedRANParameters INTEGER ::= 65535
+maxnoofUEID INTEGER ::= 65535
+maxnoofCellID INTEGER ::= 65535
+maxnoofRANOutcomeParameters INTEGER ::= 255
+maxnoofParametersinStructure INTEGER ::= 65535
+maxnoofItemsinList INTEGER ::= 65535
+maxnoofUEInfo INTEGER ::= 65535
+maxnoofCellInfo INTEGER ::= 65535
+maxnoofUEeventInfo INTEGER ::= 65535
+maxnoofRANparamTest INTEGER ::= 255
+maxnoofNeighbourCell INTEGER ::= 65535
+maxnoofRICStyles INTEGER ::= 63
+maxnoofCallProcessTypes INTEGER ::= 65535
+maxnoofCallProcessBreakpoints INTEGER ::= 65535
+maxnoofInsertIndication INTEGER ::= 65535
+maxnoofControlAction INTEGER ::= 65535
+maxnoofPolicyAction INTEGER ::= 65535
+maxnoofInsertIndicationActions INTEGER ::= 63
+maxnoofMulCtrlActions INTEGER ::= 63
+maxGroupDefinitionIdentifierParameters INTEGER ::= 255
+maxnoofAssociatedEntityFilters INTEGER ::= 255
+maxnoofFormatTypes INTEGER ::= 63
+
+
+-- *****************************************************
+-- IEs
+-- *****************************************************
+
+LogicalOR ::= ENUMERATED {true, false, ...}
+
+NeighborCell-List ::= SEQUENCE (SIZE(1..maxnoofNeighbourCell)) OF NeighborCell-Item
+
+NeighborCell-Item ::= CHOICE {
+ ranType-Choice-NR NeighborCell-Item-Choice-NR,
+ ranType-Choice-EUTRA NeighborCell-Item-Choice-E-UTRA,
+ ...
+}
+
+NeighborCell-Item-Choice-NR ::= SEQUENCE {
+ nR-CGI NR-CGI,
+ nR-PCI NR-PCI,
+ fiveGS-TAC FiveGS-TAC,
+ nR-mode-info ENUMERATED {fdd, tdd, ...},
+ nR-FreqInfo NRFrequencyInfo,
+ x2-Xn-established ENUMERATED {true, false, ...},
+ hO-validated ENUMERATED {true, false, ...},
+ version INTEGER (1..65535, ...),
+ ...
+}
+
+NeighborCell-Item-Choice-E-UTRA ::= SEQUENCE {
+ eUTRA-CGI EUTRA-CGI,
+ eUTRA-PCI E-UTRA-PCI,
+ eUTRA-ARFCN E-UTRA-ARFCN,
+ eUTRA-TAC E-UTRA-TAC,
+ x2-Xn-established ENUMERATED {true, false, ...},
+ hO-validated ENUMERATED {true, false, ...},
+ version INTEGER (1..65535, ...),
+ ...
+}
+
+NeighborRelation-Info ::= SEQUENCE {
+ servingCellPCI ServingCell-PCI,
+ servingCellARFCN ServingCell-ARFCN,
+ neighborCell-List NeighborCell-List,
+ ...
+}
+
+RRC-State ::= ENUMERATED {rrc-connected, rrc-inactive, rrc-idle, any, ...}
+
+
+-------------------------------
+-- Event Trigger related IEs
+-------------------------------
+
+EventTrigger-Cell-Info ::= SEQUENCE {
+cellInfo-List SEQUENCE (SIZE(1..maxnoofCellInfo)) OF EventTrigger-Cell-Info-Item,
+ ...
+}
+
+EventTrigger-Cell-Info-Item ::= SEQUENCE {
+ eventTriggerCellID RIC-EventTrigger-Cell-ID,
+ cellType CHOICE {
+ cellType-Choice-Individual EventTrigger-Cell-Info-Item-Choice-Individual,
+ cellType-Choice-Group EventTrigger-Cell-Info-Item-Choice-Group,
+ ...
+ },
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+EventTrigger-Cell-Info-Item-Choice-Individual ::= SEQUENCE {
+ cellGlobalID CGI,
+ ...
+}
+
+EventTrigger-Cell-Info-Item-Choice-Group ::= SEQUENCE {
+ ranParameterTesting RANParameter-Testing,
+ ...
+}
+
+
+
+EventTrigger-UE-Info ::= SEQUENCE {
+ueInfo-List SEQUENCE (SIZE(1..maxnoofUEInfo)) OF EventTrigger-UE-Info-Item,
+...
+}
+
+EventTrigger-UE-Info-Item ::= SEQUENCE {
+ eventTriggerUEID RIC-EventTrigger-UE-ID,
+ ueType CHOICE {
+ ueType-Choice-Individual EventTrigger-UE-Info-Item-Choice-Individual,
+ ueType-Choice-Group EventTrigger-UE-Info-Item-Choice-Group,
+ ...
+ },
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+EventTrigger-UE-Info-Item-Choice-Individual ::= SEQUENCE {
+ ueID UEID,
+ ranParameterTesting RANParameter-Testing OPTIONAL,
+ ...
+}
+
+EventTrigger-UE-Info-Item-Choice-Group ::= SEQUENCE {
+ ranParameterTesting RANParameter-Testing,
+ ...
+}
+
+
+
+EventTrigger-UEevent-Info ::= SEQUENCE {
+ueEvent-List SEQUENCE (SIZE(1..maxnoofUEeventInfo)) OF EventTrigger-UEevent-Info-Item,
+...
+}
+
+EventTrigger-UEevent-Info-Item ::= SEQUENCE {
+ ueEventID RIC-EventTrigger-UEevent-ID,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+-------------------------------
+-- RAN Parameter related IEs
+-------------------------------
+
+RANParameter-ID ::= INTEGER (1..4294967295, ...)
+
+RANParameter-Name ::= PrintableString (SIZE(1..150, ...))
+
+RANParameter-Definition ::= SEQUENCE {
+ ranParameter-Definition-Choice RANParameter-Definition-Choice,
+ ...
+}
+
+RANParameter-Definition-Choice ::= CHOICE {
+ choiceLIST RANParameter-Definition-Choice-LIST,
+ choiceSTRUCTURE RANParameter-Definition-Choice-STRUCTURE,
+ ...
+}
+
+RANParameter-Definition-Choice-LIST ::= SEQUENCE {
+ ranParameter-List SEQUENCE (SIZE(1..maxnoofItemsinList)) OF RANParameter-Definition-Choice-LIST-Item,
+ ...
+}
+
+RANParameter-Definition-Choice-LIST-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ ...
+}
+
+RANParameter-Definition-Choice-STRUCTURE ::= SEQUENCE {
+ ranParameter-STRUCTURE SEQUENCE (SIZE(1..maxnoofParametersinStructure)) OF RANParameter-Definition-Choice-STRUCTURE-Item,
+ ...
+}
+
+RANParameter-Definition-Choice-STRUCTURE-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ ...
+}
+
+RANParameter-Value ::= CHOICE {
+ valueBoolean BOOLEAN,
+ valueInt INTEGER,
+ valueReal REAL,
+ valueBitS BIT STRING,
+ valueOctS OCTET STRING,
+ valuePrintableString PrintableString,
+ ...
+}
+
+RANParameter-ValueType ::= CHOICE {
+ ranP-Choice-ElementTrue RANParameter-ValueType-Choice-ElementTrue,
+ ranP-Choice-ElementFalse RANParameter-ValueType-Choice-ElementFalse,
+ ranP-Choice-Structure RANParameter-ValueType-Choice-Structure,
+ ranP-Choice-List RANParameter-ValueType-Choice-List,
+ ...
+}
+
+
+
+RANParameter-ValueType-Choice-ElementTrue ::= SEQUENCE {
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+RANParameter-ValueType-Choice-ElementFalse ::= SEQUENCE {
+ ranParameter-value RANParameter-Value OPTIONAL,
+-- C-ifControl: This IE shall be present if it is part of a RIC Control Request message. Otherwise it is optional.
+ ...
+}
+
+RANParameter-ValueType-Choice-Structure ::= SEQUENCE {
+ ranParameter-Structure RANParameter-STRUCTURE,
+ ...
+}
+
+RANParameter-ValueType-Choice-List ::= SEQUENCE {
+ ranParameter-List RANParameter-LIST,
+ ...
+}
+
+
+RANParameter-STRUCTURE ::= SEQUENCE {
+ sequence-of-ranParameters SEQUENCE (SIZE(1..maxnoofParametersinStructure)) OF RANParameter-STRUCTURE-Item OPTIONAL,
+ ...
+}
+
+RANParameter-STRUCTURE-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+RANParameter-LIST ::= SEQUENCE {
+ list-of-ranParameter SEQUENCE (SIZE(1..maxnoofItemsinList)) OF RANParameter-STRUCTURE,
+ ...
+}
+
+
+RANParameter-Testing ::= SEQUENCE (SIZE(1..maxnoofRANparamTest)) OF RANParameter-Testing-Item
+
+RANParameter-TestingCondition ::= CHOICE {
+ ranP-Choice-comparison ENUMERATED {equal, difference, greaterthan, lessthan, contains, starts-with, ...},
+ ranP-Choice-presence ENUMERATED {present, configured, rollover, non-zero, ..., value-change},
+ ...
+}
+
+RANParameter-Testing-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-Type CHOICE {
+ ranP-Choice-List RANParameter-Testing-Item-Choice-List,
+ ranP-Choice-Structure RANParameter-Testing-Item-Choice-Structure,
+ ranP-Choice-ElementTrue RANParameter-Testing-Item-Choice-ElementTrue,
+ ranP-Choice-ElementFalse RANParameter-Testing-Item-Choice-ElementFalse,
+ ...
+ },
+ ...
+}
+
+RANParameter-Testing-Item-Choice-List ::= SEQUENCE {
+ ranParameter-List RANParameter-Testing-LIST,
+ ...
+}
+
+RANParameter-Testing-Item-Choice-Structure ::= SEQUENCE {
+ ranParameter-Structure RANParameter-Testing-STRUCTURE,
+ ...
+}
+
+RANParameter-Testing-Item-Choice-ElementTrue ::= SEQUENCE {
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+RANParameter-Testing-Item-Choice-ElementFalse ::= SEQUENCE {
+ ranParameter-TestCondition RANParameter-TestingCondition,
+ ranParameter-Value RANParameter-Value OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+RANParameter-Testing-LIST ::= SEQUENCE (SIZE(1..maxnoofItemsinList)) OF RANParameter-Testing-Item
+
+RANParameter-Testing-STRUCTURE ::= SEQUENCE (SIZE(1..maxnoofParametersinStructure)) OF RANParameter-Testing-Item
+
+UE-Group-Definition ::= SEQUENCE {
+ ueGroupDefinitionIdentifier-LIST SEQUENCE (SIZE(1..maxGroupDefinitionIdentifierParameters)) OF UEGroupDefinitionIdentifier-Item,
+ ...
+}
+
+UEGroupDefinitionIdentifier-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+----------------------------
+-- RIC Service related IEs
+----------------------------
+
+RAN-CallProcess-ID ::= INTEGER (1..4294967295, ...)
+
+RIC-CallProcessType-ID ::= INTEGER (1..65535, ...)
+
+RIC-CallProcessType-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-CallProcessBreakpoint-ID ::= INTEGER (1..65535, ...)
+
+RIC-CallProcessBreakpoint-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-ControlAction-ID ::= INTEGER (1..65535, ...)
+
+RIC-ControlAction-Name ::= PrintableString (SIZE(1..150, ...))
+
+RIC-EventTriggerCondition-ID ::= INTEGER (1..65535, ...)
+
+RIC-EventTrigger-UE-ID ::= INTEGER (1..65535, ...)
+
+RIC-EventTrigger-UEevent-ID ::= INTEGER (1..65535, ...)
+
+RIC-EventTrigger-Cell-ID ::= INTEGER (1..65535, ...)
+
+RIC-InsertIndication-ID ::= INTEGER (1..65535, ...)
+
+RIC-InsertIndication-Name ::= PrintableString (SIZE(1..150, ...))
+
+UE-Group-ID ::= INTEGER (1..65535, ...)
+
+EntityFilter-ID ::= INTEGER (1..255, ...)
+
+
+RIC-PolicyAction ::= SEQUENCE {
+ ric-PolicyAction-ID RIC-ControlAction-ID,
+ ranParameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF RIC-PolicyAction-RANParameter-Item OPTIONAL,
+ ...,
+ ric-PolicyDecision ENUMERATED {accept, reject, ...} OPTIONAL
+}
+
+
+RIC-PolicyAction-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+UE-Filter-ID ::= INTEGER (1..65535, ...)
+
+Associated-UE-Info ::= SEQUENCE {
+associatedUEInfo-List SEQUENCE (SIZE(1..maxnoofUEInfo)) OF Associated-UE-Info-Item,
+...
+}
+
+Associated-UE-Info-Item ::= SEQUENCE {
+ ueFilterID UE-Filter-ID,
+ ueType CHOICE {
+ ueType-Choice-Individual EventTrigger-UE-Info-Item-Choice-Individual,
+ ueType-Choice-Group EventTrigger-UE-Info-Item-Choice-Group,
+ ...
+ },
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+-- **************************************************************
+-- E2SM-RC Service Model IEs
+-- **************************************************************
+
+
+-- ***************************************************
+-- Event Trigger OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-EventTrigger ::= SEQUENCE {
+ ric-eventTrigger-formats CHOICE {
+ eventTrigger-Format1 E2SM-RC-EventTrigger-Format1,
+ eventTrigger-Format2 E2SM-RC-EventTrigger-Format2,
+ eventTrigger-Format3 E2SM-RC-EventTrigger-Format3,
+ eventTrigger-Format4 E2SM-RC-EventTrigger-Format4,
+ eventTrigger-Format5 NULL,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-EventTrigger-Format1 ::= SEQUENCE {
+ message-List SEQUENCE (SIZE(1..maxnoofMessages)) OF E2SM-RC-EventTrigger-Format1-Item,
+ globalAssociatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ ...
+}
+
+E2SM-RC-EventTrigger-Format1-Item ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID,
+ messageType MessageType-Choice,
+ messageDirection ENUMERATED {incoming, outgoing, ...} OPTIONAL,
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ associatedUEEvent EventTrigger-UEevent-Info OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+MessageType-Choice ::= CHOICE {
+ messageType-Choice-NI MessageType-Choice-NI,
+ messageType-Choice-RRC MessageType-Choice-RRC,
+ ...
+}
+
+
+MessageType-Choice-NI ::= SEQUENCE {
+ nI-Type InterfaceType,
+ nI-Identifier InterfaceIdentifier OPTIONAL,
+ nI-Message Interface-MessageID OPTIONAL,
+ ...
+}
+
+MessageType-Choice-RRC ::= SEQUENCE {
+ rRC-Message RRC-MessageID,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format2 ::= SEQUENCE {
+ ric-callProcessType-ID RIC-CallProcessType-ID,
+ ric-callProcessBreakpoint-ID RIC-CallProcessBreakpoint-ID,
+ associatedE2NodeInfo RANParameter-Testing OPTIONAL,
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format3 ::= SEQUENCE {
+ e2NodeInfoChange-List SEQUENCE (SIZE(1..maxnoofE2InfoChanges)) OF E2SM-RC-EventTrigger-Format3-Item,
+ ...
+}
+
+E2SM-RC-EventTrigger-Format3-Item ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID,
+ e2NodeInfoChange-ID INTEGER (1..512, ...),
+ associatedCellInfo EventTrigger-Cell-Info OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-EventTrigger-Format4 ::= SEQUENCE {
+ uEInfoChange-List SEQUENCE (SIZE(1..maxnoofUEInfoChanges)) OF E2SM-RC-EventTrigger-Format4-Item,
+ ...
+}
+
+E2SM-RC-EventTrigger-Format4-Item ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID,
+ triggerType TriggerType-Choice,
+ associatedUEInfo EventTrigger-UE-Info OPTIONAL,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+
+TriggerType-Choice ::= CHOICE {
+ triggerType-Choice-RRCstate TriggerType-Choice-RRCstate,
+ triggerType-Choice-UEID TriggerType-Choice-UEID,
+ triggerType-Choice-L2state TriggerType-Choice-L2state,
+ ...,
+ triggerType-Choice-UEcontext TriggerType-Choice-UEcontext,
+ triggerType-Choice-L2MACschChg TriggerType-Choice-L2MACschChg
+}
+
+TriggerType-Choice-RRCstate ::= SEQUENCE {
+ rrcState-List SEQUENCE (SIZE(1..maxnoofRRCstate)) OF TriggerType-Choice-RRCstate-Item,
+ ...
+}
+
+TriggerType-Choice-RRCstate-Item ::= SEQUENCE {
+ stateChangedTo RRC-State,
+ logicalOR LogicalOR OPTIONAL,
+ ...
+}
+
+TriggerType-Choice-UEID ::= SEQUENCE {
+ ueIDchange-ID INTEGER (1..512, ...),
+ ...
+}
+
+TriggerType-Choice-L2state ::= SEQUENCE {
+ associatedL2variables RANParameter-Testing,
+ ...
+}
+
+TriggerType-Choice-UEcontext ::= SEQUENCE {
+ associatedUECtxtVariables RANParameter-Testing,
+ ...
+}
+
+TriggerType-Choice-L2MACschChg ::= SEQUENCE {
+ l2MACschChgType L2MACschChgType-Choice,
+ ...
+}
+
+L2MACschChgType-Choice ::= CHOICE {
+ triggerType-Choice-MIMOandBFconfig TriggerType-Choice-MIMOandBFconfig,
+ ...
+}
+
+TriggerType-Choice-MIMOandBFconfig ::= SEQUENCE {
+ mIMOtransModeState ENUMERATED {enabled, disabled, ...},
+ ...
+}
+
+
+
+-- ***************************************************
+-- Action Definition OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-ActionDefinition ::= SEQUENCE {
+ ric-Style-Type RIC-Style-Type,
+ ric-actionDefinition-formats CHOICE {
+ actionDefinition-Format1 E2SM-RC-ActionDefinition-Format1,
+ actionDefinition-Format2 E2SM-RC-ActionDefinition-Format2,
+ actionDefinition-Format3 E2SM-RC-ActionDefinition-Format3,
+ ...,
+ actionDefinition-Format4 E2SM-RC-ActionDefinition-Format4
+
+ },
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format1 ::= SEQUENCE {
+ ranP-ToBeReported-List SEQUENCE (SIZE(1..maxnoofParametersToReport)) OF E2SM-RC-ActionDefinition-Format1-Item,
+ ...
+}
+
+
+E2SM-RC-ActionDefinition-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+E2SM-RC-ActionDefinition-Format2 ::= SEQUENCE {
+ ric-PolicyConditions-List SEQUENCE (SIZE(1..maxnoofPolicyConditions)) OF E2SM-RC-ActionDefinition-Format2-Item,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format2-Item ::= SEQUENCE {
+ ric-PolicyAction RIC-PolicyAction,
+ ric-PolicyConditionDefinition RANParameter-Testing OPTIONAL,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format3 ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ranP-InsertIndication-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-ActionDefinition-Format3-Item,
+ ueID UEID OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-ActionDefinition-Format3-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+E2SM-RC-ActionDefinition-Format4 ::= SEQUENCE {
+ ric-InsertStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-ActionDefinition-Format4-Style-Item,
+ ueID UEID OPTIONAL,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format4-Style-Item ::= SEQUENCE {
+ requested-Insert-Style-Type RIC-Style-Type,
+ ric-InsertIndication-List SEQUENCE (SIZE(1..maxnoofInsertIndicationActions)) OF E2SM-RC-ActionDefinition-Format4-Indication-Item,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format4-Indication-Item ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ranP-InsertIndication-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-ActionDefinition-Format4-RANP-Item,
+ ...
+}
+
+E2SM-RC-ActionDefinition-Format4-RANP-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+-- ***************************************************
+-- Indication Header OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-IndicationHeader ::= SEQUENCE {
+ric-indicationHeader-formats CHOICE {
+ indicationHeader-Format1 E2SM-RC-IndicationHeader-Format1,
+ indicationHeader-Format2 E2SM-RC-IndicationHeader-Format2,
+ ...,
+ indicationHeader-Format3 E2SM-RC-IndicationHeader-Format3
+
+ },
+ ...
+}
+
+E2SM-RC-IndicationHeader-Format1 ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID OPTIONAL,
+ ...
+}
+
+E2SM-RC-IndicationHeader-Format2 ::= SEQUENCE {
+ ueID UEID,
+ ric-InsertStyle-Type RIC-Style-Type,
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ...
+}
+
+E2SM-RC-IndicationHeader-Format3 ::= SEQUENCE {
+ ric-eventTriggerCondition-ID RIC-EventTriggerCondition-ID OPTIONAL,
+ ueID UEID OPTIONAL,
+ ...
+}
+
+
+-- ***************************************************
+-- Indication Message OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-IndicationMessage ::= SEQUENCE {
+ric-indicationMessage-formats CHOICE {
+ indicationMessage-Format1 E2SM-RC-IndicationMessage-Format1,
+ indicationMessage-Format2 E2SM-RC-IndicationMessage-Format2,
+ indicationMessage-Format3 E2SM-RC-IndicationMessage-Format3,
+ indicationMessage-Format4 NULL,
+ indicationMessage-Format5 E2SM-RC-IndicationMessage-Format5,
+ ...,
+ indicationMessage-Format6 E2SM-RC-IndicationMessage-Format6
+
+ },
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format1 ::= SEQUENCE {
+ ranP-Reported-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format1-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format2 ::= SEQUENCE {
+ ueParameter-List SEQUENCE (SIZE(1..maxnoofUEID)) OF E2SM-RC-IndicationMessage-Format2-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format2-Item ::= SEQUENCE {
+ ueID UEID,
+ ranP-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format2-RANParameter-Item,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format2-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format3 ::= SEQUENCE {
+ cellInfo-List SEQUENCE (SIZE(1..maxnoofCellID)) OF E2SM-RC-IndicationMessage-Format3-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format3-Item ::= SEQUENCE {
+ cellGlobal-ID CGI,
+ cellContextInfo OCTET STRING OPTIONAL,
+ cellDeleted BOOLEAN OPTIONAL,
+ neighborRelation-Table NeighborRelation-Info OPTIONAL,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format5 ::= SEQUENCE{
+ ranP-Requested-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format5-Item,
+ ...
+}
+
+
+E2SM-RC-IndicationMessage-Format5-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6 ::= SEQUENCE {
+ ric-InsertStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-IndicationMessage-Format6-Style-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6-Style-Item ::= SEQUENCE {
+ indicated-Insert-Style-Type RIC-Style-Type,
+ ric-InsertIndication-List SEQUENCE (SIZE(1..maxnoofInsertIndicationActions)) OF E2SM-RC-IndicationMessage-Format6-Indication-Item,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6-Indication-Item ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ranP-InsertIndication-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-IndicationMessage-Format6-RANP-Item ,
+ ...
+}
+
+E2SM-RC-IndicationMessage-Format6-RANP-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+-- **************************************************
+-- Call Process ID OCTET STRING contents
+-- **************************************************
+
+E2SM-RC-CallProcessID ::= SEQUENCE {
+ric-callProcessID-formats CHOICE {
+ callProcessID-Format1 E2SM-RC-CallProcessID-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-CallProcessID-Format1 ::= SEQUENCE {
+ ric-callProcess-ID RAN-CallProcess-ID,
+ ...
+}
+
+
+-- ***************************************************
+-- Control Header OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-ControlHeader ::= SEQUENCE {
+ ric-controlHeader-formats CHOICE {
+ controlHeader-Format1 E2SM-RC-ControlHeader-Format1,
+ ...,
+ controlHeader-Format2 E2SM-RC-ControlHeader-Format2,
+ controlHeader-Format3 E2SM-RC-ControlHeader-Format3
+ },
+ ...
+}
+
+E2SM-RC-ControlHeader-Format1 ::= SEQUENCE {
+ ueID UEID,
+ ric-Style-Type RIC-Style-Type,
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ric-ControlDecision ENUMERATED {accept, reject, ...} OPTIONAL,
+ ...
+}
+
+E2SM-RC-ControlHeader-Format2 ::= SEQUENCE {
+ ueID UEID OPTIONAL,
+ ric-ControlDecision ENUMERATED {accept, reject, ...} OPTIONAL,
+ ...
+}
+
+E2SM-RC-ControlHeader-Format3 ::= SEQUENCE {
+ ue-Group-ID UE-Group-ID,
+ ue-Group-Definition UE-Group-Definition,
+ ric-Style-Type RIC-Style-Type,
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ...
+}
+
+-- ***************************************************
+-- Control Message OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-ControlMessage ::= SEQUENCE {
+ ric-controlMessage-formats CHOICE {
+ controlMessage-Format1 E2SM-RC-ControlMessage-Format1,
+ ...,
+ controlMessage-Format2 E2SM-RC-ControlMessage-Format2,
+ controlMessage-Format3 E2SM-RC-ControlMessage-Format3
+ },
+ ...
+}
+
+E2SM-RC-ControlMessage-Format1 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-ControlMessage-Format1-Item,
+ ...
+}
+
+
+E2SM-RC-ControlMessage-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format2 ::= SEQUENCE {
+ ric-ControlStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-ControlMessage-Format2-Style-Item,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format2-Style-Item ::= SEQUENCE {
+ indicated-Control-Style-Type RIC-Style-Type,
+ ric-ControlAction-List SEQUENCE (SIZE(1..maxnoofMulCtrlActions)) OF E2SM-RC-ControlMessage-Format2-ControlAction-Item,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format2-ControlAction-Item ::= SEQUENCE {
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ranP-List E2SM-RC-ControlMessage-Format1,
+ ...
+}
+
+E2SM-RC-ControlMessage-Format3 ::= SEQUENCE {
+ listOfEntityFilters SEQUENCE (SIZE(0..maxnoofAssociatedEntityFilters)) OF E2SM-RC-EntityFilter OPTIONAL,
+ entityAgnosticControlRanP-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF EntityAgnostic-ranP-ControlParameters OPTIONAL,
+ ...
+}
+
+E2SM-RC-EntityFilter ::= SEQUENCE {
+ entityFilter-ID EntityFilter-ID,
+ entityFilter-Definition RANParameter-Testing,
+ entitySpecificControlRanP-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF EntitySpecific-ranP-ControlParameters,
+ ...
+}
+
+EntityAgnostic-ranP-ControlParameters ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+EntitySpecific-ranP-ControlParameters ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+
+-- ****************************************************
+-- Control Outcome OCTET STRING contents
+-- ****************************************************
+
+E2SM-RC-ControlOutcome ::= SEQUENCE {
+ ric-controlOutcome-formats CHOICE {
+ controlOutcome-Format1 E2SM-RC-ControlOutcome-Format1,
+ ...,
+ controlOutcome-Format2 E2SM-RC-ControlOutcome-Format2,
+ controlOutcome-Format3 E2SM-RC-ControlOutcome-Format3 },
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format1 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(0..maxnoofRANOutcomeParameters)) OF E2SM-RC-ControlOutcome-Format1-Item,
+ ...
+}
+
+
+E2SM-RC-ControlOutcome-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2 ::= SEQUENCE {
+ ric-ControlStyle-List SEQUENCE (SIZE(1.. maxnoofRICStyles)) OF E2SM-RC-ControlOutcome-Format2-Style-Item,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2-Style-Item ::= SEQUENCE {
+ indicated-Control-Style-Type RIC-Style-Type,
+ ric-ControlOutcome-List SEQUENCE (SIZE(1..maxnoofMulCtrlActions)) OF E2SM-RC-ControlOutcome-Format2-ControlOutcome-Item,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2-ControlOutcome-Item ::= SEQUENCE {
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ranP-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-ControlOutcome-Format2-RANP-Item,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format2-RANP-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-value RANParameter-Value,
+ ...
+}
+
+E2SM-RC-ControlOutcome-Format3 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(0..maxnoofRANOutcomeParameters)) OF E2SM-RC-ControlOutcome-Format3-Item,
+ ...
+}
+
+
+E2SM-RC-ControlOutcome-Format3-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType,
+ ...
+}
+
+-- ***************************************************
+-- Query Header OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-QueryHeader ::= SEQUENCE {
+ ric-queryHeader-formats CHOICE {
+ queryHeader-Format1 E2SM-RC-QueryHeader-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-QueryHeader-Format1 ::= SEQUENCE {
+ ric-Style-Type RIC-Style-Type,
+ associatedE2NodeInfo RANParameter-Testing OPTIONAL,
+ associatedUEInfo Associated-UE-Info OPTIONAL,
+ ...
+}
+
+-- ***************************************************
+-- Query Definition OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-QueryDefinition ::= SEQUENCE {
+ ric-queryDefinition-formats CHOICE {
+ queryRequest-Format1 E2SM-RC-QueryDefinition-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-QueryDefinition-Format1 ::= SEQUENCE {
+ ranP-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF E2SM-RC-QueryDefinition-Format1-Item,
+ ...
+}
+
+E2SM-RC-QueryDefinition-Format1-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ ...
+}
+
+-- ***************************************************
+-- Query Outcome OCTET STRING contents
+-- ***************************************************
+
+E2SM-RC-QueryOutcome ::= SEQUENCE {
+ ric-queryOutcome-formats CHOICE {
+ queryOutcome-Format1 E2SM-RC-QueryOutcome-Format1,
+ queryOutcome-Format2 E2SM-RC-QueryOutcome-Format2,
+ ...
+ },
+ ...
+}
+
+E2SM-RC-QueryOutcome-Format1 ::= SEQUENCE {
+ cellInfo-List SEQUENCE (SIZE(1..maxnoofCellID)) OF E2SM-RC-QueryOutcome-Format1-ItemCell,
+ ...
+}
+
+E2SM-RC-QueryOutcome-Format1-ItemCell ::= SEQUENCE {
+ cellGlobal-ID CGI,
+ ranP-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-QueryOutcome-Format1-ItemParameters,
+ neighborRelation-Table NeighborRelation-Info OPTIONAL,
+ ...
+}
+
+E2SM-RC-QueryOutcome-Format1-ItemParameters ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType OPTIONAL,
+ ...
+}
+E2SM-RC-QueryOutcome-Format2 ::= SEQUENCE {
+ ueInfo-List SEQUENCE (SIZE(0..maxnoofUEID)) OF E2SM-RC-QueryOutcome-Format2-ItemUE,
+ ...
+}
+
+E2SM-RC-QueryOutcome-Format2-ItemUE::= SEQUENCE {
+ ueID UEID,
+ ranP-List SEQUENCE (SIZE(0..maxnoofAssociatedRANParameters)) OF E2SM-RC-QueryOutcome-Format2-ItemParameters,
+ ueFilterID UE-Filter-ID OPTIONAL, ...
+}
+
+E2SM-RC-QueryOutcome-Format2-ItemParameters ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-valueType RANParameter-ValueType OPTIONAL,
+ ...
+}
+
+-- **************************************************************
+-- RAN Function Definition IEs
+-- **************************************************************
+
+E2SM-RC-RANFunctionDefinition ::= SEQUENCE{
+ ranFunction-Name RANfunction-Name,
+ ranFunctionDefinition-EventTrigger RANFunctionDefinition-EventTrigger OPTIONAL,
+ ranFunctionDefinition-Report RANFunctionDefinition-Report OPTIONAL,
+ ranFunctionDefinition-Insert RANFunctionDefinition-Insert OPTIONAL,
+ ranFunctionDefinition-Control RANFunctionDefinition-Control OPTIONAL,
+ ranFunctionDefinition-Policy RANFunctionDefinition-Policy OPTIONAL,
+ ...,
+ ranFunctionDefinition-Query RANFunctionDefinition-Query OPTIONAL
+}
+
+-------------------------------
+-- Event Trigger
+-------------------------------
+RANFunctionDefinition-EventTrigger ::= SEQUENCE {
+ ric-EventTriggerStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-EventTrigger-Style-Item,
+ ran-L2Parameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF L2Parameters-RANParameter-Item OPTIONAL,
+ ran-CallProcessTypes-List SEQUENCE (SIZE(1..maxnoofCallProcessTypes)) OF RANFunctionDefinition-EventTrigger-CallProcess-Item OPTIONAL,
+ ran-UEIdentificationParameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF UEIdentification-RANParameter-Item OPTIONAL,
+ ran-CellIdentificationParameters-List SEQUENCE (SIZE(1..maxnoofAssociatedRANParameters)) OF CellIdentification-RANParameter-Item OPTIONAL,
+ ...
+}
+
+RANFunctionDefinition-EventTrigger-Style-Item ::= SEQUENCE {
+ ric-EventTriggerStyle-Type RIC-Style-Type,
+ ric-EventTriggerStyle-Name RIC-Style-Name,
+ ric-EventTriggerFormat-Type RIC-Format-Type,
+ ...
+}
+
+
+L2Parameters-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+UEIdentification-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+CellIdentification-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+RANFunctionDefinition-EventTrigger-CallProcess-Item ::= SEQUENCE {
+ callProcessType-ID RIC-CallProcessType-ID,
+ callProcessType-Name RIC-CallProcessType-Name,
+ callProcessBreakpoints-List SEQUENCE (SIZE (1..maxnoofCallProcessBreakpoints)) OF RANFunctionDefinition-EventTrigger-Breakpoint-Item,
+ ...
+}
+
+
+RANFunctionDefinition-EventTrigger-Breakpoint-Item ::= SEQUENCE {
+ callProcessBreakpoint-ID RIC-CallProcessBreakpoint-ID,
+ callProcessBreakpoint-Name RIC-CallProcessBreakpoint-Name,
+ ran-CallProcessBreakpointParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF CallProcessBreakpoint-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+CallProcessBreakpoint-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+-------------------------------
+-- Report
+-------------------------------
+
+RANFunctionDefinition-Report ::= SEQUENCE {
+ ric-ReportStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Report-Item,
+ ...
+}
+
+
+RANFunctionDefinition-Report-Item ::= SEQUENCE {
+ ric-ReportStyle-Type RIC-Style-Type,
+ ric-ReportStyle-Name RIC-Style-Name,
+ ric-SupportedEventTriggerStyle-Type RIC-Style-Type,
+ ric-ReportActionFormat-Type RIC-Format-Type,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ran-ReportParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF Report-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+Report-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+-------------------------------
+-- Insert
+-------------------------------
+
+RANFunctionDefinition-Insert ::= SEQUENCE {
+ ric-InsertStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Insert-Item,
+ ...
+}
+
+RANFunctionDefinition-Insert-Item ::= SEQUENCE {
+ ric-InsertStyle-Type RIC-Style-Type,
+ ric-InsertStyle-Name RIC-Style-Name,
+ ric-SupportedEventTriggerStyle-Type RIC-Style-Type,
+ ric-ActionDefinitionFormat-Type RIC-Format-Type,
+ ric-InsertIndication-List SEQUENCE (SIZE(1..maxnoofInsertIndication)) OF RANFunctionDefinition-Insert-Indication-Item OPTIONAL,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ric-CallProcessIDFormat-Type RIC-Format-Type,
+ ...
+}
+
+
+RANFunctionDefinition-Insert-Indication-Item ::= SEQUENCE {
+ ric-InsertIndication-ID RIC-InsertIndication-ID,
+ ric-InsertIndication-Name RIC-InsertIndication-Name,
+ ran-InsertIndicationParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF InsertIndication-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+InsertIndication-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+-------------------------------
+-- Control
+-------------------------------
+
+RANFunctionDefinition-Control ::= SEQUENCE {
+ ric-ControlStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Control-Item,
+ ...
+}
+
+
+RANFunctionDefinition-Control-Item ::= SEQUENCE {
+ ric-ControlStyle-Type RIC-Style-Type,
+ ric-ControlStyle-Name RIC-Style-Name,
+ ric-ControlAction-List SEQUENCE (SIZE(1..maxnoofControlAction)) OF RANFunctionDefinition-Control-Action-Item OPTIONAL,
+ ric-ControlHeaderFormat-Type RIC-Format-Type,
+ ric-ControlMessageFormat-Type RIC-Format-Type,
+ ric-CallProcessIDFormat-Type RIC-Format-Type OPTIONAL,
+ ric-ControlOutcomeFormat-Type RIC-Format-Type,
+ ran-ControlOutcomeParameters-List SEQUENCE (SIZE(1..maxnoofRANOutcomeParameters)) OF ControlOutcome-RANParameter-Item OPTIONAL,
+ ...
+}
+
+ControlOutcome-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+RANFunctionDefinition-Control-Action-Item ::= SEQUENCE {
+ ric-ControlAction-ID RIC-ControlAction-ID,
+ ric-ControlAction-Name RIC-ControlAction-Name,
+ ran-ControlActionParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF ControlAction-RANParameter-Item OPTIONAL,
+ ...,
+ ueGroup-ControlAction-Supported ENUMERATED {true, false, ...}
+}
+
+ControlAction-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ listOfAdditionalSupportedFormats-UEGroupControl ListOfAdditionalSupportedFormats-UEGroupControl OPTIONAL
+}
+
+ListOfAdditionalSupportedFormats-UEGroupControl ::= SEQUENCE (SIZE(0..maxnoofFormatTypes)) OF AdditionalSupportedFormat-UEGroupControl
+
+AdditionalSupportedFormat-UEGroupControl ::= SEQUENCE {
+ ric-ControlHeaderFormat-Type RIC-Format-Type,
+ ric-ControlMessageFormat-Type RIC-Format-Type,
+ ...
+}
+
+-------------------------------
+-- Policy
+-------------------------------
+
+RANFunctionDefinition-Policy ::= SEQUENCE {
+ ric-PolicyStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Policy-Item,
+ ...
+}
+
+RANFunctionDefinition-Policy-Item ::= SEQUENCE {
+ ric-PolicyStyle-Type RIC-Style-Type,
+ ric-PolicyStyle-Name RIC-Style-Name,
+ ric-SupportedEventTriggerStyle-Type RIC-Style-Type,
+ ric-PolicyAction-List SEQUENCE (SIZE(1..maxnoofPolicyAction)) OF RANFunctionDefinition-Policy-Action-Item OPTIONAL,
+ ...
+}
+
+
+RANFunctionDefinition-Policy-Action-Item ::= SEQUENCE {
+ ric-PolicyAction-ID RIC-ControlAction-ID,
+ ric-PolicyAction-Name RIC-ControlAction-Name,
+ ric-ActionDefinitionFormat-Type RIC-Format-Type,
+ ran-PolicyActionParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF PolicyAction-RANParameter-Item OPTIONAL,
+ ran-PolicyConditionParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF PolicyCondition-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+PolicyAction-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+
+PolicyCondition-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ...,
+ ranParameter-Definition RANParameter-Definition OPTIONAL
+}
+
+-------------------------------
+-- Query
+-------------------------------
+
+RANFunctionDefinition-Query ::= SEQUENCE {
+ ric-QueryStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RANFunctionDefinition-Query-Item,
+ ...
+}
+
+
+RANFunctionDefinition-Query-Item ::= SEQUENCE {
+ ric-QueryStyle-Type RIC-Style-Type,
+ ric-QueryStyle-Name RIC-Style-Name,
+ ric-QueryHeaderFormat-Type RIC-Format-Type,
+ ric-QueryDefinitionFormat-Type RIC-Format-Type,
+ ric-QueryOutcomeFormat-Type RIC-Format-Type,
+ ran-QueryParameters-List SEQUENCE (SIZE (1..maxnoofAssociatedRANParameters)) OF Query-RANParameter-Item OPTIONAL,
+ ...
+}
+
+
+Query-RANParameter-Item ::= SEQUENCE {
+ ranParameter-ID RANParameter-ID,
+ ranParameter-name RANParameter-Name,
+ ranParameter-Definition RANParameter-Definition OPTIONAL,
+ ...
+}
+
+
+END
+
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/e2sm-v3.01.asn b/epan/dissectors/asn1/e2ap/e2sm-v3.01.asn
new file mode 100644
index 0000000000..1bd6896cde
--- /dev/null
+++ b/epan/dissectors/asn1/e2ap/e2sm-v3.01.asn
@@ -0,0 +1,573 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM
+-- Information Element Definitions
+--
+-- **************************************************************
+
+E2SM-COMMON-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2sm(2) e2sm-COMMON-IEs (0)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- --------------------------------------------------
+-- Constants
+-- --------------------------------------------------
+
+maxE1APid INTEGER ::= 65535
+maxF1APid INTEGER ::= 4
+
+-- IEs derived from 3GPP 36.423 (X2AP)
+maxEARFCN INTEGER ::= 65535
+
+-- IEs derived from 3GPP 38.473 (F1AP)
+maxNRARFCN INTEGER ::= 3279165
+maxnoofNrCellBands INTEGER ::= 32
+
+
+-- --------------------------------------------------
+-- E2SM Commmon IEs
+-- --------------------------------------------------
+
+CGI ::= CHOICE {
+ nR-CGI NR-CGI,
+ eUTRA-CGI EUTRA-CGI,
+ ...
+}
+
+CoreCPID ::= CHOICE {
+ fiveGC GUAMI,
+ ePC GUMMEI,
+ ...
+}
+
+InterfaceIdentifier ::= CHOICE {
+ nG InterfaceID-NG,
+ xN InterfaceID-Xn,
+ f1 InterfaceID-F1,
+ e1 InterfaceID-E1,
+ s1 InterfaceID-S1,
+ x2 InterfaceID-X2,
+ w1 InterfaceID-W1,
+ ...
+}
+
+InterfaceID-NG ::= SEQUENCE {
+ guami GUAMI,
+ ...
+}
+
+InterfaceID-Xn ::= SEQUENCE {
+ global-NG-RAN-ID GlobalNGRANNodeID,
+ ...
+}
+
+InterfaceID-F1 ::= SEQUENCE {
+ globalGNB-ID GlobalGNB-ID,
+ gNB-DU-ID GNB-DU-ID,
+ ...
+}
+
+InterfaceID-E1 ::= SEQUENCE {
+ globalGNB-ID GlobalGNB-ID,
+ gNB-CU-UP-ID GNB-CU-UP-ID,
+ ...
+}
+
+InterfaceID-S1 ::= SEQUENCE {
+ gUMMEI GUMMEI,
+ ...
+}
+
+InterfaceID-X2 ::= SEQUENCE {
+ nodeType CHOICE {
+ global-eNB-ID GlobalENB-ID,
+ global-en-gNB-ID GlobalenGNB-ID,
+ ...
+ },
+ ...
+}
+
+InterfaceID-W1 ::= SEQUENCE {
+ global-ng-eNB-ID GlobalNgENB-ID,
+ ng-eNB-DU-ID NGENB-DU-ID,
+ ...
+}
+
+Interface-MessageID ::= SEQUENCE {
+ interfaceProcedureID INTEGER,
+ messageType ENUMERATED {initiatingMessage, successfulOutcome, unsuccessfulOutcome, ...},
+ ...
+}
+
+InterfaceType ::= ENUMERATED {nG, xn, f1, e1, s1, x2, w1, ...}
+
+GroupID ::= CHOICE {
+ fiveGC FiveQI,
+ ePC QCI,
+ ...
+}
+
+QoSID ::= CHOICE {
+ fiveGC FiveQI,
+ ePC QCI,
+ ...
+}
+
+RANfunction-Name ::= SEQUENCE{
+ ranFunction-ShortName PrintableString(SIZE(1..150,...)),
+ ranFunction-E2SM-OID PrintableString(SIZE(1..1000,...)),
+ ranFunction-Description PrintableString(SIZE(1..150,...)),
+ ranFunction-Instance INTEGER OPTIONAL,
+ ...
+}
+
+RIC-Format-Type ::= INTEGER
+
+RIC-Style-Type ::= INTEGER
+
+RIC-Style-Name ::= PrintableString(SIZE(1..150,...))
+
+
+RRC-MessageID ::= SEQUENCE {
+ rrcType CHOICE {
+ lTE RRCclass-LTE,
+ nR RRCclass-NR,
+ ...
+ },
+ messageID INTEGER,
+ ...
+}
+
+RRCclass-LTE ::= ENUMERATED {bCCH-BCH, bCCH-BCH-MBMS, bCCH-DL-SCH, bCCH-DL-SCH-BR, bCCH-DL-SCH-MBMS, mCCH, pCCH, dL-CCCH, dL-DCCH, uL-CCCH, uL-DCCH, sC-MCCH, ...}
+
+RRCclass-NR ::= ENUMERATED {bCCH-BCH, bCCH-DL-SCH, dL-CCCH, dL-DCCH, pCCH, uL-CCCH, uL-CCCH1, uL-DCCH, ...}
+
+ServingCell-ARFCN ::= CHOICE {
+ nR NR-ARFCN,
+ eUTRA E-UTRA-ARFCN,
+ ...
+}
+
+ServingCell-PCI ::= CHOICE {
+ nR NR-PCI,
+ eUTRA E-UTRA-PCI,
+ ...
+}
+
+
+UEID ::= CHOICE{
+ gNB-UEID UEID-GNB,
+ gNB-DU-UEID UEID-GNB-DU,
+ gNB-CU-UP-UEID UEID-GNB-CU-UP,
+ ng-eNB-UEID UEID-NG-ENB,
+ ng-eNB-DU-UEID UEID-NG-ENB-DU,
+ en-gNB-UEID UEID-EN-GNB,
+ eNB-UEID UEID-ENB,
+ ...
+}
+
+UEID-GNB ::= SEQUENCE{
+ amf-UE-NGAP-ID AMF-UE-NGAP-ID,
+ guami GUAMI,
+ gNB-CU-UE-F1AP-ID-List UEID-GNB-CU-F1AP-ID-List OPTIONAL,
+-- C-ifCUDUseparated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CU-DU separated gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. More than 1 F1AP ID shall be reported by E2 Node only when NR-DC is established.
+ gNB-CU-CP-UE-E1AP-ID-List UEID-GNB-CU-CP-E1AP-ID-List OPTIONAL,
+-- C-ifCPUPseparated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CP-UP separated gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ ran-UEID RANUEID OPTIONAL,
+ m-NG-RAN-UE-XnAP-ID NG-RANnodeUEXnAPID OPTIONAL,
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported by both MN and SN.
+ globalGNB-ID GlobalGNB-ID OPTIONAL,
+-- This IE shall not be used. This IE is replaced with globalNG-RANNode-ID.
+ ...,
+ globalNG-RANNode-ID GlobalNGRANNodeID OPTIONAL
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported only by SN.
+}
+
+UEID-GNB-CU-CP-E1AP-ID-List ::= SEQUENCE (SIZE(1..maxE1APid)) OF UEID-GNB-CU-CP-E1AP-ID-Item
+
+UEID-GNB-CU-CP-E1AP-ID-Item ::= SEQUENCE{
+ gNB-CU-CP-UE-E1AP-ID GNB-CU-CP-UE-E1AP-ID,
+ ...
+}
+
+UEID-GNB-CU-F1AP-ID-List ::= SEQUENCE (SIZE(1..maxF1APid)) OF UEID-GNB-CU-CP-F1AP-ID-Item
+
+UEID-GNB-CU-CP-F1AP-ID-Item ::= SEQUENCE{
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID,
+ ...
+}
+
+UEID-GNB-DU ::= SEQUENCE{
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID,
+ ran-UEID RANUEID OPTIONAL,
+ ...
+}
+
+UEID-GNB-CU-UP ::= SEQUENCE{
+ gNB-CU-CP-UE-E1AP-ID GNB-CU-CP-UE-E1AP-ID,
+ ran-UEID RANUEID OPTIONAL,
+ ...
+}
+
+UEID-NG-ENB ::= SEQUENCE{
+ amf-UE-NGAP-ID AMF-UE-NGAP-ID,
+ guami GUAMI,
+ ng-eNB-CU-UE-W1AP-ID NGENB-CU-UE-W1AP-ID OPTIONAL,
+-- C-ifCUDUseperated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CU-DU seperated ng-eNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ m-NG-RAN-UE-XnAP-ID NG-RANnodeUEXnAPID OPTIONAL,
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported by both MN and SN.
+ globalNgENB-ID GlobalNgENB-ID OPTIONAL,
+-- This IE shall not be used. This IE is replaced with globalNG-RANNode-ID.
+ ...,
+ globalNG-RANNode-ID GlobalNGRANNodeID OPTIONAL
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported only by SN.
+}
+
+
+UEID-NG-ENB-DU ::= SEQUENCE{
+ ng-eNB-CU-UE-W1AP-ID NGENB-CU-UE-W1AP-ID,
+ ...
+}
+
+UEID-EN-GNB ::= SEQUENCE{
+ m-eNB-UE-X2AP-ID ENB-UE-X2AP-ID,
+ m-eNB-UE-X2AP-ID-Extension ENB-UE-X2AP-ID-Extension OPTIONAL,
+ globalENB-ID GlobalENB-ID,
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID OPTIONAL,
+-- C-ifCUDUseperated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CU-DU seperated en-gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ gNB-CU-CP-UE-E1AP-ID-List UEID-GNB-CU-CP-E1AP-ID-List OPTIONAL,
+-- C-ifCPUPseparated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CP-UP separated en-gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ ran-UEID RANUEID OPTIONAL,
+ ...
+}
+
+UEID-ENB ::= SEQUENCE{
+ mME-UE-S1AP-ID MME-UE-S1AP-ID,
+ gUMMEI GUMMEI,
+ m-eNB-UE-X2AP-ID ENB-UE-X2AP-ID OPTIONAL,
+-- This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported by MeNB and SeNB.
+ m-eNB-UE-X2AP-ID-Extension ENB-UE-X2AP-ID-Extension OPTIONAL,
+ globalENB-ID GlobalENB-ID OPTIONAL,
+-- This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported only by SeNB.
+ ...
+}
+
+-- **************************************************************
+-- 3GPP derived IEs
+-- **************************************************************
+-- NOTE:
+-- - Extension fields removed and replaced with "..."
+-- - IE names modified across all extracts to use "PLMNIdentity"
+
+-- **************************************************************
+-- IEs derived from 3GPP 36.413 (S1AP)
+-- **************************************************************
+-- **************************************************************
+
+-- copied from v16.5.0
+-- ENB-ID ::= CHOICE {
+-- macro-eNB-ID BIT STRING (SIZE (20)),
+-- home-eNB-ID BIT STRING (SIZE (28)),
+-- ... ,
+-- short-Macro-eNB-ID BIT STRING (SIZE(18)),
+-- long-Macro-eNB-ID BIT STRING (SIZE(21))
+-- }
+
+-- copied from v16.5.0
+-- GlobalENB-ID ::= SEQUENCE {
+-- pLMNIdentity PLMNIdentity,
+-- eNB-ID ENB-ID,
+-- ...
+-- }
+
+
+-- copied from v16.5.0
+GUMMEI ::= SEQUENCE {
+ pLMN-Identity PLMNIdentity,
+ mME-Group-ID MME-Group-ID,
+ mME-Code MME-Code,
+ ...
+}
+
+-- copied from v16.5.0
+MME-Group-ID ::= OCTET STRING (SIZE (2))
+
+-- copied from v16.5.0
+MME-Code ::= OCTET STRING (SIZE (1))
+
+-- copied from v16.5.0
+MME-UE-S1AP-ID ::= INTEGER (0..4294967295)
+
+-- copied from v16.5.0
+QCI ::= INTEGER (0..255)
+
+-- copied from v16.5.0
+SubscriberProfileIDforRFP ::= INTEGER (1..256)
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 36.423 (X2AP)
+-- **************************************************************
+-- Extension fields removed.
+-- Note: to avoid duplicate names with NGAP, XnAP, etc.:
+-- GNB-ID renamed ENGNB-ID,
+-- GlobalGNB-ID renamed GlobalenGNB-ID,
+-- UE-X2AP-ID renamed ENB-UE-X2AP-ID
+-- UE-X2AP-ID-Extension renamed ENB-UE-X2AP-ID-Extension
+-- **************************************************************
+
+-- copied from v16.5.0
+EN-GNB-ID ::= CHOICE {
+ en-gNB-ID BIT STRING (SIZE (22..32)),
+ ...
+}
+
+-- copied from v16.5.0
+ENB-UE-X2AP-ID ::= INTEGER (0..4095)
+
+-- copied from v16.5.0
+ENB-UE-X2AP-ID-Extension ::= INTEGER (0..4095, ...)
+
+-- copied from v16.5.0
+E-UTRA-ARFCN ::= INTEGER (0..maxEARFCN)
+
+-- copied from v16.5.0
+E-UTRA-PCI ::= INTEGER (0..503, ...)
+
+-- copied from v16.5.0
+E-UTRA-TAC ::= OCTET STRING (SIZE(2))
+
+-- copied from v16.5.0
+-- GlobalenGNB-ID ::= SEQUENCE {
+-- pLMN-Identity PLMNIdentity,
+-- en-gNB-ID EN-GNB-ID,
+-- ...
+-- }
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 37.473 (W1AP)
+-- **************************************************************
+
+-- copied from v16.3.0
+NGENB-CU-UE-W1AP-ID ::= INTEGER (0..4294967295)
+
+-- copied from v16.3.0
+-- NGENB-DU-ID ::= INTEGER (0..68719476735)
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 38.413 (NGAP)
+-- Extension fields removed and replaced with ...
+-- **************************************************************
+
+-- copied from v16.2.0
+AMFPointer ::= BIT STRING (SIZE(6))
+
+-- copied from v16.2.0
+AMFRegionID ::= BIT STRING (SIZE(8))
+
+-- copied from v16.2.0
+AMFSetID ::= BIT STRING (SIZE(10))
+
+-- copied from v16.2.0
+AMF-UE-NGAP-ID ::= INTEGER (0..1099511627775)
+
+-- copied from v16.2.0
+EUTRACellIdentity ::= BIT STRING (SIZE(28))
+
+-- copied from v16.2.0
+EUTRA-CGI ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ eUTRACellIdentity EUTRACellIdentity,
+ ...
+}
+
+-- copied from v16.2.0
+FiveQI ::= INTEGER (0..255, ...)
+
+-- copied from v16.2.0
+GlobalGNB-ID ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ gNB-ID GNB-ID,
+ ...
+}
+
+-- copied from v16.2.0
+GlobalNgENB-ID ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ ngENB-ID NgENB-ID,
+ ...
+}
+
+
+-- copied from v16.2.0
+GNB-ID ::= CHOICE {
+ gNB-ID BIT STRING (SIZE(22..32)),
+ ...
+}
+
+-- copied from v16.2.0
+GUAMI ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ aMFRegionID AMFRegionID,
+ aMFSetID AMFSetID,
+ aMFPointer AMFPointer,
+ ...
+}
+
+-- copied from v16.2.0
+IndexToRFSP ::= INTEGER (1..256, ...)
+
+-- copied from v16.2.0
+NgENB-ID ::= CHOICE {
+ macroNgENB-ID BIT STRING (SIZE(20)),
+ shortMacroNgENB-ID BIT STRING (SIZE(18)),
+ longMacroNgENB-ID BIT STRING (SIZE(21)),
+ ...
+}
+
+-- copied from v16.2.0
+NRCellIdentity ::= BIT STRING (SIZE(36))
+
+-- copied from v16.2.0
+NR-CGI ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ nRCellIdentity NRCellIdentity,
+ ...
+}
+
+-- copied from v16.2.0
+PLMNIdentity ::= OCTET STRING (SIZE(3))
+
+-- copied from v16.2.0
+QosFlowIdentifier ::= INTEGER (0..63, ...)
+
+-- copied from v16.2.0
+SD ::= OCTET STRING (SIZE(3))
+
+-- copied from v16.2.0
+S-NSSAI ::= SEQUENCE {
+ sST SST,
+ sD SD OPTIONAL,
+ ...
+}
+
+-- copied from v16.2.0
+SST ::= OCTET STRING (SIZE(1))
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 38.423 (XnAP)
+-- **************************************************************
+
+-- copied from v16.2.0
+NG-RANnodeUEXnAPID ::= INTEGER (0.. 4294967295)
+
+GlobalNGRANNodeID ::= CHOICE {
+ gNB GlobalGNB-ID,
+ ng-eNB GlobalNgENB-ID,
+ ...
+}
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 37.483 (E1AP)
+-- **************************************************************
+
+-- copied from v17.1.0
+GNB-CU-CP-UE-E1AP-ID ::= INTEGER (0..4294967295)
+
+-- copied from v17.1.0
+-- GNB-CU-UP-ID ::= INTEGER (0..68719476735)
+
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 38.473 (F1AP)
+-- **************************************************************
+
+-- copied from v16.5.0
+FiveGS-TAC ::= OCTET STRING (SIZE(3))
+
+-- copied from v16.5.0
+FreqBandNrItem ::= SEQUENCE {
+ freqBandIndicatorNr INTEGER (1..1024, ...),
+ ...
+}
+
+
+-- copied from v16.5.0
+GNB-CU-UE-F1AP-ID ::= INTEGER (0..4294967295)
+
+-- copied from v16.5.0
+-- GNB-DU-ID ::= INTEGER (0..68719476735)
+
+-- copied from v16.5.0
+NR-PCI ::= INTEGER (0..1007)
+
+-- copied from v16.5.0
+NR-ARFCN ::= SEQUENCE {
+ nRARFCN INTEGER (0..maxNRARFCN),
+ ...
+}
+-- copied from v16.5.0
+NRFrequencyBand-List ::= SEQUENCE (SIZE(1..maxnoofNrCellBands)) OF NRFrequencyBandItem
+
+-- copied from v16.5.0
+NRFrequencyBandItem ::= SEQUENCE {
+ freqBandIndicatorNr INTEGER (1..1024,...),
+ supportedSULBandList SupportedSULBandList,
+ ...
+}
+
+-- copied from v16.5.0
+NRFrequencyInfo ::= SEQUENCE {
+ nrARFCN NR-ARFCN,
+ frequencyBand-List NRFrequencyBand-List,
+ frequencyShift7p5khz NRFrequencyShift7p5khz OPTIONAL,
+ ...
+}
+
+-- copied from v16.5.0
+NRFrequencyShift7p5khz ::= ENUMERATED {false, true, ...}
+
+
+-- copied from v16.5.0
+RANUEID ::= OCTET STRING (SIZE (8))
+
+
+-- copied from v16.5.0
+SupportedSULBandList ::= SEQUENCE (SIZE(0..maxnoofNrCellBands)) OF SupportedSULFreqBandItem
+
+-- copied from v16.5.0
+SupportedSULFreqBandItem ::= SEQUENCE {
+ freqBandIndicatorNr INTEGER (1..1024,...),
+ ...
+}
+
+
+
+
+
+END
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/e2ap/packet-e2ap-template.c b/epan/dissectors/asn1/e2ap/packet-e2ap-template.c
index 1cec30b1fb..eba49213dd 100755..100644
--- a/epan/dissectors/asn1/e2ap/packet-e2ap-template.c
+++ b/epan/dissectors/asn1/e2ap/packet-e2ap-template.c
@@ -8,11 +8,10 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * References: ORAN-WG3.E2AP-v01.00, ORAN-WG3.E2SM-KPM-v01.00
+ * References: ORAN-WG3.E2AP-v03.00, ORAN-WG3.E2SM-KPM-v03.00, ORAN-WG3.E2SM-RC.03.00
*/
#include "config.h"
-#include <stdio.h>
#include <epan/packet.h>
#include <epan/strutil.h>
@@ -22,16 +21,20 @@
#include <epan/expert.h>
#include <epan/proto_data.h>
#include <epan/conversation.h>
-#include <epan/exceptions.h>
-#include <epan/show_exception.h>
+#include <epan/to_str.h>
+#include <epan/oids.h>
+#include <epan/tap.h>
+#include <epan/stats_tree.h>
#include "packet-e2ap.h"
#include "packet-per.h"
+#include "packet-ntp.h"
+
#define PNAME "E2 Application Protocol"
#define PSNAME "E2AP"
#define PFNAME "e2ap"
-/* Dissector will use SCTP PPID 18 or SCTP port. IANA assigned port = 37464 */
+/* Dissector will use SCTP PPID 70, 71 or 72 or SCTP port 37464. */
#define SCTP_PORT_E2AP 37464
void proto_register_e2ap(void);
@@ -42,43 +45,600 @@ static dissector_handle_t e2ap_handle;
#include "packet-e2ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_e2ap = -1;
+static int proto_e2ap;
#include "packet-e2ap-hf.c"
+static int hf_e2ap_unmapped_ran_function_id;
+static int hf_e2ap_ran_function_name_not_recognised;
+static int hf_e2ap_ran_function_setup_frame;
+/* TODO: for each RAN Function, also link forward to where setup is referenced (if at all?). Maybe just first usage? */
+
+static int hf_e2ap_dissector_version;
+static int hf_e2ap_frame_version;
+
+static int hf_e2ap_timestamp_string;
+
+
/* Initialize the subtree pointers */
-static gint ett_e2ap = -1;
+static gint ett_e2ap;
+
+static expert_field ei_e2ap_ran_function_names_no_match;
+static expert_field ei_e2ap_ran_function_id_not_mapped;
+static expert_field ei_e2ap_ran_function_dissector_mismatch;
+static expert_field ei_e2ap_ran_function_max_dissectors_registered;
#include "packet-e2ap-ett.c"
-enum{
+/* Forward declarations */
+static int dissect_e2ap_RANfunction_Name(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+
+
+static int dissect_E2SM_KPM_EventTriggerDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_ActionDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_IndicationHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_IndicationMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_RANfunction_Description_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+
+static int dissect_E2SM_RC_EventTrigger_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_ActionDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_RANFunctionDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_IndicationMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_IndicationHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_CallProcessID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_ControlHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_ControlMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_RC_ControlOutcome_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+
+static int dissect_E2SM_NI_EventTriggerDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_ActionDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_RANfunction_Description_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_IndicationMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_IndicationHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_CallProcessID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_ControlHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_ControlMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_NI_ControlOutcome_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+
+enum {
INITIATING_MESSAGE,
SUCCESSFUL_OUTCOME,
UNSUCCESSFUL_OUTCOME
};
-typedef struct _e2ap_ctx_t {
- guint32 message_type;
- guint32 ProcedureCode;
- guint32 ProtocolIE_ID;
- guint32 ProtocolExtensionID;
-} e2ap_ctx_t;
+
+/* E2AP stats - Tap interface */
+
+static void set_stats_message_type(packet_info *pinfo, int type);
+
+static const guint8 *st_str_packets = "Total Packets";
+static const guint8 *st_str_packet_types = "E2AP Packet Types";
+
+static int st_node_packets = -1;
+static int st_node_packet_types = -1;
+static int e2ap_tap;
+
+struct e2ap_tap_t {
+ gint e2ap_mtype;
+};
+
+#define MTYPE_E2_CONNECTION_UPDATE 1
+#define MTYPE_E2_CONNECTION_UPDATE_ACK 2
+#define MTYPE_E2_CONNECTION_UPDATE_FAIL 3
+#define MTYPE_E2_CONFIGURATION_UPDATE 4
+#define MTYPE_E2_CONFIGURATION_UPDATE_ACK 5
+#define MTYPE_E2_CONFIGURATION_UPDATE_FAIL 6
+#define MTYPE_E2_SETUP_FAIL 7
+#define MTYPE_E2_SETUP_REQUEST 8
+#define MTYPE_E2_SETUP_RESPONSE 9
+#define MTYPE_ERROR_INDICATION 10
+#define MTYPE_RESET_REQUEST 11
+#define MTYPE_RESET_RESPONSE 12
+#define MTYPE_RIC_CONTROL_ACK 13
+#define MTYPE_RIC_CONTROL_FAIL 14
+#define MTYPE_RIC_CONTROL_REQUEST 15
+#define MTYPE_RIC_IND 16
+#define MTYPE_RIC_SERVICE_QUERY 17
+#define MTYPE_RIC_SERVICE_UPDATE 18
+#define MTYPE_RIC_SERVICE_UPDATE_ACK 19
+#define MTYPE_RIC_SERVICE_UPDATE_FAIL 20
+#define MTYPE_RIC_SUBSCRIPTION_FAIL 21
+#define MTYPE_RIC_SUBSCRIPTION_REQUEST 22
+#define MTYPE_RIC_SUBSCRIPTION_RESPONSE 23
+#define MTYPE_RIC_SUBSCRIPTION_DELETE_FAIL 24
+#define MTYPE_RIC_SUBSCRIPTION_DELETE_REQUEST 25
+#define MTYPE_RIC_SUBSCRIPTION_DELETE_RESPONSE 26
+#define MTYPE_RIC_SUBSCRIPTION_DELETE_REQUIRED 27
+
+/* Value Strings. TODO: ext? */
+static const value_string mtype_names[] = {
+ { MTYPE_E2_CONNECTION_UPDATE, "E2connectionUpdate"},
+ { MTYPE_E2_CONNECTION_UPDATE_ACK, "E2connectionUpdateAcknowledge"},
+ { MTYPE_E2_CONNECTION_UPDATE_FAIL, "E2connectionUpdateFailure"},
+ { MTYPE_E2_CONFIGURATION_UPDATE, "E2nodeConfigurationUpdate"},
+ { MTYPE_E2_CONFIGURATION_UPDATE_ACK, "E2nodeConfigurationUpdateAcknowledge"},
+ { MTYPE_E2_CONFIGURATION_UPDATE_FAIL, "E2nodeConfigurationUpdateFailure"},
+ { MTYPE_E2_SETUP_FAIL, "E2setupFailure"},
+ { MTYPE_E2_SETUP_REQUEST, "E2setupRequest"},
+ { MTYPE_E2_SETUP_RESPONSE, "E2setupResponse"},
+ { MTYPE_ERROR_INDICATION, "ErrorIndication"},
+ { MTYPE_RESET_REQUEST, "ResetRequest"},
+ { MTYPE_RESET_RESPONSE, "ResetResponse"},
+ { MTYPE_RIC_CONTROL_ACK, "RICcontrolAcknowledge"},
+ { MTYPE_RIC_CONTROL_FAIL, "RICcontrolFailure"},
+ { MTYPE_RIC_CONTROL_REQUEST, "RICcontrolRequest"},
+ { MTYPE_RIC_IND, "RICindication"},
+ { MTYPE_RIC_SERVICE_QUERY, "RICserviceQuery"},
+ { MTYPE_RIC_SERVICE_UPDATE, "RICserviceUpdate"},
+ { MTYPE_RIC_SERVICE_UPDATE_ACK, "RICserviceUpdateAcknowledge"},
+ { MTYPE_RIC_SERVICE_UPDATE_FAIL, "RICserviceUpdateFailure"},
+ { MTYPE_RIC_SUBSCRIPTION_FAIL, "RICsubscriptionFailure"},
+ { MTYPE_RIC_SUBSCRIPTION_REQUEST, "RICsubscriptionRequest"},
+ { MTYPE_RIC_SUBSCRIPTION_RESPONSE, "RICsubscriptionResponse"},
+ { MTYPE_RIC_SUBSCRIPTION_DELETE_FAIL, "RICsubscriptionDeleteFailure"},
+ { MTYPE_RIC_SUBSCRIPTION_DELETE_REQUEST, "RICsubscriptionDeleteRequest"},
+ { MTYPE_RIC_SUBSCRIPTION_DELETE_RESPONSE, "RICsubscriptionDeleteResponse"},
+ { MTYPE_RIC_SUBSCRIPTION_DELETE_REQUIRED, "RICsubscriptionDeleteRequired"},
+ { 0, NULL }
+};
+
+static proto_tree *top_tree = NULL;
+
+static void set_message_label(asn1_ctx_t *actx, int type)
+{
+ const char *label = val_to_str_const(type, mtype_names, "Unknown");
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, label);
+ proto_item_append_text(top_tree, " (%s)", label);
+}
+
+/* Temporary private info to remember while dissecting frame */
struct e2ap_private_data {
guint32 procedure_code;
guint32 protocol_ie_id;
- guint32 protocol_extension_id;
guint32 message_type;
- guint32 ran_ue_e2ap_id;
+
+ guint32 ran_function_id;
+ guint32 gnb_id_len;
+#define MAX_GNB_ID_BYTES 6
+ guint8 gnb_id_bytes[MAX_GNB_ID_BYTES];
+ dissector_handle_t component_configuration_dissector;
+ struct e2ap_tap_t *stats_tap;
};
-/* Global variables */
-static guint gbl_e2apSctpPort = SCTP_PORT_E2AP;
+/* Lookup temporary private info */
+static struct e2ap_private_data*
+e2ap_get_private_data(packet_info *pinfo)
+{
+ struct e2ap_private_data *e2ap_data = (struct e2ap_private_data*)p_get_proto_data(pinfo->pool, pinfo, proto_e2ap, 0);
+ if (!e2ap_data) {
+ e2ap_data = wmem_new0(pinfo->pool, struct e2ap_private_data);
+ p_add_proto_data(pinfo->pool, pinfo, proto_e2ap, 0, e2ap_data);
+ }
+ return e2ap_data;
+}
+
+/****************************************************************************************************************/
+/* These are the strings that we look for at the beginning of RAN Function Description to identify RAN Function */
+/* Static table mapping from string -> ran_function */
+static const char* g_ran_function_name_table[MAX_RANFUNCTIONS] =
+{
+ "ORAN-E2SM-KPM",
+ "ORAN-E2SM-RC",
+ "ORAN-E2SM-NI",
+ "{" /* For now, CCC is the only JSON-based RAN Function, so just match opening */
+};
+
+
+
+/* Per-conversation mapping: ranFunctionId -> ran_function+dissector */
+typedef struct {
+ guint32 setup_frame;
+ guint32 ran_function_id;
+ ran_function_t ran_function;
+ char oid[MAX_OID_LEN]; // i.e., OID from setupRequest
+ ran_function_dissector_t *dissector;
+} ran_function_id_mapping_t;
+
+typedef struct {
+#define MAX_RANFUNCTION_ENTRIES 8
+ guint32 num_entries;
+ ran_function_id_mapping_t entries[MAX_RANFUNCTION_ENTRIES];
+} ran_functionid_table_t;
+
+static const char *ran_function_to_str(ran_function_t ran_function)
+{
+ switch (ran_function) {
+ case KPM_RANFUNCTIONS:
+ return "KPM";
+ case RC_RANFUNCTIONS:
+ return "RC";
+ case NI_RANFUNCTIONS:
+ return "NI";
+ case CCC_RANFUNCTIONS:
+ return "CCC";
+
+ default:
+ return "Unknown";
+ }
+}
+
+/* Table of RAN Function tables, indexed by gnbId (bytes) */
+typedef struct {
+#define MAX_GNBS 6
+ guint32 num_gnbs;
+ struct {
+ guint8 id_value[MAX_GNB_ID_BYTES];
+ guint32 id_len;
+ ran_functionid_table_t *ran_function_table;
+ } gnb[MAX_GNBS];
+} gnb_ran_functions_t;
+
+static gnb_ran_functions_t s_gnb_ran_functions_table;
+
+
+/* Table of available dissectors for each RAN function */
+typedef struct {
+ guint32 num_available_dissectors;
+#define MAX_DISSECTORS_PER_RAN_FUNCTION 3
+ ran_function_dissector_t* ran_function_dissectors[MAX_DISSECTORS_PER_RAN_FUNCTION];
+} ran_function_available_dissectors_t;
+
+/* Available dissectors should be set here */
+static ran_function_available_dissectors_t g_ran_functions_available_dissectors[MAX_RANFUNCTIONS];
+
+/* Will be called from outside this file by separate dissectors */
+void register_e2ap_ran_function_dissector(ran_function_t ran_function, ran_function_dissector_t *dissector)
+{
+ if ((ran_function >= MIN_RANFUNCTIONS) && (ran_function < MAX_RANFUNCTIONS)) {
+ ran_function_available_dissectors_t *available_dissectors = &g_ran_functions_available_dissectors[ran_function];
+ if (available_dissectors->num_available_dissectors < MAX_DISSECTORS_PER_RAN_FUNCTION) {
+ available_dissectors->ran_function_dissectors[available_dissectors->num_available_dissectors++] = dissector;
+ }
+ }
+}
+
+
+/* Get RANfunctionID table from conversation data - create new if necessary */
+static ran_functionid_table_t* get_ran_functionid_table(packet_info *pinfo)
+{
+ conversation_t *p_conv;
+ ran_functionid_table_t *p_conv_data = NULL;
+
+ /* Lookup conversation */
+ p_conv = find_conversation(pinfo->num, &pinfo->net_dst, &pinfo->net_src,
+ conversation_pt_to_endpoint_type(pinfo->ptype),
+ pinfo->destport, pinfo->srcport, 0);
+ if (!p_conv) {
+ /* None, so create new data and set */
+ p_conv = conversation_new(pinfo->num, &pinfo->net_dst, &pinfo->net_src,
+ conversation_pt_to_endpoint_type(pinfo->ptype),
+ pinfo->destport, pinfo->srcport, 0);
+ p_conv_data = (ran_functionid_table_t*)wmem_new0(wmem_file_scope(), ran_functionid_table_t);
+ conversation_add_proto_data(p_conv, proto_e2ap, p_conv_data);
+ }
+ else {
+ /* Will return existing conversation data */
+ p_conv_data = (ran_functionid_table_t*)conversation_get_proto_data(p_conv, proto_e2ap);
+ }
+
+ return p_conv_data;
+}
+
+
+/* Store new RANfunctionID -> Service Model mapping in table */
+void e2ap_store_ran_function_mapping(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, const char *name)
+{
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+ ran_functionid_table_t *table = get_ran_functionid_table(pinfo);
+
+ /* Need these pointers not to be NULL */
+ if (!name || !table) {
+ return;
+ }
+
+ /* Stop if already reached table limit */
+ if (table->num_entries == MAX_RANFUNCTION_ENTRIES) {
+ proto_tree_add_expert_format(tree, pinfo, &ei_e2ap_ran_function_max_dissectors_registered,
+ tvb, 0, 0,
+ "Dissector wants to register for %s, but max (%u) already reached",
+ name, MAX_RANFUNCTION_ENTRIES);
+ return;
+ }
+
+ guint32 ran_function_id = e2ap_data->ran_function_id;
+
+ ran_function_t ran_function = MAX_RANFUNCTIONS; /* i.e. invalid */
+ ran_function_dissector_t *ran_function_dissector = NULL;
+
+ /* Check known RAN function names */
+ for (int n=MIN_RANFUNCTIONS; n < MAX_RANFUNCTIONS; n++) {
+ if (strcmp(name, g_ran_function_name_table[n]) == 0) {
+ ran_function = n;
+
+ /* Don't know OID yet, so for now, just choose first/only one */
+ /* TODO: is latest one likely to be more compatible? First fields (at least) come from E2SM.. */
+ if (g_ran_functions_available_dissectors[table->entries[n].ran_function].num_available_dissectors) {
+ ran_function_dissector = g_ran_functions_available_dissectors[table->entries[n].ran_function].ran_function_dissectors[0];
+ }
+ break;
+ }
+ }
+
+ /* Nothing to do if no matches */
+ if (ran_function == MAX_RANFUNCTIONS) {
+ return;
+ }
+
+ /* If ID already mapped, can stop here */
+ for (guint n=0; n < table->num_entries; n++) {
+ if (table->entries[n].ran_function_id == ran_function_id) {
+ return;
+ }
+ }
+
+ /* OK, store this new entry */
+ guint idx = table->num_entries++;
+ table->entries[idx].setup_frame = pinfo->num;
+ table->entries[idx].ran_function_id = ran_function_id;
+ table->entries[idx].ran_function = ran_function;
+ table->entries[idx].dissector = ran_function_dissector;
+
+ /* When add first entry, also want to set up table from gnbId -> table */
+ if (idx == 0) {
+ guint id_len = e2ap_data->gnb_id_len;
+ guint8 *id_value = &e2ap_data->gnb_id_bytes[0];
+
+ gboolean found = FALSE;
+ for (guint n=0; n<s_gnb_ran_functions_table.num_gnbs; n++) {
+ if ((s_gnb_ran_functions_table.gnb[n].id_len = id_len) &&
+ (memcmp(s_gnb_ran_functions_table.gnb[n].id_value, id_value, id_len) == 0)) {
+ /* Already have an entry for this gnb. */
+ found = TRUE;
+ break;
+ }
+ }
+
+ if (!found) {
+ /* Add entry (if room for 1 more) */
+ guint32 new_idx = s_gnb_ran_functions_table.num_gnbs;
+ if (new_idx < MAX_GNBS-1) {
+ s_gnb_ran_functions_table.gnb[new_idx].id_len = id_len;
+ memcpy(s_gnb_ran_functions_table.gnb[new_idx].id_value, id_value, id_len);
+ s_gnb_ran_functions_table.gnb[new_idx].ran_function_table = table;
+
+ s_gnb_ran_functions_table.num_gnbs++;
+ }
+ }
+ }
+}
+
+/* Look for Service Model function pointers, based on current RANFunctionID from frame */
+static ran_function_dissector_t* lookup_ranfunction_dissector(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb)
+{
+ /* Get ranFunctionID from this frame */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+ guint ran_function_id = e2ap_data->ran_function_id;
+
+ /* Get ranFunction table corresponding to this frame's conversation */
+ ran_functionid_table_t *table = get_ran_functionid_table(pinfo);
+ if (!table) {
+ /* There is no ran function table associated with this frame's conversation info */
+ return NULL;
+ }
+
+ /* Find the entry in this table corresponding to ran_function_id */
+ for (guint n=0; n < table->num_entries; n++) {
+ if (ran_function_id == table->entries[n].ran_function_id) {
+ if (tree) {
+ /* Point back at the setup frame where this ranfunction was mapped */
+ proto_item *ti = proto_tree_add_uint(tree, hf_e2ap_ran_function_setup_frame,
+ tvb, 0, 0, table->entries[n].setup_frame);
+ /* Show that mapping */
+ proto_item_append_text(ti, " (%u -> %s)", table->entries[n].ran_function_id, ran_function_to_str(table->entries[n].ran_function));
+ proto_item_set_generated(ti);
+
+ /* Also take the chance to compare signalled and available dissector */
+ char *frame_version = oid_resolved_from_string(pinfo->pool, table->entries[n].oid);
+ ti = proto_tree_add_string(tree, hf_e2ap_frame_version, tvb, 0, 0, frame_version);
+ proto_item_set_generated(ti);
+
+ char *dissector_version = oid_resolved_from_string(pinfo->pool, table->entries[n].dissector->oid);
+ ti = proto_tree_add_string(tree, hf_e2ap_dissector_version, tvb, 0, 0, dissector_version);
+ proto_item_set_generated(ti);
+
+ if (strcmp(frame_version, dissector_version) != 0) {
+ /* Expert info for version mismatch! */
+ expert_add_info_format(pinfo, ti, &ei_e2ap_ran_function_dissector_mismatch,
+ "Dissector version mismatch - frame is %s but dissector is %s",
+ frame_version, dissector_version);
+ }
+ }
+
+ /* Return the dissector */
+ return table->entries[n].dissector;
+ }
+ }
+
+ if (tree) {
+ /* No match found.. */
+ proto_item *ti = proto_tree_add_item(tree, hf_e2ap_unmapped_ran_function_id, tvb, 0, 0, ENC_NA);
+ expert_add_info_format(pinfo, ti, &ei_e2ap_ran_function_id_not_mapped,
+ "Service Model not mapped for FunctionID %u", ran_function_id);
+ }
+
+ return NULL;
+}
+
+/* Return the oid associated with this frame's conversation */
+static char* lookup_ranfunction_oid(packet_info *pinfo)
+{
+ /* Get ranFunctionID from this frame */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+ guint ran_function_id = e2ap_data->ran_function_id;
+
+ /* Get ranFunction table corresponding to this frame's conversation */
+ ran_functionid_table_t *table = get_ran_functionid_table(pinfo);
+ if (!table) {
+ /* There is no ran function table associated with this frame's conversation info */
+ return NULL;
+ }
+
+ /* Find the entry in this table corresponding to ran_function_id */
+ for (guint n=0; n < table->num_entries; n++) {
+ if (ran_function_id == table->entries[n].ran_function_id) {
+ return (char*)(table->entries[n].oid);
+ }
+ }
+
+ /* Not found */
+ return NULL;
+}
+
+
+/* We now know the OID - can we set a dissector that is an exact match from what has been signalled? */
+static void update_dissector_using_oid(packet_info *pinfo, ran_function_t ran_function)
+{
+ char *frame_oid = lookup_ranfunction_oid(pinfo);
+ if (frame_oid == NULL) {
+ /* TODO: error? */
+ return;
+ }
+
+ gboolean found = FALSE;
+
+ /* Look at available dissectors for this RAN function */
+ ran_function_available_dissectors_t *available = &g_ran_functions_available_dissectors[ran_function];
+ if (!available->num_available_dissectors) {
+ /* Oops - none available at all! */
+ return;
+ }
+
+ // Get mapping in use
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+ guint ran_function_id = e2ap_data->ran_function_id;
+ ran_function_id_mapping_t *mapping = NULL;
+ ran_functionid_table_t *table = get_ran_functionid_table(pinfo);
+ if (!table) {
+ return;
+ }
+
+ /* Find the entry in this table corresponding to ran_function_id */
+ for (guint n=0; n < table->num_entries; n++) {
+ if (ran_function_id == table->entries[n].ran_function_id) {
+ mapping = &(table->entries[n]);
+ }
+ }
+
+ if (!mapping) {
+ return;
+ }
+
+ /* Set dissector pointer in ran_function_id_mapping_t */
+ for (guint32 n=0; n < available->num_available_dissectors; n++) {
+ /* If exact match, set it */
+ if (strcmp(frame_oid, available->ran_function_dissectors[n]->oid) == 0) {
+ mapping->dissector = available->ran_function_dissectors[n];
+ found = TRUE;
+ break;
+ }
+ }
+
+ /* If not exact match, just set to first one available (TODO: closest above better?) */
+ if (!found) {
+ mapping->dissector = available->ran_function_dissectors[0];
+ }
+}
+
+
+/* Update RANfunctionID -> Service Model mapping in table (now that we know OID) */
+void e2ap_update_ran_function_mapping(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, const char *oid)
+{
+ /* Copy OID into table entry (so may be used to choose and be compared with chosen available dissector */
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+ ran_functionid_table_t *table = get_ran_functionid_table(pinfo);
+ /* Make sure we have private and table data to compare */
+ if (!e2ap_data || !table) {
+ return;
+ }
+ ran_function_t ran_function = MAX_RANFUNCTIONS;
+ for (guint n=0; n < table->num_entries; n++) {
+ if (e2ap_data->ran_function_id == table->entries[n].ran_function_id) {
+ ran_function = table->entries[n].ran_function;
+ g_strlcpy(table->entries[n].oid, oid, MAX_OID_LEN);
+ }
+ }
+
+ /* Look up version from oid and show as generated field */
+ char *version = oid_resolved_from_string(pinfo->pool, oid);
+ proto_item *ti = proto_tree_add_string(tree, hf_e2ap_frame_version, tvb, 0, 0, version);
+ proto_item_set_generated(ti);
+
+ /* Can now pick most appropriate dissector for this RAN Function name, based upon this OID and the available dissectors */
+ if (ran_function < MAX_RANFUNCTIONS) {
+ if (pinfo->fd->visited) {
+ update_dissector_using_oid(pinfo, ran_function);
+ }
+ }
+}
+
+/* This will get used for E2nodeConfigurationUpdate, where we have a gnb-id but haven't seen E2setupRequest */
+static void update_conversation_from_gnb_id(asn1_ctx_t *actx)
+{
+ packet_info *pinfo = actx->pinfo;
+ struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+
+ /* Look for conversation data */
+ conversation_t *p_conv;
+ ran_functionid_table_t *p_conv_data = NULL;
+
+ /* Lookup conversation */
+ p_conv = find_conversation(pinfo->num, &pinfo->net_dst, &pinfo->net_src,
+ conversation_pt_to_endpoint_type(pinfo->ptype),
+ pinfo->destport, pinfo->srcport, 0);
+
+ if (!p_conv) {
+ /* None, so create new data and set */
+ p_conv = conversation_new(pinfo->num, &pinfo->net_dst, &pinfo->net_src,
+ conversation_pt_to_endpoint_type(pinfo->ptype),
+ pinfo->destport, pinfo->srcport, 0);
+ p_conv_data = (ran_functionid_table_t*)wmem_new0(wmem_file_scope(), ran_functionid_table_t);
+ conversation_add_proto_data(p_conv, proto_e2ap, p_conv_data);
+
+ /* Look to see if we already know about the mappings in effect on this gNB */
+ guint id_len = e2ap_data->gnb_id_len;
+ guint8 *id_value = &e2ap_data->gnb_id_bytes[0];
+
+ for (guint n=0; n<s_gnb_ran_functions_table.num_gnbs; n++) {
+ if ((s_gnb_ran_functions_table.gnb[n].id_len = id_len) &&
+ (memcmp(s_gnb_ran_functions_table.gnb[n].id_value, id_value, id_len) == 0)) {
+
+ /* Have an entry for this gnb. Set direct pointer to existing data (used by original conversation). */
+ /* N.B. This means that no further updates for the gNB are expected on different conversations.. */
+ p_conv_data = s_gnb_ran_functions_table.gnb[n].ran_function_table;
+ conversation_add_proto_data(p_conv, proto_e2ap, p_conv_data);
+
+ /* TODO: may want to try to add a generated field to pass back to E2setupRequest where RAN function mappings were first seen? */
+ break;
+ }
+ }
+ }
+}
+
+static dissector_handle_t json_handle;
+
+static int dissect_E2SM_NI_JSON_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ /* Send to JSON dissector */
+ return call_dissector_only(json_handle, tvb, pinfo, tree, NULL);
+}
+
/* Dissector tables */
static dissector_table_t e2ap_ies_dissector_table;
+
//static dissector_table_t e2ap_ies_p1_dissector_table;
//static dissector_table_t e2ap_ies_p2_dissector_table;
static dissector_table_t e2ap_extension_dissector_table;
@@ -88,49 +648,28 @@ static dissector_table_t e2ap_proc_uout_dissector_table;
static dissector_table_t e2ap_n2_ie_type_dissector_table;
static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+
/* Currently not used
static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
*/
-/* Forward declarations */
-static int dissect_E2SM_KPM_ActionDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-static int dissect_E2SM_KPM_RANfunction_Description_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-static int dissect_E2SM_KPM_EventTriggerDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-static int dissect_E2SM_KPM_IndicationHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-static int dissect_RANcallProcess_ID_string_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-static int dissect_E2SM_KPM_IndicationMessage_Format1_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-
static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
-static struct e2ap_private_data*
-e2ap_get_private_data(packet_info *pinfo)
-{
- struct e2ap_private_data *e2ap_data = (struct e2ap_private_data*)p_get_proto_data(pinfo->pool, pinfo, proto_e2ap, 0);
- if (!e2ap_data) {
- e2ap_data = wmem_new0(pinfo->pool, struct e2ap_private_data);
- p_add_proto_data(pinfo->pool, pinfo, proto_e2ap, 0, e2ap_data);
- }
- return e2ap_data;
-}
#include "packet-e2ap-fn.c"
static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- e2ap_ctx_t e2ap_ctx;
struct e2ap_private_data *e2ap_data = e2ap_get_private_data(pinfo);
+ return (dissector_try_uint_new(e2ap_ies_dissector_table, e2ap_data->protocol_ie_id, tvb, pinfo, tree, FALSE, NULL)) ? tvb_captured_length(tvb) : 0;
+}
+
- e2ap_ctx.message_type = e2ap_data->message_type;
- e2ap_ctx.ProcedureCode = e2ap_data->procedure_code;
- e2ap_ctx.ProtocolIE_ID = e2ap_data->protocol_ie_id;
- e2ap_ctx.ProtocolExtensionID = e2ap_data->protocol_extension_id;
- return (dissector_try_uint_new(e2ap_ies_dissector_table, e2ap_data->protocol_ie_id, tvb, pinfo, tree, FALSE, &e2ap_ctx)) ? tvb_captured_length(tvb) : 0;
-}
/* Currently not used
static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
@@ -170,23 +709,70 @@ static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, p
}
+static void set_stats_message_type(packet_info *pinfo, int type)
+{
+ struct e2ap_private_data* priv_data = e2ap_get_private_data(pinfo);
+ priv_data->stats_tap->e2ap_mtype = type;
+}
+
+static void
+e2ap_stats_tree_init(stats_tree *st)
+{
+ st_node_packets = stats_tree_create_node(st, st_str_packets, 0, STAT_DT_INT, TRUE);
+ st_node_packet_types = stats_tree_create_pivot(st, st_str_packet_types, st_node_packets);
+}
+
+static tap_packet_status
+e2ap_stats_tree_packet(stats_tree* st, packet_info* pinfo _U_,
+ epan_dissect_t* edt _U_ , const void* p, tap_flags_t flags _U_)
+{
+ const struct e2ap_tap_t *pi = (const struct e2ap_tap_t *)p;
+
+ tick_stat_node(st, st_str_packets, 0, FALSE);
+ stats_tree_tick_pivot(st, st_node_packet_types,
+ val_to_str(pi->e2ap_mtype, mtype_names,
+ "Unknown packet type (%d)"));
+ return TAP_PACKET_REDRAW;
+}
+
+
+/* Main dissection function */
static int
dissect_e2ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
{
proto_item *e2ap_item = NULL;
proto_tree *e2ap_tree = NULL;
+ struct e2ap_tap_t *tap_info;
+
/* make entry in the Protocol column on summary display */
col_set_str(pinfo->cinfo, COL_PROTOCOL, "E2AP");
- /* ensure that parent dissector is not e2ap before clearing fence */
col_clear(pinfo->cinfo, COL_INFO);
+ tap_info = wmem_new(pinfo->pool, struct e2ap_tap_t);
+ tap_info->e2ap_mtype = 0; /* unknown/invalid */
+
+ /* Add stats tap to private struct */
+ struct e2ap_private_data *priv_data = e2ap_get_private_data(pinfo);
+ priv_data->stats_tap = tap_info;
+
+ /* Store top-level tree */
+ top_tree = e2ap_tree;
+
/* create the e2ap protocol tree */
e2ap_item = proto_tree_add_item(tree, proto_e2ap, tvb, 0, -1, ENC_NA);
e2ap_tree = proto_item_add_subtree(e2ap_item, ett_e2ap);
+ dissect_E2AP_PDU_PDU(tvb, pinfo, e2ap_tree, NULL);
- return dissect_E2AP_PDU_PDU(tvb, pinfo, e2ap_tree, NULL);
+ tap_queue_packet(e2ap_tap, pinfo, tap_info);
+ return tvb_captured_length(tvb);
+}
+
+
+static void e2ap_init_protocol(void)
+{
+ s_gnb_ran_functions_table.num_gnbs = 0;
}
@@ -194,33 +780,136 @@ dissect_e2ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_
void
proto_reg_handoff_e2ap(void)
{
- static gboolean Initialized=FALSE;
- static guint SctpPort;
-
- if (!Initialized) {
- dissector_add_for_decode_as("sctp.port", e2ap_handle);
-#if 0
- /* TODO: should one or more of these be registered? */
- dissector_add_uint("sctp.ppi", E2_CP_PROTOCOL_ID, e2ap_handle);
- dissector_add_uint("sctp.ppi", E2_UP_PROTOCOL_ID, e2ap_handle);
- dissector_add_uint("sctp.ppi", E2_DU_PROTOCOL_ID, e2ap_handle);
-#endif
-
- Initialized=TRUE;
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_E2AP, e2ap_handle);
+ dissector_add_uint("sctp.ppi", E2_CP_PROTOCOL_ID, e2ap_handle);
+ dissector_add_uint("sctp.ppi", E2_UP_PROTOCOL_ID, e2ap_handle);
+ dissector_add_uint("sctp.ppi", E2_DU_PROTOCOL_ID, e2ap_handle);
+
#include "packet-e2ap-dis-tab.c"
- } else {
- if (SctpPort != 0) {
- dissector_delete_uint("sctp.port", SctpPort, e2ap_handle);
+ /********************************/
+ /* Known OIDs for RAN providers */
+ /* N.B. These appear in the RAN Function ASN.1 definitions (except for CCC, which is based on JSON).
+ * There is a registry of known OIDs though in the E2SM specification
+ */
+
+ /* KPM */
+ oid_add_from_string("KPM v1", "1.3.6.1.4.1.53148.1.1.2.2");
+ oid_add_from_string("KPM v2", "1.3.6.1.4.1.53148.1.2.2.2");
+ oid_add_from_string("KPM v3", "1.2.6.1.4.1.53148.1.3.2.2");
+
+ /* RC */
+ // TODO: appears to be the same??? Asking for clarification from ORAN..
+ oid_add_from_string("RC v1", "1.3.6.1.4.1.53148.1.1.2.3");
+ //oid_add_from_string("RC v3", "1.3.6.1.4.1.53148.1.1.2.3");
+ //oid_add_from_string("RC v4", "1.3.6.1.4.1.53148.1.1.2.3");
+
+ /* NI */
+ oid_add_from_string("NI v1", "1.3.6.1.4.1.53148.1.1.2.1");
+
+ /* CCC */
+ oid_add_from_string("CCC v1", "1.3.6.1.4.1.53148.1.1.2.4");
+
+
+ /********************************/
+ /* Register 'built-in' dissectors */
+
+ static ran_function_dissector_t kpm_v3 =
+ { "ORAN-E2SM-KPM", "1.2.6.1.4.1.53148.1.3.2.2", 3, 0,
+ { dissect_E2SM_KPM_RANfunction_Description_PDU,
+
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+
+ dissect_E2SM_KPM_ActionDefinition_PDU,
+ dissect_E2SM_KPM_IndicationMessage_PDU,
+ dissect_E2SM_KPM_IndicationHeader_PDU,
+ NULL, /* no dissect_E2SM_KPM_CallProcessID_PDU */
+ dissect_E2SM_KPM_EventTriggerDefinition_PDU
+ }
+ };
+
+ static ran_function_dissector_t rc_v1 =
+ { "ORAN-E2SM-RC", "1.3.6.1.4.1.53148.1.1.2.3", 1, 3,
+ { dissect_E2SM_RC_RANFunctionDefinition_PDU,
+
+ dissect_E2SM_RC_ControlHeader_PDU,
+ dissect_E2SM_RC_ControlMessage_PDU,
+ dissect_E2SM_RC_ControlOutcome_PDU,
+ /* new for v3 */
+ NULL,
+ NULL,
+ NULL,
+
+ dissect_E2SM_RC_ActionDefinition_PDU,
+ dissect_E2SM_RC_IndicationMessage_PDU,
+ dissect_E2SM_RC_IndicationHeader_PDU,
+ dissect_E2SM_RC_CallProcessID_PDU,
+ dissect_E2SM_RC_EventTrigger_PDU
}
- }
+ };
+
+ static ran_function_dissector_t ni_v1 =
+ { "ORAN-E2SM-NI", "1.3.6.1.4.1.53148.1.1.2.1", 1, 0,
+ { dissect_E2SM_NI_RANfunction_Description_PDU,
+
+ dissect_E2SM_NI_ControlHeader_PDU,
+ dissect_E2SM_NI_ControlMessage_PDU,
+ dissect_E2SM_NI_ControlOutcome_PDU,
+ NULL,
+ NULL,
+ NULL,
+
+ dissect_E2SM_NI_ActionDefinition_PDU,
+ dissect_E2SM_NI_IndicationMessage_PDU,
+ dissect_E2SM_NI_IndicationHeader_PDU,
+ dissect_E2SM_NI_CallProcessID_PDU,
+ dissect_E2SM_NI_EventTriggerDefinition_PDU
+ }
+ };
+
+ static ran_function_dissector_t ccc_v1 =
+ { "{", /*"ORAN-E2SM-CCC",*/ "1.3.6.1.4.1.53148.1.1.2.4", 1, 0,
+ /* See table 5.1 */
+ { dissect_E2SM_NI_JSON_PDU,
+
+ dissect_E2SM_NI_JSON_PDU,
+ dissect_E2SM_NI_JSON_PDU,
+ dissect_E2SM_NI_JSON_PDU,
+ NULL,
+ NULL,
+ NULL,
+
+ dissect_E2SM_NI_JSON_PDU,
+ dissect_E2SM_NI_JSON_PDU,
+ dissect_E2SM_NI_JSON_PDU,
+ dissect_E2SM_NI_JSON_PDU,
+ dissect_E2SM_NI_JSON_PDU
+ }
+ };
+
+ /* Register available dissectors.
+ * Registering one version of each RAN Function here - others will need to be
+ * registered in sepparate dissectors (e.g. kpm_v2) */
+ register_e2ap_ran_function_dissector(KPM_RANFUNCTIONS, &kpm_v3);
+ register_e2ap_ran_function_dissector(RC_RANFUNCTIONS, &rc_v1);
+ register_e2ap_ran_function_dissector(NI_RANFUNCTIONS, &ni_v1);
+ register_e2ap_ran_function_dissector(CCC_RANFUNCTIONS, &ccc_v1);
+
+ /* Cache JSON dissector */
+ json_handle = find_dissector("json");
+
+ stats_tree_register("e2ap", "e2ap", "E2AP", 0,
+ e2ap_stats_tree_packet, e2ap_stats_tree_init, NULL);
- SctpPort=gbl_e2apSctpPort;
- if (SctpPort != 0) {
- dissector_add_uint("sctp.port", SctpPort, e2ap_handle);
- }
}
+
+
/*--- proto_register_e2ap -------------------------------------------*/
void proto_register_e2ap(void) {
@@ -228,7 +917,32 @@ void proto_register_e2ap(void) {
static hf_register_info hf[] = {
#include "packet-e2ap-hfarr.c"
-
+ { &hf_e2ap_unmapped_ran_function_id,
+ { "Unmapped RANfunctionID", "e2ap.unmapped-ran-function-id",
+ FT_NONE, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
+ { &hf_e2ap_ran_function_name_not_recognised,
+ { "RANfunction name not recognised", "e2ap.ran-function-name-not-recognised",
+ FT_NONE, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
+ { &hf_e2ap_ran_function_setup_frame,
+ { "RANfunction setup frame", "e2ap.setup-frame",
+ FT_FRAMENUM, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
+
+ { &hf_e2ap_dissector_version,
+ { "Version (dissector)", "e2ap.version.dissector",
+ FT_STRING, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
+ { &hf_e2ap_frame_version,
+ { "Version (frame)", "e2ap.version.frame",
+ FT_STRING, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
+
+ { &hf_e2ap_timestamp_string,
+ { "Timestamp string", "e2ap.timestamp-string",
+ FT_STRING, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
};
/* List of subtrees */
@@ -237,8 +951,15 @@ void proto_register_e2ap(void) {
#include "packet-e2ap-ettarr.c"
};
+ static ei_register_info ei[] = {
+ { &ei_e2ap_ran_function_names_no_match, { "e2ap.ran-function-names-no-match", PI_PROTOCOL, PI_WARN, "RAN Function name doesn't match known service models", EXPFILL }},
+ { &ei_e2ap_ran_function_id_not_mapped, { "e2ap.ran-function-id-not-known", PI_PROTOCOL, PI_WARN, "Service Model not known for RANFunctionID", EXPFILL }},
+ { &ei_e2ap_ran_function_dissector_mismatch, { "e2ap.ran-function-dissector-version-mismatch", PI_PROTOCOL, PI_WARN, "Available dissector does not match signalled", EXPFILL }},
+ { &ei_e2ap_ran_function_max_dissectors_registered, { "e2ap.ran-function-max-dissectors-registered", PI_PROTOCOL, PI_WARN, "Available dissector does not match signalled", EXPFILL }},
+
+ };
- module_t *e2ap_module;
+ expert_module_t* expert_e2ap;
/* Register protocol */
proto_e2ap = proto_register_protocol(PNAME, PSNAME, PFNAME);
@@ -250,24 +971,23 @@ void proto_register_e2ap(void) {
/* Register dissector */
e2ap_handle = register_dissector("e2ap", dissect_e2ap, proto_e2ap);
+ expert_e2ap = expert_register_protocol(proto_e2ap);
+ expert_register_field_array(expert_e2ap, ei, array_length(ei));
+
/* Register dissector tables */
e2ap_ies_dissector_table = register_dissector_table("e2ap.ies", "E2AP-PROTOCOL-IES", proto_e2ap, FT_UINT32, BASE_DEC);
-// e2ap_ies_p1_dissector_table = register_dissector_table("e2ap.ies.pair.first", "E2AP-PROTOCOL-IES-PAIR FirstValue", proto_e2ap, FT_UINT32, BASE_DEC);
-// e2ap_ies_p2_dissector_table = register_dissector_table("e2ap.ies.pair.second", "E2AP-PROTOCOL-IES-PAIR SecondValue", proto_e2ap, FT_UINT32, BASE_DEC);
+
+ // e2ap_ies_p1_dissector_table = register_dissector_table("e2ap.ies.pair.first", "E2AP-PROTOCOL-IES-PAIR FirstValue", proto_e2ap, FT_UINT32, BASE_DEC);
+ // e2ap_ies_p2_dissector_table = register_dissector_table("e2ap.ies.pair.second", "E2AP-PROTOCOL-IES-PAIR SecondValue", proto_e2ap, FT_UINT32, BASE_DEC);
e2ap_extension_dissector_table = register_dissector_table("e2ap.extension", "E2AP-PROTOCOL-EXTENSION", proto_e2ap, FT_UINT32, BASE_DEC);
e2ap_proc_imsg_dissector_table = register_dissector_table("e2ap.proc.imsg", "E2AP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_e2ap, FT_UINT32, BASE_DEC);
e2ap_proc_sout_dissector_table = register_dissector_table("e2ap.proc.sout", "E2AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_e2ap, FT_UINT32, BASE_DEC);
e2ap_proc_uout_dissector_table = register_dissector_table("e2ap.proc.uout", "E2AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_e2ap, FT_UINT32, BASE_DEC);
- e2ap_n2_ie_type_dissector_table = register_dissector_table("e2ap.n2_ie_type", "E2AP N2 IE Type", proto_e2ap, FT_STRING, FALSE);
+ e2ap_n2_ie_type_dissector_table = register_dissector_table("e2ap.n2_ie_type", "E2AP N2 IE Type", proto_e2ap, FT_STRING, STRING_CASE_SENSITIVE);
- /* Register configuration options for ports */
- e2ap_module = prefs_register_protocol(proto_e2ap, proto_reg_handoff_e2ap);
+ register_init_routine(&e2ap_init_protocol);
- prefs_register_uint_preference(e2ap_module, "sctp.port",
- "e2ap SCTP Port",
- "Set the SCTP port for e2ap messages",
- 10,
- &gbl_e2apSctpPort);
+ e2ap_tap = register_tap("e2ap");
}
/*
diff --git a/epan/dissectors/asn1/ess/packet-ess-template.c b/epan/dissectors/asn1/ess/packet-ess-template.c
index c8d579f9c5..63e9abef0c 100644
--- a/epan/dissectors/asn1/ess/packet-ess-template.c
+++ b/epan/dissectors/asn1/ess/packet-ess-template.c
@@ -41,11 +41,11 @@ static ess_category_attributes_t *ess_category_attributes;
static guint num_ess_category_attributes;
/* Initialize the protocol and registered fields */
-static int proto_ess = -1;
-static int hf_ess_SecurityCategory_type_OID = -1;
-static int hf_ess_Category_attribute = -1;
+static int proto_ess;
+static int hf_ess_SecurityCategory_type_OID;
+static int hf_ess_Category_attribute;
-static gint ett_Category_attributes = -1;
+static gint ett_Category_attributes;
#include "packet-ess-hf.c"
diff --git a/epan/dissectors/asn1/f1ap/F1AP-CommonDataTypes.asn b/epan/dissectors/asn1/f1ap/F1AP-CommonDataTypes.asn
index 30bf6842de..7bd995a74f 100644
--- a/epan/dissectors/asn1/f1ap/F1AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/f1ap/F1AP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.473 V16.7.0 (2021-10)
+-- 3GPP TS 38.473 V17.7.0 (2023-12)
-- 9.4.6 Common Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
F1AP-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-CommonDataTypes (3) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/f1ap/F1AP-Constants.asn b/epan/dissectors/asn1/f1ap/F1AP-Constants.asn
index f2b300dc21..24a01f38c7 100644
--- a/epan/dissectors/asn1/f1ap/F1AP-Constants.asn
+++ b/epan/dissectors/asn1/f1ap/F1AP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.473 V16.7.0 (2021-10)
+-- 3GPP TS 38.473 V17.7.0 (2023-12)
-- 9.4.7 Constant Definitions
-- **************************************************************
--
@@ -92,6 +92,29 @@ id-E-CIDMeasurementTermination ProcedureCode ::= 55
id-PositioningInformationUpdate ProcedureCode ::= 56
id-ReferenceTimeInformationReport ProcedureCode ::= 57
id-ReferenceTimeInformationReportingControl ProcedureCode ::= 58
+id-BroadcastContextSetup ProcedureCode ::= 59
+id-BroadcastContextRelease ProcedureCode ::= 60
+id-BroadcastContextReleaseRequest ProcedureCode ::= 61
+id-BroadcastContextModification ProcedureCode ::= 62
+id-MulticastGroupPaging ProcedureCode ::= 63
+id-MulticastContextSetup ProcedureCode ::= 64
+id-MulticastContextRelease ProcedureCode ::= 65
+id-MulticastContextReleaseRequest ProcedureCode ::= 66
+id-MulticastContextModification ProcedureCode ::= 67
+id-MulticastDistributionSetup ProcedureCode ::= 68
+id-MulticastDistributionRelease ProcedureCode ::= 69
+id-PDCMeasurementInitiation ProcedureCode ::= 70
+id-PDCMeasurementReport ProcedureCode ::= 71
+id-PDCMeasurementInitiationRequest ProcedureCode ::= 72
+id-PDCMeasurementInitiationResponse ProcedureCode ::= 73
+id-PDCMeasurementInitiationFailure ProcedureCode ::= 74
+id-pRSConfigurationExchange ProcedureCode ::= 75
+id-measurementPreconfiguration ProcedureCode ::= 76
+id-measurementActivation ProcedureCode ::= 77
+id-QoEInformationTransfer ProcedureCode ::= 78
+id-PDCMeasurementTerminationCommand ProcedureCode ::= 79
+id-PDCMeasurementFailureIndication ProcedureCode ::= 80
+id-PosSystemInformationDeliveryCommand ProcedureCode ::= 81
@@ -196,6 +219,46 @@ maxnoofPRS-ResourcesPerSet INTEGER ::= 64
maxNoOfMeasTRPs INTEGER ::= 64
maxnoofPRSresourceSets INTEGER ::= 8
maxnoofPRSresources INTEGER ::= 64
+maxnoofSuccessfulHOReports INTEGER ::= 64
+maxnoofNR-UChannelIDs INTEGER ::= 16
+maxServedCellforSON INTEGER ::= 256
+maxNeighbourCellforSON INTEGER ::= 32
+maxAffectedCells INTEGER ::= 32
+maxnoofMRBs INTEGER ::= 32
+maxnoofMBSQoSFlows INTEGER ::= 64
+maxnoofMBSFSAs INTEGER ::= 256
+maxnoofUEIDforPaging INTEGER ::= 4096
+maxnoofCellsforMBS INTEGER ::= 512
+maxnoofTAIforMBS INTEGER ::= 512
+maxnoofMBSAreaSessionIDs INTEGER ::= 256
+maxnoofMBSServiceAreaInformation INTEGER ::= 256
+maxnoofIABCongInd INTEGER ::= 1024
+maxnoofNeighbourNodeCellsIAB INTEGER ::= 1024
+maxnoofRBsetsPerCell INTEGER ::= 8
+maxnoofRBsetsPerCell-1 INTEGER ::= 7
+maxnoofMeasPDC INTEGER ::= 16
+maxnoARPs INTEGER ::= 16
+maxnoofULAoAs INTEGER ::= 8
+maxNoPathExtended INTEGER ::= 8
+maxnoTRPTEGs INTEGER ::= 8
+maxFreqLayers INTEGER ::= 4
+maxNumResourcesPerAngle INTEGER ::= 24
+maxnoAzimuthAngles INTEGER ::= 3600
+maxnoElevationAngles INTEGER ::= 1801
+maxnoofPRSTRPs INTEGER ::= 256
+maxnoofQoEInformation INTEGER ::= 16
+maxnoofUuRLCChannels INTEGER ::= 32
+maxnoofPC5RLCChannels INTEGER ::= 512
+maxnoofSMBRValues INTEGER ::= 8
+maxnoofMRBsforUE INTEGER ::= 64
+maxnoofMBSSessionsofUE INTEGER ::= 256
+maxnoofSLdestinations INTEGER ::= 32
+maxnoofNSAGs INTEGER ::= 256
+maxnoofSDTBearers INTEGER ::= 72
+maxnoofServingCellMOs INTEGER ::= 16
+maxNrofBWPs INTEGER ::= 8
+maxnoofPosSITypes INTEGER ::= 32
+
@@ -360,8 +423,8 @@ id-Broadcast-To-Be-Cancelled-List ProtocolIE-ID ::= 148
id-Broadcast-To-Be-Cancelled-Item ProtocolIE-ID ::= 149
id-Cells-Broadcast-Cancelled-List ProtocolIE-ID ::= 150
id-Cells-Broadcast-Cancelled-Item ProtocolIE-ID ::= 151
-id-NR-CGI-List-For-Restart-List ProtocolIE-ID ::= 152
-id-NR-CGI-List-For-Restart-Item ProtocolIE-ID ::= 153
+id-NR-CGI-List-For-Restart-List ProtocolIE-ID ::= 152
+id-NR-CGI-List-For-Restart-Item ProtocolIE-ID ::= 153
id-PWS-Failed-NR-CGI-List ProtocolIE-ID ::= 154
id-PWS-Failed-NR-CGI-Item ProtocolIE-ID ::= 155
id-ConfirmedUEID ProtocolIE-ID ::= 156
@@ -621,7 +684,7 @@ id-ActivationTime ProtocolIE-ID ::= 404
id-AbortTransmission ProtocolIE-ID ::= 405
id-PositioningBroadcastCells ProtocolIE-ID ::= 406
id-SRSConfiguration ProtocolIE-ID ::= 407
-id-PosReportCharacteristics ProtocolIE-ID ::= 408
+id-PosReportCharacteristics ProtocolIE-ID ::= 408
id-PosMeasurementPeriodicity ProtocolIE-ID ::= 409
id-TRPList ProtocolIE-ID ::= 410
id-RAN-MeasurementID ProtocolIE-ID ::= 411
@@ -639,14 +702,294 @@ id-TRP-MeasurementRequestList ProtocolIE-ID ::= 422
id-MeasurementBeamInfoRequest ProtocolIE-ID ::= 423
id-E-CID-ReportCharacteristics ProtocolIE-ID ::= 424
id-ConfiguredTACIndication ProtocolIE-ID ::= 425
-id-Extended-GNB-DU-Name ProtocolIE-ID ::= 426
-id-Extended-GNB-CU-Name ProtocolIE-ID ::= 427
+id-Extended-GNB-CU-Name ProtocolIE-ID ::= 426
+id-Extended-GNB-DU-Name ProtocolIE-ID ::= 427
id-F1CTransferPath ProtocolIE-ID ::= 428
id-SFN-Offset ProtocolIE-ID ::= 429
id-TransmissionStopIndicator ProtocolIE-ID ::= 430
id-SrsFrequency ProtocolIE-ID ::= 431
id-SCGIndicator ProtocolIE-ID ::= 432
id-EstimatedArrivalProbability ProtocolIE-ID ::= 433
+id-TRPType ProtocolIE-ID ::= 434
+id-SRSSpatialRelationPerSRSResource ProtocolIE-ID ::= 435
+id-PDCPTerminatingNodeDLTNLAddrInfo ProtocolIE-ID ::= 436
+id-ENBDLTNLAddress ProtocolIE-ID ::= 437
+id-PosMeasurementPeriodicityExtended ProtocolIE-ID ::= 438
+id-PRS-Resource-ID ProtocolIE-ID ::= 439
+id-LocationMeasurementInformation ProtocolIE-ID ::= 440
+id-SliceRadioResourceStatus ProtocolIE-ID ::= 441
+id-CompositeAvailableCapacity-SUL ProtocolIE-ID ::= 442
+id-SuccessfulHOReportInformationList ProtocolIE-ID ::= 443
+id-NR-U-Channel-List ProtocolIE-ID ::= 444
+id-NR-U ProtocolIE-ID ::= 445
+id-Coverage-Modification-Notification ProtocolIE-ID ::= 446
+id-CCO-Assistance-Information ProtocolIE-ID ::= 447
+id-Neighbor-node-CCO-Assistance-Information-List ProtocolIE-ID ::= 448
+id-CellsForSON-List ProtocolIE-ID ::= 449
+id-MIMOPRBusageInformation ProtocolIE-ID ::= 450
+id-gNB-CU-MBS-F1AP-ID ProtocolIE-ID ::= 451
+id-gNB-DU-MBS-F1AP-ID ProtocolIE-ID ::= 452
+id-MBS-Area-Session-ID ProtocolIE-ID ::= 453
+id-MBS-CUtoDURRCInformation ProtocolIE-ID ::= 454
+id-MBS-Session-ID ProtocolIE-ID ::= 455
+id-SNSSAI ProtocolIE-ID ::= 456
+id-MBS-Broadcast-NeighbourCellList ProtocolIE-ID ::= 457
+id-BroadcastMRBs-FailedToBeModified-List ProtocolIE-ID ::= 458
+id-BroadcastMRBs-FailedToBeModified-Item ProtocolIE-ID ::= 459
+id-BroadcastMRBs-FailedToBeSetup-List ProtocolIE-ID ::= 460
+id-BroadcastMRBs-FailedToBeSetup-Item ProtocolIE-ID ::= 461
+id-BroadcastMRBs-FailedToBeSetupMod-List ProtocolIE-ID ::= 462
+id-BroadcastMRBs-FailedToBeSetupMod-Item ProtocolIE-ID ::= 463
+id-BroadcastMRBs-Modified-List ProtocolIE-ID ::= 464
+id-BroadcastMRBs-Modified-Item ProtocolIE-ID ::= 465
+id-BroadcastMRBs-Setup-List ProtocolIE-ID ::= 466
+id-BroadcastMRBs-Setup-Item ProtocolIE-ID ::= 467
+id-BroadcastMRBs-SetupMod-List ProtocolIE-ID ::= 468
+id-BroadcastMRBs-SetupMod-Item ProtocolIE-ID ::= 469
+id-BroadcastMRBs-ToBeModified-List ProtocolIE-ID ::= 470
+id-BroadcastMRBs-ToBeModified-Item ProtocolIE-ID ::= 471
+id-BroadcastMRBs-ToBeReleased-List ProtocolIE-ID ::= 472
+id-BroadcastMRBs-ToBeReleased-Item ProtocolIE-ID ::= 473
+id-BroadcastMRBs-ToBeSetup-List ProtocolIE-ID ::= 474
+id-BroadcastMRBs-ToBeSetup-Item ProtocolIE-ID ::= 475
+id-BroadcastMRBs-ToBeSetupMod-List ProtocolIE-ID ::= 476
+id-BroadcastMRBs-ToBeSetupMod-Item ProtocolIE-ID ::= 477
+id-Supported-MBS-FSA-ID-List ProtocolIE-ID ::= 478
+id-UEIdentity-List-For-Paging-List ProtocolIE-ID ::= 479
+id-UEIdentity-List-For-Paging-Item ProtocolIE-ID ::= 480
+id-MBS-ServiceArea ProtocolIE-ID ::= 481
+id-MulticastMRBs-FailedToBeModified-List ProtocolIE-ID ::= 482
+id-MulticastMRBs-FailedToBeModified-Item ProtocolIE-ID ::= 483
+id-MulticastMRBs-FailedToBeSetup-List ProtocolIE-ID ::= 484
+id-MulticastMRBs-FailedToBeSetup-Item ProtocolIE-ID ::= 485
+id-MulticastMRBs-FailedToBeSetupMod-List ProtocolIE-ID ::= 486
+id-MulticastMRBs-FailedToBeSetupMod-Item ProtocolIE-ID ::= 487
+id-MulticastMRBs-Modified-List ProtocolIE-ID ::= 488
+id-MulticastMRBs-Modified-Item ProtocolIE-ID ::= 489
+id-MulticastMRBs-Setup-List ProtocolIE-ID ::= 490
+id-MulticastMRBs-Setup-Item ProtocolIE-ID ::= 491
+id-MulticastMRBs-SetupMod-List ProtocolIE-ID ::= 492
+id-MulticastMRBs-SetupMod-Item ProtocolIE-ID ::= 493
+id-MulticastMRBs-ToBeModified-List ProtocolIE-ID ::= 494
+id-MulticastMRBs-ToBeModified-Item ProtocolIE-ID ::= 495
+id-MulticastMRBs-ToBeReleased-List ProtocolIE-ID ::= 496
+id-MulticastMRBs-ToBeReleased-Item ProtocolIE-ID ::= 497
+id-MulticastMRBs-ToBeSetup-List ProtocolIE-ID ::= 498
+id-MulticastMRBs-ToBeSetup-Item ProtocolIE-ID ::= 499
+id-MulticastMRBs-ToBeSetupMod-List ProtocolIE-ID ::= 500
+id-MulticastMRBs-ToBeSetupMod-Item ProtocolIE-ID ::= 501
+id-MBSMulticastF1UContextDescriptor ProtocolIE-ID ::= 502
+id-MulticastF1UContext-ToBeSetup-List ProtocolIE-ID ::= 503
+id-MulticastF1UContext-ToBeSetup-Item ProtocolIE-ID ::= 504
+id-MulticastF1UContext-Setup-List ProtocolIE-ID ::= 505
+id-MulticastF1UContext-Setup-Item ProtocolIE-ID ::= 506
+id-MulticastF1UContext-FailedToBeSetup-List ProtocolIE-ID ::= 507
+id-MulticastF1UContext-FailedToBeSetup-Item ProtocolIE-ID ::= 508
+id-IABCongestionIndication ProtocolIE-ID ::= 509
+id-IABConditionalRRCMessageDeliveryIndication ProtocolIE-ID ::= 510
+id-F1CTransferPathNRDC ProtocolIE-ID ::= 511
+id-BufferSizeThresh ProtocolIE-ID ::= 512
+id-IAB-TNL-Addresses-Exception ProtocolIE-ID ::= 513
+id-BAP-Header-Rewriting-Added-List ProtocolIE-ID ::= 514
+id-BAP-Header-Rewriting-Added-List-Item ProtocolIE-ID ::= 515
+id-Re-routingEnableIndicator ProtocolIE-ID ::= 516
+id-NonF1terminatingTopologyIndicator ProtocolIE-ID ::= 517
+id-EgressNonF1terminatingTopologyIndicator ProtocolIE-ID ::= 518
+id-IngressNonF1terminatingTopologyIndicator ProtocolIE-ID ::= 519
+id-rBSetConfiguration ProtocolIE-ID ::= 520
+id-frequency-Domain-HSNA-Configuration-List ProtocolIE-ID ::= 521
+id-child-IAB-Nodes-NA-Resource-List ProtocolIE-ID ::= 522
+id-Parent-IAB-Nodes-NA-Resource-Configuration-List ProtocolIE-ID ::= 523
+id-uL-FreqInfo ProtocolIE-ID ::= 524
+id-uL-Transmission-Bandwidth ProtocolIE-ID ::= 525
+id-dL-FreqInfo ProtocolIE-ID ::= 526
+id-dL-Transmission-Bandwidth ProtocolIE-ID ::= 527
+id-uL-NR-Carrier-List ProtocolIE-ID ::= 528
+id-dL-NR-Carrier-List ProtocolIE-ID ::= 529
+id-nRFreqInfo ProtocolIE-ID ::= 530
+id-transmission-Bandwidth ProtocolIE-ID ::= 531
+id-nR-Carrier-List ProtocolIE-ID ::= 532
+id-Neighbour-Node-Cells-List ProtocolIE-ID ::= 533
+id-Serving-Cells-List ProtocolIE-ID ::= 534
+id-permutation ProtocolIE-ID ::= 535
+id-MDTPollutedMeasurementIndicator ProtocolIE-ID ::= 536
+id-M5ReportAmount ProtocolIE-ID ::= 537
+id-M6ReportAmount ProtocolIE-ID ::= 538
+id-M7ReportAmount ProtocolIE-ID ::= 539
+id-SurvivalTime ProtocolIE-ID ::= 540
+id-PDCMeasurementPeriodicity ProtocolIE-ID ::= 541
+id-PDCMeasurementQuantities ProtocolIE-ID ::= 542
+id-PDCMeasurementQuantities-Item ProtocolIE-ID ::= 543
+id-PDCMeasurementResult ProtocolIE-ID ::= 544
+id-PDCReportType ProtocolIE-ID ::= 545
+id-RAN-UE-PDC-MeasID ProtocolIE-ID ::= 546
+id-SCGActivationRequest ProtocolIE-ID ::= 547
+id-SCGActivationStatus ProtocolIE-ID ::= 548
+id-PRSTRPList ProtocolIE-ID ::= 549
+id-PRSTransmissionTRPList ProtocolIE-ID ::= 550
+id-OnDemandPRS ProtocolIE-ID ::= 551
+id-AoA-SearchWindow ProtocolIE-ID ::= 552
+id-TRP-MeasurementUpdateList ProtocolIE-ID ::= 553
+id-ZoAInformation ProtocolIE-ID ::= 554
+id-ResponseTime ProtocolIE-ID ::= 555
+id-ARPLocationInfo ProtocolIE-ID ::= 556
+id-ARP-ID ProtocolIE-ID ::= 557
+id-MultipleULAoA ProtocolIE-ID ::= 558
+id-UL-SRS-RSRPP ProtocolIE-ID ::= 559
+id-SRSResourcetype ProtocolIE-ID ::= 560
+id-ExtendedAdditionalPathList ProtocolIE-ID ::= 561
+id-LoS-NLoSInformation ProtocolIE-ID ::= 562
+-- WS extension
+id-Unknown-563 ProtocolIE-ID ::= 563
+id-NumberOfTRPRxTEG ProtocolIE-ID ::= 564
+id-NumberOfTRPRxTxTEG ProtocolIE-ID ::= 565
+id-TRPTxTEGAssociation ProtocolIE-ID ::= 566
+id-TRPTEGInformation ProtocolIE-ID ::= 567
+id-TRPRx-TEGInformation ProtocolIE-ID ::= 568
+id-TRP-PRS-Info-List ProtocolIE-ID ::= 569
+id-PRS-Measurement-Info-List ProtocolIE-ID ::= 570
+id-PRSConfigRequestType ProtocolIE-ID ::= 571
+-- WS extension
+id-Unknown-572 ProtocolIE-ID ::= 572
+id-MeasurementTimeOccasion ProtocolIE-ID ::= 573
+id-MeasurementCharacteristicsRequestIndicator ProtocolIE-ID ::= 574
+id-UEReportingInformation ProtocolIE-ID ::= 575
+id-PosConextRevIndication ProtocolIE-ID ::= 576
+id-TRPBeamAntennaInformation ProtocolIE-ID ::= 577
+id-NRRedCapUEIndication ProtocolIE-ID ::= 578
+id-Redcap-Bcast-Information ProtocolIE-ID ::= 579
+id-RANUEPagingDRX ProtocolIE-ID ::= 580
+id-CNUEPagingDRX ProtocolIE-ID ::= 581
+id-NRPagingeDRXInformation ProtocolIE-ID ::= 582
+id-NRPagingeDRXInformationforRRCINACTIVE ProtocolIE-ID ::= 583
+id-NR-TADV ProtocolIE-ID ::= 584
+id-QoEInformation ProtocolIE-ID ::= 585
+id-CG-SDTQueryIndication ProtocolIE-ID ::= 586
+id-SDT-MAC-PHY-CG-Config ProtocolIE-ID ::= 587
+id-CG-SDTKeptIndicator ProtocolIE-ID ::= 588
+id-CG-SDTindicatorSetup ProtocolIE-ID ::= 589
+id-CG-SDTindicatorMod ProtocolIE-ID ::= 590
+id-CG-SDTSessionInfoOld ProtocolIE-ID ::= 591
+id-SDTInformation ProtocolIE-ID ::= 592
+id-SDTRLCBearerConfiguration ProtocolIE-ID ::= 593
+id-FiveG-ProSeAuthorized ProtocolIE-ID ::= 594
+id-FiveG-ProSeUEPC5AggregateMaximumBitrate ProtocolIE-ID ::= 595
+id-FiveG-ProSePC5LinkAMBR ProtocolIE-ID ::= 596
+id-SRBMappingInfo ProtocolIE-ID ::= 597
+id-DRBMappingInfo ProtocolIE-ID ::= 598
+id-UuRLCChannelToBeSetupList ProtocolIE-ID ::= 599
+id-UuRLCChannelToBeModifiedList ProtocolIE-ID ::= 600
+id-UuRLCChannelToBeReleasedList ProtocolIE-ID ::= 601
+id-UuRLCChannelSetupList ProtocolIE-ID ::= 602
+id-UuRLCChannelFailedToBeSetupList ProtocolIE-ID ::= 603
+id-UuRLCChannelModifiedList ProtocolIE-ID ::= 604
+id-UuRLCChannelFailedToBeModifiedList ProtocolIE-ID ::= 605
+id-UuRLCChannelRequiredToBeModifiedList ProtocolIE-ID ::= 606
+id-UuRLCChannelRequiredToBeReleasedList ProtocolIE-ID ::= 607
+id-PC5RLCChannelToBeSetupList ProtocolIE-ID ::= 608
+id-PC5RLCChannelToBeModifiedList ProtocolIE-ID ::= 609
+id-PC5RLCChannelToBeReleasedList ProtocolIE-ID ::= 610
+id-PC5RLCChannelSetupList ProtocolIE-ID ::= 611
+id-PC5RLCChannelFailedToBeSetupList ProtocolIE-ID ::= 612
+id-PC5RLCChannelFailedToBeModifiedList ProtocolIE-ID ::= 613
+id-PC5RLCChannelRequiredToBeModifiedList ProtocolIE-ID ::= 614
+id-PC5RLCChannelRequiredToBeReleasedList ProtocolIE-ID ::= 615
+id-PC5RLCChannelModifiedList ProtocolIE-ID ::= 616
+id-SidelinkRelayConfiguration ProtocolIE-ID ::= 617
+id-UpdatedRemoteUELocalID ProtocolIE-ID ::= 618
+id-PathSwitchConfiguration ProtocolIE-ID ::= 619
+id-PagingCause ProtocolIE-ID ::= 620
+id-MUSIM-GapConfig ProtocolIE-ID ::= 621
+id-PEIPSAssistanceInfo ProtocolIE-ID ::= 622
+id-UEPagingCapability ProtocolIE-ID ::= 623
+id-LastUsedCellIndication ProtocolIE-ID ::= 624
+id-SIB17-message ProtocolIE-ID ::= 625
+id-GNBDUUESliceMaximumBitRateList ProtocolIE-ID ::= 626
+id-SIB20-message ProtocolIE-ID ::= 627
+id-UE-MulticastMRBs-ToBeReleased-List ProtocolIE-ID ::= 628
+id-UE-MulticastMRBs-ToBeReleased-Item ProtocolIE-ID ::= 629
+id-UE-MulticastMRBs-ToBeSetup-List ProtocolIE-ID ::= 630
+id-UE-MulticastMRBs-ToBeSetup-Item ProtocolIE-ID ::= 631
+id-MulticastMBSSessionSetupList ProtocolIE-ID ::= 632
+id-MulticastMBSSessionRemoveList ProtocolIE-ID ::= 633
+id-PosMeasurementAmount ProtocolIE-ID ::= 634
+id-SDT-Termination-Request ProtocolIE-ID ::= 635
+id-pathPower ProtocolIE-ID ::= 636
+id-DU-RX-MT-RX-Extend ProtocolIE-ID ::= 637
+id-DU-TX-MT-TX-Extend ProtocolIE-ID ::= 638
+id-DU-RX-MT-TX-Extend ProtocolIE-ID ::= 639
+id-DU-TX-MT-RX-Extend ProtocolIE-ID ::= 640
+id-BAP-Header-Rewriting-Removed-List ProtocolIE-ID ::= 641
+id-BAP-Header-Rewriting-Removed-List-Item ProtocolIE-ID ::= 642
+id-SLDRXCycleList ProtocolIE-ID ::= 643
+id-TAINSAGSupportList ProtocolIE-ID ::= 644
+id-SL-RLC-ChannelToAddModList ProtocolIE-ID ::= 645
+id-BroadcastAreaScope ProtocolIE-ID ::= 646
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID ::= 647
+id-SIB15-message ProtocolIE-ID ::= 648
+id-ActivationRequestType ProtocolIE-ID ::= 649
+id-PosMeasGapPreConfigList ProtocolIE-ID ::= 650
+id-InterFrequencyConfig-NoGap ProtocolIE-ID ::= 651
+id-MBSInterestIndication ProtocolIE-ID ::= 652
+id-UE-MulticastMRBs-ConfirmedToBeModified-List ProtocolIE-ID ::= 653
+id-UE-MulticastMRBs-ConfirmedToBeModified-Item ProtocolIE-ID ::= 654
+id-UE-MulticastMRBs-RequiredToBeModified-List ProtocolIE-ID ::= 655
+id-UE-MulticastMRBs-RequiredToBeModified-Item ProtocolIE-ID ::= 656
+id-UE-MulticastMRBs-RequiredToBeReleased-List ProtocolIE-ID ::= 657
+id-UE-MulticastMRBs-RequiredToBeReleased-Item ProtocolIE-ID ::= 658
+id-L571Info ProtocolIE-ID ::= 659
+id-L1151Info ProtocolIE-ID ::= 660
+id-SCS-480 ProtocolIE-ID ::= 661
+id-SCS-960 ProtocolIE-ID ::= 662
+id-SRSPortIndex ProtocolIE-ID ::= 663
+id-PEISubgroupingSupportIndication ProtocolIE-ID ::= 664
+id-NeedForGapsInfoNR ProtocolIE-ID ::= 665
+id-NeedForGapNCSGInfoNR ProtocolIE-ID ::= 666
+id-NeedForGapNCSGInfoEUTRA ProtocolIE-ID ::= 667
+id-procedure-code-668-not-to-be-used ProtocolIE-ID ::= 668
+id-procedure-code-669-not-to-be-used ProtocolIE-ID ::= 669
+id-procedure-code-670-not-to-be-used ProtocolIE-ID ::= 670
+id-Source-MRB-ID ProtocolIE-ID ::= 671
+id-PosMeasurementPeriodicityNR-AoA ProtocolIE-ID ::= 672
+id-RedCapIndication ProtocolIE-ID ::= 673
+id-SRSPosRRCInactiveConfig ProtocolIE-ID ::= 674
+id-SDTBearerConfigurationQueryIndication ProtocolIE-ID ::= 675
+id-SDTBearerConfigurationInfo ProtocolIE-ID ::= 676
+id-UL-GapFR2-Config ProtocolIE-ID ::= 677
+id-ConfigRestrictInfoDAPS ProtocolIE-ID ::= 678
+id-UE-MulticastMRBs-Setup-List ProtocolIE-ID ::= 679
+id-UE-MulticastMRBs-Setup-Item ProtocolIE-ID ::= 680
+id-MulticastF1UContextReferenceCU ProtocolIE-ID ::= 681
+id-PosSItypeList ProtocolIE-ID ::= 682
+id-DAPS-HO-Status ProtocolIE-ID ::= 683
+id-UplinkTxDirectCurrentTwoCarrierListInfo ProtocolIE-ID ::= 684
+id-UE-MulticastMRBs-ToBeSetup-atModify-List ProtocolIE-ID ::= 685
+id-UE-MulticastMRBs-ToBeSetup-atModify-Item ProtocolIE-ID ::= 686
+id-MC-PagingCell-List ProtocolIE-ID ::= 687
+id-MC-PagingCell-Item ProtocolIE-ID ::= 688
+id-SRSPosRRCInactiveQueryIndication ProtocolIE-ID ::= 689
+id-UlTxDirectCurrentMoreCarrierInformation ProtocolIE-ID ::= 690
+id-CPACMCGInformation ProtocolIE-ID ::= 691
+id-TwoPHRModeMCG ProtocolIE-ID ::= 692
+id-TwoPHRModeSCG ProtocolIE-ID ::= 693
+id-ExtendedUEIdentityIndexValue ProtocolIE-ID ::= 694
+id-ServingCellMO-List ProtocolIE-ID ::= 695
+id-ServingCellMO-List-Item ProtocolIE-ID ::= 696
+id-ServingCellMO-encoded-in-CGC-List ProtocolIE-ID ::= 697
+id-HashedUEIdentityIndexValue ProtocolIE-ID ::= 698
+id-UE-MulticastMRBs-Setupnew-List ProtocolIE-ID ::= 699
+id-UE-MulticastMRBs-Setupnew-Item ProtocolIE-ID ::= 700
+id-ncd-SSB-RedCapInitialBWP-SDT ProtocolIE-ID ::= 701
+id-nrofSymbolsExtended ProtocolIE-ID ::= 702
+id-repetitionFactorExtended ProtocolIE-ID ::= 703
+id-startRBHopping ProtocolIE-ID ::= 704
+id-startRBIndex ProtocolIE-ID ::= 705
+id-transmissionCombn8 ProtocolIE-ID ::= 706
+id-ServCellInfoList ProtocolIE-ID ::= 707
+id-DedicatedSIDeliveryIndication ProtocolIE-ID ::= 708
+id-Configured-BWP-List ProtocolIE-ID ::= 709
+id-Preconfigured-measurement-GAP-Request ProtocolIE-ID ::= 710
+id-BWP-Id ProtocolIE-ID ::= 711
END
diff --git a/epan/dissectors/asn1/f1ap/F1AP-Containers.asn b/epan/dissectors/asn1/f1ap/F1AP-Containers.asn
index 5d3dd69bcb..861eb6eb05 100644
--- a/epan/dissectors/asn1/f1ap/F1AP-Containers.asn
+++ b/epan/dissectors/asn1/f1ap/F1AP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.473 V16.7.0 (2021-10)
+-- 3GPP TS 38.473 V17.7.0 (2023-12)
-- 9.4.8 Container Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
F1AP-Containers {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-Containers (5) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -120,11 +120,11 @@ WITH SYNTAX {
--
-- **************************************************************
-ProtocolIE-Container {F1AP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Container {F1AP-PROTOCOL-IES : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IEsSetParam}}
-ProtocolIE-SingleContainer {F1AP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-SingleContainer {F1AP-PROTOCOL-IES : IEsSetParam} ::=
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field {F1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
@@ -139,7 +139,7 @@ ProtocolIE-Field {F1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
--
-- **************************************************************
-ProtocolIE-ContainerPair {F1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ProtocolIE-ContainerPair {F1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-FieldPair {{IEsSetParam}}
@@ -157,7 +157,7 @@ ProtocolIE-FieldPair {F1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
--
-- **************************************************************
-ProtocolExtensionContainer {F1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ProtocolExtensionContainer {F1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
@@ -173,7 +173,7 @@ ProtocolExtensionField {F1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENC
--
-- **************************************************************
-PrivateIE-Container {F1AP-PRIVATE-IES : IEsSetParam } ::=
+PrivateIE-Container {F1AP-PRIVATE-IES : IEsSetParam } ::=
SEQUENCE (SIZE (1.. maxPrivateIEs)) OF
PrivateIE-Field {{IEsSetParam}}
diff --git a/epan/dissectors/asn1/f1ap/F1AP-IEs.asn b/epan/dissectors/asn1/f1ap/F1AP-IEs.asn
index edefd1df59..b18a5dbeed 100644
--- a/epan/dissectors/asn1/f1ap/F1AP-IEs.asn
+++ b/epan/dissectors/asn1/f1ap/F1AP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.473 V16.7.0 (2021-10)
+-- 3GPP TS 38.473 V17.7.0 (2023-12)
-- 9.4.5 Information Element Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
F1AP-IEs {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-IEs (2) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -25,7 +25,7 @@ IMPORTS
id-CellGroupConfig,
id-AvailablePLMNList,
id-PDUSessionID,
- id-ULPDUSessionAggregateMaximumBitRate,
+ id-ULPDUSessionAggregateMaximumBitRate,
id-DC-Based-Duplication-Configured,
id-DC-Based-Duplication-Activation,
id-Duplication-Activation,
@@ -81,7 +81,7 @@ IMPORTS
id-ULCarrierList,
id-FrequencyShift7p5khz,
id-SSB-PositionsInBurst,
- id-NRPRACHConfig,
+ id-NRPRACHConfig,
id-TDD-UL-DLConfigCommonNR,
id-CNPacketDelayBudgetDownlink,
id-CNPacketDelayBudgetUplink,
@@ -107,6 +107,104 @@ IMPORTS
id-TransmissionStopIndicator,
id-SrsFrequency,
id-EstimatedArrivalProbability,
+ id-Supported-MBS-FSA-ID-List,
+ id-TRPType,
+ id-SRSSpatialRelationPerSRSResource,
+ id-MBS-Broadcast-NeighbourCellList,
+ id-PDCPTerminatingNodeDLTNLAddrInfo,
+ id-ENBDLTNLAddress,
+ id-PRS-Resource-ID,
+ id-LocationMeasurementInformation,
+ id-SliceRadioResourceStatus,
+ id-CompositeAvailableCapacity-SUL,
+ id-NR-U,
+ id-NR-U-Channel-List,
+ id-MIMOPRBusageInformation,
+ id-IngressNonF1terminatingTopologyIndicator,
+ id-NonF1terminatingTopologyIndicator,
+ id-EgressNonF1terminatingTopologyIndicator,
+ id-rBSetConfiguration,
+ id-frequency-Domain-HSNA-Configuration-List,
+ id-child-IAB-Nodes-NA-Resource-List,
+ id-Parent-IAB-Nodes-NA-Resource-Configuration-List,
+ id-uL-FreqInfo,
+ id-uL-Transmission-Bandwidth,
+ id-dL-FreqInfo,
+ id-dL-Transmission-Bandwidth,
+ id-uL-NR-Carrier-List,
+ id-dL-NR-Carrier-List,
+ id-nRFreqInfo,
+ id-transmission-Bandwidth,
+ id-nR-Carrier-List,
+ id-permutation,
+ id-M5ReportAmount,
+ id-M6ReportAmount,
+ id-M7ReportAmount,
+ id-SurvivalTime,
+ id-PDCMeasurementQuantities-Item,
+ id-OnDemandPRS,
+ id-AoA-SearchWindow,
+ id-ZoAInformation,
+ id-ARPLocationInfo,
+ id-ARP-ID,
+ id-MultipleULAoA,
+ id-UL-SRS-RSRPP,
+ id-SRSResourcetype,
+ id-ExtendedAdditionalPathList,
+ id-LoS-NLoSInformation,
+ id-NumberOfTRPRxTEG,
+ id-NumberOfTRPRxTxTEG,
+ id-TRPTxTEGAssociation,
+ id-TRPTEGInformation,
+ id-TRPRx-TEGInformation,
+ id-TRPBeamAntennaInformation,
+ id-Redcap-Bcast-Information,
+ id-NR-TADV,
+ id-SDT-MAC-PHY-CG-Config,
+ id-CG-SDTindicatorSetup,
+ id-CG-SDTindicatorMod,
+ id-SDTRLCBearerConfiguration,
+ id-SRBMappingInfo,
+ id-DRBMappingInfo,
+ id-LastUsedCellIndication,
+ id-SIB17-message,
+ id-MUSIM-GapConfig,
+ id-SIB20-message,
+ id-pathPower,
+ id-DU-RX-MT-RX-Extend,
+ id-DU-TX-MT-TX-Extend,
+ id-DU-RX-MT-TX-Extend,
+ id-DU-TX-MT-RX-Extend,
+ id-TAINSAGSupportList,
+ id-SL-RLC-ChannelToAddModList,
+ id-SIB15-message,
+ id-InterFrequencyConfig-NoGap,
+ id-MBSInterestIndication,
+ id-L571Info,
+ id-L1151Info,
+ id-SCS-480,
+ id-SCS-960,
+ id-SRSPortIndex,
+ id-PEISubgroupingSupportIndication,
+ id-NeedForGapsInfoNR,
+ id-NeedForGapNCSGInfoNR,
+ id-NeedForGapNCSGInfoEUTRA,
+ id-Source-MRB-ID,
+ id-RedCapIndication,
+ id-UL-GapFR2-Config,
+ id-ConfigRestrictInfoDAPS,
+ id-MulticastF1UContextReferenceCU,
+ id-TwoPHRModeMCG,
+ id-TwoPHRModeSCG,
+ id-ncd-SSB-RedCapInitialBWP-SDT,
+ id-nrofSymbolsExtended,
+ id-repetitionFactorExtended,
+ id-startRBHopping,
+ id-startRBIndex,
+ id-transmissionCombn8,
+ id-ServCellInfoList,
+ id-Preconfigured-measurement-GAP-Request,
+ id-BWP-Id,
maxNRARFCN,
maxnoofErrors,
maxnoofBPLMNs,
@@ -177,8 +275,45 @@ IMPORTS
maxnoofPRS-ResourcesPerSet,
maxNoOfMeasTRPs,
maxnoofPRSresourceSets,
- maxnoofPRSresources
-
+ maxnoofPRSresources,
+ maxnoofSuccessfulHOReports,
+ maxnoofNR-UChannelIDs,
+ maxServedCellforSON,
+ maxNeighbourCellforSON,
+ maxAffectedCells,
+ maxnoofMBSQoSFlows,
+ maxnoofMBSFSAs,
+ maxnoofMBSAreaSessionIDs,
+ maxnoofMBSServiceAreaInformation,
+ maxnoofTAIforMBS,
+ maxnoofCellsforMBS,
+ maxnoofIABCongInd,
+ maxnoofBHRLCChannels,
+ maxnoofTLAsIAB,
+ maxnoofRBsetsPerCell,
+ maxnoofRBsetsPerCell-1,
+ maxnoofNeighbourNodeCellsIAB,
+ maxnoofMeasPDC,
+ maxnoARPs,
+ maxnoofULAoAs,
+ maxNoPathExtended,
+ maxnoTRPTEGs,
+ maxFreqLayers,
+ maxNumResourcesPerAngle,
+ maxnoAzimuthAngles,
+ maxnoElevationAngles,
+ maxnoofPRSTRPs,
+ maxnoofQoEInformation,
+ maxnoofUuRLCChannels,
+ maxnoofPC5RLCChannels,
+ maxnoofSMBRValues,
+ maxnoofMBSSessionsofUE,
+ maxnoofSLdestinations,
+ maxnoofNSAGs,
+ maxnoofSDTBearers,
+ maxnoofPosSITypes,
+ maxnoofMRBs,
+ maxNrofBWPs
FROM F1AP-Constants
@@ -239,9 +374,11 @@ Activated-Cells-to-be-Updated-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+ActivationRequestType ::= ENUMERATED {activate, deactivate, ...}
+
ActiveULBWP ::= SEQUENCE {
locationAndBandwidth INTEGER (0..37949,...),
- subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,...},
+ subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,..., kHz480, kHz960},
cyclicPrefix ENUMERATED {normal, extended},
txDirectCurrentLocation INTEGER (0..3301,...),
shift7dot5kHz ENUMERATED {true, ...} OPTIONAL,
@@ -253,7 +390,7 @@ ActiveULBWP-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-AdditionalDuplicationIndication ::= ENUMERATED {
+AdditionalDuplicationIndication ::= ENUMERATED {
three,
four,
...
@@ -263,20 +400,37 @@ AdditionalDuplicationIndication ::= ENUMERATED {
AdditionalPath-List::= SEQUENCE (SIZE(1..maxnoofPath)) OF AdditionalPath-Item
AdditionalPath-Item ::=SEQUENCE {
- relativePathDelay RelativePathDelay,
+ relativePathDelay RelativePathDelay,
pathQuality TRPMeasurementQuality OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { AdditionalPath-Item-ExtIEs } } OPTIONAL
}
AdditionalPath-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-MultipleULAoA CRITICALITY ignore EXTENSION MultipleULAoA PRESENCE optional}|
+ { ID id-pathPower CRITICALITY ignore EXTENSION UL-SRS-RSRPP PRESENCE optional},
+ ...
+}
+
+ExtendedAdditionalPathList ::= SEQUENCE (SIZE (1.. maxNoPathExtended)) OF ExtendedAdditionalPathList-Item
+
+
+ExtendedAdditionalPathList-Item ::= SEQUENCE {
+ relativeTimeOfPath RelativePathDelay,
+ pathQuality TRPMeasurementQuality OPTIONAL,
+ multipleULAoA MultipleULAoA OPTIONAL,
+ pathPower UL-SRS-RSRPP OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ExtendedAdditionalPathList-Item-ExtIEs} } OPTIONAL,
...
}
+ExtendedAdditionalPathList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
AdditionalPDCPDuplicationTNL-List ::= SEQUENCE (SIZE(1..maxnoofAdditionalPDCPDuplicationTNL)) OF AdditionalPDCPDuplicationTNL-Item
AdditionalPDCPDuplicationTNL-Item ::=SEQUENCE {
- additionalPDCPDuplicationUPTNLInformation UPTransportLayerInformation,
+ additionalPDCPDuplicationUPTNLInformation UPTransportLayerInformation,
iE-Extensions ProtocolExtensionContainer { { AdditionalPDCPDuplicationTNL-ItemExtIEs } } OPTIONAL,
...
}
@@ -299,6 +453,31 @@ AdditionalSIBMessageList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
AdditionalRRMPriorityIndex ::= BIT STRING (SIZE(32))
+AffectedCellsAndBeams-List ::= SEQUENCE (SIZE (1.. maxAffectedCells)) OF AffectedCellsAndBeams-Item
+
+AffectedCellsAndBeams-Item::= SEQUENCE {
+ nRCGI NRCGI,
+ affectedSSB-List AffectedSSB-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { AffectedCellsAndBeams-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+AffectedCellsAndBeams-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+AffectedSSB-List::= SEQUENCE (SIZE (1..maxnoofSSBAreas)) OF AffectedSSB-Item
+
+AffectedSSB-Item::= SEQUENCE {
+ sSB-Index INTEGER(0..63),
+ iE-Extensions ProtocolExtensionContainer { { AffectedSSB-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+AffectedSSB-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
AggressorCellList ::= SEQUENCE (SIZE(1..maxCellingNBDU)) OF AggressorCellList-Item
AggressorCellList-Item ::= SEQUENCE {
@@ -397,13 +576,83 @@ AvailableSNPN-ID-List-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-AveragingWindow ::= INTEGER (0..4095, ...)
+AveragingWindow ::= INTEGER (0..4095, ...)
AreaScope ::= ENUMERATED {true, ...}
+AoA-AssistanceInfo ::= SEQUENCE {
+ angleMeasurement AngleMeasurementType,
+ lCS-to-GCS-Translation LCS-to-GCS-Translation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { AoA-AssistanceInfo-ExtIEs } } OPTIONAL,
+ ...
+}
+
+AoA-AssistanceInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AngleMeasurementType ::= CHOICE {
+ expected-ULAoA Expected-UL-AoA,
+ expected-ZoA Expected-ZoA-only,
+ choice-extension ProtocolIE-SingleContainer { { AngleMeasurementType-ExtIEs } }
+}
+
+AngleMeasurementType-ExtIEs F1AP-PROTOCOL-IES ::= {
+...
+}
+
+AppLayerBufferLevelList ::= OCTET STRING
+
+ARP-ID ::= INTEGER (1..16, ...)
+
+ARPLocationInformation ::= SEQUENCE (SIZE (1..maxnoARPs)) OF ARPLocationInformation-Item
+
+ARPLocationInformation-Item ::= SEQUENCE {
+ aRP-ID ARP-ID,
+ aRPLocationType ARPLocationType,
+ iE-Extensions ProtocolExtensionContainer { { ARPLocationInformation-ExtIEs} } OPTIONAL,
+...
+}
+
+ARPLocationInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ARPLocationType ::= CHOICE {
+ aRPPositionRelativeGeodetic RelativeGeodeticLocation,
+ aRPPositionRelativeCartesian RelativeCartesianLocation,
+ choice-extension ProtocolIE-SingleContainer { { ARPLocationType-ExtIEs } }
+}
+
+ARPLocationType-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+
-- B
-BandwidthSRS ::= CHOICE {
+BAP-Header-Rewriting-Added-List-Item::= SEQUENCE {
+ ingressBAPRoutingID BAPRoutingID,
+ egressBAPRoutingID BAPRoutingID,
+ nonF1terminatingTopologyIndicator NonF1terminatingTopologyIndicator OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BAP-Header-Rewriting-Added-List-Item-ExtIEs} } OPTIONAL
+}
+
+BAP-Header-Rewriting-Added-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BAP-Header-Rewriting-Removed-List-Item::= SEQUENCE {
+ ingressBAPRoutingID BAPRoutingID,
+ iE-Extensions ProtocolExtensionContainer { { BAP-Header-Rewriting-Removed-List-Item-ExtIEs} } OPTIONAL
+}
+
+BAP-Header-Rewriting-Removed-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BandwidthSRS ::= CHOICE {
fR1 FR1-Bandwidth,
fR2 FR2-Bandwidth,
choice-extension ProtocolIE-SingleContainer {{ BandwidthSRS-ExtIEs }}
@@ -432,16 +681,18 @@ BAPlayerBHRLCchannelMappingInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
BAPlayerBHRLCchannelMappingInfoList ::= SEQUENCE (SIZE(1..maxnoofMappingEntries)) OF BAPlayerBHRLCchannelMappingInfo-Item
BAPlayerBHRLCchannelMappingInfo-Item ::= SEQUENCE {
- mappingInformationIndex MappingInformationIndex,
- priorHopBAPAddress BAPAddress OPTIONAL,
- ingressbHRLCChannelID BHRLCChannelID OPTIONAL,
- nextHopBAPAddress BAPAddress OPTIONAL,
- egressbHRLCChannelID BHRLCChannelID OPTIONAL,
+ mappingInformationIndex MappingInformationIndex,
+ priorHopBAPAddress BAPAddress OPTIONAL,
+ ingressbHRLCChannelID BHRLCChannelID OPTIONAL,
+ nextHopBAPAddress BAPAddress OPTIONAL,
+ egressbHRLCChannelID BHRLCChannelID OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { BAPlayerBHRLCchannelMappingInfo-ItemExtIEs} } OPTIONAL,
...
}
BAPlayerBHRLCchannelMappingInfo-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-IngressNonF1terminatingTopologyIndicator CRITICALITY ignore EXTENSION IngressNonF1terminatingTopologyIndicator PRESENCE optional}|
+ { ID id-EgressNonF1terminatingTopologyIndicator CRITICALITY ignore EXTENSION EgressNonF1terminatingTopologyIndicator PRESENCE optional},
...
}
@@ -457,6 +708,16 @@ BAPRoutingIDExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+BCBearerContextF1U-TNLInfo ::= CHOICE {
+ locationindpendent MBSF1UInformation,
+ locationdependent LocationDependentMBSF1UInformation,
+ choice-extension ProtocolIE-SingleContainer {{BCBearerContextF1U-TNLInfo-ExtIEs}}
+}
+
+BCBearerContextF1U-TNLInfo-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
BitRate ::= INTEGER (0..4000000000000,...)
BearerTypeChange ::= ENUMERATED {true, ...}
@@ -584,11 +845,12 @@ BHInfo ::= SEQUENCE {
}
BHInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-NonF1terminatingTopologyIndicator CRITICALITY ignore EXTENSION NonF1terminatingTopologyIndicator PRESENCE optional },
...
}
BHQoSInformation ::= CHOICE {
- bHRLCCHQoS QoSFlowLevelQoSParameters,
+ bHRLCCHQoS QoSFlowLevelQoSParameters,
eUTRANBHRLCCHQoS EUTRANQoS,
cPTrafficType CPTrafficType,
choice-extension ProtocolIE-SingleContainer { { BHQoSInformation-ExtIEs} }
@@ -598,6 +860,17 @@ BHQoSInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
+BHRLCCHList ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF BHRLCCHItem
+
+BHRLCCHItem ::= SEQUENCE {
+ bHRLCChannelID BHRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer {{BHRLCCHItemExtIEs }} OPTIONAL
+}
+
+BHRLCCHItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
BH-Routing-Information-Added-List-Item ::= SEQUENCE {
bAPRoutingID BAPRoutingID,
nextHopBAPAddress BAPAddress,
@@ -605,6 +878,7 @@ BH-Routing-Information-Added-List-Item ::= SEQUENCE {
}
BH-Routing-Information-Added-List-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-NonF1terminatingTopologyIndicator CRITICALITY ignore EXTENSION NonF1terminatingTopologyIndicator PRESENCE optional},
...
}
@@ -644,14 +918,132 @@ ServedPLMNs-Item ::= SEQUENCE {
}
ServedPLMNs-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
-{ ID id-TAISliceSupportList CRITICALITY ignore EXTENSION SliceSupportList PRESENCE optional }|
-{ ID id-NPNSupportInfo CRITICALITY reject EXTENSION NPNSupportInfo PRESENCE optional }|
-{ ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional },
+{ ID id-TAISliceSupportList CRITICALITY ignore EXTENSION SliceSupportList PRESENCE optional }|
+{ ID id-NPNSupportInfo CRITICALITY reject EXTENSION NPNSupportInfo PRESENCE optional }|
+{ ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional }|
+{ ID id-TAINSAGSupportList CRITICALITY ignore EXTENSION NSAGSupportList PRESENCE optional},
...
}
BroadcastCAGList ::= SEQUENCE (SIZE(1..maxnoofCAGsupported)) OF CAGID
+
+BroadcastMRBs-FailedToBeModified-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-FailedtoBeModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-FailedtoBeModified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-FailedToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-FailedToBeSetup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-FailedToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-FailedToBeSetupMod-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-FailedToBeSetupMod-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-FailedToBeSetupMod-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-Modified-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ bcBearerCtxtF1U-TNLInfoatDU BCBearerContextF1U-TNLInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-Modified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-Modified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-Setup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ bcBearerCtxtF1U-TNLInfoatDU BCBearerContextF1U-TNLInfo,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-Setup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-SetupMod-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ bcBearerCtxtF1U-TNLInfoatDU BCBearerContextF1U-TNLInfo,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-SetupMod-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-SetupMod-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-ToBeModified-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-QoSInformation QoSFlowLevelQoSParameters OPTIONAL,
+ mBS-Flows-Mapped-To-MRB-List MBS-Flows-Mapped-To-MRB-List OPTIONAL,
+ bcBearerCtxtF1U-TNLInfoatCU BCBearerContextF1U-TNLInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-ToBeModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-ToBeModified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-ToBeReleased-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-ToBeReleased-ItemExtIEs } } OPTIONAL,
+ ...
+}
+
+BroadcastMRBs-ToBeReleased-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-ToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-QoSInformation QoSFlowLevelQoSParameters,
+ mBS-Flows-Mapped-To-MRB-List MBS-Flows-Mapped-To-MRB-List,
+ bcBearerCtxtF1U-TNLInfoatCU BCBearerContextF1U-TNLInfo ,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-ToBeSetup-Item-ExtIEs} },
+ ...
+}
+
+BroadcastMRBs-ToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BroadcastMRBs-ToBeSetupMod-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-QoSInformation QoSFlowLevelQoSParameters,
+ mBS-Flows-Mapped-To-MRB-List MBS-Flows-Mapped-To-MRB-List,
+ bcBearerCtxtF1U-TNLInfoatCU BCBearerContextF1U-TNLInfo,
+ iE-Extensions ProtocolExtensionContainer { { BroadcastMRBs-ToBeSetupMod-Item-ExtIEs} },
+ ...
+}
+
+BroadcastMRBs-ToBeSetupMod-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
BroadcastNIDList ::= SEQUENCE (SIZE(1..maxnoofNIDsupported)) OF NID
BroadcastSNPN-ID-List ::= SEQUENCE (SIZE(1..maxnoofNIDsupported)) OF BroadcastSNPN-ID-List-Item
@@ -679,8 +1071,34 @@ BroadcastPNI-NPN-ID-List-Item ::= SEQUENCE {
BroadcastPNI-NPN-ID-List-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+
+BroadcastAreaScope ::= CHOICE {
+ completeSuccess NULL,
+ partialSuccess PartialSuccessCell,
+ choice-extension ProtocolIE-SingleContainer { { BroadcastAreaScope-ExtIEs } }
+}
+
+BroadcastAreaScope-ExtIEs F1AP-PROTOCOL-IES::={
+ ...
+}
+
+BroadcastCellList ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF Broadcast-Cell-List-Item
+Broadcast-Cell-List-Item ::= SEQUENCE {
+ cellID NRCGI,
+ iE-Extensions ProtocolExtensionContainer { { Broadcast-Cell-List-ItemExtIEs} } OPTIONAL,
+ ...
+}
+
+Broadcast-Cell-List-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BufferSizeThresh ::= INTEGER(0..16777215)
+
BurstArrivalTime ::= OCTET STRING
+BWP-Id ::= INTEGER (0..4)
+
-- C
CAGID ::= BIT STRING (SIZE(32))
@@ -763,7 +1181,7 @@ CauseRadioNetwork ::= ENUMERATED {
multiple-bh-rlc-ch-id-instances,
unknown-bh-rlc-ch-id,
cho-cpc-resources-tobechanged,
- nPN-not-supported,
+ nPN-not-supported,
nPN-access-denied,
gNB-CU-Cell-Capacity-Exceeded,
report-characteristics-empty,
@@ -772,7 +1190,15 @@ CauseRadioNetwork ::= ENUMERATED {
measurement-not-supported-for-the-object,
unknown-bh-address,
unknown-bap-routing-id,
- insufficient-ue-capabilities
+ insufficient-ue-capabilities,
+ scg-activation-deactivation-failure,
+ scg-deactivation-failure-due-to-data-transmission,
+ requested-item-not-supported-on-time,
+ unknown-or-already-allocated-gNB-CU-MBS-F1AP-ID,
+ unknown-or-already-allocated-gNB-DU-MBS-F1AP-ID,
+ unknown-or-inconsistent-pair-of-MBS-F1AP-ID,
+ unknown-or-inconsistent-MRB-ID,
+ tat-sdt-expiry
}
@@ -794,19 +1220,33 @@ CellMeasurementResultList ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF CellMeasure
CellMeasurementResultItem ::= SEQUENCE {
cellID NRCGI,
- radioResourceStatus RadioResourceStatus OPTIONAL,
+ radioResourceStatus RadioResourceStatus OPTIONAL,
compositeAvailableCapacityGroup CompositeAvailableCapacityGroup OPTIONAL,
- sliceAvailableCapacity SliceAvailableCapacity OPTIONAL,
- numberofActiveUEs NumberofActiveUEs OPTIONAL,
+ sliceAvailableCapacity SliceAvailableCapacity OPTIONAL,
+ numberofActiveUEs NumberofActiveUEs OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { CellMeasurementResultItem-ExtIEs} } OPTIONAL
}
CellMeasurementResultItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-NR-U-Channel-List CRITICALITY ignore EXTENSION NR-U-Channel-List PRESENCE optional },
...
}
Cell-Portion-ID ::= INTEGER (0..4095,...)
+CellsForSON-List ::= SEQUENCE (SIZE(1.. maxServedCellforSON)) OF CellsForSON-Item
+
+CellsForSON-Item ::= SEQUENCE {
+ nRCGI NRCGI,
+ neighbourNR-CellsForSON-List NeighbourNR-CellsForSON-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CellsForSON-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellsForSON-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
Cells-Failed-to-be-Activated-List-Item ::= SEQUENCE {
nRCGI NRCGI,
cause Cause,
@@ -879,11 +1319,12 @@ Cells-to-be-Activated-List-Item ::= SEQUENCE {
}
Cells-to-be-Activated-List-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-gNB-CUSystemInformation CRITICALITY reject EXTENSION GNB-CUSystemInformation PRESENCE optional }|
- { ID id-AvailablePLMNList CRITICALITY ignore EXTENSION AvailablePLMNList PRESENCE optional }|
- { ID id-ExtendedAvailablePLMN-List CRITICALITY ignore EXTENSION ExtendedAvailablePLMN-List PRESENCE optional }|
- { ID id-IAB-Info-IAB-donor-CU CRITICALITY ignore EXTENSION IAB-Info-IAB-donor-CU PRESENCE optional}|
- { ID id-AvailableSNPN-ID-List CRITICALITY ignore EXTENSION AvailableSNPN-ID-List PRESENCE optional },
+ { ID id-gNB-CUSystemInformation CRITICALITY reject EXTENSION GNB-CUSystemInformation PRESENCE optional }|
+ { ID id-AvailablePLMNList CRITICALITY ignore EXTENSION AvailablePLMNList PRESENCE optional }|
+ { ID id-ExtendedAvailablePLMN-List CRITICALITY ignore EXTENSION ExtendedAvailablePLMN-List PRESENCE optional }|
+ { ID id-IAB-Info-IAB-donor-CU CRITICALITY ignore EXTENSION IAB-Info-IAB-donor-CU PRESENCE optional}|
+ { ID id-AvailableSNPN-ID-List CRITICALITY ignore EXTENSION AvailableSNPN-ID-List PRESENCE optional }|
+ { ID id-MBS-Broadcast-NeighbourCellList CRITICALITY ignore EXTENSION MBS-Broadcast-NeighbourCellList PRESENCE optional },
...
}
@@ -939,17 +1380,53 @@ CellType-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
CellULConfigured ::= ENUMERATED {none, ul, sul, ul-and-sul, ...}
+CG-SDTQueryIndication ::= ENUMERATED {true, ...}
+
+CG-SDTKeptIndicator ::= ENUMERATED {true, ...}
+
+CG-SDTindicatorSetup ::= ENUMERATED {true, ...}
+
+CG-SDTindicatorMod ::= ENUMERATED {true, false, ...}
+
+CG-SDTSessionInfo ::= SEQUENCE {
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID,
+ gNB-DU-UE-F1AP-ID GNB-DU-UE-F1AP-ID,
+ iE-Extensions ProtocolExtensionContainer {{CG-SDTSessionInfo-ExtIEs}} OPTIONAL,
+ ...
+}
+
+
+CG-SDTSessionInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ChannelOccupancyTimePercentage ::= INTEGER (0..100,...)
+
+Child-IAB-Nodes-NA-Resource-List ::= SEQUENCE (SIZE(1..maxnoofChildIABNodes)) OF Child-IAB-Nodes-NA-Resource-List-Item
+
+Child-IAB-Nodes-NA-Resource-List-Item::= SEQUENCE {
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID,
+ gNB-DU-UE-F1AP-ID GNB-DU-UE-F1AP-ID,
+ nA-Resource-Configuration-List NA-Resource-Configuration-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Child-IAB-Nodes-NA-Resource-List-Item-ExtIEs} } OPTIONAL
+}
+
+Child-IAB-Nodes-NA-Resource-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
Child-Node-Cells-List ::= SEQUENCE (SIZE(1..maxnoofChildIABNodes)) OF Child-Node-Cells-List-Item
Child-Node-Cells-List-Item ::= SEQUENCE{
nRCGI NRCGI,
iAB-DU-Cell-Resource-Configuration-Mode-Info IAB-DU-Cell-Resource-Configuration-Mode-Info OPTIONAL,
- iAB-STC-Info IAB-STC-Info OPTIONAL,
- rACH-Config-Common RACH-Config-Common OPTIONAL,
+ iAB-STC-Info IAB-STC-Info OPTIONAL,
+ rACH-Config-Common RACH-Config-Common OPTIONAL,
rACH-Config-Common-IAB RACH-Config-Common-IAB OPTIONAL,
- cSI-RS-Configuration OCTET STRING OPTIONAL,
- sR-Configuration OCTET STRING OPTIONAL,
- pDCCH-ConfigSIB1 OCTET STRING OPTIONAL,
+ cSI-RS-Configuration OCTET STRING OPTIONAL,
+ sR-Configuration OCTET STRING OPTIONAL,
+ pDCCH-ConfigSIB1 OCTET STRING OPTIONAL,
sCS-Common OCTET STRING OPTIONAL,
multiplexingInfo MultiplexingInfo OPTIONAL,
iE-Extensions ProtocolExtensionContainer {{Child-Node-Cells-List-Item-ExtIEs}} OPTIONAL
@@ -985,6 +1462,8 @@ CHOtrigger-IntraDU ::= ENUMERATED {
...
}
+CNSubgroupID ::= INTEGER (0..7, ...)
+
CNUEPagingIdentity ::= CHOICE {
fiveG-S-TMSI BIT STRING (SIZE(48)),
choice-extension ProtocolIE-SingleContainer { { CNUEPagingIdentity-ExtIEs } }
@@ -1001,6 +1480,7 @@ CompositeAvailableCapacityGroup ::= SEQUENCE {
}
CompositeAvailableCapacityGroup-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-CompositeAvailableCapacity-SUL CRITICALITY ignore EXTENSION CompositeAvailableCapacity PRESENCE optional },
...
}
@@ -1042,17 +1522,77 @@ ConditionalIntraDUMobilityInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::={
...
}
+ConfigRestrictInfoDAPS ::= OCTET STRING
+
ConfiguredTACIndication ::= ENUMERATED {
true,
...
}
+Configured-BWP-List ::= SEQUENCE (SIZE(1.. maxNrofBWPs)) OF Configured-BWP-Item
+
+Configured-BWP-Item ::= SEQUENCE {
+ bWP-Id BWP-Id,
+ bWP-Location-and-bandwidth INTEGER (0..37949),
+ iE-Extensions ProtocolExtensionContainer { { Configured-BWP-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Configured-BWP-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
CoordinateID ::= INTEGER (0..511, ...)
+Coverage-Modification-Notification ::= SEQUENCE {
+ coverage-Modification-List Coverage-Modification-List,
+ iE-Extensions ProtocolExtensionContainer { { Coverage-Modification-Notification-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Coverage-Modification-Notification-ExtIEs F1AP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+Coverage-Modification-List ::= SEQUENCE (SIZE (1..maxCellingNBDU)) OF Coverage-Modification-Item
+
+Coverage-Modification-Item ::= SEQUENCE {
+ nRCGI NRCGI,
+ cellCoverageState CellCoverageState,
+ sSBCoverageModificationList SSBCoverageModification-List OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { { Coverage-Modification-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Coverage-Modification-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellCoverageState ::= INTEGER (0..63, ...)
+
+
+CCO-Assistance-Information ::= SEQUENCE {
+ cCO-issue-detection CCO-issue-detection OPTIONAL,
+ affectedCellsAndBeams-List AffectedCellsAndBeams-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CCO-Assistance-Information-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CCO-Assistance-Information-ExtIEs F1AP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+
+CCO-issue-detection ::= ENUMERATED {
+ coverage,
+ cell-edge-capacity,
+ ...}
+
+
CP-TransportLayerAddress ::= CHOICE {
endpoint-IP-address TransportLayerAddress,
- endpoint-IP-address-and-port Endpoint-IP-address-and-port,
+ endpoint-IP-address-and-port Endpoint-IP-address-and-port,
choice-extension ProtocolIE-SingleContainer { { CP-TransportLayerAddress-ExtIEs } }
}
@@ -1060,6 +1600,23 @@ CP-TransportLayerAddress-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
+CPACMCGInformation ::= SEQUENCE {
+ cpac-trigger CPAC-trigger,
+ pscellid NRCGI,
+ iE-Extensions ProtocolExtensionContainer { { CPACMCGInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPACMCGInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPAC-trigger ::= ENUMERATED {
+ cpac-preparation,
+ cpac-executed,
+ ...
+}
+
CPTrafficType ::= INTEGER (1..3,...)
CriticalityDiagnostics ::= SEQUENCE {
@@ -1102,7 +1659,7 @@ CUDURadioInformationType-ExtIEs F1AP-PROTOCOL-IES ::= {
}
CUDURIMInformation ::= SEQUENCE {
- victimgNBSetID GNBSetID,
+ victimgNBSetID GNBSetID,
rIMRSDetectionStatus RIMRSDetectionStatus,
iE-Extensions ProtocolExtensionContainer { { CUDURIMInformation-ExtIEs} } OPTIONAL
}
@@ -1125,12 +1682,23 @@ CUtoDURRCInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-MeasurementTimingConfiguration CRITICALITY ignore EXTENSION MeasurementTimingConfiguration PRESENCE optional }|
{ ID id-UEAssistanceInformation CRITICALITY ignore EXTENSION UEAssistanceInformation PRESENCE optional }|
{ ID id-CG-Config CRITICALITY ignore EXTENSION CG-Config PRESENCE optional }|
- { ID id-UEAssistanceInformationEUTRA CRITICALITY ignore EXTENSION UEAssistanceInformationEUTRA PRESENCE optional },
+ { ID id-UEAssistanceInformationEUTRA CRITICALITY ignore EXTENSION UEAssistanceInformationEUTRA PRESENCE optional }|
+ { ID id-LocationMeasurementInformation CRITICALITY ignore EXTENSION LocationMeasurementInformation PRESENCE optional }|
+ { ID id-MUSIM-GapConfig CRITICALITY reject EXTENSION MUSIM-GapConfig PRESENCE optional }|
+ { ID id-SDT-MAC-PHY-CG-Config CRITICALITY ignore EXTENSION SDT-MAC-PHY-CG-Config PRESENCE optional }|
+ { ID id-MBSInterestIndication CRITICALITY ignore EXTENSION MBSInterestIndication PRESENCE optional }|
+ { ID id-NeedForGapsInfoNR CRITICALITY ignore EXTENSION NeedForGapsInfoNR PRESENCE optional }|
+ { ID id-NeedForGapNCSGInfoNR CRITICALITY ignore EXTENSION NeedForGapNCSGInfoNR PRESENCE optional }|
+ { ID id-NeedForGapNCSGInfoEUTRA CRITICALITY ignore EXTENSION NeedForGapNCSGInfoEUTRA PRESENCE optional }|
+ { ID id-ConfigRestrictInfoDAPS CRITICALITY ignore EXTENSION ConfigRestrictInfoDAPS PRESENCE optional }|
+ { ID id-Preconfigured-measurement-GAP-Request CRITICALITY ignore EXTENSION Preconfigured-measurement-GAP-Request PRESENCE optional },
...
}
-- D
+DAPS-HO-Status::= ENUMERATED{initiation,... }
+
DCBasedDuplicationConfigured::= ENUMERATED{true,..., false}
Dedicated-SIDelivery-NeededUE-Item ::= SEQUENCE {
@@ -1144,6 +1712,7 @@ DedicatedSIDeliveryNeededUE-Item-ExtIEs F1AP-PROTOCOL-EXTENSION::={
...
}
+DedicatedSIDeliveryIndication::= ENUMERATED{true, ...}
DL-PRS ::= SEQUENCE {
prsid INTEGER (0..255),
@@ -1204,7 +1773,7 @@ DL-PRSResourceSetARPLocation-ExtIEs F1AP-PROTOCOL-IES ::= {
DLPRSResourceARP ::= SEQUENCE {
dl-PRSResourceID PRS-Resource-ID,
- dL-PRSResourceARPLocation DL-PRSResourceARPLocation,
+ dL-PRSResourceARPLocation DL-PRSResourceARPLocation,
iE-Extensions ProtocolExtensionContainer { { DLPRSResourceARP-ExtIEs } } OPTIONAL
}
@@ -1295,8 +1864,8 @@ DRBs-FailedToBeSetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
DRB-Information ::= SEQUENCE {
- dRB-QoS QoSFlowLevelQoSParameters,
- sNSSAI SNSSAI,
+ dRB-QoS QoSFlowLevelQoSParameters,
+ sNSSAI SNSSAI,
notificationControl NotificationControl OPTIONAL,
flows-Mapped-To-DRB-List Flows-Mapped-To-DRB-List,
iE-Extensions ProtocolExtensionContainer { { DRB-Information-ItemExtIEs } } OPTIONAL
@@ -1371,7 +1940,7 @@ DRBs-Required-ToBeReleased-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
DRBs-Setup-Item ::= SEQUENCE {
dRBID DRBID,
lCID LCID OPTIONAL,
- dLUPTNLInformation-ToBeSetup-List DLUPTNLInformation-ToBeSetup-List ,
+ dLUPTNLInformation-ToBeSetup-List DLUPTNLInformation-ToBeSetup-List ,
iE-Extensions ProtocolExtensionContainer { { DRBs-Setup-ItemExtIEs } } OPTIONAL,
...
}
@@ -1400,7 +1969,7 @@ DRBs-SetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
DRBs-ToBeModified-Item ::= SEQUENCE {
dRBID DRBID,
qoSInformation QoSInformation OPTIONAL,
- uLUPTNLInformation-ToBeSetup-List ULUPTNLInformation-ToBeSetup-List ,
+ uLUPTNLInformation-ToBeSetup-List ULUPTNLInformation-ToBeSetup-List ,
uLConfiguration ULConfiguration OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { DRBs-ToBeModified-ItemExtIEs } } OPTIONAL,
...
@@ -1416,7 +1985,8 @@ DRBs-ToBeModified-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-DC-Based-Duplication-Activation CRITICALITY reject EXTENSION DuplicationActivation PRESENCE optional }|
{ ID id-AdditionalPDCPDuplicationTNL-List CRITICALITY ignore EXTENSION AdditionalPDCPDuplicationTNL-List PRESENCE optional }|
{ ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional}|
- { ID id-TransmissionStopIndicator CRITICALITY ignore EXTENSION TransmissionStopIndicator PRESENCE optional},
+ { ID id-TransmissionStopIndicator CRITICALITY ignore EXTENSION TransmissionStopIndicator PRESENCE optional}|
+ { ID id-CG-SDTindicatorMod CRITICALITY reject EXTENSION CG-SDTindicatorMod PRESENCE optional },
...
}
@@ -1433,8 +2003,8 @@ DRBs-ToBeReleased-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
DRBs-ToBeSetup-Item ::= SEQUENCE {
dRBID DRBID,
qoSInformation QoSInformation,
- uLUPTNLInformation-ToBeSetup-List ULUPTNLInformation-ToBeSetup-List ,
- rLCMode RLCMode,
+ uLUPTNLInformation-ToBeSetup-List ULUPTNLInformation-ToBeSetup-List ,
+ rLCMode RLCMode,
uLConfiguration ULConfiguration OPTIONAL,
duplicationActivation DuplicationActivation OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { DRBs-ToBeSetup-ItemExtIEs } } OPTIONAL,
@@ -1447,7 +2017,8 @@ DRBs-ToBeSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-DLPDCPSNLength CRITICALITY ignore EXTENSION PDCPSNLength PRESENCE mandatory }|
{ ID id-ULPDCPSNLength CRITICALITY ignore EXTENSION PDCPSNLength PRESENCE optional }|
{ ID id-AdditionalPDCPDuplicationTNL-List CRITICALITY ignore EXTENSION AdditionalPDCPDuplicationTNL-List PRESENCE optional }|
- { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional},
+ { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional}|
+ { ID id-SDTRLCBearerConfiguration CRITICALITY ignore EXTENSION SDTRLCBearerConfiguration PRESENCE optional },
...
}
@@ -1456,7 +2027,7 @@ DRBs-ToBeSetupMod-Item ::= SEQUENCE {
dRBID DRBID,
qoSInformation QoSInformation,
uLUPTNLInformation-ToBeSetup-List ULUPTNLInformation-ToBeSetup-List,
- rLCMode RLCMode,
+ rLCMode RLCMode,
uLConfiguration ULConfiguration OPTIONAL,
duplicationActivation DuplicationActivation OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { DRBs-ToBeSetupMod-ItemExtIEs } } OPTIONAL,
@@ -1469,7 +2040,8 @@ DRBs-ToBeSetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-DLPDCPSNLength CRITICALITY ignore EXTENSION PDCPSNLength PRESENCE optional }|
{ ID id-ULPDCPSNLength CRITICALITY ignore EXTENSION PDCPSNLength PRESENCE optional }|
{ ID id-AdditionalPDCPDuplicationTNL-List CRITICALITY ignore EXTENSION AdditionalPDCPDuplicationTNL-List PRESENCE optional }|
- { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional},
+ { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional}|
+ { ID id-CG-SDTindicatorSetup CRITICALITY reject EXTENSION CG-SDTindicatorSetup PRESENCE optional },
...
}
@@ -1507,10 +2079,10 @@ DUCURadioInformationType-ExtIEs F1AP-PROTOCOL-IES ::= {
}
DUCURIMInformation ::= SEQUENCE {
- victimgNBSetID GNBSetID,
+ victimgNBSetID GNBSetID,
rIMRSDetectionStatus RIMRSDetectionStatus,
aggressorCellList AggressorCellList,
- iE-Extensions ProtocolExtensionContainer { { DUCURIMInformation-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { DUCURIMInformation-ExtIEs} } OPTIONAL
}
DUCURIMInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -1532,13 +2104,21 @@ DUFSlotformatIndex ::= INTEGER(0..254)
DUFTransmissionPeriodicity ::= ENUMERATED { ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms5, ms10, ...}
-DU-RX-MT-RX ::= ENUMERATED {supported, not-supported}
+DU-RX-MT-RX ::= ENUMERATED {supported, not-supported }
+
+DU-TX-MT-TX ::= ENUMERATED {supported, not-supported }
+
+DU-RX-MT-TX ::= ENUMERATED {supported, not-supported }
+
+DU-TX-MT-RX ::= ENUMERATED {supported, not-supported }
-DU-TX-MT-TX ::= ENUMERATED {supported, not-supported}
+DU-RX-MT-RX-Extend ::= ENUMERATED {supported, not-supported, supported-and-FDM-required, ...}
-DU-RX-MT-TX ::= ENUMERATED {supported, not-supported}
+DU-TX-MT-TX-Extend ::= ENUMERATED {supported, not-supported, supported-and-FDM-required, ...}
-DU-TX-MT-RX ::= ENUMERATED {supported, not-supported}
+DU-RX-MT-TX-Extend ::= ENUMERATED {supported, not-supported, supported-and-FDM-required, ...}
+
+DU-TX-MT-RX-Extend ::= ENUMERATED {supported, not-supported, supported-and-FDM-required, ...}
DUtoCURRCInformation ::= SEQUENCE {
cellGroupConfig CellGroupConfig,
@@ -1561,8 +2141,17 @@ DUtoCURRCInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-Ph-InfoMCG CRITICALITY ignore EXTENSION Ph-InfoMCG PRESENCE optional }|
{ ID id-MeasGapSharingConfig CRITICALITY ignore EXTENSION MeasGapSharingConfig PRESENCE optional }|
{ ID id-SL-PHY-MAC-RLC-Config CRITICALITY ignore EXTENSION SL-PHY-MAC-RLC-Config PRESENCE optional }|
- { ID id-SL-ConfigDedicatedEUTRA-Info CRITICALITY ignore EXTENSION SL-ConfigDedicatedEUTRA-Info PRESENCE optional }|
- { ID id-RequestedP-MaxFR2 CRITICALITY ignore EXTENSION RequestedP-MaxFR2 PRESENCE optional },
+ { ID id-SL-ConfigDedicatedEUTRA-Info CRITICALITY ignore EXTENSION SL-ConfigDedicatedEUTRA-Info PRESENCE optional }|
+ { ID id-RequestedP-MaxFR2 CRITICALITY ignore EXTENSION RequestedP-MaxFR2 PRESENCE optional }|
+ { ID id-SDT-MAC-PHY-CG-Config CRITICALITY ignore EXTENSION SDT-MAC-PHY-CG-Config PRESENCE optional }|
+ { ID id-MUSIM-GapConfig CRITICALITY ignore EXTENSION MUSIM-GapConfig PRESENCE optional }|
+ { ID id-SL-RLC-ChannelToAddModList CRITICALITY ignore EXTENSION SL-RLC-ChannelToAddModList PRESENCE optional }|
+ { ID id-InterFrequencyConfig-NoGap CRITICALITY ignore EXTENSION InterFrequencyConfig-NoGap PRESENCE optional }|
+ { ID id-UL-GapFR2-Config CRITICALITY ignore EXTENSION UL-GapFR2-Config PRESENCE optional }|
+ { ID id-TwoPHRModeMCG CRITICALITY ignore EXTENSION TwoPHRModeMCG PRESENCE optional }|
+ { ID id-TwoPHRModeSCG CRITICALITY ignore EXTENSION TwoPHRModeSCG PRESENCE optional }|
+ { ID id-ncd-SSB-RedCapInitialBWP-SDT CRITICALITY ignore EXTENSION Ncd-SSB-RedCapInitialBWP-SDT PRESENCE optional }|
+ { ID id-ServCellInfoList CRITICALITY ignore EXTENSION ServCellInfoList PRESENCE optional },
...
}
@@ -1570,7 +2159,7 @@ DuplicationActivation ::= ENUMERATED{active,inactive,... }
DuplicationIndication ::= ENUMERATED {true, ... , false }
-DuplicationState ::= ENUMERATED {
+DuplicationState ::= ENUMERATED {
active,
inactive,
...
@@ -1597,14 +2186,14 @@ Dynamic5QIDescriptor-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
DynamicPQIDescriptor ::= SEQUENCE {
- resourceType ENUMERATED {gbr, non-gbr, delay-critical-grb, ...} OPTIONAL,
+ resourceType ENUMERATED {gbr, non-gbr, delay-critical-grb, ...} OPTIONAL,
qoSPriorityLevel INTEGER (1..8, ...),
packetDelayBudget PacketDelayBudget,
packetErrorRate PacketErrorRate,
averagingWindow AveragingWindow OPTIONAL,
-- C-ifGBRflow: This IE shall be present if the GBR QoS Flow Information IE is present in the QoS Flow Level QoS Parameters IE.
maxDataBurstVolume MaxDataBurstVolume OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { DynamicPQIDescriptor-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { DynamicPQIDescriptor-ExtIEs } } OPTIONAL
}
DynamicPQIDescriptor-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -1632,7 +2221,8 @@ E-CID-MeasurementQuantitiesValue-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
E-CID-MeasurementQuantitiesValue ::= ENUMERATED {
default,
angleOfArrivalNR,
- ...
+ ... ,
+ timingAdvanceNR
}
E-CID-MeasurementResult ::= SEQUENCE {
@@ -1662,6 +2252,7 @@ E-CID-MeasuredResults-Value ::= CHOICE {
}
E-CID-MeasuredResults-Value-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-NR-TADV CRITICALITY ignore TYPE NR-TADV PRESENCE mandatory },
...
}
@@ -1683,6 +2274,8 @@ EgressBHRLCCHItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+EgressNonF1terminatingTopologyIndicator ::= ENUMERATED {true, ...}
+
Endpoint-IP-address-and-port ::=SEQUENCE {
endpointIPAddress TransportLayerAddress,
iE-Extensions ProtocolExtensionContainer { { Endpoint-IP-address-and-port-ExtIEs} } OPTIONAL
@@ -1693,6 +2286,8 @@ Endpoint-IP-address-and-port-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+EnergyDetectionThreshold ::= INTEGER (-100..-50, ...)
+
ExtendedAvailablePLMN-List ::= SEQUENCE (SIZE(1..maxnoofExtendedBPLMNs)) OF ExtendedAvailablePLMN-Item
ExtendedAvailablePLMN-Item ::= SEQUENCE {
@@ -1725,13 +2320,16 @@ ExtendedServedPLMNs-Item ::= SEQUENCE {
}
ExtendedServedPLMNs-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-NPNSupportInfo CRITICALITY reject EXTENSION NPNSupportInfo PRESENCE optional }|
-{ ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional },
+ { ID id-NPNSupportInfo CRITICALITY reject EXTENSION NPNSupportInfo PRESENCE optional }|
+ { ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional }|
+ { ID id-TAINSAGSupportList CRITICALITY ignore EXTENSION NSAGSupportList PRESENCE optional},
...
}
ExtendedSliceSupportList ::= SEQUENCE (SIZE(1.. maxnoofExtSliceItems)) OF SliceSupportItem
+ExtendedUEIdentityIndexValue ::= BIT STRING (SIZE(16))
+
EUTRACells-List ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF EUTRACells-List-item
EUTRACells-List-item ::= SEQUENCE {
@@ -1777,13 +2375,13 @@ EUTRA-Coex-TDD-Info ::= SEQUENCE {
EUTRA-Coex-TDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-EUTRA-CyclicPrefixDL ::= ENUMERATED {
+EUTRA-CyclicPrefixDL ::= ENUMERATED {
normal,
extended,
...
}
-EUTRA-CyclicPrefixUL ::= ENUMERATED {
+EUTRA-CyclicPrefixUL ::= ENUMERATED {
normal,
extended,
...
@@ -1817,9 +2415,9 @@ EUTRA-SpecialSubframe-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-EUTRA-SpecialSubframePatterns ::= ENUMERATED {
+EUTRA-SpecialSubframePatterns ::= ENUMERATED {
ssp0,
- ssp1,
+ ssp1,
ssp2,
ssp3,
ssp4,
@@ -1832,9 +2430,9 @@ EUTRA-SpecialSubframePatterns ::= ENUMERATED {
...
}
-EUTRA-SubframeAssignment ::= ENUMERATED {
+EUTRA-SubframeAssignment ::= ENUMERATED {
sa0,
- sa1,
+ sa1,
sa2,
sa3,
sa4,
@@ -1862,6 +2460,7 @@ EUTRANQoS ::= SEQUENCE {
}
EUTRANQoS-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+{ ID id-ENBDLTNLAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional },
...
}
@@ -1911,7 +2510,52 @@ EventType ::= ENUMERATED {
...
}
-ExtendedPacketDelayBudget ::= INTEGER (1..65535, ...)
+ExtendedPacketDelayBudget ::= INTEGER (1..65535, ..., 65536..109999)
+
+Expected-UL-AoA ::= SEQUENCE {
+ expected-Azimuth-AoA Expected-Azimuth-AoA,
+ expected-Zenith-AoA Expected-Zenith-AoA OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { Expected-UL-AoA-ExtIEs } } OPTIONAL,
+ ...
+}
+Expected-UL-AoA-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Expected-ZoA-only ::= SEQUENCE {
+ expected-ZoA-only Expected-Zenith-AoA,
+ iE-extensions ProtocolExtensionContainer { { Expected-ZoA-only-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-ZoA-only-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Expected-Azimuth-AoA ::= SEQUENCE {
+ expected-Azimuth-AoA-value Expected-Value-AoA,
+ expected-Azimuth-AoA-uncertainty Uncertainty-range-AoA,
+ iE-Extensions ProtocolExtensionContainer { { Expected-Azimuth-AoA-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-Azimuth-AoA-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+Expected-Zenith-AoA ::= SEQUENCE {
+ expected-Zenith-AoA-value Expected-Value-ZoA,
+ expected-Zenith-AoA-uncertainty Uncertainty-range-ZoA,
+ iE-Extensions ProtocolExtensionContainer { { Expected-Zenith-AoA-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-Zenith-AoA-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Expected-Value-AoA ::= INTEGER (0..3599)
+
+Expected-Value-ZoA ::= INTEGER (0..1799)
-- F
@@ -1927,12 +2571,25 @@ F1CTransferPath-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+F1CPathNRDC ::= ENUMERATED {mcg, scg, both}
+
+F1CTransferPathNRDC ::= SEQUENCE {
+ f1CPathNRDC F1CPathNRDC,
+ iE-Extensions ProtocolExtensionContainer { { F1CTransferPathNRDC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+F1CTransferPathNRDC-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
FDD-Info ::= SEQUENCE {
uL-NRFreqInfo NRFreqInfo,
dL-NRFreqInfo NRFreqInfo,
- uL-Transmission-Bandwidth Transmission-Bandwidth,
- dL-Transmission-Bandwidth Transmission-Bandwidth,
- iE-Extensions ProtocolExtensionContainer { {FDD-Info-ExtIEs} } OPTIONAL,
+ uL-Transmission-Bandwidth Transmission-Bandwidth,
+ dL-Transmission-Bandwidth Transmission-Bandwidth,
+ iE-Extensions ProtocolExtensionContainer { {FDD-Info-ExtIEs} } OPTIONAL,
...
}
@@ -1942,6 +2599,60 @@ FDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+FDD-InfoRel16 ::= SEQUENCE {
+ uL-FreqInfo FreqInfoRel16 OPTIONAL,
+ sUL-FreqInfo FreqInfoRel16 OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {FDD-InfoRel16-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FDD-InfoRel16-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveG-ProSeAuthorized ::= SEQUENCE {
+ fiveG-proSeDirectDiscovery FiveG-ProSeDirectDiscovery OPTIONAL,
+ fiveG-proSeDirectCommunication FiveG-ProSeDirectCommunication OPTIONAL,
+ fiveG-ProSeLayer2UEtoNetworkRelay FiveG-ProSeLayer2UEtoNetworkRelay OPTIONAL,
+ fiveG-ProSeLayer3UEtoNetworkRelay FiveG-ProSeLayer3UEtoNetworkRelay OPTIONAL,
+ fiveG-ProSeLayer2RemoteUE FiveG-ProSeLayer2RemoteUE OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {FiveG-ProSeAuthorized-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveG-ProSeAuthorized-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveG-ProSeDirectDiscovery ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveG-ProSeDirectCommunication ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveG-ProSeLayer2UEtoNetworkRelay ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveG-ProSeLayer3UEtoNetworkRelay ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveG-ProSeLayer2RemoteUE ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
Flows-Mapped-To-DRB-List ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF Flows-Mapped-To-DRB-Item
@@ -1959,10 +2670,10 @@ Flows-Mapped-To-DRB-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
FR1-Bandwidth ::= ENUMERATED {bw5, bw10, bw20, bw40, bw50, bw80, bw100, ...}
-FR2-Bandwidth ::= ENUMERATED {bw50, bw100, bw200, bw400, ...}
+FR2-Bandwidth ::= ENUMERATED {bw50, bw100, bw200, bw400, ..., bw800, bw1600, bw2000}
FreqBandNrItem ::= SEQUENCE {
- freqBandIndicatorNr INTEGER (1..1024,...),
+ freqBandIndicatorNr INTEGER (1..1024,...),
supportedSULBandList SEQUENCE (SIZE(0..maxnoofNrCellBands)) OF SupportedSULFreqBandItem,
iE-Extensions ProtocolExtensionContainer { {FreqBandNrItem-ExtIEs} } OPTIONAL,
...
@@ -1979,14 +2690,55 @@ FreqDomainLength ::= CHOICE {
}
FreqDomainLength-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-L571Info CRITICALITY reject TYPE L571Info PRESENCE mandatory}|
+ { ID id-L1151Info CRITICALITY reject TYPE L1151Info PRESENCE mandatory},
+ ...
+}
+
+FreqInfoRel16 ::= SEQUENCE {
+ nRARFCN INTEGER (0..maxNRARFCN) OPTIONAL,
+ frequencyShift7p5khz FrequencyShift7p5khz OPTIONAL,
+ carrierList NRCarrierList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { FreqInfoRel16-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FreqInfoRel16-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
FrequencyShift7p5khz ::= ENUMERATED {false, true, ...}
+Frequency-Domain-HSNA-Configuration-List ::= SEQUENCE (SIZE(1..maxnoofRBsetsPerCell)) OF Frequency-Domain-HSNA-Configuration-Item
+
+Frequency-Domain-HSNA-Configuration-Item::= SEQUENCE {
+ rBSetIndex INTEGER (0..maxnoofRBsetsPerCell-1, ...),
+ frequency-Domain-HSNA-Slot-Configuration-List Frequency-Domain-HSNA-Slot-Configuration-List,
+ iE-Extensions ProtocolExtensionContainer { { Frequency-Domain-HSNA-Configuration-Item-ExtIEs} } OPTIONAL
+}
+
+
+Frequency-Domain-HSNA-Configuration-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Frequency-Domain-HSNA-Slot-Configuration-List ::= SEQUENCE (SIZE(1..maxnoofHSNASlots)) OF Frequency-Domain-HSNA-Slot-Configuration-Item
+
+Frequency-Domain-HSNA-Slot-Configuration-Item::= SEQUENCE {
+ slotIndex INTEGER (0..5119) OPTIONAL,
+ hSNADownlink HSNADownlink OPTIONAL,
+ hSNAUplink HSNAUplink OPTIONAL,
+ hSNAFlexible HSNAFlexible OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Frequency-Domain-HSNA-Slot-Configuration-Item-ExtIEs } } OPTIONAL
+}
+
+Frequency-Domain-HSNA-Slot-Configuration-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
FullConfiguration ::= ENUMERATED {full, ...}
-FlowsMappedToSLDRB-List ::= SEQUENCE (SIZE(1.. maxnoofPC5QoSFlows)) OF FlowsMappedToSLDRB-Item
+FlowsMappedToSLDRB-List ::= SEQUENCE (SIZE(1.. maxnoofPC5QoSFlows)) OF FlowsMappedToSLDRB-Item
FlowsMappedToSLDRB-Item ::= SEQUENCE {
pc5QoSFlowIdentifier PC5QoSFlowIdentifier,
@@ -2016,9 +2768,9 @@ GBR-QosInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
GBR-QoSFlowInformation::= SEQUENCE {
maxFlowBitRateDownlink BitRate,
- maxFlowBitRateUplink BitRate,
+ maxFlowBitRateUplink BitRate,
guaranteedFlowBitRateDownlink BitRate,
- guaranteedFlowBitRateUplink BitRate,
+ guaranteedFlowBitRateUplink BitRate,
maxPacketLossRateDownlink MaxPacketLossRate OPTIONAL,
maxPacketLossRateUplink MaxPacketLossRate OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { GBR-QosFlowInformation-ExtIEs} } OPTIONAL,
@@ -2039,9 +2791,12 @@ GeographicalCoordinates ::= SEQUENCE {
}
GeographicalCoordinates-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ARPLocationInfo CRITICALITY ignore EXTENSION ARPLocationInformation PRESENCE optional},
...
}
+GNB-CU-MBS-F1AP-ID ::= INTEGER (0..4294967295)
+
GNBCUMeasurementID ::= INTEGER (0.. 4095, ...)
GNBDUMeasurementID ::= INTEGER (0.. 4095, ...)
@@ -2059,7 +2814,7 @@ GNB-CUSystemInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
GNB-CU-TNL-Association-Setup-Item::= SEQUENCE {
tNLAssociationTransportLayerAddress CP-TransportLayerAddress ,
- iE-Extensions ProtocolExtensionContainer { { GNB-CU-TNL-Association-Setup-Item-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { GNB-CU-TNL-Association-Setup-Item-ExtIEs} } OPTIONAL
}
GNB-CU-TNL-Association-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -2069,7 +2824,7 @@ GNB-CU-TNL-Association-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
GNB-CU-TNL-Association-Failed-To-Setup-Item ::= SEQUENCE {
tNLAssociationTransportLayerAddress CP-TransportLayerAddress ,
cause Cause,
- iE-Extensions ProtocolExtensionContainer { { GNB-CU-TNL-Association-Failed-To-Setup-Item-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { GNB-CU-TNL-Association-Failed-To-Setup-Item-ExtIEs} } OPTIONAL
}
GNB-CU-TNL-Association-Failed-To-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -2079,8 +2834,8 @@ GNB-CU-TNL-Association-Failed-To-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
GNB-CU-TNL-Association-To-Add-Item ::= SEQUENCE {
tNLAssociationTransportLayerAddress CP-TransportLayerAddress ,
- tNLAssociationUsage TNLAssociationUsage,
- iE-Extensions ProtocolExtensionContainer { { GNB-CU-TNL-Association-To-Add-Item-ExtIEs} } OPTIONAL
+ tNLAssociationUsage TNLAssociationUsage,
+ iE-Extensions ProtocolExtensionContainer { { GNB-CU-TNL-Association-To-Add-Item-ExtIEs} } OPTIONAL
}
GNB-CU-TNL-Association-To-Add-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -2110,30 +2865,37 @@ GNB-CU-TNL-Association-To-Update-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
GNB-CU-UE-F1AP-ID ::= INTEGER (0..4294967295)
-GNB-DU-Cell-Resource-Configuration ::= SEQUENCE {
+GNB-DU-Cell-Resource-Configuration ::= SEQUENCE {
subcarrierSpacing SubcarrierSpacing,
dUFTransmissionPeriodicity DUFTransmissionPeriodicity OPTIONAL,
dUF-Slot-Config-List DUF-Slot-Config-List OPTIONAL,
hSNATransmissionPeriodicity HSNATransmissionPeriodicity,
- hNSASlotConfigList HSNASlotConfigList OPTIONAL,
+ hsNSASlotConfigList HSNASlotConfigList OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { GNB-DU-Cell-Resource-Configuration-ExtIEs } } OPTIONAL
}
GNB-DU-Cell-Resource-Configuration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-rBSetConfiguration CRITICALITY reject EXTENSION RBSetConfiguration PRESENCE optional}|
+ {ID id-frequency-Domain-HSNA-Configuration-List CRITICALITY reject EXTENSION Frequency-Domain-HSNA-Configuration-List PRESENCE optional}|
+ {ID id-child-IAB-Nodes-NA-Resource-List CRITICALITY reject EXTENSION Child-IAB-Nodes-NA-Resource-List PRESENCE optional}|
+ {ID id-Parent-IAB-Nodes-NA-Resource-Configuration-List CRITICALITY reject EXTENSION Parent-IAB-Nodes-NA-Resource-Configuration-List PRESENCE optional},
...
}
+GNB-DU-MBS-F1AP-ID ::= INTEGER (0..4294967295)
+
+
GNB-DU-UE-F1AP-ID ::= INTEGER (0..4294967295)
GNB-DU-ID ::= INTEGER (0..68719476735)
GNB-CU-Name ::= PrintableString(SIZE(1..150,...))
-GNB-DU-Name ::= PrintableString(SIZE(1..150,...))
+GNB-DU-Name ::= PrintableString(SIZE(1..150,...))
Extended-GNB-CU-Name ::= SEQUENCE {
gNB-CU-NameVisibleString GNB-CU-NameVisibleString OPTIONAL,
- gNB-CU-NameUTF8String GNB-CU-NameUTF8String OPTIONAL,
+ gNB-CU-NameUTF8String GNB-CU-NameUTF8String OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { Extended-GNB-CU-Name-ExtIEs } } OPTIONAL,
...
}
@@ -2148,7 +2910,7 @@ GNB-CU-NameUTF8String ::= UTF8String(SIZE(1..150,...))
Extended-GNB-DU-Name ::= SEQUENCE {
gNB-DU-NameVisibleString GNB-DU-NameVisibleString OPTIONAL,
- gNB-DU-NameUTF8String GNB-DU-NameUTF8String OPTIONAL,
+ gNB-DU-NameUTF8String GNB-DU-NameUTF8String OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { Extended-GNB-DU-Name-ExtIEs } } OPTIONAL,
...
}
@@ -2184,7 +2946,10 @@ GNB-DU-System-Information-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-SIB12-message CRITICALITY ignore EXTENSION SIB12-message PRESENCE optional}|
{ ID id-SIB13-message CRITICALITY ignore EXTENSION SIB13-message PRESENCE optional}|
{ ID id-SIB14-message CRITICALITY ignore EXTENSION SIB14-message PRESENCE optional}|
- { ID id-SIB10-message CRITICALITY ignore EXTENSION SIB10-message PRESENCE optional},
+ { ID id-SIB10-message CRITICALITY ignore EXTENSION SIB10-message PRESENCE optional}|
+ { ID id-SIB17-message CRITICALITY ignore EXTENSION SIB17-message PRESENCE optional}|
+ { ID id-SIB20-message CRITICALITY ignore EXTENSION SIB20-message PRESENCE optional}|
+ { ID id-SIB15-message CRITICALITY ignore EXTENSION SIB15-message PRESENCE optional},
...
}
@@ -2193,15 +2958,28 @@ GNB-DUConfigurationQuery ::= ENUMERATED {true, ...}
GNBDUOverloadInformation ::= ENUMERATED {overloaded, not-overloaded}
GNB-DU-TNL-Association-To-Remove-Item::= SEQUENCE {
- tNLAssociationTransportLayerAddress CP-TransportLayerAddress ,
+ tNLAssociationTransportLayerAddress CP-TransportLayerAddress ,
tNLAssociationTransportLayerAddressgNBCU CP-TransportLayerAddress OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { GNB-DU-TNL-Association-To-Remove-Item-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { GNB-DU-TNL-Association-To-Remove-Item-ExtIEs} } OPTIONAL
}
GNB-DU-TNL-Association-To-Remove-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+GNBDUUESliceMaximumBitRateList::= SEQUENCE (SIZE(1.. maxnoofSMBRValues)) OF GNBDUUESliceMaximumBitRateItem
+
+GNBDUUESliceMaximumBitRateItem::= SEQUENCE {
+ sNSSAI SNSSAI,
+ uESliceMaximumBitRateUL BitRate,
+ iE-Extensions ProtocolExtensionContainer { { GNBDUUESliceMaximumBitRateItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GNBDUUESliceMaximumBitRateItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
GNB-RxTxTimeDiff ::= SEQUENCE {
rxTxTimeDiff GNBRxTxTimeDiffMeas,
additionalPath-List AdditionalPath-List OPTIONAL,
@@ -2209,7 +2987,8 @@ GNB-RxTxTimeDiff ::= SEQUENCE {
}
GNB-RxTxTimeDiff-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
-
+ { ID id-ExtendedAdditionalPathList CRITICALITY ignore EXTENSION ExtendedAdditionalPathList PRESENCE optional}|
+ { ID id-TRPTEGInformation CRITICALITY ignore EXTENSION TRPTEGInformation PRESENCE optional },
...
}
@@ -2220,7 +2999,7 @@ GNBRxTxTimeDiffMeas ::= CHOICE {
k3 INTEGER (0.. 246257),
k4 INTEGER (0.. 123129),
k5 INTEGER (0.. 61565),
- choice-extension ProtocolIE-SingleContainer { { GNBRxTxTimeDiffMeas-ExtIEs } }
+ choice-extension ProtocolIE-SingleContainer { { GNBRxTxTimeDiffMeas-ExtIEs } }
}
GNBRxTxTimeDiffMeas-ExtIEs F1AP-PROTOCOL-IES ::= {
@@ -2246,7 +3025,7 @@ GTPTLA-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
GTPTunnel ::= SEQUENCE {
transportLayerAddress TransportLayerAddress,
gTP-TEID GTP-TEID,
- iE-Extensions ProtocolExtensionContainer { { GTPTunnel-ExtIEs } } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { GTPTunnel-ExtIEs } } OPTIONAL,
...
}
@@ -2289,10 +3068,37 @@ HSNAUplink ::= ENUMERATED { hard, soft, notavailable }
HSNATransmissionPeriodicity ::= ENUMERATED { ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms5, ms10, ms20, ms40, ms80, ms160, ...}
+HashedUEIdentityIndexValue ::= BIT STRING (SIZE(13, ...))
+
+
-- I
IAB-Barred ::= ENUMERATED {barred, not-barred, ...}
+IABConditionalRRCMessageDeliveryIndication ::= ENUMERATED {true, ...}
+
+IABCongestionIndication ::= SEQUENCE {
+ iAB-Congestion-Indication-List IAB-Congestion-Indication-List,
+ iE-Extensions ProtocolExtensionContainer { { IAB-Congestion-Indication-List-ExtIEs } } OPTIONAL
+}
+
+IAB-Congestion-Indication-List-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-Congestion-Indication-List ::= SEQUENCE (SIZE(1..maxnoofIABCongInd)) OF IAB-Congestion-Indication-Item
+
+IAB-Congestion-Indication-Item ::= SEQUENCE {
+ childNodeIdentifier BAPAddress,
+ bHRLCCHList BHRLCCHList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { IAB-Congestion-Indication-ItemExtIEs } } OPTIONAL
+}
+
+IAB-Congestion-Indication-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
IAB-Info-IAB-donor-CU ::= SEQUENCE{
iAB-STC-Info IAB-STC-Info OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { IAB-Info-IAB-donor-CU-ExtIEs } } OPTIONAL
@@ -2305,7 +3111,7 @@ IAB-Info-IAB-donor-CU-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
IAB-Info-IAB-DU ::= SEQUENCE{
multiplexingInfo MultiplexingInfo OPTIONAL,
iAB-STC-Info IAB-STC-Info OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { IAB-Info-IAB-DU-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { IAB-Info-IAB-DU-ExtIEs } } OPTIONAL
}
IAB-Info-IAB-DU-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -2324,6 +3130,52 @@ IAB-MT-Cell-List-Item ::= SEQUENCE {
}
IAB-MT-Cell-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-DU-RX-MT-RX-Extend CRITICALITY ignore EXTENSION DU-RX-MT-RX-Extend PRESENCE optional }|
+ { ID id-DU-TX-MT-TX-Extend CRITICALITY ignore EXTENSION DU-TX-MT-TX-Extend PRESENCE optional }|
+ { ID id-DU-RX-MT-TX-Extend CRITICALITY ignore EXTENSION DU-RX-MT-TX-Extend PRESENCE optional }|
+ { ID id-DU-TX-MT-RX-Extend CRITICALITY ignore EXTENSION DU-TX-MT-RX-Extend PRESENCE optional },
+ ...
+}
+
+
+
+IAB-MT-Cell-NA-Resource-Configuration-Mode-Info ::= CHOICE {
+ fDD IAB-MT-Cell-NA-Resource-Configuration-FDD-Info,
+ tDD IAB-MT-Cell-NA-Resource-Configuration-TDD-Info,
+ choice-extension ProtocolIE-SingleContainer { { IAB-MT-Cell-NA-Resource-Configuration-Mode-Info-ExtIEs} }
+}
+
+IAB-MT-Cell-NA-Resource-Configuration-Mode-Info-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+IAB-MT-Cell-NA-Resource-Configuration-FDD-Info ::= SEQUENCE {
+ gNB-DU-Cell-NA-Resource-Configuration-FDD-UL GNB-DU-Cell-Resource-Configuration,
+ gNB-DU-Cell-NA-Resource-Configuration-FDD-DL GNB-DU-Cell-Resource-Configuration,
+ uL-FreqInfo NRFreqInfo OPTIONAL,
+ uL-Transmission-Bandwidth Transmission-Bandwidth OPTIONAL,
+ uL-NR-Carrier-List NRCarrierList OPTIONAL,
+ dL-FreqInfo NRFreqInfo OPTIONAL,
+ dL-Transmission-Bandwidth Transmission-Bandwidth OPTIONAL,
+ dL-NR-Carrier-List NRCarrierList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IAB-MT-Cell-NA-Resource-Configuration-FDD-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-MT-Cell-NA-Resource-Configuration-FDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-MT-Cell-NA-Resource-Configuration-TDD-Info ::= SEQUENCE {
+ gNB-DU-Cell-NA-Resourc-Configuration-TDD GNB-DU-Cell-Resource-Configuration,
+ nRFreqInfo NRFreqInfo OPTIONAL,
+ transmission-Bandwidth Transmission-Bandwidth OPTIONAL,
+ nR-Carrier-List NRCarrierList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IAB-MT-Cell-NA-Resource-Configuration-TDD-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-MT-Cell-NA-Resource-Configuration-TDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -2354,7 +3206,7 @@ IAB-STC-Info-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
IAB-Allocated-TNL-Address-Item ::= SEQUENCE {
iABTNLAddress IABTNLAddress,
iABTNLAddressUsage IABTNLAddressUsage OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { IAB-Allocated-TNL-Address-Item-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { IAB-Allocated-TNL-Address-Item-ExtIEs } } OPTIONAL
}
IAB-Allocated-TNL-Address-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -2379,6 +3231,12 @@ IAB-DU-Cell-Resource-Configuration-FDD-Info ::= SEQUENCE {
}
IAB-DU-Cell-Resource-Configuration-FDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-uL-FreqInfo CRITICALITY reject EXTENSION NRFreqInfo PRESENCE optional}|
+ {ID id-uL-Transmission-Bandwidth CRITICALITY reject EXTENSION Transmission-Bandwidth PRESENCE optional}|
+ {ID id-uL-NR-Carrier-List CRITICALITY reject EXTENSION NRCarrierList PRESENCE optional}|
+ {ID id-dL-FreqInfo CRITICALITY reject EXTENSION NRFreqInfo PRESENCE optional}|
+ {ID id-dL-Transmission-Bandwidth CRITICALITY reject EXTENSION Transmission-Bandwidth PRESENCE optional}|
+ {ID id-dL-NR-Carrier-List CRITICALITY reject EXTENSION NRCarrierList PRESENCE optional},
...
}
@@ -2389,12 +3247,15 @@ IAB-DU-Cell-Resource-Configuration-TDD-Info ::= SEQUENCE {
}
IAB-DU-Cell-Resource-Configuration-TDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-nRFreqInfo CRITICALITY reject EXTENSION NRFreqInfo PRESENCE optional}|
+ {ID id-transmission-Bandwidth CRITICALITY reject EXTENSION Transmission-Bandwidth PRESENCE optional}|
+ {ID id-nR-Carrier-List CRITICALITY reject EXTENSION NRCarrierList PRESENCE optional},
...
}
IABIPv6RequestType ::= CHOICE {
iPv6Address IABTNLAddressesRequested,
- iPv6Prefix IABTNLAddressesRequested,
+ iPv6Prefix IABTNLAddressesRequested,
choice-extension ProtocolIE-SingleContainer { { IABIPv6RequestType-ExtIEs} }
}
@@ -2403,9 +3264,9 @@ IABIPv6RequestType-ExtIEs F1AP-PROTOCOL-IES ::= {
}
IABTNLAddress ::= CHOICE {
- iPv4Address BIT STRING (SIZE(32)),
- iPv6Address BIT STRING (SIZE(128)),
- iPv6Prefix BIT STRING (SIZE(64)),
+ iPv4Address BIT STRING (SIZE(32)),
+ iPv6Address BIT STRING (SIZE(128)),
+ iPv6Prefix BIT STRING (SIZE(64)),
choice-extension ProtocolIE-SingleContainer { { IABTNLAddress-ExtIEs} }
}
@@ -2427,13 +3288,33 @@ IABTNLAddressesRequested-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
IAB-TNL-Addresses-To-Remove-Item ::= SEQUENCE {
iABTNLAddress IABTNLAddress,
- iE-Extensions ProtocolExtensionContainer { { IAB-TNL-Addresses-To-Remove-Item-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { IAB-TNL-Addresses-To-Remove-Item-ExtIEs} } OPTIONAL
}
IAB-TNL-Addresses-To-Remove-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+IAB-TNL-Addresses-Exception ::= SEQUENCE {
+ iABTNLAddressList IABTNLAddressList,
+ iE-Extensions ProtocolExtensionContainer { { IAB-TNL-Addresses-Exception-ExtIEs} } OPTIONAL
+}
+
+IAB-TNL-Addresses-Exception-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IABTNLAddressList ::= SEQUENCE (SIZE(1.. maxnoofTLAsIAB)) OF IABTNLAddress-Item
+
+IABTNLAddress-Item ::= SEQUENCE {
+ iABTNLAddress IABTNLAddress ,
+ iE-Extensions ProtocolExtensionContainer { { IABTNLAddress-ItemExtIEs } } OPTIONAL
+}
+
+IABTNLAddress-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
IABTNLAddressUsage ::= ENUMERATED {
f1-c,
f1-u,
@@ -2451,7 +3332,7 @@ IABv4AddressesRequested-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-ImplicitFormat ::= SEQUENCE {
+ImplicitFormat ::= SEQUENCE {
dUFSlotformatIndex DUFSlotformatIndex,
iE-Extensions ProtocolExtensionContainer { { ImplicitFormat-ExtIEs } } OPTIONAL
}
@@ -2468,13 +3349,20 @@ InactivityMonitoringResponse ::= ENUMERATED { not-supported,...}
InterfacesToTrace ::= BIT STRING (SIZE(8))
IntendedTDD-DL-ULConfig ::= SEQUENCE {
- nRSCS ENUMERATED { scs15, scs30, scs60, scs120,...},
+ nRSCS ENUMERATED { scs15, scs30, scs60, scs120,..., scs480, scs960},
nRCP ENUMERATED { normal, extended,...},
nRDLULTxPeriodicity ENUMERATED { ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms3, ms4, ms5, ms10, ms20, ms40, ms60, ms80, ms100, ms120, ms140, ms160, ...},
slot-Configuration-List Slot-Configuration-List,
iE-Extensions ProtocolExtensionContainer { {IntendedTDD-DL-ULConfig-ExtIEs} } OPTIONAL
}
+InterFrequencyConfig-NoGap ::= ENUMERATED {
+ true,
+ ...
+}
+
+IngressNonF1terminatingTopologyIndicator ::= ENUMERATED {true, ...}
+
IntendedTDD-DL-ULConfig-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -2501,7 +3389,7 @@ IPtolayer2TrafficMappingInfo ::= SEQUENCE {
IPtolayer2TrafficMappingInfoList ::= SEQUENCE (SIZE(1..maxnoofMappingEntries)) OF IPtolayer2TrafficMappingInfo-Item
IPtolayer2TrafficMappingInfo-Item ::= SEQUENCE {
- mappingInformationIndex MappingInformationIndex,
+ mappingInformationIndex MappingInformationIndex,
iPHeaderInformation IPHeaderInformation,
bHInfo BHInfo, iE-Extensions ProtocolExtensionContainer { { IPtolayer2TrafficMappingInfo-ItemExtIEs} } OPTIONAL,
...
@@ -2518,7 +3406,7 @@ IPtolayer2TrafficMappingInfo-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
-- L
L139Info ::= SEQUENCE {
- msg1SCS ENUMERATED {scs15, scs30, scs60, scs120, ...},
+ prachSCS ENUMERATED {scs15, scs30, scs60, scs120, ..., scs480, scs960},
rootSequenceIndex INTEGER (0..137) OPTIONAL,
iE-Extension ProtocolExtensionContainer { {L139Info-ExtIEs} } OPTIONAL,
...
@@ -2540,18 +3428,43 @@ L839Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+L571Info ::= SEQUENCE {
+ prachSCSForL571 ENUMERATED { scs30, scs120, ... , scs480},
+ rootSequenceIndex INTEGER (0..569),
+ iE-Extension ProtocolExtensionContainer { {L571Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+L571Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+L1151Info ::= SEQUENCE {
+ prachSCSForL1151 ENUMERATED { scs15, scs120,...},
+ rootSequenceIndex INTEGER (0..1149),
+ iE-Extension ProtocolExtensionContainer { {L1151Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+L1151Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+LastUsedCellIndication ::= ENUMERATED {true, ...}
+
LCID ::= INTEGER (1..32, ...)
-LCS-to-GCS-TranslationAoA::= SEQUENCE {
+LCS-to-GCS-Translation::= SEQUENCE {
alpha INTEGER (0..3599),
beta INTEGER (0..3599),
gamma INTEGER (0..3599),
- iE-Extensions ProtocolExtensionContainer { { LCS-to-GCS-TranslationAoA-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { LCS-to-GCS-Translation-ExtIEs} } OPTIONAL,
...
}
-LCS-to-GCS-TranslationAoA-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+LCS-to-GCS-Translation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -2575,6 +3488,20 @@ LMF-MeasurementID ::= INTEGER (1.. 65536, ...)
LMF-UE-MeasurementID ::= INTEGER (1.. 256, ...)
+LocationDependentMBSF1UInformation ::= SEQUENCE (SIZE(1..maxnoofMBSAreaSessionIDs)) OF LocationDependentMBSF1UInformation-Item
+LocationDependentMBSF1UInformation-Item ::= SEQUENCE {
+ mbsAreaSession-ID MBS-Area-Session-ID,
+ mbs-f1u-info-at-CU UPTransportLayerInformation,
+ iE-Extensions ProtocolExtensionContainer { { LocationDependentMBSF1UInformation-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+LocationDependentMBSF1UInformation-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+LocationMeasurementInformation ::= OCTET STRING
+
LocationUncertainty ::= SEQUENCE {
horizontalUncertainty INTEGER (0..255),
horizontalConfidence INTEGER (0..100),
@@ -2597,6 +3524,20 @@ LowerLayerPresenceStatusChange ::= ENUMERATED {
}
+LoS-NLoSIndicatorHard ::= ENUMERATED {nLoS, loS}
+
+LoS-NLoSIndicatorSoft ::= INTEGER (0..10)
+
+LoS-NLoSInformation ::= CHOICE {
+ loS-NLoSIndicatorSoft LoS-NLoSIndicatorSoft,
+ loS-NLoSIndicatorHard LoS-NLoSIndicatorHard,
+ choice-Extension ProtocolIE-SingleContainer {{ LoS-NLoSInformation-ExtIEs}}
+}
+
+LoS-NLoSInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
LTEUESidelinkAggregateMaximumBitrate ::= SEQUENCE {
uELTESidelinkAggregateMaximumBitrate BitRate,
iE-Extensions ProtocolExtensionContainer { {LTEUESidelinkAggregateMaximumBitrate-ExtIEs} } OPTIONAL
@@ -2624,9 +3565,200 @@ MappingInformationtoRemove ::= SEQUENCE (SIZE(1..maxnoofMappingEntries)) OF Mapp
MaskedIMEISV ::= BIT STRING (SIZE (64))
-MaxDataBurstVolume ::= INTEGER (0..4095, ..., 4096.. 2000000)
+MaxDataBurstVolume ::= INTEGER (0..4095, ..., 4096.. 2000000)
MaxPacketLossRate ::= INTEGER (0..1000)
+MBS-Broadcast-NeighbourCellList ::= OCTET STRING
+
+MBS-Flows-Mapped-To-MRB-List ::= SEQUENCE (SIZE(1.. maxnoofMBSQoSFlows)) OF MBS-Flows-Mapped-To-MRB-Item
+
+MBS-Flows-Mapped-To-MRB-Item ::= SEQUENCE {
+ mBS-QoSFlowIdentifier QoSFlowIdentifier,
+ mbs-QoSFlowLevelQoSParameters QoSFlowLevelQoSParameters,
+ iE-Extensions ProtocolExtensionContainer { { MBS-Flows-Mapped-To-MRB-Item-ExtIEs} } OPTIONAL
+}
+
+MBS-Flows-Mapped-To-MRB-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBSF1UInformation ::= SEQUENCE {
+ mbs-f1u-info UPTransportLayerInformation,
+ iE-Extensions ProtocolExtensionContainer { { MBSF1UInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSF1UInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSInterestIndication ::= OCTET STRING
+
+MBS-Session-ID ::= SEQUENCE {
+ tMGI TMGI,
+ nID NID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-Session-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-Session-ID-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-Area-Session-ID ::= INTEGER (0..65535, ...)
+
+
+MBS-CUtoDURRCInformation ::= SEQUENCE {
+ mBS-Broadcast-Cell-List MBS-Broadcast-Cell-List,
+ mBS-Broadcast-MRB-List MBS-Broadcast-MRB-List,
+ iE-Extensions ProtocolExtensionContainer { { MBS-CUtoDURRCInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBS-CUtoDURRCInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-Broadcast-Cell-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF MBS-Broadcast-Cell-Item
+
+MBS-Broadcast-Cell-Item ::= SEQUENCE {
+ nRCGI NRCGI,
+ mtch-neighbourCell OCTET STRING OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-Broadcast-Cell-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-Broadcast-Cell-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-Broadcast-MRB-List ::= SEQUENCE (SIZE(1.. maxnoofMRBs)) OF MBS-Broadcast-MRB-Item
+
+MBS-Broadcast-MRB-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-PDCP-Config-Broadcast OCTET STRING,
+ iE-Extensions ProtocolExtensionContainer { { MBS-Broadcast-MRB-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-Broadcast-MRB-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSMulticastF1UContextDescriptor ::= SEQUENCE {
+ multicastF1UContextReferenceF1 MulticastF1UContextReferenceF1,
+ mc-F1UCtxtusage ENUMERATED {ptm, ptp, ptp-retransmission, ptp-forwarding, ...},
+ mbsAreaSession MBS-Area-Session-ID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{MBSMulticastF1UContextDescriptor-ExtIEs}} OPTIONAL,
+ ...
+}
+
+MBSMulticastF1UContextDescriptor-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+MulticastF1UContext-ToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mbs-f1u-info-at-DU UPTransportLayerInformation,
+ mbsProgressInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MulticastF1UContext-ToBeSetup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastF1UContext-ToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastF1UContext-Setup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mbs-f1u-info-at-CU UPTransportLayerInformation,
+ iE-Extensions ProtocolExtensionContainer { {MulticastF1UContext-Setup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastF1UContext-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MulticastF1UContext-FailedToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MulticastF1UContext-FailedToBeSetup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastF1UContext-FailedToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+MBSPTPRetransmissionTunnelRequired ::= ENUMERATED {true, ...}
+
+
+MBS-ServiceArea ::= CHOICE {
+ locationindependent MBS-ServiceAreaInformation,
+ locationdependent MBS-ServiceAreaInformationList,
+ choice-Extensions ProtocolIE-SingleContainer { {MBSServiceArea-ExtIEs} }
+}
+
+MBSServiceArea-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+
+MBS-ServiceAreaInformation ::= SEQUENCE {
+ mBS-ServiceAreaCellList MBS-ServiceAreaCellList OPTIONAL,
+ mBS-ServiceAreaTAIList MBS-ServiceAreaTAIList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ServiceAreaCellList ::= SEQUENCE (SIZE(1.. maxnoofCellsforMBS)) OF NRCGI
+
+MBS-ServiceAreaTAIList ::= SEQUENCE (SIZE(1.. maxnoofTAIforMBS)) OF MBS-ServiceAreaTAIList-Item
+MBS-ServiceAreaTAIList-Item ::= SEQUENCE {
+ plmn-ID PLMN-Identity,
+ five5-TAC FiveGS-TAC,
+ iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaTAIList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaTAIList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBS-ServiceAreaInformationList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-ServiceAreaInformationItem
+
+MBS-ServiceAreaInformationItem ::= SEQUENCE {
+ mBS-AreaSessionID MBS-Area-Session-ID,
+ mBS-ServiceAreaInformation MBS-ServiceAreaInformation,
+ iE-Extensions ProtocolExtensionContainer { { MBS-ServiceAreaInformationItem-ExtIEs} } OPTIONAL,
+ ...
+}
+MBS-ServiceAreaInformationItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MC-PagingCell-Item ::= SEQUENCE {
+ nRCGI NRCGI,
+ iE-Extensions ProtocolExtensionContainer { { MC-PagingCell-ItemExtIEs } } OPTIONAL
+}
+
+MC-PagingCell-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
MIB-message ::= OCTET STRING
MeasConfig ::= OCTET STRING
@@ -2635,6 +3767,8 @@ MeasGapConfig ::= OCTET STRING
MeasGapSharingConfig ::= OCTET STRING
+PosMeasurementAmount ::= ENUMERATED {ma0, ma1, ma2, ma4, ma8, ma16, ma32, ma64}
+
MeasurementBeamInfoRequest ::= ENUMERATED {true, ...}
MeasurementBeamInfo ::= SEQUENCE {
@@ -2653,6 +3787,174 @@ MeasurementTimingConfiguration ::= OCTET STRING
MessageIdentifier ::= BIT STRING (SIZE (16))
+
+MeasurementTimeOccasion ::= ENUMERATED {o1, o4, ...}
+
+MeasurementCharacteristicsRequestIndicator ::= BIT STRING (SIZE (16))
+
+MRB-ProgressInformation ::= CHOICE {
+ pdcp-SN12 INTEGER (0..4095),
+ pdcp-SN18 INTEGER (0..262143),
+ choice-extension ProtocolIE-SingleContainer { { MRB-ProgressInformation-ExtIEs} }
+}
+
+MRB-ProgressInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+MulticastF1UContextReferenceF1 ::= OCTET STRING (SIZE(4))
+
+MulticastF1UContextReferenceCU ::= OCTET STRING (SIZE(4))
+
+MultipleULAoA ::= SEQUENCE {
+ multipleULAoA MultipleULAoA-List,
+ iE-Extensions ProtocolExtensionContainer { { MultipleULAoA-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MultipleULAoA-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MultipleULAoA-List ::= SEQUENCE (SIZE(1.. maxnoofULAoAs)) OF MultipleULAoA-Item
+
+MultipleULAoA-Item ::= CHOICE {
+ uL-AoA UL-AoA,
+ ul-ZoA ZoAInformation,
+ choice-extension ProtocolIE-SingleContainer { { MultipleULAoA-Item-ExtIEs } }
+}
+
+MultipleULAoA-Item-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+MDTPollutedMeasurementIndicator ::= ENUMERATED {iDC,no-IDC, ...}
+
+MRB-ID ::= INTEGER (1..512, ...)
+
+MulticastMBSSessionList ::= SEQUENCE (SIZE(1..maxnoofMBSSessionsofUE)) OF MulticastMBSSessionList-Item
+MulticastMBSSessionList-Item ::= SEQUENCE {
+ mbsSessionId MBS-Session-ID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMBSSessionList-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MulticastMBSSessionList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-FailedToBeModified-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-FailedtoBeModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-FailedtoBeModified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-FailedToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-FailedToBeSetup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-FailedToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-FailedToBeSetupMod-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-FailedToBeSetupMod-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-FailedToBeSetupMod-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-Modified-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-Modified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-Modified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-Setup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-Setup-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-SetupMod-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-SetupMod-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-SetupMod-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-ToBeModified-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-QoSInformation QoSFlowLevelQoSParameters OPTIONAL,
+ mBS-Flows-Mapped-To-MRB-List MBS-Flows-Mapped-To-MRB-List OPTIONAL,
+ mBS-DL-PDCP-SN-Length PDCPSNLength OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-ToBeModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-ToBeModified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-ToBeReleased-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-ToBeReleased-ItemExtIEs } } OPTIONAL,
+ ...
+}
+
+MulticastMRBs-ToBeReleased-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-ToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-QoSInformation QoSFlowLevelQoSParameters,
+ mBS-Flows-Mapped-To-MRB-List MBS-Flows-Mapped-To-MRB-List,
+ mBS-DL-PDCP-SN-Length PDCPSNLength,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-ToBeSetup-Item-ExtIEs} },
+ ...
+}
+
+MulticastMRBs-ToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastMRBs-ToBeSetupMod-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mRB-QoSInformation QoSFlowLevelQoSParameters,
+ mBS-Flows-Mapped-To-MRB-List MBS-Flows-Mapped-To-MRB-List,
+ mBS-DL-PDCP-SN-Length PDCPSNLength,
+ iE-Extensions ProtocolExtensionContainer { { MulticastMRBs-ToBeSetupMod-Item-ExtIEs} },
+ ...
+}
+
+MulticastMRBs-ToBeSetupMod-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
MultiplexingInfo ::= SEQUENCE{
iAB-MT-Cell-List IAB-MT-Cell-List,
iE-Extensions ProtocolExtensionContainer { {MultiplexingInfo-ExtIEs} } OPTIONAL
@@ -2673,10 +3975,13 @@ M5Configuration ::= SEQUENCE {
}
M5Configuration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-M5ReportAmount CRITICALITY ignore EXTENSION M5ReportAmount PRESENCE optional },
...
}
-M5period ::= ENUMERATED { ms1024, ms2048, ms5120, ms10240, min1, ... }
+M5period ::= ENUMERATED { ms1024, ms2048, ms5120, ms10240, min1, ... }
+
+M5ReportAmount ::= ENUMERATED { r1, r2, r4, r8, r16, r32, r64, infinity, ... }
M5-Links-to-log ::= ENUMERATED {uplink, downlink, both-uplink-and-downlink, ...}
@@ -2689,11 +3994,13 @@ M6Configuration ::= SEQUENCE {
}
M6Configuration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-M6ReportAmount CRITICALITY ignore EXTENSION M6ReportAmount PRESENCE optional },
...
}
-M6report-Interval ::= ENUMERATED { ms120, ms240, ms640, ms1024, ms2048, ms5120, ms10240, ms20480, ms40960, min1, min6, min12, min30, ... }
+M6report-Interval ::= ENUMERATED { ms120, ms240, ms640, ms1024, ms2048, ms5120, ms10240, ms20480, ms40960, min1, min6, min12, min30, ..., ms480}
+M6ReportAmount ::= ENUMERATED { r1, r2, r4, r8, r16, r32, r64, infinity, ... }
M6-Links-to-log ::= ENUMERATED {uplink, downlink, both-uplink-and-downlink, ...}
@@ -2707,14 +4014,17 @@ M7Configuration ::= SEQUENCE {
}
M7Configuration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-M7ReportAmount CRITICALITY ignore EXTENSION M7ReportAmount PRESENCE optional},
...
}
M7period ::= INTEGER(1..60, ...)
+M7ReportAmount ::= ENUMERATED { r1, r2, r4, r8, r16, r32, r64, infinity, ... }
+
M7-Links-to-log ::= ENUMERATED {downlink, ...}
-MDT-Activation ::= ENUMERATED {
+MDT-Activation ::= ENUMERATED {
immediate-MDT-only,
immediate-MDT-and-Trace,
...
@@ -2741,6 +4051,7 @@ MDTConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMN-Identity
+MDTPLMNModificationList ::= SEQUENCE (SIZE(0..maxnoofMDTPLMNs)) OF PLMN-Identity
MeasuredResultsValue ::= CHOICE {
uL-AngleOfArrival UL-AoA,
@@ -2751,17 +4062,70 @@ MeasuredResultsValue ::= CHOICE {
}
MeasuredResultsValue-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-ZoAInformation CRITICALITY reject TYPE ZoAInformation PRESENCE mandatory}|
+ { ID id-MultipleULAoA CRITICALITY reject TYPE MultipleULAoA PRESENCE mandatory}|
+ { ID id-UL-SRS-RSRPP CRITICALITY reject TYPE UL-SRS-RSRPP PRESENCE mandatory},
...
}
MeasurementsToActivate ::= BIT STRING (SIZE (8))
+MUSIM-GapConfig ::= OCTET STRING
+
+
-- N
+NA-Resource-Configuration-List ::= SEQUENCE (SIZE(1.. maxnoofHSNASlots)) OF NA-Resource-Configuration-Item
+
+NA-Resource-Configuration-Item ::= SEQUENCE {
+ nADownlink NADownlink OPTIONAL,
+ nAUplink NAUplink OPTIONAL,
+ nAFlexible NAFlexible OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { NA-Resource-Configuration-Item-ExtIEs} } OPTIONAL
+}
+
+NA-Resource-Configuration-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NADownlink ::= ENUMERATED { true, false, ...}
+NAFlexible ::= ENUMERATED { true, false, ...}
+NAUplink ::= ENUMERATED { true, false, ...}
+
+Ncd-SSB-RedCapInitialBWP-SDT ::= OCTET STRING
+
+Neighbour-Node-Cells-List ::= SEQUENCE (SIZE(1..maxnoofNeighbourNodeCellsIAB)) OF Neighbour-Node-Cells-List-Item
+
+Neighbour-Node-Cells-List-Item ::= SEQUENCE{
+ nRCGI NRCGI,
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID OPTIONAL,
+ gNB-DU-UE-F1AP-ID GNB-DU-UE-F1AP-ID OPTIONAL,
+ peer-Parent-Node-Indicator ENUMERATED {true, ...} OPTIONAL,
+ iAB-DU-Cell-Resource-Configuration-Mode-Info IAB-DU-Cell-Resource-Configuration-Mode-Info OPTIONAL,
+ iAB-STC-Info IAB-STC-Info OPTIONAL,
+ rACH-Config-Common RACH-Config-Common OPTIONAL,
+ rACH-Config-Common-IAB RACH-Config-Common-IAB OPTIONAL,
+ cSI-RS-Configuration OCTET STRING OPTIONAL,
+ sR-Configuration OCTET STRING OPTIONAL,
+ pDCCH-ConfigSIB1 OCTET STRING OPTIONAL,
+ sCS-Common OCTET STRING OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{Neighbour-Node-Cells-List-Item-ExtIEs}} OPTIONAL
+}
+
+Neighbour-Node-Cells-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
NeedforGap::= ENUMERATED {true, ...}
+NeedForGapsInfoNR ::= OCTET STRING
+
+NeedForGapNCSGInfoNR ::= OCTET STRING
+
+NeedForGapNCSGInfoEUTRA ::= OCTET STRING
+
Neighbour-Cell-Information-Item ::= SEQUENCE {
- nRCGI NRCGI,
+ nRCGI NRCGI,
intendedTDD-DL-ULConfig IntendedTDD-DL-ULConfig OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { Neighbour-Cell-Information-ItemExtIEs } } OPTIONAL
}
@@ -2770,6 +4134,21 @@ Neighbour-Cell-Information-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+NeighbourNR-CellsForSON-List ::= SEQUENCE (SIZE(1.. maxNeighbourCellforSON)) OF NeighbourNR-CellsForSON-Item
+
+NeighbourNR-CellsForSON-Item ::= SEQUENCE {
+ nRCGI NRCGI,
+ nR-ModeInfoRel16 NR-ModeInfoRel16 OPTIONAL,
+ sSB-PositionsInBurst SSB-PositionsInBurst OPTIONAL,
+ nRPRACHConfig NRPRACHConfig OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { NeighbourNR-CellsForSON-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NeighbourNR-CellsForSON-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
NGRANAllocationAndRetentionPriority ::= SEQUENCE {
priorityLevel PriorityLevel,
pre-emptionCapability Pre-emptionCapability,
@@ -2791,7 +4170,7 @@ NGRANHighAccuracyAccessPointPosition ::= SEQUENCE {
orientationOfMajorAxis INTEGER (0..179),
horizontalConfidence INTEGER (0..100),
uncertaintyAltitude INTEGER (0..255),
- verticalConfidence INTEGER (0..100),
+ verticalConfidence INTEGER (0..100),
iE-Extensions ProtocolExtensionContainer { { NGRANHighAccuracyAccessPointPosition-ExtIEs} } OPTIONAL
}
@@ -2802,6 +4181,11 @@ NGRANHighAccuracyAccessPointPosition-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
NID ::= BIT STRING (SIZE(44))
+NonF1terminatingTopologyIndicator ::= ENUMERATED {
+ true,
+ ...
+}
+
NR-CGI-List-For-Restart-Item ::= SEQUENCE {
nRCGI NRCGI,
iE-Extensions ProtocolExtensionContainer { { NR-CGI-List-For-Restart-ItemExtIEs } } OPTIONAL,
@@ -2812,6 +4196,8 @@ NR-CGI-List-For-Restart-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+NrofSymbolsExtended ::= ENUMERATED {n8, n10, n12, n14, ...}
+
NR-PRSBeamInformation ::= SEQUENCE {
nR-PRSBeamInformationList NR-PRSBeamInformationList,
lCStoGCSTranslationList LCStoGCSTranslationList OPTIONAL,
@@ -2827,13 +4213,60 @@ NR-PRSBeamInformationList ::= SEQUENCE (SIZE(1.. maxnoofPRS-ResourceSets)) OF NR
NR-PRSBeamInformationItem ::= SEQUENCE {
pRSResourceSetID PRS-Resource-Set-ID,
pRSAngleList PRSAngleList,
- iE-Extensions ProtocolExtensionContainer { { NR-PRSBeamInformationItem-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { NR-PRSBeamInformationItem-ExtIEs } } OPTIONAL
}
NR-PRSBeamInformationItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+NR-TADV ::= INTEGER (0.. 7690)
+
+NRRedCapUEIndication ::= ENUMERATED {true, ...}
+
+NRPagingeDRXInformation ::= SEQUENCE {
+ nrpaging-eDRX-Cycle-Idle NRPaging-eDRX-Cycle-Idle,
+ nrpaging-Time-Window NRPaging-Time-Window OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {NRPagingeDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRPagingeDRXInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NRPaging-eDRX-Cycle-Idle ::= ENUMERATED {
+ hfquarter, hfhalf, hf1, hf2, hf4,
+ hf8, hf16, hf32, hf64, hf128, hf256, hf512, hf1024,
+ ...
+}
+
+
+NRPaging-Time-Window ::= ENUMERATED {
+ s1, s2, s3, s4, s5,
+ s6, s7, s8, s9, s10,
+ s11, s12, s13, s14, s15, s16,
+ ...,
+ s17, s18, s19, s20, s21,
+ s22, s23, s24, s25, s26,
+ s27, s28, s29, s30, s31, s32
+}
+
+NRPagingeDRXInformationforRRCINACTIVE ::= SEQUENCE {
+ nrpaging-eDRX-Cycle-Inactive NRPaging-eDRX-Cycle-Inactive,
+ iE-Extensions ProtocolExtensionContainer { { NRPagingeDRXInformationforRRCINACTIVE-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRPagingeDRXInformationforRRCINACTIVE-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NRPaging-eDRX-Cycle-Inactive ::= ENUMERATED {
+ hfquarter, hfhalf, hf1,
+ ...
+}
+
NonDynamic5QIDescriptor ::= SEQUENCE {
fiveQI INTEGER (0..255, ...),
qoSPriorityLevel INTEGER (1..127) OPTIONAL,
@@ -2913,7 +4346,7 @@ NPN-Broadcast-Information-PNI-NPN-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
NPNSupportInfo ::= CHOICE {
sNPN-Information NID,
- choice-extension ProtocolIE-SingleContainer { { NPNSupportInfo-ExtIEs } }
+ choice-extension ProtocolIE-SingleContainer { { NPNSupportInfo-ExtIEs } }
}
NPNSupportInfo-ExtIEs F1AP-PROTOCOL-IES ::= {
@@ -2926,7 +4359,7 @@ NRCarrierItem ::= SEQUENCE {
carrierSCS NRSCS,
offsetToCarrier INTEGER (0..2199, ...),
carrierBandwidth INTEGER (0..maxnoofPhysicalResourceBlocks, ...),
- iE-Extension ProtocolExtensionContainer { {NRCarrierItem-ExtIEs} } OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {NRCarrierItem-ExtIEs} } OPTIONAL,
...
}
@@ -2965,9 +4398,19 @@ NR-Mode-Info ::= CHOICE {
}
NR-Mode-Info-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-NR-U CRITICALITY ignore TYPE NR-U-Channel-Info-List PRESENCE mandatory},
...
}
+NR-ModeInfoRel16 ::= CHOICE {
+ fDD FDD-InfoRel16,
+ tDD TDD-InfoRel16,
+ choice-extension ProtocolIE-SingleContainer { { NR-ModeInfoRel16-ExtIEs} }
+}
+
+NR-ModeInfoRel16-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
NRPRACHConfig ::= SEQUENCE {
@@ -2983,7 +4426,7 @@ NRPRACHConfig-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
NRCellIdentity ::= BIT STRING (SIZE(36))
-NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ...}
+NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ..., nrb33, nrb62, nrb124, nrb148, nrb248, nrb44, nrb58, nrb92, nrb119, nrb188, nrb242}
NRPCI ::= INTEGER(0..1007)
@@ -2993,11 +4436,11 @@ NRPRACHConfigList ::= SEQUENCE (SIZE(0..maxnoofPRACHconfigs)) OF NRPRACHConfigIt
NRPRACHConfigItem ::= SEQUENCE {
nRSCS NRSCS,
prachFreqStartfromCarrier INTEGER (0..maxnoofPhysicalResourceBlocks-1, ...),
- msg1FDM ENUMERATED {one, two, four, eight, ...},
- parchConfigIndex INTEGER (0..255, ..., 256..262),
- ssb-perRACH-Occasion ENUMERATED {oneEighth, oneFourth, oneHalf, one,
+ prachFDM ENUMERATED {one, two, four, eight, ...},
+ prachConfigIndex INTEGER (0..255, ..., 256..262),
+ ssb-perRACH-Occasion ENUMERATED {oneEighth, oneFourth, oneHalf, one,
two, four, eight, sixteen, ...},
- freqDomainLength FreqDomainLength,
+ freqDomainLength FreqDomainLength,
zeroCorrelZoneConfig INTEGER (0..15),
iE-Extension ProtocolExtensionContainer { { NRPRACHConfigItem-ExtIEs} } OPTIONAL,
...
@@ -3007,16 +4450,52 @@ NRPRACHConfigItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ...}
+NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ..., scs480, scs960}
NRUERLFReportContainer ::= OCTET STRING
+
+NR-U-Channel-Info-List ::= SEQUENCE (SIZE (1..maxnoofNR-UChannelIDs)) OF NR-U-Channel-Info-Item
+
+NR-U-Channel-Info-Item ::= SEQUENCE {
+ nr-U-channel-ID INTEGER(1.. maxnoofNR-UChannelIDs,...),
+ nR-ARFCN INTEGER (0..maxNRARFCN),
+ bandwidth ENUMERATED{mHz-10,mHz-20,mHz-40, mHz-60, mHz-80,...},
+ iE-Extensions ProtocolExtensionContainer { { NR-U-Channel-Info-List-ExtIEs } } OPTIONAL,
+ ...
+}
+
+NR-U-Channel-Info-List-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+NR-U-Channel-List ::= SEQUENCE (SIZE (1..maxnoofNR-UChannelIDs)) OF NR-U-Channel-Item
+
+NR-U-Channel-Item ::= SEQUENCE {
+ nR-U-ChannelID INTEGER(1..maxnoofNR-UChannelIDs),
+ channelOccupancyTimePercentageDL ChannelOccupancyTimePercentage,
+ energyDetectionThreshold EnergyDetectionThreshold,
+ iE-Extensions ProtocolExtensionContainer { { NR-U-Channel-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NR-U-Channel-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
NumberofActiveUEs ::= INTEGER(0..16777215, ...)
NumberOfBroadcasts ::= INTEGER (0..65535)
NumberofBroadcastRequest ::= INTEGER (0..65535)
+
+NumberOfTRPRxTEG ::= ENUMERATED {two, three, four, six, eight, ...}
+
+NumberOfTRPRxTxTEG ::= ENUMERATED {wo, three, four, six, eight, ...}
+
NumDLULSymbols ::= SEQUENCE {
numDLSymbols INTEGER (0..13, ...),
numULSymbols INTEGER (0..13, ...),
@@ -3024,6 +4503,7 @@ NumDLULSymbols ::= SEQUENCE {
}
NumDLULSymbols-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-permutation CRITICALITY ignore EXTENSION Permutation PRESENCE optional },
...
}
@@ -3053,10 +4533,25 @@ NZP-CSI-RS-ResourceID::= INTEGER (0..191)
OffsetToPointA ::= INTEGER (0..2199,...)
+OnDemandPRS-Info ::= SEQUENCE {
+ onDemandPRSRequestAllowed BIT STRING (SIZE (16)),
+ allowedResourceSetPeriodicityValues BIT STRING (SIZE (24)) OPTIONAL,
+ allowedPRSBandwidthValues BIT STRING (SIZE (64)) OPTIONAL,
+ allowedResourceRepetitionFactorValues BIT STRING (SIZE (8)) OPTIONAL,
+ allowedResourceNumberOfSymbolsValues BIT STRING (SIZE (8)) OPTIONAL,
+ allowedCombSizeValues BIT STRING (SIZE (8)) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { OnDemandPRS-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+OnDemandPRS-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
-- P
-PacketDelayBudget ::= INTEGER (0..1023, ...)
+PacketDelayBudget ::= INTEGER (0..1023, ...)
PacketErrorRate ::= SEQUENCE {
pER-Scalar PER-Scalar,
@@ -3078,6 +4573,8 @@ PagingCell-Item ::= SEQUENCE {
}
PagingCell-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-LastUsedCellIndication CRITICALITY ignore EXTENSION LastUsedCellIndication PRESENCE optional }|
+ { ID id-PEISubgroupingSupportIndication CRITICALITY ignore EXTENSION PEISubgroupingSupportIndication PRESENCE optional },
...
}
@@ -3091,18 +4588,28 @@ PagingDRX ::= ENUMERATED {
PagingIdentity ::= CHOICE {
rANUEPagingIdentity RANUEPagingIdentity,
- cNUEPagingIdentity CNUEPagingIdentity,
+ cNUEPagingIdentity CNUEPagingIdentity,
choice-extension ProtocolIE-SingleContainer { { PagingIdentity-ExtIEs } }
}
+PagingCause ::= ENUMERATED { voice, ...}
+
PagingIdentity-ExtIEs F1AP-PROTOCOL-IES::= {
...
}
PagingOrigin ::= ENUMERATED { non-3gpp, ...}
-PagingPriority ::= ENUMERATED { priolevel1, priolevel2, priolevel3, priolevel4, priolevel5, priolevel6, priolevel7, priolevel8,...}
+PagingPriority ::= ENUMERATED { priolevel1, priolevel2, priolevel3, priolevel4, priolevel5, priolevel6, priolevel7, priolevel8,...}
+PEIPSAssistanceInfo ::= SEQUENCE {
+ cNSubgroupID CNSubgroupID,
+ iE-Extensions ProtocolExtensionContainer { { PEIPSAssistanceInfo-ExtIEs } } OPTIONAL
+}
+
+PEIPSAssistanceInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
RelativePathDelay ::= CHOICE {
k0 INTEGER (0..16351),
@@ -3110,7 +4617,7 @@ RelativePathDelay ::= CHOICE {
k2 INTEGER (0..4088),
k3 INTEGER (0..2044),
k4 INTEGER (0..1022),
- k5 INTEGER (0..511),
+ k5 INTEGER (0..511),
choice-extension ProtocolIE-SingleContainer { { RelativePathDelay-ExtIEs } }
}
@@ -3118,6 +4625,28 @@ RelativePathDelay-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
+Parent-IAB-Nodes-NA-Resource-Configuration-List ::= SEQUENCE (SIZE(1..maxnoofHSNASlots)) OF Parent-IAB-Nodes-NA-Resource-Configuration-Item
+
+Parent-IAB-Nodes-NA-Resource-Configuration-Item::= SEQUENCE {
+ nADownlink NADownlink OPTIONAL,
+ nAUplink NAUplink OPTIONAL,
+ nAFlexible NAFlexible OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Parent-IAB-Nodes-NA-Resource-Configuration-Item-ExtIEs} } OPTIONAL
+}
+
+Parent-IAB-Nodes-NA-Resource-Configuration-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PartialSuccessCell ::= SEQUENCE {
+ broadcastCellList BroadcastCellList,
+ iE-Extensions ProtocolExtensionContainer { { PartialSuccessCell-ExtIEs} } OPTIONAL,
+ ...
+}
+PartialSuccessCell-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
PathlossReferenceInfo ::= SEQUENCE {
pathlossReferenceSignal PathlossReferenceSignal,
iE-Extensions ProtocolExtensionContainer { {PathlossReferenceInfo-ExtIEs} } OPTIONAL
@@ -3127,7 +4656,7 @@ PathlossReferenceInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-PathlossReferenceSignal ::= CHOICE {
+PathlossReferenceSignal ::= CHOICE {
sSB SSB,
dL-PRS DL-PRS,
choice-extension ProtocolIE-SingleContainer {{PathlossReferenceSignal-ExtIEs }}
@@ -3137,11 +4666,23 @@ PathlossReferenceSignal-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
-PC5QoSFlowIdentifier ::= INTEGER (1..2048)
+PathSwitchConfiguration ::= SEQUENCE {
+ targetRelayUEID BIT STRING(SIZE(24)),
+ remoteUELocalID RemoteUELocalID,
+ t420 ENUMERATED {ms50, ms100, ms150, ms200, ms500, ms1000, ms2000, ms10000},
+ iE-Extensions ProtocolExtensionContainer { { PathSwitchConfiguration-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PathSwitchConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5QoSFlowIdentifier ::= INTEGER (1..2048)
PC5-QoS-Characteristics ::= CHOICE {
non-Dynamic-PQI NonDynamicPQIDescriptor,
- dynamic-PQI DynamicPQIDescriptor,
+ dynamic-PQI DynamicPQIDescriptor,
choice-extension ProtocolIE-SingleContainer { { PC5-QoS-Characteristics-ExtIEs } }
}
@@ -3172,17 +4713,218 @@ PC5FlowBitRates-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+PC5RLCChannelID ::= INTEGER (1..512, ...)
+
+PC5RLCChannelQoSInformation ::= CHOICE {
+ pC5RLCChannelQoS QoSFlowLevelQoSParameters,
+ pC5ControlPlaneTrafficType ENUMERATED {srb1,srb2,...},
+ choice-extension ProtocolIE-SingleContainer { { PC5RLCChannelQoSInformation-ExtIEs} }
+}
+
+PC5RLCChannelQoSInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+PC5RLCChannelToBeSetupList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelToBeSetupItem
+
+PC5RLCChannelToBeSetupItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ pC5RLCChannelQoSInformation PC5RLCChannelQoSInformation,
+ rLCMode RLCMode,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelToBeSetupItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelToBeSetupItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelToBeModifiedList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelToBeModifiedItem
+
+PC5RLCChannelToBeModifiedItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ pC5RLCChannelQoSInformation PC5RLCChannelQoSInformation OPTIONAL,
+ rLCMode RLCMode OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelToBeModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelToBeModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelToBeReleasedList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelToBeReleasedItem
+
+PC5RLCChannelToBeReleasedItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelToBeReleasedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelToBeReleasedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelSetupList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelSetupItem
+
+PC5RLCChannelSetupItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelSetupItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelSetupItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelFailedToBeSetupList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelFailedToBeSetupItem
+
+PC5RLCChannelFailedToBeSetupItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelFailedToBeSetupItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelFailedToBeSetupItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelModifiedList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelModifiedItem
+
+PC5RLCChannelModifiedItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelFailedToBeModifiedList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelFailedToBeModifiedItem
+
+PC5RLCChannelFailedToBeModifiedItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelFailedToBeModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelFailedToBeModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelRequiredToBeModifiedList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelRequiredToBeModifiedItem
+
+PC5RLCChannelRequiredToBeModifiedItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelRequiredToBeModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelRequiredToBeModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5RLCChannelRequiredToBeReleasedList ::= SEQUENCE (SIZE(1.. maxnoofPC5RLCChannels)) OF PC5RLCChannelRequiredToBeReleasedItem
+
+PC5RLCChannelRequiredToBeReleasedItem ::= SEQUENCE {
+ pC5RLCChannelID PC5RLCChannelID,
+ remoteUELocalID RemoteUELocalID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5RLCChannelRequiredToBeReleasedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PC5RLCChannelRequiredToBeReleasedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
PDCCH-BlindDetectionSCG ::= OCTET STRING
+PDCMeasurementPeriodicity ::= ENUMERATED
+{ms80, ms120, ms160, ms240, ms320, ms480, ms640, ms1024, ms1280, ms2048, ms2560, ms5120, ...}
+
+PDCMeasurementQuantities ::= SEQUENCE (SIZE (1.. maxnoofMeasPDC)) OF ProtocolIE-SingleContainer { {PDCMeasurementQuantities-ItemIEs} }
+
+PDCMeasurementQuantities-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-PDCMeasurementQuantities-Item CRITICALITY reject TYPE PDCMeasurementQuantities-Item PRESENCE mandatory}
+}
+
+PDCMeasurementQuantities-Item ::= SEQUENCE {
+ pDCmeasurementQuantitiesValue PDCMeasurementQuantitiesValue,
+ iE-Extensions ProtocolExtensionContainer { { PDCMeasurementQuantitiesValue-ExtIEs} } OPTIONAL
+}
+
+PDCMeasurementQuantitiesValue-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PDCMeasurementQuantitiesValue ::= ENUMERATED {
+ nr-pdc-tadv,
+ gNB-rx-tx,
+ ...
+}
+
+PDCMeasurementResult ::= SEQUENCE {
+ pDCMeasuredResultsList PDCMeasuredResultsList,
+ iE-Extensions ProtocolExtensionContainer { { PDCMeasurementResult-ExtIEs} } OPTIONAL
+}
+
+PDCMeasurementResult-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PDCMeasuredResultsList ::= SEQUENCE (SIZE(1..maxnoofMeasPDC)) OF PDCMeasuredResults-Item
+
+PDCMeasuredResults-Item ::= SEQUENCE {
+ pDCMeasuredResults-Value PDCMeasuredResults-Value,
+ iE-Extensions ProtocolExtensionContainer {{ PDCMeasuredResults-Item-ExtIEs }} OPTIONAL
+}
+
+PDCMeasuredResults-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PDCMeasuredResults-Value ::= CHOICE {
+ pDC-TADV-NR PDC-TADV-NR,
+ pDC-RxTxTimeDiff PDC-RxTxTimeDiff,
+ choice-extension ProtocolIE-SingleContainer { { PDCMeasuredResults-Value-ExtIEs} }
+}
+
+PDCMeasuredResults-Value-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+PDCReportType ::= ENUMERATED {
+ onDemand,
+ periodic,
+ ...
+}
+
+PDC-RxTxTimeDiff ::= INTEGER (0..61565, ...)
+
+PDC-TADV-NR ::= INTEGER (0..62500, ...)
+
PDCP-SN ::= INTEGER (0..4095)
PDCPSNLength ::= ENUMERATED { twelve-bits,eighteen-bits,...}
PDUSessionID ::= INTEGER (0..255)
+PEISubgroupingSupportIndication ::= ENUMERATED {true, ...}
+
ReportingPeriodicityValue ::= INTEGER (0..512, ...)
-Periodicity ::= INTEGER (0..640000, ...)
+Periodicity ::= INTEGER (0..640000, ...)
PeriodicitySRS ::= ENUMERATED { ms0p125, ms0p25, ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms4, ms5, ms8, ms10, ms16, ms20, ms32, ms40, ms64, ms80, ms160, ms320, ms640, ms1280, ms2560, ms5120, ms10240, ...}
@@ -3206,6 +4948,8 @@ Ph-InfoSCG ::= OCTET STRING
PLMN-Identity ::= OCTET STRING (SIZE(3))
+PlayoutDelayForMediaStartup ::= OCTET STRING
+
PortNumber ::= BIT STRING (SIZE (16))
@@ -3219,12 +4963,46 @@ PosBroadcast ::= ENUMERATED {
...
}
+PosConextRevIndication ::= ENUMERATED {true, ...}
+
PositioningBroadcastCells ::= SEQUENCE (SIZE (1..maxnoBcastCell)) OF NRCGI
+
+PosMeasGapPreConfigList ::= SEQUENCE {
+ posMeasGapPreConfigToAddModList OCTET STRING OPTIONAL,
+ posMeasGapPreConfigToReleaseList OCTET STRING OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PosMeasGapPreConfigList-ExtIEs} } OPTIONAL
+}
+
+PosMeasGapPreConfigList-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
MeasurementPeriodicity ::= ENUMERATED
-{ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, ..., ms20480, ms40960}
+{ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, ..., ms20480, ms40960, extended }
+MeasurementPeriodicityExtended ::= ENUMERATED {ms160, ms320, ms1280, ms2560, ms61440, ms81920, ms368640, ms737280, ms1843200, ...}
+
+PosMeasurementPeriodicityNR-AoA ::= ENUMERATED {
+ ms160,
+ ms320,
+ ms640,
+ ms1280,
+ ms2560,
+ ms5120,
+ ms10240,
+ ms20480,
+ ms40960,
+ ms61440,
+ ms81920,
+ ms368640,
+ ms737280,
+ ms1843200,
+ ...
+
+}
+
PosMeasurementQuantities ::= SEQUENCE (SIZE(1.. maxnoofPosMeas)) OF PosMeasurementQuantities-Item
PosMeasurementQuantities-Item ::= SEQUENCE {
@@ -3237,7 +5015,7 @@ PosMeasurementQuantities-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-PosMeasurementResult ::= SEQUENCE (SIZE (1.. maxnoofPosMeas)) OF PosMeasurementResultItem
+PosMeasurementResult ::= SEQUENCE (SIZE (1.. maxnoofPosMeas)) OF PosMeasurementResultItem
PosMeasurementResultItem ::= SEQUENCE {
measuredResultsValue MeasuredResultsValue,
@@ -3248,6 +5026,9 @@ PosMeasurementResultItem ::= SEQUENCE {
}
PosMeasurementResultItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ARP-ID CRITICALITY ignore EXTENSION ARP-ID PRESENCE optional}|
+ { ID id-SRSResourcetype CRITICALITY ignore EXTENSION SRSResourcetype PRESENCE optional}|
+ { ID id-LoS-NLoSInformation CRITICALITY ignore EXTENSION LoS-NLoSInformation PRESENCE optional },
...
}
@@ -3268,13 +5049,15 @@ PosMeasurementType ::= ENUMERATED {
gnb-rx-tx,
ul-srs-rsrp,
ul-aoa,
- ul-rtoa,
- ...
+ ul-rtoa,
+ ... ,
+ multiple-ul-aoa,
+ ul-srs-rsrpp
}
PosReportCharacteristics ::= ENUMERATED {
- ondemand,
- periodic,
+ ondemand,
+ periodic,
...
}
@@ -3300,7 +5083,7 @@ PosResourceSetTypePR-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PosResourceSetTypeSP ::= SEQUENCE {
possemi-persistentSet ENUMERATED{true, ...},
- iE-Extensions ProtocolExtensionContainer { { PosResourceSetTypeSP-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { PosResourceSetTypeSP-ExtIEs} } OPTIONAL
}
PosResourceSetTypeSP-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -3308,26 +5091,38 @@ PosResourceSetTypeSP-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
PosResourceSetTypeAP ::= SEQUENCE {
- sRSResourceTrigger-List INTEGER(1..3),
- iE-Extensions ProtocolExtensionContainer { { PosResourceSetTypeAP-ExtIEs} } OPTIONAL
+ sRSResourceTrigger-List INTEGER(1..3),
+ iE-Extensions ProtocolExtensionContainer { { PosResourceSetTypeAP-ExtIEs} } OPTIONAL
}
PosResourceSetTypeAP-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+PosSItypeList ::= SEQUENCE (SIZE(1.. maxnoofPosSITypes)) OF PosSItype-Item
+PosSItype-Item ::= SEQUENCE {
+ posItype PosSItype ,
+ iE-Extensions ProtocolExtensionContainer { { PosSItype-ItemExtIEs } } OPTIONAL
+}
+
+PosSItype-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PosSItype ::= INTEGER (1..32, ...)
+
PosSRSResourceID-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResourcePerSet)) OF SRSPosResourceID
PosSRSResource-Item ::= SEQUENCE {
srs-PosResourceId SRSPosResourceID,
transmissionCombPos TransmissionCombPos,
- startPosition INTEGER (0..13),
- nrofSymbols ENUMERATED {n1, n2, n4, n8, n12},
- freqDomainShift INTEGER (0..268),
- c-SRS INTEGER (0..63),
- groupOrSequenceHopping ENUMERATED { neither, groupHopping, sequenceHopping },
+ startPosition INTEGER (0..13),
+ nrofSymbols ENUMERATED {n1, n2, n4, n8, n12},
+ freqDomainShift INTEGER (0..268),
+ c-SRS INTEGER (0..63),
+ groupOrSequenceHopping ENUMERATED { neither, groupHopping, sequenceHopping },
resourceTypePos ResourceTypePos,
- sequenceId INTEGER (0.. 65535),
+ sequenceId INTEGER (0.. 65535),
spatialRelationPos SpatialRelationPos OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PosSRSResource-Item-ExtIEs} } OPTIONAL
}
@@ -3351,7 +5146,7 @@ PosSRSResourceSet-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PosSRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResourceSets)) OF PosSRSResourceSet-Item
-PrimaryPathIndication ::= ENUMERATED {
+PrimaryPathIndication ::= ENUMERATED {
true,
false,
...
@@ -3367,14 +5162,16 @@ Pre-emptionVulnerability ::= ENUMERATED {
pre-emptable
}
+Preconfigured-measurement-GAP-Request ::= ENUMERATED {true, ...}
+
PriorityLevel ::= INTEGER { spare (0), highest (1), lowest (14), no-priority (15) } (0..15)
ProtectedEUTRAResourceIndication ::= OCTET STRING
Protected-EUTRA-Resources-Item ::= SEQUENCE {
- spectrumSharingGroupID SpectrumSharingGroupID,
+ spectrumSharingGroupID SpectrumSharingGroupID,
eUTRACells-List EUTRACells-List,
- iE-Extensions ProtocolExtensionContainer { { Protected-EUTRA-Resources-ItemExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { Protected-EUTRA-Resources-ItemExtIEs } } OPTIONAL
}
Protected-EUTRA-Resources-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -3383,7 +5180,7 @@ Protected-EUTRA-Resources-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PRSConfiguration ::= SEQUENCE {
pRSResourceSet-List PRSResourceSet-List,
- iE-Extensions ProtocolExtensionContainer { { PRSConfiguration-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { PRSConfiguration-ExtIEs } } OPTIONAL
}
PRSConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -3391,19 +5188,35 @@ PRSConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
PRSInformationPos ::= SEQUENCE {
- pRS-IDPos INTEGER(0..255),
+ pRS-IDPos INTEGER(0..255),
pRS-Resource-Set-IDPos INTEGER(0..7),
pRS-Resource-IDPos INTEGER(0..63) OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { PRSInformationPos-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { PRSInformationPos-ExtIEs} } OPTIONAL
}
PRSInformationPos-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+PRS-Measurement-Info-List ::= SEQUENCE (SIZE(1..maxFreqLayers)) OF PRS-Measurement-Info-List-Item
+
+PRS-Measurement-Info-List-Item ::= SEQUENCE {
+ pointA INTEGER (0..3279165),
+ measPRSPeriodicity ENUMERATED {ms20, ms40, ms80, ms160, ...},
+ measPRSOffset INTEGER (0..159, ...),
+ measurementPRSLength ENUMERATED {ms1dot5, ms3, ms3dot5, ms4, ms5dot5, ms6, ms10, ms20},
+ iE-Extensions ProtocolExtensionContainer { { PRS-Measurement-Info-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRS-Measurement-Info-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
Potential-SpCell-Item ::= SEQUENCE {
potential-SpCell-ID NRCGI ,
- iE-Extensions ProtocolExtensionContainer { { Potential-SpCell-ItemExtIEs } } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Potential-SpCell-ItemExtIEs } } OPTIONAL,
...
}
@@ -3419,17 +5232,20 @@ PRSAngleItem ::= SEQUENCE {
nR-PRS-Azimuth-fine INTEGER (0..9),
nR-PRS-Elevation INTEGER (0..180),
nR-PRS-Elevation-fine INTEGER (0..9),
- iE-Extensions ProtocolExtensionContainer { { PRSAngleItem-ItemExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { PRSAngleItem-ItemExtIEs } } OPTIONAL
}
PRSAngleItem-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-PRS-Resource-ID CRITICALITY ignore EXTENSION PRS-Resource-ID PRESENCE optional },
...
}
+PRSConfigRequestType ::= ENUMERATED {configure, off, ...}
+
PRSMuting::= SEQUENCE {
- pRSMutingOption1 PRSMutingOption1,
- pRSMutingOption2 PRSMutingOption2,
- iE-Extensions ProtocolExtensionContainer { { PRSMuting-ExtIEs} } OPTIONAL
+ pRSMutingOption1 PRSMutingOption1 OPTIONAL,
+ pRSMutingOption2 PRSMutingOption2 OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PRSMuting-ExtIEs} } OPTIONAL
}
PRSMuting-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -3475,8 +5291,8 @@ PRSResource-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PRSResource-QCLInfo ::= CHOICE {
qCLSourceSSB PRSResource-QCLSourceSSB,
- qCLSourcePRS PRSResource-QCLSourcePRS,
- choice-extension ProtocolIE-SingleContainer { { PRSResource-QCLInfo-ExtIEs } }
+ qCLSourcePRS PRSResource-QCLSourcePRS,
+ choice-extension ProtocolIE-SingleContainer { { PRSResource-QCLInfo-ExtIEs } }
}
PRSResource-QCLInfo-ExtIEs F1AP-PROTOCOL-IES ::= {
...
@@ -3484,7 +5300,7 @@ PRSResource-QCLInfo-ExtIEs F1AP-PROTOCOL-IES ::= {
PRSResource-QCLSourceSSB ::= SEQUENCE {
pCI-NR INTEGER(0..1007),
- sSB-Index SSB-Index OPTIONAL,
+ sSB-Index SSB-Index OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PRSResource-QCLSourceSSB-ExtIEs} } OPTIONAL,
...
}
@@ -3495,7 +5311,7 @@ PRSResource-QCLSourceSSB-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PRSResource-QCLSourcePRS ::= SEQUENCE {
qCLSourcePRSResourceSetID PRS-Resource-Set-ID,
- qCLSourcePRSResourceID PRS-Resource-ID OPTIONAL,
+ qCLSourcePRSResourceID PRS-Resource-ID OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PRSResource-QCLSourcePRS-ExtIEs} } OPTIONAL
}
@@ -3514,14 +5330,14 @@ PRSResourceSet-Item ::= SEQUENCE {
pointA INTEGER (0..3279165),
combSize ENUMERATED{n2, n4, n6, n12, ...},
cPType ENUMERATED{normal, extended, ...},
- resourceSetPeriodicity ENUMERATED{n4,n5,n8,n10,n16,n20,n32,n40,n64,n80,n160,n320,n640,n1280,n2560,n5120,n10240,n20480,n40960, n81920,...},
+ resourceSetPeriodicity ENUMERATED{n4,n5,n8,n10,n16,n20,n32,n40,n64,n80,n160,n320,n640,n1280,n2560,n5120,n10240,n20480,n40960, n81920,..., n128, n256, n512},
resourceSetSlotOffset INTEGER(0..81919,...),
resourceRepetitionFactor ENUMERATED{rf1,rf2,rf4,rf6,rf8,rf16,rf32,...},
resourceTimeGap ENUMERATED{tg1,tg2,tg4,tg8,tg16,tg32,...},
resourceNumberofSymbols ENUMERATED{n2,n4,n6,n12,...},
pRSMuting PRSMuting OPTIONAL,
pRSResourceTransmitPower INTEGER(-60..50),
- pRSResource-List PRSResource-List,
+ pRSResource-List PRSResource-List,
iE-Extensions ProtocolExtensionContainer { { PRSResourceSet-Item-ExtIEs} } OPTIONAL
}
@@ -3529,6 +5345,63 @@ PRSResourceSet-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+PRSTransmissionOffIndication ::= CHOICE {
+ pRSTransmissionOffPerTRP NULL,
+ pRSTransmissionOffPerResourceSet PRSTransmissionOffPerResourceSet,
+ pRSTransmissionOffPerResource PRSTransmissionOffPerResource,
+ choice-extension ProtocolIE-SingleContainer { { PRSTransmissionOffIndication-ExtIEs } }
+}
+
+PRSTransmissionOffIndication-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+PRSTransmissionOffPerResource ::= SEQUENCE (SIZE (1..maxnoofPRSresourceSets)) OF PRSTransmissionOffPerResource-Item
+
+PRSTransmissionOffPerResource-Item ::= SEQUENCE {
+ pRSResourceSetID PRS-Resource-Set-ID,
+ pRSTransmissionOffIndicationPerResourceList SEQUENCE (SIZE(1.. maxnoofPRSresources)) OF PRSTransmissionOffIndicationPerResource-Item,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffPerResource-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffPerResource-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTransmissionOffIndicationPerResource-Item ::= SEQUENCE {
+ pRSResourceID PRS-Resource-ID,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffIndicationPerResource-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffIndicationPerResource-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTransmissionOffInformation ::= SEQUENCE {
+ pRSTransmissionOffIndication PRSTransmissionOffIndication,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTransmissionOffPerResourceSet ::= SEQUENCE (SIZE (1..maxnoofPRSresourceSets)) OF PRSTransmissionOffPerResourceSet-Item
+
+PRSTransmissionOffPerResourceSet-Item ::= SEQUENCE {
+ pRSResourceSetID PRS-Resource-Set-ID,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffPerResourceSet-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffPerResourceSet-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
PWS-Failed-NR-CGI-Item ::= SEQUENCE {
nRCGI NRCGI,
numberOfBroadcasts NumberOfBroadcasts,
@@ -3542,8 +5415,8 @@ PWS-Failed-NR-CGI-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PWSSystemInformation ::= SEQUENCE {
sIBtype SIBType-PWS,
- sIBmessage OCTET STRING,
- iE-Extensions ProtocolExtensionContainer { { PWSSystemInformationExtIEs } } OPTIONAL,
+ sIBmessage OCTET STRING,
+ iE-Extensions ProtocolExtensionContainer { { PWSSystemInformationExtIEs } } OPTIONAL,
...
}
@@ -3555,13 +5428,119 @@ PWSSystemInformationExtIEs F1AP-PROTOCOL-EXTENSION ::= {
PrivacyIndicator ::= ENUMERATED {immediate-MDT, logged-MDT, ...}
+PRS-ID ::= INTEGER(0..255)
+
+PRSTRPList ::= SEQUENCE (SIZE(1.. maxnoofTRPs)) OF PRSTRPItem
+
+PRSTRPItem ::= SEQUENCE {
+ tRP-ID TRPID,
+ requestedDLPRSTransmissionCharacteristics RequestedDLPRSTransmissionCharacteristics OPTIONAL,
+ -- The IE shall be present if the PRS Configuration Request Type IE is set to “configure” --
+ pRSTransmissionOffInformation PRSTransmissionOffInformation OPTIONAL,
+ -- The IE shall be present if the PRS Configuration Request Type IE is set to “off” --
+
+ iE-Extensions ProtocolExtensionContainer { { PRSTRPItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTRPItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RequestedDLPRSTransmissionCharacteristics ::= SEQUENCE {
+ requestedDLPRSResourceSet-List RequestedDLPRSResourceSet-List,
+ numberofFrequencyLayers INTEGER(1..4) OPTIONAL,
+ startTimeAndDuration StartTimeAndDuration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RequestedDLPRSTransmissionCharacteristics-ExtIEs} } OPTIONAL,
+ ...
+}
+RequestedDLPRSTransmissionCharacteristics-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RequestedDLPRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoofPRSresourceSets)) OF RequestedDLPRSResourceSet-Item
+
+RequestedDLPRSResourceSet-Item ::= SEQUENCE {
+ pRSbandwidth INTEGER(1..63),
+ combSize ENUMERATED{n2, n4, n6, n12, ...} OPTIONAL,
+ resourceSetPeriodicity ENUMERATED{n4,n5,n8,n10,n16,n20,n32,n40,n64,n80,n160,n320,n640,n1280,n2560,n5120,n10240,n20480,n40960, n81920,..., n128, n256, n512} OPTIONAL,
+ resourceRepetitionFactor ENUMERATED{rf1,rf2,rf4,rf6,rf8,rf16,rf32,...} OPTIONAL,
+ resourceNumberofSymbols ENUMERATED{n2,n4,n6,n12,...} OPTIONAL,
+ requestedDLPRSResource-List RequestedDLPRSResource-List OPTIONAL,
+ resourceSetStartTimeAndDuration StartTimeAndDuration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RequestedDLPRSResourceSet-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RequestedDLPRSResourceSet-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RequestedDLPRSResource-List::= SEQUENCE (SIZE (1..maxnoofPRSresources)) OF RequestedDLPRSResource-Item
+
+RequestedDLPRSResource-Item ::= SEQUENCE {
+ qCLInfo PRSResource-QCLInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RequestedDLPRSResource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RequestedDLPRSResource-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+PRSTransmissionTRPList ::= SEQUENCE (SIZE(1.. maxnoofTRPs)) OF PRSTransmissionTRPItem
+
+PRSTransmissionTRPItem ::= SEQUENCE {
+ tRP-ID TRPID,
+ pRSConfiguration PRSConfiguration,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionTRPItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTransmissionTRPItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
-- Q
QCI ::= INTEGER (0..255)
+QoEInformation ::= SEQUENCE {
+ qoEInformationList QoEInformationList,
+ iE-Extensions ProtocolExtensionContainer { { QoEInformation-ExtIEs} } OPTIONAL
+}
+
+QoEInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+QoEInformationList ::= SEQUENCE (SIZE(1.. maxnoofQoEInformation)) OF QoEInformationList-Item
+
+QoEInformationList-Item ::= SEQUENCE {
+ qoEMetrics QoEMetrics OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { QoEInformationList-Item-ExtIEs} } OPTIONAL
+}
+
+QoEInformationList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+QoEMetrics ::= SEQUENCE {
+ appLayerBufferLevelList AppLayerBufferLevelList OPTIONAL,
+ playoutDelayForMediaStartup PlayoutDelayForMediaStartup OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { QoEMetrics-ExtIEs} } OPTIONAL,
+ ...
+}
+
+QoEMetrics-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
QoS-Characteristics ::= CHOICE {
non-Dynamic-5QI NonDynamic5QIDescriptor,
- dynamic-5QI Dynamic5QIDescriptor,
+ dynamic-5QI Dynamic5QIDescriptor,
choice-extension ProtocolIE-SingleContainer { { QoS-Characteristics-ExtIEs } }
}
@@ -3569,20 +5548,21 @@ QoS-Characteristics-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
-QoSFlowIdentifier ::= INTEGER (0..63)
+QoSFlowIdentifier ::= INTEGER (0..63)
QoSFlowLevelQoSParameters ::= SEQUENCE {
- qoS-Characteristics QoS-Characteristics,
+ qoS-Characteristics QoS-Characteristics,
nGRANallocationRetentionPriority NGRANAllocationAndRetentionPriority,
gBR-QoS-Flow-Information GBR-QoSFlowInformation OPTIONAL,
reflective-QoS-Attribute ENUMERATED {subject-to, ...} OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { QoSFlowLevelQoSParameters-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { QoSFlowLevelQoSParameters-ExtIEs } } OPTIONAL
}
QoSFlowLevelQoSParameters-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-PDUSessionID CRITICALITY ignore EXTENSION PDUSessionID PRESENCE optional}|
- { ID id-ULPDUSessionAggregateMaximumBitRate CRITICALITY ignore EXTENSION BitRate PRESENCE optional}|
- { ID id-QosMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional},
+ { ID id-PDUSessionID CRITICALITY ignore EXTENSION PDUSessionID PRESENCE optional}|
+ { ID id-ULPDUSessionAggregateMaximumBitRate CRITICALITY ignore EXTENSION BitRate PRESENCE optional}|
+ { ID id-QosMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}|
+ { ID id-PDCPTerminatingNodeDLTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional },
...
}
@@ -3600,7 +5580,7 @@ QoSInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
QosMonitoringRequest ::= ENUMERATED {ul, dl, both, ..., stop}
-QoSParaSetIndex ::= INTEGER (1..8, ...)
+QoSParaSetIndex ::= INTEGER (1..8, ...)
QoSParaSetNotifyIndex ::= INTEGER (0..8, ...)
@@ -3616,8 +5596,8 @@ RACHReportInformationList ::= SEQUENCE (SIZE(1.. maxnoofRACHReports)) OF RACHRep
RACHReportInformationItem ::= SEQUENCE {
rACHReportContainer RACHReportContainer,
- uEAssitantIdentifier GNB-DU-UE-F1AP-ID OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { RACHReportInformationItem-ExtIEs} } OPTIONAL,
+ uEAssitantIdentifier GNB-DU-UE-F1AP-ID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RACHReportInformationItem-ExtIEs} } OPTIONAL,
...
}
@@ -3633,15 +5613,34 @@ RadioResourceStatus ::= SEQUENCE {
}
RadioResourceStatus-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SliceRadioResourceStatus CRITICALITY ignore EXTENSION SliceRadioResourceStatus PRESENCE optional }|
+ { ID id-MIMOPRBusageInformation CRITICALITY ignore EXTENSION MIMOPRBusageInformation PRESENCE optional },
+ ...
+}
+
+MIMOPRBusageInformation ::= SEQUENCE {
+ dl-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ ul-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ dl-non-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ ul-non-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ dl-Total-PRB-usage-for-MIMO INTEGER (0..100),
+ ul-Total-PRB-usage-for-MIMO INTEGER (0..100),
+ iE-Extensions ProtocolExtensionContainer { { MIMOPRBusageInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MIMOPRBusageInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-RANAC ::= INTEGER (0..255)
+RANAC ::= INTEGER (0..255)
RAN-MeasurementID ::= INTEGER (1.. 65536, ...)
RAN-UE-MeasurementID ::= INTEGER (1.. 256, ...)
+RAN-UE-PDC-MeasID ::= INTEGER (1..16, ...)
+
RANUEID ::= OCTET STRING (SIZE (8))
RANUEPagingIdentity ::= SEQUENCE {
@@ -3664,6 +5663,31 @@ RAT-FrequencyPriorityInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
RAT-FrequencySelectionPriority::= INTEGER (1.. 256, ...)
+RBSetConfiguration ::= SEQUENCE {
+ subcarrierSpacing SubcarrierSpacing,
+ rBSetSize RBSetSize,
+ nUmberRBsets INTEGER(1..maxnoofRBsetsPerCell),
+ iE-Extensions ProtocolExtensionContainer { { RBSetConfiguration-ExtIEs} } OPTIONAL
+}
+
+RBSetConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RBSetSize ::= ENUMERATED { rb2, rb4, rb8, rb16, rb32, rb64}
+
+
+
+Re-routingEnableIndicator ::= ENUMERATED {
+ true,
+ false,
+ ...
+}
+
+Redcap-Bcast-Information ::= BIT STRING(SIZE(8))
+
+RedCapIndication ::= ENUMERATED {true, ...}
+
Reestablishment-Indication ::= ENUMERATED {
reestablished,
...
@@ -3682,7 +5706,7 @@ ReferencePoint-ExtIEs F1AP-PROTOCOL-IES ::= {
ReferenceSFN ::= INTEGER (0..1023)
-ReferenceSignal ::= CHOICE {
+ReferenceSignal ::= CHOICE {
nZP-CSI-RS NZP-CSI-RS-ResourceID,
sSB SSB,
sRS SRSResourceID,
@@ -3708,9 +5732,9 @@ RelativeCartesianLocation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-RelativeGeodeticLocation ::= SEQUENCE {
- milli-Arc-SecondUnits ENUMERATED {zerodot03, zerodot3, three, ...},
- heightUnits ENUMERATED {mm, cm, m, ...},
+RelativeGeodeticLocation ::= SEQUENCE {
+ milli-Arc-SecondUnits ENUMERATED {zerodot03, zerodot3, three, ...},
+ heightUnits ENUMERATED {mm, cm, m, ...},
deltaLatitude INTEGER (-1024.. 1023),
deltaLongitude INTEGER (-1024.. 1023),
deltaHeight INTEGER (-1024.. 1023),
@@ -3722,6 +5746,9 @@ RelativeGeodeticLocation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+RemoteUELocalID ::= INTEGER (0..255, ...)
+
+
ReferenceTime ::= OCTET STRING
RegistrationRequest ::= ENUMERATED{start, stop, add, ...}
@@ -3754,6 +5781,7 @@ RequestedSRSTransmissionCharacteristics-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+
RequestType ::= ENUMERATED {offer, execution, ...}
ResourceCoordinationEUTRACellInfo ::= SEQUENCE {
@@ -3813,13 +5841,14 @@ ResourceSetTypeSemi-persistent-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
ResourceSetTypeAperiodic ::= SEQUENCE {
sRSResourceTrigger-List INTEGER(1..3),
slotoffset INTEGER(0..32),
- iE-Extensions ProtocolExtensionContainer { { ResourceSetTypeAperiodic-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { ResourceSetTypeAperiodic-ExtIEs} } OPTIONAL
}
ResourceSetTypeAperiodic-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+RepetitionFactorExtended ::= ENUMERATED {n3, n5, n6, n7, n8, n10, n12, n14, ...}
RepetitionPeriod ::= INTEGER (0..131071, ...)
ReportingRequestType ::= SEQUENCE {
@@ -3885,7 +5914,7 @@ ResourceTypePos-ExtIEs F1AP-PROTOCOL-IES ::= {
}
ResourceTypePeriodicPos ::= SEQUENCE {
- periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ...},
+ periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ..., slot128, slot256, slot512, slot20480},
offset INTEGER(0..81919, ...),
iE-Extensions ProtocolExtensionContainer { { ResourceTypePeriodicPos-ExtIEs} } OPTIONAL
}
@@ -3895,7 +5924,7 @@ ResourceTypePeriodicPos-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
ResourceTypeSemi-persistentPos ::= SEQUENCE {
- periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ...},
+ periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ..., slot128, slot256, slot512, slot20480},
offset INTEGER(0..81919, ...),
iE-Extensions ProtocolExtensionContainer { { ResourceTypeSemi-persistentPos-ExtIEs} } OPTIONAL
}
@@ -3905,7 +5934,7 @@ ResourceTypeSemi-persistentPos-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
ResourceTypeAperiodicPos ::= SEQUENCE {
- slotOffset INTEGER (0..32),
+ slotOffset INTEGER (0..32),
iE-Extensions ProtocolExtensionContainer { { ResourceTypeAperiodicPos-ExtIEs} } OPTIONAL
}
@@ -3914,7 +5943,7 @@ ResourceTypeAperiodicPos-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
RLCDuplicationInformation ::= SEQUENCE {
- rLCDuplicationStateList RLCDuplicationStateList,
+ rLCDuplicationStateList RLCDuplicationStateList,
primaryPathIndication PrimaryPathIndication OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {RLCDuplicationInformation-ExtIEs} } OPTIONAL
}
@@ -3926,7 +5955,7 @@ RLCDuplicationInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
RLCDuplicationStateList ::= SEQUENCE (SIZE(1..maxnoofRLCDuplicationState)) OF RLCDuplicationState-Item
RLCDuplicationState-Item ::=SEQUENCE {
- duplicationState DuplicationState,
+ duplicationState DuplicationState,
iE-Extensions ProtocolExtensionContainer { {RLCDuplicationState-Item-ExtIEs } } OPTIONAL,
...
}
@@ -3967,7 +5996,7 @@ RLFReportInformationList ::= SEQUENCE (SIZE(1.. maxnoofRLFReports)) OF RLFReport
RLFReportInformationItem ::= SEQUENCE {
nRUERLFReportContainer NRUERLFReportContainer,
- uEAssitantIdentifier GNB-DU-UE-F1AP-ID OPTIONAL,
+ uEAssitantIdentifier GNB-DU-UE-F1AP-ID OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { RLFReportInformationItem-ExtIEs} } OPTIONAL,
...
}
@@ -4016,10 +6045,23 @@ RRC-Version-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
RoutingID ::= OCTET STRING
+ResponseTime ::= SEQUENCE {
+ time INTEGER (1..128,...),
+ timeUnit ENUMERATED {second, ten-seconds, ten-milliseconds,...},
+ iE-Extensions ProtocolExtensionContainer { { ResponseTime-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ResponseTime-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RxTxTimingErrorMargin ::= ENUMERATED {tc0dot5, tc1, tc2, tc4, tc8, tc12, tc16, tc20, tc24, tc32, tc40, tc48, tc64, tc80, tc96, tc128, ...}
+
-- S
SCell-FailedtoSetup-Item ::= SEQUENCE {
- sCell-ID NRCGI ,
+ sCell-ID NRCGI ,
cause Cause OPTIONAL ,
iE-Extensions ProtocolExtensionContainer { { SCell-FailedtoSetup-ItemExtIEs } } OPTIONAL,
...
@@ -4030,7 +6072,7 @@ SCell-FailedtoSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
SCell-FailedtoSetupMod-Item ::= SEQUENCE {
- sCell-ID NRCGI ,
+ sCell-ID NRCGI ,
cause Cause OPTIONAL ,
iE-Extensions ProtocolExtensionContainer { { SCell-FailedtoSetupMod-ItemExtIEs } } OPTIONAL,
...
@@ -4041,7 +6083,7 @@ SCell-FailedtoSetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
SCell-ToBeRemoved-Item ::= SEQUENCE {
- sCell-ID NRCGI ,
+ sCell-ID NRCGI ,
iE-Extensions ProtocolExtensionContainer { { SCell-ToBeRemoved-ItemExtIEs } } OPTIONAL,
...
}
@@ -4052,7 +6094,7 @@ SCell-ToBeRemoved-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SCell-ToBeSetup-Item ::= SEQUENCE {
sCell-ID NRCGI ,
- sCellIndex SCellIndex,
+ sCellIndex SCellIndex,
sCellULConfigured CellULConfigured OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { SCell-ToBeSetup-ItemExtIEs } } OPTIONAL,
...
@@ -4064,7 +6106,7 @@ SCell-ToBeSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
SCell-ToBeSetupMod-Item ::= SEQUENCE {
- sCell-ID NRCGI ,
+ sCell-ID NRCGI ,
sCellIndex SCellIndex,
sCellULConfigured CellULConfigured OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { SCell-ToBeSetupMod-ItemExtIEs } } OPTIONAL,
@@ -4076,14 +6118,22 @@ SCell-ToBeSetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-SCellIndex ::=INTEGER (1..31, ...)
+SCellIndex ::=INTEGER (1..31, ...)
+
+SCGActivationRequest ::= ENUMERATED {activate-scg, deactivate-scg, ...}
+
+SCGActivationStatus ::= ENUMERATED {scg-activated, scg-deactivated, ...}
SCGIndicator ::= ENUMERATED{released, ...}
-SCS-SpecificCarrier ::= SEQUENCE {
- offsetToCarrier INTEGER (0..2199,...),
- subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,...},
- carrierBandwidth INTEGER (1..275,...),
+SCS-480 ::= INTEGER(0..319)
+
+SCS-960 ::= INTEGER(0..639)
+
+SCS-SpecificCarrier ::= SEQUENCE {
+ offsetToCarrier INTEGER (0..2199,...),
+ subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,..., kHz480, kHz960},
+ carrierBandwidth INTEGER (1..275,...),
iE-Extensions ProtocolExtensionContainer { { SCS-SpecificCarrier-ExtIEs } } OPTIONAL
}
@@ -4091,6 +6141,56 @@ SCS-SpecificCarrier-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+SDTBearerConfigurationQueryIndication ::= ENUMERATED {true, ...}
+
+SDTBearerConfigurationInfo ::= SEQUENCE {
+ sDTBearerConfig-List SDTBearerConfig-List,
+ iE-Extensions ProtocolExtensionContainer { { SDTBearerConfigurationInfo-ExtIEs } } OPTIONAL
+}
+
+SDTBearerConfigurationInfo-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SDTBearerConfig-List ::= SEQUENCE (SIZE(1..maxnoofSDTBearers)) OF SDTBearerConfig-List-Item
+
+SDTBearerConfig-List-Item ::= SEQUENCE{
+ sDTBearerType SDTBearerType,
+ sDTRLCBearerConfiguration SDTRLCBearerConfiguration,
+ iE-Extensions ProtocolExtensionContainer {{ SDTBearerConfig-List-Item-ExtIEs}} OPTIONAL
+}
+
+SDTBearerConfig-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SDTBearerType ::= CHOICE {
+ sRB SRBID,
+ dRB DRBID,
+ choice-extension ProtocolIE-SingleContainer {{ SDTBearerType-ExtIEs }}
+}
+
+SDTBearerType-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+SDT-MAC-PHY-CG-Config ::= OCTET STRING
+
+SDTInformation ::= SEQUENCE {
+ sdtIndicator ENUMERATED {true,...},
+ sdtAssistantInformation ENUMERATED {singlepacket, multiplepackets,...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SDTInformation-ExtIEs } } OPTIONAL
+}
+
+SDTInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SDTRLCBearerConfiguration ::= OCTET STRING
+
+SDT-Termination-Request ::= ENUMERATED {radio-link-problem, normal, ...}
+
+
Search-window-information ::= SEQUENCE {
expectedPropagationDelay INTEGER (-3841..3841,...),
delayUncertainty INTEGER (1..246,...),
@@ -4111,17 +6211,42 @@ SelectedFeatureSetEntryIndex ::= OCTET STRING
CG-ConfigInfo ::= OCTET STRING
+ServCellInfoList ::= OCTET STRING
+
ServCellIndex ::= INTEGER (0..31, ...)
ServingCellMO ::= INTEGER (1..64, ...)
+ServingCellMO-List-Item ::= SEQUENCE {
+ servingCellMO ServingCellMO,
+ sSB-Frequency INTEGER (0..3279165),
+ iE-Extensions ProtocolExtensionContainer { { ServingCellMO-List-Item-ExtIEs } } OPTIONAL
+}
+
+ServingCellMO-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ServingCellMO-encoded-in-CGC-List ::= SEQUENCE (SIZE(1.. maxNrofBWPs)) OF ServingCellMO-encoded-in-CGC-Item
+
+ServingCellMO-encoded-in-CGC-Item ::= SEQUENCE {
+ servingCellMO ServingCellMO,
+ iE-Extensions ProtocolExtensionContainer { { ServingCellMO-encoded-in-CGC-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+ServingCellMO-encoded-in-CGC-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-BWP-Id CRITICALITY ignore EXTENSION BWP-Id PRESENCE optional },
+ ...
+}
+
Served-Cell-Information ::= SEQUENCE {
nRCGI NRCGI,
nRPCI NRPCI,
- fiveGS-TAC FiveGS-TAC OPTIONAL,
+ fiveGS-TAC FiveGS-TAC OPTIONAL,
configured-EPS-TAC Configured-EPS-TAC OPTIONAL,
- servedPLMNs ServedPLMNs-List,
- nR-Mode-Info NR-Mode-Info,
+ servedPLMNs ServedPLMNs-List,
+ nR-Mode-Info NR-Mode-Info,
measurementTimingConfiguration OCTET STRING,
iE-Extensions ProtocolExtensionContainer { {Served-Cell-Information-ExtIEs} } OPTIONAL,
...
@@ -4140,10 +6265,28 @@ Served-Cell-Information-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
{ ID id-SSB-PositionsInBurst CRITICALITY ignore EXTENSION SSB-PositionsInBurst PRESENCE optional }|
{ ID id-NRPRACHConfig CRITICALITY ignore EXTENSION NRPRACHConfig PRESENCE optional }|
{ ID id-SFN-Offset CRITICALITY ignore EXTENSION SFN-Offset PRESENCE optional }|
- { ID id-NPNBroadcastInformation CRITICALITY reject EXTENSION NPNBroadcastInformation PRESENCE optional },
+ { ID id-NPNBroadcastInformation CRITICALITY reject EXTENSION NPNBroadcastInformation PRESENCE optional }|
+ { ID id-Supported-MBS-FSA-ID-List CRITICALITY ignore EXTENSION Supported-MBS-FSA-ID-List PRESENCE optional }|
+ { ID id-Redcap-Bcast-Information CRITICALITY ignore EXTENSION Redcap-Bcast-Information PRESENCE optional },
...
}
+Serving-Cells-List ::= SEQUENCE (SIZE(1..maxnoofServingCells)) OF Serving-Cells-List-Item
+
+Serving-Cells-List-Item ::= SEQUENCE{
+ nRCGI NRCGI,
+ iAB-MT-Cell-NA-Resource-Configuration-Mode-Info IAB-MT-Cell-NA-Resource-Configuration-Mode-Info OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{Serving-Cells-List-Item-ExtIEs}} OPTIONAL
+}
+
+Serving-Cells-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Supported-MBS-FSA-ID-List::= SEQUENCE (SIZE(1.. maxnoofMBSFSAs)) OF MBS-FrequencySelectionArea-Identity
+
+MBS-FrequencySelectionArea-Identity::= OCTET STRING (SIZE(3))
+
SFN-Offset ::= SEQUENCE {
sFN-Time-Offset BIT STRING (SIZE(24)),
iE-Extensions ProtocolExtensionContainer { {SFN-Offset-ExtIEs} } OPTIONAL,
@@ -4156,7 +6299,7 @@ SFN-Offset-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
Served-Cells-To-Add-Item ::= SEQUENCE {
served-Cell-Information Served-Cell-Information,
- gNB-DU-System-Information GNB-DU-System-Information OPTIONAL,
+ gNB-DU-System-Information GNB-DU-System-Information OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { Served-Cells-To-Add-ItemExtIEs} } OPTIONAL,
...
}
@@ -4232,6 +6375,12 @@ SIB13-message ::= OCTET STRING
SIB14-message ::= OCTET STRING
+SIB15-message ::= OCTET STRING
+
+SIB17-message ::= OCTET STRING
+
+SIB20-message ::= OCTET STRING
+
SItype ::= INTEGER (1..32, ...)
SItype-List ::= SEQUENCE (SIZE(1.. maxnoofSITypes)) OF SItype-Item
@@ -4246,10 +6395,10 @@ SItype-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
SibtypetobeupdatedListItem ::= SEQUENCE {
- sIBtype INTEGER (2..32,...),
- sIBmessage OCTET STRING,
- valueTag INTEGER (0..31,...),
- iE-Extensions ProtocolExtensionContainer { { SibtypetobeupdatedListItem-ExtIEs } } OPTIONAL,
+ sIBtype INTEGER (2..32,...),
+ sIBmessage OCTET STRING,
+ valueTag INTEGER (0..31,...),
+ iE-Extensions ProtocolExtensionContainer { { SibtypetobeupdatedListItem-ExtIEs } } OPTIONAL,
...
}
@@ -4258,6 +6407,21 @@ SibtypetobeupdatedListItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+SidelinkRelayConfiguration ::= SEQUENCE {
+ gNB-DU-UE-F1APIDofRelayUE GNB-DU-UE-F1AP-ID,
+ remoteUELocalID RemoteUELocalID,
+ sidelinkConfigurationContainer SidelinkConfigurationContainer OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SidelinkRelayConfiguration-ExtIEs } } OPTIONAL,
+ ...
+}
+
+SidelinkRelayConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SidelinkConfigurationContainer ::= OCTET STRING
+
SLDRBID ::= INTEGER (1..512, ...)
SLDRBInformation ::= SEQUENCE {
@@ -4287,8 +6451,8 @@ SLDRBs-FailedToBeSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
SLDRBs-FailedToBeSetupMod-Item ::= SEQUENCE {
- sLDRBID SLDRBID ,
- cause Cause OPTIONAL ,
+ sLDRBID SLDRBID ,
+ cause Cause OPTIONAL ,
iE-Extensions ProtocolExtensionContainer { { SLDRBs-FailedToBeSetupMod-ItemExtIEs } } OPTIONAL
}
@@ -4352,8 +6516,8 @@ SLDRBs-SetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SLDRBs-ToBeModified-Item ::= SEQUENCE {
sLDRBID SLDRBID,
- sLDRBInformation SLDRBInformation OPTIONAL,
- rLCMode RLCMode OPTIONAL,
+ sLDRBInformation SLDRBInformation OPTIONAL,
+ rLCMode RLCMode OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { SLDRBs-ToBeModified-ItemExtIEs } } OPTIONAL
}
@@ -4362,7 +6526,7 @@ SLDRBs-ToBeModified-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
SLDRBs-ToBeReleased-Item ::= SEQUENCE {
- sLDRBID SLDRBID,
+ sLDRBID SLDRBID,
iE-Extensions ProtocolExtensionContainer { { SLDRBs-ToBeReleased-ItemExtIEs } } OPTIONAL
}
@@ -4372,8 +6536,8 @@ SLDRBs-ToBeReleased-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SLDRBs-ToBeSetup-Item ::= SEQUENCE {
sLDRBID SLDRBID,
- sLDRBInformation SLDRBInformation,
- rLCMode RLCMode,
+ sLDRBInformation SLDRBInformation,
+ rLCMode RLCMode,
iE-Extensions ProtocolExtensionContainer { { SLDRBs-ToBeSetup-ItemExtIEs } } OPTIONAL
}
@@ -4384,7 +6548,7 @@ SLDRBs-ToBeSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SLDRBs-ToBeSetupMod-Item ::= SEQUENCE {
sLDRBID SLDRBID,
- sLDRBInformation SLDRBInformation,
+ sLDRBInformation SLDRBInformation,
rLCMode RLCMode OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { SLDRBs-ToBeSetupMod-ItemExtIEs } } OPTIONAL
}
@@ -4393,8 +6557,37 @@ SLDRBs-ToBeSetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+SLDRXCycleList ::= SEQUENCE (SIZE(1.. maxnoofSLdestinations)) OF SLDRXCycleItem
+SLDRXCycleItem ::= SEQUENCE {
+ rXUEID BIT STRING (SIZE(24)),
+ sLDRXInformation SLDRXInformation,
+ iE-Extensions ProtocolExtensionContainer { { SLDRXCycleItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+SLDRXCycleItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SLDRXInformation ::= CHOICE {
+ sLDRXCycle SLDRXCycleLength,
+ nosLDRX SLDRXConfigurationIndicator,
+ choice-extension ProtocolIE-SingleContainer { { SLDRXInformation-ExtIEs} }
+}
+
+SLDRXCycleLength ::= ENUMERATED{ms10, ms20, ms32, ms40, ms60, ms64, ms70, ms80, ms128, ms160, ms256, ms320, ms512, ms640, ms1024, ms1280, ms2048, ms2560, ms5120, ms10240, ...}
+
+SLDRXConfigurationIndicator ::= ENUMERATED{ release, ...}
+
+
+SLDRXInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
SL-PHY-MAC-RLC-Config ::= OCTET STRING
+SL-RLC-ChannelToAddModList::= OCTET STRING
+
SL-ConfigDedicatedEUTRA-Info ::= OCTET STRING
SliceAvailableCapacity ::= SEQUENCE {
@@ -4409,7 +6602,7 @@ SliceAvailableCapacity-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SliceAvailableCapacityList ::= SEQUENCE (SIZE(1.. maxnoofBPLMNsNR)) OF SliceAvailableCapacityItem
SliceAvailableCapacityItem ::= SEQUENCE {
- pLMNIdentity PLMN-Identity,
+ pLMNIdentity PLMN-Identity,
sNSSAIAvailableCapacity-List SNSSAIAvailableCapacity-List,
iE-Extensions ProtocolExtensionContainer { { SliceAvailableCapacityItem-ExtIEs} } OPTIONAL
}
@@ -4422,7 +6615,7 @@ SNSSAIAvailableCapacity-List ::= SEQUENCE (SIZE(1.. maxnoofSliceItems)) OF SNSSA
SNSSAIAvailableCapacity-Item ::= SEQUENCE {
sNSSAI SNSSAI,
- sliceAvailableCapacityValueDownlink INTEGER (0..100) OPTIONAL,
+ sliceAvailableCapacityValueDownlink INTEGER (0..100) OPTIONAL,
sliceAvailableCapacityValueUplink INTEGER (0..100) OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { SNSSAIAvailableCapacity-Item-ExtIEs } } OPTIONAL
}
@@ -4431,6 +6624,45 @@ SNSSAIAvailableCapacity-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+SliceRadioResourceStatus ::= SEQUENCE {
+ sliceRadioResourceStatus SliceRadioResourceStatus-List,
+ iE-Extensions ProtocolExtensionContainer { { SliceRadioResourceStatus-ExtIEs} } OPTIONAL
+}
+
+SliceRadioResourceStatus-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SliceRadioResourceStatus-List ::= SEQUENCE (SIZE(1..maxnoofBPLMNsNR)) OF SliceRadioResourceStatus-Item
+
+SliceRadioResourceStatus-Item::= SEQUENCE {
+ pLMNIdentity PLMN-Identity,
+ sNSSAIRadioResourceStatus-List SNSSAIRadioResourceStatus-List,
+ iE-Extensions ProtocolExtensionContainer { { SliceRadioResourceStatus-Item-ExtIEs} } OPTIONAL
+}
+
+SliceRadioResourceStatus-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SNSSAIRadioResourceStatus-List ::= SEQUENCE (SIZE(1.. maxnoofSliceItems)) OF SNSSAIRadioResourceStatus-Item
+
+SNSSAIRadioResourceStatus-Item ::= SEQUENCE {
+ sNSSAI SNSSAI,
+ sNSSAIdlGBRPRBusage INTEGER (0..100),
+ sNSSAIulGBRPRBusage INTEGER (0..100),
+ sNSSAIdlNonGBRPRBusage INTEGER (0..100),
+ sNSSAIulNonGBRPRBusage INTEGER (0..100),
+ sNSSAIdlTotalPRBallocation INTEGER (0..100),
+ sNSSAIulTotalPRBallocation INTEGER (0..100),
+ iE-Extensions ProtocolExtensionContainer { { SNSSAIRadioResourceStatus-Item-ExtIEs } } OPTIONAL
+}
+
+SNSSAIRadioResourceStatus-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SliceSupportList ::= SEQUENCE (SIZE(1.. maxnoofSliceItems)) OF SliceSupportItem
SliceSupportItem ::= SEQUENCE {
@@ -4445,7 +6677,7 @@ SliceSupportItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SliceToReportList ::= SEQUENCE (SIZE(1.. maxnoofBPLMNsNR)) OF SliceToReportItem
SliceToReportItem ::= SEQUENCE {
- pLMNIdentity PLMN-Identity,
+ pLMNIdentity PLMN-Identity,
sNSSAIlist SNSSAI-list,
iE-Extensions ProtocolExtensionContainer { { SliceToReportItem-ExtIEs} } OPTIONAL
}
@@ -4472,7 +6704,7 @@ Slot-Configuration-List ::= SEQUENCE (SIZE(1.. maxnoofslots)) OF Slot-Configurat
Slot-Configuration-Item ::= SEQUENCE {
slotIndex INTEGER (0..5119, ...),
symbolAllocInSlot SymbolAllocInSlot,
- iE-Extensions ProtocolExtensionContainer { { Slot-Configuration-ItemExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { Slot-Configuration-ItemExtIEs } } OPTIONAL
}
Slot-Configuration-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -4519,6 +6751,28 @@ SpatialRelationforResourceIDItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+SpatialRelationPerSRSResource ::= SEQUENCE {
+ spatialRelationPerSRSResource-List SpatialRelationPerSRSResource-List,
+ iE-Extensions ProtocolExtensionContainer { { SpatialRelationPerSRSResource-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SpatialRelationPerSRSResource-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SpatialRelationPerSRSResource-List::= SEQUENCE(SIZE (1.. maxnoSRS-ResourcePerSet)) OF SpatialRelationPerSRSResourceItem
+
+SpatialRelationPerSRSResourceItem ::= SEQUENCE {
+ referenceSignal ReferenceSignal,
+ iE-Extensions ProtocolExtensionContainer { { SpatialRelationPerSRSResourceItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SpatialRelationPerSRSResourceItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SpatialRelationPos ::= CHOICE {
sSBPos SSB,
pRSInformationPos PRSInformationPos,
@@ -4616,7 +6870,9 @@ SRBs-ToBeSetup-Item ::= SEQUENCE {
}
SRBs-ToBeSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-AdditionalDuplicationIndication CRITICALITY ignore EXTENSION AdditionalDuplicationIndication PRESENCE optional },
+ { ID id-AdditionalDuplicationIndication CRITICALITY ignore EXTENSION AdditionalDuplicationIndication PRESENCE optional }|
+ { ID id-SDTRLCBearerConfiguration CRITICALITY ignore EXTENSION SDTRLCBearerConfiguration PRESENCE optional }|
+ { ID id-SRBMappingInfo CRITICALITY ignore EXTENSION UuRLCChannelID PRESENCE optional },
...
}
@@ -4628,7 +6884,9 @@ SRBs-ToBeSetupMod-Item ::= SEQUENCE {
}
SRBs-ToBeSetupMod-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-AdditionalDuplicationIndication CRITICALITY ignore EXTENSION AdditionalDuplicationIndication PRESENCE optional },
+ { ID id-AdditionalDuplicationIndication CRITICALITY ignore EXTENSION AdditionalDuplicationIndication PRESENCE optional }|
+ { ID id-SRBMappingInfo CRITICALITY ignore EXTENSION UuRLCChannelID PRESENCE optional }|
+ { ID id-CG-SDTindicatorSetup CRITICALITY reject EXTENSION CG-SDTindicatorSetup PRESENCE optional },
...
}
@@ -4665,31 +6923,37 @@ SRSConfiguration ::= SEQUENCE {
SRSConfiguration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
-}
+}
SrsFrequency ::= INTEGER (0..3279165)
+SRSPortIndex ::= ENUMERATED {id1000, id1001, id1002, id1003,...}
+
SRSPosResourceID ::= INTEGER (0..63)
SRSResource::= SEQUENCE {
- sRSResourceID SRSResourceID,
- nrofSRS-Ports ENUMERATED {port1, ports2, ports4},
+ sRSResourceID SRSResourceID,
+ nrofSRS-Ports ENUMERATED {port1, ports2, ports4},
transmissionComb TransmissionComb,
- startPosition INTEGER (0..13),
- nrofSymbols ENUMERATED {n1, n2, n4},
- repetitionFactor ENUMERATED {n1, n2, n4},
- freqDomainPosition INTEGER (0..67),
- freqDomainShift INTEGER (0..268),
- c-SRS INTEGER (0..63),
- b-SRS INTEGER (0..3),
- b-hop INTEGER (0..3),
- groupOrSequenceHopping ENUMERATED { neither, groupHopping, sequenceHopping },
+ startPosition INTEGER (0..13),
+ nrofSymbols ENUMERATED {n1, n2, n4},
+ repetitionFactor ENUMERATED {n1, n2, n4},
+ freqDomainPosition INTEGER (0..67),
+ freqDomainShift INTEGER (0..268),
+ c-SRS INTEGER (0..63),
+ b-SRS INTEGER (0..3),
+ b-hop INTEGER (0..3),
+ groupOrSequenceHopping ENUMERATED { neither, groupHopping, sequenceHopping },
resourceType ResourceType,
- sequenceId INTEGER (0..1023),
+ sequenceId INTEGER (0..1023),
iE-Extensions ProtocolExtensionContainer { { SRSResource-ExtIEs } } OPTIONAL
}
SRSResource-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-nrofSymbolsExtended CRITICALITY ignore EXTENSION NrofSymbolsExtended PRESENCE optional}|
+ { ID id-repetitionFactorExtended CRITICALITY ignore EXTENSION RepetitionFactorExtended PRESENCE optional}|
+ { ID id-startRBHopping CRITICALITY ignore EXTENSION StartRBHopping PRESENCE optional}|
+ { ID id-startRBIndex CRITICALITY ignore EXTENSION StartRBIndex PRESENCE optional},
...
}
@@ -4700,7 +6964,7 @@ SRSResourceID-List::= SEQUENCE (SIZE (1..maxnoSRS-ResourcePerSet)) OF SRSResourc
SRSResource-List ::= SEQUENCE (SIZE (1..maxnoSRS-Resources)) OF SRSResource
SRSResourceSet::= SEQUENCE {
- sRSResourceSetID SRSResourceSetID,
+ sRSResourceSetID SRSResourceSetID,
sRSResourceID-List SRSResourceID-List,
resourceSetType ResourceSetType,
iE-Extensions ProtocolExtensionContainer { { SRSResourceSet-ExtIEs } } OPTIONAL
@@ -4723,10 +6987,11 @@ SRSResourceSetItem ::= SEQUENCE {
}
SRSResourceSetItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSSpatialRelationPerSRSResource CRITICALITY ignore EXTENSION SpatialRelationPerSRSResource PRESENCE optional},
...
}
-SRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-ResourceSets)) OF SRSResourceSet
+SRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-ResourceSets)) OF SRSResourceSet
SRSResourceTrigger ::= SEQUENCE {
aperiodicSRSResourceTriggerList AperiodicSRSResourceTriggerList,
@@ -4738,17 +7003,69 @@ SRSResourceTrigger-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
}
+SRSResourcetype ::= SEQUENCE {
+ sRSResourceTypeChoice SRSResourceTypeChoice,
+ iE-Extensions ProtocolExtensionContainer { { SRSResourcetype-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SRSResourcetype-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSPortIndex CRITICALITY ignore EXTENSION SRSPortIndex PRESENCE optional },
+ ...
+}
+
+SRSResourceTypeChoice ::= CHOICE {
+ sRSResourceInfo SRSInfo,
+ posSRSResourceInfo PosSRSInfo,
+ choice-extension ProtocolIE-SingleContainer { { SRSResourceTypeChoice-ExtIEs} }
+}
+
+SRSResourceTypeChoice-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+SRSInfo ::= SEQUENCE {
+ sRSResource SRSResourceID,
+ ...
+}
+
+SRSPosRRCInactiveConfig ::= OCTET STRING
+
+SRSPosRRCInactiveQueryIndication ::= ENUMERATED {true, ...}
+
+PosSRSInfo ::= SEQUENCE {
+ posSRSResourceID SRSPosResourceID,
+ ...
+}
+
SSB ::= SEQUENCE {
pCI-NR NRPCI,
ssb-index SSB-Index OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {SSB-ExtIEs} } OPTIONAL
}
+SSBCoverageModification-List ::= SEQUENCE (SIZE (1..maxnoofSSBAreas)) OF SSBCoverageModification-Item
+
+SSBCoverageModification-Item::= SEQUENCE {
+ sSBIndex INTEGER(0..63),
+ sSBCoverageState SSBCoverageState,
+ iE-Extensions ProtocolExtensionContainer { { SSBCoverageModification-Item-ExtIEs} } OPTIONAL,
+...
+}
+
+SSBCoverageModification-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SSBCoverageState ::= INTEGER (0..15, ...)
+
+
SSB-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-SSB-freqInfo ::= INTEGER (0..maxNRARFCN)
+SSB-freqInfo ::= INTEGER (0..maxNRARFCN)
SSB-Index ::= INTEGER(0..63)
@@ -4774,7 +7091,7 @@ SSBAreaCapacityValueList ::= SEQUENCE (SIZE(1.. maxnoofSSBAreas)) OF SSBAreaCapa
SSBAreaCapacityValueItem ::= SEQUENCE {
sSBIndex INTEGER(0..63),
sSBAreaCapacityValue INTEGER (0..100),
- iE-Extensions ProtocolExtensionContainer { { SSBAreaCapacityValueItem-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { SSBAreaCapacityValueItem-ExtIEs} } OPTIONAL
}
SSBAreaCapacityValueItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -4802,7 +7119,7 @@ SSBAreaRadioResourceStatusItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
SSBInformation ::= SEQUENCE {
sSBInformationList SSBInformationList,
- iE-Extensions ProtocolExtensionContainer { { SSBInformation-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { SSBInformation-ExtIEs } } OPTIONAL
}
SSBInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -4814,7 +7131,7 @@ SSBInformationList ::= SEQUENCE (SIZE(1.. maxnoofSSBs)) OF SSBInformationItem
SSBInformationItem ::= SEQUENCE {
sSB-Configuration SSB-TF-Configuration,
pCI-NR NRPCI,
- iE-Extensions ProtocolExtensionContainer { { SSBInformationItem-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { SSBInformationItem-ExtIEs } } OPTIONAL
}
SSBInformationItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -4834,7 +7151,8 @@ SSB-PositionsInBurst-ExtIEs F1AP-PROTOCOL-IES ::= {
SSB-TF-Configuration ::= SEQUENCE {
sSB-frequency INTEGER (0..3279165),
- sSB-subcarrier-spacing ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, ...},
+ sSB-subcarrier-spacing ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, ..., kHz480, kHz960},
+ -- The value kHz60 is not supported in this version of the specification.
sSB-Transmit-power INTEGER (-60..50),
sSB-periodicity ENUMERATED {ms5, ms10, ms20, ms40, ms80, ms160, ...},
sSB-half-frame-offset INTEGER(0..1),
@@ -4860,10 +7178,32 @@ SSBToReportItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+StartRBIndex ::= CHOICE{
+ freqScalingFactor2 INTEGER(0..1),
+ freqScalingFactor4 INTEGER(0..3),
+ choice-extension ProtocolIE-SingleContainer { { StartRBIndex-ExtIEs} }
+}
+StartRBIndex-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+StartRBHopping ::= ENUMERATED {enable}
+
+StartTimeAndDuration ::= SEQUENCE {
+ startTime RelativeTime1900 OPTIONAL,
+ duration INTEGER (0..90060, ...) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { StartTimeAndDuration-ExtIEs } } OPTIONAL,
+ ...
+}
+
+StartTimeAndDuration-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SUL-Information ::= SEQUENCE {
sUL-NRARFCN INTEGER (0..maxNRARFCN),
sUL-transmission-Bandwidth Transmission-Bandwidth,
- iE-Extensions ProtocolExtensionContainer { { SUL-InformationExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SUL-InformationExtIEs} } OPTIONAL,
...
}
@@ -4877,12 +7217,23 @@ SubcarrierSpacing ::= ENUMERATED { kHz15, kHz30, kHz60, kHz120, kHz240, spare3,
SubscriberProfileIDforRFP ::= INTEGER (1..256, ...)
+SuccessfulHOReportInformationList::= SEQUENCE (SIZE(1.. maxnoofSuccessfulHOReports)) OF SuccessfulHOReportInformation-Item
+
+SuccessfulHOReportInformation-Item ::= SEQUENCE {
+ successfulHOReportContainer OCTET STRING,
+ iE-Extensions ProtocolExtensionContainer { { SuccessfulHOReportInformation-Item-ExtIEs } } OPTIONAL
+}
+
+SuccessfulHOReportInformation-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SULAccessIndication ::= ENUMERATED {true,...}
SupportedSULFreqBandItem ::= SEQUENCE {
freqBandIndicatorNr INTEGER (1..1024,...),
- iE-Extensions ProtocolExtensionContainer { { SupportedSULFreqBandItem-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SupportedSULFreqBandItem-ExtIEs} } OPTIONAL,
...
}
@@ -4890,11 +7241,13 @@ SupportedSULFreqBandItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+SurvivalTime ::= INTEGER (0.. 1920000,...)
+
SymbolAllocInSlot ::= CHOICE {
- all-DL NULL,
- all-UL NULL,
- both-DL-and-UL NumDLULSymbols,
- choice-extension ProtocolIE-SingleContainer { { SymbolAllocInSlot-ExtIEs } }
+ all-DL NULL,
+ all-UL NULL,
+ both-DL-and-UL NumDLULSymbols,
+ choice-extension ProtocolIE-SingleContainer { { SymbolAllocInSlot-ExtIEs } }
}
SymbolAllocInSlot-ExtIEs F1AP-PROTOCOL-IES ::= {
@@ -4922,10 +7275,25 @@ TargetCellList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+NSAGSupportList ::= SEQUENCE (SIZE(1.. maxnoofNSAGs)) OF NSAGSupportItem
+
+NSAGSupportItem ::= SEQUENCE {
+ nSAG-ID NSAG-ID,
+ nSAGSliceSupport ExtendedSliceSupportList,
+ iE-Extensions ProtocolExtensionContainer { {NSAGSupportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NSAGSupportItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NSAG-ID ::= INTEGER (0..255, ...)
+
TDD-Info ::= SEQUENCE {
- nRFreqInfo NRFreqInfo,
+ nRFreqInfo NRFreqInfo,
transmission-Bandwidth Transmission-Bandwidth,
- iE-Extensions ProtocolExtensionContainer { {TDD-Info-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TDD-Info-ExtIEs} } OPTIONAL,
...
}
@@ -4936,8 +7304,53 @@ TDD-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+TDD-InfoRel16 ::= SEQUENCE {
+ tDD-FreqInfo FreqInfoRel16 OPTIONAL,
+ sUL-FreqInfo FreqInfoRel16 OPTIONAL,
+ tDD-UL-DLConfigCommonNR TDD-UL-DLConfigCommonNR OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TDD-InfoRel16-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TDD-InfoRel16-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
TDD-UL-DLConfigCommonNR ::= OCTET STRING
+TRPTEGInformation ::= CHOICE {
+ rxTx-TEG RxTxTEG,
+ rx-TEG RxTEG,
+ choice-extension ProtocolIE-SingleContainer { { TRPTEGInformation-ExtIEs} }
+}
+
+TRPTEGInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+RxTxTEG ::= SEQUENCE {
+ tRP-RxTx-TEGInformation TRP-RxTx-TEGInformation,
+ tRP-Tx-TEGInformation TRP-Tx-TEGInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RxTxTEG-ExtIEs } } OPTIONAL,
+ ...
+}
+
+RxTxTEG-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RxTEG ::= SEQUENCE {
+ tRP-Rx-TEGInformation TRP-Rx-TEGInformation,
+ tRP-Tx-TEGInformation TRP-Tx-TEGInformation,
+ iE-Extensions ProtocolExtensionContainer { { RxTEG-ExtIEs } } OPTIONAL,
+ ...
+}
+
+RxTEG-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TimeReferenceInformation ::= SEQUENCE {
referenceTime ReferenceTime,
referenceSFN ReferenceSFN,
@@ -4972,25 +7385,31 @@ TimeStampSlotIndex ::= CHOICE {
}
TimeStampSlotIndex-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-SCS-480 CRITICALITY reject TYPE SCS-480 PRESENCE mandatory}|
+ { ID id-SCS-960 CRITICALITY reject TYPE SCS-960 PRESENCE mandatory},
...
}
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
+TimingErrorMargin ::= ENUMERATED {m0Tc, m2Tc, m4Tc, m6Tc, m8Tc, m12Tc, m16Tc, m20Tc, m24Tc, m32Tc, m40Tc, m48Tc, m56Tc, m64Tc, m72Tc, m80Tc, ...}
+
TimingMeasurementQuality ::= SEQUENCE {
measurementQuality INTEGER(0..31),
resolution ENUMERATED{m0dot1, m1, m10, m30, ...},
- iE-Extensions ProtocolExtensionContainer { { TimingMeasurementQuality-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { TimingMeasurementQuality-ExtIEs} } OPTIONAL
}
TimingMeasurementQuality-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+TMGI ::= OCTET STRING (SIZE(6))
+
TNLAssociationUsage ::= ENUMERATED {
ue,
non-ue,
- both,
+ both,
...
}
@@ -5015,12 +7434,12 @@ TraceActivation ::= SEQUENCE {
}
TraceActivation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- {ID id-mdtConfiguration CRITICALITY ignore EXTENSION MDTConfiguration PRESENCE optional}|
- {ID id-TraceCollectionEntityURI CRITICALITY ignore EXTENSION URI-address PRESENCE optional },
+ {ID id-mdtConfiguration CRITICALITY ignore EXTENSION MDTConfiguration PRESENCE optional}|
+ {ID id-TraceCollectionEntityURI CRITICALITY ignore EXTENSION URI-address PRESENCE optional },
...
}
-TraceDepth ::= ENUMERATED {
+TraceDepth ::= ENUMERATED {
minimum,
medium,
maximum,
@@ -5069,6 +7488,17 @@ TransmissionComb ::= CHOICE {
choice-extension ProtocolIE-SingleContainer { { TransmissionComb-ExtIEs} }
}
TransmissionComb-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-transmissionCombn8 CRITICALITY reject TYPE TransmissionCombn8 PRESENCE mandatory},
+ ...
+}
+
+TransmissionCombn8 ::= SEQUENCE {
+ combOffset-n8 INTEGER (0..7),
+ cyclicShift-n8 INTEGER (0..5),
+ iE-Extensions ProtocolExtensionContainer { { TransmissionCombn8-ExtIEs} } OPTIONAL
+}
+
+TransmissionCombn8-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -5102,7 +7532,7 @@ Transport-UP-Layer-Address-Info-To-Add-Item ::= SEQUENCE {
iE-Extensions ProtocolExtensionContainer { { Transport-UP-Layer-Address-Info-To-Add-ItemExtIEs } } OPTIONAL
}
-Transport-UP-Layer-Address-Info-To-Add-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+Transport-UP-Layer-Address-Info-To-Add-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -5114,12 +7544,85 @@ Transport-UP-Layer-Address-Info-To-Remove-Item ::= SEQUENCE {
iE-Extensions ProtocolExtensionContainer { { Transport-UP-Layer-Address-Info-To-Remove-ItemExtIEs } } OPTIONAL
}
-Transport-UP-Layer-Address-Info-To-Remove-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+Transport-UP-Layer-Address-Info-To-Remove-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
TransmissionActionIndicator ::= ENUMERATED {stop, ..., restart }
+TRPBeamAntennaInformation ::= SEQUENCE {
+ choice-TRP-Beam-Antenna-Info-Item Choice-TRP-Beam-Antenna-Info-Item ,
+ iE-Extensions ProtocolExtensionContainer {{ TRPBeamAntennaInformation-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRPBeamAntennaInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Choice-TRP-Beam-Antenna-Info-Item ::= CHOICE {
+ reference TRPID,
+ explicit TRP-BeamAntennaExplicitInformation,
+ noChange NULL,
+ choice-extension ProtocolIE-SingleContainer { { Choice-TRP-Beam-Info-Item-ExtIEs } }
+}
+
+Choice-TRP-Beam-Info-Item-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+TRP-BeamAntennaExplicitInformation ::= SEQUENCE {
+ trp-BeamAntennaAngles TRP-BeamAntennaAngles,
+ lcs-to-gcs-translation LCS-to-GCS-Translation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-BeamAntennaExplicitInformation-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-BeamAntennaExplicitInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+TRP-BeamAntennaAngles ::= SEQUENCE (SIZE (1.. maxnoAzimuthAngles)) OF TRP-BeamAntennaAnglesList-Item
+
+TRP-BeamAntennaAnglesList-Item ::= SEQUENCE {
+ trp-azimuth-angle INTEGER (0..359),
+ trp-azimuth-angle-fine INTEGER (0..9) OPTIONAL,
+ trp-elevation-angle-list SEQUENCE (SIZE (1.. maxnoElevationAngles)) OF TRP-ElevationAngleList-Item,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-BeamAntennaAnglesList-Item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-BeamAntennaAnglesList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-ElevationAngleList-Item ::= SEQUENCE {
+ trp-elevation-angle INTEGER (0..180),
+ trp-elevation-angle-fine INTEGER (0..9) OPTIONAL,
+ trp-beam-power-list SEQUENCE (SIZE (2..maxNumResourcesPerAngle)) OF TRP-Beam-Power-Item,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-ElevationAngleList-Item-ExtIEs}} OPTIONAL,
+...
+}
+TRP-ElevationAngleList-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-Beam-Power-Item ::= SEQUENCE {
+ pRSResourceSetID PRS-Resource-Set-ID OPTIONAL,
+ pRSResourceID PRS-Resource-ID,
+ relativePower INTEGER (0..30), --negative value
+ relativePowerFine INTEGER (0..9) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-Beam-Power-Item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-Beam-Power-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
TRPID ::= INTEGER (0.. maxnoofTRPs, ...)
TRPInformation ::= SEQUENCE {
@@ -5137,23 +7640,28 @@ TRPInformationItem ::= SEQUENCE {
iE-Extensions ProtocolExtensionContainer { { TRPInformationItem-ExtIEs } } OPTIONAL
}
-TRPInformationItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+TRPInformationItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-TRPInformationTypeItem ::= ENUMERATED {
+TRPInformationTypeItem ::= ENUMERATED {
nrPCI,
nG-RAN-CGI,
- arfcn,
+ arfcn,
pRSConfig,
sSBConfig,
sFNInitTime,
spatialDirectInfo,
geoCoord,
-...}
+ ...,
+ trp-type,
+ ondemandPRS,
+ trpTxTeg,
+ beam-antenna-info
+}
-TRPInformationTypeResponseList ::= SEQUENCE (SIZE(1.. maxnoofTRPInfoTypes)) OF TRPInformationTypeResponseItem
+TRPInformationTypeResponseList ::= SEQUENCE (SIZE(1.. maxnoofTRPInfoTypes)) OF TRPInformationTypeResponseItem
TRPInformationTypeResponseItem ::= CHOICE {
pCI-NR NRPCI,
@@ -5168,6 +7676,10 @@ TRPInformationTypeResponseItem ::= CHOICE {
}
TRPInformationTypeResponseItem-ExtIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-TRPType CRITICALITY reject TYPE TRPType PRESENCE mandatory }|
+ { ID id-OnDemandPRS CRITICALITY reject TYPE OnDemandPRS-Info PRESENCE mandatory}|
+ { ID id-TRPTxTEGAssociation CRITICALITY reject TYPE TRPTxTEGAssociation PRESENCE mandatory}|
+ { ID id-TRPBeamAntennaInformation CRITICALITY reject TYPE TRPBeamAntennaInformation PRESENCE mandatory },
...
}
@@ -5179,7 +7691,7 @@ TRPListItem ::= SEQUENCE {
iE-Extensions ProtocolExtensionContainer { { TRPListItem-ExtIEs } } OPTIONAL
}
-TRPListItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+TRPListItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -5205,16 +7717,35 @@ TRPMeasurementQuality-Item-ExtIEs F1AP-PROTOCOL-IES ::= {
TRP-MeasurementRequestList ::= SEQUENCE (SIZE (1..maxNoOfMeasTRPs)) OF TRP-MeasurementRequestItem
TRP-MeasurementRequestItem ::= SEQUENCE {
- tRPID TRPID,
- search-window-information Search-window-information OPTIONAL,
+ tRPID TRPID,
+ search-window-information Search-window-information OPTIONAL,
iE-extensions ProtocolExtensionContainer { { TRP-MeasurementRequestItem-ExtIEs } } OPTIONAL
}
TRP-MeasurementRequestItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-NRCGI CRITICALITY ignore EXTENSION NRCGI PRESENCE optional },
+ { ID id-NRCGI CRITICALITY ignore EXTENSION NRCGI PRESENCE optional }|
+ { ID id-AoA-SearchWindow CRITICALITY ignore EXTENSION AoA-AssistanceInfo PRESENCE optional }|
+ { ID id-NumberOfTRPRxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTEG PRESENCE optional }|
+ { ID id-NumberOfTRPRxTxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTxTEG PRESENCE optional },
+ ...
+}
+
+TRP-PRS-Info-List ::= SEQUENCE (SIZE(1.. maxnoofPRSTRPs)) OF TRP-PRS-Info-List-Item
+
+TRP-PRS-Info-List-Item ::= SEQUENCE {
+ tRP-ID TRPID,
+ nR-PCI NRPCI,
+ cGI-NR NRCGI OPTIONAL,
+ pRSConfiguration PRSConfiguration,
+ iE-Extensions ProtocolExtensionContainer { { TRP-PRS-Info-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TRP-PRS-Info-List-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+
TRPPositionDefinitionType ::= CHOICE {
direct TRPPositionDirect,
referenced TRPPositionReferenced,
@@ -5264,6 +7795,65 @@ TRPReferencePointType-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
+TRP-Rx-TEGInformation ::= SEQUENCE {
+ tRP-Rx-TEGID INTEGER (0..31),
+ tRP-Rx-TimingErrorMargin TimingErrorMargin,
+ iE-Extensions ProtocolExtensionContainer { { TRP-Rx-TEGInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-Rx-TEGInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-RxTx-TEGInformation ::= SEQUENCE {
+ tRP-RxTx-TEGID INTEGER (0..255),
+ tRP-RxTx-TimingErrorMargin RxTxTimingErrorMargin,
+ iE-Extensions ProtocolExtensionContainer { { TRP-RxTx-TEGInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-RxTx-TEGInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+TRP-Tx-TEGInformation ::= SEQUENCE {
+ tRP-Tx-TEGID INTEGER (0..7),
+ tRP-Tx-TimingErrorMargin TimingErrorMargin,
+ iE-Extensions ProtocolExtensionContainer { { TRP-Tx-TEGInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-Tx-TEGInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRPTxTEGAssociation ::= SEQUENCE (SIZE(1.. maxnoTRPTEGs)) OF TRPTEG-Item
+
+TRPTEG-Item ::= SEQUENCE {
+ tRP-Tx-TEGInformation TRP-Tx-TEGInformation,
+ dl-PRSResourceSetID PRS-Resource-Set-ID,
+ dl-PRSResourceID-List SEQUENCE (SIZE(1.. maxnoofPRS-ResourcesPerSet)) OF DLPRSResourceID-Item OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { TRPTEGItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRPTEGItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DLPRSResourceID-Item ::= SEQUENCE {
+ dl-PRSResourceID PRS-Resource-ID,
+ iE-Extensions ProtocolExtensionContainer { { DLPRSResource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DLPRSResource-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
TypeOfError ::= ENUMERATED {
not-understood,
missing,
@@ -5280,6 +7870,15 @@ Transport-Layer-Address-Info-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+TRPType ::= ENUMERATED {
+ prsOnlyTP,
+ srsOnlyRP,
+ tp,
+ rp,
+ trp,
+ ...
+}
+
TSCAssistanceInformation ::= SEQUENCE {
periodicity Periodicity,
burstArrivalTime BurstArrivalTime OPTIONAL,
@@ -5288,6 +7887,7 @@ TSCAssistanceInformation ::= SEQUENCE {
}
TSCAssistanceInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SurvivalTime CRITICALITY ignore EXTENSION SurvivalTime PRESENCE optional },
...
}
@@ -5302,6 +7902,26 @@ TSCTrafficCharacteristics-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+TRP-MeasurementUpdateList ::= SEQUENCE (SIZE (1..maxNoOfMeasTRPs)) OF TRP-MeasurementUpdateItem
+
+TRP-MeasurementUpdateItem ::= SEQUENCE {
+ tRP-ID TRPID,
+ aoA-window-information AoA-AssistanceInfo OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { TRP-MeasurementUpdateItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-MeasurementUpdateItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-NumberOfTRPRxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTEG PRESENCE optional }|
+ { ID id-NumberOfTRPRxTxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTxTEG PRESENCE optional },
+ ...
+}
+
+TwoPHRModeMCG ::= ENUMERATED {enabled, ...}
+
+TwoPHRModeSCG ::= ENUMERATED {enabled, ...}
+
+
-- U
UAC-Assistance-Info ::= SEQUENCE {
uACPLMN-List UACPLMN-List,
@@ -5338,7 +7958,7 @@ UACType-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
UACCategoryType ::= CHOICE {
uACstandardized UACAction,
- uACOperatorDefined UACOperatorDefined,
+ uACOperatorDefined UACOperatorDefined,
choice-extension ProtocolIE-SingleContainer { { UACCategoryType-ExtIEs } }
}
@@ -5371,7 +7991,7 @@ UACReductionIndication ::= INTEGER (0..100)
UE-associatedLogicalF1-ConnectionItem ::= SEQUENCE {
gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID OPTIONAL,
gNB-DU-UE-F1AP-ID GNB-DU-UE-F1AP-ID OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { UE-associatedLogicalF1-ConnectionItemExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-associatedLogicalF1-ConnectionItemExtIEs} } OPTIONAL,
...
}
@@ -5389,18 +8009,143 @@ UEContextNotRetrievable ::= ENUMERATED {true, ...}
UEIdentityIndexValue ::= CHOICE {
indexLength10 BIT STRING (SIZE (10)),
- choice-extension ProtocolIE-SingleContainer { {UEIdentityIndexValueChoice-ExtIEs} }
+ choice-extension ProtocolIE-SingleContainer { {UEIdentityIndexValueChoice-ExtIEs} }
}
UEIdentityIndexValueChoice-ExtIEs F1AP-PROTOCOL-IES ::= {
...
}
+UEIdentity-List-For-Paging-Item ::= SEQUENCE {
+ uEIdentityIndexValue UEIdentityIndexValue,
+ pagingDRX PagingDRX OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UEIdentity-List-For-Paging-Item-ExtIEs} } OPTIONAL
+}
+
+UEIdentity-List-For-Paging-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-MulticastMRBs-ConfirmedToBeModified-Item::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mrb-type-reconfiguration MBSPTPRetransmissionTunnelRequired OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-ConfirmedToBeModified-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-ConfirmedToBeModified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+UE-MulticastMRBs-RequiredToBeModified-Item::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mrb-type-reconfiguration ENUMERATED {true, ...} OPTIONAL,
+ mrb-reconfigured-RLCtype ENUMERATED {
+ rlc-um-ptp,
+ rlc-am-ptp,
+ rlc-um-dl-ptm,
+ two-rlc-um-dl-ptp-and-dl-ptm,
+ three-rlc-um-dl-ptp-ul-ptp-dl-ptm,
+ two-rlc-am-ptp-um-dl-ptm,
+ ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-RequiredToBeModified-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-RequiredToBeModified-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-MulticastF1UContextReferenceCU CRITICALITY reject EXTENSION MulticastF1UContextReferenceCU PRESENCE optional},
+ ...
+}
+
+UE-MulticastMRBs-RequiredToBeReleased-Item::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-RequiredToBeReleased-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-RequiredToBeReleased-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-MulticastMRBs-Setup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ multicastF1UContextReferenceCU MulticastF1UContextReferenceCU,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-Setup-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-Setup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-MulticastMRBs-Setupnew-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ multicastF1UContextReferenceCU MulticastF1UContextReferenceCU,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-Setupnew-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-Setupnew-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-MulticastMRBs-ToBeReleased-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-ToBeReleased-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-ToBeReleased-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-MulticastMRBs-ToBeSetup-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mbsPTPRetransmissionTunnelRequired MBSPTPRetransmissionTunnelRequired OPTIONAL,
+ mbsPTPForwardingRequiredInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-ToBeSetup-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-ToBeSetup-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-Source-MRB-ID CRITICALITY ignore EXTENSION MRB-ID PRESENCE optional },
+ ...
+}
+
+UE-MulticastMRBs-ToBeSetup-atModify-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mbsPTPRetransmissionTunnelRequired MBSPTPRetransmissionTunnelRequired OPTIONAL,
+ mbsPTPForwardingRequiredInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-MulticastMRBs-ToBeSetup-atModify-Item-ExtIEs } } OPTIONAL
+}
+
+UE-MulticastMRBs-ToBeSetup-atModify-Item-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+UEPagingCapability ::= SEQUENCE {
+ iNACTIVEStatePODetermination ENUMERATED {supported, ...} OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { { UEPagingCapability-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEPagingCapability-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-RedCapIndication CRITICALITY ignore EXTENSION RedCapIndication PRESENCE optional },
+ ...
+}
+
+UEReportingInformation::= SEQUENCE {
+ reportingAmount ENUMERATED {ma0, ma1, ma2, ma4, ma8, ma16, ma32, ma64},
+ reportingInterval ENUMERATED {none, one, two, four, eight, ten, sixteen, twenty, thirty-two, sixty-four, ...},
+ iE-extensions ProtocolExtensionContainer { { UEReportingInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+
+UEReportingInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+UlTxDirectCurrentMoreCarrierInformation::= OCTET STRING
+
UL-AoA ::= SEQUENCE {
azimuthAoA INTEGER (0..3599),
- zenithAoA INTEGER (0..1799) OPTIONAL,
- lCS-to-GCS-TranslationAoA LCS-to-GCS-TranslationAoA OPTIONAL,
- iE-extensions ProtocolExtensionContainer { { UL-AoA-ExtIEs } }
+ zenithAoA INTEGER (0..1799) OPTIONAL,
+ lCS-to-GCS-Translation LCS-to-GCS-Translation OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { UL-AoA-ExtIEs } } OPTIONAL,
+ ...
}
UL-AoA-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
@@ -5424,7 +8169,7 @@ UL-BH-Non-UP-Traffic-Mapping-Item ::= SEQUENCE {
iE-Extensions ProtocolExtensionContainer { { UL-BH-Non-UP-Traffic-Mapping-ItemExtIEs } } OPTIONAL
}
-UL-BH-Non-UP-Traffic-Mapping-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+UL-BH-Non-UP-Traffic-Mapping-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -5437,6 +8182,8 @@ ULConfigurationExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
+UL-GapFR2-Config ::= OCTET STRING
+
UL-RTOA-Measurement ::= SEQUENCE {
uL-RTOA-MeasurementItem UL-RTOA-MeasurementItem,
additionalPath-List AdditionalPath-List OPTIONAL,
@@ -5444,6 +8191,8 @@ UL-RTOA-Measurement ::= SEQUENCE {
}
UL-RTOA-Measurement-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ExtendedAdditionalPathList CRITICALITY ignore EXTENSION ExtendedAdditionalPathList PRESENCE optional}|
+ { ID id-TRPRx-TEGInformation CRITICALITY ignore EXTENSION TRP-Rx-TEGInformation PRESENCE optional},
...
}
@@ -5453,7 +8202,7 @@ UL-RTOA-MeasurementItem ::= CHOICE {
k2 INTEGER (0..492513),
k3 INTEGER (0..246257),
k4 INTEGER (0..123129),
- k5 INTEGER (0..61565),
+ k5 INTEGER (0..61565),
choice-extension ProtocolIE-SingleContainer { { UL-RTOA-MeasurementItem-ExtIEs } }
}
@@ -5463,6 +8212,17 @@ UL-RTOA-MeasurementItem-ExtIEs F1AP-PROTOCOL-IES ::= {
UL-SRS-RSRP ::= INTEGER (0..126)
+UL-SRS-RSRPP ::= SEQUENCE {
+ firstPathRSRPP INTEGER (0..126),
+ iE-extensions ProtocolExtensionContainer { { UL-SRS-RSRPP-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UL-SRS-RSRPP-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
ULUEConfiguration ::= ENUMERATED {no-data, shared, only, ...}
UL-UP-TNL-Information-to-Update-List-Item ::= SEQUENCE {
@@ -5491,13 +8251,14 @@ UL-UP-TNL-Address-to-Update-List-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
ULUPTNLInformation-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofULUPTNLInformation)) OF ULUPTNLInformation-ToBeSetup-Item
ULUPTNLInformation-ToBeSetup-Item ::=SEQUENCE {
- uLUPTNLInformation UPTransportLayerInformation,
+ uLUPTNLInformation UPTransportLayerInformation,
iE-Extensions ProtocolExtensionContainer { { ULUPTNLInformation-ToBeSetup-ItemExtIEs } } OPTIONAL,
...
}
ULUPTNLInformation-ToBeSetup-ItemExtIEs F1AP-PROTOCOL-EXTENSION ::= {
- { ID id-BHInfo CRITICALITY ignore EXTENSION BHInfo PRESENCE optional },
+ { ID id-BHInfo CRITICALITY ignore EXTENSION BHInfo PRESENCE optional }|
+ { ID id-DRBMappingInfo CRITICALITY ignore EXTENSION UuRLCChannelID PRESENCE optional },
...
}
@@ -5507,6 +8268,8 @@ UplinkChannelBW-PerSCS-List ::= SEQUENCE (SIZE (1..maxnoSCSs)) OF SCS-SpecificCa
UplinkTxDirectCurrentListInformation ::= OCTET STRING
+UplinkTxDirectCurrentTwoCarrierListInfo ::= OCTET STRING
+
UPTransportLayerInformation ::= CHOICE {
gTPTunnel GTPTunnel,
choice-extension ProtocolIE-SingleContainer { { UPTransportLayerInformation-ExtIEs} }
@@ -5518,24 +8281,156 @@ UPTransportLayerInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
URI-address ::= VisibleString
+Uncertainty-range-AoA ::= INTEGER (0..3599)
+
+Uncertainty-range-ZoA ::= INTEGER (0..1799)
+
+
+UuRLCChannelID ::= INTEGER (1..32)
+
+UuRLCChannelQoSInformation ::= CHOICE {
+ uuRLCChannelQoS QoSFlowLevelQoSParameters,
+ uuControlPlaneTrafficType ENUMERATED {srb0,srb1,srb2,...},
+ choice-extension ProtocolIE-SingleContainer { { UuRLCChannelQoSInformation-ExtIEs} }
+}
+
+UuRLCChannelQoSInformation-ExtIEs F1AP-PROTOCOL-IES ::= {
+ ...
+}
+
+UuRLCChannelToBeSetupList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelToBeSetupItem
+
+UuRLCChannelToBeSetupItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ uuRLCChannelQoSInformation UuRLCChannelQoSInformation,
+ rLCMode RLCMode,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelToBeSetupItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelToBeSetupItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelToBeModifiedList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelToBeModifiedItem
+
+UuRLCChannelToBeModifiedItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ uuRLCChannelQoSInformation UuRLCChannelQoSInformation OPTIONAL,
+ rLCMode RLCMode OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelToBeModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelToBeModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelToBeReleasedList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelToBeReleasedItem
+
+UuRLCChannelToBeReleasedItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelToBeReleasedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelToBeReleasedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelSetupList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelSetupItem
+
+UuRLCChannelSetupItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelSetupItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelSetupItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelFailedToBeSetupList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelFailedToBeSetupItem
+
+UuRLCChannelFailedToBeSetupItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelFailedToBeSetupItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelFailedToBeSetupItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelModifiedList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelModifiedItem
+
+UuRLCChannelModifiedItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelFailedToBeModifiedList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelFailedToBeModifiedItem
+
+UuRLCChannelFailedToBeModifiedItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelFailedToBeModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelFailedToBeModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelRequiredToBeModifiedList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelRequiredToBeModifiedItem
+
+UuRLCChannelRequiredToBeModifiedItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelRequiredToBeModifiedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelRequiredToBeModifiedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UuRLCChannelRequiredToBeReleasedList ::= SEQUENCE (SIZE(1.. maxnoofUuRLCChannels)) OF UuRLCChannelRequiredToBeReleasedItem
+
+UuRLCChannelRequiredToBeReleasedItem ::= SEQUENCE {
+ uuRLCChannelID UuRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { UuRLCChannelRequiredToBeReleasedItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UuRLCChannelRequiredToBeReleasedItem-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
-- V
VictimgNBSetID ::= SEQUENCE {
victimgNBSetID GNBSetID,
- iE-Extensions ProtocolExtensionContainer { { VictimgNBSetID-ExtIEs } } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { { VictimgNBSetID-ExtIEs } } OPTIONAL
}
VictimgNBSetID-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
...
}
-VehicleUE ::= ENUMERATED {
+VehicleUE ::= ENUMERATED {
authorized,
not-authorized,
...
}
-PedestrianUE ::= ENUMERATED {
+PedestrianUE ::= ENUMERATED {
authorized,
not-authorized,
...
@@ -5549,4 +8444,16 @@ PedestrianUE ::= ENUMERATED {
-- Z
+ZoAInformation ::= SEQUENCE {
+ zenithAoA INTEGER (0..1799),
+ lCS-to-GCS-Translation LCS-to-GCS-Translation OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { ZoAInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+ZoAInformation-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
END
diff --git a/epan/dissectors/asn1/f1ap/F1AP-PDU-Contents.asn b/epan/dissectors/asn1/f1ap/F1AP-PDU-Contents.asn
index 20df1c09d2..92aaaa8e52 100644
--- a/epan/dissectors/asn1/f1ap/F1AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/f1ap/F1AP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.473 V16.7.0 (2021-10)
+-- 3GPP TS 38.473 V17.7.0 (2023-12)
-- 9.4.4 PDU Definitions
-- **************************************************************
--
@@ -6,11 +6,11 @@
--
-- **************************************************************
-F1AP-PDU-Contents {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+F1AP-PDU-Contents {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-PDU-Contents (1) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -21,16 +21,26 @@ BEGIN
-- **************************************************************
IMPORTS
+ BroadcastMRBs-FailedToBeModified-Item,
+ BroadcastMRBs-FailedToBeSetup-Item,
+ BroadcastMRBs-FailedToBeSetupMod-Item,
+ BroadcastMRBs-Modified-Item,
+ BroadcastMRBs-Setup-Item,
+ BroadcastMRBs-SetupMod-Item,
+ BroadcastMRBs-ToBeModified-Item,
+ BroadcastMRBs-ToBeReleased-Item,
+ BroadcastMRBs-ToBeSetup-Item,
+ BroadcastMRBs-ToBeSetupMod-Item,
Candidate-SpCell-Item,
Cause,
Cells-Failed-to-be-Activated-List-Item,
Cells-Status-Item,
Cells-to-be-Activated-List-Item,
- Cells-to-be-Deactivated-List-Item,
+ Cells-to-be-Deactivated-List-Item,
CellULConfigured,
- CriticalityDiagnostics,
+ CriticalityDiagnostics,
C-RNTI,
- CUtoDURRCInformation,
+ CUtoDURRCInformation,
DRB-Activity-Item,
DRBID,
DRBs-FailedToBeModified-Item,
@@ -53,16 +63,39 @@ IMPORTS
EUTRANQoS,
ExecuteDuplication,
FullConfiguration,
+ GNB-CU-MBS-F1AP-ID,
GNB-CU-UE-F1AP-ID,
+ GNB-DU-MBS-F1AP-ID,
GNB-DU-UE-F1AP-ID,
GNB-DU-ID,
GNB-DU-Served-Cells-Item,
- GNB-DU-System-Information,
+ GNB-DU-System-Information,
GNB-CU-Name,
GNB-DU-Name,
InactivityMonitoringRequest,
InactivityMonitoringResponse,
LowerLayerPresenceStatusChange,
+ MBS-Area-Session-ID,
+ MBS-CUtoDURRCInformation,
+ MBSMulticastF1UContextDescriptor,
+ MBS-Session-ID,
+ MBS-ServiceArea,
+ MulticastF1UContextReferenceCU,
+ MulticastF1UContext-ToBeSetup-Item,
+ MulticastF1UContext-Setup-Item,
+ MulticastF1UContext-FailedToBeSetup-Item,
+ MulticastMBSSessionList,
+ MulticastMRBs-ToBeSetup-Item,
+ MulticastMRBs-Setup-Item,
+ MulticastMRBs-FailedToBeSetup-Item,
+ MulticastMRBs-ToBeSetupMod-Item,
+ MulticastMRBs-ToBeModified-Item,
+ MulticastMRBs-ToBeReleased-Item,
+ MulticastMRBs-SetupMod-Item,
+ MulticastMRBs-FailedToBeSetupMod-Item,
+ MulticastMRBs-Modified-Item,
+ MulticastMRBs-FailedToBeModified-Item,
+ BroadcastAreaScope,
NotificationControl,
NRCGI,
NRPCI,
@@ -79,13 +112,14 @@ IMPORTS
SCell-ToBeSetup-Item,
SCell-ToBeSetupMod-Item,
SCell-FailedtoSetup-Item,
- SCell-FailedtoSetupMod-Item,
+ SCell-FailedtoSetupMod-Item,
ServCellIndex,
Served-Cell-Information,
Served-Cells-To-Add-Item,
Served-Cells-To-Delete-Item,
Served-Cells-To-Modify-Item,
ServingCellMO,
+ SNSSAI,
SRBID,
SRBs-FailedToBeSetup-Item,
SRBs-FailedToBeSetupMod-Item,
@@ -100,8 +134,9 @@ IMPORTS
TransactionID,
TransmissionActionIndicator,
UE-associatedLogicalF1-ConnectionItem,
+ UEIdentity-List-For-Paging-Item,
DUtoCURRCContainer,
- PagingCell-Item,
+ PagingCell-Item,
SItype-List,
UEIdentityIndexValue,
GNB-CU-TNL-Association-Setup-Item,
@@ -128,7 +163,7 @@ IMPORTS
EUTRA-NR-CellResourceCoordinationReqAck-Container,
RequestType,
PLMN-Identity,
- RLCFailureIndication,
+ RLCFailureIndication,
UplinkTxDirectCurrentListInformation,
SULAccessIndication,
Protected-EUTRA-Resources-Item,
@@ -241,6 +276,7 @@ IMPORTS
TRPInformationItem,
LMF-MeasurementID,
RAN-MeasurementID,
+ SDT-Termination-Request,
SRSResourceSetID,
SpatialRelationInfo,
SRSResourceTrigger,
@@ -262,7 +298,115 @@ IMPORTS
Extended-GNB-CU-Name,
Extended-GNB-DU-Name,
F1CTransferPath,
- SCGIndicator
+ SCGIndicator,
+ SpatialRelationPerSRSResource,
+ MeasurementPeriodicityExtended,
+ SuccessfulHOReportInformationList,
+ Coverage-Modification-Notification,
+ CCO-Assistance-Information,
+ CellsForSON-List,
+ IABCongestionIndication,
+ IABConditionalRRCMessageDeliveryIndication,
+ F1CTransferPathNRDC,
+ BufferSizeThresh,
+ IAB-TNL-Addresses-Exception,
+ BAP-Header-Rewriting-Added-List-Item,
+ Re-routingEnableIndicator,
+ NonF1terminatingTopologyIndicator,
+ EgressNonF1terminatingTopologyIndicator,
+ IngressNonF1terminatingTopologyIndicator,
+ Neighbour-Node-Cells-List,
+ Neighbour-Node-Cells-List-Item,
+ NA-Resource-Configuration-List,
+ NA-Resource-Configuration-Item,
+ Serving-Cells-List,
+ Serving-Cells-List-Item,
+ RBSetConfiguration,
+ PDCMeasurementPeriodicity,
+ PDCMeasurementQuantities,
+ PDCMeasurementResult,
+ PDCReportType,
+ RAN-UE-PDC-MeasID,
+ SCGActivationRequest,
+ SCGActivationStatus,
+ TRP-MeasurementUpdateList,
+ PRSTRPList,
+ PRSTransmissionTRPList,
+ ResponseTime,
+ TRP-PRS-Info-List,
+ PRS-Measurement-Info-List,
+ PRSConfigRequestType,
+ MeasurementCharacteristicsRequestIndicator,
+ MeasurementTimeOccasion,
+ UEReportingInformation,
+ PosConextRevIndication,
+ NRRedCapUEIndication,
+ NRPagingeDRXInformation,
+ NRPagingeDRXInformationforRRCINACTIVE,
+ QoEInformation,
+ CG-SDTQueryIndication,
+ CG-SDTKeptIndicator,
+ CG-SDTSessionInfo,
+ SDTInformation,
+ FiveG-ProSeAuthorized,
+ UuRLCChannelToBeSetupList,
+ UuRLCChannelToBeModifiedList,
+ UuRLCChannelToBeReleasedList,
+ UuRLCChannelSetupList,
+ UuRLCChannelFailedToBeSetupList,
+ UuRLCChannelModifiedList,
+ UuRLCChannelFailedToBeModifiedList,
+ UuRLCChannelRequiredToBeModifiedList,
+ UuRLCChannelRequiredToBeReleasedList,
+ PC5RLCChannelToBeSetupList,
+ PC5RLCChannelToBeModifiedList,
+ PC5RLCChannelToBeReleasedList,
+ PC5RLCChannelSetupList,
+ PC5RLCChannelFailedToBeSetupList,
+ PC5RLCChannelFailedToBeModifiedList,
+ PC5RLCChannelRequiredToBeModifiedList,
+ PC5RLCChannelRequiredToBeReleasedList,
+ PC5RLCChannelModifiedList,
+ RemoteUELocalID,
+ PathSwitchConfiguration,
+ SidelinkRelayConfiguration,
+ PagingCause,
+ PEIPSAssistanceInfo,
+ UEPagingCapability,
+ GNBDUUESliceMaximumBitRateList,
+ MDTPollutedMeasurementIndicator,
+ UE-MulticastMRBs-ConfirmedToBeModified-Item,
+ UE-MulticastMRBs-RequiredToBeModified-Item,
+ UE-MulticastMRBs-RequiredToBeReleased-Item,
+ UE-MulticastMRBs-Setup-Item,
+ UE-MulticastMRBs-Setupnew-Item,
+ UE-MulticastMRBs-ToBeReleased-Item,
+ UE-MulticastMRBs-ToBeSetup-Item,
+ UE-MulticastMRBs-ToBeSetup-atModify-Item,
+ PosMeasurementAmount,
+ BAP-Header-Rewriting-Removed-List-Item,
+ SLDRXCycleList,
+ MDTPLMNModificationList,
+ ActivationRequestType,
+ PosMeasGapPreConfigList,
+ PosMeasurementPeriodicityNR-AoA,
+ SRSPosRRCInactiveConfig,
+ SDTBearerConfigurationQueryIndication,
+ SDTBearerConfigurationInfo,
+ ServingCellMO-List-Item,
+ ServingCellMO-encoded-in-CGC-List,
+ PosSItypeList,
+ DAPS-HO-Status,
+ UuRLCChannelID,
+ UplinkTxDirectCurrentTwoCarrierListInfo,
+ SRSPosRRCInactiveQueryIndication,
+ MC-PagingCell-Item,
+ UlTxDirectCurrentMoreCarrierInformation,
+ CPACMCGInformation,
+ ExtendedUEIdentityIndexValue,
+ HashedUEIdentityIndexValue,
+ DedicatedSIDeliveryIndication,
+ Configured-BWP-List
@@ -280,12 +424,32 @@ FROM F1AP-IEs
FROM F1AP-Containers
+ id-BroadcastMRBs-FailedToBeModified-List,
+ id-BroadcastMRBs-FailedToBeModified-Item,
+ id-BroadcastMRBs-FailedToBeSetup-List,
+ id-BroadcastMRBs-FailedToBeSetup-Item,
+ id-BroadcastMRBs-FailedToBeSetupMod-List,
+ id-BroadcastMRBs-FailedToBeSetupMod-Item,
+ id-BroadcastMRBs-Modified-List,
+ id-BroadcastMRBs-Modified-Item,
+ id-BroadcastMRBs-Setup-List,
+ id-BroadcastMRBs-Setup-Item,
+ id-BroadcastMRBs-SetupMod-List,
+ id-BroadcastMRBs-SetupMod-Item,
+ id-BroadcastMRBs-ToBeModified-List,
+ id-BroadcastMRBs-ToBeModified-Item,
+ id-BroadcastMRBs-ToBeReleased-List,
+ id-BroadcastMRBs-ToBeReleased-Item,
+ id-BroadcastMRBs-ToBeSetup-List,
+ id-BroadcastMRBs-ToBeSetup-Item,
+ id-BroadcastMRBs-ToBeSetupMod-List,
+ id-BroadcastMRBs-ToBeSetupMod-Item,
id-Candidate-SpCell-Item,
id-Candidate-SpCell-List,
id-Cause,
id-Cancel-all-Warning-Messages-Indicator,
id-Cells-Failed-to-be-Activated-List,
- id-Cells-Failed-to-be-Activated-List-Item,
+ id-Cells-Failed-to-be-Activated-List-Item,
id-Cells-Status-Item,
id-Cells-Status-List,
id-Cells-to-be-Activated-List,
@@ -330,24 +494,63 @@ FROM F1AP-Containers
id-DUtoCURRCInformation,
id-ExecuteDuplication,
id-FullConfiguration,
+ id-gNB-CU-MBS-F1AP-ID,
id-gNB-CU-UE-F1AP-ID,
+ id-gNB-DU-MBS-F1AP-ID,
id-gNB-DU-UE-F1AP-ID,
id-gNB-DU-ID,
id-GNB-DU-Served-Cells-Item,
- id-gNB-DU-Served-Cells-List,
+ id-gNB-DU-Served-Cells-List,
id-gNB-CU-Name,
id-gNB-DU-Name,
id-Extended-GNB-CU-Name,
id-Extended-GNB-DU-Name,
id-InactivityMonitoringRequest,
id-InactivityMonitoringResponse,
+ id-MBS-Area-Session-ID,
+ id-MBS-CUtoDURRCInformation,
+ id-MBS-Session-ID,
+ id-MBS-ServiceArea,
+ id-MBSMulticastF1UContextDescriptor,
+ id-MC-PagingCell-Item,
+ id-MC-PagingCell-List,
+ id-MulticastF1UContextReferenceCU,
+ id-MulticastMBSSessionSetupList,
+ id-MulticastMBSSessionRemoveList,
+ id-MulticastMRBs-FailedToBeModified-List,
+ id-MulticastMRBs-FailedToBeModified-Item,
+ id-MulticastMRBs-FailedToBeSetup-List,
+ id-MulticastMRBs-FailedToBeSetup-Item,
+ id-MulticastMRBs-FailedToBeSetupMod-List,
+ id-MulticastMRBs-FailedToBeSetupMod-Item,
+ id-MulticastMRBs-Modified-List,
+ id-MulticastMRBs-Modified-Item,
+ id-MulticastMRBs-Setup-List,
+ id-MulticastMRBs-Setup-Item,
+ id-MulticastMRBs-SetupMod-List,
+ id-MulticastMRBs-SetupMod-Item,
+ id-MulticastMRBs-ToBeModified-List,
+ id-MulticastMRBs-ToBeModified-Item,
+ id-MulticastMRBs-ToBeReleased-List,
+ id-MulticastMRBs-ToBeReleased-Item,
+ id-MulticastMRBs-ToBeSetup-List,
+ id-MulticastMRBs-ToBeSetup-Item,
+ id-MulticastMRBs-ToBeSetupMod-List,
+ id-MulticastMRBs-ToBeSetupMod-Item,
+ id-MulticastF1UContext-ToBeSetup-List,
+ id-MulticastF1UContext-ToBeSetup-Item,
+ id-MulticastF1UContext-Setup-List,
+ id-MulticastF1UContext-Setup-Item,
+ id-MulticastF1UContext-FailedToBeSetup-List,
+ id-MulticastF1UContext-FailedToBeSetup-Item,
+ id-BroadcastAreaScope,
id-new-gNB-CU-UE-F1AP-ID,
id-new-gNB-DU-UE-F1AP-ID,
id-oldgNB-DU-UE-F1AP-ID,
id-PLMNAssistanceInfoForNetShar,
id-Potential-SpCell-Item,
id-Potential-SpCell-List,
- id-RAT-FrequencyPriorityInformation,
+ id-RAT-FrequencyPriorityInformation,
id-RedirectedRRCmessage,
id-ResetType,
id-RequestedSRSTransmissionCharacteristics,
@@ -365,6 +568,7 @@ FROM F1AP-Containers
id-SCell-ToBeSetup-List,
id-SCell-ToBeSetupMod-Item,
id-SCell-ToBeSetupMod-List,
+ id-SDT-Termination-Request,
id-SelectedPLMNID,
id-Served-Cells-To-Add-Item,
id-Served-Cells-To-Add-List,
@@ -374,6 +578,7 @@ FROM F1AP-Containers
id-Served-Cells-To-Modify-List,
id-ServCellIndex,
id-ServingCellMO,
+ id-SNSSAI,
id-SpCell-ID,
id-SpCellULConfigured,
id-SRBID,
@@ -384,7 +589,7 @@ FROM F1AP-Containers
id-SRBs-Required-ToBeReleased-Item,
id-SRBs-Required-ToBeReleased-List,
id-SRBs-ToBeReleased-Item,
- id-SRBs-ToBeReleased-List,
+ id-SRBs-ToBeReleased-List,
id-SRBs-ToBeSetup-Item,
id-SRBs-ToBeSetup-List,
id-SRBs-ToBeSetupMod-Item,
@@ -397,10 +602,28 @@ FROM F1AP-Containers
id-SRBs-SetupMod-List,
id-TimeToWait,
id-TransactionID,
- id-TransmissionActionIndicator,
+ id-TransmissionActionIndicator,
id-UEContextNotRetrievable,
id-UE-associatedLogicalF1-ConnectionItem,
id-UE-associatedLogicalF1-ConnectionListResAck,
+ id-UEIdentity-List-For-Paging-List,
+ id-UEIdentity-List-For-Paging-Item,
+ id-UE-MulticastMRBs-ConfirmedToBeModified-List,
+ id-UE-MulticastMRBs-ConfirmedToBeModified-Item,
+ id-UE-MulticastMRBs-RequiredToBeModified-List,
+ id-UE-MulticastMRBs-RequiredToBeModified-Item,
+ id-UE-MulticastMRBs-RequiredToBeReleased-List,
+ id-UE-MulticastMRBs-RequiredToBeReleased-Item,
+ id-UE-MulticastMRBs-Setup-List,
+ id-UE-MulticastMRBs-Setup-Item,
+ id-UE-MulticastMRBs-Setupnew-List,
+ id-UE-MulticastMRBs-Setupnew-Item,
+ id-UE-MulticastMRBs-ToBeReleased-List,
+ id-UE-MulticastMRBs-ToBeReleased-Item,
+ id-UE-MulticastMRBs-ToBeSetup-atModify-List,
+ id-UE-MulticastMRBs-ToBeSetup-atModify-Item,
+ id-UE-MulticastMRBs-ToBeSetup-List,
+ id-UE-MulticastMRBs-ToBeSetup-Item,
id-DUtoCURRCContainer,
id-NRCGI,
id-PagingCell-Item,
@@ -509,7 +732,7 @@ FROM F1AP-Containers
id-BH-Routing-Information-Removed-List-Item,
id-UL-BH-Non-UP-Traffic-Mapping,
id-Child-Nodes-List,
- id-Activated-Cells-to-be-Updated-List,
+ id-Activated-Cells-to-be-Updated-List,
id-IABIPv6RequestType,
id-IAB-TNL-Addresses-To-Remove-List,
id-IAB-TNL-Addresses-To-Remove-Item,
@@ -561,8 +784,8 @@ FROM F1AP-Containers
id-CellToReportList,
id-CellMeasurementResultList,
id-HardwareLoadIndicator,
- id-ReportingPeriodicity,
- id-TNLCapacityIndicator,
+ id-ReportingPeriodicity,
+ id-TNLCapacityIndicator,
id-RACHReportInformationList,
id-RLFReportInformationList,
id-ReportingRequestType,
@@ -610,6 +833,107 @@ FROM F1AP-Containers
id-E-CID-ReportCharacteristics,
id-F1CTransferPath,
id-SCGIndicator,
+ id-SRSSpatialRelationPerSRSResource,
+ id-PosMeasurementPeriodicityExtended,
+ id-SuccessfulHOReportInformationList,
+ id-Coverage-Modification-Notification,
+ id-CCO-Assistance-Information,
+ id-CellsForSON-List,
+ id-IABCongestionIndication,
+ id-IABConditionalRRCMessageDeliveryIndication,
+ id-F1CTransferPathNRDC,
+ id-BufferSizeThresh,
+ id-IAB-TNL-Addresses-Exception,
+ id-BAP-Header-Rewriting-Added-List,
+ id-BAP-Header-Rewriting-Added-List-Item,
+ id-Re-routingEnableIndicator,
+ id-NonF1terminatingTopologyIndicator,
+ id-EgressNonF1terminatingTopologyIndicator,
+ id-IngressNonF1terminatingTopologyIndicator,
+ id-Neighbour-Node-Cells-List,
+ id-Serving-Cells-List,
+ id-MDTPollutedMeasurementIndicator,
+ id-PDCMeasurementPeriodicity,
+ id-PDCMeasurementQuantities,
+ id-PDCMeasurementResult,
+ id-PDCReportType,
+ id-RAN-UE-PDC-MeasID,
+ id-SCGActivationRequest,
+ id-SCGActivationStatus,
+ id-TRP-MeasurementUpdateList,
+ id-PRSTRPList,
+ id-PRSTransmissionTRPList,
+ id-ResponseTime,
+ id-TRP-PRS-Info-List,
+ id-PRS-Measurement-Info-List,
+ id-PRSConfigRequestType,
+ id-MeasurementCharacteristicsRequestIndicator,
+ id-MeasurementTimeOccasion,
+ id-UEReportingInformation,
+ id-PosConextRevIndication,
+ id-NRRedCapUEIndication,
+ id-RANUEPagingDRX,
+ id-CNUEPagingDRX,
+ id-NRPagingeDRXInformation,
+ id-NRPagingeDRXInformationforRRCINACTIVE,
+ id-QoEInformation,
+ id-CG-SDTQueryIndication,
+ id-CG-SDTKeptIndicator,
+ id-CG-SDTSessionInfoOld,
+ id-SDTInformation,
+ id-FiveG-ProSeAuthorized,
+ id-FiveG-ProSePC5LinkAMBR,
+ id-FiveG-ProSeUEPC5AggregateMaximumBitrate,
+ id-UuRLCChannelToBeSetupList,
+ id-UuRLCChannelToBeModifiedList,
+ id-UuRLCChannelToBeReleasedList,
+ id-UuRLCChannelSetupList,
+ id-UuRLCChannelFailedToBeSetupList,
+ id-UuRLCChannelModifiedList,
+ id-UuRLCChannelFailedToBeModifiedList,
+ id-UuRLCChannelRequiredToBeModifiedList,
+ id-UuRLCChannelRequiredToBeReleasedList,
+ id-PC5RLCChannelToBeSetupList,
+ id-PC5RLCChannelToBeModifiedList,
+ id-PC5RLCChannelToBeReleasedList,
+ id-PC5RLCChannelSetupList,
+ id-PC5RLCChannelFailedToBeSetupList,
+ id-PC5RLCChannelModifiedList,
+ id-PC5RLCChannelFailedToBeModifiedList,
+ id-PC5RLCChannelRequiredToBeModifiedList,
+ id-PC5RLCChannelRequiredToBeReleasedList,
+ id-SidelinkRelayConfiguration,
+ id-UpdatedRemoteUELocalID,
+ id-PathSwitchConfiguration,
+ id-PagingCause,
+ id-PEIPSAssistanceInfo,
+ id-UEPagingCapability,
+ id-GNBDUUESliceMaximumBitRateList,
+ id-PosMeasurementAmount,
+ id-BAP-Header-Rewriting-Removed-List,
+ id-BAP-Header-Rewriting-Removed-List-Item,
+ id-SLDRXCycleList,
+ id-ManagementBasedMDTPLMNModificationList,
+ id-ActivationRequestType,
+ id-PosMeasGapPreConfigList,
+ id-PosMeasurementPeriodicityNR-AoA,
+ id-SRSPosRRCInactiveConfig,
+ id-SDTBearerConfigurationQueryIndication,
+ id-SDTBearerConfigurationInfo,
+ id-ServingCellMO-List,
+ id-ServingCellMO-List-Item,
+ id-ServingCellMO-encoded-in-CGC-List,
+ id-PosSItypeList,
+ id-DAPS-HO-Status,
+ id-SRBMappingInfo,
+ id-UplinkTxDirectCurrentTwoCarrierListInfo,
+ id-SRSPosRRCInactiveQueryIndication,
+ id-UlTxDirectCurrentMoreCarrierInformation,
+ id-CPACMCGInformation,
+ id-ExtendedUEIdentityIndexValue,
+ id-HashedUEIdentityIndexValue,
+ id-DedicatedSIDeliveryIndication,
+ id-Configured-BWP-List,
maxCellingNBDU,
maxnoofCandidateSpCells,
maxnoofDRBs,
@@ -631,7 +955,13 @@ FROM F1AP-Containers
maxnoofUPTNLAddresses,
maxnoofSLDRBs,
maxnoofTRPInfoTypes,
- maxnoofTRPs
+ maxnoofTRPs,
+ maxnoofMRBs,
+ maxnoofUEIDforPaging,
+ maxnoofNeighbourNodeCellsIAB,
+ maxnoofMRBsforUE,
+ maxnoofServingCellMOs
+
@@ -655,7 +985,7 @@ Reset ::= SEQUENCE {
...
}
-ResetIEs F1AP-PROTOCOL-IES ::= {
+ResetIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
{ ID id-ResetType CRITICALITY reject TYPE ResetType PRESENCE mandatory },
@@ -664,7 +994,7 @@ ResetIEs F1AP-PROTOCOL-IES ::= {
ResetType ::= CHOICE {
f1-Interface ResetAll,
- partOfF1-Interface UE-associatedLogicalF1-ConnectionListRes,
+ partOfF1-Interface UE-associatedLogicalF1-ConnectionListRes,
choice-extension ProtocolIE-SingleContainer { { ResetType-ExtIEs} }
}
@@ -762,9 +1092,9 @@ F1SetupRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-GNB-DU-RRC-Version CRITICALITY reject TYPE RRC-Version PRESENCE mandatory }|
{ ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
{ ID id-BAPAddress CRITICALITY ignore TYPE BAPAddress PRESENCE optional }|
- { ID id-Extended-GNB-CU-Name CRITICALITY ignore TYPE Extended-GNB-CU-Name PRESENCE optional },
+ { ID id-Extended-GNB-DU-Name CRITICALITY ignore TYPE Extended-GNB-DU-Name PRESENCE optional },
...
-}
+}
GNB-DU-Served-Cells-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { GNB-DU-Served-Cells-ItemIEs } }
@@ -795,7 +1125,7 @@ F1SetupResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
{ ID id-UL-BH-Non-UP-Traffic-Mapping CRITICALITY reject TYPE UL-BH-Non-UP-Traffic-Mapping PRESENCE optional }|
{ ID id-BAPAddress CRITICALITY ignore TYPE BAPAddress PRESENCE optional }|
- { ID id-Extended-GNB-DU-Name CRITICALITY ignore TYPE Extended-GNB-DU-Name PRESENCE optional },
+ { ID id-Extended-GNB-CU-Name CRITICALITY ignore TYPE Extended-GNB-CU-Name PRESENCE optional },
...
}
@@ -855,9 +1185,12 @@ GNBDUConfigurationUpdateIEs F1AP-PROTOCOL-IES ::= {
{ ID id-Dedicated-SIDelivery-NeededUE-List CRITICALITY ignore TYPE Dedicated-SIDelivery-NeededUE-List PRESENCE optional }|
{ ID id-gNB-DU-ID CRITICALITY reject TYPE GNB-DU-ID PRESENCE optional }|
{ ID id-GNB-DU-TNL-Association-To-Remove-List CRITICALITY reject TYPE GNB-DU-TNL-Association-To-Remove-List PRESENCE optional }|
- { ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional },
+ { ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
+ { ID id-Coverage-Modification-Notification CRITICALITY ignore TYPE Coverage-Modification-Notification PRESENCE optional }|
+ { ID id-gNB-DU-Name CRITICALITY ignore TYPE GNB-DU-Name PRESENCE optional }|
+ { ID id-Extended-GNB-DU-Name CRITICALITY ignore TYPE Extended-GNB-DU-Name PRESENCE optional },
...
-}
+}
Served-Cells-To-Add-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { Served-Cells-To-Add-ItemIEs } }
Served-Cells-To-Modify-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { Served-Cells-To-Modify-ItemIEs } }
@@ -892,7 +1225,7 @@ Cells-Status-ItemIEs F1AP-PROTOCOL-IES ::= {
Dedicated-SIDelivery-NeededUE-ItemIEs F1AP-PROTOCOL-IES ::= {
{ ID id-Dedicated-SIDelivery-NeededUE-Item CRITICALITY ignore TYPE Dedicated-SIDelivery-NeededUE-Item PRESENCE mandatory },
...
-}
+}
GNB-DU-TNL-Association-To-Remove-ItemIEs F1AP-PROTOCOL-IES ::= {
{ ID id-GNB-DU-TNL-Association-To-Remove-Item CRITICALITY reject TYPE GNB-DU-TNL-Association-To-Remove-Item PRESENCE mandatory },
@@ -919,7 +1252,8 @@ GNBDUConfigurationUpdateAcknowledgeIEs F1AP-PROTOCOL-IES ::= {
{ ID id-Cells-to-be-Deactivated-List CRITICALITY reject TYPE Cells-to-be-Deactivated-List PRESENCE optional }|
{ ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
{ ID id-UL-BH-Non-UP-Traffic-Mapping CRITICALITY reject TYPE UL-BH-Non-UP-Traffic-Mapping PRESENCE optional }|
- { ID id-BAPAddress CRITICALITY ignore TYPE BAPAddress PRESENCE optional },
+ { ID id-BAPAddress CRITICALITY ignore TYPE BAPAddress PRESENCE optional }|
+ { ID id-CellsForSON-List CRITICALITY ignore TYPE CellsForSON-List PRESENCE optional },
...
}
@@ -960,20 +1294,24 @@ GNBCUConfigurationUpdate ::= SEQUENCE {
}
GNBCUConfigurationUpdateIEs F1AP-PROTOCOL-IES ::= {
- { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
- { ID id-Cells-to-be-Activated-List CRITICALITY reject TYPE Cells-to-be-Activated-List PRESENCE optional }|
- { ID id-Cells-to-be-Deactivated-List CRITICALITY reject TYPE Cells-to-be-Deactivated-List PRESENCE optional }|
- { ID id-GNB-CU-TNL-Association-To-Add-List CRITICALITY ignore TYPE GNB-CU-TNL-Association-To-Add-List PRESENCE optional }|
- { ID id-GNB-CU-TNL-Association-To-Remove-List CRITICALITY ignore TYPE GNB-CU-TNL-Association-To-Remove-List PRESENCE optional }|
- { ID id-GNB-CU-TNL-Association-To-Update-List CRITICALITY ignore TYPE GNB-CU-TNL-Association-To-Update-List PRESENCE optional }|
- { ID id-Cells-to-be-Barred-List CRITICALITY ignore TYPE Cells-to-be-Barred-List PRESENCE optional }|
- { ID id-Protected-EUTRA-Resources-List CRITICALITY reject TYPE Protected-EUTRA-Resources-List PRESENCE optional }|
- { ID id-Neighbour-Cell-Information-List CRITICALITY ignore TYPE Neighbour-Cell-Information-List PRESENCE optional }|
- { ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
- { ID id-UL-BH-Non-UP-Traffic-Mapping CRITICALITY reject TYPE UL-BH-Non-UP-Traffic-Mapping PRESENCE optional }|
- { ID id-BAPAddress CRITICALITY ignore TYPE BAPAddress PRESENCE optional },
- ...
-}
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-Cells-to-be-Activated-List CRITICALITY reject TYPE Cells-to-be-Activated-List PRESENCE optional }|
+ { ID id-Cells-to-be-Deactivated-List CRITICALITY reject TYPE Cells-to-be-Deactivated-List PRESENCE optional }|
+ { ID id-GNB-CU-TNL-Association-To-Add-List CRITICALITY ignore TYPE GNB-CU-TNL-Association-To-Add-List PRESENCE optional }|
+ { ID id-GNB-CU-TNL-Association-To-Remove-List CRITICALITY ignore TYPE GNB-CU-TNL-Association-To-Remove-List PRESENCE optional }|
+ { ID id-GNB-CU-TNL-Association-To-Update-List CRITICALITY ignore TYPE GNB-CU-TNL-Association-To-Update-List PRESENCE optional }|
+ { ID id-Cells-to-be-Barred-List CRITICALITY ignore TYPE Cells-to-be-Barred-List PRESENCE optional }|
+ { ID id-Protected-EUTRA-Resources-List CRITICALITY reject TYPE Protected-EUTRA-Resources-List PRESENCE optional }|
+ { ID id-Neighbour-Cell-Information-List CRITICALITY ignore TYPE Neighbour-Cell-Information-List PRESENCE optional }|
+ { ID id-Transport-Layer-Address-Info CRITICALITY ignore TYPE Transport-Layer-Address-Info PRESENCE optional }|
+ { ID id-UL-BH-Non-UP-Traffic-Mapping CRITICALITY reject TYPE UL-BH-Non-UP-Traffic-Mapping PRESENCE optional }|
+ { ID id-BAPAddress CRITICALITY ignore TYPE BAPAddress PRESENCE optional }|
+ { ID id-CCO-Assistance-Information CRITICALITY ignore TYPE CCO-Assistance-Information PRESENCE optional }|
+ { ID id-CellsForSON-List CRITICALITY ignore TYPE CellsForSON-List PRESENCE optional }|
+ { ID id-gNB-CU-Name CRITICALITY ignore TYPE GNB-CU-Name PRESENCE optional }|
+ { ID id-Extended-GNB-CU-Name CRITICALITY ignore TYPE Extended-GNB-CU-Name PRESENCE optional },
+ ...
+}
Cells-to-be-Deactivated-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { Cells-to-be-Deactivated-List-ItemIEs } }
GNB-CU-TNL-Association-To-Add-List ::= SEQUENCE (SIZE(1.. maxnoofTNLAssociations)) OF ProtocolIE-SingleContainer { { GNB-CU-TNL-Association-To-Add-ItemIEs } }
@@ -1086,7 +1424,7 @@ GNBCUConfigurationUpdateFailureIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- GNB-DU RESOURCE COORDINATION REQUEST
+-- GNB-DU RESOURCE COORDINATION REQUEST
--
-- **************************************************************
@@ -1106,7 +1444,7 @@ GNBDUResourceCoordinationRequest-IEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- GNB-DU RESOURCE COORDINATION RESPONSE
+-- GNB-DU RESOURCE COORDINATION RESPONSE
--
-- **************************************************************
@@ -1175,9 +1513,23 @@ UEContextSetupRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-ConditionalInterDUMobilityInformation CRITICALITY reject TYPE ConditionalInterDUMobilityInformation PRESENCE optional}|
{ ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
{ ID id-ServingNID CRITICALITY reject TYPE NID PRESENCE optional }|
- { ID id-F1CTransferPath CRITICALITY reject TYPE F1CTransferPath PRESENCE optional },
+ { ID id-F1CTransferPath CRITICALITY reject TYPE F1CTransferPath PRESENCE optional }|
+ { ID id-F1CTransferPathNRDC CRITICALITY reject TYPE F1CTransferPathNRDC PRESENCE optional }|
+ { ID id-MDTPollutedMeasurementIndicator CRITICALITY ignore TYPE MDTPollutedMeasurementIndicator PRESENCE optional }|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional }|
+ { ID id-CG-SDTSessionInfoOld CRITICALITY ignore TYPE CG-SDTSessionInfo PRESENCE optional }|
+ { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }|
+ { ID id-FiveG-ProSeUEPC5AggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-FiveG-ProSePC5LinkAMBR CRITICALITY ignore TYPE BitRate PRESENCE optional}|
+ { ID id-UuRLCChannelToBeSetupList CRITICALITY reject TYPE UuRLCChannelToBeSetupList PRESENCE optional}|
+ { ID id-PC5RLCChannelToBeSetupList CRITICALITY reject TYPE PC5RLCChannelToBeSetupList PRESENCE optional}|
+ { ID id-PathSwitchConfiguration CRITICALITY ignore TYPE PathSwitchConfiguration PRESENCE optional }|
+ { ID id-GNBDUUESliceMaximumBitRateList CRITICALITY ignore TYPE GNBDUUESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-MulticastMBSSessionSetupList CRITICALITY reject TYPE MulticastMBSSessionList PRESENCE optional }|
+ { ID id-UE-MulticastMRBs-ToBeSetup-List CRITICALITY reject TYPE UE-MulticastMRBs-ToBeSetup-List PRESENCE optional }|
+ { ID id-ServingCellMO-List CRITICALITY ignore TYPE ServingCellMO-List PRESENCE optional },
...
-}
+}
Candidate-SpCell-List::= SEQUENCE (SIZE(1..maxnoofCandidateSpCells)) OF ProtocolIE-SingleContainer { { Candidate-SpCell-ItemIEs} }
SCell-ToBeSetup-List::= SEQUENCE (SIZE(1..maxnoofSCells)) OF ProtocolIE-SingleContainer { { SCell-ToBeSetup-ItemIEs} }
@@ -1185,6 +1537,8 @@ SRBs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofSRBs)) OF ProtocolIE-SingleCont
DRBs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-ToBeSetup-ItemIEs} }
BHChannels-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-ToBeSetup-ItemIEs} }
SLDRBs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofSLDRBs)) OF ProtocolIE-SingleContainer { { SLDRBs-ToBeSetup-ItemIEs} }
+UE-MulticastMRBs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF ProtocolIE-SingleContainer { { UE-MulticastMRBs-ToBeSetup-ItemIEs} }
+ServingCellMO-List ::= SEQUENCE (SIZE(1..maxnoofServingCellMOs)) OF ProtocolIE-SingleContainer { { ServingCellMO-List-ItemIEs} }
Candidate-SpCell-ItemIEs F1AP-PROTOCOL-IES ::= {
{ ID id-Candidate-SpCell-Item CRITICALITY ignore TYPE Candidate-SpCell-Item PRESENCE mandatory },
@@ -1217,6 +1571,15 @@ SLDRBs-ToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+UE-MulticastMRBs-ToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-ToBeSetup-Item CRITICALITY reject TYPE UE-MulticastMRBs-ToBeSetup-Item PRESENCE mandatory},
+ ...
+}
+
+ServingCellMO-List-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-ServingCellMO-List-Item CRITICALITY reject TYPE ServingCellMO-List-Item PRESENCE mandatory},
+ ...
+}
-- **************************************************************
--
-- UE CONTEXT SETUP RESPONSE
@@ -1247,7 +1610,16 @@ UEContextSetupResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-BHChannels-FailedToBeSetup-List CRITICALITY ignore TYPE BHChannels-FailedToBeSetup-List PRESENCE optional }|
{ ID id-SLDRBs-Setup-List CRITICALITY ignore TYPE SLDRBs-Setup-List PRESENCE optional }|
{ ID id-SLDRBs-FailedToBeSetup-List CRITICALITY ignore TYPE SLDRBs-FailedToBeSetup-List PRESENCE optional }|
- { ID id-requestedTargetCellGlobalID CRITICALITY reject TYPE NRCGI PRESENCE optional},
+ { ID id-requestedTargetCellGlobalID CRITICALITY reject TYPE NRCGI PRESENCE optional}|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional }|
+ { ID id-UuRLCChannelSetupList CRITICALITY ignore TYPE UuRLCChannelSetupList PRESENCE optional}|
+ { ID id-UuRLCChannelFailedToBeSetupList CRITICALITY ignore TYPE UuRLCChannelFailedToBeSetupList PRESENCE optional}|
+ { ID id-PC5RLCChannelSetupList CRITICALITY ignore TYPE PC5RLCChannelSetupList PRESENCE optional}|
+ { ID id-PC5RLCChannelFailedToBeSetupList CRITICALITY ignore TYPE PC5RLCChannelFailedToBeSetupList PRESENCE optional}|
+ { ID id-ServingCellMO-encoded-in-CGC-List CRITICALITY ignore TYPE ServingCellMO-encoded-in-CGC-List PRESENCE optional}|
+ { ID id-UE-MulticastMRBs-Setupnew-List CRITICALITY reject TYPE UE-MulticastMRBs-Setupnew-List PRESENCE optional}|
+ { ID id-DedicatedSIDeliveryIndication CRITICALITY ignore TYPE DedicatedSIDeliveryIndication PRESENCE optional}|
+ { ID id-Configured-BWP-List CRITICALITY ignore TYPE Configured-BWP-List PRESENCE optional},
...
}
@@ -1311,6 +1683,14 @@ SLDRBs-FailedToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+UE-MulticastMRBs-Setupnew-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF ProtocolIE-SingleContainer { { UE-MulticastMRBs-Setupnew-ItemIEs } }
+
+UE-MulticastMRBs-Setupnew-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-Setupnew-Item CRITICALITY reject TYPE UE-MulticastMRBs-Setupnew-Item PRESENCE mandatory},
+ ...
+}
+
+
-- **************************************************************
--
-- UE CONTEXT SETUP FAILURE
@@ -1373,7 +1753,7 @@ UEContextReleaseRequestIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- UE CONTEXT RELEASE COMMAND
+-- UE CONTEXT RELEASE COMMAND
--
-- **************************************************************
@@ -1391,9 +1771,11 @@ UEContextReleaseCommandIEs F1AP-PROTOCOL-IES ::= {
{ ID id-oldgNB-DU-UE-F1AP-ID CRITICALITY ignore TYPE GNB-DU-UE-F1AP-ID PRESENCE optional }|
{ ID id-ExecuteDuplication CRITICALITY ignore TYPE ExecuteDuplication PRESENCE optional}|
{ ID id-RRCDeliveryStatusRequest CRITICALITY ignore TYPE RRCDeliveryStatusRequest PRESENCE optional }|
- { ID id-targetCellsToCancel CRITICALITY reject TYPE TargetCellList PRESENCE optional},
+ { ID id-targetCellsToCancel CRITICALITY reject TYPE TargetCellList PRESENCE optional}|
+ { ID id-PosConextRevIndication CRITICALITY reject TYPE PosConextRevIndication PRESENCE optional}|
+ { ID id-CG-SDTKeptIndicator CRITICALITY ignore TYPE CG-SDTKeptIndicator PRESENCE optional},
...
-}
+}
-- **************************************************************
--
@@ -1478,9 +1860,38 @@ UEContextModificationRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-SLDRBs-ToBeReleased-List CRITICALITY reject TYPE SLDRBs-ToBeReleased-List PRESENCE optional }|
{ ID id-ConditionalIntraDUMobilityInformation CRITICALITY reject TYPE ConditionalIntraDUMobilityInformation PRESENCE optional}|
{ ID id-F1CTransferPath CRITICALITY reject TYPE F1CTransferPath PRESENCE optional }|
- { ID id-SCGIndicator CRITICALITY ignore TYPE SCGIndicator PRESENCE optional },
+ { ID id-SCGIndicator CRITICALITY ignore TYPE SCGIndicator PRESENCE optional }|
+ { ID id-UplinkTxDirectCurrentTwoCarrierListInfo CRITICALITY ignore TYPE UplinkTxDirectCurrentTwoCarrierListInfo PRESENCE optional }|
+ { ID id-IABConditionalRRCMessageDeliveryIndication CRITICALITY reject TYPE IABConditionalRRCMessageDeliveryIndication PRESENCE optional }|
+ { ID id-F1CTransferPathNRDC CRITICALITY reject TYPE F1CTransferPathNRDC PRESENCE optional }|
+ { ID id-MDTPollutedMeasurementIndicator CRITICALITY ignore TYPE MDTPollutedMeasurementIndicator PRESENCE optional }|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional }|
+ { ID id-CG-SDTQueryIndication CRITICALITY ignore TYPE CG-SDTQueryIndication PRESENCE optional }|
+ { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }|
+ { ID id-FiveG-ProSeUEPC5AggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-FiveG-ProSePC5LinkAMBR CRITICALITY ignore TYPE BitRate PRESENCE optional}|
+ { ID id-UpdatedRemoteUELocalID CRITICALITY ignore TYPE RemoteUELocalID PRESENCE optional }|
+ { ID id-UuRLCChannelToBeSetupList CRITICALITY reject TYPE UuRLCChannelToBeSetupList PRESENCE optional}|
+ { ID id-UuRLCChannelToBeModifiedList CRITICALITY reject TYPE UuRLCChannelToBeModifiedList PRESENCE optional}|
+ { ID id-UuRLCChannelToBeReleasedList CRITICALITY reject TYPE UuRLCChannelToBeReleasedList PRESENCE optional}|
+ { ID id-PC5RLCChannelToBeSetupList CRITICALITY reject TYPE PC5RLCChannelToBeSetupList PRESENCE optional}|
+ { ID id-PC5RLCChannelToBeModifiedList CRITICALITY reject TYPE PC5RLCChannelToBeModifiedList PRESENCE optional}|
+ { ID id-PC5RLCChannelToBeReleasedList CRITICALITY reject TYPE PC5RLCChannelToBeReleasedList PRESENCE optional}|
+ { ID id-PathSwitchConfiguration CRITICALITY ignore TYPE PathSwitchConfiguration PRESENCE optional }|
+ { ID id-GNBDUUESliceMaximumBitRateList CRITICALITY ignore TYPE GNBDUUESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-MulticastMBSSessionSetupList CRITICALITY reject TYPE MulticastMBSSessionList PRESENCE optional }|
+ { ID id-MulticastMBSSessionRemoveList CRITICALITY reject TYPE MulticastMBSSessionList PRESENCE optional }|
+ { ID id-UE-MulticastMRBs-ToBeSetup-atModify-List CRITICALITY reject TYPE UE-MulticastMRBs-ToBeSetup-atModify-List PRESENCE optional }|
+ { ID id-UE-MulticastMRBs-ToBeReleased-List CRITICALITY reject TYPE UE-MulticastMRBs-ToBeReleased-List PRESENCE optional }|
+ { ID id-SLDRXCycleList CRITICALITY ignore TYPE SLDRXCycleList PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional }|
+ { ID id-SDTBearerConfigurationQueryIndication CRITICALITY ignore TYPE SDTBearerConfigurationQueryIndication PRESENCE optional }|
+ { ID id-DAPS-HO-Status CRITICALITY ignore TYPE DAPS-HO-Status PRESENCE optional }|
+ { ID id-ServingCellMO-List CRITICALITY ignore TYPE ServingCellMO-List PRESENCE optional }|
+ { ID id-UlTxDirectCurrentMoreCarrierInformation CRITICALITY ignore TYPE UlTxDirectCurrentMoreCarrierInformation PRESENCE optional }|
+ { ID id-CPACMCGInformation CRITICALITY ignore TYPE CPACMCGInformation PRESENCE optional },
...
-}
+}
SCell-ToBeSetupMod-List::= SEQUENCE (SIZE(1..maxnoofSCells)) OF ProtocolIE-SingleContainer { { SCell-ToBeSetupMod-ItemIEs} }
SCell-ToBeRemoved-List::= SEQUENCE (SIZE(1..maxnoofSCells)) OF ProtocolIE-SingleContainer { { SCell-ToBeRemoved-ItemIEs} }
@@ -1493,6 +1904,10 @@ BHChannels-ToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF Pro
SRBs-ToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofSRBs)) OF ProtocolIE-SingleContainer { { SRBs-ToBeReleased-ItemIEs} }
DRBs-ToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-ToBeReleased-ItemIEs} }
BHChannels-ToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-ToBeReleased-ItemIEs} }
+UE-MulticastMRBs-ToBeSetup-atModify-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF
+ ProtocolIE-SingleContainer { { UE-MulticastMRBs-ToBeSetup-atModify-ItemIEs} }
+
+UE-MulticastMRBs-ToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF ProtocolIE-SingleContainer { { UE-MulticastMRBs-ToBeReleased-ItemIEs} }
SCell-ToBeSetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
{ ID id-SCell-ToBeSetupMod-Item CRITICALITY ignore TYPE SCell-ToBeSetupMod-Item PRESENCE mandatory },
@@ -1566,6 +1981,17 @@ SLDRBs-ToBeReleased-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+UE-MulticastMRBs-ToBeSetup-atModify-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-ToBeSetup-atModify-Item CRITICALITY reject TYPE UE-MulticastMRBs-ToBeSetup-atModify-Item PRESENCE mandatory},
+ ...
+}
+
+
+UE-MulticastMRBs-ToBeReleased-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-ToBeReleased-Item CRITICALITY reject TYPE UE-MulticastMRBs-ToBeReleased-Item PRESENCE mandatory},
+ ...
+}
+
-- **************************************************************
--
-- UE CONTEXT MODIFICATION RESPONSE
@@ -1604,13 +2030,26 @@ UEContextModificationResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-SLDRBs-Modified-List CRITICALITY ignore TYPE SLDRBs-Modified-List PRESENCE optional }|
{ ID id-SLDRBs-FailedToBeSetupMod-List CRITICALITY ignore TYPE SLDRBs-FailedToBeSetupMod-List PRESENCE optional }|
{ ID id-SLDRBs-FailedToBeModified-List CRITICALITY ignore TYPE SLDRBs-FailedToBeModified-List PRESENCE optional }|
- { ID id-requestedTargetCellGlobalID CRITICALITY reject TYPE NRCGI PRESENCE optional},
+ { ID id-requestedTargetCellGlobalID CRITICALITY reject TYPE NRCGI PRESENCE optional}|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional }|
+ { ID id-UuRLCChannelSetupList CRITICALITY ignore TYPE UuRLCChannelSetupList PRESENCE optional}|
+ { ID id-UuRLCChannelFailedToBeSetupList CRITICALITY ignore TYPE UuRLCChannelFailedToBeSetupList PRESENCE optional}|
+ { ID id-UuRLCChannelModifiedList CRITICALITY ignore TYPE UuRLCChannelModifiedList PRESENCE optional}|
+ { ID id-UuRLCChannelFailedToBeModifiedList CRITICALITY ignore TYPE UuRLCChannelFailedToBeModifiedList PRESENCE optional}|
+ { ID id-PC5RLCChannelSetupList CRITICALITY ignore TYPE PC5RLCChannelSetupList PRESENCE optional}|
+ { ID id-PC5RLCChannelFailedToBeSetupList CRITICALITY ignore TYPE PC5RLCChannelFailedToBeSetupList PRESENCE optional}|
+ { ID id-PC5RLCChannelModifiedList CRITICALITY ignore TYPE PC5RLCChannelModifiedList PRESENCE optional}|
+ { ID id-PC5RLCChannelFailedToBeModifiedList CRITICALITY ignore TYPE PC5RLCChannelFailedToBeModifiedList PRESENCE optional}|
+ { ID id-SDTBearerConfigurationInfo CRITICALITY ignore TYPE SDTBearerConfigurationInfo PRESENCE optional}|
+ { ID id-UE-MulticastMRBs-Setup-List CRITICALITY reject TYPE UE-MulticastMRBs-Setup-List PRESENCE optional}|
+ { ID id-ServingCellMO-encoded-in-CGC-List CRITICALITY ignore TYPE ServingCellMO-encoded-in-CGC-List PRESENCE optional}|
+ { ID id-DedicatedSIDeliveryIndication CRITICALITY ignore TYPE DedicatedSIDeliveryIndication PRESENCE optional}| { ID id-Configured-BWP-List CRITICALITY ignore TYPE Configured-BWP-List PRESENCE optional},
...
}
DRBs-SetupMod-List ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-SetupMod-ItemIEs} }
-DRBs-Modified-List::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-Modified-ItemIEs } }
+DRBs-Modified-List::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-Modified-ItemIEs } }
SRBs-SetupMod-List ::= SEQUENCE (SIZE(1..maxnoofSRBs)) OF ProtocolIE-SingleContainer { { SRBs-SetupMod-ItemIEs} }
SRBs-Modified-List ::= SEQUENCE (SIZE(1..maxnoofSRBs)) OF ProtocolIE-SingleContainer { { SRBs-Modified-ItemIEs } }
DRBs-FailedToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-FailedToBeModified-ItemIEs} }
@@ -1618,7 +2057,7 @@ SRBs-FailedToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofSRBs)) OF ProtocolIE-S
DRBs-FailedToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-FailedToBeSetupMod-ItemIEs} }
SCell-FailedtoSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofSCells)) OF ProtocolIE-SingleContainer { { SCell-FailedtoSetupMod-ItemIEs} }
BHChannels-SetupMod-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-SetupMod-ItemIEs} }
-BHChannels-Modified-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-Modified-ItemIEs } }
+BHChannels-Modified-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-Modified-ItemIEs } }
BHChannels-FailedToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-FailedToBeModified-ItemIEs} }
BHChannels-FailedToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofBHRLCChannels)) OF ProtocolIE-SingleContainer { { BHChannels-FailedToBeSetupMod-ItemIEs} }
@@ -1695,7 +2134,7 @@ BHChannels-FailedToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
}
SLDRBs-SetupMod-List ::= SEQUENCE (SIZE(1..maxnoofSLDRBs)) OF ProtocolIE-SingleContainer { { SLDRBs-SetupMod-ItemIEs} }
-SLDRBs-Modified-List ::= SEQUENCE (SIZE(1..maxnoofSLDRBs)) OF ProtocolIE-SingleContainer { { SLDRBs-Modified-ItemIEs } }
+SLDRBs-Modified-List ::= SEQUENCE (SIZE(1..maxnoofSLDRBs)) OF ProtocolIE-SingleContainer { { SLDRBs-Modified-ItemIEs } }
SLDRBs-FailedToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofSLDRBs)) OF ProtocolIE-SingleContainer { { SLDRBs-FailedToBeModified-ItemIEs} }
SLDRBs-FailedToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofSLDRBs)) OF ProtocolIE-SingleContainer { { SLDRBs-FailedToBeSetupMod-ItemIEs} }
@@ -1719,6 +2158,14 @@ SLDRBs-FailedToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+UE-MulticastMRBs-Setup-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF ProtocolIE-SingleContainer { { UE-MulticastMRBs-Setup-ItemIEs } }
+
+UE-MulticastMRBs-Setup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-Setup-Item CRITICALITY reject TYPE UE-MulticastMRBs-Setup-Item PRESENCE mandatory},
+ ...
+}
+
+
-- **************************************************************
--
-- UE CONTEXT MODIFICATION FAILURE
@@ -1758,20 +2205,26 @@ UEContextModificationRequired ::= SEQUENCE {
}
UEContextModificationRequiredIEs F1AP-PROTOCOL-IES ::= {
- { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-ResourceCoordinationTransferContainer CRITICALITY ignore TYPE ResourceCoordinationTransferContainer PRESENCE optional }|
- { ID id-DUtoCURRCInformation CRITICALITY reject TYPE DUtoCURRCInformation PRESENCE optional}|
- { ID id-DRBs-Required-ToBeModified-List CRITICALITY reject TYPE DRBs-Required-ToBeModified-List PRESENCE optional}|
- { ID id-SRBs-Required-ToBeReleased-List CRITICALITY reject TYPE SRBs-Required-ToBeReleased-List PRESENCE optional}|
- { ID id-DRBs-Required-ToBeReleased-List CRITICALITY reject TYPE DRBs-Required-ToBeReleased-List PRESENCE optional}|
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
- { ID id-BHChannels-Required-ToBeReleased-List CRITICALITY reject TYPE BHChannels-Required-ToBeReleased-List PRESENCE optional}|
- { ID id-SLDRBs-Required-ToBeModified-List CRITICALITY reject TYPE SLDRBs-Required-ToBeModified-List PRESENCE optional}|
- { ID id-SLDRBs-Required-ToBeReleased-List CRITICALITY reject TYPE SLDRBs-Required-ToBeReleased-List PRESENCE optional}|
- { ID id-targetCellsToCancel CRITICALITY reject TYPE TargetCellList PRESENCE optional},
- ...
-}
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-ResourceCoordinationTransferContainer CRITICALITY ignore TYPE ResourceCoordinationTransferContainer PRESENCE optional }|
+ { ID id-DUtoCURRCInformation CRITICALITY reject TYPE DUtoCURRCInformation PRESENCE optional}|
+ { ID id-DRBs-Required-ToBeModified-List CRITICALITY reject TYPE DRBs-Required-ToBeModified-List PRESENCE optional}|
+ { ID id-SRBs-Required-ToBeReleased-List CRITICALITY reject TYPE SRBs-Required-ToBeReleased-List PRESENCE optional}|
+ { ID id-DRBs-Required-ToBeReleased-List CRITICALITY reject TYPE DRBs-Required-ToBeReleased-List PRESENCE optional}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-BHChannels-Required-ToBeReleased-List CRITICALITY reject TYPE BHChannels-Required-ToBeReleased-List PRESENCE optional}|
+ { ID id-SLDRBs-Required-ToBeModified-List CRITICALITY reject TYPE SLDRBs-Required-ToBeModified-List PRESENCE optional}|
+ { ID id-SLDRBs-Required-ToBeReleased-List CRITICALITY reject TYPE SLDRBs-Required-ToBeReleased-List PRESENCE optional}|
+ { ID id-targetCellsToCancel CRITICALITY reject TYPE TargetCellList PRESENCE optional}|
+ { ID id-UuRLCChannelRequiredToBeModifiedList CRITICALITY reject TYPE UuRLCChannelRequiredToBeModifiedList PRESENCE optional}|
+ { ID id-UuRLCChannelRequiredToBeReleasedList CRITICALITY reject TYPE UuRLCChannelRequiredToBeReleasedList PRESENCE optional}|
+ { ID id-PC5RLCChannelRequiredToBeModifiedList CRITICALITY reject TYPE PC5RLCChannelRequiredToBeModifiedList PRESENCE optional}|
+ { ID id-PC5RLCChannelRequiredToBeReleasedList CRITICALITY reject TYPE PC5RLCChannelRequiredToBeReleasedList PRESENCE optional}|
+ { ID id-UE-MulticastMRBs-RequiredToBeModified-List CRITICALITY reject TYPE UE-MulticastMRBs-RequiredToBeModified-List PRESENCE optional }|
+ { ID id-UE-MulticastMRBs-RequiredToBeReleased-List CRITICALITY reject TYPE UE-MulticastMRBs-RequiredToBeReleased-List PRESENCE optional },
+ ...
+}
DRBs-Required-ToBeModified-List::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-Required-ToBeModified-ItemIEs } }
DRBs-Required-ToBeReleased-List::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-SingleContainer { { DRBs-Required-ToBeReleased-ItemIEs } }
@@ -1813,6 +2266,23 @@ SLDRBs-Required-ToBeReleased-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+UE-MulticastMRBs-RequiredToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF
+ ProtocolIE-SingleContainer { { UE-MulticastMRBs-RequiredToBeModified-ItemIEs} }
+
+UE-MulticastMRBs-RequiredToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-RequiredToBeModified-Item CRITICALITY reject TYPE UE-MulticastMRBs-RequiredToBeModified-Item PRESENCE mandatory},
+ ...
+}
+
+UE-MulticastMRBs-RequiredToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF
+ ProtocolIE-SingleContainer { { UE-MulticastMRBs-RequiredToBeReleased-ItemIEs} }
+
+UE-MulticastMRBs-RequiredToBeReleased-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-RequiredToBeReleased-Item CRITICALITY reject TYPE UE-MulticastMRBs-RequiredToBeReleased-Item PRESENCE mandatory},
+ ...
+}
+
+
-- **************************************************************
--
-- UE CONTEXT MODIFICATION CONFIRM
@@ -1826,15 +2296,18 @@ UEContextModificationConfirm::= SEQUENCE {
UEContextModificationConfirmIEs F1AP-PROTOCOL-IES ::= {
- { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-ResourceCoordinationTransferContainer CRITICALITY ignore TYPE ResourceCoordinationTransferContainer PRESENCE optional }|
- { ID id-DRBs-ModifiedConf-List CRITICALITY ignore TYPE DRBs-ModifiedConf-List PRESENCE optional}|
- { ID id-RRCContainer CRITICALITY ignore TYPE RRCContainer PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
- { ID id-ExecuteDuplication CRITICALITY ignore TYPE ExecuteDuplication PRESENCE optional}|
- { ID id-ResourceCoordinationTransferInformation CRITICALITY ignore TYPE ResourceCoordinationTransferInformation PRESENCE optional }|
- { ID id-SLDRBs-ModifiedConf-List CRITICALITY ignore TYPE SLDRBs-ModifiedConf-List PRESENCE optional},
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-ResourceCoordinationTransferContainer CRITICALITY ignore TYPE ResourceCoordinationTransferContainer PRESENCE optional }|
+ { ID id-DRBs-ModifiedConf-List CRITICALITY ignore TYPE DRBs-ModifiedConf-List PRESENCE optional }|
+ { ID id-RRCContainer CRITICALITY ignore TYPE RRCContainer PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-ExecuteDuplication CRITICALITY ignore TYPE ExecuteDuplication PRESENCE optional }|
+ { ID id-ResourceCoordinationTransferInformation CRITICALITY ignore TYPE ResourceCoordinationTransferInformation PRESENCE optional }|
+ { ID id-SLDRBs-ModifiedConf-List CRITICALITY ignore TYPE SLDRBs-ModifiedConf-List PRESENCE optional }|
+ { ID id-UuRLCChannelModifiedList CRITICALITY reject TYPE UuRLCChannelModifiedList PRESENCE optional }|
+ { ID id-PC5RLCChannelModifiedList CRITICALITY reject TYPE PC5RLCChannelModifiedList PRESENCE optional }|
+ { ID id-UE-MulticastMRBs-ConfirmedToBeModified-List CRITICALITY reject TYPE UE-MulticastMRBs-ConfirmedToBeModified-List PRESENCE optional },
...
}
@@ -1852,6 +2325,15 @@ SLDRBs-ModifiedConf-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+UE-MulticastMRBs-ConfirmedToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofMRBsforUE)) OF
+ ProtocolIE-SingleContainer { { UE-MulticastMRBs-ConfirmedToBeModified-ItemIEs} }
+
+UE-MulticastMRBs-ConfirmedToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UE-MulticastMRBs-ConfirmedToBeModified-Item CRITICALITY reject TYPE UE-MulticastMRBs-ConfirmedToBeModified-Item PRESENCE mandatory},
+ ...
+}
+
+
-- **************************************************************
--
-- UE CONTEXT MODIFICATION REFUSE
@@ -1873,30 +2355,30 @@ UEContextModificationRefuseIEs F1AP-PROTOCOL-IES ::= {
}
--- **************************************************************
---
--- WRITE-REPLACE WARNING ELEMENTARY PROCEDURE
---
--- **************************************************************
+-- **************************************************************
+--
+-- WRITE-REPLACE WARNING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
--- **************************************************************
---
--- Write-Replace Warning Request
---
--- **************************************************************
+-- **************************************************************
+--
+-- Write-Replace Warning Request
+--
+-- **************************************************************
-WriteReplaceWarningRequest ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {WriteReplaceWarningRequestIEs} },
- ...
-}
+WriteReplaceWarningRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {WriteReplaceWarningRequestIEs} },
+ ...
+}
-WriteReplaceWarningRequestIEs F1AP-PROTOCOL-IES ::= {
+WriteReplaceWarningRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
- { ID id-PWSSystemInformation CRITICALITY reject TYPE PWSSystemInformation PRESENCE mandatory }|
- { ID id-RepetitionPeriod CRITICALITY reject TYPE RepetitionPeriod PRESENCE mandatory }|
- { ID id-NumberofBroadcastRequest CRITICALITY reject TYPE NumberofBroadcastRequest PRESENCE mandatory }|
+ { ID id-PWSSystemInformation CRITICALITY reject TYPE PWSSystemInformation PRESENCE mandatory }|
+ { ID id-RepetitionPeriod CRITICALITY reject TYPE RepetitionPeriod PRESENCE mandatory }|
+ { ID id-NumberofBroadcastRequest CRITICALITY reject TYPE NumberofBroadcastRequest PRESENCE mandatory }|
{ ID id-Cells-To-Be-Broadcast-List CRITICALITY reject TYPE Cells-To-Be-Broadcast-List PRESENCE optional },
- ...
+ ...
}
Cells-To-Be-Broadcast-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { Cells-To-Be-Broadcast-List-ItemIEs } }
@@ -1906,18 +2388,18 @@ Cells-To-Be-Broadcast-List-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
--- **************************************************************
---
--- Write-Replace Warning Response
---
--- **************************************************************
+-- **************************************************************
+--
+-- Write-Replace Warning Response
+--
+-- **************************************************************
-WriteReplaceWarningResponse ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {WriteReplaceWarningResponseIEs} },
- ...
-}
+WriteReplaceWarningResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {WriteReplaceWarningResponseIEs} },
+ ...
+}
-WriteReplaceWarningResponseIEs F1AP-PROTOCOL-IES ::= {
+WriteReplaceWarningResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-Cells-Broadcast-Completed-List CRITICALITY reject TYPE Cells-Broadcast-Completed-List PRESENCE optional }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
@@ -1933,30 +2415,30 @@ Cells-Broadcast-Completed-List-ItemIEs F1AP-PROTOCOL-IES ::= {
}
--- **************************************************************
---
--- PWS CANCEL ELEMENTARY PROCEDURE
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS CANCEL ELEMENTARY PROCEDURE
+--
+-- **************************************************************
--- **************************************************************
---
--- PWS Cancel Request
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS Cancel Request
+--
+-- **************************************************************
-PWSCancelRequest ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PWSCancelRequestIEs} },
- ...
-}
+PWSCancelRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {PWSCancelRequestIEs} },
+ ...
+}
-PWSCancelRequestIEs F1AP-PROTOCOL-IES ::= {
+PWSCancelRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
- { ID id-NumberofBroadcastRequest CRITICALITY reject TYPE NumberofBroadcastRequest PRESENCE mandatory }|
+ { ID id-NumberofBroadcastRequest CRITICALITY reject TYPE NumberofBroadcastRequest PRESENCE mandatory }|
{ ID id-Broadcast-To-Be-Cancelled-List CRITICALITY reject TYPE Broadcast-To-Be-Cancelled-List PRESENCE optional }|
{ ID id-Cancel-all-Warning-Messages-Indicator CRITICALITY reject TYPE Cancel-all-Warning-Messages-Indicator PRESENCE optional }|
{ ID id-NotificationInformation CRITICALITY reject TYPE NotificationInformation PRESENCE optional},
- ...
+ ...
}
Broadcast-To-Be-Cancelled-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { Broadcast-To-Be-Cancelled-List-ItemIEs } }
@@ -1966,22 +2448,22 @@ Broadcast-To-Be-Cancelled-List-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
--- **************************************************************
---
--- PWS Cancel Response
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS Cancel Response
+--
+-- **************************************************************
-PWSCancelResponse ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PWSCancelResponseIEs} },
- ...
-}
+PWSCancelResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {PWSCancelResponseIEs} },
+ ...
+}
-PWSCancelResponseIEs F1AP-PROTOCOL-IES ::= {
+PWSCancelResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-Cells-Broadcast-Cancelled-List CRITICALITY reject TYPE Cells-Broadcast-Cancelled-List PRESENCE optional }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
- ...
+ ...
}
Cells-Broadcast-Cancelled-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { Cells-Broadcast-Cancelled-List-ItemIEs } }
@@ -2011,7 +2493,8 @@ UEInactivityNotification ::= SEQUENCE {
UEInactivityNotificationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-DRB-Activity-List CRITICALITY reject TYPE DRB-Activity-List PRESENCE mandatory } ,
+ { ID id-DRB-Activity-List CRITICALITY reject TYPE DRB-Activity-List PRESENCE mandatory }|
+ { ID id-SDT-Termination-Request CRITICALITY ignore TYPE SDT-Termination-Request PRESENCE optional },
...
}
@@ -2021,7 +2504,6 @@ DRB-Activity-ItemIEs F1AP-PROTOCOL-IES ::= {
{ ID id-DRB-Activity-Item CRITICALITY reject TYPE DRB-Activity-Item PRESENCE mandatory},
...
}
-
-- **************************************************************
--
-- Initial UL RRC Message Transfer ELEMENTARY PROCEDURE
@@ -2048,7 +2530,10 @@ InitialULRRCMessageTransferIEs F1AP-PROTOCOL-IES ::= {
{ ID id-SULAccessIndication CRITICALITY ignore TYPE SULAccessIndication PRESENCE optional }|
{ ID id-TransactionID CRITICALITY ignore TYPE TransactionID PRESENCE mandatory }|
{ ID id-RANUEID CRITICALITY ignore TYPE RANUEID PRESENCE optional }|
- { ID id-RRCContainer-RRCSetupComplete CRITICALITY ignore TYPE RRCContainer-RRCSetupComplete PRESENCE optional },
+ { ID id-RRCContainer-RRCSetupComplete CRITICALITY ignore TYPE RRCContainer-RRCSetupComplete PRESENCE optional }|
+ { ID id-NRRedCapUEIndication CRITICALITY ignore TYPE NRRedCapUEIndication PRESENCE optional }|
+ { ID id-SDTInformation CRITICALITY ignore TYPE SDTInformation PRESENCE optional }|
+ { ID id-SidelinkRelayConfiguration CRITICALITY ignore TYPE SidelinkRelayConfiguration PRESENCE optional },
...
}
@@ -2088,7 +2573,8 @@ DLRRCMessageTransferIEs F1AP-PROTOCOL-IES ::= {
{ ID id-RedirectedRRCmessage CRITICALITY reject TYPE RedirectedRRCmessage PRESENCE optional }|
{ ID id-PLMNAssistanceInfoForNetShar CRITICALITY ignore TYPE PLMN-Identity PRESENCE optional }|
{ ID id-new-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE optional }|
- { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional },
+ { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional }|
+ { ID id-SRBMappingInfo CRITICALITY ignore TYPE UuRLCChannelID PRESENCE optional },
...
}
-- **************************************************************
@@ -2183,7 +2669,16 @@ PagingIEs F1AP-PROTOCOL-IES ::= {
{ ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }|
{ ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }|
{ ID id-PagingCell-List CRITICALITY ignore TYPE PagingCell-list PRESENCE mandatory }|
- { ID id-PagingOrigin CRITICALITY ignore TYPE PagingOrigin PRESENCE optional },
+ { ID id-PagingOrigin CRITICALITY ignore TYPE PagingOrigin PRESENCE optional }|
+ { ID id-RANUEPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }|
+ { ID id-CNUEPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }|
+ { ID id-NRPagingeDRXInformation CRITICALITY ignore TYPE NRPagingeDRXInformation PRESENCE optional }|
+ { ID id-NRPagingeDRXInformationforRRCINACTIVE CRITICALITY ignore TYPE NRPagingeDRXInformationforRRCINACTIVE PRESENCE optional }|
+ { ID id-PagingCause CRITICALITY ignore TYPE PagingCause PRESENCE optional }|
+ { ID id-PEIPSAssistanceInfo CRITICALITY ignore TYPE PEIPSAssistanceInfo PRESENCE optional }|
+ { ID id-UEPagingCapability CRITICALITY ignore TYPE UEPagingCapability PRESENCE optional }|
+ { ID id-ExtendedUEIdentityIndexValue CRITICALITY ignore TYPE ExtendedUEIdentityIndexValue PRESENCE optional}|
+ { ID id-HashedUEIdentityIndexValue CRITICALITY ignore TYPE HashedUEIdentityIndexValue PRESENCE optional},
...
}
@@ -2239,33 +2734,33 @@ NetworkAccessRateReduction ::= SEQUENCE {
...
}
-NetworkAccessRateReductionIEs F1AP-PROTOCOL-IES ::= {
+NetworkAccessRateReductionIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-UAC-Assistance-Info CRITICALITY reject TYPE UAC-Assistance-Info PRESENCE mandatory },
...
}
--- **************************************************************
---
--- PWS RESTART INDICATION ELEMENTARY PROCEDURE
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS RESTART INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
--- **************************************************************
---
--- PWS Restart Indication
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS Restart Indication
+--
+-- **************************************************************
-PWSRestartIndication ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { { PWSRestartIndicationIEs} },
- ...
-}
+PWSRestartIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PWSRestartIndicationIEs} },
+ ...
+}
-PWSRestartIndicationIEs F1AP-PROTOCOL-IES ::= {
+PWSRestartIndicationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-NR-CGI-List-For-Restart-List CRITICALITY reject TYPE NR-CGI-List-For-Restart-List PRESENCE mandatory },
- ...
+ ...
}
NR-CGI-List-For-Restart-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { NR-CGI-List-For-Restart-List-ItemIEs } }
@@ -2275,27 +2770,27 @@ NR-CGI-List-For-Restart-List-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
--- **************************************************************
---
--- PWS FAILURE INDICATION ELEMENTARY PROCEDURE
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS FAILURE INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
--- **************************************************************
---
--- PWS Failure Indication
---
--- **************************************************************
+-- **************************************************************
+--
+-- PWS Failure Indication
+--
+-- **************************************************************
-PWSFailureIndication ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { { PWSFailureIndicationIEs} },
- ...
-}
+PWSFailureIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PWSFailureIndicationIEs} },
+ ...
+}
-PWSFailureIndicationIEs F1AP-PROTOCOL-IES ::= {
+PWSFailureIndicationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-PWS-Failed-NR-CGI-List CRITICALITY reject TYPE PWS-Failed-NR-CGI-List PRESENCE optional },
- ...
+ ...
}
PWS-Failed-NR-CGI-List ::= SEQUENCE (SIZE(1.. maxCellingNBDU)) OF ProtocolIE-SingleContainer { { PWS-Failed-NR-CGI-List-ItemIEs } }
@@ -2323,9 +2818,10 @@ GNBDUStatusIndication ::= SEQUENCE {
...
}
-GNBDUStatusIndicationIEs F1AP-PROTOCOL-IES ::= {
+GNBDUStatusIndicationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
- { ID id-GNBDUOverloadInformation CRITICALITY reject TYPE GNBDUOverloadInformation PRESENCE mandatory },
+ { ID id-GNBDUOverloadInformation CRITICALITY reject TYPE GNBDUOverloadInformation PRESENCE mandatory }|
+ { ID id-IABCongestionIndication CRITICALITY ignore TYPE IABCongestionIndication PRESENCE optional },
...
}
@@ -2475,10 +2971,8 @@ CellTrafficTraceIEs F1AP-PROTOCOL-IES ::= {
{ID id-TraceID CRITICALITY ignore TYPE TraceID PRESENCE mandatory }|
{ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }|
{ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional }|
-
{ID id-TraceCollectionEntityURI CRITICALITY ignore TYPE URI-address PRESENCE optional },
...
-
}
-- **************************************************************
@@ -2499,7 +2993,7 @@ DUCURadioInformationTransfer ::= SEQUENCE {
}
DUCURadioInformationTransferIEs F1AP-PROTOCOL-IES ::= {
- { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-DUCURadioInformationType CRITICALITY ignore TYPE DUCURadioInformationType PRESENCE mandatory },
...
}
@@ -2524,14 +3018,14 @@ CUDURadioInformationTransfer ::= SEQUENCE {
}
CUDURadioInformationTransferIEs F1AP-PROTOCOL-IES ::= {
- { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-CUDURadioInformationType CRITICALITY ignore TYPE CUDURadioInformationType PRESENCE mandatory },
...
}
-- **************************************************************
--
--- IAB PROCEDURES
+-- IAB PROCEDURES
--
-- **************************************************************
-- **************************************************************
@@ -2543,6 +3037,7 @@ CUDURadioInformationTransferIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- BAP MAPPING CONFIGURATION
+--
-- **************************************************************
@@ -2552,10 +3047,14 @@ BAPMappingConfiguration ::= SEQUENCE {
}
BAPMappingConfiguration-IEs F1AP-PROTOCOL-IES ::= {
- { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory}|
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory}|
{ ID id-BH-Routing-Information-Added-List CRITICALITY ignore TYPE BH-Routing-Information-Added-List PRESENCE optional}|
{ ID id-BH-Routing-Information-Removed-List CRITICALITY ignore TYPE BH-Routing-Information-Removed-List PRESENCE optional}|
- { ID id-TrafficMappingInformation CRITICALITY ignore TYPE TrafficMappingInfo PRESENCE optional},
+ { ID id-TrafficMappingInformation CRITICALITY ignore TYPE TrafficMappingInfo PRESENCE optional}|
+ { ID id-BufferSizeThresh CRITICALITY ignore TYPE BufferSizeThresh PRESENCE optional}|
+ { ID id-BAP-Header-Rewriting-Added-List CRITICALITY ignore TYPE BAP-Header-Rewriting-Added-List PRESENCE optional}|
+ { ID id-Re-routingEnableIndicator CRITICALITY ignore TYPE Re-routingEnableIndicator PRESENCE optional}|
+ { ID id-BAP-Header-Rewriting-Removed-List CRITICALITY ignore TYPE BAP-Header-Rewriting-Removed-List PRESENCE optional},
...
}
@@ -2572,15 +3071,29 @@ BH-Routing-Information-Removed-List-ItemIEs F1AP-PROTOCOL-IES ::= {
...
}
+BAP-Header-Rewriting-Added-List ::= SEQUENCE (SIZE(1.. maxnoofRoutingEntries)) OF ProtocolIE-SingleContainer { { BAP-Header-Rewriting-Added-List-ItemIEs } }
+
+BAP-Header-Rewriting-Added-List-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BAP-Header-Rewriting-Added-List-Item CRITICALITY ignore TYPE BAP-Header-Rewriting-Added-List-Item PRESENCE optional},
+ ...
+}
+
+BAP-Header-Rewriting-Removed-List ::= SEQUENCE (SIZE(1.. maxnoofRoutingEntries)) OF ProtocolIE-SingleContainer { { BAP-Header-Rewriting-Removed-List-ItemIEs } }
+
+BAP-Header-Rewriting-Removed-List-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BAP-Header-Rewriting-Removed-List-Item CRITICALITY ignore TYPE BAP-Header-Rewriting-Removed-List-Item PRESENCE optional},
+ ...
+}
-- **************************************************************
--
-- BAP MAPPING CONFIGURATION ACKNOWLEDGE
+--
-- **************************************************************
BAPMappingConfigurationAcknowledge ::= SEQUENCE {
protocolIEs ProtocolIE-Container { {BAPMappingConfigurationAcknowledge-IEs} },
- ...
+ ...
}
BAPMappingConfigurationAcknowledge-IEs F1AP-PROTOCOL-IES ::= {
@@ -2618,6 +3131,7 @@ BAPMappingConfigurationFailureIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- GNB-DU RESOURCE CONFIGURATION
+--
-- **************************************************************
@@ -2630,9 +3144,11 @@ GNBDUResourceConfiguration ::= SEQUENCE {
GNBDUResourceConfigurationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-Activated-Cells-to-be-Updated-List CRITICALITY reject TYPE Activated-Cells-to-be-Updated-List PRESENCE optional}|
- { ID id-Child-Nodes-List CRITICALITY reject TYPE Child-Nodes-List PRESENCE optional},
+ { ID id-Child-Nodes-List CRITICALITY reject TYPE Child-Nodes-List PRESENCE optional}|
+ { ID id-Neighbour-Node-Cells-List CRITICALITY reject TYPE Neighbour-Node-Cells-List PRESENCE optional}|
+ { ID id-Serving-Cells-List CRITICALITY reject TYPE Serving-Cells-List PRESENCE optional},
...
-}
+}
@@ -2640,6 +3156,7 @@ GNBDUResourceConfigurationIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- GNB-DU RESOURCE CONFIGURATION ACKNOWLEDGE
+--
-- **************************************************************
@@ -2684,6 +3201,7 @@ GNBDUResourceConfigurationFailureIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- IAB TNL ADDRESS REQUEST
+--
-- **************************************************************
@@ -2697,7 +3215,8 @@ IABTNLAddressRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-IABv4AddressesRequested CRITICALITY reject TYPE IABv4AddressesRequested PRESENCE optional }|
{ ID id-IABIPv6RequestType CRITICALITY reject TYPE IABIPv6RequestType PRESENCE optional }|
- { ID id-IAB-TNL-Addresses-To-Remove-List CRITICALITY reject TYPE IAB-TNL-Addresses-To-Remove-List PRESENCE optional },
+ { ID id-IAB-TNL-Addresses-To-Remove-List CRITICALITY reject TYPE IAB-TNL-Addresses-To-Remove-List PRESENCE optional }|
+ { ID id-IAB-TNL-Addresses-Exception CRITICALITY reject TYPE IAB-TNL-Addresses-Exception PRESENCE optional },
...
}
@@ -2713,6 +3232,7 @@ IAB-TNL-Addresses-To-Remove-ItemIEs F1AP-PROTOCOL-IES::= {
-- **************************************************************
--
-- IAB TNL ADDRESS RESPONSE
+--
-- **************************************************************
@@ -2773,7 +3293,7 @@ IABUPConfigurationUpdateRequest ::= SEQUENCE {
...
}
-IABUPConfigurationUpdateRequestIEs F1AP-PROTOCOL-IES ::= {
+IABUPConfigurationUpdateRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-UL-UP-TNL-Information-to-Update-List CRITICALITY ignore TYPE UL-UP-TNL-Information-to-Update-List PRESENCE optional }|
{ ID id-UL-UP-TNL-Address-to-Update-List CRITICALITY ignore TYPE UL-UP-TNL-Address-to-Update-List PRESENCE optional },
@@ -2783,14 +3303,14 @@ IABUPConfigurationUpdateRequestIEs F1AP-PROTOCOL-IES ::= {
UL-UP-TNL-Information-to-Update-List ::= SEQUENCE (SIZE(1.. maxnoofULUPTNLInformationforIAB)) OF ProtocolIE-SingleContainer { { UL-UP-TNL-Information-to-Update-List-ItemIEs } }
UL-UP-TNL-Information-to-Update-List-ItemIEs F1AP-PROTOCOL-IES ::= {
- { ID id-UL-UP-TNL-Information-to-Update-List-Item CRITICALITY ignore TYPE UL-UP-TNL-Information-to-Update-List-Item PRESENCE optional},
+ { ID id-UL-UP-TNL-Information-to-Update-List-Item CRITICALITY ignore TYPE UL-UP-TNL-Information-to-Update-List-Item PRESENCE mandatory },
...
}
UL-UP-TNL-Address-to-Update-List ::= SEQUENCE (SIZE(1.. maxnoofUPTNLAddresses)) OF ProtocolIE-SingleContainer { { UL-UP-TNL-Address-to-Update-List-ItemIEs } }
UL-UP-TNL-Address-to-Update-List-ItemIEs F1AP-PROTOCOL-IES ::= {
- { ID id-UL-UP-TNL-Address-to-Update-List-Item CRITICALITY ignore TYPE UL-UP-TNL-Address-to-Update-List-Item PRESENCE optional},
+ { ID id-UL-UP-TNL-Address-to-Update-List-Item CRITICALITY ignore TYPE UL-UP-TNL-Address-to-Update-List-Item PRESENCE mandatory },
...
}
@@ -2806,7 +3326,7 @@ IABUPConfigurationUpdateResponse ::= SEQUENCE {
...
}
-IABUPConfigurationUpdateResponseIEs F1AP-PROTOCOL-IES ::= {
+IABUPConfigurationUpdateResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
{ ID id-DL-UP-TNL-Address-to-Update-List CRITICALITY reject TYPE DL-UP-TNL-Address-to-Update-List PRESENCE optional },
@@ -2816,7 +3336,7 @@ IABUPConfigurationUpdateResponseIEs F1AP-PROTOCOL-IES ::= {
DL-UP-TNL-Address-to-Update-List ::= SEQUENCE (SIZE(1.. maxnoofUPTNLAddresses)) OF ProtocolIE-SingleContainer { { DL-UP-TNL-Address-to-Update-List-ItemIEs } }
DL-UP-TNL-Address-to-Update-List-ItemIEs F1AP-PROTOCOL-IES ::= {
- { ID id-DL-UP-TNL-Address-to-Update-List-Item CRITICALITY ignore TYPE DL-UP-TNL-Address-to-Update-List-Item PRESENCE optional},
+ { ID id-DL-UP-TNL-Address-to-Update-List-Item CRITICALITY ignore TYPE DL-UP-TNL-Address-to-Update-List-Item PRESENCE mandatory },
...
}
@@ -2917,7 +3437,7 @@ ResourceStatusFailureIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- Resource Status Update
+-- Resource Status Update
--
-- **************************************************************
@@ -2944,7 +3464,7 @@ ResourceStatusUpdateIEs F1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- Access And Mobility Indication
+-- Access And Mobility Indication
--
-- **************************************************************
@@ -2953,10 +3473,11 @@ AccessAndMobilityIndication ::= SEQUENCE {
...
}
-AccessAndMobilityIndicationIEs F1AP-PROTOCOL-IES ::= {
+AccessAndMobilityIndicationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-RACHReportInformationList CRITICALITY ignore TYPE RACHReportInformationList PRESENCE optional }|
- { ID id-RLFReportInformationList CRITICALITY ignore TYPE RLFReportInformationList PRESENCE optional },
+ { ID id-RLFReportInformationList CRITICALITY ignore TYPE RLFReportInformationList PRESENCE optional }|
+ { ID id-SuccessfulHOReportInformationList CRITICALITY ignore TYPE SuccessfulHOReportInformationList PRESENCE optional },
...
}
@@ -3090,17 +3611,24 @@ PositioningMeasurementRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-LMF-MeasurementID CRITICALITY reject TYPE LMF-MeasurementID PRESENCE mandatory}|
{ ID id-RAN-MeasurementID CRITICALITY reject TYPE RAN-MeasurementID PRESENCE mandatory}|
{ ID id-TRP-MeasurementRequestList CRITICALITY reject TYPE TRP-MeasurementRequestList PRESENCE mandatory}|
- { ID id-PosReportCharacteristics CRITICALITY reject TYPE PosReportCharacteristics PRESENCE mandatory}|
- { ID id-PosMeasurementPeriodicity CRITICALITY reject TYPE MeasurementPeriodicity PRESENCE conditional }|
+ { ID id-PosReportCharacteristics CRITICALITY reject TYPE PosReportCharacteristics PRESENCE mandatory}|
+ { ID id-PosMeasurementPeriodicity CRITICALITY reject TYPE MeasurementPeriodicity PRESENCE conditional }|
-- The above IE shall be present if the PosReportCharacteristics IE is set to “periodic” --
{ ID id-PosMeasurementQuantities CRITICALITY reject TYPE PosMeasurementQuantities PRESENCE mandatory}|
{ ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional }|
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
{ ID id-MeasurementBeamInfoRequest CRITICALITY ignore TYPE MeasurementBeamInfoRequest PRESENCE optional }|
{ ID id-SystemFrameNumber CRITICALITY ignore TYPE SystemFrameNumber PRESENCE optional}|
- { ID id-SlotNumber CRITICALITY ignore TYPE SlotNumber PRESENCE optional},
+ { ID id-SlotNumber CRITICALITY ignore TYPE SlotNumber PRESENCE optional}|
+ { ID id-PosMeasurementPeriodicityExtended CRITICALITY reject TYPE MeasurementPeriodicityExtended PRESENCE conditional }|
+ -- The IE shall be present the MeasurementPeriodicity IE is set to the value "extended"
+
+ { ID id-ResponseTime CRITICALITY ignore TYPE ResponseTime PRESENCE optional}|
+ { ID id-MeasurementCharacteristicsRequestIndicator CRITICALITY ignore TYPE MeasurementCharacteristicsRequestIndicator PRESENCE optional}|
+ { ID id-MeasurementTimeOccasion CRITICALITY ignore TYPE MeasurementTimeOccasion PRESENCE optional }|
+ { ID id-PosMeasurementAmount CRITICALITY ignore TYPE PosMeasurementAmount PRESENCE optional },
...
-}
+}
-- **************************************************************
@@ -3189,7 +3717,7 @@ PositioningMeasurementAbort ::= SEQUENCE {
}
PositioningMeasurementAbortIEs F1AP-PROTOCOL-IES ::= {
- { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-LMF-MeasurementID CRITICALITY reject TYPE LMF-MeasurementID PRESENCE mandatory }|
{ ID id-RAN-MeasurementID CRITICALITY reject TYPE RAN-MeasurementID PRESENCE mandatory },
...
@@ -3241,7 +3769,10 @@ PositioningMeasurementUpdateIEs F1AP-PROTOCOL-IES ::= {
{ ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
{ ID id-LMF-MeasurementID CRITICALITY reject TYPE LMF-MeasurementID PRESENCE mandatory }|
{ ID id-RAN-MeasurementID CRITICALITY reject TYPE RAN-MeasurementID PRESENCE mandatory }|
- { ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional},
+ { ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
+ { ID id-TRP-MeasurementUpdateList CRITICALITY reject TYPE TRP-MeasurementUpdateList PRESENCE optional}|
+ { ID id-MeasurementCharacteristicsRequestIndicator CRITICALITY ignore TYPE MeasurementCharacteristicsRequestIndicator PRESENCE optional}|
+ { ID id-MeasurementTimeOccasion CRITICALITY ignore TYPE MeasurementTimeOccasion PRESENCE optional },
...
}
@@ -3341,11 +3872,13 @@ PositioningInformationRequest ::= SEQUENCE {
}
PositioningInformationRequestIEs F1AP-PROTOCOL-IES ::= {
- { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-RequestedSRSTransmissionCharacteristics CRITICALITY ignore TYPE RequestedSRSTransmissionCharacteristics PRESENCE optional},
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RequestedSRSTransmissionCharacteristics CRITICALITY ignore TYPE RequestedSRSTransmissionCharacteristics PRESENCE optional}|
+ { ID id-UEReportingInformation CRITICALITY ignore TYPE UEReportingInformation PRESENCE optional}|
+ { ID id-SRSPosRRCInactiveQueryIndication CRITICALITY ignore TYPE SRSPosRRCInactiveQueryIndication PRESENCE optional},
...
-}
+}
-- **************************************************************
@@ -3362,10 +3895,11 @@ PositioningInformationResponse ::= SEQUENCE {
PositioningInformationResponseIEs F1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
- { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-SRSPosRRCInactiveConfig CRITICALITY ignore TYPE SRSPosRRCInactiveConfig PRESENCE optional},
...
}
@@ -3382,7 +3916,7 @@ PositioningInformationFailure ::= SEQUENCE {
}
PositioningInformationFailureIEs F1AP-PROTOCOL-IES ::= {
-
+
{ ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
@@ -3414,11 +3948,11 @@ PositioningActivationRequestIEs F1AP-PROTOCOL-IES ::= {
{ ID id-SRSType CRITICALITY reject TYPE SRSType PRESENCE mandatory }|
{ ID id-ActivationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional },
...
-}
+}
SRSType ::= CHOICE {
semipersistentSRS SemipersistentSRS,
- aperiodicSRS AperiodicSRS,
+ aperiodicSRS AperiodicSRS,
choice-extension ProtocolIE-SingleContainer { { SRSType-ExtIEs} }
}
@@ -3434,6 +3968,7 @@ SemipersistentSRS ::= SEQUENCE {
}
SemipersistentSRS-ExtIEs F1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSSpatialRelationPerSRSResource CRITICALITY ignore EXTENSION SpatialRelationPerSRSResource PRESENCE optional},
...
}
@@ -3515,7 +4050,7 @@ PositioningDeactivationIEs F1AP-PROTOCOL-IES ::= {
{ ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-AbortTransmission CRITICALITY ignore TYPE AbortTransmission PRESENCE mandatory },
...
-}
+}
-- **************************************************************
--
@@ -3539,7 +4074,7 @@ PositioningInformationUpdateIEs F1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
- { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional},
+ { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional},
...
}
@@ -3568,7 +4103,9 @@ E-CIDMeasurementInitiationRequest-IEs F1AP-PROTOCOL-IES ::= {
{ ID id-E-CID-ReportCharacteristics CRITICALITY reject TYPE E-CID-ReportCharacteristics PRESENCE mandatory }|
{ ID id-E-CID-MeasurementPeriodicity CRITICALITY reject TYPE MeasurementPeriodicity PRESENCE conditional }|
-- The above IE shall be present if the E-CID-ReportCharacteristics IE is set to “periodic” –-
- { ID id-E-CID-MeasurementQuantities CRITICALITY reject TYPE E-CID-MeasurementQuantities PRESENCE mandatory},
+ { ID id-E-CID-MeasurementQuantities CRITICALITY reject TYPE E-CID-MeasurementQuantities PRESENCE mandatory}|
+ { ID id-PosMeasurementPeriodicityNR-AoA CRITICALITY reject TYPE PosMeasurementPeriodicityNR-AoA PRESENCE conditional},
+-- The IE shall be present if the E-CID-ReportCharacteristics IE is set to “periodic” and the E-CID-MeasurementQuantities-Item IE in the E-CID-MeasurementQuantities IE is set to the value "angleOfArrivalNR"--
...
}
@@ -3586,11 +4123,11 @@ E-CIDMeasurementInitiationResponse ::= SEQUENCE {
E-CIDMeasurementInitiationResponse-IEs F1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-LMF-UE-MeasurementID CRITICALITY reject TYPE LMF-UE-MeasurementID PRESENCE mandatory }|
- { ID id-RAN-UE-MeasurementID CRITICALITY reject TYPE RAN-UE-MeasurementID PRESENCE mandatory }|
+ { ID id-LMF-UE-MeasurementID CRITICALITY reject TYPE LMF-UE-MeasurementID PRESENCE mandatory }|
+ { ID id-RAN-UE-MeasurementID CRITICALITY reject TYPE RAN-UE-MeasurementID PRESENCE mandatory }|
{ ID id-E-CID-MeasurementResult CRITICALITY ignore TYPE E-CID-MeasurementResult PRESENCE optional}|
{ ID id-Cell-Portion-ID CRITICALITY ignore TYPE Cell-Portion-ID PRESENCE optional}|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
...
}
@@ -3664,8 +4201,8 @@ E-CIDMeasurementReport ::= SEQUENCE {
E-CIDMeasurementReport-IEs F1AP-PROTOCOL-IES ::= {
{ ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
{ ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
- { ID id-LMF-UE-MeasurementID CRITICALITY reject TYPE LMF-UE-MeasurementID PRESENCE mandatory }|
- { ID id-RAN-UE-MeasurementID CRITICALITY reject TYPE RAN-UE-MeasurementID PRESENCE mandatory }|
+ { ID id-LMF-UE-MeasurementID CRITICALITY reject TYPE LMF-UE-MeasurementID PRESENCE mandatory }|
+ { ID id-RAN-UE-MeasurementID CRITICALITY reject TYPE RAN-UE-MeasurementID PRESENCE mandatory }|
{ ID id-E-CID-MeasurementResult CRITICALITY ignore TYPE E-CID-MeasurementResult PRESENCE mandatory }|
{ ID id-Cell-Portion-ID CRITICALITY ignore TYPE Cell-Portion-ID PRESENCE optional},
@@ -3699,6 +4236,1086 @@ E-CIDMeasurementTerminationCommand-IEs F1AP-PROTOCOL-IES ::= {
...
}
+-- **************************************************************
+--
+-- BROADCAST CONTEXT SETUP ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT SETUP REQUEST
+--
+-- **************************************************************
+
+BroadcastContextSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextSetupRequestIEs} },
+ ...
+}
+
+BroadcastContextSetupRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBS-Session-ID CRITICALITY reject TYPE MBS-Session-ID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }|
+ { ID id-MBS-CUtoDURRCInformation CRITICALITY reject TYPE MBS-CUtoDURRCInformation PRESENCE mandatory }|
+ { ID id-SNSSAI CRITICALITY reject TYPE SNSSAI PRESENCE mandatory }|
+ { ID id-BroadcastMRBs-ToBeSetup-List CRITICALITY reject TYPE BroadcastMRBs-ToBeSetup-List PRESENCE mandatory },
+ ...
+}
+
+BroadcastMRBs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-ToBeSetup-ItemIEs} }
+
+
+BroadcastMRBs-ToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-ToBeSetup-Item CRITICALITY reject TYPE BroadcastMRBs-ToBeSetup-Item PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT SETUP RESPONSE
+--
+-- **************************************************************
+
+BroadcastContextSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextSetupResponseIEs} },
+ ...
+}
+
+BroadcastContextSetupResponseIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-BroadcastMRBs-Setup-List CRITICALITY reject TYPE BroadcastMRBs-Setup-List PRESENCE mandatory }|
+ { ID id-BroadcastMRBs-FailedToBeSetup-List CRITICALITY ignore TYPE BroadcastMRBs-FailedToBeSetup-List PRESENCE optional }|
+ { ID id-BroadcastAreaScope CRITICALITY ignore TYPE BroadcastAreaScope PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+BroadcastMRBs-Setup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-Setup-ItemIEs} }
+
+BroadcastMRBs-FailedToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-FailedToBeSetup-ItemIEs} }
+
+BroadcastMRBs-Setup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-Setup-Item CRITICALITY reject TYPE BroadcastMRBs-Setup-Item PRESENCE mandatory},
+ ...
+}
+
+BroadcastMRBs-FailedToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-FailedToBeSetup-Item CRITICALITY ignore TYPE BroadcastMRBs-FailedToBeSetup-Item PRESENCE mandatory}, ...
+}
+
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT SETUP FAILURE
+--
+-- **************************************************************
+
+BroadcastContextSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextSetupFailureIEs} },
+ ...
+}
+
+BroadcastContextSetupFailureIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY ignore TYPE GNB-DU-UE-F1AP-ID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT RELEASE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT RELEASE COMMAND
+--
+-- **************************************************************
+
+BroadcastContextReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextReleaseCommandIEs} },
+ ...
+}
+
+BroadcastContextReleaseCommandIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT RELEASE COMPLETE
+--
+-- **************************************************************
+
+BroadcastContextReleaseComplete ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextReleaseCompleteIEs} },
+ ...
+}
+BroadcastContextReleaseCompleteIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT RELEASE REQUEST ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT RELEASE REQUEST
+--
+-- **************************************************************
+
+BroadcastContextReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ BroadcastContextReleaseRequestIEs}},
+ ...
+}
+
+BroadcastContextReleaseRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT MODIFICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT MODIFICATION REQUEST
+--
+-- **************************************************************
+
+BroadcastContextModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextModificationRequestIEs} },
+ ...
+}
+
+BroadcastContextModificationRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }|
+ { ID id-MBS-CUtoDURRCInformation CRITICALITY reject TYPE MBS-CUtoDURRCInformation PRESENCE mandatory }|
+ { ID id-BroadcastMRBs-ToBeSetupMod-List CRITICALITY reject TYPE BroadcastMRBs-ToBeSetupMod-List PRESENCE optional }|
+ { ID id-BroadcastMRBs-ToBeModified-List CRITICALITY reject TYPE BroadcastMRBs-ToBeModified-List PRESENCE optional }|
+ { ID id-BroadcastMRBs-ToBeReleased-List CRITICALITY reject TYPE BroadcastMRBs-ToBeReleased-List PRESENCE optional },
+ ...
+}
+
+BroadcastMRBs-ToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-ToBeSetupMod-ItemIEs} }
+BroadcastMRBs-ToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-ToBeModified-ItemIEs} }
+BroadcastMRBs-ToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-ToBeReleased-ItemIEs} }
+
+BroadcastMRBs-ToBeSetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-ToBeSetupMod-Item CRITICALITY reject TYPE BroadcastMRBs-ToBeSetupMod-Item PRESENCE mandatory},
+ ...
+}
+
+BroadcastMRBs-ToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-ToBeModified-Item CRITICALITY reject TYPE BroadcastMRBs-ToBeModified-Item PRESENCE mandatory},
+ ...
+}
+
+BroadcastMRBs-ToBeReleased-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-ToBeReleased-Item CRITICALITY reject TYPE BroadcastMRBs-ToBeReleased-Item PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT MODIFICATION RESPONSE
+--
+-- **************************************************************
+
+BroadcastContextModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextModificationResponseIEs} },
+ ...
+}
+
+
+BroadcastContextModificationResponseIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory}|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory}|
+
+ { ID id-BroadcastMRBs-SetupMod-List CRITICALITY reject TYPE BroadcastMRBs-SetupMod-List PRESENCE optional}|
+ { ID id-BroadcastMRBs-FailedToBeSetupMod-List CRITICALITY ignore TYPE BroadcastMRBs-FailedToBeSetupMod-List PRESENCE optional}|
+ { ID id-BroadcastMRBs-Modified-List CRITICALITY reject TYPE BroadcastMRBs-Modified-List PRESENCE optional}|
+ { ID id-BroadcastMRBs-FailedToBeModified-List CRITICALITY ignore TYPE BroadcastMRBs-FailedToBeModified-List PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-BroadcastAreaScope CRITICALITY ignore TYPE BroadcastAreaScope PRESENCE optional},
+ ...
+}
+
+BroadcastMRBs-SetupMod-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-SetupMod-ItemIEs} }
+
+BroadcastMRBs-FailedToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-FailedToBeSetupMod-ItemIEs} }
+
+BroadcastMRBs-Modified-List::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-Modified-ItemIEs } }
+
+BroadcastMRBs-FailedToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { BroadcastMRBs-FailedToBeModified-ItemIEs} }
+
+
+BroadcastMRBs-SetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-SetupMod-Item CRITICALITY reject TYPE BroadcastMRBs-SetupMod-Item PRESENCE mandatory},
+ ...
+}
+
+BroadcastMRBs-FailedToBeSetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-FailedToBeSetupMod-Item CRITICALITY ignore TYPE BroadcastMRBs-FailedToBeSetupMod-Item PRESENCE mandatory},
+ ...
+}
+
+BroadcastMRBs-Modified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-Modified-Item CRITICALITY reject TYPE BroadcastMRBs-Modified-Item PRESENCE mandatory},
+ ...
+}
+
+BroadcastMRBs-FailedToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-BroadcastMRBs-FailedToBeModified-Item CRITICALITY ignore TYPE BroadcastMRBs-FailedToBeModified-Item PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST CONTEXT MODIFICATION FAILURE
+--
+-- **************************************************************
+
+BroadcastContextModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { BroadcastContextModificationFailureIEs} },
+ ...
+}
+
+BroadcastContextModificationFailureIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Multicast Group Paging PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- Multicast Group Paging
+--
+-- **************************************************************
+
+MulticastGroupPaging ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastGroupPagingIEs}},
+ ...
+}
+
+MulticastGroupPagingIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MBS-Session-ID CRITICALITY reject TYPE MBS-Session-ID PRESENCE mandatory }|
+ { ID id-UEIdentity-List-For-Paging-List CRITICALITY ignore TYPE UEIdentity-List-For-Paging-List PRESENCE optional }|
+ { ID id-MC-PagingCell-List CRITICALITY ignore TYPE MC-PagingCell-list PRESENCE optional },
+ ...
+}
+
+UEIdentity-List-For-Paging-List ::= SEQUENCE (SIZE(1.. maxnoofUEIDforPaging)) OF ProtocolIE-SingleContainer { { UEIdentity-List-For-Paging-ItemIEs } }
+
+
+UEIdentity-List-For-Paging-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-UEIdentity-List-For-Paging-Item CRITICALITY ignore TYPE UEIdentity-List-For-Paging-Item PRESENCE optional } ,
+ ...
+}
+
+MC-PagingCell-list::= SEQUENCE (SIZE(1.. maxnoofPagingCells)) OF ProtocolIE-SingleContainer { { MC-PagingCell-ItemIEs } }
+
+MC-PagingCell-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MC-PagingCell-Item CRITICALITY ignore TYPE MC-PagingCell-Item PRESENCE mandatory} ,
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT SETUP ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT SETUP REQUEST
+--
+-- **************************************************************
+
+MulticastContextSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextSetupRequestIEs}},
+ ...
+}
+
+MulticastContextSetupRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBS-Session-ID CRITICALITY reject TYPE MBS-Session-ID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }|
+ { ID id-SNSSAI CRITICALITY reject TYPE SNSSAI PRESENCE mandatory }|
+ { ID id-MulticastMRBs-ToBeSetup-List CRITICALITY reject TYPE MulticastMRBs-ToBeSetup-List PRESENCE mandatory },
+ ...
+}
+
+MulticastMRBs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-ToBeSetup-ItemIEs} }
+
+
+MulticastMRBs-ToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-ToBeSetup-Item CRITICALITY reject TYPE MulticastMRBs-ToBeSetup-Item PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT SETUP RESPONSE
+--
+-- **************************************************************
+
+MulticastContextSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextSetupResponseIEs}},
+ ...
+}
+
+MulticastContextSetupResponseIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MulticastMRBs-Setup-List CRITICALITY reject TYPE MulticastMRBs-Setup-List PRESENCE mandatory }|
+ { ID id-MulticastMRBs-FailedToBeSetup-List CRITICALITY ignore TYPE MulticastMRBs-FailedToBeSetup-List PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+MulticastMRBs-Setup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-Setup-ItemIEs} }
+
+MulticastMRBs-FailedToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-FailedToBeSetup-ItemIEs} }
+
+MulticastMRBs-Setup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-Setup-Item CRITICALITY reject TYPE MulticastMRBs-Setup-Item PRESENCE mandatory},
+ ...
+}
+
+MulticastMRBs-FailedToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-FailedToBeSetup-Item CRITICALITY ignore TYPE MulticastMRBs-FailedToBeSetup-Item PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT SETUP FAILURE
+--
+-- **************************************************************
+
+MulticastContextSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextSetupFailureIEs}},
+ ...
+}
+
+MulticastContextSetupFailureIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY ignore TYPE GNB-DU-MBS-F1AP-ID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT RELEASE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT RELEASE COMMAND
+--
+-- **************************************************************
+
+MulticastContextReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextReleaseCommandIEs}},
+ ...
+}
+
+MulticastContextReleaseCommandIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT RELEASE COMPLETE
+--
+-- **************************************************************
+
+MulticastContextReleaseComplete ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextReleaseCompleteIEs}},
+ ...
+}
+
+MulticastContextReleaseCompleteIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT RELEASE REQUEST ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT RELEASE REQUEST
+--
+-- **************************************************************
+
+MulticastContextReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextReleaseRequestIEs}},
+ ...
+}
+
+MulticastContextReleaseRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT MODIFICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT MODIFICATION REQUEST
+--
+-- **************************************************************
+
+MulticastContextModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextModificationRequestIEs}},
+ ...
+}
+
+MulticastContextModificationRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }|
+ { ID id-MulticastMRBs-ToBeSetupMod-List CRITICALITY reject TYPE MulticastMRBs-ToBeSetupMod-List PRESENCE optional }|
+ { ID id-MulticastMRBs-ToBeModified-List CRITICALITY reject TYPE MulticastMRBs-ToBeModified-List PRESENCE optional }|
+ { ID id-MulticastMRBs-ToBeReleased-List CRITICALITY reject TYPE MulticastMRBs-ToBeReleased-List PRESENCE optional },
+ ...
+}
+
+MulticastMRBs-ToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-ToBeSetupMod-ItemIEs} }
+MulticastMRBs-ToBeSetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-ToBeSetupMod-Item CRITICALITY reject TYPE MulticastMRBs-ToBeSetupMod-Item PRESENCE mandatory},
+ ...
+}
+
+MulticastMRBs-ToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-ToBeModified-ItemIEs} }
+MulticastMRBs-ToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-ToBeModified-Item CRITICALITY reject TYPE MulticastMRBs-ToBeModified-Item PRESENCE mandatory},
+ ...
+}
+
+
+MulticastMRBs-ToBeReleased-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-ToBeReleased-ItemIEs} }
+MulticastMRBs-ToBeReleased-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-ToBeReleased-Item CRITICALITY reject TYPE MulticastMRBs-ToBeReleased-Item PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT MODIFICATION RESPONSE
+--
+-- **************************************************************
+
+MulticastContextModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextModificationResponseIEs}},
+ ...
+}
+
+MulticastContextModificationResponseIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MulticastMRBs-SetupMod-List CRITICALITY reject TYPE MulticastMRBs-SetupMod-List PRESENCE optional }|
+ { ID id-MulticastMRBs-FailedToBeSetupMod-List CRITICALITY ignore TYPE MulticastMRBs-FailedToBeSetupMod-List PRESENCE optional }|
+ { ID id-MulticastMRBs-Modified-List CRITICALITY reject TYPE MulticastMRBs-Modified-List PRESENCE optional }|
+ { ID id-MulticastMRBs-FailedToBeModified-List CRITICALITY ignore TYPE MulticastMRBs-FailedToBeModified-List PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+MulticastMRBs-SetupMod-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-SetupMod-ItemIEs} }
+MulticastMRBs-SetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-SetupMod-Item CRITICALITY reject TYPE MulticastMRBs-SetupMod-Item PRESENCE mandatory},
+ ...
+}
+
+MulticastMRBs-FailedToBeSetupMod-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-FailedToBeSetupMod-ItemIEs} }
+MulticastMRBs-FailedToBeSetupMod-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-FailedToBeSetupMod-Item CRITICALITY ignore TYPE MulticastMRBs-FailedToBeSetupMod-Item PRESENCE mandatory},
+ ...
+}
+
+MulticastMRBs-Modified-List::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-Modified-ItemIEs } }
+MulticastMRBs-Modified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-Modified-Item CRITICALITY reject TYPE MulticastMRBs-Modified-Item PRESENCE mandatory},
+ ...
+}
+
+MulticastMRBs-FailedToBeModified-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastMRBs-FailedToBeModified-ItemIEs} }
+MulticastMRBs-FailedToBeModified-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastMRBs-FailedToBeModified-Item CRITICALITY ignore TYPE MulticastMRBs-FailedToBeModified-Item PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST CONTEXT MODIFICATION FAILURE
+--
+-- **************************************************************
+
+MulticastContextModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastContextModificationFailureIEs}},
+ ...
+}
+
+MulticastContextModificationFailureIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION SETUP ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION SETUP REQUEST
+--
+-- **************************************************************
+
+MulticastDistributionSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastDistributionSetupRequestIEs}},
+ ...
+}
+
+MulticastDistributionSetupRequestIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBSMulticastF1UContextDescriptor CRITICALITY reject TYPE MBSMulticastF1UContextDescriptor PRESENCE mandatory }|
+ { ID id-MulticastF1UContext-ToBeSetup-List CRITICALITY reject TYPE MulticastF1UContext-ToBeSetup-List PRESENCE mandatory },
+ ...
+}
+
+MulticastF1UContext-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF
+ ProtocolIE-SingleContainer { { MulticastF1UContext-ToBeSetup-ItemIEs} }
+MulticastF1UContext-ToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastF1UContext-ToBeSetup-Item CRITICALITY reject TYPE MulticastF1UContext-ToBeSetup-Item PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION SETUP RESPONSE
+--
+-- **************************************************************
+
+MulticastDistributionSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastDistributionSetupResponseIEs}},
+ ...
+}
+
+MulticastDistributionSetupResponseIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory}|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory}|
+ { ID id-MBSMulticastF1UContextDescriptor CRITICALITY reject TYPE MBSMulticastF1UContextDescriptor PRESENCE mandatory}|
+ { ID id-MulticastF1UContext-Setup-List CRITICALITY reject TYPE MulticastF1UContext-Setup-List PRESENCE mandatory}|
+ { ID id-MulticastF1UContext-FailedToBeSetup-List CRITICALITY ignore TYPE MulticastF1UContext-FailedToBeSetup-List PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-MulticastF1UContextReferenceCU CRITICALITY reject TYPE MulticastF1UContextReferenceCU PRESENCE mandatory},
+ ...
+}
+
+MulticastF1UContext-Setup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF ProtocolIE-SingleContainer { { MulticastF1UContext-Setup-ItemIEs} }
+MulticastF1UContext-Setup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastF1UContext-Setup-Item CRITICALITY reject TYPE MulticastF1UContext-Setup-Item PRESENCE mandatory},
+ ...
+}
+
+MulticastF1UContext-FailedToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF
+ ProtocolIE-SingleContainer { { MulticastF1UContext-FailedToBeSetup-ItemIEs} }
+MulticastF1UContext-FailedToBeSetup-ItemIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-MulticastF1UContext-FailedToBeSetup-Item CRITICALITY ignore TYPE MulticastF1UContext-FailedToBeSetup-Item PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION SETUP FAILURE
+--
+-- **************************************************************
+
+MulticastDistributionSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastDistributionSetupFailureIEs}},
+ ...
+}
+
+MulticastDistributionSetupFailureIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY ignore TYPE GNB-DU-MBS-F1AP-ID PRESENCE optional }|
+ { ID id-MBSMulticastF1UContextDescriptor CRITICALITY reject TYPE MBSMulticastF1UContextDescriptor PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION RELEASE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION RELEASE COMMAND
+--
+-- **************************************************************
+
+MulticastDistributionReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastDistributionReleaseCommandIEs}},
+ ...
+}
+
+MulticastDistributionReleaseCommandIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBSMulticastF1UContextDescriptor CRITICALITY reject TYPE MBSMulticastF1UContextDescriptor PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MULTICAST DISTRIBUTION RELEASE COMPLETE
+--
+-- **************************************************************
+
+MulticastDistributionReleaseComplete ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MulticastDistributionReleaseCompleteIEs}},
+ ...
+}
+
+MulticastDistributionReleaseCompleteIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-CU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-MBS-F1AP-ID CRITICALITY reject TYPE GNB-DU-MBS-F1AP-ID PRESENCE mandatory }|
+ { ID id-MBSMulticastF1UContextDescriptor CRITICALITY reject TYPE MBSMulticastF1UContextDescriptor PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- PDC MEASUREMENT PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- PDC Measurement Initiation Request
+--
+-- **************************************************************
+
+PDCMeasurementInitiationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PDCMeasurementInitiationRequest-IEs}},
+ ...
+}
+
+PDCMeasurementInitiationRequest-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-PDC-MeasID CRITICALITY reject TYPE RAN-UE-PDC-MeasID PRESENCE mandatory }|
+ { ID id-PDCReportType CRITICALITY reject TYPE PDCReportType PRESENCE mandatory }|
+ { ID id-PDCMeasurementPeriodicity CRITICALITY reject TYPE PDCMeasurementPeriodicity PRESENCE conditional }|
+-- The above IE shall be present if the PDCReportType IE is set to “periodic” –-
+ { ID id-PDCMeasurementQuantities CRITICALITY reject TYPE PDCMeasurementQuantities PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- PDC Measurement Initiation Response
+--
+-- **************************************************************
+
+PDCMeasurementInitiationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PDCMeasurementInitiationResponse-IEs}},
+ ...
+}
+
+PDCMeasurementInitiationResponse-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-PDC-MeasID CRITICALITY reject TYPE RAN-UE-PDC-MeasID PRESENCE mandatory }|
+ { ID id-PDCMeasurementResult CRITICALITY ignore TYPE PDCMeasurementResult PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- PDC Measurement Initiation Failure
+--
+-- **************************************************************
+
+PDCMeasurementInitiationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PDCMeasurementInitiationFailure-IEs}},
+ ...
+}
+
+PDCMeasurementInitiationFailure-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-PDC-MeasID CRITICALITY ignore TYPE RAN-UE-PDC-MeasID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- PDC MEASUREMENT REPORT PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- PDC Measurement Report
+--
+-- **************************************************************
+
+PDCMeasurementReport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PDCMeasurementReport-IEs}},
+ ...
+}
+
+PDCMeasurementReport-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-PDC-MeasID CRITICALITY reject TYPE RAN-UE-PDC-MeasID PRESENCE mandatory }|
+ { ID id-PDCMeasurementResult CRITICALITY ignore TYPE PDCMeasurementResult PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- PDC MEASUREMENT TERMINATION PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- PDC Measurement Termination
+--
+-- **************************************************************
+
+PDCMeasurementTerminationCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PDCMeasurementTerminationCommand-IEs} },
+ ...
+}
+
+
+PDCMeasurementTerminationCommand-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-PDC-MeasID CRITICALITY ignore TYPE RAN-UE-PDC-MeasID PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- PDC MEASUREMENT FAILURE INDICATION PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- PDC Measurement Failure Indication
+--
+-- **************************************************************
+
+
+PDCMeasurementFailureIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PDCMeasurementFailureIndication-IEs} },
+ ...
+}
+
+PDCMeasurementFailureIndication-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-PDC-MeasID CRITICALITY ignore TYPE RAN-UE-PDC-MeasID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- PPS CONFIGURATION PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- PRS CONFIGURATION REQUEST
+--
+-- **************************************************************
+
+PRSConfigurationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PRSConfigurationRequest-IEs}},
+ ...
+}
+
+PRSConfigurationRequest-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-PRSConfigRequestType CRITICALITY reject TYPE PRSConfigRequestType PRESENCE mandatory }|
+ { ID id-PRSTRPList CRITICALITY ignore TYPE PRSTRPList PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- PRS CONFIGURATION RESPONSE
+--
+-- **************************************************************
+
+PRSConfigurationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PRSConfigurationResponse-IEs}},
+ ...
+}
+
+PRSConfigurationResponse-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory}|
+ { ID id-PRSTransmissionTRPList CRITICALITY ignore TYPE PRSTransmissionTRPList PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- PRS CONFIGURATION FAILURE
+--
+-- **************************************************************
+
+PRSConfigurationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PRSConfigurationFailure-IEs}},
+ ...
+}
+
+PRSConfigurationFailure-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MEASUREMENT PRECONFIGURATION PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Positioning Preconfiguration Required
+--
+-- **************************************************************
+
+MeasurementPreconfigurationRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MeasurementPreconfigurationRequired-IEs}},
+ ...
+}
+
+MeasurementPreconfigurationRequired-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory}|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory}|
+ { ID id-TRP-PRS-Info-List CRITICALITY ignore TYPE TRP-PRS-Info-List PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Positioning Preconfiguration Confirm
+--
+-- **************************************************************
+
+MeasurementPreconfigurationConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MeasurementPreconfigurationConfirm-IEs} },
+ ...
+}
+
+
+MeasurementPreconfigurationConfirm-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-PosMeasGapPreConfigList CRITICALITY ignore TYPE PosMeasGapPreConfigList PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+
+
+-- **************************************************************
+--
+-- Positioning Preconfiguration Refuse
+--
+-- **************************************************************
+
+MeasurementPreconfigurationRefuse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MeasurementPreconfigurationRefuse-IEs} },
+ ...
+}
+
+MeasurementPreconfigurationRefuse-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MEASUREMENT ACTIVATION PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Measurement Activation
+--
+-- **************************************************************
+
+MeasurementActivation ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MeasurementActivation-IEs} },
+ ...
+}
+
+MeasurementActivation-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-ActivationRequestType CRITICALITY reject TYPE ActivationRequestType PRESENCE mandatory}|
+ { ID id-PRS-Measurement-Info-List CRITICALITY ignore TYPE PRS-Measurement-Info-List PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- QOE INFORMATION TRANSFER
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- QoE Information Transfer
+--
+-- **************************************************************
+
+
+QoEInformationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{QoEInformationTransfer-IEs}},
+ ...
+}
+
+
+QoEInformationTransfer-IEs F1AP-PROTOCOL-IES ::= {
+ { ID id-gNB-CU-UE-F1AP-ID CRITICALITY reject TYPE GNB-CU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-gNB-DU-UE-F1AP-ID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory }|
+ { ID id-QoEInformation CRITICALITY ignore TYPE QoEInformation PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Positioning System information Delivery Command
+--
+-- **************************************************************
+
+PosSystemInformationDeliveryCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PosSystemInformationDeliveryCommandIEs}},
+ ...
+}
+
+PosSystemInformationDeliveryCommandIEs F1AP-PROTOCOL-IES ::= {
+ { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }|
+ { ID id-NRCGI CRITICALITY reject TYPE NRCGI PRESENCE mandatory }|
+ { ID id-PosSItypeList CRITICALITY reject TYPE PosSItypeList PRESENCE mandatory }|
+ { ID id-ConfirmedUEID CRITICALITY reject TYPE GNB-DU-UE-F1AP-ID PRESENCE mandatory },
+ ...
+}
END
diff --git a/epan/dissectors/asn1/f1ap/F1AP-PDU-Descriptions.asn b/epan/dissectors/asn1/f1ap/F1AP-PDU-Descriptions.asn
index a3c5b5d9e1..d20d3ea47a 100644
--- a/epan/dissectors/asn1/f1ap/F1AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/f1ap/F1AP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.473 V16.7.0 (2021-10)
+-- 3GPP TS 38.473 V17.7.0 (2023-12)
-- 9.4.3 Elementary Procedure Definitions
-- **************************************************************
--
@@ -6,11 +6,11 @@
--
-- **************************************************************
-F1AP-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+F1AP-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-PDU-Descriptions (0)}
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -29,7 +29,7 @@ FROM F1AP-CommonDataTypes
ResetAcknowledge,
F1SetupRequest,
F1SetupResponse,
- F1SetupFailure,
+ F1SetupFailure,
GNBDUConfigurationUpdate,
GNBDUConfigurationUpdateAcknowledge,
GNBDUConfigurationUpdateFailure,
@@ -121,7 +121,47 @@ FROM F1AP-CommonDataTypes
E-CIDMeasurementInitiationFailure,
E-CIDMeasurementFailureIndication,
E-CIDMeasurementReport,
- E-CIDMeasurementTerminationCommand
+ E-CIDMeasurementTerminationCommand,
+ BroadcastContextSetupRequest,
+ BroadcastContextSetupResponse,
+ BroadcastContextSetupFailure,
+ BroadcastContextReleaseCommand,
+ BroadcastContextReleaseComplete,
+ BroadcastContextReleaseRequest,
+ BroadcastContextModificationRequest,
+ BroadcastContextModificationResponse,
+ BroadcastContextModificationFailure,
+ MulticastGroupPaging,
+ MulticastContextSetupRequest,
+ MulticastContextSetupResponse,
+ MulticastContextSetupFailure,
+ MulticastContextReleaseCommand,
+ MulticastContextReleaseComplete,
+ MulticastContextReleaseRequest,
+ MulticastContextModificationRequest,
+ MulticastContextModificationResponse,
+ MulticastContextModificationFailure,
+ MulticastDistributionSetupRequest,
+ MulticastDistributionSetupResponse,
+ MulticastDistributionSetupFailure,
+ MulticastDistributionReleaseCommand,
+ MulticastDistributionReleaseComplete,
+ PDCMeasurementInitiationRequest,
+ PDCMeasurementInitiationResponse,
+ PDCMeasurementInitiationFailure,
+ PDCMeasurementReport,
+ PDCMeasurementTerminationCommand,
+ PDCMeasurementFailureIndication,
+ PRSConfigurationRequest,
+ PRSConfigurationResponse,
+ PRSConfigurationFailure,
+ MeasurementPreconfigurationRequired,
+ MeasurementPreconfigurationConfirm,
+ MeasurementPreconfigurationRefuse,
+ MeasurementActivation,
+ QoEInformationTransfer,
+ PosSystemInformationDeliveryCommand
+
@@ -134,7 +174,7 @@ FROM F1AP-PDU-Contents
id-UEContextRelease,
id-UEContextModification,
id-UEContextModificationRequired,
- id-ErrorIndication,
+ id-ErrorIndication,
id-UEContextReleaseRequest,
id-DLRRCMessageTransfer,
id-ULRRCMessageTransfer,
@@ -183,7 +223,30 @@ FROM F1AP-PDU-Contents
id-E-CIDMeasurementInitiation,
id-E-CIDMeasurementFailureIndication,
id-E-CIDMeasurementReport,
- id-E-CIDMeasurementTermination
+ id-E-CIDMeasurementTermination,
+ id-BroadcastContextSetup,
+ id-BroadcastContextRelease,
+ id-BroadcastContextReleaseRequest,
+ id-BroadcastContextModification,
+ id-MulticastGroupPaging,
+ id-MulticastContextSetup,
+ id-MulticastContextRelease,
+ id-MulticastContextReleaseRequest,
+ id-MulticastContextModification,
+ id-MulticastDistributionSetup,
+ id-MulticastDistributionRelease,
+ id-PDCMeasurementInitiation,
+ id-PDCMeasurementInitiationRequest,
+ id-PDCMeasurementInitiationResponse,
+ id-PDCMeasurementInitiationFailure,
+ id-PDCMeasurementTerminationCommand,
+ id-PDCMeasurementFailureIndication,
+ id-PDCMeasurementReport,
+ id-pRSConfigurationExchange,
+ id-measurementPreconfiguration,
+ id-measurementActivation,
+ id-QoEInformationTransfer,
+ id-PosSystemInformationDeliveryCommand
FROM F1AP-Constants
@@ -224,7 +287,7 @@ WITH SYNTAX {
F1AP-PDU ::= CHOICE {
initiatingMessage InitiatingMessage,
successfulOutcome SuccessfulOutcome,
- unsuccessfulOutcome UnsuccessfulOutcome,
+ unsuccessfulOutcome UnsuccessfulOutcome,
choice-extension ProtocolIE-SingleContainer { { F1AP-PDU-ExtIEs} }
}
@@ -258,7 +321,7 @@ UnsuccessfulOutcome ::= SEQUENCE {
F1AP-ELEMENTARY-PROCEDURES F1AP-ELEMENTARY-PROCEDURE ::= {
F1AP-ELEMENTARY-PROCEDURES-CLASS-1 |
- F1AP-ELEMENTARY-PROCEDURES-CLASS-2,
+ F1AP-ELEMENTARY-PROCEDURES-CLASS-2,
...
}
@@ -273,7 +336,7 @@ F1AP-ELEMENTARY-PROCEDURES-CLASS-1 F1AP-ELEMENTARY-PROCEDURE ::= {
uEContextModification |
uEContextModificationRequired |
writeReplaceWarning |
- pWSCancel |
+ pWSCancel |
gNBDUResourceCoordination |
f1Removal |
bAPMappingConfiguration |
@@ -285,11 +348,22 @@ F1AP-ELEMENTARY-PROCEDURES-CLASS-1 F1AP-ELEMENTARY-PROCEDURE ::= {
tRPInformationExchange |
positioningInformationExchange |
positioningActivation |
- e-CIDMeasurementInitiation,
+ e-CIDMeasurementInitiation |
+ broadcastContextSetup |
+ broadcastContextRelease |
+ broadcastContextModification |
+ multicastContextSetup |
+ multicastContextRelease |
+ multicastContextModification |
+ multicastDistributionSetup |
+ multicastDistributionRelease |
+ pDCMeasurementInitiation |
+ pRSConfigurationExchange |
+ measurementPreconfiguration ,
...
}
-F1AP-ELEMENTARY-PROCEDURES-CLASS-2 F1AP-ELEMENTARY-PROCEDURE ::= {
+F1AP-ELEMENTARY-PROCEDURES-CLASS-2 F1AP-ELEMENTARY-PROCEDURE ::= {
errorIndication |
uEContextReleaseRequest |
dLRRCMessageTransfer |
@@ -325,7 +399,16 @@ F1AP-ELEMENTARY-PROCEDURES-CLASS-2 F1AP-ELEMENTARY-PROCEDURE ::= {
e-CIDMeasurementFailureIndication |
e-CIDMeasurementReport |
e-CIDMeasurementTermination |
- positioningInformationUpdate,
+ positioningInformationUpdate |
+ multicastGroupPaging |
+ broadcastContextReleaseRequest |
+ multicastContextReleaseRequest |
+ pDCMeasurementReport |
+ pDCMeasurementTerminationCommand |
+ pDCMeasurementFailureIndication |
+ measurementActivation |
+ qoEInformationTransfer |
+ posSystemInformationDelivery,
...
}
-- **************************************************************
@@ -552,7 +635,7 @@ bAPMappingConfiguration F1AP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY reject
}
-gNBDUResourceConfiguration F1AP-ELEMENTARY-PROCEDURE ::= {
+gNBDUResourceConfiguration F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE GNBDUResourceConfiguration
SUCCESSFUL OUTCOME GNBDUResourceConfigurationAcknowledge
UNSUCCESSFUL OUTCOME GNBDUResourceConfigurationFailure
@@ -727,5 +810,147 @@ positioningInformationUpdate F1AP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY ignore
}
+broadcastContextSetup F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastContextSetupRequest
+ SUCCESSFUL OUTCOME BroadcastContextSetupResponse
+ UNSUCCESSFUL OUTCOME BroadcastContextSetupFailure
+ PROCEDURE CODE id-BroadcastContextSetup
+ CRITICALITY reject
+}
+
+broadcastContextRelease F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastContextReleaseCommand
+ SUCCESSFUL OUTCOME BroadcastContextReleaseComplete
+ PROCEDURE CODE id-BroadcastContextRelease
+ CRITICALITY reject
+}
+
+broadcastContextReleaseRequest F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastContextReleaseRequest
+ PROCEDURE CODE id-BroadcastContextReleaseRequest
+ CRITICALITY reject
+}
+
+broadcastContextModification F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastContextModificationRequest
+ SUCCESSFUL OUTCOME BroadcastContextModificationResponse
+ UNSUCCESSFUL OUTCOME BroadcastContextModificationFailure
+ PROCEDURE CODE id-BroadcastContextModification
+ CRITICALITY reject
+}
+
+multicastGroupPaging F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastGroupPaging
+ PROCEDURE CODE id-MulticastGroupPaging
+ CRITICALITY ignore
+}
+
+
+multicastContextSetup F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastContextSetupRequest
+ SUCCESSFUL OUTCOME MulticastContextSetupResponse
+ UNSUCCESSFUL OUTCOME MulticastContextSetupFailure
+ PROCEDURE CODE id-MulticastContextSetup
+ CRITICALITY reject
+}
+
+multicastContextRelease F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastContextReleaseCommand
+ SUCCESSFUL OUTCOME MulticastContextReleaseComplete
+ PROCEDURE CODE id-MulticastContextRelease
+ CRITICALITY reject
+}
+
+multicastContextReleaseRequest F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastContextReleaseRequest
+ PROCEDURE CODE id-MulticastContextReleaseRequest
+ CRITICALITY reject
+}
+
+multicastContextModification F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastContextModificationRequest
+ SUCCESSFUL OUTCOME MulticastContextModificationResponse
+ UNSUCCESSFUL OUTCOME MulticastContextModificationFailure
+ PROCEDURE CODE id-MulticastContextModification
+ CRITICALITY reject
+}
+
+multicastDistributionSetup F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastDistributionSetupRequest
+ SUCCESSFUL OUTCOME MulticastDistributionSetupResponse
+ UNSUCCESSFUL OUTCOME MulticastDistributionSetupFailure
+ PROCEDURE CODE id-MulticastDistributionSetup
+ CRITICALITY reject
+}
+
+multicastDistributionRelease F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastDistributionReleaseCommand
+ SUCCESSFUL OUTCOME MulticastDistributionReleaseComplete
+ PROCEDURE CODE id-MulticastDistributionRelease
+ CRITICALITY reject
+}
+
+
+pDCMeasurementInitiation F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PDCMeasurementInitiationRequest
+ SUCCESSFUL OUTCOME PDCMeasurementInitiationResponse
+ UNSUCCESSFUL OUTCOME PDCMeasurementInitiationFailure
+ PROCEDURE CODE id-PDCMeasurementInitiation
+ CRITICALITY reject
+}
+
+pDCMeasurementReport F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PDCMeasurementReport
+ PROCEDURE CODE id-PDCMeasurementReport
+ CRITICALITY ignore
+}
+
+pDCMeasurementTerminationCommand F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PDCMeasurementTerminationCommand
+ PROCEDURE CODE id-PDCMeasurementTerminationCommand
+ CRITICALITY ignore
+}
+
+pDCMeasurementFailureIndication F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PDCMeasurementFailureIndication
+ PROCEDURE CODE id-PDCMeasurementFailureIndication
+ CRITICALITY ignore
+}
+
+pRSConfigurationExchange F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PRSConfigurationRequest
+ SUCCESSFUL OUTCOME PRSConfigurationResponse
+ UNSUCCESSFUL OUTCOME PRSConfigurationFailure
+ PROCEDURE CODE id-pRSConfigurationExchange
+ CRITICALITY reject
+}
+
+measurementPreconfiguration F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MeasurementPreconfigurationRequired
+ SUCCESSFUL OUTCOME MeasurementPreconfigurationConfirm
+ UNSUCCESSFUL OUTCOME MeasurementPreconfigurationRefuse
+ PROCEDURE CODE id-measurementPreconfiguration
+ CRITICALITY reject
+}
+
+
+measurementActivation F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MeasurementActivation
+ PROCEDURE CODE id-measurementActivation
+ CRITICALITY ignore
+}
+
+qoEInformationTransfer F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE QoEInformationTransfer
+ PROCEDURE CODE id-QoEInformationTransfer
+ CRITICALITY ignore
+}
+
+posSystemInformationDelivery F1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PosSystemInformationDeliveryCommand
+ PROCEDURE CODE id-PosSystemInformationDeliveryCommand
+ CRITICALITY ignore
+}
+
END
diff --git a/epan/dissectors/asn1/f1ap/f1ap.cnf b/epan/dissectors/asn1/f1ap/f1ap.cnf
index b08ff19ec5..20345be96d 100644
--- a/epan/dissectors/asn1/f1ap/f1ap.cnf
+++ b/epan/dissectors/asn1/f1ap/f1ap.cnf
@@ -31,6 +31,7 @@ ProtocolIE-ID
Presence
ProtocolIE-ContainerPair
ProtocolIE-FieldPair
+PRS-ID
#.END
@@ -168,6 +169,29 @@ id-E-CIDMeasurementTermination ProcedureCode
id-PositioningInformationUpdate ProcedureCode
id-ReferenceTimeInformationReport ProcedureCode
id-ReferenceTimeInformationReportingControl ProcedureCode
+id-BroadcastContextSetup ProcedureCode
+id-BroadcastContextRelease ProcedureCode
+id-BroadcastContextReleaseRequest ProcedureCode
+id-BroadcastContextModification ProcedureCode
+id-MulticastGroupPaging ProcedureCode
+id-MulticastContextSetup ProcedureCode
+id-MulticastContextRelease ProcedureCode
+id-MulticastContextReleaseRequest ProcedureCode
+id-MulticastContextModification ProcedureCode
+id-MulticastDistributionSetup ProcedureCode
+id-MulticastDistributionRelease ProcedureCode
+id-PDCMeasurementInitiation ProcedureCode
+id-PDCMeasurementReport ProcedureCode
+id-PDCMeasurementInitiationRequest ProcedureCode
+id-PDCMeasurementInitiationResponse ProcedureCode
+id-PDCMeasurementInitiationFailure ProcedureCode
+id-pRSConfigurationExchange ProcedureCode
+id-measurementPreconfiguration ProcedureCode
+id-measurementActivation ProcedureCode
+id-QoEInformationTransfer ProcedureCode
+id-PDCMeasurementTerminationCommand ProcedureCode
+id-PDCMeasurementFailureIndication ProcedureCode
+id-PosSystemInformationDeliveryCommand ProcedureCode
# ProtocolIE-ID
id-Cause ProtocolIE-ID
@@ -582,14 +606,290 @@ id-TRP-MeasurementRequestList ProtocolIE-ID
id-MeasurementBeamInfoRequest ProtocolIE-ID
id-E-CID-ReportCharacteristics ProtocolIE-ID
id-ConfiguredTACIndication ProtocolIE-ID
-id-Extended-GNB-DU-Name ProtocolIE-ID
id-Extended-GNB-CU-Name ProtocolIE-ID
+id-Extended-GNB-DU-Name ProtocolIE-ID
id-F1CTransferPath ProtocolIE-ID
id-SFN-Offset ProtocolIE-ID
id-TransmissionStopIndicator ProtocolIE-ID
id-SrsFrequency ProtocolIE-ID
id-SCGIndicator ProtocolIE-ID
id-EstimatedArrivalProbability ProtocolIE-ID
+id-TRPType ProtocolIE-ID
+id-SRSSpatialRelationPerSRSResource ProtocolIE-ID
+id-PDCPTerminatingNodeDLTNLAddrInfo ProtocolIE-ID
+id-ENBDLTNLAddress ProtocolIE-ID
+id-PosMeasurementPeriodicityExtended ProtocolIE-ID
+id-PRS-Resource-ID ProtocolIE-ID
+id-LocationMeasurementInformation ProtocolIE-ID
+id-SliceRadioResourceStatus ProtocolIE-ID
+id-CompositeAvailableCapacity-SUL ProtocolIE-ID
+id-SuccessfulHOReportInformationList ProtocolIE-ID
+id-NR-U-Channel-List ProtocolIE-ID
+id-NR-U ProtocolIE-ID
+id-Coverage-Modification-Notification ProtocolIE-ID
+id-CCO-Assistance-Information ProtocolIE-ID
+id-Neighbor-node-CCO-Assistance-Information-List ProtocolIE-ID
+id-CellsForSON-List ProtocolIE-ID
+id-MIMOPRBusageInformation ProtocolIE-ID
+id-gNB-CU-MBS-F1AP-ID ProtocolIE-ID
+id-gNB-DU-MBS-F1AP-ID ProtocolIE-ID
+id-MBS-Area-Session-ID ProtocolIE-ID
+id-MBS-CUtoDURRCInformation ProtocolIE-ID
+id-MBS-Session-ID ProtocolIE-ID
+id-SNSSAI ProtocolIE-ID
+id-MBS-Broadcast-NeighbourCellList ProtocolIE-ID
+id-BroadcastMRBs-FailedToBeModified-List ProtocolIE-ID
+id-BroadcastMRBs-FailedToBeModified-Item ProtocolIE-ID
+id-BroadcastMRBs-FailedToBeSetup-List ProtocolIE-ID
+id-BroadcastMRBs-FailedToBeSetup-Item ProtocolIE-ID
+id-BroadcastMRBs-FailedToBeSetupMod-List ProtocolIE-ID
+id-BroadcastMRBs-FailedToBeSetupMod-Item ProtocolIE-ID
+id-BroadcastMRBs-Modified-List ProtocolIE-ID
+id-BroadcastMRBs-Modified-Item ProtocolIE-ID
+id-BroadcastMRBs-Setup-List ProtocolIE-ID
+id-BroadcastMRBs-Setup-Item ProtocolIE-ID
+id-BroadcastMRBs-SetupMod-List ProtocolIE-ID
+id-BroadcastMRBs-SetupMod-Item ProtocolIE-ID
+id-BroadcastMRBs-ToBeModified-List ProtocolIE-ID
+id-BroadcastMRBs-ToBeModified-Item ProtocolIE-ID
+id-BroadcastMRBs-ToBeReleased-List ProtocolIE-ID
+id-BroadcastMRBs-ToBeReleased-Item ProtocolIE-ID
+id-BroadcastMRBs-ToBeSetup-List ProtocolIE-ID
+id-BroadcastMRBs-ToBeSetup-Item ProtocolIE-ID
+id-BroadcastMRBs-ToBeSetupMod-List ProtocolIE-ID
+id-BroadcastMRBs-ToBeSetupMod-Item ProtocolIE-ID
+id-Supported-MBS-FSA-ID-List ProtocolIE-ID
+id-UEIdentity-List-For-Paging-List ProtocolIE-ID
+id-UEIdentity-List-For-Paging-Item ProtocolIE-ID
+id-MBS-ServiceArea ProtocolIE-ID
+id-MulticastMRBs-FailedToBeModified-List ProtocolIE-ID
+id-MulticastMRBs-FailedToBeModified-Item ProtocolIE-ID
+id-MulticastMRBs-FailedToBeSetup-List ProtocolIE-ID
+id-MulticastMRBs-FailedToBeSetup-Item ProtocolIE-ID
+id-MulticastMRBs-FailedToBeSetupMod-List ProtocolIE-ID
+id-MulticastMRBs-FailedToBeSetupMod-Item ProtocolIE-ID
+id-MulticastMRBs-Modified-List ProtocolIE-ID
+id-MulticastMRBs-Modified-Item ProtocolIE-ID
+id-MulticastMRBs-Setup-List ProtocolIE-ID
+id-MulticastMRBs-Setup-Item ProtocolIE-ID
+id-MulticastMRBs-SetupMod-List ProtocolIE-ID
+id-MulticastMRBs-SetupMod-Item ProtocolIE-ID
+id-MulticastMRBs-ToBeModified-List ProtocolIE-ID
+id-MulticastMRBs-ToBeModified-Item ProtocolIE-ID
+id-MulticastMRBs-ToBeReleased-List ProtocolIE-ID
+id-MulticastMRBs-ToBeReleased-Item ProtocolIE-ID
+id-MulticastMRBs-ToBeSetup-List ProtocolIE-ID
+id-MulticastMRBs-ToBeSetup-Item ProtocolIE-ID
+id-MulticastMRBs-ToBeSetupMod-List ProtocolIE-ID
+id-MulticastMRBs-ToBeSetupMod-Item ProtocolIE-ID
+id-MBSMulticastF1UContextDescriptor ProtocolIE-ID
+id-MulticastF1UContext-ToBeSetup-List ProtocolIE-ID
+id-MulticastF1UContext-ToBeSetup-Item ProtocolIE-ID
+id-MulticastF1UContext-Setup-List ProtocolIE-ID
+id-MulticastF1UContext-Setup-Item ProtocolIE-ID
+id-MulticastF1UContext-FailedToBeSetup-List ProtocolIE-ID
+id-MulticastF1UContext-FailedToBeSetup-Item ProtocolIE-ID
+id-IABCongestionIndication ProtocolIE-ID
+id-IABConditionalRRCMessageDeliveryIndication ProtocolIE-ID
+id-F1CTransferPathNRDC ProtocolIE-ID
+id-BufferSizeThresh ProtocolIE-ID
+id-IAB-TNL-Addresses-Exception ProtocolIE-ID
+id-BAP-Header-Rewriting-Added-List ProtocolIE-ID
+id-BAP-Header-Rewriting-Added-List-Item ProtocolIE-ID
+id-Re-routingEnableIndicator ProtocolIE-ID
+id-NonF1terminatingTopologyIndicator ProtocolIE-ID
+id-EgressNonF1terminatingTopologyIndicator ProtocolIE-ID
+id-IngressNonF1terminatingTopologyIndicator ProtocolIE-ID
+id-rBSetConfiguration ProtocolIE-ID
+id-frequency-Domain-HSNA-Configuration-List ProtocolIE-ID
+id-child-IAB-Nodes-NA-Resource-List ProtocolIE-ID
+id-Parent-IAB-Nodes-NA-Resource-Configuration-List ProtocolIE-ID
+id-uL-FreqInfo ProtocolIE-ID
+id-uL-Transmission-Bandwidth ProtocolIE-ID
+id-dL-FreqInfo ProtocolIE-ID
+id-dL-Transmission-Bandwidth ProtocolIE-ID
+id-uL-NR-Carrier-List ProtocolIE-ID
+id-dL-NR-Carrier-List ProtocolIE-ID
+id-nRFreqInfo ProtocolIE-ID
+id-transmission-Bandwidth ProtocolIE-ID
+id-nR-Carrier-List ProtocolIE-ID
+id-Neighbour-Node-Cells-List ProtocolIE-ID
+id-Serving-Cells-List ProtocolIE-ID
+id-permutation ProtocolIE-ID
+id-MDTPollutedMeasurementIndicator ProtocolIE-ID
+id-M5ReportAmount ProtocolIE-ID
+id-M6ReportAmount ProtocolIE-ID
+id-M7ReportAmount ProtocolIE-ID
+id-SurvivalTime ProtocolIE-ID
+id-PDCMeasurementPeriodicity ProtocolIE-ID
+id-PDCMeasurementQuantities ProtocolIE-ID
+id-PDCMeasurementQuantities-Item ProtocolIE-ID
+id-PDCMeasurementResult ProtocolIE-ID
+id-PDCReportType ProtocolIE-ID
+id-RAN-UE-PDC-MeasID ProtocolIE-ID
+id-SCGActivationRequest ProtocolIE-ID
+id-SCGActivationStatus ProtocolIE-ID
+id-PRSTRPList ProtocolIE-ID
+id-PRSTransmissionTRPList ProtocolIE-ID
+id-OnDemandPRS ProtocolIE-ID
+id-AoA-SearchWindow ProtocolIE-ID
+id-TRP-MeasurementUpdateList ProtocolIE-ID
+id-ZoAInformation ProtocolIE-ID
+id-ResponseTime ProtocolIE-ID
+id-ARPLocationInfo ProtocolIE-ID
+id-ARP-ID ProtocolIE-ID
+id-MultipleULAoA ProtocolIE-ID
+id-UL-SRS-RSRPP ProtocolIE-ID
+id-SRSResourcetype ProtocolIE-ID
+id-ExtendedAdditionalPathList ProtocolIE-ID
+id-LoS-NLoSInformation ProtocolIE-ID
+id-NumberOfTRPRxTEG ProtocolIE-ID
+id-NumberOfTRPRxTxTEG ProtocolIE-ID
+id-TRPTxTEGAssociation ProtocolIE-ID
+id-TRPTEGInformation ProtocolIE-ID
+id-TRPRx-TEGInformation ProtocolIE-ID
+id-TRP-PRS-Info-List ProtocolIE-ID
+id-PRS-Measurement-Info-List ProtocolIE-ID
+id-PRSConfigRequestType ProtocolIE-ID
+id-MeasurementTimeOccasion ProtocolIE-ID
+id-MeasurementCharacteristicsRequestIndicator ProtocolIE-ID
+id-UEReportingInformation ProtocolIE-ID
+id-PosConextRevIndication ProtocolIE-ID
+id-TRPBeamAntennaInformation ProtocolIE-ID
+id-NRRedCapUEIndication ProtocolIE-ID
+id-Redcap-Bcast-Information ProtocolIE-ID
+id-RANUEPagingDRX ProtocolIE-ID
+id-CNUEPagingDRX ProtocolIE-ID
+id-NRPagingeDRXInformation ProtocolIE-ID
+id-NRPagingeDRXInformationforRRCINACTIVE ProtocolIE-ID
+id-NR-TADV ProtocolIE-ID
+id-QoEInformation ProtocolIE-ID
+id-CG-SDTQueryIndication ProtocolIE-ID
+id-SDT-MAC-PHY-CG-Config ProtocolIE-ID
+id-CG-SDTKeptIndicator ProtocolIE-ID
+id-CG-SDTindicatorSetup ProtocolIE-ID
+id-CG-SDTindicatorMod ProtocolIE-ID
+id-CG-SDTSessionInfoOld ProtocolIE-ID
+id-SDTInformation ProtocolIE-ID
+id-SDTRLCBearerConfiguration ProtocolIE-ID
+id-FiveG-ProSeAuthorized ProtocolIE-ID
+id-FiveG-ProSeUEPC5AggregateMaximumBitrate ProtocolIE-ID
+id-FiveG-ProSePC5LinkAMBR ProtocolIE-ID
+id-SRBMappingInfo ProtocolIE-ID
+id-DRBMappingInfo ProtocolIE-ID
+id-UuRLCChannelToBeSetupList ProtocolIE-ID
+id-UuRLCChannelToBeModifiedList ProtocolIE-ID
+id-UuRLCChannelToBeReleasedList ProtocolIE-ID
+id-UuRLCChannelSetupList ProtocolIE-ID
+id-UuRLCChannelFailedToBeSetupList ProtocolIE-ID
+id-UuRLCChannelModifiedList ProtocolIE-ID
+id-UuRLCChannelFailedToBeModifiedList ProtocolIE-ID
+id-UuRLCChannelRequiredToBeModifiedList ProtocolIE-ID
+id-UuRLCChannelRequiredToBeReleasedList ProtocolIE-ID
+id-PC5RLCChannelToBeSetupList ProtocolIE-ID
+id-PC5RLCChannelToBeModifiedList ProtocolIE-ID
+id-PC5RLCChannelToBeReleasedList ProtocolIE-ID
+id-PC5RLCChannelSetupList ProtocolIE-ID
+id-PC5RLCChannelFailedToBeSetupList ProtocolIE-ID
+id-PC5RLCChannelFailedToBeModifiedList ProtocolIE-ID
+id-PC5RLCChannelRequiredToBeModifiedList ProtocolIE-ID
+id-PC5RLCChannelRequiredToBeReleasedList ProtocolIE-ID
+id-PC5RLCChannelModifiedList ProtocolIE-ID
+id-SidelinkRelayConfiguration ProtocolIE-ID
+id-UpdatedRemoteUELocalID ProtocolIE-ID
+id-PathSwitchConfiguration ProtocolIE-ID
+id-PagingCause ProtocolIE-ID
+id-MUSIM-GapConfig ProtocolIE-ID
+id-PEIPSAssistanceInfo ProtocolIE-ID
+id-UEPagingCapability ProtocolIE-ID
+id-LastUsedCellIndication ProtocolIE-ID
+id-SIB17-message ProtocolIE-ID
+id-GNBDUUESliceMaximumBitRateList ProtocolIE-ID
+id-SIB20-message ProtocolIE-ID
+id-UE-MulticastMRBs-ToBeReleased-List ProtocolIE-ID
+id-UE-MulticastMRBs-ToBeReleased-Item ProtocolIE-ID
+id-UE-MulticastMRBs-ToBeSetup-List ProtocolIE-ID
+id-UE-MulticastMRBs-ToBeSetup-Item ProtocolIE-ID
+id-MulticastMBSSessionSetupList ProtocolIE-ID
+id-MulticastMBSSessionRemoveList ProtocolIE-ID
+id-PosMeasurementAmount ProtocolIE-ID
+id-SDT-Termination-Request ProtocolIE-ID
+id-pathPower ProtocolIE-ID
+id-DU-RX-MT-RX-Extend ProtocolIE-ID
+id-DU-TX-MT-TX-Extend ProtocolIE-ID
+id-DU-RX-MT-TX-Extend ProtocolIE-ID
+id-DU-TX-MT-RX-Extend ProtocolIE-ID
+id-BAP-Header-Rewriting-Removed-List ProtocolIE-ID
+id-BAP-Header-Rewriting-Removed-List-Item ProtocolIE-ID
+id-SLDRXCycleList ProtocolIE-ID
+id-TAINSAGSupportList ProtocolIE-ID
+id-SL-RLC-ChannelToAddModList ProtocolIE-ID
+id-BroadcastAreaScope ProtocolIE-ID
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID
+id-SIB15-message ProtocolIE-ID
+id-ActivationRequestType ProtocolIE-ID
+id-PosMeasGapPreConfigList ProtocolIE-ID
+id-InterFrequencyConfig-NoGap ProtocolIE-ID
+id-MBSInterestIndication ProtocolIE-ID
+id-UE-MulticastMRBs-ConfirmedToBeModified-List ProtocolIE-ID
+id-UE-MulticastMRBs-ConfirmedToBeModified-Item ProtocolIE-ID
+id-UE-MulticastMRBs-RequiredToBeModified-List ProtocolIE-ID
+id-UE-MulticastMRBs-RequiredToBeModified-Item ProtocolIE-ID
+id-UE-MulticastMRBs-RequiredToBeReleased-List ProtocolIE-ID
+id-UE-MulticastMRBs-RequiredToBeReleased-Item ProtocolIE-ID
+id-L571Info ProtocolIE-ID
+id-L1151Info ProtocolIE-ID
+id-SCS-480 ProtocolIE-ID
+id-SCS-960 ProtocolIE-ID
+id-SRSPortIndex ProtocolIE-ID
+id-PEISubgroupingSupportIndication ProtocolIE-ID
+id-NeedForGapsInfoNR ProtocolIE-ID
+id-NeedForGapNCSGInfoNR ProtocolIE-ID
+id-NeedForGapNCSGInfoEUTRA ProtocolIE-ID
+id-procedure-code-668-not-to-be-used ProtocolIE-ID
+id-procedure-code-669-not-to-be-used ProtocolIE-ID
+id-procedure-code-670-not-to-be-used ProtocolIE-ID
+id-Source-MRB-ID ProtocolIE-ID
+id-PosMeasurementPeriodicityNR-AoA ProtocolIE-ID
+id-RedCapIndication ProtocolIE-ID
+id-SRSPosRRCInactiveConfig ProtocolIE-ID
+id-SDTBearerConfigurationQueryIndication ProtocolIE-ID
+id-SDTBearerConfigurationInfo ProtocolIE-ID
+id-UL-GapFR2-Config ProtocolIE-ID
+id-ConfigRestrictInfoDAPS ProtocolIE-ID
+id-UE-MulticastMRBs-Setup-List ProtocolIE-ID
+id-UE-MulticastMRBs-Setup-Item ProtocolIE-ID
+id-MulticastF1UContextReferenceCU ProtocolIE-ID
+id-PosSItypeList ProtocolIE-ID
+id-DAPS-HO-Status ProtocolIE-ID
+id-UplinkTxDirectCurrentTwoCarrierListInfo ProtocolIE-ID
+id-UE-MulticastMRBs-ToBeSetup-atModify-List ProtocolIE-ID
+id-UE-MulticastMRBs-ToBeSetup-atModify-Item ProtocolIE-ID
+id-MC-PagingCell-List ProtocolIE-ID
+id-MC-PagingCell-Item ProtocolIE-ID
+id-SRSPosRRCInactiveQueryIndication ProtocolIE-ID
+id-UlTxDirectCurrentMoreCarrierInformation ProtocolIE-ID
+id-CPACMCGInformation ProtocolIE-ID
+id-TwoPHRModeMCG ProtocolIE-ID
+id-TwoPHRModeSCG ProtocolIE-ID
+id-ExtendedUEIdentityIndexValue ProtocolIE-ID
+id-ServingCellMO-List ProtocolIE-ID
+id-ServingCellMO-List-Item ProtocolIE-ID
+id-ServingCellMO-encoded-in-CGC-List ProtocolIE-ID
+id-HashedUEIdentityIndexValue ProtocolIE-ID
+id-UE-MulticastMRBs-Setupnew-List ProtocolIE-ID
+id-UE-MulticastMRBs-Setupnew-Item ProtocolIE-ID
+id-ncd-SSB-RedCapInitialBWP-SDT ProtocolIE-ID
+id-nrofSymbolsExtended ProtocolIE-ID
+id-repetitionFactorExtended ProtocolIE-ID
+id-startRBHopping ProtocolIE-ID
+id-startRBIndex ProtocolIE-ID
+id-transmissionCombn8 ProtocolIE-ID
+id-ServCellInfoList ProtocolIE-ID
+id-DedicatedSIDeliveryIndication ProtocolIE-ID
+id-Configured-BWP-List ProtocolIE-ID
+id-Preconfigured-measurement-GAP-Request ProtocolIE-ID
+id-BWP-Id ProtocolIE-ID
#.END
#.REGISTER
@@ -771,6 +1071,7 @@ PagingOrigin N f1ap.ies id-PagingOrigin
GNB-CU-UE-F1AP-ID N f1ap.ies id-new-gNB-CU-UE-F1AP-ID
RedirectedRRCmessage N f1ap.ies id-RedirectedRRCmessage
GNB-DU-UE-F1AP-ID N f1ap.ies id-new-gNB-DU-UE-F1AP-ID
+NotificationInformation N f1ap.ies id-NotificationInformation
PLMN-Identity N f1ap.ies id-PLMNAssistanceInfoForNetShar
UEContextNotRetrievable N f1ap.ies id-UEContextNotRetrievable
PLMN-Identity N f1ap.ies id-SelectedPLMNID
@@ -919,10 +1220,196 @@ SlotNumber N f1ap.ies id-SlotNumber
TRP-MeasurementRequestList N f1ap.ies id-TRP-MeasurementRequestList
MeasurementBeamInfoRequest N f1ap.ies id-MeasurementBeamInfoRequest
E-CID-ReportCharacteristics N f1ap.ies id-E-CID-ReportCharacteristics
-Extended-GNB-DU-Name N f1ap.ies id-Extended-GNB-DU-Name
Extended-GNB-CU-Name N f1ap.ies id-Extended-GNB-CU-Name
+Extended-GNB-DU-Name N f1ap.ies id-Extended-GNB-DU-Name
F1CTransferPath N f1ap.ies id-F1CTransferPath
SCGIndicator N f1ap.ies id-SCGIndicator
+TRPType N f1ap.ies id-TRPType
+MeasurementPeriodicityExtended N f1ap.ies id-PosMeasurementPeriodicityExtended
+SuccessfulHOReportInformationList N f1ap.ies id-SuccessfulHOReportInformationList
+CellsForSON-List N f1ap.ies id-CellsForSON-List
+GNB-CU-MBS-F1AP-ID N f1ap.ies id-gNB-CU-MBS-F1AP-ID
+GNB-DU-MBS-F1AP-ID N f1ap.ies id-gNB-DU-MBS-F1AP-ID
+MBS-CUtoDURRCInformation N f1ap.ies id-MBS-CUtoDURRCInformation
+SNSSAI N f1ap.ies id-SNSSAI
+BroadcastMRBs-FailedToBeModified-List N f1ap.ies id-BroadcastMRBs-FailedToBeModified-List
+BroadcastMRBs-FailedToBeModified-Item N f1ap.ies id-BroadcastMRBs-FailedToBeModified-Item
+BroadcastMRBs-FailedToBeSetup-List N f1ap.ies id-BroadcastMRBs-FailedToBeSetup-List
+BroadcastMRBs-FailedToBeSetup-Item N f1ap.ies id-BroadcastMRBs-FailedToBeSetup-Item
+BroadcastMRBs-FailedToBeSetupMod-List N f1ap.ies id-BroadcastMRBs-FailedToBeSetupMod-List
+BroadcastMRBs-FailedToBeSetupMod-Item N f1ap.ies id-BroadcastMRBs-FailedToBeSetupMod-Item
+BroadcastMRBs-Modified-List N f1ap.ies id-BroadcastMRBs-Modified-List
+BroadcastMRBs-Modified-Item N f1ap.ies id-BroadcastMRBs-Modified-Item
+BroadcastMRBs-Setup-List N f1ap.ies id-BroadcastMRBs-Setup-List
+BroadcastMRBs-Setup-Item N f1ap.ies id-BroadcastMRBs-Setup-Item
+BroadcastMRBs-SetupMod-List N f1ap.ies id-BroadcastMRBs-SetupMod-List
+BroadcastMRBs-SetupMod-Item N f1ap.ies id-BroadcastMRBs-SetupMod-Item
+BroadcastMRBs-ToBeModified-List N f1ap.ies id-BroadcastMRBs-ToBeModified-List
+BroadcastMRBs-ToBeModified-Item N f1ap.ies id-BroadcastMRBs-ToBeModified-Item
+BroadcastMRBs-ToBeReleased-List N f1ap.ies id-BroadcastMRBs-ToBeReleased-List
+BroadcastMRBs-ToBeReleased-Item N f1ap.ies id-BroadcastMRBs-ToBeReleased-Item
+BroadcastMRBs-ToBeSetup-List N f1ap.ies id-BroadcastMRBs-ToBeSetup-List
+BroadcastMRBs-ToBeSetup-Item N f1ap.ies id-BroadcastMRBs-ToBeSetup-Item
+BroadcastMRBs-ToBeSetupMod-List N f1ap.ies id-BroadcastMRBs-ToBeSetupMod-List
+BroadcastMRBs-ToBeSetupMod-Item N f1ap.ies id-BroadcastMRBs-ToBeSetupMod-Item
+UEIdentity-List-For-Paging-List N f1ap.ies id-UEIdentity-List-For-Paging-List
+UEIdentity-List-For-Paging-Item N f1ap.ies id-UEIdentity-List-For-Paging-Item
+MBS-ServiceArea N f1ap.ies id-MBS-ServiceArea
+MulticastMRBs-FailedToBeModified-List N f1ap.ies id-MulticastMRBs-FailedToBeModified-List
+MulticastMRBs-FailedToBeModified-Item N f1ap.ies id-MulticastMRBs-FailedToBeModified-Item
+MulticastMRBs-FailedToBeSetup-List N f1ap.ies id-MulticastMRBs-FailedToBeSetup-List
+MulticastMRBs-FailedToBeSetup-Item N f1ap.ies id-MulticastMRBs-FailedToBeSetup-Item
+MulticastMRBs-FailedToBeSetupMod-List N f1ap.ies id-MulticastMRBs-FailedToBeSetupMod-List
+MulticastMRBs-FailedToBeSetupMod-Item N f1ap.ies id-MulticastMRBs-FailedToBeSetupMod-Item
+MulticastMRBs-Modified-List N f1ap.ies id-MulticastMRBs-Modified-List
+MulticastMRBs-Modified-Item N f1ap.ies id-MulticastMRBs-Modified-Item
+MulticastMRBs-Setup-List N f1ap.ies id-MulticastMRBs-Setup-List
+MulticastMRBs-Setup-Item N f1ap.ies id-MulticastMRBs-Setup-Item
+MulticastMRBs-SetupMod-List N f1ap.ies id-MulticastMRBs-SetupMod-List
+MulticastMRBs-SetupMod-Item N f1ap.ies id-MulticastMRBs-SetupMod-Item
+MulticastMRBs-ToBeModified-List N f1ap.ies id-MulticastMRBs-ToBeModified-List
+MulticastMRBs-ToBeModified-Item N f1ap.ies id-MulticastMRBs-ToBeModified-Item
+MulticastMRBs-ToBeReleased-List N f1ap.ies id-MulticastMRBs-ToBeReleased-List
+MulticastMRBs-ToBeReleased-Item N f1ap.ies id-MulticastMRBs-ToBeReleased-Item
+MulticastMRBs-ToBeSetup-List N f1ap.ies id-MulticastMRBs-ToBeSetup-List
+MulticastMRBs-ToBeSetup-Item N f1ap.ies id-MulticastMRBs-ToBeSetup-Item
+MulticastMRBs-ToBeSetupMod-List N f1ap.ies id-MulticastMRBs-ToBeSetupMod-List
+MulticastMRBs-ToBeSetupMod-Item N f1ap.ies id-MulticastMRBs-ToBeSetupMod-Item
+MBSMulticastF1UContextDescriptor N f1ap.ies id-MBSMulticastF1UContextDescriptor
+MulticastF1UContext-ToBeSetup-List N f1ap.ies id-MulticastF1UContext-ToBeSetup-List
+MulticastF1UContext-ToBeSetup-Item N f1ap.ies id-MulticastF1UContext-ToBeSetup-Item
+MulticastF1UContext-Setup-List N f1ap.ies id-MulticastF1UContext-Setup-List
+MulticastF1UContext-Setup-Item N f1ap.ies id-MulticastF1UContext-Setup-Item
+MulticastF1UContext-FailedToBeSetup-List N f1ap.ies id-MulticastF1UContext-FailedToBeSetup-List
+MulticastF1UContext-FailedToBeSetup-Item N f1ap.ies id-MulticastF1UContext-FailedToBeSetup-Item
+IABCongestionIndication N f1ap.ies id-IABCongestionIndication
+IABConditionalRRCMessageDeliveryIndication N f1ap.ies id-IABConditionalRRCMessageDeliveryIndication
+F1CTransferPathNRDC N f1ap.ies id-F1CTransferPathNRDC
+BufferSizeThresh N f1ap.ies id-BufferSizeThresh
+IAB-TNL-Addresses-Exception N f1ap.ies id-IAB-TNL-Addresses-Exception
+BAP-Header-Rewriting-Added-List N f1ap.ies id-BAP-Header-Rewriting-Added-List
+BAP-Header-Rewriting-Added-List-Item N f1ap.ies id-BAP-Header-Rewriting-Added-List-Item
+Re-routingEnableIndicator N f1ap.ies id-Re-routingEnableIndicator
+Neighbour-Node-Cells-List N f1ap.ies id-Neighbour-Node-Cells-List
+Serving-Cells-List N f1ap.ies id-Serving-Cells-List
+MDTPollutedMeasurementIndicator N f1ap.ies id-MDTPollutedMeasurementIndicator
+PDCMeasurementPeriodicity N f1ap.ies id-PDCMeasurementPeriodicity
+PDCMeasurementQuantities N f1ap.ies id-PDCMeasurementQuantities
+PDCMeasurementQuantities-Item N f1ap.ies id-PDCMeasurementQuantities-Item
+PDCMeasurementResult N f1ap.ies id-PDCMeasurementResult
+PDCReportType N f1ap.ies id-PDCReportType
+RAN-UE-PDC-MeasID N f1ap.ies id-RAN-UE-PDC-MeasID
+SCGActivationRequest N f1ap.ies id-SCGActivationRequest
+SCGActivationStatus N f1ap.ies id-SCGActivationStatus
+PRSTRPList N f1ap.ies id-PRSTRPList
+PRSTransmissionTRPList N f1ap.ies id-PRSTransmissionTRPList
+OnDemandPRS-Info N f1ap.ies id-OnDemandPRS
+TRP-MeasurementUpdateList N f1ap.ies id-TRP-MeasurementUpdateList
+ZoAInformation N f1ap.ies id-ZoAInformation
+ResponseTime N f1ap.ies id-ResponseTime
+MultipleULAoA N f1ap.ies id-MultipleULAoA
+UL-SRS-RSRPP N f1ap.ies id-UL-SRS-RSRPP
+ExtendedAdditionalPathList N f1ap.ies id-ExtendedAdditionalPathList
+TRPTxTEGAssociation N f1ap.ies id-TRPTxTEGAssociation
+TRP-Rx-TEGInformation N f1ap.ies id-TRPRx-TEGInformation
+TRP-PRS-Info-List N f1ap.ies id-TRP-PRS-Info-List
+PRS-Measurement-Info-List N f1ap.ies id-PRS-Measurement-Info-List
+PRSConfigRequestType N f1ap.ies id-PRSConfigRequestType
+MeasurementTimeOccasion N f1ap.ies id-MeasurementTimeOccasion
+MeasurementCharacteristicsRequestIndicator N f1ap.ies id-MeasurementCharacteristicsRequestIndicator
+UEReportingInformation N f1ap.ies id-UEReportingInformation
+PosConextRevIndication N f1ap.ies id-PosConextRevIndication
+TRPBeamAntennaInformation N f1ap.ies id-TRPBeamAntennaInformation
+NRRedCapUEIndication N f1ap.ies id-NRRedCapUEIndication
+PagingDRX N f1ap.ies id-RANUEPagingDRX
+PagingDRX N f1ap.ies id-CNUEPagingDRX
+NRPagingeDRXInformation N f1ap.ies id-NRPagingeDRXInformation
+NRPagingeDRXInformationforRRCINACTIVE N f1ap.ies id-NRPagingeDRXInformationforRRCINACTIVE
+NR-TADV N f1ap.ies id-NR-TADV
+QoEInformation N f1ap.ies id-QoEInformation
+CG-SDTQueryIndication N f1ap.ies id-CG-SDTQueryIndication
+CG-SDTKeptIndicator N f1ap.ies id-CG-SDTKeptIndicator
+CG-SDTSessionInfo N f1ap.ies id-CG-SDTSessionInfoOld
+SDTInformation N f1ap.ies id-SDTInformation
+FiveG-ProSeAuthorized N f1ap.ies id-FiveG-ProSeAuthorized
+NRUESidelinkAggregateMaximumBitrate N f1ap.ies id-FiveG-ProSeUEPC5AggregateMaximumBitrate
+BitRate N f1ap.ies id-FiveG-ProSePC5LinkAMBR
+UuRLCChannelToBeSetupList N f1ap.ies id-UuRLCChannelToBeSetupList
+UuRLCChannelToBeModifiedList N f1ap.ies id-UuRLCChannelToBeModifiedList
+UuRLCChannelToBeReleasedList N f1ap.ies id-UuRLCChannelToBeReleasedList
+UuRLCChannelSetupList N f1ap.ies id-UuRLCChannelSetupList
+UuRLCChannelFailedToBeSetupList N f1ap.ies id-UuRLCChannelFailedToBeSetupList
+UuRLCChannelModifiedList N f1ap.ies id-UuRLCChannelModifiedList
+UuRLCChannelFailedToBeModifiedList N f1ap.ies id-UuRLCChannelFailedToBeModifiedList
+UuRLCChannelRequiredToBeModifiedList N f1ap.ies id-UuRLCChannelRequiredToBeModifiedList
+UuRLCChannelRequiredToBeReleasedList N f1ap.ies id-UuRLCChannelRequiredToBeReleasedList
+PC5RLCChannelToBeSetupList N f1ap.ies id-PC5RLCChannelToBeSetupList
+PC5RLCChannelToBeModifiedList N f1ap.ies id-PC5RLCChannelToBeModifiedList
+PC5RLCChannelToBeReleasedList N f1ap.ies id-PC5RLCChannelToBeReleasedList
+PC5RLCChannelSetupList N f1ap.ies id-PC5RLCChannelSetupList
+PC5RLCChannelFailedToBeSetupList N f1ap.ies id-PC5RLCChannelFailedToBeSetupList
+PC5RLCChannelFailedToBeModifiedList N f1ap.ies id-PC5RLCChannelFailedToBeModifiedList
+PC5RLCChannelRequiredToBeModifiedList N f1ap.ies id-PC5RLCChannelRequiredToBeModifiedList
+PC5RLCChannelRequiredToBeReleasedList N f1ap.ies id-PC5RLCChannelRequiredToBeReleasedList
+PC5RLCChannelModifiedList N f1ap.ies id-PC5RLCChannelModifiedList
+SidelinkRelayConfiguration N f1ap.ies id-SidelinkRelayConfiguration
+RemoteUELocalID N f1ap.ies id-UpdatedRemoteUELocalID
+PathSwitchConfiguration N f1ap.ies id-PathSwitchConfiguration
+PagingCause N f1ap.ies id-PagingCause
+PEIPSAssistanceInfo N f1ap.ies id-PEIPSAssistanceInfo
+UEPagingCapability N f1ap.ies id-UEPagingCapability
+GNBDUUESliceMaximumBitRateList N f1ap.ies id-GNBDUUESliceMaximumBitRateList
+UE-MulticastMRBs-ToBeReleased-List N f1ap.ies id-UE-MulticastMRBs-ToBeReleased-List
+UE-MulticastMRBs-ToBeReleased-Item N f1ap.ies id-UE-MulticastMRBs-ToBeReleased-Item
+UE-MulticastMRBs-ToBeSetup-List N f1ap.ies id-UE-MulticastMRBs-ToBeSetup-List
+UE-MulticastMRBs-ToBeSetup-Item N f1ap.ies id-UE-MulticastMRBs-ToBeSetup-Item
+MulticastMBSSessionList N f1ap.ies id-MulticastMBSSessionSetupList
+MulticastMBSSessionList N f1ap.ies id-MulticastMBSSessionRemoveList
+PosMeasurementAmount N f1ap.ies id-PosMeasurementAmount
+SDT-Termination-Request N f1ap.ies id-SDT-Termination-Request
+BAP-Header-Rewriting-Removed-List N f1ap.ies id-BAP-Header-Rewriting-Removed-List
+BAP-Header-Rewriting-Removed-List-Item N f1ap.ies id-BAP-Header-Rewriting-Removed-List-Item
+SLDRXCycleList N f1ap.ies id-SLDRXCycleList
+BroadcastAreaScope N f1ap.ies id-BroadcastAreaScope
+MDTPLMNModificationList N f1ap.ies id-ManagementBasedMDTPLMNModificationList
+ActivationRequestType N f1ap.ies id-ActivationRequestType
+PosMeasGapPreConfigList N f1ap.ies id-PosMeasGapPreConfigList
+UE-MulticastMRBs-ConfirmedToBeModified-List N f1ap.ies id-UE-MulticastMRBs-ConfirmedToBeModified-List
+UE-MulticastMRBs-ConfirmedToBeModified-Item N f1ap.ies id-UE-MulticastMRBs-ConfirmedToBeModified-Item
+UE-MulticastMRBs-RequiredToBeModified-List N f1ap.ies id-UE-MulticastMRBs-RequiredToBeModified-List
+UE-MulticastMRBs-RequiredToBeModified-Item N f1ap.ies id-UE-MulticastMRBs-RequiredToBeModified-Item
+UE-MulticastMRBs-RequiredToBeReleased-List N f1ap.ies id-UE-MulticastMRBs-RequiredToBeReleased-List
+UE-MulticastMRBs-RequiredToBeReleased-Item N f1ap.ies id-UE-MulticastMRBs-RequiredToBeReleased-Item
+L571Info N f1ap.ies id-L571Info
+L1151Info N f1ap.ies id-L1151Info
+SCS-480 N f1ap.ies id-SCS-480
+SCS-960 N f1ap.ies id-SCS-960
+SRSPosRRCInactiveConfig N f1ap.ies id-SRSPosRRCInactiveConfig
+SDTBearerConfigurationQueryIndication N f1ap.ies id-SDTBearerConfigurationQueryIndication
+SDTBearerConfigurationInfo N f1ap.ies id-SDTBearerConfigurationInfo
+UE-MulticastMRBs-Setup-List N f1ap.ies id-UE-MulticastMRBs-Setup-List
+UE-MulticastMRBs-Setup-Item N f1ap.ies id-UE-MulticastMRBs-Setup-Item
+MulticastF1UContextReferenceCU N f1ap.ies id-MulticastF1UContextReferenceCU
+PosSItypeList N f1ap.ies id-PosSItypeList
+DAPS-HO-Status N f1ap.ies id-DAPS-HO-Status
+UplinkTxDirectCurrentTwoCarrierListInfo N f1ap.ies id-UplinkTxDirectCurrentTwoCarrierListInfo
+UE-MulticastMRBs-ToBeSetup-atModify-List N f1ap.ies id-UE-MulticastMRBs-ToBeSetup-atModify-List
+UE-MulticastMRBs-ToBeSetup-atModify-Item N f1ap.ies id-UE-MulticastMRBs-ToBeSetup-atModify-Item
+MC-PagingCell-list N f1ap.ies id-MC-PagingCell-List
+MC-PagingCell-Item N f1ap.ies id-MC-PagingCell-Item
+SRSPosRRCInactiveQueryIndication N f1ap.ies id-SRSPosRRCInactiveQueryIndication
+UlTxDirectCurrentMoreCarrierInformation N f1ap.ies id-UlTxDirectCurrentMoreCarrierInformation
+CPACMCGInformation N f1ap.ies id-CPACMCGInformation
+ExtendedUEIdentityIndexValue N f1ap.ies id-ExtendedUEIdentityIndexValue
+ServingCellMO-List N f1ap.ies id-ServingCellMO-List
+ServingCellMO-List-Item N f1ap.ies id-ServingCellMO-List-Item
+ServingCellMO-encoded-in-CGC-List N f1ap.ies id-ServingCellMO-encoded-in-CGC-List
+HashedUEIdentityIndexValue N f1ap.ies id-HashedUEIdentityIndexValue
+UE-MulticastMRBs-Setupnew-List N f1ap.ies id-UE-MulticastMRBs-Setupnew-List
+UE-MulticastMRBs-Setupnew-Item N f1ap.ies id-UE-MulticastMRBs-Setupnew-Item
+TransmissionCombn8 N f1ap.ies id-transmissionCombn8
+DedicatedSIDeliveryIndication N f1ap.ies id-DedicatedSIDeliveryIndication
+Configured-BWP-List N f1ap.ies id-Configured-BWP-List
#F1AP-PROTOCOL-EXTENSION
GNB-CUSystemInformation N f1ap.extension id-gNB-CUSystemInformation
@@ -958,7 +1445,6 @@ RequestedFeatureSetEntryIndex N f1ap.extension id-RequestedF
RequestedP-MaxFR2 N f1ap.extension id-RequestedP-MaxFR2
DRX-Config N f1ap.extension id-DRX-Config
UEAssistanceInformation N f1ap.extension id-UEAssistanceInformation
-NotificationInformation N f1ap.extension id-NotificationInformation
BPLMN-ID-Info-List N f1ap.extension id-BPLMN-ID-Info-List
CP-TransportLayerAddress N f1ap.extension id-TNLAssociationTransportLayerAddressgNBDU
PortNumber N f1ap.extension id-portNumber
@@ -1016,6 +1502,93 @@ SFN-Offset N f1ap.extension id-SFN-Offset
TransmissionStopIndicator N f1ap.extension id-TransmissionStopIndicator
SrsFrequency N f1ap.extension id-SrsFrequency
CHO-Probability N f1ap.extension id-EstimatedArrivalProbability
+SpatialRelationPerSRSResource N f1ap.extension id-SRSSpatialRelationPerSRSResource
+TransportLayerAddress N f1ap.extension id-PDCPTerminatingNodeDLTNLAddrInfo
+TransportLayerAddress N f1ap.extension id-ENBDLTNLAddress
+PRS-Resource-ID N f1ap.extension id-PRS-Resource-ID
+LocationMeasurementInformation N f1ap.extension id-LocationMeasurementInformation
+SliceRadioResourceStatus N f1ap.extension id-SliceRadioResourceStatus
+CompositeAvailableCapacity N f1ap.extension id-CompositeAvailableCapacity-SUL
+NR-U-Channel-List N f1ap.extension id-NR-U-Channel-List
+NR-U-Channel-Info-List N f1ap.extension id-NR-U
+Coverage-Modification-Notification N f1ap.extension id-Coverage-Modification-Notification
+CCO-Assistance-Information N f1ap.extension id-CCO-Assistance-Information
+MIMOPRBusageInformation N f1ap.extension id-MIMOPRBusageInformation
+MBS-Broadcast-NeighbourCellList N f1ap.extension id-MBS-Broadcast-NeighbourCellList
+Supported-MBS-FSA-ID-List N f1ap.extension id-Supported-MBS-FSA-ID-List
+NonF1terminatingTopologyIndicator N f1ap.extension id-NonF1terminatingTopologyIndicator
+EgressNonF1terminatingTopologyIndicator N f1ap.extension id-EgressNonF1terminatingTopologyIndicator
+IngressNonF1terminatingTopologyIndicator N f1ap.extension id-IngressNonF1terminatingTopologyIndicator
+RBSetConfiguration N f1ap.extension id-rBSetConfiguration
+Frequency-Domain-HSNA-Configuration-List N f1ap.extension id-frequency-Domain-HSNA-Configuration-List
+Child-IAB-Nodes-NA-Resource-List N f1ap.extension id-child-IAB-Nodes-NA-Resource-List
+Parent-IAB-Nodes-NA-Resource-Configuration-List N f1ap.extension id-Parent-IAB-Nodes-NA-Resource-Configuration-List
+NRFreqInfo N f1ap.extension id-uL-FreqInfo
+Transmission-Bandwidth N f1ap.extension id-uL-Transmission-Bandwidth
+NRFreqInfo N f1ap.extension id-dL-FreqInfo
+Transmission-Bandwidth N f1ap.extension id-dL-Transmission-Bandwidth
+NRCarrierList N f1ap.extension id-uL-NR-Carrier-List
+NRCarrierList N f1ap.extension id-dL-NR-Carrier-List
+NRFreqInfo N f1ap.extension id-nRFreqInfo
+Transmission-Bandwidth N f1ap.extension id-transmission-Bandwidth
+NRCarrierList N f1ap.extension id-nR-Carrier-List
+Permutation N f1ap.extension id-permutation
+M5ReportAmount N f1ap.extension id-M5ReportAmount
+M6ReportAmount N f1ap.extension id-M6ReportAmount
+M7ReportAmount N f1ap.extension id-M7ReportAmount
+SurvivalTime N f1ap.extension id-SurvivalTime
+AoA-AssistanceInfo N f1ap.extension id-AoA-SearchWindow
+ARPLocationInformation N f1ap.extension id-ARPLocationInfo
+ARP-ID N f1ap.extension id-ARP-ID
+MultipleULAoA N f1ap.extension id-MultipleULAoA
+SRSResourcetype N f1ap.extension id-SRSResourcetype
+ExtendedAdditionalPathList N f1ap.extension id-ExtendedAdditionalPathList
+LoS-NLoSInformation N f1ap.extension id-LoS-NLoSInformation
+NumberOfTRPRxTEG N f1ap.extension id-NumberOfTRPRxTEG
+NumberOfTRPRxTxTEG N f1ap.extension id-NumberOfTRPRxTxTEG
+TRPTEGInformation N f1ap.extension id-TRPTEGInformation
+Redcap-Bcast-Information N f1ap.extension id-Redcap-Bcast-Information
+SDT-MAC-PHY-CG-Config N f1ap.extension id-SDT-MAC-PHY-CG-Config
+CG-SDTindicatorSetup N f1ap.extension id-CG-SDTindicatorSetup
+CG-SDTindicatorMod N f1ap.extension id-CG-SDTindicatorMod
+SDTRLCBearerConfiguration N f1ap.extension id-SDTRLCBearerConfiguration
+UuRLCChannelID N f1ap.extension id-SRBMappingInfo
+UuRLCChannelID N f1ap.extension id-DRBMappingInfo
+MUSIM-GapConfig N f1ap.extension id-MUSIM-GapConfig
+LastUsedCellIndication N f1ap.extension id-LastUsedCellIndication
+SIB17-message N f1ap.extension id-SIB17-message
+SIB20-message N f1ap.extension id-SIB20-message
+UL-SRS-RSRPP N f1ap.extension id-pathPower
+DU-RX-MT-RX-Extend N f1ap.extension id-DU-RX-MT-RX-Extend
+DU-TX-MT-TX-Extend N f1ap.extension id-DU-TX-MT-TX-Extend
+DU-RX-MT-TX-Extend N f1ap.extension id-DU-RX-MT-TX-Extend
+DU-TX-MT-RX-Extend N f1ap.extension id-DU-TX-MT-RX-Extend
+NSAGSupportList N f1ap.extension id-TAINSAGSupportList
+SL-RLC-ChannelToAddModList N f1ap.extension id-SL-RLC-ChannelToAddModList
+SIB15-message N f1ap.extension id-SIB15-message
+InterFrequencyConfig-NoGap N f1ap.extension id-InterFrequencyConfig-NoGap
+MBSInterestIndication N f1ap.extension id-MBSInterestIndication
+SRSPortIndex N f1ap.extension id-SRSPortIndex
+PEISubgroupingSupportIndication N f1ap.extension id-PEISubgroupingSupportIndication
+NeedForGapsInfoNR N f1ap.extension id-NeedForGapsInfoNR
+NeedForGapNCSGInfoNR N f1ap.extension id-NeedForGapNCSGInfoNR
+NeedForGapNCSGInfoEUTRA N f1ap.extension id-NeedForGapNCSGInfoEUTRA
+MRB-ID N f1ap.extension id-Source-MRB-ID
+PosMeasurementPeriodicityNR-AoA N f1ap.extension id-PosMeasurementPeriodicityNR-AoA
+RedCapIndication N f1ap.extension id-RedCapIndication
+UL-GapFR2-Config N f1ap.extension id-UL-GapFR2-Config
+ConfigRestrictInfoDAPS N f1ap.extension id-ConfigRestrictInfoDAPS
+MulticastF1UContextReferenceCU N f1ap.extension id-MulticastF1UContextReferenceCU
+TwoPHRModeMCG N f1ap.extension id-TwoPHRModeMCG
+TwoPHRModeSCG N f1ap.extension id-TwoPHRModeSCG
+Ncd-SSB-RedCapInitialBWP-SDT N f1ap.extension id-ncd-SSB-RedCapInitialBWP-SDT
+NrofSymbolsExtended N f1ap.extension id-nrofSymbolsExtended
+RepetitionFactorExtended N f1ap.extension id-repetitionFactorExtended
+StartRBHopping N f1ap.extension id-startRBHopping
+StartRBIndex N f1ap.extension id-startRBIndex
+ServCellInfoList N f1ap.extension id-ServCellInfoList
+Preconfigured-measurement-GAP-Request N f1ap.extension id-Preconfigured-measurement-GAP-Request
+BWP-Id N f1ap.extension id-BWP-Id
#F1AP-ELEMENTARY-PROCEDURE
Reset N f1ap.proc.imsg id-Reset
@@ -1173,6 +1746,65 @@ E-CIDMeasurementTerminationCommand N f1ap.proc.imsg id-E-CIDMeasurementTer
PositioningInformationUpdate N f1ap.proc.imsg id-PositioningInformationUpdate
+BroadcastContextSetupRequest N f1ap.proc.imsg id-BroadcastContextSetup
+BroadcastContextSetupResponse N f1ap.proc.sout id-BroadcastContextSetup
+BroadcastContextSetupFailure N f1ap.proc.uout id-BroadcastContextSetup
+
+BroadcastContextReleaseCommand N f1ap.proc.imsg id-BroadcastContextRelease
+BroadcastContextReleaseComplete N f1ap.proc.sout id-BroadcastContextRelease
+
+BroadcastContextReleaseRequest N f1ap.proc.imsg id-BroadcastContextReleaseRequest
+
+BroadcastContextModificationRequest N f1ap.proc.imsg id-BroadcastContextModification
+BroadcastContextModificationResponse N f1ap.proc.sout id-BroadcastContextModification
+BroadcastContextModificationFailure N f1ap.proc.uout id-BroadcastContextModification
+
+MulticastGroupPaging N f1ap.proc.imsg id-MulticastGroupPaging
+
+MulticastContextSetupRequest N f1ap.proc.imsg id-MulticastContextSetup
+MulticastContextSetupResponse N f1ap.proc.sout id-MulticastContextSetup
+MulticastContextSetupFailure N f1ap.proc.uout id-MulticastContextSetup
+
+MulticastContextReleaseCommand N f1ap.proc.imsg id-MulticastContextRelease
+MulticastContextReleaseComplete N f1ap.proc.sout id-MulticastContextRelease
+
+MulticastContextReleaseRequest N f1ap.proc.imsg id-MulticastContextReleaseRequest
+
+MulticastContextModificationRequest N f1ap.proc.imsg id-MulticastContextModification
+MulticastContextModificationResponse N f1ap.proc.sout id-MulticastContextModification
+MulticastContextModificationFailure N f1ap.proc.uout id-MulticastContextModification
+
+MulticastDistributionSetupRequest N f1ap.proc.imsg id-MulticastDistributionSetup
+MulticastDistributionSetupResponse N f1ap.proc.sout id-MulticastDistributionSetup
+MulticastDistributionSetupFailure N f1ap.proc.uout id-MulticastDistributionSetup
+
+MulticastDistributionReleaseCommand N f1ap.proc.imsg id-MulticastDistributionRelease
+MulticastDistributionReleaseComplete N f1ap.proc.sout id-MulticastDistributionRelease
+
+PDCMeasurementInitiationRequest N f1ap.proc.imsg id-PDCMeasurementInitiation
+PDCMeasurementInitiationResponse N f1ap.proc.sout id-PDCMeasurementInitiation
+PDCMeasurementInitiationFailure N f1ap.proc.uout id-PDCMeasurementInitiation
+
+PDCMeasurementReport N f1ap.proc.imsg id-PDCMeasurementReport
+
+PDCMeasurementTerminationCommand N f1ap.proc.imsg id-PDCMeasurementTerminationCommand
+
+PDCMeasurementFailureIndication N f1ap.proc.imsg id-PDCMeasurementFailureIndication
+
+PRSConfigurationRequest N f1ap.proc.imsg id-pRSConfigurationExchange
+PRSConfigurationResponse N f1ap.proc.sout id-pRSConfigurationExchange
+PRSConfigurationFailure N f1ap.proc.uout id-pRSConfigurationExchange
+
+MeasurementPreconfigurationRequired N f1ap.proc.imsg id-measurementPreconfiguration
+MeasurementPreconfigurationConfirm N f1ap.proc.sout id-measurementPreconfiguration
+MeasurementPreconfigurationRefuse N f1ap.proc.uout id-measurementPreconfiguration
+
+MeasurementActivation N f1ap.proc.imsg id-measurementActivation
+
+QoEInformationTransfer N f1ap.proc.imsg id-QoEInformationTransfer
+
+PosSystemInformationDeliveryCommand N f1ap.proc.imsg id-PosSystemInformationDeliveryCommand
+
#.FN_BODY AdditionalSIBMessageList-Item/additionalSIB VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1304,6 +1936,27 @@ PositioningInformationUpdate N f1ap.proc.imsg id-PositioningInformat
break;
}
break;
+ case id_UEContextSetup:
+ case id_UEContextModification:
+ col_append_str(actx->pinfo->cinfo, COL_PROTOCOL, "/");
+ col_set_fence(actx->pinfo->cinfo, COL_PROTOCOL);
+ col_set_fence(actx->pinfo->cinfo, COL_INFO);
+ add_nr_pdcp_meta_data(actx->pinfo, PDCP_NR_DIRECTION_DOWNLINK, 1);
+ call_dissector(nr_pdcp_handle, param_tvb, actx->pinfo, subtree);
+ break;
+ default:
+ break;
+ }
+ break;
+ case SUCCESSFUL_OUTCOME:
+ switch (f1ap_data->procedure_code) {
+ case id_UEContextModificationRequired:
+ col_append_str(actx->pinfo->cinfo, COL_PROTOCOL, "/");
+ col_set_fence(actx->pinfo->cinfo, COL_PROTOCOL);
+ col_set_fence(actx->pinfo->cinfo, COL_INFO);
+ add_nr_pdcp_meta_data(actx->pinfo, PDCP_NR_DIRECTION_DOWNLINK, 1);
+ call_dissector(nr_pdcp_handle, param_tvb, actx->pinfo, subtree);
+ break;
default:
break;
}
@@ -1390,6 +2043,51 @@ PortNumber TYPE = FT_UINT16 DISPLAY = BASE_DEC
#.TYPE_ATTR
BitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_sec
+#.TYPE_ATTR
+BitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kbit
+
+#.TYPE_ATTR
+ChannelOccupancyTimePercentage DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+EnergyDetectionThreshold DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
+
+#.TYPE_ATTR
+MIMOPRBusageInformation/dl-GBR-PRB-usage-for-MIMO DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+MIMOPRBusageInformation/ul-GBR-PRB-usage-for-MIMO DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+MIMOPRBusageInformation/dl-non-GBR-PRB-usage-for-MIMO DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+MIMOPRBusageInformation/ul-non-GBR-PRB-usage-for-MIMO DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+MIMOPRBusageInformation/dl-Total-PRB-usage-for-MIMO DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+MIMOPRBusageInformation/ul-Total-PRB-usage-for-MIMO DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+SNSSAIRadioResourceStatus-Item/sNSSAIdlGBRPRBusage DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+SNSSAIRadioResourceStatus-Item/sNSSAIulGBRPRBusage DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+SNSSAIRadioResourceStatus-Item/sNSSAIdlNonGBRPRBusage DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+SNSSAIRadioResourceStatus-Item/sNSSAIulNonGBRPRBusage DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+SNSSAIRadioResourceStatus-Item/sNSSAIdlTotalPRBallocation DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.TYPE_ATTR
+SNSSAIRadioResourceStatus-Item/sNSSAIulTotalPRBallocation DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
#.FN_BODY CG-Config VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1538,6 +2236,27 @@ Configured-EPS-TAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
case 14:
dissect_nr_rrc_SIB14_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
break;
+ case 15:
+ dissect_nr_rrc_SIB15_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case 16:
+ dissect_nr_rrc_SIB16_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case 17:
+ dissect_nr_rrc_SIB17_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case 18:
+ dissect_nr_rrc_SIB18_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case 19:
+ dissect_nr_rrc_SIB19_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case 20:
+ dissect_nr_rrc_SIB20_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case 21:
+ dissect_nr_rrc_SIB21_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ break;
default:
break;
}
@@ -1596,6 +2315,14 @@ MaximumDataBurstVolume DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_byte_byt
dissect_nr_rrc_UplinkTxDirectCurrentList_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY UplinkTxDirectCurrentTwoCarrierListInfo VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_UplinkTxDirectCurrentTwoCarrierListInfo);
+ dissect_nr_rrc_UplinkTxDirectCurrentTwoCarrierList_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY Latest-RRC-Version-Enhanced VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1722,6 +2449,14 @@ Requested-PDCCH-BlindDetectionSCG TYPE=FT_UINT8 DISPLAY=BASE_DEC
dissect_nr_rrc_NZP_CSI_RS_Resource_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY Neighbour-Node-Cells-List-Item/cSI-RS-Configuration VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_cSI_RS_Configuration);
+ dissect_nr_rrc_NZP_CSI_RS_Resource_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY Child-Node-Cells-List-Item/sR-Configuration VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1730,6 +2465,14 @@ Requested-PDCCH-BlindDetectionSCG TYPE=FT_UINT8 DISPLAY=BASE_DEC
dissect_nr_rrc_SchedulingRequestResourceConfig_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY Neighbour-Node-Cells-List-Item/sR-Configuration VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_sR_Configuration);
+ dissect_nr_rrc_SchedulingRequestResourceConfig_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY Child-Node-Cells-List-Item/pDCCH-ConfigSIB1 VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1738,6 +2481,14 @@ Requested-PDCCH-BlindDetectionSCG TYPE=FT_UINT8 DISPLAY=BASE_DEC
dissect_nr_rrc_PDCCH_ConfigSIB1_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY Neighbour-Node-Cells-List-Item/pDCCH-ConfigSIB1 VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_pDCCH_ConfigSIB1);
+ dissect_nr_rrc_PDCCH_ConfigSIB1_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY Child-Node-Cells-List-Item/sCS-Common VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1746,6 +2497,14 @@ Requested-PDCCH-BlindDetectionSCG TYPE=FT_UINT8 DISPLAY=BASE_DEC
dissect_nr_rrc_subCarrierSpacingCommon_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY Neighbour-Node-Cells-List-Item/sCS-Common VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_sCS_Common);
+ dissect_nr_rrc_subCarrierSpacingCommon_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.TYPE_ATTR
ExtendedPacketDelayBudget DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(f1ap_ExtendedPacketDelayBudget_fmt)
@@ -1906,6 +2665,30 @@ Periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
dissect_nr_rrc_SIB14_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY SIB15-message VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SIB15_message);
+ dissect_nr_rrc_SIB15_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SIB17-message VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SIB17_message);
+ dissect_nr_rrc_SIB17_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SIB20-message VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SIB20_message);
+ dissect_nr_rrc_SIB20_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY SL-PHY-MAC-RLC-Config VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1914,6 +2697,14 @@ Periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
dissect_nr_rrc_SL_PHY_MAC_RLC_Config_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY SL-RLC-ChannelToAddModList VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SL_RLC_ChannelToAddModList);
+ dissect_nr_rrc_SL_RLC_ChannelToAddModList_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY SL-ConfigDedicatedEUTRA-Info VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
proto_tree *subtree;
@@ -1956,6 +2747,169 @@ Periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
dissect_nrppa_Assistance_Information_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY LocationMeasurementInformation VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_LocationMeasurementInformation);
+ dissect_nr_rrc_LocationMeasurementInfo_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MUSIM-GapConfig VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_MUSIM_GapConfig);
+ dissect_nr_rrc_MUSIM_GapConfig_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY Ncd-SSB-RedCapInitialBWP-SDT VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_Ncd_SSB_RedCapInitialBWP_SDT);
+ dissect_nr_rrc_NonCellDefiningSSB_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SDT-MAC-PHY-CG-Config VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SDT_MAC_PHY_CG_Config);
+ dissect_nr_rrc_SDT_MAC_PHY_CG_Config_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SDTRLCBearerConfiguration VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SDTRLCBearerConfiguration);
+ dissect_nr_rrc_RLC_BearerConfig_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MBSInterestIndication VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_MBSInterestIndication);
+ dissect_nr_rrc_MBSInterestIndication_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY NeedForGapsInfoNR VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_NeedForGapsInfoNR);
+ dissect_nr_rrc_NeedForGapsInfoNR_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY NeedForGapNCSGInfoNR VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_NeedForGapNCSGInfoNR);
+ dissect_nr_rrc_NeedForGapNCSG_InfoNR_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY NeedForGapNCSGInfoEUTRA VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_NeedForGapNCSGInfoEUTRA);
+ dissect_nr_rrc_NeedForGapNCSG_InfoEUTRA_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY ConfigRestrictInfoDAPS VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_ConfigRestrictInfoDAPS);
+ dissect_nr_rrc_ConfigRestrictInfoDAPS_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MBS-Broadcast-NeighbourCellList VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_MBS_Broadcast_NeighbourCellList);
+ dissect_nr_rrc_MBS_NeighbourCellList_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MBS-Broadcast-MRB-Item/mRB-PDCP-Config-Broadcast VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_mRB_PDCP_Config_Broadcast);
+ dissect_nr_rrc_MRB_PDCP_ConfigBroadcast_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY PosMeasGapPreConfigList/posMeasGapPreConfigToAddModList VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_posMeasGapPreConfigToAddModList);
+ dissect_nr_rrc_PosMeasGapPreConfigToAddModList_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY PosMeasGapPreConfigList/posMeasGapPreConfigToReleaseList VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_posMeasGapPreConfigToReleaseList);
+ dissect_nr_rrc_PosMeasGapPreConfigToReleaseList_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SidelinkConfigurationContainer VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SidelinkConfigurationContainer);
+ dissect_nr_rrc_SL_ConfigDedicatedNR_r16_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SRSPosRRCInactiveConfig VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_SRSPosRRCInactiveConfig);
+ dissect_nr_rrc_SRS_PosRRC_InactiveConfig_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.TYPE_ATTR
+StartTimeAndDuration/duration DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.FN_BODY SuccessfulHOReportInformation-Item/successfulHOReportContainer VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_successfulHOReportContainer);
+ dissect_nr_rrc_SuccessHO_Report_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.TYPE_ATTR
+SurvivalTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
+
+#.FN_BODY UL-GapFR2-Config VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_f1ap_UL_GapFR2_Config);
+ dissect_nr_rrc_UL_GapFR2_Config_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY RelativeTime1900 VAL_PTR = &param_tvb HF_INDEX = -1
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, param_tvb, 0, 8, ENC_TIME_NTP|ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY GNB-CU-UE-F1AP-ID VAL_PTR=&id
+ guint32 id;
+%(DEFAULT_BODY)s
+ f1ap_private_data_t *f1ap_data = f1ap_get_private_data(actx->pinfo);
+ f1ap_data->gdb_cu_ue_f1ap_id = id;
+
#.FN_HDR Reset
set_message_label(actx, MTYPE_RESET);
set_stats_message_type(actx->pinfo, MTYPE_RESET);
@@ -2302,6 +3256,161 @@ Periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
set_message_label(actx, MTYPE_POSITIONING_INFORMATION_UPDATE);
set_stats_message_type(actx->pinfo, MTYPE_POSITIONING_INFORMATION_UPDATE);
#.END
+#.FN_HDR BroadcastContextSetupRequest
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_SETUP_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_SETUP_REQUEST);
+#.END
+#.FN_HDR BroadcastContextSetupResponse
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_SETUP_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_SETUP_RESPONSE);
+#.END
+#.FN_HDR BroadcastContextSetupFailure
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_SETUP_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_SETUP_FAILURE);
+#.END
+#.FN_HDR BroadcastContextReleaseCommand
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_RELEASE_COMMAND);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_RELEASE_COMMAND);
+#.END
+#.FN_HDR BroadcastContextReleaseComplete
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_RELEASE_COMPLETE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_RELEASE_COMPLETE);
+#.END
+#.FN_HDR BroadcastContextReleaseRequest
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_RELEASE_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_RELEASE_REQUEST);
+#.END
+#.FN_HDR BroadcastContextModificationRequest
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_MODIFICATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_MODIFICATION_REQUEST);
+#.END
+#.FN_HDR BroadcastContextModificationResponse
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_MODIFICATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_MODIFICATION_RESPONSE);
+#.END
+#.FN_HDR BroadcastContextModificationFailure
+ set_message_label(actx, MTYPE_BROADCAST_CONTEXT_MODIFICATION_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_CONTEXT_MODIFICATION_FAILURE);
+#.END
+#.FN_HDR MulticastGroupPaging
+ set_message_label(actx, MTYPE_MULTICAST_GROUP_PAGING);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_GROUP_PAGING);
+#.END
+#.FN_HDR MulticastContextSetupRequest
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_SETUP_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_SETUP_REQUEST);
+#.END
+#.FN_HDR MulticastContextSetupResponse
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_SETUP_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_SETUP_RESPONSE);
+#.END
+#.FN_HDR MulticastContextSetupFailure
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_SETUP_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_SETUP_FAILURE);
+#.END
+#.FN_HDR MulticastContextReleaseCommand
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_RELEASE_COMMAND);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_RELEASE_COMMAND);
+#.END
+#.FN_HDR MulticastContextReleaseComplete
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_RELEASE_COMPLETE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_RELEASE_COMPLETE);
+#.END
+#.FN_HDR MulticastContextReleaseRequest
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_RELEASE_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_RELEASE_REQUEST);
+#.END
+#.FN_HDR MulticastContextModificationRequest
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_MODIFICATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_MODIFICATION_REQUEST);
+#.END
+#.FN_HDR MulticastContextModificationResponse
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_MODIFICATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_MODIFICATION_RESPONSE);
+#.END
+#.FN_HDR MulticastContextModificationFailure
+ set_message_label(actx, MTYPE_MULTICAST_CONTEXT_MODIFICATION_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_CONTEXT_MODIFICATION_FAILURE);
+#.END
+#.FN_HDR MulticastDistributionSetupRequest
+ set_message_label(actx, MTYPE_MULTICAST_DISTRIBUTION_SETUP_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_DISTRIBUTION_SETUP_REQUEST);
+#.END
+#.FN_HDR MulticastDistributionSetupResponse
+ set_message_label(actx, MTYPE_MULTICAST_DISTRIBUTION_SETUP_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_DISTRIBUTION_SETUP_RESPONSE);
+#.END
+#.FN_HDR MulticastDistributionSetupFailure
+ set_message_label(actx, MTYPE_MULTICAST_DISTRIBUTION_SETUP_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_DISTRIBUTION_SETUP_FAILURE);
+#.END
+#.FN_HDR MulticastDistributionReleaseCommand
+ set_message_label(actx, MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMMAND);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMMAND);
+#.END
+#.FN_HDR MulticastDistributionReleaseComplete
+ set_message_label(actx, MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMPLETE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMPLETE);
+#.END
+#.FN_HDR PDCMeasurementInitiationRequest
+ set_message_label(actx, MTYPE_PDCP_MEASUREMENT_INITIATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_PDCP_MEASUREMENT_INITIATION_REQUEST);
+#.END
+#.FN_HDR PDCMeasurementInitiationResponse
+ set_message_label(actx, MTYPE_PDCP_MEASUREMENT_INITIATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_PDCP_MEASUREMENT_INITIATION_RESPONSE);
+#.END
+#.FN_HDR PDCMeasurementInitiationFailure
+ set_message_label(actx, MTYPE_PDCP_MEASUREMENT_INITIATION_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_PDCP_MEASUREMENT_INITIATION_FAILURE);
+#.END
+#.FN_HDR PDCMeasurementReport
+ set_message_label(actx, MTYPE_PDCP_MEASUREMENT_REPORT);
+ set_stats_message_type(actx->pinfo, MTYPE_PDCP_MEASUREMENT_REPORT);
+#.END
+#.FN_HDR PDCMeasurementTerminationCommand
+ set_message_label(actx, MTYPE_PDCP_MEASUREMENT_TERMINATION_COMMAND);
+ set_stats_message_type(actx->pinfo, MTYPE_PDCP_MEASUREMENT_TERMINATION_COMMAND);
+#.END
+#.FN_HDR PDCMeasurementFailureIndication
+ set_message_label(actx, MTYPE_PDCP_MEASUREMENT_FAILURE_INDICATION);
+ set_stats_message_type(actx->pinfo, MTYPE_PDCP_MEASUREMENT_FAILURE_INDICATION);
+#.END
+#.FN_HDR PRSConfigurationRequest
+ set_message_label(actx, MTYPE_PRS_CONFIGURATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_PRS_CONFIGURATION_REQUEST);
+#.END
+#.FN_HDR PRSConfigurationResponse
+ set_message_label(actx, MTYPE_PRS_CONFIGURATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_PRS_CONFIGURATION_RESPONSE);
+#.END
+#.FN_HDR PRSConfigurationFailure
+ set_message_label(actx, MTYPE_PRS_CONFIGURATION_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_PRS_CONFIGURATION_FAILURE);
+#.END
+#.FN_HDR MeasurementPreconfigurationRequired
+ set_message_label(actx, MTYPE_MEASUREMENT_PRECONFIGURATION_REQUIRED);
+ set_stats_message_type(actx->pinfo, MTYPE_MEASUREMENT_PRECONFIGURATION_REQUIRED);
+#.END
+#.FN_HDR MeasurementPreconfigurationConfirm
+ set_message_label(actx, MTYPE_MEASUREMENT_PRECONFIGURATION_CONFIRM);
+ set_stats_message_type(actx->pinfo, MTYPE_MEASUREMENT_PRECONFIGURATION_CONFIRM);
+#.END
+#.FN_HDR MeasurementPreconfigurationRefuse
+ set_message_label(actx, MTYPE_MEASUREMENT_PRECONFIGURATION_REFUSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MEASUREMENT_PRECONFIGURATION_REFUSE);
+#.END
+#.FN_HDR MeasurementActivation
+ set_message_label(actx, MTYPE_MEASUREMENT_ACTIVATION);
+ set_stats_message_type(actx->pinfo, MTYPE_MEASUREMENT_ACTIVATION);
+#.END
+#.FN_HDR QoEInformationTransfer
+ set_message_label(actx, MTYPE_QOE_INFORMATION_TRANSFER);
+ set_stats_message_type(actx->pinfo, MTYPE_QOE_INFORMATION_TRANSFER);
+#.FN_HDR PosSystemInformationDeliveryCommand
+ set_message_label(actx, MTYPE_POS_SYSTEM_INFORMATION_DELIVERY_COMMAND);
+ set_stats_message_type(actx->pinfo, MTYPE_POS_SYSTEM_INFORMATION_DELIVERY_COMMAND);
+#.END
#
# Editor modelines - https://www.wireshark.org/tools/modelines.html
diff --git a/epan/dissectors/asn1/f1ap/packet-f1ap-template.c b/epan/dissectors/asn1/f1ap/packet-f1ap-template.c
index e3adf59638..b5ad42cb70 100644
--- a/epan/dissectors/asn1/f1ap/packet-f1ap-template.c
+++ b/epan/dissectors/asn1/f1ap/packet-f1ap-template.c
@@ -1,6 +1,6 @@
/* packet-f1ap.c
* Routines for E-UTRAN F1 Application Protocol (F1AP) packet dissection
- * Copyright 2018-2021, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2018-2024, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -8,7 +8,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * References: 3GPP TS 38.473 V16.7.0 (2021-10)
+ * References: 3GPP TS 38.473 V17.7.0 (2023-12)
*/
#include "config.h"
@@ -41,91 +41,114 @@ void proto_reg_handoff_f1ap(void);
#include "packet-f1ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_f1ap = -1;
-
-static int hf_f1ap_transportLayerAddressIPv4 = -1;
-static int hf_f1ap_transportLayerAddressIPv6 = -1;
-static int hf_f1ap_IABTNLAddressIPv4 = -1;
-static int hf_f1ap_IABTNLAddressIPv6 = -1;
-static int hf_f1ap_IABTNLAddressIPv6Prefix = -1;
-static int hf_f1ap_interfacesToTrace_NG_C = -1;
-static int hf_f1ap_interfacesToTrace_Xn_C = -1;
-static int hf_f1ap_interfacesToTrace_Uu = -1;
-static int hf_f1ap_interfacesToTrace_F1_C = -1;
-static int hf_f1ap_interfacesToTrace_E1 = -1;
-static int hf_f1ap_interfacesToTrace_Reserved = -1;
-static int hf_f1ap_MeasurementsToActivate_Reserved1 = -1;
-static int hf_f1ap_MeasurementsToActivate_M2 = -1;
-static int hf_f1ap_MeasurementsToActivate_Reserved2 = -1;
-static int hf_f1ap_MeasurementsToActivate_M5 = -1;
-static int hf_f1ap_MeasurementsToActivate_Reserved3 = -1;
-static int hf_f1ap_MeasurementsToActivate_M6 = -1;
-static int hf_f1ap_MeasurementsToActivate_M7 = -1;
-static int hf_f1ap_ReportCharacteristics_PRBPeriodic = -1;
-static int hf_f1ap_ReportCharacteristics_TNLCapacityIndPeriodic = -1;
-static int hf_f1ap_ReportCharacteristics_CompositeAvailableCapacityPeriodic = -1;
-static int hf_f1ap_ReportCharacteristics_HWLoadIndPeriodic = -1;
-static int hf_f1ap_ReportCharacteristics_NumberOfActiveUEs = -1;
-static int hf_f1ap_ReportCharacteristics_Reserved = -1;
+static int proto_f1ap;
+
+static int hf_f1ap_transportLayerAddressIPv4;
+static int hf_f1ap_transportLayerAddressIPv6;
+static int hf_f1ap_IABTNLAddressIPv4;
+static int hf_f1ap_IABTNLAddressIPv6;
+static int hf_f1ap_IABTNLAddressIPv6Prefix;
+static int hf_f1ap_interfacesToTrace_NG_C;
+static int hf_f1ap_interfacesToTrace_Xn_C;
+static int hf_f1ap_interfacesToTrace_Uu;
+static int hf_f1ap_interfacesToTrace_F1_C;
+static int hf_f1ap_interfacesToTrace_E1;
+static int hf_f1ap_interfacesToTrace_Reserved;
+static int hf_f1ap_MeasurementsToActivate_Reserved1;
+static int hf_f1ap_MeasurementsToActivate_M2;
+static int hf_f1ap_MeasurementsToActivate_Reserved2;
+static int hf_f1ap_MeasurementsToActivate_M5;
+static int hf_f1ap_MeasurementsToActivate_Reserved3;
+static int hf_f1ap_MeasurementsToActivate_M6;
+static int hf_f1ap_MeasurementsToActivate_M7;
+static int hf_f1ap_ReportCharacteristics_PRBPeriodic;
+static int hf_f1ap_ReportCharacteristics_TNLCapacityIndPeriodic;
+static int hf_f1ap_ReportCharacteristics_CompositeAvailableCapacityPeriodic;
+static int hf_f1ap_ReportCharacteristics_HWLoadIndPeriodic;
+static int hf_f1ap_ReportCharacteristics_NumberOfActiveUEs;
+static int hf_f1ap_ReportCharacteristics_Reserved;
#include "packet-f1ap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_f1ap = -1;
-static gint ett_f1ap_ResourceCoordinationTransferContainer = -1;
-static gint ett_f1ap_PLMN_Identity = -1;
-static gint ett_f1ap_MIB_message = -1;
-static gint ett_f1ap_SIB1_message = -1;
-static gint ett_f1ap_CG_ConfigInfo = -1;
-static gint ett_f1ap_CellGroupConfig = -1;
-static gint ett_f1ap_TransportLayerAddress = -1;
-static gint ett_f1ap_UE_CapabilityRAT_ContainerList = -1;
-static gint ett_f1ap_measurementTimingConfiguration = -1;
-static gint ett_f1ap_DUtoCURRCContainer = -1;
-static gint ett_f1ap_requestedP_MaxFR1 = -1;
-static gint ett_f1ap_HandoverPreparationInformation = -1;
-static gint ett_f1ap_MeasConfig = -1;
-static gint ett_f1ap_MeasGapConfig = -1;
-static gint ett_f1ap_MeasGapSharingConfig = -1;
-static gint ett_f1ap_EUTRA_NR_CellResourceCoordinationReq_Container = -1;
-static gint ett_f1ap_EUTRA_NR_CellResourceCoordinationReqAck_Container = -1;
-static gint ett_f1ap_ProtectedEUTRAResourceIndication = -1;
-static gint ett_f1ap_RRCContainer = -1;
-static gint ett_f1ap_RRCContainer_RRCSetupComplete = -1;
-static gint ett_f1ap_sIBmessage = -1;
-static gint ett_f1ap_UplinkTxDirectCurrentListInformation = -1;
-static gint ett_f1ap_DRX_Config = -1;
-static gint ett_f1ap_Ph_InfoSCG = -1;
-static gint ett_f1ap_RequestedBandCombinationIndex = -1;
-static gint ett_f1ap_RequestedFeatureSetEntryIndex = -1;
-static gint ett_f1ap_RequestedP_MaxFR2 = -1;
-static gint ett_f1ap_UEAssistanceInformation = -1;
-static gint ett_f1ap_CG_Config = -1;
-static gint ett_f1ap_Ph_InfoMCG = -1;
-static gint ett_f1ap_BurstArrivalTime = -1;
-static gint ett_f1ap_cSI_RS_Configuration = -1;
-static gint ett_f1ap_sR_Configuration = -1;
-static gint ett_f1ap_pDCCH_ConfigSIB1 = -1;
-static gint ett_f1ap_sCS_Common = -1;
-static gint ett_f1ap_IABTNLAddressIPv4Address = -1;
-static gint ett_f1ap_IABTNLAddressIPv6Address = -1;
-static gint ett_f1ap_IABTNLAddressIPv6Prefix = -1;
-static gint ett_f1ap_InterfacesToTrace = -1;
-static gint ett_f1ap_MeasurementsToActivate = -1;
-static gint ett_f1ap_NRUERLFReportContainer = -1;
-static gint ett_f1ap_RACH_Config_Common = -1;
-static gint ett_f1ap_RACH_Config_Common_IAB = -1;
-static gint ett_f1ap_RACHReportContainer = -1;
-static gint ett_f1ap_ReferenceTime = -1;
-static gint ett_f1ap_ReportCharacteristics = -1;
-static gint ett_f1ap_SIB10_message = -1;
-static gint ett_f1ap_SIB12_message = -1;
-static gint ett_f1ap_SIB13_message = -1;
-static gint ett_f1ap_SIB14_message = -1;
-static gint ett_f1ap_SL_PHY_MAC_RLC_Config = -1;
-static gint ett_f1ap_SL_ConfigDedicatedEUTRA_Info = -1;
-static gint ett_f1ap_TDD_UL_DLConfigCommonNR = -1;
-static gint ett_f1ap_UEAssistanceInformationEUTRA = -1;
-static gint ett_f1ap_PosAssistance_Information = -1;
+static gint ett_f1ap;
+static gint ett_f1ap_ResourceCoordinationTransferContainer;
+static gint ett_f1ap_PLMN_Identity;
+static gint ett_f1ap_MIB_message;
+static gint ett_f1ap_SIB1_message;
+static gint ett_f1ap_CG_ConfigInfo;
+static gint ett_f1ap_CellGroupConfig;
+static gint ett_f1ap_TransportLayerAddress;
+static gint ett_f1ap_UE_CapabilityRAT_ContainerList;
+static gint ett_f1ap_measurementTimingConfiguration;
+static gint ett_f1ap_DUtoCURRCContainer;
+static gint ett_f1ap_requestedP_MaxFR1;
+static gint ett_f1ap_HandoverPreparationInformation;
+static gint ett_f1ap_MeasConfig;
+static gint ett_f1ap_MeasGapConfig;
+static gint ett_f1ap_MeasGapSharingConfig;
+static gint ett_f1ap_EUTRA_NR_CellResourceCoordinationReq_Container;
+static gint ett_f1ap_EUTRA_NR_CellResourceCoordinationReqAck_Container;
+static gint ett_f1ap_ProtectedEUTRAResourceIndication;
+static gint ett_f1ap_RRCContainer;
+static gint ett_f1ap_RRCContainer_RRCSetupComplete;
+static gint ett_f1ap_sIBmessage;
+static gint ett_f1ap_UplinkTxDirectCurrentListInformation;
+static gint ett_f1ap_DRX_Config;
+static gint ett_f1ap_Ph_InfoSCG;
+static gint ett_f1ap_RequestedBandCombinationIndex;
+static gint ett_f1ap_RequestedFeatureSetEntryIndex;
+static gint ett_f1ap_RequestedP_MaxFR2;
+static gint ett_f1ap_UEAssistanceInformation;
+static gint ett_f1ap_CG_Config;
+static gint ett_f1ap_Ph_InfoMCG;
+static gint ett_f1ap_BurstArrivalTime;
+static gint ett_f1ap_cSI_RS_Configuration;
+static gint ett_f1ap_sR_Configuration;
+static gint ett_f1ap_pDCCH_ConfigSIB1;
+static gint ett_f1ap_sCS_Common;
+static gint ett_f1ap_IABTNLAddressIPv4Address;
+static gint ett_f1ap_IABTNLAddressIPv6Address;
+static gint ett_f1ap_IABTNLAddressIPv6Prefix;
+static gint ett_f1ap_InterfacesToTrace;
+static gint ett_f1ap_MeasurementsToActivate;
+static gint ett_f1ap_NRUERLFReportContainer;
+static gint ett_f1ap_RACH_Config_Common;
+static gint ett_f1ap_RACH_Config_Common_IAB;
+static gint ett_f1ap_RACHReportContainer;
+static gint ett_f1ap_ReferenceTime;
+static gint ett_f1ap_ReportCharacteristics;
+static gint ett_f1ap_SIB10_message;
+static gint ett_f1ap_SIB12_message;
+static gint ett_f1ap_SIB13_message;
+static gint ett_f1ap_SIB14_message;
+static gint ett_f1ap_SIB15_message;
+static gint ett_f1ap_SIB17_message;
+static gint ett_f1ap_SIB20_message;
+static gint ett_f1ap_SL_PHY_MAC_RLC_Config;
+static gint ett_f1ap_SL_RLC_ChannelToAddModList;
+static gint ett_f1ap_SL_ConfigDedicatedEUTRA_Info;
+static gint ett_f1ap_TDD_UL_DLConfigCommonNR;
+static gint ett_f1ap_UEAssistanceInformationEUTRA;
+static gint ett_f1ap_PosAssistance_Information;
+static gint ett_f1ap_LocationMeasurementInformation;
+static gint ett_f1ap_MUSIM_GapConfig;
+static gint ett_f1ap_SDT_MAC_PHY_CG_Config;
+static gint ett_f1ap_SDTRLCBearerConfiguration;
+static gint ett_f1ap_MBSInterestIndication;
+static gint ett_f1ap_NeedForGapsInfoNR;
+static gint ett_f1ap_NeedForGapNCSGInfoNR;
+static gint ett_f1ap_NeedForGapNCSGInfoEUTRA;
+static gint ett_f1ap_MBS_Broadcast_NeighbourCellList;
+static gint ett_f1ap_mRB_PDCP_Config_Broadcast;
+static gint ett_f1ap_posMeasGapPreConfigToAddModList;
+static gint ett_f1ap_posMeasGapPreConfigToReleaseList;
+static gint ett_f1ap_SidelinkConfigurationContainer;
+static gint ett_f1ap_SRSPosRRCInactiveConfig;
+static gint ett_f1ap_successfulHOReportContainer;
+static gint ett_f1ap_UL_GapFR2_Config;
+static gint ett_f1ap_ConfigRestrictInfoDAPS;
+static gint ett_f1ap_UplinkTxDirectCurrentTwoCarrierListInfo;
+static gint ett_f1ap_Ncd_SSB_RedCapInitialBWP_SDT;
#include "packet-f1ap-ett.c"
enum{
@@ -143,113 +166,149 @@ static const guint8 *st_str_packet_types = "F1AP Packet Types";
static int st_node_packets = -1;
static int st_node_packet_types = -1;
-static int f1ap_tap = -1;
+static int f1ap_tap;
struct f1ap_tap_t {
gint f1ap_mtype;
};
-#define MTYPE_RESET 1
-#define MTYPE_RESET_ACK 2
-#define MTYPE_F1_SETUP_REQUEST 3
-#define MTYPE_F1_SETUP_RESPONSE 4
-#define MTYPE_F1_SETUP_FAILURE 5
-#define MTYPE_GNB_DU_CONFIGURATION_UPDATE 6
-#define MTYPE_GNB_DU_CONFIGURATION_UPDATE_ACKNOWLEDGE 7
-#define MTYPE_GNB_DU_CONFIGURATION_UPDATE_FAILURE 8
-#define MTYPE_GNB_CU_CONFIGURATION_UPDATE 9
-#define MTYPE_GNB_CU_CONFIGURATION_UPDATE_ACKNOWLEDGE 10
-#define MTYPE_GNB_CU_CONFIGURATION_UPDATE_FAILURE 11
-#define MTYPE_UE_CONTEXT_SETUP_REQUEST 12
-#define MTYPE_UE_CONTEXT_SETUP_RESPONSE 13
-#define MTYPE_UE_CONTEXT_SETUP_FAILURE 14
-#define MTYPE_UE_CONTEXT_RELEASE_COMMAND 15
-#define MTYPE_UE_CONTEXT_RELEASE_COMPLETE 16
-#define MTYPE_UE_CONTEXT_MODIFICATION_REQUEST 17
-#define MTYPE_UE_CONTEXT_MODIFICATION_RESPONSE 18
-#define MTYPE_UE_CONTEXT_MODIFICATION_FAILURE 19
-#define MTYPE_UE_CONTEXT_MODIFICATION_REQUIRED 20
-#define MTYPE_UE_CONTEXT_MODIFICATION_CONFIRM 21
-#define MTYPE_UE_CONTEXT_MODIFICATION_REFUSE 22
-#define MTYPE_WRITE_REPLACE_WARNING_REQUEST 23
-#define MTYPE_WRITE_REPLACE_WARNING_RESPONSE 24
-#define MTYPE_PWS_CANCEL_REQUEST 25
-#define MTYPE_PWS_CANCEL_RESPONSE 25
-#define MTYPE_ERROR_INDICATION 26
-#define MTYPE_UE_CONTEXT_RELEASE_REQUEST 27
-#define MTYPE_INITIAL_UL_RRC_MESSAGE_TRANSFER 28
-#define MTYPE_DL_RRC_MESSAGE_TRANSFER 29
-#define MTYPE_UL_RRC_MESSAGE_TRANSFER 30
-#define MTYPE_UE_INACTIVITY_NOTIFICATION 31
-#define MTYPE_GNB_DU_RESOURCE_COORDINATION_REQUEST 32
-#define MTYPE_GNB_DU_RESOURCE_COORDINATION_RESPONSE 33
-#define MTYPE_PRIVATE_MESSAGE 34
-#define MTYPE_SYSTEM_INFORMATION_DELIVERY_COMMAND 35
-#define MTYPE_PAGING 36
-#define MTYPE_NOTIFY 37
-#define MTYPE_NETWORK_ACCESS_RATE_REDUCTION 38
-#define MTYPE_PWS_RESTART_INDICATION 39
-#define MTYPE_PWS_FAILURE_INDICATION 40
-#define MTYPE_GNB_DU_STATUS_INDICATION 41
-#define MTYPE_RRC_DELIVERY_REPORT 42
-#define MTYPE_F1_REMOVAL_REQUEST 43
-#define MTYPE_F1_REMOVAL_RESPONSE 44
-#define MTYPE_F1_REMOVAL_FAILURE 45
-#define MTYPE_TRACE_START 46
-#define MTYPE_DEACTIVATE_TRACE 47
-#define MTYPE_DU_CU_RADIO_INFORMATION_TRANSFER 48
-#define MTYPE_CU_DU_RADIO_INFORMATION_TRANSFER 49
-#define MTYPE_BAP_MAPPING_CONFIGURATION 50
-#define MTYPE_BAP_MAPPING_CONFIGURATION_ACKNOWLEDGE 51
-#define MTYPE_BAP_MAPPING_CONFIGURATION_FAILURE 52
-#define MTYPE_GNB_DU_RESOURCE_CONFIGURATION 53
-#define MTYPE_GNB_DU_RESOURCE_CONFIGURATION_ACKNOWLEDGE 54
-#define MTYPE_GNB_DU_RESOURCE_CONFIGURATION_FAILURE 55
-#define MTYPE_IAB_TNL_ADDRESS_REQUEST 56
-#define MTYPE_IAB_TNL_ADDRESS_RESPONSE 57
-#define MTYPE_IAB_TNL_ADDRESS_FAILURE 58
-#define MTYPE_IAB_UP_CONFIGURATION_UPDATE_REQUEST 59
-#define MTYPE_IAB_UP_CONFIGURATION_UPDATE_RESPONSE 60
-#define MTYPE_IAB_UP_CONFIGURATION_UPDATE_FAILURE 61
-#define MTYPE_RESOURCE_STATUS_REQUEST 62
-#define MTYPE_RESOURCE_STATUS_RESPONSE 63
-#define MTYPE_RESOURCE_STATUS_FAILURE 64
-#define MTYPE_RESOURCE_STATUS_UPDATE 65
-#define MTYPE_ACCESS_AND_MOBILITY_INDICATION 66
-#define MTYPE_REFERENCE_TIME_INFORMATION_REPORTING_CONTROL 67
-#define MTYPE_REFERENCE_TIME_INFORMATION_REPORT 68
-#define MTYPE_ACCESS_SUCCESS 69
-#define MTYPE_CELL_TRAFFIC_TRACE 70
-#define MTYPE_POSITIONING_ASSISTANCE_INFORMATION_CONTROL 71
-#define MTYPE_POSITIONING_ASSISTANCE_INFORMATION_FEEDBACK 72
-#define MTYPE_POSITIONING_MEASUREMENT_REQUEST 73
-#define MTYPE_POSITIONING_MEASUREMENT_RESPONSE 74
-#define MTYPE_POSITIONING_MEASUREMENT_FAILURE 75
-#define MTYPE_POSITIONING_MEASUREMENT_REPORT 76
-#define MTYPE_POSITIONING_MEASUREMENT_ABORT 77
-#define MTYPE_POSITIONING_MEASUREMENT_FAILURE_INDICATION 78
-#define MTYPE_POSITIONING_MEASUREMENT_UPDATE 79
-#define MTYPE_TRP_INFORMATION_REQUEST 80
-#define MTYPE_TRP_INFORMATION_RESPONSE 81
-#define MTYPE_TRP_INFORMATION_FAILURE 82
-#define MTYPE_POSITIONING_INFORMATION_REQUEST 83
-#define MTYPE_POSITIONING_INFORMATION_RESPONSE 84
-#define MTYPE_POSITIONING_INFORMATION_FAILURE 85
-#define MTYPE_POSITIONING_ACTIVATION_REQUEST 86
-#define MTYPE_POSITIONING_ACTIVATION_RESPONSE 87
-#define MTYPE_POSITIONING_ACTIVATION_FAILURE 88
-#define MTYPE_POSITIONING_DEACTIVATION 89
-#define MTYPE_E_CID_MEASUREMENT_INITIATION_REQUEST 90
-#define MTYPE_E_CID_MEASUREMENT_INITIATION_RESPONSE 91
-#define MTYPE_E_CID_MEASUREMENT_INITIATION_FAILURE 92
-#define MTYPE_E_CID_MEASUREMENT_FAILURE_INDICATION 93
-#define MTYPE_E_CID_MEASUREMENT_REPORT 94
-#define MTYPE_E_CID_MEASUREMENT_TERMINATION_COMMAND 95
-#define MTYPE_POSITIONING_INFORMATION_UPDATE 96
-
-
-
-/* Value Strings. TODO: ext? */
+#define MTYPE_RESET 1
+#define MTYPE_RESET_ACK 2
+#define MTYPE_F1_SETUP_REQUEST 3
+#define MTYPE_F1_SETUP_RESPONSE 4
+#define MTYPE_F1_SETUP_FAILURE 5
+#define MTYPE_GNB_DU_CONFIGURATION_UPDATE 6
+#define MTYPE_GNB_DU_CONFIGURATION_UPDATE_ACKNOWLEDGE 7
+#define MTYPE_GNB_DU_CONFIGURATION_UPDATE_FAILURE 8
+#define MTYPE_GNB_CU_CONFIGURATION_UPDATE 9
+#define MTYPE_GNB_CU_CONFIGURATION_UPDATE_ACKNOWLEDGE 10
+#define MTYPE_GNB_CU_CONFIGURATION_UPDATE_FAILURE 11
+#define MTYPE_UE_CONTEXT_SETUP_REQUEST 12
+#define MTYPE_UE_CONTEXT_SETUP_RESPONSE 13
+#define MTYPE_UE_CONTEXT_SETUP_FAILURE 14
+#define MTYPE_UE_CONTEXT_RELEASE_COMMAND 15
+#define MTYPE_UE_CONTEXT_RELEASE_COMPLETE 16
+#define MTYPE_UE_CONTEXT_MODIFICATION_REQUEST 17
+#define MTYPE_UE_CONTEXT_MODIFICATION_RESPONSE 18
+#define MTYPE_UE_CONTEXT_MODIFICATION_FAILURE 19
+#define MTYPE_UE_CONTEXT_MODIFICATION_REQUIRED 20
+#define MTYPE_UE_CONTEXT_MODIFICATION_CONFIRM 21
+#define MTYPE_UE_CONTEXT_MODIFICATION_REFUSE 22
+#define MTYPE_WRITE_REPLACE_WARNING_REQUEST 23
+#define MTYPE_WRITE_REPLACE_WARNING_RESPONSE 24
+#define MTYPE_PWS_CANCEL_REQUEST 25
+#define MTYPE_PWS_CANCEL_RESPONSE 26
+#define MTYPE_ERROR_INDICATION 27
+#define MTYPE_UE_CONTEXT_RELEASE_REQUEST 28
+#define MTYPE_INITIAL_UL_RRC_MESSAGE_TRANSFER 29
+#define MTYPE_DL_RRC_MESSAGE_TRANSFER 30
+#define MTYPE_UL_RRC_MESSAGE_TRANSFER 31
+#define MTYPE_UE_INACTIVITY_NOTIFICATION 32
+#define MTYPE_GNB_DU_RESOURCE_COORDINATION_REQUEST 33
+#define MTYPE_GNB_DU_RESOURCE_COORDINATION_RESPONSE 34
+#define MTYPE_PRIVATE_MESSAGE 35
+#define MTYPE_SYSTEM_INFORMATION_DELIVERY_COMMAND 36
+#define MTYPE_PAGING 37
+#define MTYPE_NOTIFY 38
+#define MTYPE_NETWORK_ACCESS_RATE_REDUCTION 39
+#define MTYPE_PWS_RESTART_INDICATION 40
+#define MTYPE_PWS_FAILURE_INDICATION 41
+#define MTYPE_GNB_DU_STATUS_INDICATION 42
+#define MTYPE_RRC_DELIVERY_REPORT 43
+#define MTYPE_F1_REMOVAL_REQUEST 44
+#define MTYPE_F1_REMOVAL_RESPONSE 45
+#define MTYPE_F1_REMOVAL_FAILURE 46
+#define MTYPE_TRACE_START 47
+#define MTYPE_DEACTIVATE_TRACE 48
+#define MTYPE_DU_CU_RADIO_INFORMATION_TRANSFER 49
+#define MTYPE_CU_DU_RADIO_INFORMATION_TRANSFER 50
+#define MTYPE_BAP_MAPPING_CONFIGURATION 51
+#define MTYPE_BAP_MAPPING_CONFIGURATION_ACKNOWLEDGE 52
+#define MTYPE_BAP_MAPPING_CONFIGURATION_FAILURE 53
+#define MTYPE_GNB_DU_RESOURCE_CONFIGURATION 54
+#define MTYPE_GNB_DU_RESOURCE_CONFIGURATION_ACKNOWLEDGE 55
+#define MTYPE_GNB_DU_RESOURCE_CONFIGURATION_FAILURE 56
+#define MTYPE_IAB_TNL_ADDRESS_REQUEST 57
+#define MTYPE_IAB_TNL_ADDRESS_RESPONSE 58
+#define MTYPE_IAB_TNL_ADDRESS_FAILURE 59
+#define MTYPE_IAB_UP_CONFIGURATION_UPDATE_REQUEST 60
+#define MTYPE_IAB_UP_CONFIGURATION_UPDATE_RESPONSE 61
+#define MTYPE_IAB_UP_CONFIGURATION_UPDATE_FAILURE 62
+#define MTYPE_RESOURCE_STATUS_REQUEST 63
+#define MTYPE_RESOURCE_STATUS_RESPONSE 64
+#define MTYPE_RESOURCE_STATUS_FAILURE 65
+#define MTYPE_RESOURCE_STATUS_UPDATE 66
+#define MTYPE_ACCESS_AND_MOBILITY_INDICATION 67
+#define MTYPE_REFERENCE_TIME_INFORMATION_REPORTING_CONTROL 68
+#define MTYPE_REFERENCE_TIME_INFORMATION_REPORT 69
+#define MTYPE_ACCESS_SUCCESS 70
+#define MTYPE_CELL_TRAFFIC_TRACE 71
+#define MTYPE_POSITIONING_ASSISTANCE_INFORMATION_CONTROL 72
+#define MTYPE_POSITIONING_ASSISTANCE_INFORMATION_FEEDBACK 73
+#define MTYPE_POSITIONING_MEASUREMENT_REQUEST 74
+#define MTYPE_POSITIONING_MEASUREMENT_RESPONSE 75
+#define MTYPE_POSITIONING_MEASUREMENT_FAILURE 76
+#define MTYPE_POSITIONING_MEASUREMENT_REPORT 77
+#define MTYPE_POSITIONING_MEASUREMENT_ABORT 78
+#define MTYPE_POSITIONING_MEASUREMENT_FAILURE_INDICATION 79
+#define MTYPE_POSITIONING_MEASUREMENT_UPDATE 80
+#define MTYPE_TRP_INFORMATION_REQUEST 81
+#define MTYPE_TRP_INFORMATION_RESPONSE 82
+#define MTYPE_TRP_INFORMATION_FAILURE 83
+#define MTYPE_POSITIONING_INFORMATION_REQUEST 84
+#define MTYPE_POSITIONING_INFORMATION_RESPONSE 85
+#define MTYPE_POSITIONING_INFORMATION_FAILURE 86
+#define MTYPE_POSITIONING_ACTIVATION_REQUEST 87
+#define MTYPE_POSITIONING_ACTIVATION_RESPONSE 88
+#define MTYPE_POSITIONING_ACTIVATION_FAILURE 89
+#define MTYPE_POSITIONING_DEACTIVATION 90
+#define MTYPE_E_CID_MEASUREMENT_INITIATION_REQUEST 91
+#define MTYPE_E_CID_MEASUREMENT_INITIATION_RESPONSE 92
+#define MTYPE_E_CID_MEASUREMENT_INITIATION_FAILURE 93
+#define MTYPE_E_CID_MEASUREMENT_FAILURE_INDICATION 94
+#define MTYPE_E_CID_MEASUREMENT_REPORT 95
+#define MTYPE_E_CID_MEASUREMENT_TERMINATION_COMMAND 96
+#define MTYPE_POSITIONING_INFORMATION_UPDATE 97
+#define MTYPE_BROADCAST_CONTEXT_SETUP_REQUEST 98
+#define MTYPE_BROADCAST_CONTEXT_SETUP_RESPONSE 99
+#define MTYPE_BROADCAST_CONTEXT_SETUP_FAILURE 100
+#define MTYPE_BROADCAST_CONTEXT_RELEASE_COMMAND 101
+#define MTYPE_BROADCAST_CONTEXT_RELEASE_COMPLETE 102
+#define MTYPE_BROADCAST_CONTEXT_RELEASE_REQUEST 103
+#define MTYPE_BROADCAST_CONTEXT_MODIFICATION_REQUEST 104
+#define MTYPE_BROADCAST_CONTEXT_MODIFICATION_RESPONSE 105
+#define MTYPE_BROADCAST_CONTEXT_MODIFICATION_FAILURE 106
+#define MTYPE_MULTICAST_GROUP_PAGING 107
+#define MTYPE_MULTICAST_CONTEXT_SETUP_REQUEST 108
+#define MTYPE_MULTICAST_CONTEXT_SETUP_RESPONSE 109
+#define MTYPE_MULTICAST_CONTEXT_SETUP_FAILURE 110
+#define MTYPE_MULTICAST_CONTEXT_RELEASE_COMMAND 111
+#define MTYPE_MULTICAST_CONTEXT_RELEASE_COMPLETE 112
+#define MTYPE_MULTICAST_CONTEXT_RELEASE_REQUEST 113
+#define MTYPE_MULTICAST_CONTEXT_MODIFICATION_REQUEST 114
+#define MTYPE_MULTICAST_CONTEXT_MODIFICATION_RESPONSE 115
+#define MTYPE_MULTICAST_CONTEXT_MODIFICATION_FAILURE 116
+#define MTYPE_MULTICAST_DISTRIBUTION_SETUP_REQUEST 117
+#define MTYPE_MULTICAST_DISTRIBUTION_SETUP_RESPONSE 118
+#define MTYPE_MULTICAST_DISTRIBUTION_SETUP_FAILURE 119
+#define MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMMAND 120
+#define MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMPLETE 121
+#define MTYPE_PDCP_MEASUREMENT_INITIATION_REQUEST 122
+#define MTYPE_PDCP_MEASUREMENT_INITIATION_RESPONSE 123
+#define MTYPE_PDCP_MEASUREMENT_INITIATION_FAILURE 124
+#define MTYPE_PDCP_MEASUREMENT_REPORT 125
+#define MTYPE_PDCP_MEASUREMENT_TERMINATION_COMMAND 126
+#define MTYPE_PDCP_MEASUREMENT_FAILURE_INDICATION 127
+#define MTYPE_PRS_CONFIGURATION_REQUEST 128
+#define MTYPE_PRS_CONFIGURATION_RESPONSE 129
+#define MTYPE_PRS_CONFIGURATION_FAILURE 130
+#define MTYPE_MEASUREMENT_PRECONFIGURATION_REQUIRED 131
+#define MTYPE_MEASUREMENT_PRECONFIGURATION_CONFIRM 132
+#define MTYPE_MEASUREMENT_PRECONFIGURATION_REFUSE 133
+#define MTYPE_MEASUREMENT_ACTIVATION 134
+#define MTYPE_QOE_INFORMATION_TRANSFER 135
+#define MTYPE_POS_SYSTEM_INFORMATION_DELIVERY_COMMAND 136
+
static const value_string mtype_names[] = {
{ MTYPE_RESET, "Reset" },
{ MTYPE_RESET_ACK, "ResetAcknowledge" },
@@ -348,9 +407,48 @@ static const value_string mtype_names[] = {
{ MTYPE_E_CID_MEASUREMENT_REPORT, "E-CIDMeasurementReport" },
{ MTYPE_E_CID_MEASUREMENT_TERMINATION_COMMAND, "E-CIDMeasurementTerminationCommand" },
{ MTYPE_POSITIONING_INFORMATION_UPDATE, "PositioningInformationUpdate" },
+ { MTYPE_BROADCAST_CONTEXT_SETUP_REQUEST, "BroadcastContextSetupRequest" },
+ { MTYPE_BROADCAST_CONTEXT_SETUP_RESPONSE, "BroadcastContextSetupResponse" },
+ { MTYPE_BROADCAST_CONTEXT_SETUP_FAILURE, "BroadcastContextSetupFailure" },
+ { MTYPE_BROADCAST_CONTEXT_RELEASE_COMMAND, "BroadcastContextReleaseCommand" },
+ { MTYPE_BROADCAST_CONTEXT_RELEASE_COMPLETE, "BroadcastContextReleaseComplete" },
+ { MTYPE_BROADCAST_CONTEXT_RELEASE_REQUEST, "BroadcastContextReleaseRequest" },
+ { MTYPE_BROADCAST_CONTEXT_MODIFICATION_REQUEST, "BroadcastContextModificationRequest" },
+ { MTYPE_BROADCAST_CONTEXT_MODIFICATION_RESPONSE, "BroadcastContextModificationResponse" },
+ { MTYPE_BROADCAST_CONTEXT_MODIFICATION_FAILURE, "BroadcastContextModificationFailure" },
+ { MTYPE_MULTICAST_GROUP_PAGING, "MulticastGroupPaging" },
+ { MTYPE_MULTICAST_CONTEXT_SETUP_REQUEST, "MulticastContextSetupRequest" },
+ { MTYPE_MULTICAST_CONTEXT_SETUP_RESPONSE, "MulticastContextSetupResponse" },
+ { MTYPE_MULTICAST_CONTEXT_SETUP_FAILURE, "MulticastContextSetupFailure" },
+ { MTYPE_MULTICAST_CONTEXT_RELEASE_COMMAND, "MulticastContextReleaseCommand" },
+ { MTYPE_MULTICAST_CONTEXT_RELEASE_COMPLETE, "MulticastContextReleaseComplete" },
+ { MTYPE_MULTICAST_CONTEXT_RELEASE_REQUEST, "MulticastContextReleaseRequest" },
+ { MTYPE_MULTICAST_CONTEXT_MODIFICATION_REQUEST, "MulticastContextModificationRequest" },
+ { MTYPE_MULTICAST_CONTEXT_MODIFICATION_RESPONSE, "MulticastContextModificationResponse" },
+ { MTYPE_MULTICAST_CONTEXT_MODIFICATION_FAILURE, "MulticastContextModificationFailure" },
+ { MTYPE_MULTICAST_DISTRIBUTION_SETUP_REQUEST, "MulticastDistributionSetupRequest" },
+ { MTYPE_MULTICAST_DISTRIBUTION_SETUP_RESPONSE, "MulticastDistributionSetupResponse" },
+ { MTYPE_MULTICAST_DISTRIBUTION_SETUP_FAILURE, "MulticastDistributionSetupFailure" },
+ { MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMMAND, "MulticastDistributionReleaseCommand" },
+ { MTYPE_MULTICAST_DISTRIBUTION_RELEASE_COMPLETE, "MulticastDistributionReleaseComplete" },
+ { MTYPE_PDCP_MEASUREMENT_INITIATION_REQUEST, "PDCMeasurementInitiationRequest" },
+ { MTYPE_PDCP_MEASUREMENT_INITIATION_RESPONSE, "PDCMeasurementInitiationResponse" },
+ { MTYPE_PDCP_MEASUREMENT_INITIATION_FAILURE, "PDCMeasurementInitiationFailure" },
+ { MTYPE_PDCP_MEASUREMENT_REPORT, "PDCMeasurementReport" },
+ { MTYPE_PDCP_MEASUREMENT_TERMINATION_COMMAND, "PDCMeasurementTerminationCommand" },
+ { MTYPE_PDCP_MEASUREMENT_FAILURE_INDICATION, "PDCMeasurementFailureIndication" },
+ { MTYPE_PRS_CONFIGURATION_REQUEST, "PRSConfigurationRequest" },
+ { MTYPE_PRS_CONFIGURATION_RESPONSE, "PRSConfigurationResponse" },
+ { MTYPE_PRS_CONFIGURATION_FAILURE, "PRSConfigurationFailure" },
+ { MTYPE_MEASUREMENT_PRECONFIGURATION_REQUIRED, "MeasurementPreconfigurationRequired" },
+ { MTYPE_MEASUREMENT_PRECONFIGURATION_CONFIRM, "MeasurementPreconfigurationConfirm" },
+ { MTYPE_MEASUREMENT_PRECONFIGURATION_REFUSE, "MeasurementPreconfigurationRefuse" },
+ { MTYPE_MEASUREMENT_ACTIVATION, "MeasurementActivation" },
+ { MTYPE_QOE_INFORMATION_TRANSFER, "QoEInformationTransfer" },
+ { MTYPE_POS_SYSTEM_INFORMATION_DELIVERY_COMMAND, "PosSystemInformationDeliveryCommand" },
{ 0, NULL }
};
-
+static value_string_ext mtype_names_ext = VALUE_STRING_EXT_INIT(mtype_names);
typedef struct {
@@ -361,6 +459,7 @@ typedef struct {
const char *obj_id;
guint32 sib_type;
guint32 srb_id;
+ guint32 gdb_cu_ue_f1ap_id;
e212_number_type_t number_type;
struct f1ap_tap_t *stats_tap;
} f1ap_private_data_t;
@@ -393,17 +492,12 @@ static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, pro
static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
-static const true_false_string f1ap_tfs_interfacesToTrace = {
- "Should be traced",
- "Should not be traced"
-};
-
static proto_tree *top_tree = NULL;
static void set_message_label(asn1_ctx_t *actx, int type)
{
- const char *label = val_to_str_const(type, mtype_names, "Unknown");
+ const char *label = val_to_str_ext_const(type, &mtype_names_ext, "Unknown");
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, label);
/* N.B. would like to be able to use actx->subTree.top_tree, but not easy to set.. */
proto_item_append_text(top_tree, " (%s)", label);
@@ -414,19 +508,19 @@ static void set_message_label(asn1_ctx_t *actx, int type)
static void
f1ap_MaxPacketLossRate_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
}
static void
f1ap_PacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
}
static void
f1ap_ExtendedPacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
}
static f1ap_private_data_t*
@@ -436,6 +530,7 @@ f1ap_get_private_data(packet_info *pinfo)
if (!f1ap_data) {
f1ap_data = wmem_new0(wmem_file_scope(), f1ap_private_data_t);
f1ap_data->srb_id = -1;
+ f1ap_data->gdb_cu_ue_f1ap_id = 1;
p_add_proto_data(wmem_file_scope(), pinfo, proto_f1ap, 0, f1ap_data);
}
return f1ap_data;
@@ -451,8 +546,11 @@ add_nr_pdcp_meta_data(packet_info *pinfo, guint8 direction, guint8 srb_id)
return;
}
+ f1ap_private_data_t *f1ap_data = f1ap_get_private_data(pinfo);
+
p_pdcp_nr_info = wmem_new0(wmem_file_scope(), pdcp_nr_info);
p_pdcp_nr_info->direction = direction;
+ p_pdcp_nr_info->ueid = f1ap_data->gdb_cu_ue_f1ap_id;
p_pdcp_nr_info->bearerType = Bearer_DCCH;
p_pdcp_nr_info->bearerId = srb_id;
p_pdcp_nr_info->plane = NR_SIGNALING_PLANE;
@@ -520,14 +618,14 @@ f1ap_stats_tree_init(stats_tree *st)
static tap_packet_status
f1ap_stats_tree_packet(stats_tree* st, packet_info* pinfo _U_,
- epan_dissect_t* edt _U_ , const void* p)
+ epan_dissect_t* edt _U_ , const void* p, tap_flags_t flags _U_)
{
const struct f1ap_tap_t *pi = (const struct f1ap_tap_t *) p;
tick_stat_node(st, st_str_packets, 0, FALSE);
stats_tree_tick_pivot(st, st_node_packet_types,
- val_to_str(pi->f1ap_mtype, mtype_names,
- "Unknown packet type (%d)"));
+ val_to_str_ext(pi->f1ap_mtype, &mtype_names_ext,
+ "Unknown packet type (%d)"));
return TAP_PACKET_REDRAW;
}
@@ -597,23 +695,23 @@ void proto_register_f1ap(void) {
NULL, HFILL }},
{ &hf_f1ap_interfacesToTrace_NG_C,
{ "NG-C", "f1ap.interfacesToTrace.NG_C",
- FT_BOOLEAN, 8, TFS(&f1ap_tfs_interfacesToTrace), 0x80,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x80,
NULL, HFILL }},
{ &hf_f1ap_interfacesToTrace_Xn_C,
{ "Xn-C", "f1ap.interfacesToTrace.Xn_C",
- FT_BOOLEAN, 8, TFS(&f1ap_tfs_interfacesToTrace), 0x40,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x40,
NULL, HFILL }},
{ &hf_f1ap_interfacesToTrace_Uu,
{ "Uu", "f1ap.interfacesToTrace.Uu",
- FT_BOOLEAN, 8, TFS(&f1ap_tfs_interfacesToTrace), 0x20,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x20,
NULL, HFILL }},
{ &hf_f1ap_interfacesToTrace_F1_C,
{ "F1-C", "f1ap.interfacesToTrace.F1_C",
- FT_BOOLEAN, 8, TFS(&f1ap_tfs_interfacesToTrace), 0x10,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x10,
NULL, HFILL }},
{ &hf_f1ap_interfacesToTrace_E1,
{ "E1", "f1ap.interfacesToTrace.E1",
- FT_BOOLEAN, 8, TFS(&f1ap_tfs_interfacesToTrace), 0x08,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x08,
NULL, HFILL }},
{ &hf_f1ap_interfacesToTrace_Reserved,
{ "Reserved", "f1ap.interfacesToTrace.Reserved",
@@ -727,11 +825,34 @@ void proto_register_f1ap(void) {
&ett_f1ap_SIB12_message,
&ett_f1ap_SIB13_message,
&ett_f1ap_SIB14_message,
+ &ett_f1ap_SIB15_message,
+ &ett_f1ap_SIB17_message,
+ &ett_f1ap_SIB20_message,
&ett_f1ap_SL_PHY_MAC_RLC_Config,
+ &ett_f1ap_SL_RLC_ChannelToAddModList,
&ett_f1ap_SL_ConfigDedicatedEUTRA_Info,
&ett_f1ap_TDD_UL_DLConfigCommonNR,
&ett_f1ap_UEAssistanceInformationEUTRA,
&ett_f1ap_PosAssistance_Information,
+ &ett_f1ap_LocationMeasurementInformation,
+ &ett_f1ap_MUSIM_GapConfig,
+ &ett_f1ap_SDT_MAC_PHY_CG_Config,
+ &ett_f1ap_SDTRLCBearerConfiguration,
+ &ett_f1ap_MBSInterestIndication,
+ &ett_f1ap_NeedForGapsInfoNR,
+ &ett_f1ap_NeedForGapNCSGInfoNR,
+ &ett_f1ap_NeedForGapNCSGInfoEUTRA,
+ &ett_f1ap_MBS_Broadcast_NeighbourCellList,
+ &ett_f1ap_mRB_PDCP_Config_Broadcast,
+ &ett_f1ap_posMeasGapPreConfigToAddModList,
+ &ett_f1ap_posMeasGapPreConfigToReleaseList,
+ &ett_f1ap_SidelinkConfigurationContainer,
+ &ett_f1ap_SRSPosRRCInactiveConfig,
+ &ett_f1ap_successfulHOReportContainer,
+ &ett_f1ap_UL_GapFR2_Config,
+ &ett_f1ap_ConfigRestrictInfoDAPS,
+ &ett_f1ap_UplinkTxDirectCurrentTwoCarrierListInfo,
+ &ett_f1ap_Ncd_SSB_RedCapInitialBWP_SDT,
#include "packet-f1ap-ettarr.c"
};
diff --git a/epan/dissectors/asn1/ftam/packet-ftam-template.c b/epan/dissectors/asn1/ftam/packet-ftam-template.c
index 37d59ea4cf..30917702fa 100644
--- a/epan/dissectors/asn1/ftam/packet-ftam-template.c
+++ b/epan/dissectors/asn1/ftam/packet-ftam-template.c
@@ -33,20 +33,20 @@ void proto_register_ftam(void);
void proto_reg_handoff_ftam(void);
/* Initialize the protocol and registered fields */
-static int proto_ftam = -1;
+static int proto_ftam;
/* Declare the function to avoid a compiler warning */
-static int dissect_ftam_OR_Set(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+static int dissect_ftam_OR_Set(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
-static int hf_ftam_unstructured_text = -1; /* ISO FTAM unstructured text */
-static int hf_ftam_unstructured_binary = -1; /* ISO FTAM unstructured binary */
+static int hf_ftam_unstructured_text; /* ISO FTAM unstructured text */
+static int hf_ftam_unstructured_binary; /* ISO FTAM unstructured binary */
#include "packet-ftam-hf.c"
/* Initialize the subtree pointers */
-static gint ett_ftam = -1;
+static gint ett_ftam;
#include "packet-ftam-ett.c"
-static expert_field ei_ftam_zero_pdu = EI_INIT;
+static expert_field ei_ftam_zero_pdu;
#include "packet-ftam-fn.c"
@@ -56,7 +56,7 @@ static expert_field ei_ftam_zero_pdu = EI_INIT;
static int
dissect_ftam_unstructured_text(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void* data _U_)
{
- proto_tree_add_item (parent_tree, hf_ftam_unstructured_text, tvb, 0, tvb_reported_length_remaining(tvb, 0), ENC_ASCII|ENC_NA);
+ proto_tree_add_item (parent_tree, hf_ftam_unstructured_text, tvb, 0, tvb_reported_length_remaining(tvb, 0), ENC_ASCII);
return tvb_captured_length(tvb);
}
diff --git a/epan/dissectors/asn1/gdt/CMakeLists.txt b/epan/dissectors/asn1/gdt/CMakeLists.txt
new file mode 100644
index 0000000000..a44ded160a
--- /dev/null
+++ b/epan/dissectors/asn1/gdt/CMakeLists.txt
@@ -0,0 +1,34 @@
+# CMakeLists.txt
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+
+set( PROTOCOL_NAME gdt )
+
+set( PROTO_OPT )
+
+set( EXT_ASN_FILE_LIST
+)
+
+set( ASN_FILE_LIST
+ ${PROTOCOL_NAME}.asn
+)
+
+set( EXTRA_DIST
+ ${ASN_FILE_LIST}
+ packet-${PROTOCOL_NAME}-template.c
+ ${PROTOCOL_NAME}.cnf
+)
+
+set( SRC_FILES
+ ${EXTRA_DIST}
+ ${EXT_ASN_FILE_LIST}
+)
+
+set( A2W_FLAGS -b )
+
+ASN2WRS()
diff --git a/epan/dissectors/asn1/gdt/gdt.asn b/epan/dissectors/asn1/gdt/gdt.asn
new file mode 100644
index 0000000000..cdf1c12304
--- /dev/null
+++ b/epan/dissectors/asn1/gdt/gdt.asn
@@ -0,0 +1,770 @@
+-- ===================================================================================================================
+-- GDT protocol definition
+-- ===================================================================================================================
+GDT {iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 57805}
+
+DEFINITIONS
+IMPLICIT TAGS
+::=
+
+
+BEGIN
+
+-- ===========
+-- GDT Header
+-- ===========
+-- version - GDT version
+-- source - source information
+-- destination - destination information
+-- uuid - universally unique identifier (UUID)
+-- sequence-num - sequence number
+-- sequence-flag - packet sequence information (stateful/stateless/etc.)
+-- enc-info - encryption information
+-- hop-info - hop counter
+-- status - error code
+Header ::= SEQUENCE {
+ version [0] INTEGER,
+ source [1] EndPointDescriptor,
+ destination [2] EndPointDescriptor,
+ uuid [3] OCTET STRING,
+ sequence-num [4] INTEGER,
+ sequence-flag [5] SequenceFlag,
+ enc-info [6] EncryptionInfo OPTIONAL,
+ hop-info [7] HopInfo OPTIONAL,
+ status [8] ErrorCode OPTIONAL,
+ ...
+}
+
+-- ======================================================
+-- SequenceFlag - stateful/stateless sequence information
+-- ======================================================
+-- sf-start - stateful start of sequence
+-- sf-continue - stateful sequence continuation
+-- sf-end - stateful end of sequence / stateless reply
+-- sf-stateless-no-reply - stateless packet, no reply is received to confirm successful delivery, reliability is sctp dependant
+-- sf-stateless - stateless packet, sf-end reply is received to confirm successful delivery
+-- sf-stream-complete - stream complete
+SequenceFlag ::= INTEGER {
+ sf-start (0),
+ sf-continue (1),
+ sf-end (2),
+ sf-stateless-no-reply (3),
+ sf-stateless (4),
+ sf-stream-complete (5),
+ sf-continue-wait (6),
+ sf-heartbeat (7)
+}
+
+
+-- ==================
+-- EndPointDescriptor
+-- ==================
+-- type - daemon type
+-- id - daemon id
+EndPointDescriptor ::= SEQUENCE {
+ type [1] IA5String,
+ id [2] IA5String OPTIONAL,
+ ...
+}
+
+
+-- =========
+-- GDT Body
+-- =========
+-- encrypted-data - Encrypted GDT body, used only when content is encrypted (header.encryption)
+-- packet-fwd - General packet forwarding, used for routing and failovers
+-- filter - Filtering service, mostly used but not limited to SMS
+-- data-retention - Data retention service, used for DB storage
+-- general - Reserved for custom daemons and/or future use
+-- conf - Configuration daemon service
+-- stats - Statistical data exchange
+-- auth - Authentication messages, used for daemon authentication
+-- reg - Registration messages, used for daemon discovery and various registration procedures (daemons, events, etc.)
+-- ntfy - Various notification/alarm/etc. messages
+-- data - payload data exchange
+-- routing - routing related messages
+-- service-msg - service related messages
+-- state-msg - statefulness related messages
+Body ::= CHOICE {
+ encrypted-data [1] OCTET STRING,
+ packet-fwd [2] PacketFwdMessage,
+ filter [3] FilterMessage,
+ data-retention [4] DataRetentionMessage,
+ --general [5] EXPLICIT GeneralMessage,
+ conf [6] ConfigMessage,
+ stats [7] StatsMessage,
+ auth [8] AuthMessage,
+ reg [9] RegistrationMessage,
+ ntfy [10] NotifyMessage,
+ data [11] DataMessage,
+ routing [12] RoutingMessage,
+ service-msg [13] ServiceMessage,
+ state-msg [14] StateMessage,
+ ...
+}
+
+
+-- =================================================
+-- StateMessage - used by MINK statefulness library
+-- =================================================
+StateMessage ::= SEQUENCE {
+ stmch-id OCTET STRING,
+ state-action StateAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+
+-- ===========
+-- StateAction
+-- ===========
+StateAction ::= INTEGER {
+ sta-update (0)
+
+}
+
+
+-- ==================================================
+-- ServiceMessage - used for service related messages
+-- ==================================================
+ServiceMessage ::= SEQUENCE {
+ service-id ServiceId,
+ service-action ServiceAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- =========
+-- ServiceId
+-- =========
+ServiceId ::= INTEGER {
+ sid-stp-routing (42),
+ sid-sgn-forward (43),
+ sid-fgn-filtering (44),
+ sid-security (45),
+ sid-pdn-filtering (46),
+ sid-sysagent (47)
+}
+
+
+-- =============
+-- ServiceAction
+-- =============
+ServiceAction ::= INTEGER {
+ srvca-request (0), -- generic request
+ srvca-result (1), -- generic result
+ srvca-default (2), -- default action
+ srvca-na (3) -- n/a
+}
+
+
+-- ==================================================
+-- RoutingMessage - used for routing related messages
+-- ==================================================
+RoutingMessage ::= SEQUENCE {
+ routing-action RoutingAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- =============
+-- RoutingAction
+-- =============
+RoutingAction ::= INTEGER {
+ roua-route-set (0),
+ roua-route-get (1),
+ roua-route-result (2)
+}
+
+
+-- ================================================================
+-- RegistrationMessage - used for daemon discovery and registration
+-- ================================================================
+-- reg-action - registration action
+-- params - registration parameters
+RegistrationMessage ::= SEQUENCE {
+ reg-action RegistrationAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ==================
+-- RegistrationAction
+-- ==================
+RegistrationAction ::= INTEGER {
+ ra-reg-request (0),
+ ra-reg-result (1)
+}
+
+-- ========================================
+-- StatsMessage - Statistical data exchange
+-- ========================================
+-- stats-action - stats action
+-- params - stats parameters
+StatsMessage ::= SEQUENCE {
+ stats-action StatsAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ===========
+-- StatsAction
+-- ===========
+StatsAction ::= INTEGER {
+ sa-request (0),
+ sa-result (1)
+}
+
+-- ============================================
+-- AuthMessage - used for daemon authentication
+-- ============================================
+-- auth-action - authentication action
+-- params - authentication parameters
+AuthMessage ::= SEQUENCE {
+ auth-action AuthAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ==========
+-- AuthAction
+-- ==========
+AuthAction ::= INTEGER {
+ aa-auth-request (0),
+ aa-auth-result (1)
+}
+
+-- ==========================================
+-- DataRetentionMessage - used for DB storage
+-- ==========================================
+-- payload-type - payload type
+-- payload - payload
+-- dr-action - data retention action
+-- params - data retention parameters
+DataRetentionMessage ::= SEQUENCE {
+ payload-type PayloadType OPTIONAL,
+ payload OCTET STRING OPTIONAL,
+ dr-action DataRetentionAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ===================
+-- DataRetentionAction
+-- ===================
+DataRetentionAction ::= INTEGER {
+ ra-store (0),
+ ra-delete (1),
+ ra-fetch (2),
+ ra-result (3)
+}
+
+-- =================================
+-- FilterMessage - filtering service
+-- =================================
+-- filter-action - filter action
+-- params - filter parameters
+FilterMessage ::= SEQUENCE {
+ filter-action FilterAction,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ============
+-- FilterAction
+-- ============
+FilterAction ::= INTEGER {
+ fa-filter-request (0),
+ fa-filter-result (1)
+}
+
+
+
+-- =================================================
+-- PacketFwdMessage - used for routing and failovers
+-- =================================================
+-- payload-type - payload type
+-- payload - payload
+-- params - extra parameters
+PacketFwdMessage ::= SEQUENCE {
+ payload-type PayloadType,
+ payload OCTET STRING OPTIONAL,
+ params Parameters OPTIONAL,
+ ...
+}
+
+
+-- =================================================================
+-- NotifyMessage - used for various notification/alarm/etc. messages
+-- =================================================================
+-- message-type - notification message type
+-- message - notification message
+-- params - extra notification parameters
+NotifyMessage ::= SEQUENCE {
+ message-type NotifyMessageType,
+ message OCTET STRING OPTIONAL,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- =================
+-- NotifyMessageType
+-- =================
+NotifyMessageType ::= INTEGER
+
+
+-- ============================================
+-- DataMessage - used for payload data exchange
+-- ============================================
+-- type - payload type
+-- payload - actual payload
+-- params - extra parameters (used instead of payload or as an extra payload information)
+DataMessage ::= SEQUENCE {
+ payload-type PayloadType,
+ payload OCTET STRING OPTIONAL,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ===========
+-- PayloadType
+-- ===========
+PayloadType ::= INTEGER {
+ dmt-unknown (1000), -- UNKNOWN
+ dmt-r14p (2000), -- GDT
+ dmt-layer2 (0), -- General layer 2
+ dmt-ip (1), -- Internet Protocol (IP)
+ dmt-sctp (2), -- Stream Control Transmission Protocol (SCTP)
+ dmt-tcp (3), -- Transmission Control Protocol (TCP)
+ dmt-udp (4), -- User Datagram Protocol (UDP)
+ dmt-m3ua (5), -- MTP Level 3 (MTP3) User Adaptation Layer
+ dmt-m2ua (6), -- Message Transfer Part 2 User Adaptation Layer (M2UA)
+ dmt-mtp3 (7), -- MTP Level 3 (MTP3)
+ dmt-isup (8), -- ISDN User Part (ISUP)
+ dmt-h248 (9), -- H.248 or Megaco or Gateway Control Protocol
+ dmt-sccp (10), -- Signalling Connection Control Part (SCCP)
+ dmt-smstpdu (11), -- SMS TPDU 3GPP TS 23.040
+ dmt-smpp (12), -- Short Message Peer-to-Peer (SMPP)
+ dmt-tcap (13), -- Transaction Capabilities Application Part (TCAP)
+ dmt-rtp (14), -- Real-time Transport Protocol (RTP)
+ dmt-sip (15), -- Session Initiation Protocol (SIP)
+ dmt-pop3 (16), -- Post Office Protocol (POP3)
+ dmt-imap (17), -- Internet message access protocol (IMAP)
+ dmt-http (18), -- Hypertext Transfer Protocol (HTTP)
+ dmt-radius (19), -- Remote Authentication Dial In User Service (RADIUS)
+ dmt-dhcp (20), -- Dynamic Host Configuration Protocol (DHCP)
+ dmt-smtp (21), -- Simple Mail Transfer Protocol (SMTP)
+ dmt-m2pa (22), -- Message Transfer Part 2 (MTP) User Peer-to-Peer Adaptation Layer (M2PA)
+ dmt-mtp2 (23) -- MTP Level 2 (MTP2)
+}
+
+
+-- ====================================================
+-- ConfigMessage - used for configuration data exchange
+-- ====================================================
+-- action - action required from config daemon
+-- payload - result generated by config daemon, action dependant
+-- params - extra parameters, optional
+ConfigMessage ::= SEQUENCE {
+ action ConfigAction,
+ payload OCTET STRING OPTIONAL,
+ params Parameters OPTIONAL,
+ ...
+}
+
+-- ============
+-- ConfigAction
+-- ============
+-- ca-cfg-get - get configuration item
+-- ca-cfg-set - set configuration item
+-- ca-cfg-replicate - replicate to other config daemon
+-- ca-cfg-ac - auto complete configuration item (mostly used by CLI service)
+-- ca-cfg-user-login - user login
+-- ca-cfg-user-logout - user logout
+ConfigAction ::= INTEGER {
+ ca-cfg-get (0),
+ ca-cfg-set (1),
+ ca-cfg-replicate (2),
+ ca-cfg-ac (3),
+ ca-cfg-result (4),
+ ca-cfg-user-login (5),
+ ca-cfg-user-logout (6)
+}
+
+-- =====================================
+-- Parameter - general purpose parameter
+-- =====================================
+-- id - parameter id
+-- value - parameter value(s)
+--
+-- Parameter values
+-- ================
+-- [0] - parameter data
+-- [1] - fragmentation flag (1 byte)
+-- [2] - variant parameter id index (1 byte)
+-- [3] - variant parameter type (1 byte)
+Parameter ::= SEQUENCE {
+ id ParameterType,
+ value SEQUENCE OF OCTET STRING OPTIONAL,
+ ...
+}
+
+-- ==========
+-- Parameters
+-- ==========
+Parameters ::= SEQUENCE OF Parameter
+
+-- ==============
+-- PD Command Id
+-- ==============
+-- values specific for PD, used in pt-mink-command-id
+PdCommandId ::= INTEGER {
+ pdci-add (1), -- add item to list
+ pdci-del (2), -- delete item from list
+ pdci-match (3) -- math item in list
+}
+
+-- ==================
+-- Filter Result Type
+-- ==================
+FilterResultType ::= INTEGER {
+ frt-accept (1), -- ACCEPT
+ frt-drop (2) -- DROP
+}
+
+
+-- =============
+-- ParameterType
+-- =============
+ParameterType ::= INTEGER {
+ -- User parameters (9000 - 4294967295)
+
+ -- MINK general (6000 - 6100)
+ pt-mink-daemon-type (6000), -- daemon type
+ pt-mink-daemon-id (6001), -- daemon id
+ pt-mink-auth-id (6002), -- authentication identification
+ pt-mink-auth-password (6003), -- authentication password
+ pt-mink-daemon-ip (6004), -- daemon ip address
+ pt-mink-daemon-port (6005), -- daemon port
+ pt-mink-daemon-description (6006), -- daemon description
+ pt-mink-action (6007), -- extra action
+ pt-mink-dpi (6008), -- deep packet inspection (DPI) flag
+ pt-mink-spi (6009), -- shallow/stateful packet inspection (SPI) flag
+ pt-mink-timestamp (6010), -- unix timestamp
+ pt-mink-timestamp-nsec (6011), -- unix timestamp nsec part
+ pt-mink-security-phase (6012), -- mink security phase
+ pt-mink-loop-count (6013), -- packet loop count
+ pt-mink-checksum (6014), -- checksum
+ pt-mink-timeout (6015), -- timeout
+ pt-mink-error (6016), -- error code
+ pt-mink-error-msg (6017), -- error message
+ pt-mink-status (6018), -- status code
+ pt-mink-status-msg (6019), -- status message
+ pt-mink-persistent-correlation (6020), -- persistent GUID
+
+ -- MINK routing (6100 - 6200)
+ pt-mink-routing-destination (6100), -- routing destination address
+ pt-mink-routing-source (6101), -- routing source address
+ pt-mink-routing-gateway (6102), -- routing gateway address
+ pt-mink-routing-interface (6103), -- routing network interface
+ pt-mink-routing-priority (6104), -- routing priority
+ pt-mink-router-status (6105), -- routing capabilities status (0/1)
+ pt-mink-routing-destination-type (6106), -- routing destination type
+ pt-mink-routing-index (6107), -- routing index
+ pt-mink-trunk-label (6108), -- trunk label
+ pt-mink-connection-type (6109), -- connection type
+ pt-mink-service-id (6110), -- service id
+ pt-mink-command-id (6111), -- command id
+ pt-mink-routing-sub-destination (6112), -- routing sub destination
+ pt-mink-routing-sub-destination-type (6113), -- routing sub destination type
+ pt-mink-correlation-notification (6114), -- correlation notification request
+ pt-mink-guid (6115), -- correlation guid
+ pt-mink-routing-service-id (6116), -- routing destination service id
+
+ -- MINK events (6200 - 6300)
+ pt-mink-event-id (6200), -- daemon event identification
+ pt-mink-event-description (6201), -- daemon event description
+ pt-mink-event-callback-id (6202), -- daemon event callback identification
+ pt-mink-event-callback-priority (6203), -- daemon event callback priority
+
+ -- MINK encryption (6300 - 6400)
+ pt-mink-enc-public-key (6300), -- public encryption key
+ pt-mink-enc-private-key (6301), -- private encryption key
+ pt-mink-enc-type (6302), -- encryption type
+
+ -- MINK statistics (6400 - 7400)
+ pt-mink-stats-id (6400), -- stats id
+ pt-mink-stats-description (6401), -- stats description
+ pt-mink-stats-value (6402), -- stats value
+ pt-mink-stats-count (6403), -- stats item count
+
+ -- MINK configuration (7400 - 7500)
+ pt-mink-config-param-name (7400), -- configiration parameter name
+ pt-mink-config-param-value (7401), -- configuration parameter value
+ pt-mink-config-ac-line (7402), -- line for auto completion
+ pt-mink-config-cfg-item-name (7403), -- config item name
+ pt-mink-config-cfg-item-desc (7404), -- config item description
+ pt-mink-config-cfg-item-ns (7405), -- config item node state
+ pt-mink-config-cfg-item-value (7406), -- config item committed value
+ pt-mink-config-cfg-item-nvalue (7407), -- config item uncommitted value
+ pt-mink-config-cfg-item-nt (7408), -- config item node type
+ pt-mink-config-cfg-cm-mode (7409), -- config mode
+ pt-mink-config-cfg-ac-err (7410), -- config auto completion error
+ pt-mink-config-cli-path (7411), -- config current cli path
+ pt-mink-config-cfg-line (7412), -- config line result
+ pt-mink-config-ac-err-count (7413), -- config auto completion error count
+ pt-mink-config-cfg-line-count (7414), -- config line result count
+ pt-mink-config-cfg-item-path (7415), -- config item path
+ pt-mink-config-cfg-item-notify (7416), -- config item on_change notification
+ pt-mink-config-cfg-item-count (7417), -- config item count
+ pt-mink-config-replication-line (7418), -- replication command
+
+ -- MINK sms related (7500 - 7600)
+ pt-mink-sms-status (7500), -- sms status
+ pt-mink-sms-uuid (7501), -- sms uuid
+
+ -- MINK filtering related (7600 - 7700)
+ pt-mink-filter-result (7600), -- filter result
+ pt-mink-filter-exit (7601), -- filter exit rule
+ pt-mink-filter-list-id (7602), -- list id
+ pt-mink-filter-list-label (7603), -- list label
+ pt-mink-filter-data (7604), -- generic filter input/output data
+ pt-mink-filter-data-size (7605), -- generic filter input/output data size
+
+ -- ETH header (6xx)
+ pt-eth-destination-mac (600), -- ETH header destination mac address
+ pt-eth-source-mac (601), -- ETH header source mac address
+
+ -- IP header (7xx)
+ pt-ip-destination-ip (700), -- IP header destination ip address
+ pt-ip-source-ip (701), -- IP header source ip address
+
+ -- TCP header (8xx)
+ pt-tcp-destination-port (800), -- TCP header destination port
+ pt-tcp-source-port (801), -- TCP header source port
+
+ -- UDP header (9xx)
+ pt-udp-destination-port (900), -- UDP header destination port
+ pt-udp-source-port (901), -- UDP header source port
+
+ -- SCTP header (1xxx)
+ pt-sctp-destination-port (1000), -- SCTP header destination port
+ pt-sctp-source-port (1001), -- SCTP header source port
+
+ -- TCAP and GSM MAP related (5xx)
+ pt-gsmmap-scoa-digits (500), -- serviceCentreAddressOA digits
+ pt-gsmmap-scoa-type-of-number (501), -- serviceCentreAddressOA type of number
+ pt-gsmmap-scoa-numbering-plan (502), -- serviceCentreAddressOA numbering plan
+ pt-gsmmap-scda-digits (503), -- serviceCentreAddressDA digits
+ pt-gsmmap-scda-type-of-number (504), -- serviceCentreAddressDA type of number
+ pt-gsmmap-scda-numbering-plan (505), -- serviceCentreAddressDA numbering plan
+ pt-gsmmap-imsi (506), -- IMSI
+ pt-gsmmap-msisdn-digits (507), -- MSISDN digits
+ pt-gsmmap-msisdn-type-of-number (508), -- MSISDN type of number
+ pt-gsmmap-msisdn-numbering-plan (509), -- MSISDN numbering plan
+ pt-tcap-source-transaction-id (510), -- TCAP Source Transaction Id
+ pt-tcap-destination-transaction-id (511), -- TCAP Destination Transaction Id
+ pt-tcap-opcode (512), -- TCAP Operation code
+ pt-tcap-component-type (513), -- TCAP Component type
+ pt-tcap-component-invoke-id (514), -- TCAP Invoke Id
+ pt-tcap-error-type (515), -- TCAP Error Type
+ pt-tcap-error-code (516), -- TCAP Error code
+ pt-tcap-dialogue-context-oid (517), -- TCAP Dialogue application context oid
+ pt-tcap-message-type (518), -- TCAP Message type
+ pt-gsmmap-nnn-digits (519), -- GSM MAP network node number digits
+ pt-gsmmap-nnn-type-of-number (520), -- GSM MAP nn type of number
+ pt-gsmmap-nnn-numbering-plan (521), -- GSM MAP nn numbering plan
+ pt-gsmmap-an-digits (522), -- GSM MAP additional number digits
+ pt-gsmmap-an-type-of-number (523), -- GSM MAP an type of number
+ pt-gsmmap-an-numbering-plan (524), -- GSM MAP an numbering plan
+ pt-gsmmap-sca-digits (525), -- GSM MAP service centre address digits
+ pt-gsmmap-sca-type-of-number (526), -- GSM MAP SCA type of number
+ pt-gsmmap-sca-numbering-plan (527), -- GSM MAP SCA numbering plan
+ pt-tcap-component-count (528), -- TCAP Component count
+ pt-tcap-dialogue-context-supported (529), -- TCAP Dialogue context supported
+ pt-tcap-component-index (530), -- TCAP Compoonent index currently processed
+ pt-tcap-source-transaction-id-length (531), -- TCAP Source Transaction Id length
+ pt-tcap-destination-transaction-id-length (532), -- TCAP Destination Transaction Id length
+ pt-gsmmap-version (533), -- GSM MAP version
+
+ -- GSM SMS TPDU (GSM 03.40) related (4xx)
+ pt-smstpdu-tp-udhi (400), -- 9.2.3.23 TP-User-Data-Header-Indicator (TP-UDHI)
+ pt-smstpdu-tp-sri (401), -- 9.2.3.4 TP-Status-Report-Indication (TP-SRI)
+ pt-smstpdu-tp-mms (402), -- 9.2.3.2 TP-More-Messages-to-Send (TP-MMS)
+ pt-smstpdu-tp-mti (403), -- 9.2.3.1 TP-Message-Type-Indicator (TP-MTI)
+ pt-smstpdu-tp-oa-type-of-number (404), -- 9.2.3.7 TP-Originating-Address (TP-OA) type of number
+ pt-smstpdu-tp-oa-numbering-plan (405), -- 9.2.3.7 TP-Originating-Address (TP-OA) numbering plan
+ pt-smstpdu-tp-oa-digits (406), -- 9.2.3.7 TP-Originating-Address (TP-OA) digits
+ pt-smstpdu-tp-pid (407), -- 9.2.3.9 TP-Protocol-Identifier (TP-PID)
+ pt-smstpdu-tp-dcs (408), -- 9.2.3.10 TP-Data-Coding-Scheme (TP-DCS)
+ pt-smstpdu-tp-scts (409), -- 9.2.3.11 TP-Service-Centre-Time-Stamp (TP-SCTS)
+ pt-smstpdu-tp-udl (410), -- 9.2.3.16 TP-User-Data-Length (TP-UDL)
+ pt-smstpdu-tp-ud (411), -- 9.2.3.24 TP-User Data (TP-UD)
+ pt-smstpdu-tp-rp (412), -- 9.2.3.17 TP-Reply-Path (TP-RP)
+ pt-smstpdu-tp-srr (413), -- 9.2.3.5 TP-Status-Report-Request (TP-SRR)
+ pt-smstpdu-tp-vpf (414), -- 9.2.3.3 TP-Validity-Period-Format (TP-VPF)
+ pt-smstpdu-tp-rd (415), -- 9.2.3.25 TP-Reject-Duplicates (TP-RD)
+ pt-smstpdu-tp-da-type-of-number (416), -- 9.2.3.8 TP-Destination-Address (TP-DA) type of number
+ pt-smstpdu-tp-da-numbering-plan (417), -- 9.2.3.8 TP-Destination-Address (TP-DA) numbering plan
+ pt-smstpdu-tp-da-digits (418), -- 9.2.3.8 TP-Destination-Address (TP-DA) digits
+ pt-smstpdu-tp-vp (419), -- 9.2.3.12 TP-Validity-Period (TP-VP)
+ pt-smstpdu-msg-id (420), -- Message Id
+ pt-smstpdu-msg-parts (421), -- Message parts
+ pt-smstpdu-msg-part (422), -- Message part
+ pt-smstpdu-tp-mr (423), -- Message reference
+ pt-smstpdu-message-class (424), -- Message class
+
+ -- SCCP related (3xx)
+ pt-sccp-destination-local-reference (300), -- Destination local reference
+ pt-sccp-source-local-reference (301), -- Source local reference
+ pt-sccp-called-party (302), -- Called party address
+ pt-sccp-calling-party (303), -- Calling party address
+ pt-sccp-protocol-class (304), -- Protocol class
+ pt-sccp-segmenting-reassembling (305), -- Segmenting/reassembling
+ pt-sccp-receive-sequence-number (306), -- Receive sequence number
+ pt-sccp-sequencing-segmenting (307), -- Sequencing/segmenting
+ pt-sccp-credit (308), -- Credit
+ pt-sccp-release-cause (309), -- Release cause
+ pt-sccp-return-cause (310), -- Return cause
+ pt-sccp-reset-cause (311), -- Reset cause
+ pt-sccp-error-cause (312), -- Error cause
+ pt-sccp-refusal-cause (313), -- Refusal cause
+ pt-sccp-data (314), -- Data
+ pt-sccp-segmentation (315), -- Segmentation
+ pt-sccp-hop-counter (316), -- Hop counter
+ pt-sccp-importance (317), -- Importance
+ pt-sccp-long-data (318), -- Long data
+ pt-sccp-called-pa-routing-indicator (319), -- Called party routing indicator
+ pt-sccp-called-pa-global-title-indicator (320), -- Called party global title indicator
+ pt-sccp-called-pa-ssn-indicator (321), -- Called party subsystem number indicator
+ pt-sccp-called-pa-point-code-indicator (322), -- Called party point code indicator
+ pt-sccp-called-pa-point-code-number (323), -- Called party point code number
+ pt-sccp-called-pa-subsystem-number (324), -- Called party subsystem number
+ pt-sccp-called-pa-gt-numbering-plan (325), -- Called party GT numbering plan
+ pt-sccp-called-pa-gt-encoding-scheme (326), -- Called party GT encoding scheme
+ pt-sccp-called-pa-gt-nature-of-address (327), -- Called party GT nature of address
+ pt-sccp-called-pa-gt-address (328), -- Called party GT address
+ pt-sccp-called-pa-gt-translation-type (329), -- Called party GT translation type
+ pt-sccp-calling-pa-routing-indicator (330), -- Calling party routing indicator
+ pt-sccp-calling-pa-global-title-indicator (331), -- Calling party global title indicator
+ pt-sccp-calling-pa-ssn-indicator (332), -- Calling party subsystem number indicator
+ pt-sccp-calling-pa-point-code-indicator (333), -- Calling party point code indicator
+ pt-sccp-calling-pa-point-code-number (334), -- Calling party point code number
+ pt-sccp-calling-pa-subsystem-number (335), -- Calling party subsystem number
+ pt-sccp-calling-pa-gt-numbering-plan (336), -- Calling party GT numbering plan
+ pt-sccp-calling-pa-gt-encoding-scheme (337), -- Calling party GT encoding scheme
+ pt-sccp-calling-pa-gt-nature-of-address (338), -- Calling party GT nature of address
+ pt-sccp-calling-pa-gt-address (339), -- Calling party GT address
+ pt-sccp-calling-pa-gt-translation-type (340), -- Calling party GT translation type
+ pt-sccp-message-type (341), -- SCCP Message type
+
+ -- M3UA related (2xx)
+ pt-m3ua-info-string (200), -- INFO String
+ pt-m3ua-routing-context (201), -- Routing Context
+ pt-m3ua-diagnostic-info (202), -- Diagnostic Information
+ pt-m3ua-heartbeat (203), -- Heartbeat Data
+ pt-m3ua-traffic-mode-type (204), -- Traffic Mode Type
+ pt-m3ua-error-code (205), -- Error Code
+ pt-m3ua-status (206), -- Status
+ pt-m3ua-asp-identifier (207), -- ASP Identifier
+ pt-m3ua-affected-point-code (208), -- Affected Point Code
+ pt-m3ua-correlation-id (209), -- Correlation ID
+ pt-m3ua-network-appearance (210), -- Network Appearance
+ pt-m3ua-user-cause (211), -- User/Cause
+ pt-m3ua-congestion-indications (212), -- Congestion Indications
+ pt-m3ua-concerned-destination (213), -- Concerned Destination
+ pt-m3ua-routing-key (214), -- Routing Key
+ pt-m3ua-registration-result (215), -- Registration Result
+ pt-m3ua-deregistration-result (216), -- Deregistration Result
+ pt-m3ua-local-routing-key-identifier (217), -- Local-Routing Key Identifier
+ pt-m3ua-destination-point-code (218), -- Destination Point Code
+ pt-m3ua-service-indicators (219), -- Service Indicators
+ pt-m3ua-origination-point-code-list (220), -- Originating Point Code List
+ pt-m3ua-circuit-range (221), -- Circuit Range
+ pt-m3ua-protocol-data (222), -- Protocol Data
+ pt-m3ua-protocol-data-service-indicator (223), -- Protocol Data service indicator (SI)
+ pt-m3ua-protocol-data-network-indicator (224), -- Protocol Data network indicator (NI)
+ pt-m3ua-protocol-data-message-priority (225), -- Protocol Data message priority (MP)
+ pt-m3ua-protocol-data-destination-point-code (226), -- Protocol Data destination point code (DPC)
+ pt-m3ua-protocol-data-originating-point-code (227), -- Protocol Data originating point code (OPC)
+ pt-m3ua-protocol-data-signalling-link-selection-code (228), -- Protocol Data signalling link selection code (SLS)
+ pt-m3ua-registration-status (229), -- Registration Status
+ pt-m3ua-deregistration-status (230), -- Deregistration Status
+ pt-m3ua-header-data (231), -- M3UA header raw data
+ pt-m3ua-as-label (232), -- Application server (AS) label
+ pt-m3ua-asp-label (233) -- Application server process (ASP) label
+}
+
+
+-- ==============================================================
+-- GeneralMessage - reserved for custom daemons and/or future use
+-- ==============================================================
+-- reserved for future use and/or custom daemons
+GeneralMessage ::= ANY
+
+-- =======
+-- HopInfo
+-- =======
+-- current-hop - current hop
+-- max-hops - max hops
+HopInfo ::= SEQUENCE {
+ current-hop [1] INTEGER,
+ max-hops [2] INTEGER,
+ ...
+}
+
+-- =========
+-- ErrorCode
+-- =========
+ErrorCode ::= INTEGER {
+ err-ok (0),
+ err-out-of-sequence (1),
+ err-unknown-sequence (2),
+ err-unsupported-version (3),
+ err-timeout (4),
+ err-unknown-route (5),
+ err-routing-not-supported (6),
+ err-max-hops-exceeded (7),
+ err-unknown-error (255)
+}
+
+-- ============
+-- GDT Message
+-- ============
+-- header - packet header
+-- body - packet body
+GDTMessage ::= SEQUENCE {
+ header Header,
+ body Body OPTIONAL,
+ ...
+}
+
+
+-- ================================================================================================================
+-- EncryptionInfo
+-- ================================================================================================================
+-- enc-type - cipher type
+-------------------------------------------------------------------------------------------------------------------
+-- base64 - Base64 Encoding
+-- bf bf-cbc bf-cfb bf-ecb bf-ofb - Blowfish Cipher
+-- cast cast-cbc - CAST Cipher
+-- cast5-cbc cast5-cfb cast5-ecb cast5-ofb - CAST5 Cipher
+-- des des-cbc des-cfb des-ecb des-ede des-ede-cbc des-ede-cfb des-ede-ofb des-ofb - DES Cipher
+-- des3 desx des-ede3 des-ede3-cbc des-ede3-cfb des-ede3-ofb - Triple-DES Cipher
+-- idea idea-cbc idea-cfb idea-ecb idea-ofb - IDEA Cipher
+-- rc2 rc2-cbc rc2-cfb rc2-ecb rc2-ofb - RC2 Cipher
+-- rc4 - RC4 Cipher
+-- rc5 rc5-cbc rc5-cfb rc5-ecb rc5-ofb - RC5 Cipher
+-------------------------------------------------------------------------------------------------------------------
+-- params - cipher related parameters
+-------------------------------------------------------------------------------------------------------------------
+
+EncryptionInfo ::= SEQUENCE {
+ enc-type OCTET STRING,
+ params Parameters OPTIONAL,
+ ...
+}
+
+
+
+END
diff --git a/epan/dissectors/asn1/gdt/gdt.cnf b/epan/dissectors/asn1/gdt/gdt.cnf
new file mode 100644
index 0000000000..c5910e3ee8
--- /dev/null
+++ b/epan/dissectors/asn1/gdt/gdt.cnf
@@ -0,0 +1,30 @@
+# gdt.cnf
+# GDT conformation file
+
+# $Id$
+
+#.MODULE_IMPORT
+
+#.EXPORTS
+
+#.PDU
+GDTMessage
+
+#.NO_EMIT
+
+#.OMIT_ASSIGNMENT
+GeneralMessage
+FilterResultType
+PdCommandId
+
+#.TYPE_RENAME
+
+#.FIELD_RENAME
+EndPointDescriptor/id end_point_id
+Parameter/id parameter_type_id
+
+#.FIELD_ATTR
+EndPointDescriptor/id ABBREV=end_point_id
+Parameter/id ABBREV=parameter_type_id
+
+#.END
diff --git a/epan/dissectors/asn1/gdt/packet-gdt-template.c b/epan/dissectors/asn1/gdt/packet-gdt-template.c
new file mode 100644
index 0000000000..700ac5763c
--- /dev/null
+++ b/epan/dissectors/asn1/gdt/packet-gdt-template.c
@@ -0,0 +1,94 @@
+/* packet-gdt-template.c
+ *
+ * Copyright 2022, Damir Franusic <damir.franusic@gmail.com>
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+
+# include "config.h"
+
+#include <glib.h>
+#include <epan/packet.h>
+#include <epan/conversation.h>
+#include <epan/sctpppids.h>
+
+#include <stdio.h>
+#include <string.h>
+
+#include "packet-ber.h"
+#include "packet-gdt.h"
+
+#define PNAME "Generic Data Transfer Protocol"
+#define PSNAME "GDT"
+#define PFNAME "gdt"
+
+/* Initialize the protocol and registered fields */
+static int proto_gdt;
+static dissector_handle_t gdt_handle = NULL;
+
+#include "packet-gdt-hf.c"
+
+/* Initialize the subtree pointers */
+static int ett_gdt;
+#include "packet-gdt-ett.c"
+
+#include "packet-gdt-fn.c"
+
+static int dissect_gdt(tvbuff_t *tvb,
+ packet_info *pinfo,
+ proto_tree *tree,
+ void *data _U_) {
+ proto_item *gdt_item = NULL;
+ proto_tree *gdt_tree = NULL;
+
+ /* make entry in the Protocol column on summary display */
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, PNAME);
+
+ /* create the gdt protocol tree */
+ if (tree) {
+ gdt_item = proto_tree_add_item(tree, proto_gdt, tvb, 0, -1, ENC_NA);
+ gdt_tree = proto_item_add_subtree(gdt_item, ett_gdt);
+ dissect_GDTMessage_PDU(tvb, pinfo, gdt_tree, 0);
+ }
+ return tvb_captured_length(tvb);
+}
+
+/*--- proto_register_gdt ----------------------------------------------*/
+void proto_register_gdt(void) {
+ /* List of fields */
+ static hf_register_info hf[] = {
+#include "packet-gdt-hfarr.c"
+ };
+
+ /* List of subtrees */
+ static gint *ett[] = {
+ &ett_gdt,
+#include "packet-gdt-ettarr.c"
+ };
+
+ /* Register protocol */
+ proto_gdt = proto_register_protocol(PNAME, PSNAME, PFNAME);
+
+ /* Register fields and subtrees */
+ proto_register_field_array(proto_gdt, hf, array_length(hf));
+ proto_register_subtree_array(ett, array_length(ett));
+
+ /* Register dissector */
+ gdt_handle = register_dissector("gdt", dissect_gdt, proto_gdt);
+}
+
+/*--- proto_reg_handoff_gdt -------------------------------------------*/
+void proto_reg_handoff_gdt(void) {
+ static gboolean initialized = FALSE;
+
+ if (!initialized) {
+ dissector_add_for_decode_as("sctp.ppi", gdt_handle);
+ dissector_add_uint("sctp.ppi", GDT_PROTOCOL_ID, gdt_handle);
+ initialized = TRUE;
+ }
+}
diff --git a/epan/dissectors/asn1/gdt/packet-gdt-template.h b/epan/dissectors/asn1/gdt/packet-gdt-template.h
new file mode 100644
index 0000000000..a24ba44667
--- /dev/null
+++ b/epan/dissectors/asn1/gdt/packet-gdt-template.h
@@ -0,0 +1,19 @@
+/* packet-gdt-template.h
+ *
+ * Copyright 2022, Damir Franusic <damir.franusic@gmail.com>
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+
+#ifndef PACKET_GDT_H
+#define PACKET_GDT_H
+
+void proto_register_gdt(void);
+void proto_reg_handoff_gdt(void);
+
+#endif /* PACKET_GDT_H */
diff --git a/epan/dissectors/asn1/glow/packet-glow-template.c b/epan/dissectors/asn1/glow/packet-glow-template.c
index af6f16fb20..0f39fbc8e9 100644
--- a/epan/dissectors/asn1/glow/packet-glow-template.c
+++ b/epan/dissectors/asn1/glow/packet-glow-template.c
@@ -13,6 +13,7 @@
# include "config.h"
#include <epan/packet.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#define PNAME "Glow"
@@ -22,12 +23,12 @@
void proto_register_glow(void);
static dissector_handle_t glow_handle=NULL;
-static int proto_glow = -1;
+static int proto_glow;
#include "packet-glow-hf.c"
/* Initialize the subtree pointers */
-static int ett_glow = -1;
+static int ett_glow;
#include "packet-glow-ett.c"
diff --git a/epan/dissectors/asn1/goose/goose.cnf b/epan/dissectors/asn1/goose/goose.cnf
index d70db3fb48..aee647c50d 100644
--- a/epan/dissectors/asn1/goose/goose.cnf
+++ b/epan/dissectors/asn1/goose/goose.cnf
@@ -11,7 +11,7 @@
GOOSEpdu
#.FN_BODY IECGoosePdu/simulation VAL_PTR = &value
- gboolean value;
+ bool value;
guint32 len = tvb_reported_length_remaining(tvb, offset);
int origin_offset = offset;
%(DEFAULT_BODY)s
@@ -41,7 +41,7 @@ GOOSEpdu
if(len != 8)
{
proto_tree_add_expert(tree, actx->pinfo, &ei_goose_mal_utctime, tvb, offset, len);
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
}
@@ -57,7 +57,7 @@ GOOSEpdu
ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, TRUE);
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
}
@@ -68,12 +68,11 @@ GOOSEpdu
int len = tvb_reported_length_remaining(tvb, offset);
+ %(DEFAULT_BODY)s
if ((len == FLOAT_ENC_LENGTH) && (tvb_get_guint8(tvb,0) == SINGLE_FLOAT_EXP_BITS) ){
/* IEEE 754 single precision floating point */
+ proto_item_set_hidden(actx->created_item);
proto_tree_add_item(tree, hf_goose_float_value, tvb, 1, (FLOAT_ENC_LENGTH-1), ENC_BIG_ENDIAN);
- offset = len;
- }else{
- %(DEFAULT_BODY)s
}
#.END
diff --git a/epan/dissectors/asn1/goose/packet-goose-template.c b/epan/dissectors/asn1/goose/packet-goose-template.c
index 142a272ee0..ad03235ccc 100644
--- a/epan/dissectors/asn1/goose/packet-goose-template.c
+++ b/epan/dissectors/asn1/goose/packet-goose-template.c
@@ -16,6 +16,7 @@
#include <epan/packet.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include <epan/etypes.h>
#include <epan/expert.h>
@@ -34,40 +35,40 @@ void proto_register_goose(void);
void proto_reg_handoff_goose(void);
/* Initialize the protocol and registered fields */
-static int proto_goose = -1;
-static int proto_r_goose = -1;
-
-static int hf_goose_session_header = -1;
-static int hf_goose_spdu_id = -1;
-static int hf_goose_session_hdr_length = -1;
-static int hf_goose_hdr_length = -1;
-static int hf_goose_content_id = -1;
-static int hf_goose_spdu_lenth = -1;
-static int hf_goose_spdu_num = -1;
-static int hf_goose_version = -1;
-static int hf_goose_security_info = -1;
-static int hf_goose_current_key_t = -1;
-static int hf_goose_next_key_t = -1;
-static int hf_goose_key_id = -1;
-static int hf_goose_init_vec_length = -1;
-static int hf_goose_init_vec = -1;
-static int hf_goose_session_user_info = -1;
-static int hf_goose_payload = -1;
-static int hf_goose_payload_length = -1;
-static int hf_goose_apdu_tag = -1;
-static int hf_goose_apdu_simulation = -1;
-static int hf_goose_apdu_appid = -1;
-static int hf_goose_apdu_length = -1;
-static int hf_goose_padding_tag = -1;
-static int hf_goose_padding_length = -1;
-static int hf_goose_padding = -1;
-static int hf_goose_hmac = -1;
-static int hf_goose_appid = -1;
-static int hf_goose_length = -1;
-static int hf_goose_reserve1 = -1;
-static int hf_goose_reserve1_s_bit = -1;
-static int hf_goose_reserve2 = -1;
-static int hf_goose_float_value = -1;
+static int proto_goose;
+static int proto_r_goose;
+
+static int hf_goose_session_header;
+static int hf_goose_spdu_id;
+static int hf_goose_session_hdr_length;
+static int hf_goose_hdr_length;
+static int hf_goose_content_id;
+static int hf_goose_spdu_lenth;
+static int hf_goose_spdu_num;
+static int hf_goose_version;
+static int hf_goose_security_info;
+static int hf_goose_current_key_t;
+static int hf_goose_next_key_t;
+static int hf_goose_key_id;
+static int hf_goose_init_vec_length;
+static int hf_goose_init_vec;
+static int hf_goose_session_user_info;
+static int hf_goose_payload;
+static int hf_goose_payload_length;
+static int hf_goose_apdu_tag;
+static int hf_goose_apdu_simulation;
+static int hf_goose_apdu_appid;
+static int hf_goose_apdu_length;
+static int hf_goose_padding_tag;
+static int hf_goose_padding_length;
+static int hf_goose_padding;
+static int hf_goose_hmac;
+static int hf_goose_appid;
+static int hf_goose_length;
+static int hf_goose_reserve1;
+static int hf_goose_reserve1_s_bit;
+static int hf_goose_reserve2;
+static int hf_goose_float_value;
/* Bit fields in the Reserved fields */
@@ -79,9 +80,9 @@ typedef struct _goose_chk_data{
}goose_chk_data_t;
#define GOOSE_CHK_DATA_LEN (sizeof(goose_chk_data_t))
-static expert_field ei_goose_mal_utctime = EI_INIT;
-static expert_field ei_goose_zero_pdu = EI_INIT;
-static expert_field ei_goose_invalid_sim = EI_INIT;
+static expert_field ei_goose_mal_utctime;
+static expert_field ei_goose_zero_pdu;
+static expert_field ei_goose_invalid_sim;
#define SINGLE_FLOAT_EXP_BITS 8
#define FLOAT_ENC_LENGTH 5
@@ -89,22 +90,21 @@ static expert_field ei_goose_invalid_sim = EI_INIT;
#include "packet-goose-hf.c"
/* Initialize the subtree pointers */
-static int ett_r_goose = -1;
-static int ett_session_header = -1;
-static int ett_security_info = -1;
-static int ett_session_user_info = -1;
-static int ett_payload = -1;
-static int ett_padding = -1;
-static int ett_goose = -1;
-static int ett_reserve1 = -1;
-static int ett_expert_inf_sim = -1;
+static int ett_r_goose;
+static int ett_session_header;
+static int ett_security_info;
+static int ett_session_user_info;
+static int ett_payload;
+static int ett_padding;
+static int ett_goose;
+static int ett_reserve1;
+static int ett_expert_inf_sim;
#include "packet-goose-ett.c"
#include "packet-goose-fn.c"
static dissector_handle_t goose_handle = NULL;
-static dissector_handle_t ositp_handle = NULL;
#define OSI_SPDU_TUNNELED 0xA0 /* Tunneled */
@@ -165,6 +165,7 @@ dissect_goose(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree,
item = proto_tree_add_item(parent_tree, proto_goose, tvb, 0, -1, ENC_NA);
tree = proto_item_add_subtree(item, ett_goose);
+ add_ber_encoded_label(tvb, pinfo, parent_tree);
/* APPID */
@@ -397,41 +398,6 @@ dissect_rgoose_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree,
return TRUE;
}
-static gboolean
-dissect_cltp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree,
- void *data _U_)
-{
- guint8 li, tpdu, spdu;
-
- /* First, check do we have at least 2 bytes (length + tpdu) */
- if (tvb_captured_length(tvb) < 2) {
- return FALSE;
- }
-
- li = tvb_get_guint8(tvb, 0);
-
- /* Is it OSI on top of the UDP? */
- tpdu = (tvb_get_guint8(tvb, 1) & 0xF0) >> 4;
- if (tpdu != 0x4) {
- return FALSE;
- }
-
- /* Check do we have SPDU ID byte, too */
- if (tvb_captured_length(tvb) < (guint) (li + 2)) {
- return FALSE;
- }
-
- /* And let's see if it is GOOSE SPDU */
- spdu = tvb_get_guint8(tvb, li + 1);
- if (spdu != OSI_SPDU_GOOSE) {
- return FALSE;
- }
-
- call_dissector(ositp_handle, tvb, pinfo, parent_tree);
- return TRUE;
-}
-
-
/*--- proto_register_goose -------------------------------------------*/
void proto_register_goose(void) {
@@ -612,10 +578,6 @@ void proto_reg_handoff_goose(void) {
dissector_add_uint("ethertype", ETHERTYPE_IEC61850_GOOSE, goose_handle);
- ositp_handle = find_dissector_add_dependency("ositp", proto_goose);
-
- heur_dissector_add("udp", dissect_cltp_heur,
- "CLTP over UDP", "cltp_udp", proto_goose, HEURISTIC_ENABLE);
heur_dissector_add("cltp", dissect_rgoose_heur,
"R-GOOSE (GOOSE over CLTP)", "rgoose_cltp", proto_goose, HEURISTIC_ENABLE);
}
diff --git a/epan/dissectors/asn1/gprscdr/GPRSChargingDataTypes.asn b/epan/dissectors/asn1/gprscdr/GPRSChargingDataTypes.asn
index ba203e9d7e..016086db1f 100644
--- a/epan/dissectors/asn1/gprscdr/GPRSChargingDataTypes.asn
+++ b/epan/dissectors/asn1/gprscdr/GPRSChargingDataTypes.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 32.298 v16.7.0 (2020-12-17)
+-- 3GPP TS 32.298 v18.2.0 (2023-06-23)
--
GPRSChargingDataTypes {itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) charging (5) gprsChargingDataTypes (2) asn1Module (0) version2 (1)}
DEFINITIONS IMPLICIT TAGS ::=
diff --git a/epan/dissectors/asn1/gprscdr/GenericChargingDataTypes.asn b/epan/dissectors/asn1/gprscdr/GenericChargingDataTypes.asn
index 1c195c1ec2..553c1b4e5a 100644
--- a/epan/dissectors/asn1/gprscdr/GenericChargingDataTypes.asn
+++ b/epan/dissectors/asn1/gprscdr/GenericChargingDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 32.298 v16.7.0 (2020-12-17)
+-- 3GPP TS 32.298 v18.2.0 (2023-06-23)
GenericChargingDataTypes {itu-t (0) identified-organization (4) etsi(0) mobileDomain (0) charging (5) genericChargingDataTypes (0) asn1Module (0) version2 (1)}
DEFINITIONS IMPLICIT TAGS ::=
diff --git a/epan/dissectors/asn1/gprscdr/gprscdr.cnf b/epan/dissectors/asn1/gprscdr/gprscdr.cnf
index 8694ce6705..c3c85b3eed 100644
--- a/epan/dissectors/asn1/gprscdr/gprscdr.cnf
+++ b/epan/dissectors/asn1/gprscdr/gprscdr.cnf
@@ -24,6 +24,8 @@ MessageClass
MSCAddress
#.EXPORTS
+CAMELInformationPDP
+CAMELInformationPDP_PDU
GPRSCallEventRecord
GPRSCallEventRecord_PDU
GPRSRecord
@@ -43,10 +45,10 @@ IPBinaryAddress/iPBinV6Address iPBinV6Address_choice
IPBinaryAddress/iPBinV6Address ABBREV=iPBinV6Address_choice
#.PDU
+CAMELInformationPDP
GPRSCallEventRecord
GPRSRecord
-
# Get the OID
#.FN_PARS ManagementExtension/identifier FN_VARIANT = _str VAL_PTR = &obj_id
diff --git a/epan/dissectors/asn1/gprscdr/packet-gprscdr-template.c b/epan/dissectors/asn1/gprscdr/packet-gprscdr-template.c
index 3481964b1c..595bebd653 100644
--- a/epan/dissectors/asn1/gprscdr/packet-gprscdr-template.c
+++ b/epan/dissectors/asn1/gprscdr/packet-gprscdr-template.c
@@ -1,12 +1,15 @@
/* packet-gprscdr-template.c
* Copyright 2011 , Anders Broman <anders.broman [AT] ericsson.com>
*
+ * Updates and corrections:
+ * Copyright 2018-2022, Joakim Karlsson <oakimk@gmail.com>
+ *
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
* Copyright 1998 Gerald Combs
*
* SPDX-License-Identifier: GPL-2.0-or-later
- * References: 3GPP TS 32.298 V16.7.0
+ * References: 3GPP TS 32.298 V17.4.0
*/
#include "config.h"
@@ -30,21 +33,21 @@
void proto_register_gprscdr(void);
/* Define the GPRS CDR proto */
-static int proto_gprscdr = -1;
+static int proto_gprscdr;
#include "packet-gprscdr-hf.c"
-static int ett_gprscdr = -1;
-static int ett_gprscdr_timestamp = -1;
-static int ett_gprscdr_plmn_id = -1;
-static int ett_gprscdr_pdp_pdn_type = -1;
-static int ett_gprscdr_eps_qos_arp = -1;
-static int ett_gprscdr_managementextension_information = -1;
-static int ett_gprscdr_userlocationinformation = -1;
+static int ett_gprscdr;
+static int ett_gprscdr_timestamp;
+static int ett_gprscdr_plmn_id;
+static int ett_gprscdr_pdp_pdn_type;
+static int ett_gprscdr_eps_qos_arp;
+static int ett_gprscdr_managementextension_information;
+static int ett_gprscdr_userlocationinformation;
#include "packet-gprscdr-ett.c"
-static expert_field ei_gprscdr_not_dissected = EI_INIT;
-static expert_field ei_gprscdr_choice_not_found = EI_INIT;
+static expert_field ei_gprscdr_not_dissected;
+static expert_field ei_gprscdr_choice_not_found;
/* Global variables */
static const char *obj_id = NULL;
diff --git a/epan/dissectors/asn1/gsm_map/GSMMAP.asn b/epan/dissectors/asn1/gsm_map/GSMMAP.asn
index 3b5ecad9cd..d4e1753fdc 100644
--- a/epan/dissectors/asn1/gsm_map/GSMMAP.asn
+++ b/epan/dissectors/asn1/gsm_map/GSMMAP.asn
@@ -30,7 +30,8 @@ IMPORTS
ProtocolId,
SignalInfo,
TeleserviceCode,
- SubscriberIdentity
+ SubscriberIdentity,
+ SubscriberId
FROM MAP-CommonDataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
@@ -712,7 +713,7 @@ LocationInfo ::= CHOICE {
Ki ::= OCTET STRING (SIZE (16))
SendParametersArg ::= SEQUENCE {
- subscriberId SubscriberIdentity,
+ subscriberId SubscriberId,
requestParameterList RequestParameterList}
RequestParameter ::= ENUMERATED {
diff --git a/epan/dissectors/asn1/gsm_map/gsm_map.cnf b/epan/dissectors/asn1/gsm_map/gsm_map.cnf
index abe0ac0009..cbbc8fca7e 100644
--- a/epan/dissectors/asn1/gsm_map/gsm_map.cnf
+++ b/epan/dissectors/asn1/gsm_map/gsm_map.cnf
@@ -51,7 +51,6 @@ NumberPorted/_untag
Code
Priority
CommonComponentId
-SubscriberId
GuidanceInfo
SS-InfoList
# Omitting SubscriberData makes CONTENT OF fail and InsertSubscriberDataArg will not get all its tags
@@ -294,7 +293,7 @@ MAP-DialoguePDU B "0.4.0.0.1.1.1.1" "map-DialogueAS"
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_gsm_map_tbcd_digits);
- proto_tree_add_item(subtree, hf_gsm_map_TBCD_digits, parameter_tvb, 0, -1, ENC_KEYPAD_ABC_TBCD);
+ proto_tree_add_item(subtree, hf_gsm_map_TBCD_digits, parameter_tvb, 0, -1, ENC_KEYPAD_ABC_TBCD|ENC_LITTLE_ENDIAN);
#----------------------------------------------------------------------------------------
#.FN_BODY LongSignalInfo VAL_PTR = &parameter_tvb
@@ -690,7 +689,7 @@ MAP-DialoguePDU B "0.4.0.0.1.1.1.1" "map-DialogueAS"
break;
case SMS_ENCODING_8BIT:
/* XXX - ASCII, or some extended ASCII? */
- proto_tree_add_item(subtree, hf_gsm_map_ussd_string, parameter_tvb, 0, length, ENC_ASCII|ENC_NA);
+ proto_tree_add_item(subtree, hf_gsm_map_ussd_string, parameter_tvb, 0, length, ENC_ASCII);
break;
case SMS_ENCODING_UCS2:
case SMS_ENCODING_UCS2_LANG:
@@ -907,7 +906,7 @@ if (!gsm_map_priv || !gsm_map_priv->signal_info_tvb)
case 1:
/* gsm-0408 */
/* As per comment abowe Individual IE:(s) will be found here in TLV format
- * Unfortunatly a branch for each IE must be made to call the apropriate
+ * Unfortunately a branch for each IE must be made to call the appropriate
* function
*/
/* Get tag */
@@ -989,7 +988,7 @@ MAP interfaces
case 1:
/* gsm-0408 */
/* As per comment abowe Individual IE:(s) will be found here in TLV format
- * Unfortunatly a branch for each IE must be made to call the apropriate
+ * Unfortunately a branch for each IE must be made to call the appropriate
* function
*/
/* Get tag */
@@ -1205,7 +1204,7 @@ Ext-TeleserviceCode TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(Teleserv
Ext-BearerServiceCode TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(Bearerservice_vals)
ChargingCharacteristics TYPE = FT_UINT16 DISPLAY = BASE_DEC BITMASK = 0x0f00 STRINGS = VALS(chargingcharacteristics_values)
RoutingInfo TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(gsm_map_ch_RoutingInfo_vals)
-DiameterIdentity TYPE = FT_STRING DISPLAY = STR_ASCII
+DiameterIdentity TYPE = FT_STRING DISPLAY = BASE_NONE
#----------------------------------------------------------------------------------------
#.FIELD_ATTR
diff --git a/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c b/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c
index e98eb814cc..657323a9b8 100644
--- a/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c
+++ b/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c
@@ -66,133 +66,132 @@ void proto_register_gsm_map(void);
void proto_reg_handoff_gsm_map(void);
/* Initialize the protocol and registered fields */
-static int proto_gsm_map = -1;
-static int proto_gsm_map_dialogue = -1;
-static int proto_gsm_map_ms = -1;
-
-static int hf_gsm_map_old_Component_PDU = -1;
-static int hf_gsm_map_getPassword = -1;
-static int hf_gsm_map_currentPassword = -1;
-static int hf_gsm_map_extension = -1;
-static int hf_gsm_map_nature_of_number = -1;
-static int hf_gsm_map_number_plan = -1;
-static int hf_gsm_map_address_digits = -1;
-static int hf_gsm_map_TBCD_digits = -1;
-static int hf_gsm_map_Ss_Status_unused = -1;
-static int hf_gsm_map_Ss_Status_q_bit = -1;
-static int hf_gsm_map_Ss_Status_p_bit = -1;
-static int hf_gsm_map_Ss_Status_r_bit = -1;
-static int hf_gsm_map_Ss_Status_a_bit = -1;
-static int hf_gsm_map_notification_to_forwarding_party = -1;
-static int hf_gsm_map_redirecting_presentation = -1;
-static int hf_gsm_map_notification_to_calling_party = -1;
-static int hf_gsm_map_forwarding_reason = -1;
-static int hf_gsm_map_pdp_type_org = -1;
-static int hf_gsm_map_etsi_pdp_type_number = -1;
-static int hf_gsm_map_ietf_pdp_type_number = -1;
-static int hf_gsm_map_ext_qos_subscribed_pri = -1;
-
-static int hf_gsm_map_qos_traffic_cls = -1;
-static int hf_gsm_map_qos_del_order = -1;
-static int hf_gsm_map_qos_del_of_err_sdu = -1;
-static int hf_gsm_map_qos_ber = -1;
-static int hf_gsm_map_qos_sdu_err_rat = -1;
-static int hf_gsm_map_qos_traff_hdl_pri = -1;
-static int hf_gsm_map_qos_max_sdu = -1;
-static int hf_gsm_map_max_brate_ulink = -1;
-static int hf_gsm_map_max_brate_dlink = -1;
-static int hf_gsm_map_qos_transfer_delay = -1;
-static int hf_gsm_map_guaranteed_max_brate_ulink = -1;
-static int hf_gsm_map_guaranteed_max_brate_dlink = -1;
-static int hf_gsm_map_GSNAddress_IPv4 = -1;
-static int hf_gsm_map_GSNAddress_IPv6 = -1;
-static int hf_gsm_map_ranap_service_Handover = -1;
-static int hf_gsm_map_IntegrityProtectionInformation = -1;
-static int hf_gsm_map_EncryptionInformation = -1;
-static int hf_gsm_map_ss_SS_UserData = -1;
-static int hf_gsm_map_cbs_coding_grp = -1;
-static int hf_gsm_map_cbs_coding_grp0_lang = -1;
-static int hf_gsm_map_cbs_coding_grp1_lang = -1;
-static int hf_gsm_map_cbs_coding_grp2_lang = -1;
-static int hf_gsm_map_cbs_coding_grp3_lang = -1;
-static int hf_gsm_map_cbs_coding_grp4_7_comp = -1;
-static int hf_gsm_map_cbs_coding_grp4_7_class_ind = -1;
-static int hf_gsm_map_cbs_coding_grp4_7_char_set = -1;
-static int hf_gsm_map_cbs_coding_grp4_7_class = -1;
-static int hf_gsm_map_cbs_coding_grp15_mess_code = -1;
-static int hf_gsm_map_cbs_coding_grp15_class = -1;
-static int hf_gsm_map_tmsi = -1;
-static int hf_gsm_map_ie_tag = -1;
-static int hf_gsm_map_len = -1;
-static int hf_gsm_map_disc_par = -1;
-static int hf_gsm_map_dlci = -1;
-static int hf_gsm_apn_str = -1;
-static int hf_gsm_map_ericsson_locationInformation_rat = -1;
-static int hf_gsm_map_ericsson_locationInformation_lac = -1;
-static int hf_gsm_map_ericsson_locationInformation_ci = -1;
-static int hf_gsm_map_ericsson_locationInformation_sac = -1;
-static int hf_gsm_map_ussd_string = -1;
-static int hf_gsm_map_spare_bits = -1;
-static int hf_gsm_map_qos_signalling_ind = -1;
-static int hf_gsm_map_qos_source_stat_desc = - 1;
-static int hf_gsm_map_qos_max_bitrate_upl_ext = -1;
-static int hf_gsm_map_qos_max_bitrate_downl_ext = -1;
-static int hf_gsm_map_qos_guar_bitrate_upl_ext = -1;
-static int hf_gsm_map_qos_guar_bitrate_downl_ext = -1;
+static int proto_gsm_map;
+static int proto_gsm_map_dialogue;
+static int proto_gsm_map_ms;
+
+static int hf_gsm_map_old_Component_PDU;
+static int hf_gsm_map_getPassword;
+static int hf_gsm_map_currentPassword;
+static int hf_gsm_map_extension;
+static int hf_gsm_map_nature_of_number;
+static int hf_gsm_map_number_plan;
+static int hf_gsm_map_address_digits;
+static int hf_gsm_map_TBCD_digits;
+static int hf_gsm_map_Ss_Status_unused;
+static int hf_gsm_map_Ss_Status_q_bit;
+static int hf_gsm_map_Ss_Status_p_bit;
+static int hf_gsm_map_Ss_Status_r_bit;
+static int hf_gsm_map_Ss_Status_a_bit;
+static int hf_gsm_map_notification_to_forwarding_party;
+static int hf_gsm_map_redirecting_presentation;
+static int hf_gsm_map_notification_to_calling_party;
+static int hf_gsm_map_forwarding_reason;
+static int hf_gsm_map_pdp_type_org;
+static int hf_gsm_map_etsi_pdp_type_number;
+static int hf_gsm_map_ietf_pdp_type_number;
+static int hf_gsm_map_ext_qos_subscribed_pri;
+
+static int hf_gsm_map_qos_traffic_cls;
+static int hf_gsm_map_qos_del_order;
+static int hf_gsm_map_qos_del_of_err_sdu;
+static int hf_gsm_map_qos_ber;
+static int hf_gsm_map_qos_sdu_err_rat;
+static int hf_gsm_map_qos_traff_hdl_pri;
+static int hf_gsm_map_qos_max_sdu;
+static int hf_gsm_map_max_brate_ulink;
+static int hf_gsm_map_max_brate_dlink;
+static int hf_gsm_map_qos_transfer_delay;
+static int hf_gsm_map_guaranteed_max_brate_ulink;
+static int hf_gsm_map_guaranteed_max_brate_dlink;
+static int hf_gsm_map_GSNAddress_IPv4;
+static int hf_gsm_map_GSNAddress_IPv6;
+static int hf_gsm_map_ranap_service_Handover;
+static int hf_gsm_map_IntegrityProtectionInformation;
+static int hf_gsm_map_EncryptionInformation;
+static int hf_gsm_map_ss_SS_UserData;
+static int hf_gsm_map_cbs_coding_grp;
+static int hf_gsm_map_cbs_coding_grp0_lang;
+static int hf_gsm_map_cbs_coding_grp1_lang;
+static int hf_gsm_map_cbs_coding_grp2_lang;
+static int hf_gsm_map_cbs_coding_grp3_lang;
+static int hf_gsm_map_cbs_coding_grp4_7_comp;
+static int hf_gsm_map_cbs_coding_grp4_7_class_ind;
+static int hf_gsm_map_cbs_coding_grp4_7_char_set;
+static int hf_gsm_map_cbs_coding_grp4_7_class;
+static int hf_gsm_map_cbs_coding_grp15_mess_code;
+static int hf_gsm_map_cbs_coding_grp15_class;
+static int hf_gsm_map_ie_tag;
+static int hf_gsm_map_len;
+static int hf_gsm_map_disc_par;
+static int hf_gsm_map_dlci;
+static int hf_gsm_apn_str;
+static int hf_gsm_map_ericsson_locationInformation_rat;
+static int hf_gsm_map_ericsson_locationInformation_lac;
+static int hf_gsm_map_ericsson_locationInformation_ci;
+static int hf_gsm_map_ericsson_locationInformation_sac;
+static int hf_gsm_map_ussd_string;
+static int hf_gsm_map_spare_bits;
+static int hf_gsm_map_qos_signalling_ind;
+static int hf_gsm_map_qos_source_stat_desc;
+static int hf_gsm_map_qos_max_bitrate_upl_ext;
+static int hf_gsm_map_qos_max_bitrate_downl_ext;
+static int hf_gsm_map_qos_guar_bitrate_upl_ext;
+static int hf_gsm_map_qos_guar_bitrate_downl_ext;
/*
-static int hf_gsm_map_qos_max_bitrate_upl_ext2 = -1;
-static int hf_gsm_map_qos_max_bitrate_downl_ext2 = -1;
-static int hf_gsm_map_qos_guar_bitrate_upl_ext2 = -1;
-static int hf_gsm_map_qos_guar_bitrate_downl_ext2 = -1;
+static int hf_gsm_map_qos_max_bitrate_upl_ext2;
+static int hf_gsm_map_qos_max_bitrate_downl_ext2;
+static int hf_gsm_map_qos_guar_bitrate_upl_ext2;
+static int hf_gsm_map_qos_guar_bitrate_downl_ext2;
*/
-static int hf_gsm_map_earp_pci = -1;
-static int hf_gsm_map_earp_pl = -1;
-static int hf_gsm_map_earp_pvi = -1;
+static int hf_gsm_map_earp_pci;
+static int hf_gsm_map_earp_pl;
+static int hf_gsm_map_earp_pvi;
#include "packet-gsm_map-hf.c"
/* Initialize the subtree pointers */
-static gint ett_gsm_map = -1;
-static gint ett_gsm_map_InvokeId = -1;
-static gint ett_gsm_map_InvokePDU = -1;
-static gint ett_gsm_map_ReturnResultPDU = -1;
-static gint ett_gsm_map_ReturnErrorPDU = -1;
-static gint ett_gsm_map_ReturnResult_result = -1;
-static gint ett_gsm_map_ReturnError_result = -1;
-static gint ett_gsm_map_GSMMAPPDU = -1;
-static gint ett_gsm_map_ext_qos_subscribed = -1;
-static gint ett_gsm_map_pdptypenumber = -1;
-static gint ett_gsm_map_RAIdentity = -1;
-static gint ett_gsm_map_LAIFixedLength = -1;
-static gint ett_gsm_map_isdn_address_string = -1;
-static gint ett_gsm_map_geo_desc = -1;
-static gint ett_gsm_map_LongSignalInfo = -1;
-static gint ett_gsm_map_RadioResourceInformation =-1;
-static gint ett_gsm_map_MSNetworkCapability =-1;
-static gint ett_gsm_map_MSRadioAccessCapability = -1;
-static gint ett_gsm_map_externalsignalinfo = -1;
-static gint ett_gsm_map_cbs_data_coding = -1;
-static gint ett_gsm_map_GlobalCellId = -1;
-static gint ett_gsm_map_GeographicalInformation = -1;
-static gint ett_gsm_map_apn_str = -1;
-static gint ett_gsm_map_LocationNumber = -1;
-static gint ett_gsm_map_ericsson_locationInformation = -1;
-static gint ett_gsm_map_extension_data = -1;
-static gint ett_gsm_map_tbcd_digits = -1;
-static gint ett_gsm_map_ussd_string = -1;
-static gint ett_gsm_map_ext2_qos_subscribed = -1;
-static gint ett_gsm_map_ext3_qos_subscribed = -1;
-static gint ett_gsm_map_e_utranCellGlobalIdentity = -1;
-static gint ett_gsm_map_TA_id = -1;
-static gint ett_gsm_map_GeodeticInformation = -1;
+static gint ett_gsm_map;
+static gint ett_gsm_map_InvokeId;
+static gint ett_gsm_map_InvokePDU;
+static gint ett_gsm_map_ReturnResultPDU;
+static gint ett_gsm_map_ReturnErrorPDU;
+static gint ett_gsm_map_ReturnResult_result;
+static gint ett_gsm_map_ReturnError_result;
+static gint ett_gsm_map_GSMMAPPDU;
+static gint ett_gsm_map_ext_qos_subscribed;
+static gint ett_gsm_map_pdptypenumber;
+static gint ett_gsm_map_RAIdentity;
+static gint ett_gsm_map_LAIFixedLength;
+static gint ett_gsm_map_isdn_address_string;
+static gint ett_gsm_map_geo_desc;
+static gint ett_gsm_map_LongSignalInfo;
+static gint ett_gsm_map_RadioResourceInformation;
+static gint ett_gsm_map_MSNetworkCapability;
+static gint ett_gsm_map_MSRadioAccessCapability;
+static gint ett_gsm_map_externalsignalinfo;
+static gint ett_gsm_map_cbs_data_coding;
+static gint ett_gsm_map_GlobalCellId;
+static gint ett_gsm_map_GeographicalInformation;
+static gint ett_gsm_map_apn_str;
+static gint ett_gsm_map_LocationNumber;
+static gint ett_gsm_map_ericsson_locationInformation;
+static gint ett_gsm_map_extension_data;
+static gint ett_gsm_map_tbcd_digits;
+static gint ett_gsm_map_ussd_string;
+static gint ett_gsm_map_ext2_qos_subscribed;
+static gint ett_gsm_map_ext3_qos_subscribed;
+static gint ett_gsm_map_e_utranCellGlobalIdentity;
+static gint ett_gsm_map_TA_id;
+static gint ett_gsm_map_GeodeticInformation;
#include "packet-gsm_map-ett.c"
-static expert_field ei_gsm_map_unknown_sequence3 = EI_INIT;
-static expert_field ei_gsm_map_unknown_sequence = EI_INIT;
-static expert_field ei_gsm_map_unknown_parameter = EI_INIT;
-static expert_field ei_gsm_map_unknown_invokeData = EI_INIT;
-static expert_field ei_gsm_map_undecoded = EI_INIT;
+static expert_field ei_gsm_map_unknown_sequence3;
+static expert_field ei_gsm_map_unknown_sequence;
+static expert_field ei_gsm_map_unknown_parameter;
+static expert_field ei_gsm_map_unknown_invokeData;
+static expert_field ei_gsm_map_undecoded;
static dissector_handle_t gsm_sms_handle; /* SMS TPDU */
static dissector_handle_t ranap_handle;
@@ -202,7 +201,7 @@ static dissector_handle_t bssap_handle;
static dissector_table_t map_prop_arg_opcode_table; /* prorietary operation codes */
static dissector_table_t map_prop_res_opcode_table; /* prorietary operation codes */
static dissector_table_t map_prop_err_opcode_table; /* prorietary operation codes */
-/* Preferenc settings default */
+/* Preference settings default */
#define MAX_SSN 254
static range_t *global_ssn_range;
#define APPLICATON_CONTEXT_FROM_TRACE 0
@@ -215,7 +214,7 @@ static guint32 errorCode;
static int application_context_version;
static guint ProtocolId;
static guint AccessNetworkProtocolId;
-static int gsm_map_tap = -1;
+static int gsm_map_tap;
static guint8 gsmmap_pdu_type = 0;
static guint8 gsm_map_pdu_size = 0;
@@ -244,7 +243,7 @@ typedef struct {
wmem_tree_t *packets;
} gsm_map_conv_info_t;
-static gsm_map_packet_info_t *gsm_map_get_packet_info(asn1_ctx_t *actx, gboolean store_conv_info)
+static gsm_map_packet_info_t *gsm_map_get_packet_info(asn1_ctx_t *actx, bool store_conv_info)
{
gsm_map_packet_info_t *gsm_map_pi = (gsm_map_packet_info_t*)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_gsm_map, 0);
if (!gsm_map_pi) {
@@ -1025,7 +1024,7 @@ dissect_gsm_map_msisdn(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
dissect_e164_msisdn(tvb, tree, 1, tvb_reported_length(tvb)-1, E164_ENC_BCD);
break;
default:
- proto_tree_add_item(tree, hf_gsm_map_address_digits, tvb, 1, -1, ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(tree, hf_gsm_map_address_digits, tvb, 1, -1, ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
break;
}
break;
@@ -1034,7 +1033,7 @@ dissect_gsm_map_msisdn(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
dissect_e212_imsi(tvb, pinfo, tree, 1, tvb_reported_length(tvb)-1, FALSE);
break;
default:
- proto_tree_add_item(tree, hf_gsm_map_address_digits, tvb, 1, -1, ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(tree, hf_gsm_map_address_digits, tvb, 1, -1, ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
break;
}
@@ -1043,7 +1042,7 @@ dissect_gsm_map_msisdn(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
#include "packet-gsm_map-fn.c"
/* Specific translation for MAP V3 */
-const value_string gsm_map_V1V2_opr_code_strings[] = {
+static const value_string gsm_map_V1V2_opr_code_strings[] = {
{ 44, "forwardSM" },
{ 45, "sendRoutingInfoForSM" },
{ 46, "forwardSM" },
@@ -1101,14 +1100,6 @@ static const true_false_string gsm_map_Ss_Status_q_bit_values = {
"Quiescent",
"Operative"
};
-static const true_false_string gsm_map_Ss_Status_p_values = {
- "Provisioned",
- "Not Provisioned"
-};
-static const true_false_string gsm_map_Ss_Status_r_values = {
- "Registered",
- "Not Registered"
-};
static const true_false_string gsm_map_Ss_Status_a_values = {
"Active",
"not Active"
@@ -1136,7 +1127,7 @@ const gchar* gsm_map_opr_code(guint32 val, proto_item *item) {
}
/* Prototype for a decoding function */
-typedef int (* dissect_function_t)( gboolean,
+typedef int (* dissect_function_t)( bool,
tvbuff_t *,
int ,
asn1_ctx_t *,
@@ -1146,7 +1137,7 @@ typedef int (* dissect_function_t)( gboolean,
/*
* Dissect Multiple Choice Message
* This function is used to decode a message, when several encoding may be used.
- * For exemple, in the last MAP version, the Cancel Location is defined like this:
+ * For example, in the last MAP version, the Cancel Location is defined like this:
* CancelLocationArg ::= [3] IMPLICIT SEQUENCE
* But in the previous MAP version, it was a CHOICE between a SEQUENCE and an IMSI
* As ASN1 encoders (or software) still uses the old encoding, this function allows
@@ -1165,13 +1156,13 @@ static int dissect_mc_message(tvbuff_t *tvb,
int offset,
asn1_ctx_t *actx,
proto_tree *tree,
- gboolean implicit_param _U_, dissect_function_t parameter, int hf_index_param _U_,
- gboolean implicit_seq _U_, dissect_function_t sequence, int hf_index_seq _U_,
- gboolean implicit_seq3 _U_, dissect_function_t sequence3, int hf_index_seq3 _U_ )
+ bool implicit_param _U_, dissect_function_t parameter, int hf_index_param _U_,
+ bool implicit_seq _U_, dissect_function_t sequence, int hf_index_seq _U_,
+ bool implicit_seq3 _U_, dissect_function_t sequence3, int hf_index_seq3 _U_ )
{
guint8 octet;
gint8 bug_class;
- gboolean bug_pc, bug_ind_field;
+ bool bug_pc, bug_ind_field;
gint32 bug_tag;
guint32 bug_len;
@@ -1469,7 +1460,7 @@ static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
case 71: /*anyTimeInterrogation*/
offset=dissect_gsm_map_ms_AnyTimeInterrogationArg(FALSE, tvb, offset, actx, tree, -1);
break;
- case 72: /*ss-InvocationNotificatio*/
+ case 72: /*ss-InvocationNotification*/
offset=dissect_gsm_map_ss_SS_InvocationNotificationArg(FALSE, tvb, offset, actx, tree, -1);
break;
case 73: /*setReportingState*/
@@ -1791,7 +1782,7 @@ static int dissect_returnResultData(proto_tree *tree, tvbuff_t *tvb, int offset,
case 71: /*anyTimeInterrogation*/
offset=dissect_gsm_map_ms_AnyTimeInterrogationRes(FALSE, tvb, offset, actx, tree, -1);
break;
- case 72: /*ss-InvocationNotificatio*/
+ case 72: /*ss-InvocationNotification*/
offset=dissect_gsm_map_ss_SS_InvocationNotificationRes(FALSE, tvb, offset, actx, tree, -1);
break;
case 73: /*setReportingState*/
@@ -1972,7 +1963,11 @@ static int dissect_returnErrorData(proto_tree *tree, tvbuff_t *tvb, int offset,
offset=dissect_gsm_map_er_SubBusyForMT_SMS_Param(FALSE, tvb, offset, actx, tree, -1);
break;
case 32: /* SM-DeliveryFailureCause */
- offset=dissect_gsm_map_er_SM_DeliveryFailureCause(FALSE, tvb, offset, actx, tree, -1);
+ offset = dissect_mc_message(tvb, offset, actx, tree,
+ FALSE, dissect_gsm_map_er_SM_EnumeratedDeliveryFailureCause, hf_gsm_map_er_sm_EnumeratedDeliveryFailureCause,
+ FALSE, dissect_gsm_map_er_SM_DeliveryFailureCause, -1,
+ FALSE, NULL, -1);
+
break;
case 33: /* MessageWaitListFullParam */
offset=dissect_gsm_map_er_MessageWaitListFullParam(FALSE, tvb, offset, actx, tree, -1);
@@ -2312,7 +2307,7 @@ static int dissect_NokiaMAP_ext_DsdArgExt(tvbuff_t *tvb, packet_info *pinfo, pro
}
static int
-dissect_gsm_map_GSMMAPPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,
+dissect_gsm_map_GSMMAPPDU(bool implicit_tag _U_, tvbuff_t *tvb, int offset,
asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
char *version_ptr;
@@ -2712,12 +2707,12 @@ static stat_tap_table_item gsm_map_stat_fields[] = {
{TABLE_ITEM_STRING, TAP_ALIGN_LEFT, "Operation Code", "%-25s"},
{TABLE_ITEM_UINT, TAP_ALIGN_RIGHT, "Invokes", "%d"},
{TABLE_ITEM_UINT, TAP_ALIGN_RIGHT, "Num Bytes", "%d"},
- {TABLE_ITEM_FLOAT, TAP_ALIGN_RIGHT, "Avg Bytes", "%d"},
+ {TABLE_ITEM_FLOAT, TAP_ALIGN_RIGHT, "Avg Bytes", "%1.2f"},
{TABLE_ITEM_UINT, TAP_ALIGN_RIGHT, "Return Result", "%d"},
{TABLE_ITEM_UINT, TAP_ALIGN_RIGHT, "Num Bytes", "%d"},
- {TABLE_ITEM_FLOAT, TAP_ALIGN_RIGHT, "Avg Bytes", "%d"},
+ {TABLE_ITEM_FLOAT, TAP_ALIGN_RIGHT, "Avg Bytes", "%1.2f"},
{TABLE_ITEM_UINT, TAP_ALIGN_RIGHT, "Total Bytes", "%d"},
- {TABLE_ITEM_FLOAT, TAP_ALIGN_RIGHT, "Avg Bytes", "%d"},
+ {TABLE_ITEM_FLOAT, TAP_ALIGN_RIGHT, "Avg Bytes", "%1.2f"},
};
static void gsm_map_stat_init(stat_tap_table_ui* new_stat)
@@ -2760,7 +2755,7 @@ static void gsm_map_stat_init(stat_tap_table_ui* new_stat)
if (ocs) {
col_str = g_strdup(ocs);
} else {
- col_str = g_strdup_printf("Unknown op code %d", i);
+ col_str = ws_strdup_printf("Unknown op code %d", i);
}
items[ID_COLUMN].value.uint_value = i;
@@ -2770,7 +2765,7 @@ static void gsm_map_stat_init(stat_tap_table_ui* new_stat)
}
static tap_packet_status
-gsm_map_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *gmtr_ptr)
+gsm_map_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *gmtr_ptr, tap_flags_t flags _U_)
{
stat_data_t* stat_data = (stat_data_t*)tapdata;
const gsm_map_tap_rec_t *gmtr = (const gsm_map_tap_rec_t *)gmtr_ptr;
@@ -3043,11 +3038,11 @@ void proto_register_gsm_map(void) {
NULL, HFILL }},
{ &hf_gsm_map_Ss_Status_p_bit,
{ "P bit", "gsm_map.ss_status_p_bit",
- FT_BOOLEAN, 8, TFS(&gsm_map_Ss_Status_p_values), 0x04,
+ FT_BOOLEAN, 8, TFS(&tfs_provisioned_not_provisioned), 0x04,
NULL, HFILL }},
{ &hf_gsm_map_Ss_Status_r_bit,
{ "R bit", "gsm_map.ss_status_r_bit",
- FT_BOOLEAN, 8, TFS(&gsm_map_Ss_Status_r_values), 0x02,
+ FT_BOOLEAN, 8, TFS(&tfs_registered_not_registered), 0x02,
NULL, HFILL }},
{ &hf_gsm_map_Ss_Status_a_bit,
{ "A bit", "gsm_map.ss_status_a_bit",
@@ -3213,11 +3208,6 @@ void proto_register_gsm_map(void) {
FT_UINT8,BASE_DEC, VALS(gsm_map_cbs_coding_grp15_class_vals), 0x03,
NULL, HFILL }
},
- { &hf_gsm_map_tmsi,
- { "tmsi", "gsm_map.tmsi",
- FT_BYTES, BASE_NONE, NULL, 0,
- "gsm_map.TMSI", HFILL }},
-
{ &hf_gsm_map_ie_tag,
{ "Tag", "gsm_map.ie_tag",
FT_UINT8, BASE_DEC, VALS(gsm_map_tag_vals), 0,
@@ -3256,7 +3246,7 @@ void proto_register_gsm_map(void) {
"Service Area Code", HFILL }},
{ &hf_gsm_map_ussd_string,
{ "USSD String", "gsm_map.ussd_string",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_gsm_map_spare_bits,
{ "Spare bit(s)", "gsm_map.spare_bits",
diff --git a/epan/dissectors/asn1/h225/h225.cnf b/epan/dissectors/asn1/h225/h225.cnf
index a4a5c80b9d..8c56f6ddf3 100644
--- a/epan/dissectors/asn1/h225/h225.cnf
+++ b/epan/dissectors/asn1/h225/h225.cnf
@@ -267,7 +267,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
call_id_guid = NULL;
%(DEFAULT_BODY)s
col_append_fstr(actx->pinfo->cinfo, COL_INFO, "CS: %%s ",
- val_to_str(message_body_val, T_h323_message_body_vals, "<unknown>"));
+ val_to_str_const(message_body_val, T_h323_message_body_vals, "<unknown>"));
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
@@ -305,7 +305,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
char temp[50];
- g_snprintf(temp, 50, "%%s %%s", h225_pi->frame_label, codec_str);
+ snprintf(temp, 50, "%%s %%s", h225_pi->frame_label, codec_str);
(void) g_strlcpy(h225_pi->frame_label, temp, 50);
h225_pi->is_faststart = TRUE;
}
@@ -319,7 +319,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
call_id_guid = NULL;
%(DEFAULT_BODY)s
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "RAS: %%s ",
- val_to_str(rasmessage_value, h225_RasMessage_vals, "<unknown>"));
+ val_to_str_const(rasmessage_value, h225_RasMessage_vals, "<unknown>"));
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
@@ -415,7 +415,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
h225_pi->cs_type = H225_STATUS;
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -428,7 +428,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
h225_pi->cs_type = H225_INFORMATION;
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -443,10 +443,10 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi->cs_type = H225_PROGRESS;
if (contains_faststart) {
char temp[50];
- g_snprintf(temp, 50, "%s OLC (%s)", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
+ snprintf(temp, 50, "%s OLC (%s)", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
(void) g_strlcpy(h225_pi->frame_label, temp, 50);
} else
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -459,7 +459,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
h225_pi->cs_type = H225_SETUP_ACK;
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -472,7 +472,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
h225_pi->cs_type = H225_FACILITY;
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -500,10 +500,10 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi->cs_type = H225_SETUP;
if (contains_faststart) {
char temp[50];
- g_snprintf(temp, 50, "%s OLC (%s)", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
+ snprintf(temp, 50, "%s OLC (%s)", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
(void) g_strlcpy(h225_pi->frame_label, temp, 50);
} else
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -518,10 +518,10 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi->cs_type = H225_CALL_PROCEDING;
if (contains_faststart) {
char temp[50];
- g_snprintf(temp, 50, "%s OLC (%s)", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
+ snprintf(temp, 50, "%s OLC (%s)", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
(void) g_strlcpy(h225_pi->frame_label, temp, 50);
} else
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -536,10 +536,10 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi->cs_type = H225_ALERTING;
if (contains_faststart) {
char temp[50];
- g_snprintf(temp, 50, "%s OLC (%s)", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
+ snprintf(temp, 50, "%s OLC (%s)", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
(void) g_strlcpy(h225_pi->frame_label, temp, 50);
} else
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -552,7 +552,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi = (h225_packet_info*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_h225, 0);
if (h225_pi != NULL) {
h225_pi->cs_type = H225_RELEASE_COMPLET;
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -567,10 +567,10 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
h225_pi->cs_type = H225_CONNECT;
if (contains_faststart) {
char temp[50];
- g_snprintf(temp, 50, "%s OLC (%s)", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
+ snprintf(temp, 50, "%s OLC (%s)", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"), h225_pi->frame_label);
(void) g_strlcpy(h225_pi->frame_label, temp, 50);
} else
- g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
+ snprintf(h225_pi->frame_label, 50, "%s", val_to_str_const(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
}
#.END
#----------------------------------------------------------------------------------------
@@ -603,9 +603,9 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber
return offset;
}
- conv=find_conversation(actx->pinfo->num, &src_addr, &src_addr, ENDPOINT_TCP, ip_port, ip_port, NO_ADDR_B|NO_PORT_B);
+ conv=find_conversation(actx->pinfo->num, &src_addr, &src_addr, CONVERSATION_TCP, ip_port, ip_port, NO_ADDR_B|NO_PORT_B);
if(!conv){
- conv=conversation_new(actx->pinfo->num, &src_addr, &src_addr, ENDPOINT_TCP, ip_port, ip_port, NO_ADDR2|NO_PORT2);
+ conv=conversation_new(actx->pinfo->num, &src_addr, &src_addr, CONVERSATION_TCP, ip_port, ip_port, NO_ADDR2|NO_PORT2);
conversation_set_dissector(conv, h245_handle);
}
}
diff --git a/epan/dissectors/asn1/h225/packet-h225-template.c b/epan/dissectors/asn1/h225/packet-h225-template.c
index cb504f0744..2f34962cf7 100644
--- a/epan/dissectors/asn1/h225/packet-h225-template.c
+++ b/epan/dissectors/asn1/h225/packet-h225-template.c
@@ -103,20 +103,20 @@ static next_tvb_list_t *h245_list;
static next_tvb_list_t *tp_list;
/* Initialize the protocol and registered fields */
-static int h225_tap = -1;
-static int proto_h225 = -1;
+static int h225_tap;
+static int proto_h225;
-static int hf_h221Manufacturer = -1;
-static int hf_h225_ras_req_frame = -1;
-static int hf_h225_ras_rsp_frame = -1;
-static int hf_h225_ras_dup = -1;
-static int hf_h225_ras_deltatime = -1;
-static int hf_h225_debug_dissector_try_string = -1;
+static int hf_h221Manufacturer;
+static int hf_h225_ras_req_frame;
+static int hf_h225_ras_rsp_frame;
+static int hf_h225_ras_dup;
+static int hf_h225_ras_deltatime;
+static int hf_h225_debug_dissector_try_string;
#include "packet-h225-hf.c"
/* Initialize the subtree pointers */
-static gint ett_h225 = -1;
+static gint ett_h225;
#include "packet-h225-ett.c"
/* Preferences */
@@ -175,7 +175,7 @@ typedef enum _ras_category {
#define NUM_RAS_STATS 7
static tap_packet_status
-h225rassrt_packet(void *phs, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *phi)
+h225rassrt_packet(void *phs, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *phi, tap_flags_t flags _U_)
{
rtd_data_t* rtd_data = (rtd_data_t*)phs;
rtd_stat_table* rs = &rtd_data->stat_table;
@@ -463,6 +463,7 @@ static void h225_stat_init(stat_tap_table_ui* new_stat)
return;
}
+ memset(items, 0x0, sizeof(items));
table = stat_tap_init_table(table_name, num_fields, 0, NULL);
stat_tap_add_table(new_stat, table);
@@ -675,7 +676,7 @@ static void h225_stat_init(stat_tap_table_ui* new_stat)
}
static tap_packet_status
-h225_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *hpi_ptr)
+h225_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_, const void *hpi_ptr, tap_flags_t flags _U_)
{
stat_data_t* stat_data = (stat_data_t*)tapdata;
const h225_packet_info *hpi = (const h225_packet_info *)hpi_ptr;
@@ -765,12 +766,12 @@ h225_stat_packet(void *tapdata, packet_info *pinfo _U_, epan_dissect_t *edt _U_,
if (tag_idx >= 0) {
stat_tap_table*table = g_array_index(stat_data->stat_tap_data->tables, stat_tap_table*, 0);
- stat_tap_table_item_type* msg_data = stat_tap_get_field_data(table, tag_idx, COUNT_COLUMN);;
+ stat_tap_table_item_type* msg_data = stat_tap_get_field_data(table, tag_idx, COUNT_COLUMN);
msg_data->value.uint_value++;
stat_tap_set_field_data(table, tag_idx, COUNT_COLUMN, msg_data);
if (reason_idx >= 0) {
- msg_data = stat_tap_get_field_data(table, reason_idx, COUNT_COLUMN);;
+ msg_data = stat_tap_get_field_data(table, reason_idx, COUNT_COLUMN);
msg_data->value.uint_value++;
stat_tap_set_field_data(table, reason_idx, COUNT_COLUMN, msg_data);
}
@@ -888,11 +889,11 @@ void proto_register_h225(void) {
register_dissector("h323ui",dissect_h225_H323UserInformation, proto_h225);
h225ras_handle = register_dissector("h225.ras", dissect_h225_h225_RasMessage, proto_h225);
- nsp_object_dissector_table = register_dissector_table("h225.nsp.object", "H.225 NonStandardParameter Object", proto_h225, FT_STRING, BASE_NONE);
+ nsp_object_dissector_table = register_dissector_table("h225.nsp.object", "H.225 NonStandardParameter Object", proto_h225, FT_STRING, STRING_CASE_SENSITIVE);
nsp_h221_dissector_table = register_dissector_table("h225.nsp.h221", "H.225 NonStandardParameter h221", proto_h225, FT_UINT32, BASE_HEX);
- tp_dissector_table = register_dissector_table("h225.tp", "H.225 Tunnelled Protocol", proto_h225, FT_STRING, BASE_NONE);
- gef_name_dissector_table = register_dissector_table("h225.gef.name", "H.225 Generic Extensible Framework Name", proto_h225, FT_STRING, BASE_NONE);
- gef_content_dissector_table = register_dissector_table("h225.gef.content", "H.225 Generic Extensible Framework Content", proto_h225, FT_STRING, BASE_NONE);
+ tp_dissector_table = register_dissector_table("h225.tp", "H.225 Tunnelled Protocol", proto_h225, FT_STRING, STRING_CASE_SENSITIVE);
+ gef_name_dissector_table = register_dissector_table("h225.gef.name", "H.225 Generic Extensible Framework Name", proto_h225, FT_STRING, STRING_CASE_SENSITIVE);
+ gef_content_dissector_table = register_dissector_table("h225.gef.content", "H.225 Generic Extensible Framework Content", proto_h225, FT_STRING, STRING_CASE_SENSITIVE);
for(i=0;i<7;i++) {
ras_calls[i] = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), h225ras_call_hash, h225ras_call_equal);
diff --git a/epan/dissectors/asn1/h225/packet-h225-template.h b/epan/dissectors/asn1/h225/packet-h225-template.h
index 6ffa1ed671..021a548ae7 100644
--- a/epan/dissectors/asn1/h225/packet-h225-template.h
+++ b/epan/dissectors/asn1/h225/packet-h225-template.h
@@ -53,7 +53,7 @@ typedef struct _h225_packet_info {
guint16 h245_port;
gchar dialedDigits[129]; /* Dialed Digits in the LRQ and LCF used for voip analysis */
gboolean is_destinationInfo;
- gchar frame_label[50]; /* the Frame label used by graph_analysis, what is a abreviation of cinfo */
+ gchar frame_label[50]; /* the Frame label used by graph_analysis, what is an abbreviation of cinfo */
} h225_packet_info;
/*
@@ -63,7 +63,7 @@ typedef struct _h225_packet_info {
*/
#include <epan/asn1.h>
-#include <epan/dissectors/packet-per.h>
+#include "packet-per.h"
#include "packet-h225-exp.h"
diff --git a/epan/dissectors/asn1/h235/packet-h235-template.c b/epan/dissectors/asn1/h235/packet-h235-template.c
index 4441bbb845..665b49ad65 100644
--- a/epan/dissectors/asn1/h235/packet-h235-template.c
+++ b/epan/dissectors/asn1/h235/packet-h235-template.c
@@ -35,7 +35,7 @@ void proto_register_h235(void);
void proto_reg_handoff_h235(void);
/* Initialize the protocol and registered fields */
-static int proto_h235 = -1;
+static int proto_h235;
#include "packet-h235-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/h245/h245.cnf b/epan/dissectors/asn1/h245/h245.cnf
index 13ff4ca836..e55c41a256 100644
--- a/epan/dissectors/asn1/h245/h245.cnf
+++ b/epan/dissectors/asn1/h245/h245.cnf
@@ -381,7 +381,7 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
if (strlen(h245_pi->frame_label) == 0)
{
- g_snprintf(h245_pi->frame_label, 50, "%%s", val_to_str(value, h245_RequestMessage_short_vals, "UKN"));
+ snprintf(h245_pi->frame_label, 50, "%%s", val_to_str_const(value, h245_RequestMessage_short_vals, "UKN"));
/* if it is OLC or RM*/
if ((codec_type != NULL) && (( value == RequestMessage_openLogicalChannel) || ( value == RequestMessage_requestMode)))
@@ -391,7 +391,7 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
(void) g_strlcat(h245_pi->frame_label, ")", 50);
}
}
- (void) g_strlcat(h245_pi->comment, val_to_str(value, h245_RequestMessage_vals, "<unknown>"), 50);
+ (void) g_strlcat(h245_pi->comment, val_to_str_const(value, h245_RequestMessage_vals, "<unknown>"), 50);
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY ResponseMessage VAL_PTR = &value
@@ -404,9 +404,9 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
if (h245_pi != NULL){
/* Add to packet info */
if ( strlen(h245_pi->frame_label) == 0 ){
- g_snprintf(h245_pi->frame_label, 50, "%%s", val_to_str(value, h245_ResponseMessage_short_vals, "UKN"));
+ snprintf(h245_pi->frame_label, 50, "%%s", val_to_str_const(value, h245_ResponseMessage_short_vals, "UKN"));
}
- (void) g_strlcat(h245_pi->comment, val_to_str(value, h245_ResponseMessage_vals, "<unknown>"), 50);
+ (void) g_strlcat(h245_pi->comment, val_to_str_const(value, h245_ResponseMessage_vals, "<unknown>"), 50);
}
#.END
@@ -421,9 +421,9 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
/* Add to packet info */
if (h245_pi !=NULL){
if ( strlen(h245_pi->frame_label) == 0 ){
- g_snprintf(h245_pi->frame_label, 50, "%%s", val_to_str(value, h245_IndicationMessage_short_vals, "UKN"));
+ snprintf(h245_pi->frame_label, 50, "%%s", val_to_str_const(value, h245_IndicationMessage_short_vals, "UKN"));
}
- (void) g_strlcat(h245_pi->comment, val_to_str(value, h245_IndicationMessage_vals, "<unknown>"), 50);
+ (void) g_strlcat(h245_pi->comment, val_to_str_const(value, h245_IndicationMessage_vals, "<unknown>"), 50);
}
@@ -439,9 +439,9 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
/* Add to packet info */
if (h245_pi != NULL){
if ( strlen(h245_pi->frame_label) == 0 ){
- g_snprintf(h245_pi->frame_label, 50, "%%s", val_to_str(value, h245_CommandMessage_short_vals, "UKN"));
+ snprintf(h245_pi->frame_label, 50, "%%s", val_to_str_const(value, h245_CommandMessage_short_vals, "UKN"));
}
- (void) g_strlcat(h245_pi->comment, val_to_str(value, h245_CommandMessage_vals, "<unknown>"), 50);
+ (void) g_strlcat(h245_pi->comment, val_to_str_const(value, h245_CommandMessage_vals, "<unknown>"), 50);
}
#.END
@@ -450,14 +450,14 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
gint32 value;
%(DEFAULT_BODY)s
- codec_type = val_to_str(value, h245_AudioCapability_short_vals, "<unknown>");
+ codec_type = val_to_str_const(value, h245_AudioCapability_short_vals, "<unknown>");
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY VideoCapability VAL_PTR = &value
gint32 value;
%(DEFAULT_BODY)s
- codec_type = val_to_str(value, h245_VideoCapability_vals, "<unknown>");
+ codec_type = val_to_str_const(value, h245_VideoCapability_vals, "<unknown>");
#.END
#----------------------------------------------------------------------------------------
@@ -465,28 +465,28 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
gint32 value;
%(DEFAULT_BODY)s
- codec_type = val_to_str(value, h245_Application_vals, "<unknown>");
+ codec_type = val_to_str_const(value, h245_Application_vals, "<unknown>");
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY AudioMode VAL_PTR = &value
gint32 value;
%(DEFAULT_BODY)s
- codec_type = val_to_str(value, h245_AudioMode_vals, "<unknown>");
+ codec_type = val_to_str_const(value, h245_AudioMode_vals, "<unknown>");
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY VideoMode VAL_PTR = &value
gint32 value;
%(DEFAULT_BODY)s
- codec_type = val_to_str(value, h245_VideoMode_vals, "<unknown>");
+ codec_type = val_to_str_const(value, h245_VideoMode_vals, "<unknown>");
#.END
#----------------------------------------------------------------------------------------
#.FN_BODY DataMode/application VAL_PTR = &value
gint32 value;
%(DEFAULT_BODY)s
- codec_type = val_to_str(value, h245_DataModeApplication_vals, "<unknown>");
+ codec_type = val_to_str_const(value, h245_DataModeApplication_vals, "<unknown>");
#.END
#----------------------------------------------------------------------------------------
#.FN_FTR MasterSlaveDeterminationAck
@@ -599,8 +599,8 @@ Rfc2733Format FECCapability/rfc2733Format FECMode/rfc2733Format
}
if (hf_index == hf_h245_subMessageIdentifier_standard)
{
- col_append_str(actx->pinfo->cinfo, COL_INFO, val_to_str(subMessageIdentifier, h245_h239subMessageIdentifier_vals, "<unknown>") );
- g_snprintf(h245_pi->frame_label, 50, "%%s", val_to_str(subMessageIdentifier, h245_h239subMessageIdentifier_vals, "<unknown>"));
+ col_append_str(actx->pinfo->cinfo, COL_INFO, val_to_str_const(subMessageIdentifier, h245_h239subMessageIdentifier_vals, "<unknown>") );
+ snprintf(h245_pi->frame_label, 50, "%%s", val_to_str_const(subMessageIdentifier, h245_h239subMessageIdentifier_vals, "<unknown>"));
}
#.END
diff --git a/epan/dissectors/asn1/h245/packet-h245-template.c b/epan/dissectors/asn1/h245/packet-h245-template.c
index b71edc7288..c1b05c4e5d 100644
--- a/epan/dissectors/asn1/h245/packet-h245-template.c
+++ b/epan/dissectors/asn1/h245/packet-h245-template.c
@@ -28,6 +28,7 @@
#include <epan/t35.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include <epan/tap.h>
#include <wsutil/pint.h>
#include "packet-tpkt.h"
@@ -58,12 +59,12 @@ static dissector_handle_t h263_handle = NULL;
static dissector_handle_t amr_handle = NULL;
static void init_h245_packet_info(h245_packet_info *pi);
-static int hf_h245_pdu_type = -1;
-static int hf_h245Manufacturer = -1;
-static int hf_h245_subMessageIdentifier_standard = -1;
-static int h245_tap = -1;
-static int h245dg_tap = -1;
-static int hf_h245_debug_dissector_try_string = -1;
+static int hf_h245_pdu_type;
+static int hf_h245Manufacturer;
+static int hf_h245_subMessageIdentifier_standard;
+static int h245_tap;
+static int h245dg_tap;
+static int hf_h245_debug_dissector_try_string;
h245_packet_info *h245_pi=NULL;
@@ -328,7 +329,7 @@ static void h245_setup_channels(packet_info *pinfo, channel_info_t *upcoming_cha
/* (S)RTP, (S)RTCP */
if (upcoming_channel_lcl->rfc2198 > 0) {
rtp_dyn_payload = rtp_dyn_payload_new();
- rtp_dyn_payload_insert(rtp_dyn_payload, upcoming_channel_lcl->rfc2198, "red", 8000);
+ rtp_dyn_payload_insert(rtp_dyn_payload, upcoming_channel_lcl->rfc2198, "red", 8000, 1);
}
if (upcoming_channel_lcl->srtp_flag) {
@@ -363,19 +364,19 @@ static void print_info_column(column_info *cinfo, const gint32 *value,
}
if (info_col_fmt_prepend == FALSE) {
- col_append_fstr(cinfo, COL_INFO, "%s ", val_to_str(*value, vals, "<unknown>"));
+ col_append_fstr(cinfo, COL_INFO, "%s ", val_to_str_const(*value, vals, "<unknown>"));
} else {
- col_prepend_fstr(cinfo, COL_INFO, "%s ", val_to_str(*value, vals, "<unknown>"));
+ col_prepend_fstr(cinfo, COL_INFO, "%s ", val_to_str_const(*value, vals, "<unknown>"));
}
}
/* Initialize the protocol and registered fields */
-static int proto_h245 = -1;
+static int proto_h245;
#include "packet-h245-hf.c"
/* Initialize the subtree pointers */
-static int ett_h245 = -1;
-static int ett_h245_returnedFunction = -1;
+static int ett_h245;
+static int ett_h245_returnedFunction;
#include "packet-h245-ett.c"
/* Forward declarations */
@@ -512,10 +513,10 @@ void proto_register_h245(void) {
MultimediaSystemControlMessage_handle = register_dissector("h245dg", dissect_h245_h245, proto_h245);
h245_handle = register_dissector("h245", dissect_h245, proto_h245);
- nsp_object_dissector_table = register_dissector_table("h245.nsp.object", "H.245 NonStandardParameter (object)", proto_h245, FT_STRING, BASE_NONE);
+ nsp_object_dissector_table = register_dissector_table("h245.nsp.object", "H.245 NonStandardParameter (object)", proto_h245, FT_STRING, STRING_CASE_SENSITIVE);
nsp_h221_dissector_table = register_dissector_table("h245.nsp.h221", "H.245 NonStandardParameter (h221)", proto_h245, FT_UINT32, BASE_HEX);
- gef_name_dissector_table = register_dissector_table("h245.gef.name", "H.245 Generic Extensible Framework Name", proto_h245, FT_STRING, BASE_NONE);
- gef_content_dissector_table = register_dissector_table("h245.gef.content", "H.245 Generic Extensible Framework Content", proto_h245, FT_STRING, BASE_NONE);
+ gef_name_dissector_table = register_dissector_table("h245.gef.name", "H.245 Generic Extensible Framework Name", proto_h245, FT_STRING, STRING_CASE_SENSITIVE);
+ gef_content_dissector_table = register_dissector_table("h245.gef.content", "H.245 Generic Extensible Framework Content", proto_h245, FT_STRING, STRING_CASE_SENSITIVE);
h245_tap = register_tap("h245");
h245dg_tap = register_tap("h245dg");
@@ -592,6 +593,6 @@ static void init_h245_packet_info(h245_packet_info *pi)
pi->msg_type = H245_OTHER;
pi->frame_label[0] = '\0';
- g_snprintf(pi->comment, sizeof(pi->comment), "H245 ");
+ snprintf(pi->comment, sizeof(pi->comment), "H245 ");
}
diff --git a/epan/dissectors/asn1/h245/packet-h245-template.h b/epan/dissectors/asn1/h245/packet-h245-template.h
index c592def9a5..608c755dcd 100644
--- a/epan/dissectors/asn1/h245/packet-h245-template.h
+++ b/epan/dissectors/asn1/h245/packet-h245-template.h
@@ -34,7 +34,7 @@ typedef enum _h245_msg_type {
typedef struct _h245_packet_info {
h245_msg_type msg_type; /* type of message */
- gchar frame_label[50]; /* the Frame label used by graph_analysis, what is a abreviation of cinfo */
+ gchar frame_label[50]; /* the Frame label used by graph_analysis, what is an abbreviation of cinfo */
gchar comment[50]; /* the Frame Comment used by graph_analysis, what is a message desc */
} h245_packet_info;
@@ -102,7 +102,7 @@ struct _h223_mux_element {
};
#include <epan/packet_info.h>
-#include <epan/dissectors/packet-per.h>
+#include "packet-per.h"
typedef void (*h223_set_mc_handle_t) ( packet_info* pinfo, guint8 mc, h223_mux_element* me);
WS_DLL_PUBLIC void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle );
diff --git a/epan/dissectors/asn1/h248/h248.cnf b/epan/dissectors/asn1/h248/h248.cnf
index 6b65126293..de117b7ab6 100644
--- a/epan/dissectors/asn1/h248/h248.cnf
+++ b/epan/dissectors/asn1/h248/h248.cnf
@@ -317,8 +317,6 @@ SigParameterV1/value ABBREV=sig_param_value
} else if (curr_info.trx) {
gcp_trx_set_error(curr_info.trx,error_code);
}
-
- return offset;
#.END
#.FN_HDR TerminationID
diff --git a/epan/dissectors/asn1/h248/packet-h248-template.c b/epan/dissectors/asn1/h248/packet-h248-template.c
index af1a2ba83c..54a40d08e7 100644
--- a/epan/dissectors/asn1/h248/packet-h248-template.c
+++ b/epan/dissectors/asn1/h248/packet-h248-template.c
@@ -18,6 +18,7 @@
#include <epan/exceptions.h>
#include <epan/tap.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include <epan/prefs.h>
#include <epan/exported_pdu.h>
#include <epan/address_types.h>
@@ -28,69 +29,69 @@
#include "packet-h248.h"
#define PNAME "H.248 MEGACO"
-#define PSNAME "H248"
+#define PSNAME "H.248"
#define PFNAME "h248"
void proto_register_h248(void);
/* Initialize the protocol and registered fields */
-static int proto_h248 = -1;
-static int hf_248_magic_num = -1;
-static int hf_h248_mtpaddress_ni = -1;
-static int hf_h248_mtpaddress_pc = -1;
-static int hf_h248_pkg_name = -1;
-static int hf_248_pkg_param = -1;
-static int hf_h248_event_name = -1;
-static int hf_h248_signal_name = -1;
-static int hf_h248_signal_code = -1;
-static int hf_h248_event_code = -1;
-static int hf_h248_pkg_bcp_BNCChar_PDU = -1;
-
-
-
-static int hf_h248_context_id = -1;
-static int hf_h248_term_wild_type = -1;
-static int hf_h248_term_wild_level = -1;
-static int hf_h248_term_wild_position = -1;
-
-static int hf_h248_no_pkg = -1;
-static int hf_h248_no_sig = -1;
-static int hf_h248_no_evt = -1;
-static int hf_h248_param = -1;
-
-static int hf_h248_serviceChangeReasonStr = -1;
-static int hf_h248_transactionId64 = -1;
-static int hf_h248_context_id64 = -1;
+static int proto_h248;
+static int hf_248_magic_num;
+static int hf_h248_mtpaddress_ni;
+static int hf_h248_mtpaddress_pc;
+static int hf_h248_pkg_name;
+static int hf_248_pkg_param;
+static int hf_h248_event_name;
+static int hf_h248_signal_name;
+static int hf_h248_signal_code;
+static int hf_h248_event_code;
+static int hf_h248_pkg_bcp_BNCChar_PDU;
+
+
+
+static int hf_h248_context_id;
+static int hf_h248_term_wild_type;
+static int hf_h248_term_wild_level;
+static int hf_h248_term_wild_position;
+
+static int hf_h248_no_pkg;
+static int hf_h248_no_sig;
+static int hf_h248_no_evt;
+static int hf_h248_param;
+
+static int hf_h248_serviceChangeReasonStr;
+static int hf_h248_transactionId64;
+static int hf_h248_context_id64;
/* h248v1 support */
-static int hf_h248_auditValueReplyV1 = -1;
+static int hf_h248_auditValueReplyV1;
#include "packet-h248-hf.c"
/* Initialize the subtree pointers */
-static gint ett_h248 = -1;
-static gint ett_mtpaddress = -1;
-static gint ett_packagename = -1;
-static gint ett_codec = -1;
-static gint ett_wildcard = -1;
+static gint ett_h248;
+static gint ett_mtpaddress;
+static gint ett_packagename;
+static gint ett_codec;
+static gint ett_wildcard;
-static gint ett_h248_no_pkg = -1;
-static gint ett_h248_no_sig = -1;
-static gint ett_h248_no_evt = -1;
+static gint ett_h248_no_pkg;
+static gint ett_h248_no_sig;
+static gint ett_h248_no_evt;
-static int h248_tap = -1;
+static int h248_tap;
-static gcp_hf_ett_t h248_arrel = {{-1,-1,-1,-1,-1,-1},{-1,-1,-1,-1}};
+static gcp_hf_ett_t h248_arrel;
static gint exported_pdu_tap = -1;
#include "packet-h248-ett.c"
-static expert_field ei_h248_errored_command = EI_INIT;
-static expert_field ei_h248_transactionId64 = EI_INIT;
-static expert_field ei_h248_context_id64 = EI_INIT;
-static expert_field ei_h248_octet_string_expected = EI_INIT;
+static expert_field ei_h248_errored_command;
+static expert_field ei_h248_transactionId64;
+static expert_field ei_h248_context_id64;
+static expert_field ei_h248_octet_string_expected;
static dissector_table_t subdissector_table;
@@ -843,14 +844,14 @@ static dissector_handle_t h248_term_handle;
static dissector_handle_t h248_tpkt_handle;
/* Forward declarations */
-static int dissect_h248_ServiceChangeReasonStr(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+static int dissect_h248_ServiceChangeReasonStr(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
/* h248v1 support */
-static int dissect_h248_AuditReplyV1(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+static int dissect_h248_AuditReplyV1(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
-static int dissect_h248_EventParameterV1(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
-static int dissect_h248_SigParameterV1(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
-static int dissect_h248_SigParamValueV1(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+static int dissect_h248_EventParameterV1(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+static int dissect_h248_SigParameterV1(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+static int dissect_h248_SigParamValueV1(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
#if 0
static const value_string context_id_type[] = {
@@ -908,7 +909,7 @@ static const value_string base_package_name_vals[] = {
{ 0x0027, "Intrusion Tones Q.1950 Annex A" },
{ 0x0028, "Business Tones Q.1950 Annex A" },
{ 0x0029, "Media Gateway Resource Congestion Handling H.248.10" }, /* H.248.10 */
- { 0x002a, "H245 package H248.12" }, /* H.248.12 */
+ { 0x002a, "H245 package H.248.12" }, /* H.248.12 */
{ 0x002b, "H323 bearer control package H.248.12" }, /* H.248.12 */
{ 0x002c, "H324 package H.248.12" }, /* H.248.12 */
{ 0x002d, "H245 command package H.248.12" }, /* H.248.12 */
@@ -1430,7 +1431,7 @@ static void
export_h248_pdu(packet_info *pinfo, tvbuff_t *tvb)
{
if (have_tap_listener(exported_pdu_tap)) {
- exp_pdu_data_t *exp_pdu_data = export_pdu_create_common_tags(pinfo, "h248", EXP_PDU_TAG_PROTO_NAME);
+ exp_pdu_data_t *exp_pdu_data = export_pdu_create_common_tags(pinfo, "h248", EXP_PDU_TAG_DISSECTOR_NAME);
exp_pdu_data->tvb_captured_length = tvb_captured_length(tvb);
exp_pdu_data->tvb_reported_length = tvb_reported_length(tvb);
@@ -1443,19 +1444,19 @@ export_h248_pdu(packet_info *pinfo, tvbuff_t *tvb)
extern void h248_param_ber_integer(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo, int hfid, h248_curr_info_t* u _U_, void* implicit) {
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
- dissect_ber_integer(implicit ? *((gboolean*)implicit) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, NULL);
+ dissect_ber_integer(implicit ? *((bool*)implicit) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, NULL);
}
extern void h248_param_ber_octetstring(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo, int hfid, h248_curr_info_t* u _U_, void* implicit) {
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
- dissect_ber_octet_string(implicit ? *((gboolean*)implicit) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, NULL);
+ dissect_ber_octet_string(implicit ? *((bool*)implicit) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, NULL);
}
extern void h248_param_ber_boolean(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo, int hfid, h248_curr_info_t* u _U_, void* implicit) {
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
- dissect_ber_boolean(implicit ? *((gboolean*)implicit) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, NULL);
+ dissect_ber_boolean(implicit ? *((bool*)implicit) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, NULL);
}
extern void h248_param_bytes_item(proto_tree* tree,
@@ -1488,7 +1489,7 @@ static const h248_pkg_sig_t no_signal = { 0, &hf_h248_no_sig, &ett_h248_no_sig,
static const h248_pkg_param_t no_param = { 0, &hf_h248_param, h248_param_uint_item, NULL };
static const h248_pkg_evt_t no_event = { 0, &hf_h248_no_evt, &ett_h248_no_evt, NULL, NULL };
-const h248_package_t *find_package_id(guint16 pkgid);
+static const h248_package_t *find_package_id(guint16 pkgid);
static wmem_tree_t* packages = NULL;
extern void h248_param_PkgdName(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo , int hfid _U_, h248_curr_info_t* u1 _U_, void* u2 _U_) {
@@ -1509,7 +1510,7 @@ extern void h248_param_PkgdName(proto_tree* tree, tvbuff_t* tvb, packet_info* pi
pkg = find_package_id(name_major);
/* do the prettification */
proto_item_append_text(asn1_ctx.created_item, " %s (%04x)",
- val_to_str(0, pkg->param_names, "Unknown Package"),
+ val_to_str_const(0, pkg->param_names, "Unknown Package"),
name_major);
if(tree){
@@ -1518,7 +1519,7 @@ extern void h248_param_PkgdName(proto_tree* tree, tvbuff_t* tvb, packet_info* pi
package_tree = proto_item_add_subtree(asn1_ctx.created_item, ett_packagename);
proto_tree_add_uint_format(package_tree, hf_h248_pkg_name, tvb, offset-4, 2, name_major,
- "%s (0x%04x)", val_to_str(0, pkg->param_names, "Unknown Package"), name_major);
+ "%s (0x%04x)", val_to_str_const(0, pkg->param_names, "Unknown Package"), name_major);
pi = proto_tree_add_uint(package_tree, hf_248_pkg_param, tvb, offset-2, 2, name_minor);
@@ -1535,10 +1536,10 @@ extern void h248_param_PkgdName(proto_tree* tree, tvbuff_t* tvb, packet_info* pi
}
-static int dissect_h248_trx_id(gboolean implicit_tag, packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, guint32* trx_id_p) {
+static int dissect_h248_trx_id(bool implicit_tag, packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, guint32* trx_id_p) {
guint64 trx_id = 0;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
guint32 i;
@@ -1573,9 +1574,9 @@ static int dissect_h248_trx_id(gboolean implicit_tag, packet_info *pinfo, proto_
return offset;
}
-static int dissect_h248_ctx_id(gboolean implicit_tag, packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, guint32* ctx_id_p) {
+static int dissect_h248_ctx_id(bool implicit_tag, packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, guint32* ctx_id_p) {
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
guint64 ctx_id = 0;
@@ -1627,7 +1628,7 @@ static s_h248_package_t *s_find_package_id(guint16 pkgid) {
return s_pkg;
}
-const h248_package_t *find_package_id(guint16 pkgid) {
+static const h248_package_t *find_package_id(guint16 pkgid) {
s_h248_package_t *s_pkg = NULL;
s_pkg = s_find_package_id(pkgid); /*(packages, GUINT_TO_POINTER((guint32)(pkgid))); */
if (! s_pkg ) return &no_package;
@@ -1747,7 +1748,7 @@ void h248_register_package(h248_package_t* pkg, pkg_reg_action reg_action) {
static guint32 packageandid;
-static int dissect_h248_PkgdName(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+static int dissect_h248_PkgdName(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
tvbuff_t *new_tvb = NULL;
proto_tree *package_tree=NULL;
guint16 name_major, name_minor;
@@ -1764,13 +1765,13 @@ static int dissect_h248_PkgdName(gboolean implicit_tag, tvbuff_t *tvb, int offse
pkg = find_package_id(name_major);
/* do the prettification */
proto_item_append_text(actx->created_item, " %s (%04x)",
- val_to_str(0, pkg->param_names, "Unknown Package"),
+ val_to_str_const(0, pkg->param_names, "Unknown Package"),
name_major);
if(tree){
package_tree = proto_item_add_subtree(actx->created_item, ett_packagename);
proto_tree_add_uint_format(package_tree, hf_h248_pkg_name, tvb, offset-4, 2, name_major,
- "PkgName: %s (0x%04x)", val_to_str(0, pkg->param_names, "Unknown Package"), name_major);
+ "PkgName: %s (0x%04x)", val_to_str_const(0, pkg->param_names, "Unknown Package"), name_major);
}
{
@@ -1794,7 +1795,7 @@ static int dissect_h248_PkgdName(gboolean implicit_tag, tvbuff_t *tvb, int offse
return offset;
}
-static int dissect_h248_EventName(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+static int dissect_h248_EventName(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
tvbuff_t *new_tvb;
proto_tree *package_tree=NULL;
guint16 name_major, name_minor;
@@ -1812,13 +1813,13 @@ static int dissect_h248_EventName(gboolean implicit_tag, tvbuff_t *tvb, int offs
pkg = find_package_id(name_major);
/* do the prettification */
proto_item_append_text(actx->created_item, " %s (%04x)",
- val_to_str(0, pkg->param_names, "Unknown Package"),
+ val_to_str_const(0, pkg->param_names, "Unknown Package"),
name_major);
if(tree){
package_tree = proto_item_add_subtree(actx->created_item, ett_packagename);
}
proto_tree_add_uint_format(package_tree, hf_h248_pkg_name, tvb, offset-4, 2, name_major,
- "%s (0x%04x)", val_to_str(0, pkg->param_names, "Unknown Package"), name_major);
+ "%s (0x%04x)", val_to_str_const(0, pkg->param_names, "Unknown Package"), name_major);
curr_info.pkg = pkg;
@@ -1859,7 +1860,7 @@ static int dissect_h248_EventName(gboolean implicit_tag, tvbuff_t *tvb, int offs
-static int dissect_h248_SignalName(gboolean implicit_tag , tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+static int dissect_h248_SignalName(bool implicit_tag , tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
tvbuff_t *new_tvb;
proto_tree *package_tree=NULL;
guint16 name_major, name_minor;
@@ -1877,13 +1878,13 @@ static int dissect_h248_SignalName(gboolean implicit_tag , tvbuff_t *tvb, int of
pkg = find_package_id(name_major);
/* do the prettification */
proto_item_append_text(actx->created_item, " %s (%04x)",
- val_to_str(0, pkg->param_names, "Unknown Package"),
+ val_to_str_const(0, pkg->param_names, "Unknown Package"),
name_major);
if(tree){
package_tree = proto_item_add_subtree(actx->created_item, ett_packagename);
}
proto_tree_add_uint_format(package_tree, hf_h248_pkg_name, tvb, offset-4, 2, name_major,
- "%s (0x%04x)", val_to_str(0, pkg->param_names, "Unknown Package"), name_major);
+ "%s (0x%04x)", val_to_str_const(0, pkg->param_names, "Unknown Package"), name_major);
if (pkg->signals) {
for (sig = pkg->signals; sig->hfid; sig++) {
@@ -1922,10 +1923,10 @@ static int dissect_h248_SignalName(gboolean implicit_tag , tvbuff_t *tvb, int of
return offset;
}
-static int dissect_h248_PropertyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_PropertyID(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
guint16 name_minor;
@@ -1969,7 +1970,7 @@ static int dissect_h248_PropertyID(gboolean implicit_tag _U_, tvbuff_t *tvb, int
-static int dissect_h248_SigParameterName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_SigParameterName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
tvbuff_t *next_tvb;
guint32 param_id = 0xffffffff;
const h248_pkg_param_t* sigpar;
@@ -2009,10 +2010,10 @@ static int dissect_h248_SigParameterName(gboolean implicit_tag _U_, tvbuff_t *tv
return offset;
}
-static int dissect_h248_SigParamValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_SigParamValue(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
int end_offset;
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
tvbuff_t *next_tvb = NULL;
@@ -2037,12 +2038,12 @@ static int dissect_h248_SigParamValue(gboolean implicit_tag _U_, tvbuff_t *tvb,
return end_offset;
}
-static int dissect_h248_SigParamValueV1(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_SigParamValueV1(bool implicit_tag _U_, tvbuff_t *tvb, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
return dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
}
-static int dissect_h248_EventParameterName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_EventParameterName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
tvbuff_t *next_tvb;
guint32 param_id = 0xffffffff;
const h248_pkg_param_t* evtpar;
@@ -2088,11 +2089,11 @@ static int dissect_h248_EventParameterName(gboolean implicit_tag _U_, tvbuff_t *
return offset;
}
-static int dissect_h248_EventParamValue(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_EventParamValue(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
tvbuff_t *next_tvb;
int end_offset;
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
@@ -2116,12 +2117,12 @@ static int dissect_h248_EventParamValue(gboolean implicit_tag _U_, tvbuff_t *tvb
return end_offset;
}
-static int dissect_h248_EventParamValueV1(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
+static int dissect_h248_EventParamValueV1(bool implicit_tag _U_, tvbuff_t *tvb, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) {
return dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, &tvb);
}
-static int dissect_h248_MtpAddress(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+static int dissect_h248_MtpAddress(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
tvbuff_t *new_tvb;
proto_tree *mtp_tree=NULL;
guint32 val;
@@ -2362,7 +2363,7 @@ void proto_register_h248(void) {
expert_h248 = expert_register_protocol(proto_h248);
expert_register_field_array(expert_h248, ei, array_length(ei));
- subdissector_table = register_dissector_table("h248.magic_num", "H248 Magic Num", proto_h248, FT_UINT32, BASE_HEX);
+ subdissector_table = register_dissector_table("h248.magic_num", "H.248 Magic Num", proto_h248, FT_UINT32, BASE_HEX);
h248_module = prefs_register_protocol(proto_h248, NULL);
prefs_register_bool_preference(h248_module, "ctx_info",
diff --git a/epan/dissectors/asn1/h282/packet-h282-template.c b/epan/dissectors/asn1/h282/packet-h282-template.c
index d371529fc0..91eb679e69 100644
--- a/epan/dissectors/asn1/h282/packet-h282-template.c
+++ b/epan/dissectors/asn1/h282/packet-h282-template.c
@@ -25,11 +25,11 @@ void proto_register_h282(void);
void proto_reg_handoff_h282(void);
/* Initialize the protocol and registered fields */
-static int proto_h282 = -1;
+static int proto_h282;
#include "packet-h282-hf.c"
/* Initialize the subtree pointers */
-static int ett_h282 = -1;
+static int ett_h282;
#include "packet-h282-ett.c"
/* Dissectors */
diff --git a/epan/dissectors/asn1/h283/packet-h283-template.c b/epan/dissectors/asn1/h283/packet-h283-template.c
index 6db8e76eaa..fa383dd705 100644
--- a/epan/dissectors/asn1/h283/packet-h283-template.c
+++ b/epan/dissectors/asn1/h283/packet-h283-template.c
@@ -25,11 +25,11 @@ void proto_register_h283(void);
void proto_reg_handoff_h283(void);
/* Initialize the protocol and registered fields */
-static int proto_h283 = -1;
+static int proto_h283;
#include "packet-h283-hf.c"
/* Initialize the subtree pointers */
-static int ett_h283 = -1;
+static int ett_h283;
#include "packet-h283-ett.c"
/* Subdissectors */
diff --git a/epan/dissectors/asn1/h323/packet-h323-template.c b/epan/dissectors/asn1/h323/packet-h323-template.c
index 8adbaa7cf1..baf5cbd8bd 100644
--- a/epan/dissectors/asn1/h323/packet-h323-template.c
+++ b/epan/dissectors/asn1/h323/packet-h323-template.c
@@ -73,7 +73,7 @@ void gef_ctx_update_key(wmem_allocator_t *pool, gef_ctx_t *gefx) {
}
/* Initialize the protocol and registered fields */
-static int proto_h323 = -1;
+static int proto_h323;
#include "packet-h323-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/h450-ros/packet-h450-ros-template.c b/epan/dissectors/asn1/h450-ros/packet-h450-ros-template.c
index df2a53db8d..792159b836 100644
--- a/epan/dissectors/asn1/h450-ros/packet-h450-ros-template.c
+++ b/epan/dissectors/asn1/h450-ros/packet-h450-ros-template.c
@@ -27,13 +27,13 @@ void proto_register_h450_ros(void);
void proto_reg_handoff_h450_ros(void);
/* Initialize the protocol and registered fields */
-static int proto_h450_ros = -1;
+static int proto_h450_ros;
#include "packet-h450-ros-hf.c"
/* Initialize the subtree pointers */
#include "packet-h450-ros-ett.c"
-static expert_field ei_ros_undecoded = EI_INIT;
+static expert_field ei_ros_undecoded;
/* Preferences */
diff --git a/epan/dissectors/asn1/h450/packet-h450-template.c b/epan/dissectors/asn1/h450/packet-h450-template.c
index 724882779a..b0a5b4a2ba 100644
--- a/epan/dissectors/asn1/h450/packet-h450-template.c
+++ b/epan/dissectors/asn1/h450/packet-h450-template.c
@@ -33,19 +33,22 @@
void proto_register_h450(void);
void proto_reg_handoff_h450(void);
+static dissector_handle_t h450_arg_handle;
+static dissector_handle_t h450_res_handle;
+static dissector_handle_t h450_err_handle;
/* Initialize the protocol and registered fields */
-static int proto_h450 = -1;
-static int hf_h450_operation = -1;
-static int hf_h450_error = -1;
+static int proto_h450;
+static int hf_h450_operation;
+static int hf_h450_error;
#include "packet-h450-hf.c"
/* Initialize the subtree pointers */
#include "packet-h450-ett.c"
-static expert_field ei_h450_unsupported_arg_type = EI_INIT;
-static expert_field ei_h450_unsupported_result_type = EI_INIT;
-static expert_field ei_h450_unsupported_error_type = EI_INIT;
+static expert_field ei_h450_unsupported_arg_type;
+static expert_field ei_h450_unsupported_result_type;
+static expert_field ei_h450_unsupported_error_type;
static const value_string h450_str_operation[] = {
#include "packet-h450-table10.c"
@@ -247,7 +250,7 @@ void proto_register_h450(void) {
FT_UINT8, BASE_DEC, VALS(h450_str_operation), 0x0,
NULL, HFILL }},
{ &hf_h450_error, { "Error", "h450.error",
- FT_UINT8, BASE_DEC, VALS(h450_str_error), 0x0,
+ FT_UINT16, BASE_DEC, VALS(h450_str_error), 0x0,
NULL, HFILL }},
#include "packet-h450-hfarr.c"
};
@@ -276,12 +279,17 @@ void proto_register_h450(void) {
rose_ctx_init(&h450_rose_ctx);
+ /* Register dissectors */
+ h450_arg_handle = register_dissector("h4501_arg", dissect_h450_arg, proto_h450);
+ h450_res_handle = register_dissector("h4501_res", dissect_h450_res, proto_h450);
+ h450_err_handle = register_dissector("h4501_err", dissect_h450_err, proto_h450);
+
/* Register dissector tables */
- h450_rose_ctx.arg_global_dissector_table = register_dissector_table("h450.ros.global.arg", "H.450 Operation Argument (global opcode)", proto_h450, FT_STRING, BASE_NONE);
- h450_rose_ctx.res_global_dissector_table = register_dissector_table("h450.ros.global.res", "H.450 Operation Result (global opcode)", proto_h450, FT_STRING, BASE_NONE);
+ h450_rose_ctx.arg_global_dissector_table = register_dissector_table("h450.ros.global.arg", "H.450 Operation Argument (global opcode)", proto_h450, FT_STRING, STRING_CASE_SENSITIVE);
+ h450_rose_ctx.res_global_dissector_table = register_dissector_table("h450.ros.global.res", "H.450 Operation Result (global opcode)", proto_h450, FT_STRING, STRING_CASE_SENSITIVE);
h450_rose_ctx.arg_local_dissector_table = register_dissector_table("h450.ros.local.arg", "H.450 Operation Argument (local opcode)", proto_h450, FT_UINT32, BASE_HEX);
h450_rose_ctx.res_local_dissector_table = register_dissector_table("h450.ros.local.res", "H.450 Operation Result (local opcode)", proto_h450, FT_UINT32, BASE_HEX);
- h450_rose_ctx.err_global_dissector_table = register_dissector_table("h450.ros.global.err", "H.450 Error (global opcode)", proto_h450, FT_STRING, BASE_NONE);
+ h450_rose_ctx.err_global_dissector_table = register_dissector_table("h450.ros.global.err", "H.450 Error (global opcode)", proto_h450, FT_STRING, STRING_CASE_SENSITIVE);
h450_rose_ctx.err_local_dissector_table = register_dissector_table("h450.ros.local.err", "H.450 Error (local opcode)", proto_h450, FT_UINT32, BASE_HEX);
}
@@ -292,17 +300,11 @@ void
proto_reg_handoff_h450(void)
{
int i;
- dissector_handle_t h450_arg_handle;
- dissector_handle_t h450_res_handle;
- dissector_handle_t h450_err_handle;
- h450_arg_handle = create_dissector_handle(dissect_h450_arg, proto_h450);
- h450_res_handle = create_dissector_handle(dissect_h450_res, proto_h450);
for (i=0; i<(int)array_length(h450_op_tab); i++) {
dissector_add_uint("h450.ros.local.arg", h450_op_tab[i].opcode, h450_arg_handle);
dissector_add_uint("h450.ros.local.res", h450_op_tab[i].opcode, h450_res_handle);
}
- h450_err_handle = create_dissector_handle(dissect_h450_err, proto_h450);
for (i=0; i<(int)array_length(h450_err_tab); i++) {
dissector_add_uint("h450.ros.local.err", h450_err_tab[i].errcode, h450_err_handle);
}
diff --git a/epan/dissectors/asn1/h460/packet-h460-template.c b/epan/dissectors/asn1/h460/packet-h460-template.c
index bcb1b9bc61..3a3f819279 100644
--- a/epan/dissectors/asn1/h460/packet-h460-template.c
+++ b/epan/dissectors/asn1/h460/packet-h460-template.c
@@ -28,12 +28,15 @@ void proto_register_h460(void);
void proto_reg_handoff_h460(void);
/* Initialize the protocol and registered fields */
-static int proto_h460 = -1;
+static int proto_h460;
#include "packet-h460-hf.c"
/* Initialize the subtree pointers */
#include "packet-h460-ett.c"
+/* Main dissector handle */
+static dissector_handle_t h460_name_handle;
+
/* Subdissectors */
static dissector_handle_t q931_ie_handle = NULL;
static dissector_handle_t h225_ras_handle = NULL;
@@ -247,6 +250,7 @@ void proto_register_h460(void) {
proto_register_field_array(proto_h460, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ h460_name_handle = register_dissector(PFNAME, dissect_h460_name, proto_h460);
for (ftr=h460_feature_tab; ftr->id; ftr++) {
if (ftr->opt & GD) ftr->key_gd = wmem_strdup_printf(wmem_epan_scope(), "GenericData/%s", ftr->id);
if (ftr->opt & FD) ftr->key_fd = wmem_strdup_printf(wmem_epan_scope(), "FeatureDescriptor/%s", ftr->id);
@@ -260,12 +264,10 @@ void proto_register_h460(void) {
void proto_reg_handoff_h460(void)
{
h460_feature_t *ftr;
- dissector_handle_t h460_name_handle;
q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_h460);
h225_ras_handle = find_dissector_add_dependency("h225.ras", proto_h460);
- h460_name_handle = create_dissector_handle(dissect_h460_name, proto_h460);
for (ftr=h460_feature_tab; ftr->id; ftr++) {
if (ftr->key_gd) dissector_add_string("h225.gef.name", ftr->key_gd, h460_name_handle);
if (ftr->key_fd) dissector_add_string("h225.gef.name", ftr->key_fd, h460_name_handle);
diff --git a/epan/dissectors/asn1/h501/packet-h501-template.c b/epan/dissectors/asn1/h501/packet-h501-template.c
index 9ce5c0961f..aaa4d2c79e 100644
--- a/epan/dissectors/asn1/h501/packet-h501-template.c
+++ b/epan/dissectors/asn1/h501/packet-h501-template.c
@@ -28,15 +28,17 @@
void proto_register_h501(void);
/* Initialize the protocol and registered fields */
-static int proto_h501 = -1;
+static int proto_h501;
#include "packet-h501-hf.c"
/* Initialize the subtree pointers */
-static int ett_h501 = -1;
+static int ett_h501;
#include "packet-h501-ett.c"
/* Dissectors */
static dissector_handle_t h501_pdu_handle;
+static dissector_handle_t h501_udp_handle;
+static dissector_handle_t h501_tcp_handle;
/* Preferences */
#define H501_PORT 2099
@@ -96,8 +98,12 @@ void proto_register_h501(void) {
proto_register_field_array(proto_h501, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ /* Register dissectors */
h501_pdu_handle = register_dissector(PFNAME, dissect_h501_pdu, proto_h501);
+ h501_udp_handle = register_dissector(PFNAME ".udp", dissect_h501_udp, proto_h501);
+ h501_tcp_handle = register_dissector(PFNAME ".tcp", dissect_h501_tcp, proto_h501);
+ /* Register dissection preferences */
h501_module = prefs_register_protocol(proto_h501, NULL);
prefs_register_bool_preference(h501_module, "desegment",
"Desegment H.501 over TCP",
@@ -109,11 +115,6 @@ void proto_register_h501(void) {
/*--- proto_reg_handoff_h501 -------------------------------------------*/
void proto_reg_handoff_h501(void)
{
- dissector_handle_t h501_udp_handle;
- dissector_handle_t h501_tcp_handle;
-
- h501_udp_handle = create_dissector_handle(dissect_h501_udp, proto_h501);
- h501_tcp_handle = create_dissector_handle(dissect_h501_tcp, proto_h501);
dissector_add_uint_with_preference("tcp.port", H501_PORT, h501_tcp_handle);
dissector_add_uint_with_preference("udp.port", H501_PORT, h501_udp_handle);
}
diff --git a/epan/dissectors/asn1/hnbap/hnbap.cnf b/epan/dissectors/asn1/hnbap/hnbap.cnf
index 7c5429a03b..27fe487d27 100644
--- a/epan/dissectors/asn1/hnbap/hnbap.cnf
+++ b/epan/dissectors/asn1/hnbap/hnbap.cnf
@@ -49,7 +49,8 @@ AccessResult
#.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(hnbap_ProtocolIE_ID_vals), "unknown (%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
+ val_to_str(ProtocolIE_ID, VALS(hnbap_ProtocolIE_ID_vals), "unknown (%d)"));
}
#.END
@@ -59,7 +60,7 @@ AccessResult
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
#.FN_FTR ProcedureCode
- if (strcmp(val_to_str(ProcedureCode, hnbap_ProcedureCode_vals, "Unknown"), "Unknown") == 0) {
+ if (strcmp(val_to_str_const(ProcedureCode, hnbap_ProcedureCode_vals, "Unknown"), "Unknown") == 0) {
col_set_str(actx->pinfo->cinfo, COL_INFO,
"Unknown Message");
} /* Known Procedures should be included below and broken out as ELEMENTARY names to avoid confusion */
diff --git a/epan/dissectors/asn1/hnbap/packet-hnbap-template.c b/epan/dissectors/asn1/hnbap/packet-hnbap-template.c
index aacc98bec4..64d265f5de 100644
--- a/epan/dissectors/asn1/hnbap/packet-hnbap-template.c
+++ b/epan/dissectors/asn1/hnbap/packet-hnbap-template.c
@@ -38,13 +38,13 @@ void proto_register_hnbap(void);
#include "packet-hnbap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_hnbap = -1;
+static int proto_hnbap;
#include "packet-hnbap-hf.c"
/* Initialize the subtree pointers */
-static int ett_hnbap = -1;
-static int ett_hnbap_imsi = -1;
+static int ett_hnbap;
+static int ett_hnbap_imsi;
#include "packet-hnbap-ett.c"
struct hnbap_private_data {
@@ -54,7 +54,6 @@ struct hnbap_private_data {
/* Global variables */
static guint32 ProcedureCode;
static guint32 ProtocolIE_ID;
-static guint global_sctp_port = SCTP_PORT_HNBAP;
/* Dissector tables */
static dissector_table_t hnbap_ies_dissector_table;
@@ -147,7 +146,6 @@ dissect_hnbap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
/*--- proto_register_hnbap -------------------------------------------*/
void proto_register_hnbap(void) {
-module_t *hnbap_module;
/* List of fields */
@@ -180,8 +178,7 @@ module_t *hnbap_module;
hnbap_proc_sout_dissector_table = register_dissector_table("hnbap.proc.sout", "HNBAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_hnbap, FT_UINT32, BASE_DEC);
hnbap_proc_uout_dissector_table = register_dissector_table("hnbap.proc.uout", "HNBAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_hnbap, FT_UINT32, BASE_DEC);
- hnbap_module = prefs_register_protocol(proto_hnbap, proto_reg_handoff_hnbap);
- prefs_register_uint_preference(hnbap_module, "port", "HNBAP SCTP Port", "Set the port for HNBAP messages (Default of 29169)", 10, &global_sctp_port);
+ /* hnbap_module = prefs_register_protocol(proto_hnbap, NULL); */
}
@@ -189,18 +186,8 @@ module_t *hnbap_module;
void
proto_reg_handoff_hnbap(void)
{
- static gboolean initialized = FALSE;
- static guint sctp_port;
-
- if (!initialized) {
- dissector_add_uint("sctp.ppi", HNBAP_PAYLOAD_PROTOCOL_ID, hnbap_handle);
- initialized = TRUE;
+ dissector_add_uint("sctp.ppi", HNBAP_PAYLOAD_PROTOCOL_ID, hnbap_handle);
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_HNBAP, hnbap_handle);
#include "packet-hnbap-dis-tab.c"
- } else {
- dissector_delete_uint("sctp.port", sctp_port, hnbap_handle);
- }
- /* Set our port number for future use */
- sctp_port = global_sctp_port;
- dissector_add_uint("sctp.port", sctp_port, hnbap_handle);
}
diff --git a/epan/dissectors/asn1/idmp/CMakeLists.txt b/epan/dissectors/asn1/idmp/CMakeLists.txt
index aed8c0cef5..eb9805a140 100644
--- a/epan/dissectors/asn1/idmp/CMakeLists.txt
+++ b/epan/dissectors/asn1/idmp/CMakeLists.txt
@@ -35,7 +35,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -b -L )
+set( A2W_FLAGS -b )
set( EXTRA_CNF
"${CMAKE_CURRENT_BINARY_DIR}/../x509af/x509af-exp.cnf"
diff --git a/epan/dissectors/asn1/idmp/packet-idmp-template.c b/epan/dissectors/asn1/idmp/packet-idmp-template.c
index dbe118867d..ad9db5f6d3 100644
--- a/epan/dissectors/asn1/idmp/packet-idmp-template.c
+++ b/epan/dissectors/asn1/idmp/packet-idmp-template.c
@@ -48,29 +48,29 @@ static const char *saved_protocolID = NULL;
static guint32 opcode = -1;
/* Initialize the protocol and registered fields */
-int proto_idmp = -1;
+int proto_idmp;
-static int hf_idmp_version = -1;
-static int hf_idmp_final = -1;
-static int hf_idmp_length = -1;
-static int hf_idmp_PDU = -1;
+static int hf_idmp_version;
+static int hf_idmp_final;
+static int hf_idmp_length;
+static int hf_idmp_PDU;
static reassembly_table idmp_reassembly_table;
-static int hf_idmp_fragments = -1;
-static int hf_idmp_fragment = -1;
-static int hf_idmp_fragment_overlap = -1;
-static int hf_idmp_fragment_overlap_conflicts = -1;
-static int hf_idmp_fragment_multiple_tails = -1;
-static int hf_idmp_fragment_too_long_fragment = -1;
-static int hf_idmp_fragment_error = -1;
-static int hf_idmp_fragment_count = -1;
-static int hf_idmp_reassembled_in = -1;
-static int hf_idmp_reassembled_length = -1;
-static int hf_idmp_segment_data = -1;
-
-static gint ett_idmp_fragment = -1;
-static gint ett_idmp_fragments = -1;
+static int hf_idmp_fragments;
+static int hf_idmp_fragment;
+static int hf_idmp_fragment_overlap;
+static int hf_idmp_fragment_overlap_conflicts;
+static int hf_idmp_fragment_multiple_tails;
+static int hf_idmp_fragment_too_long_fragment;
+static int hf_idmp_fragment_error;
+static int hf_idmp_fragment_count;
+static int hf_idmp_reassembled_in;
+static int hf_idmp_reassembled_length;
+static int hf_idmp_segment_data;
+
+static gint ett_idmp_fragment;
+static gint ett_idmp_fragments;
static const fragment_items idmp_frag_items = {
/* Fragment subtrees */
@@ -117,7 +117,7 @@ static int call_idmp_oid_callback(tvbuff_t *tvb, int offset, packet_info *pinfo,
#include "packet-idmp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_idmp = -1;
+static gint ett_idmp;
#include "packet-idmp-ett.c"
#include "packet-idmp-fn.c"
diff --git a/epan/dissectors/asn1/idmp/packet-idmp-template.h b/epan/dissectors/asn1/idmp/packet-idmp-template.h
index 2e3b3babb0..e0091a0332 100644
--- a/epan/dissectors/asn1/idmp/packet-idmp-template.h
+++ b/epan/dissectors/asn1/idmp/packet-idmp-template.h
@@ -12,7 +12,7 @@
#ifndef PACKET_IDM_H
#define PACKET_IDM_H
-#include <packet-ros.h>
+#include "packet-ros.h"
void
register_idmp_protocol_info(const char *oid, const ros_info_t *rinfo, int proto _U_, const char *name);
diff --git a/epan/dissectors/asn1/ieee1609dot2/CMakeLists.txt b/epan/dissectors/asn1/ieee1609dot2/CMakeLists.txt
index 728e03a340..ba45378675 100644
--- a/epan/dissectors/asn1/ieee1609dot2/CMakeLists.txt
+++ b/epan/dissectors/asn1/ieee1609dot2/CMakeLists.txt
@@ -17,7 +17,9 @@ set( EXT_ASN_FILE_LIST
set( ASN_FILE_LIST
IEEE1609dot2BaseTypes.asn
- IEEE1609dot2DataTypes.asn
+ Ieee1609Dot2CrlBaseTypes.asn
+ Ieee1609Dot2Crl.asn
+ Ieee1609Dot2.asn
IEEE1609dot12.asn
)
diff --git a/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot12.asn b/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot12.asn
index 817302ead6..2549baa609 100644
--- a/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot12.asn
+++ b/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot12.asn
@@ -1,9 +1,10 @@
+-- https://standards.ieee.org/products-programs/regauth/psid/public/
IEEE1609dot12
DEFINITIONS AUTOMATIC TAGS ::= BEGIN
IMPORTS
Psid
- FROM IEEE1609dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
+ FROM Ieee1609Dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
standards-association-numbered-series-standards(2) wave-stds(1609)
dot2(2) base(1) base-types(2)}
;
@@ -63,13 +64,12 @@ psid-road-and-lane-topology-service Psid ::= 138
psid-infrastructure-to-vehicle-information-service Psid ::= 139 -- ISO-19321-ETSI-TS-103-301
psid-traffic-light-control-requests-service Psid ::= 140 -- ISO-19091-ETSI-TS-103-301
psid-geonetworking-management-communications Psid ::= 141 -- ETSI-EN-302-636-4-1
+psid-certificate-revocation-list-application Psid ::= 256 -- IEEEE Std 1609.2 CAMP
psid-traffic-light-control-status-service Psid ::= 637 -- ISO-19091-ETSI-TS-103-301
psid-collective-perception-service Psid ::= 639 -- ETSI-TS-103-324
-- 0x8e to 0xFF 0p80-09 to 0p80-7F Not allocated
-psid-certificate-revocation-list-application Psid ::= 256 -- CAMP
-
-- 0x01-01 to 0x3E-7F 0p80-81 to 0pBD-FF Not allocated
-- 0x3E-80 to 0x40-1F 0pBE-00 to 0pBF-9F Reserved IEEE P1609 WG 416
-- 0x40-20 to 0x40-5F 0pBF-A0 to 0pBF-DF Private used IEEE P1609 WG 64
diff --git a/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2BaseTypes.asn b/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2BaseTypes.asn
index 795b1ec22c..1961cf0c40 100644
--- a/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2BaseTypes.asn
+++ b/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2BaseTypes.asn
@@ -1,335 +1,1413 @@
-IEEE1609dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
-standards-association-numbered-series-standards(2) wave-stds(1609)
-dot2(2) base(1) base-types(2) major-version-2(2)}
-
--- Minor version: 1
-
---
---********************************************************************
--- IEEE P1609.2 Base Data Types
---
---********************************************************************
-
-DEFINITIONS AUTOMATIC TAGS ::= BEGIN
-
-EXPORTS ALL;
-
-
--- ------------------------------------------------------------------
---
--- Integers
---
--- ------------------------------------------------------------------
-
-
-Uint3 ::= INTEGER (0..7) -- (hex) 07
-Uint8 ::= INTEGER (0..255) -- (hex) ff
-Uint16 ::= INTEGER (0..65535) -- (hex) ff ff
-Uint32 ::= INTEGER (0..4294967295)--<LONGLONG>-- -- (hex) ff ff ff ff
-Uint64 ::= INTEGER (0..18446744073709551615) -- (hex) ff ff ff ff ff ff ff ff
-
-SequenceOfUint8 ::= SEQUENCE OF Uint8
+-- https://forge.etsi.org/rep/ITS/asn1/ieee1609.2/-/blob/ieee/Ieee1609Dot2CrlBaseTypes.asn
+--***************************************************************************--
+-- IEEE Std 1609.2: Base Data Types --
+--***************************************************************************--
+
+/**
+ * @note Section references in this file are to clauses in IEEE Std
+ * 1609.2 unless indicated otherwise. Full forms of acronyms and
+ * abbreviations used in this file are specified in 3.2.
+ */
+
+Ieee1609Dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ base(1) base-types(2) major-version-2(2) minor-version-4(4)}
+
+DEFINITIONS AUTOMATIC TAGS ::= BEGIN
+
+--***************************************************************************--
+-- Integer Types --
+--***************************************************************************--
+
+/**
+ * @brief This atomic type is used in the definition of other data structures.
+ * It is for non-negative integers up to 7, i.e., (hex)07.
+ */
+Uint3 ::= INTEGER (0..7)
+
+/**
+ * @brief This atomic type is used in the definition of other data structures.
+ * It is for non-negative integers up to 255, i.e., (hex)ff.
+ */
+Uint8 ::= INTEGER (0..255)
+
+/**
+ * @brief This atomic type is used in the definition of other data structures.
+ * It is for non-negative integers up to 65,535, i.e., (hex)ff ff.
+ */
+Uint16 ::= INTEGER (0..65535)
+
+/**
+ * @brief This atomic type is used in the definition of other data structures.
+ * It is for non-negative integers up to 4,294,967,295, i.e.,
+ * (hex)ff ff ff ff.
+ */
+Uint32 ::= INTEGER (0..4294967295)
+
+/**
+ * @brief This atomic type is used in the definition of other data structures.
+ * It is for non-negative integers up to 18,446,744,073,709,551,615, i.e.,
+ * (hex)ff ff ff ff ff ff ff ff.
+ */
+Uint64 ::= INTEGER (0..18446744073709551615)
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfUint8 ::= SEQUENCE OF Uint8
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfUint16 ::= SEQUENCE OF Uint16
--- ------------------------------------------------------------------
---
--- OCTET STRING types
---
--- ------------------------------------------------------------------
+--***************************************************************************--
+-- OCTET STRING Types --
+--***************************************************************************--
+/**
+ * @brief This is a synonym for ASN.1 OCTET STRING, and is used in the
+ * definition of other data structures.
+ */
Opaque ::= OCTET STRING
-
-HashedId10 ::= OCTET STRING (SIZE(10))
-HashedId8 ::= OCTET STRING (SIZE(8))
-HashedId3 ::= OCTET STRING (SIZE(3))
+/**
+ * @brief This type contains the truncated hash of another data structure.
+ * The HashedId3 for a given data structure is calculated by calculating the
+ * hash of the encoded data structure and taking the low-order three bytes of
+ * the hash output. The low-order three bytes are the last three bytes of the
+ * 32-byte hash when represented in network byte order. If the data structure
+ * is subject to canonicalization it is canonicalized before hashing. See
+ * Example below.
+ *
+ * The hash algorithm to be used to calculate a HashedId3 within a
+ * structure depends on the context. In this standard, for each structure
+ * that includes a HashedId3 field, the corresponding text indicates how the
+ * hash algorithm is determined. See also the discussion in 5.3.9.
+ *
+ * Example: Consider the SHA-256 hash of the empty string:
+ *
+ * SHA-256("") =
+ * e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+ *
+ * The HashedId3 derived from this hash corresponds to the following:
+ *
+ * HashedId3 = 52b855.
+ */
+HashedId3 ::= OCTET STRING (SIZE(3))
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfHashedId3 ::= SEQUENCE OF HashedId3
+/**
+ * @brief This type contains the truncated hash of another data structure.
+ * The HashedId8 for a given data structure is calculated by calculating the
+ * hash of the encoded data structure and taking the low-order eight bytes of
+ * the hash output. The low-order eight bytes are the last eight bytes of the
+ * hash when represented in network byte order. If the data structure
+ * is subject to canonicalization it is canonicalized before hashing. See
+ * Example below.
+ *
+ * The hash algorithm to be used to calculate a HashedId8 within a
+ * structure depends on the context. In this standard, for each structure
+ * that includes a HashedId8 field, the corresponding text indicates how the
+ * hash algorithm is determined. See also the discussion in 5.3.9.
+ *
+ * Example: Consider the SHA-256 hash of the empty string:
+ *
+ * SHA-256("") =
+ * e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+ *
+ * The HashedId8 derived from this hash corresponds to the following:
+ *
+ * HashedId8 = a495991b7852b855.
+ */
+HashedId8 ::= OCTET STRING (SIZE(8))
+
+/**
+ * @brief This type contains the truncated hash of another data structure.
+ * The HashedId10 for a given data structure is calculated by calculating the
+ * hash of the encoded data structure and taking the low-order ten bytes of
+ * the hash output. The low-order ten bytes are the last ten bytes of the
+ * hash when represented in network byte order. If the data structure
+ * is subject to canonicalization it is canonicalized before hashing. See
+ * Example below.
+ *
+ * The hash algorithm to be used to calculate a HashedId10 within a
+ * structure depends on the context. In this standard, for each structure
+ * that includes a HashedId10 field, the corresponding text indicates how the
+ * hash algorithm is determined. See also the discussion in 5.3.9.
+ *
+ * Example: Consider the SHA-256 hash of the empty string:
+ *
+ * SHA-256("") =
+ * e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+ *
+ * The HashedId10 derived from this hash corresponds to the following:
+ *
+ * HashedId10 = 934ca495991b7852b855.
+ */
+HashedId10 ::= OCTET STRING (SIZE(10))
--- ------------------------------------------------------------------
---
--- Time
---
--- ------------------------------------------------------------------
-
+/**
+ * @brief This data structure contains the truncated hash of another data
+ * structure. The HashedId32 for a given data structure is calculated by
+ * calculating the hash of the encoded data structure and taking the
+ * low-order 32 bytes of the hash output. The low-order 32 bytes are the last
+ * 32 bytes of the hash when represented in network byte order. If the data
+ * structure is subject to canonicalization it is canonicalized before
+ * hashing. See Example below.
+ *
+ * The hash algorithm to be used to calculate a HashedId32 within a
+ * structure depends on the context. In this standard, for each structure
+ * that includes a HashedId32 field, the corresponding text indicates how the
+ * hash algorithm is determined. See also the discussion in 5.3.9.
+ *
+ * Example: Consider the SHA-256 hash of the empty string:
+ *
+ * SHA-256("") =
+ * e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+ *
+ * The HashedId32 derived from this hash corresponds to the following:
+ *
+ * HashedId32 = e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8
+ * 55.
+ */
+HashedId32 ::= OCTET STRING (SIZE(32))
+
+/**
+ * @brief This data structure contains the truncated hash of another data
+ * structure. The HashedId48 for a given data structure is calculated by
+ * calculating the hash of the encoded data structure and taking the
+ * low-order 48 bytes of the hash output. The low-order 48 bytes are the last
+ * 48 bytes of the hash when represented in network byte order. If the data
+ * structure is subject to canonicalization it is canonicalized before
+ * hashing. See Example below.
+ *
+ * The hash algorithm to be used to calculate a HashedId48 within a
+ * structure depends on the context. In this standard, for each structure
+ * that includes a HashedId48 field, the corresponding text indicates how the
+ * hash algorithm is determined. See also the discussion in 5.3.9.
+ *
+ * Example: Consider the SHA-384 hash of the empty string:
+ *
+ * SHA-384("") = 38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6
+ * e1da274edebfe76f65fbd51ad2f14898b95b
+ *
+ * The HashedId48 derived from this hash corresponds to the following:
+ *
+ * HashedId48 = 38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e
+ * 1da274edebfe76f65fbd51ad2f14898b95b.
+ */
+HashedId48 ::= OCTET STRING(SIZE(48))
+
+
+--***************************************************************************--
+-- Time Structures --
+--***************************************************************************--
+
+/**
+ * @brief This type gives the number of (TAI) seconds since 00:00:00 UTC, 1
+ * January, 2004.
+ */
Time32 ::= Uint32
+
+/**
+ * @brief This data structure is a 64-bit integer giving an estimate of the
+ * number of (TAI) microseconds since 00:00:00 UTC, 1 January, 2004.
+ */
Time64 ::= Uint64
-ValidityPeriod ::= SEQUENCE {
- start Time32,
- duration Duration
+/**
+ * @brief This type gives the validity period of a certificate. The start of
+ * the validity period is given by start and the end is given by
+ * start + duration.
+ */
+ValidityPeriod ::= SEQUENCE {
+ start Time32,
+ duration Duration
}
-Duration ::= CHOICE {
- microseconds Uint16,
- milliseconds Uint16,
- seconds Uint16,
- minutes Uint16,
- hours Uint16,
- sixtyHours Uint16,
- years Uint16
+/**
+ * @brief This structure represents the duration of validity of a
+ * certificate. The Uint16 value is the duration, given in the units denoted
+ * by the indicated choice. A year is considered to be 31556952 seconds,
+ * which is the average number of seconds in a year.
+ *
+ * @note Years can be mapped more closely to wall-clock days using the hours
+ * choice for up to 7 years and the sixtyHours choice for up to 448 years.
+ */
+Duration ::= CHOICE {
+ microseconds Uint16,
+ milliseconds Uint16,
+ seconds Uint16,
+ minutes Uint16,
+ hours Uint16,
+ sixtyHours Uint16,
+ years Uint16
}
--- ------------------------------------------------------------------
---
--- Location
---
--- ------------------------------------------------------------------
-
-GeographicRegion ::= CHOICE {
- circularRegion CircularRegion,
- rectangularRegion SequenceOfRectangularRegion,
- polygonalRegion PolygonalRegion,
- identifiedRegion SequenceOfIdentifiedRegion,
- ...
+--***************************************************************************--
+-- Location Structures --
+--***************************************************************************--
+
+/**
+ * @brief This structure represents a geographic region of a specified form.
+ * A certificate is not valid if any part of the region indicated in its
+ * scope field lies outside the region indicated in the scope of its issuer.
+ *
+ * @param circularRegion: contains a single instance of the CircularRegion
+ * structure.
+ *
+ * @param rectangularRegion: is an array of RectangularRegion structures
+ * containing at least one entry. This field is interpreted as a series of
+ * rectangles, which may overlap or be disjoint. The permitted region is any
+ * point within any of the rectangles.
+ *
+ * @param polygonalRegion: contains a single instance of the PolygonalRegion
+ * structure.
+ *
+ * @param identifiedRegion: is an array of IdentifiedRegion structures
+ * containing at least one entry. The permitted region is any point within
+ * any of the identified regions.
+ *
+ * @note Critical information fields:
+ * - If present, this is a critical information field as defined in 5.2.6.
+ * An implementation that does not recognize the indicated CHOICE when
+ * verifying a signed SPDU shall indicate that the signed SPDU is invalid in
+ * the sense of 4.2.2.3.2, that is, it is invalid in the sense that its
+ * validity cannot be established.
+ * - If selected, rectangularRegion is a critical information field as
+ * defined in 5.2.6. An implementation that does not support the number of
+ * RectangularRegion in rectangularRegions when verifying a signed SPDU shall
+ * indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2, that
+ * is, it is invalid in the sense that its validity cannot be established.
+ * A conformant implementation shall support rectangularRegions fields
+ * containing at least eight entries.
+ * - If selected, identifiedRegion is a critical information field as
+ * defined in 5.2.6. An implementation that does not support the number of
+ * IdentifiedRegion in identifiedRegion shall reject the signed SPDU as
+ * invalid in the sense of 4.2.2.3.2, that is, it is invalid in the sense
+ * that its validity cannot be established. A conformant implementation shall
+ * support identifiedRegion fields containing at least eight entries.
+ */
+GeographicRegion ::= CHOICE {
+ circularRegion CircularRegion,
+ rectangularRegion SequenceOfRectangularRegion,
+ polygonalRegion PolygonalRegion,
+ identifiedRegion SequenceOfIdentifiedRegion,
+ ...
}
-CircularRegion ::= SEQUENCE {
- center TwoDLocation,
- radius Uint16
+/**
+ * @brief This structure specifies a circle with its center at center, its
+ * radius given in meters, and located tangential to the reference ellipsoid.
+ * The indicated region is all the points on the surface of the reference
+ * ellipsoid whose distance to the center point over the reference ellipsoid
+ * is less than or equal to the radius. A point which contains an elevation
+ * component is considered to be within the circular region if its horizontal
+ * projection onto the reference ellipsoid lies within the region.
+ */
+CircularRegion ::= SEQUENCE {
+ center TwoDLocation,
+ radius Uint16
}
-RectangularRegion ::= SEQUENCE {
- northWest TwoDLocation,
- southEast TwoDLocation
+/**
+ * @brief This structure specifies a “rectangle” on the surface of the WGS84 ellipsoid where the
+ * sides are given by lines of constant latitude or longitude.
+ * A point which contains an elevation component is considered to be within the rectangular region
+ * if its horizontal projection onto the reference ellipsoid lies within the region.
+ * A RectangularRegion is invalid if the northWest value is south of the southEast value, or if the
+ * latitude values in the two points are equal, or if the longitude values in the two points are
+ * equal; otherwise it is valid. A certificate that contains an invalid RectangularRegion is invalid.
+ *
+ * @param northWest: is the north-west corner of the rectangle.
+ *
+ * @param southEast is the south-east corner of the rectangle.
+ */
+RectangularRegion ::= SEQUENCE {
+ northWest TwoDLocation,
+ southEast TwoDLocation
}
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfRectangularRegion ::= SEQUENCE OF RectangularRegion
-PolygonalRegion ::= SEQUENCE SIZE(3..MAX) OF TwoDLocation
-
-TwoDLocation ::= SEQUENCE {
- latitude Latitude,
- longitude Longitude
+/**
+ * @brief This structure defines a region using a series of distinct
+ * geographic points, defined on the surface of the reference ellipsoid. The
+ * region is specified by connecting the points in the order they appear,
+ * with each pair of points connected by the geodesic on the reference
+ * ellipsoid. The polygon is completed by connecting the final point to the
+ * first point. The allowed region is the interior of the polygon and its
+ * boundary.
+ *
+ * A point which contains an elevation component is considered to be
+ * within the polygonal region if its horizontal projection onto the
+ * reference ellipsoid lies within the region.
+ *
+ * A valid PolygonalRegion contains at least three points. In a valid
+ * PolygonalRegion, the implied lines that make up the sides of the polygon
+ * do not intersect.
+ *
+ * @note This type does not support enclaves / exclaves. This might be
+ * addressed in a future version of this standard.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.6. An implementation that does not
+ * support the number of TwoDLocation in the PolygonalRegion when verifying a
+ * signed SPDU shall indicate that the signed SPDU is invalid. A compliant
+ * implementation shall support PolygonalRegions containing at least eight
+ * TwoDLocation entries.
+ */
+PolygonalRegion ::= SEQUENCE SIZE (3..MAX) OF TwoDLocation
+
+/**
+ * @brief This structure is used to define validity regions for use in
+ * certificates. The latitude and longitude fields contain the latitude and
+ * longitude as defined above.
+ *
+ * @note This data structure is consistent with the location encoding
+ * used in SAE J2735, except that values 900 000 001 for latitude (used to
+ * indicate that the latitude was not available) and 1 800 000 001 for
+ * longitude (used to indicate that the longitude was not available) are not
+ * valid.
+ */
+TwoDLocation ::= SEQUENCE {
+ latitude Latitude,
+ longitude Longitude
}
-IdentifiedRegion ::= CHOICE {
- countryOnly CountryOnly,
- countryAndRegions CountryAndRegions,
- countryAndSubregions CountryAndSubregions,
- ...
+/**
+ * @brief This structure indicates the region of validity of a certificate
+ * using region identifiers.
+ * A conformant implementation that supports this type shall support at least
+ * one of the possible CHOICE values. The Protocol Implementation Conformance
+ * Statement (PICS) provided in Annex A allows an implementation to state
+ * which CountryOnly values it recognizes.
+ *
+ * @param countryOnly: indicates that only a country (or a geographic entity
+ * included in a country list) is given.
+ *
+ * @param countryAndRegions: indicates that one or more top-level regions
+ * within a country (as defined by the region listing associated with that
+ * country) is given.
+ *
+ * @param countryAndSubregions: indicates that one or more regions smaller
+ * than the top-level regions within a country (as defined by the region
+ * listing associated with that country) is given.
+ *
+ * Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.6. An implementation that does not
+ * recognize the indicated CHOICE when verifying a signed SPDU shall indicate
+ * that the signed SPDU is invalid in the sense of 4.2.2.3.2, that is, it is
+ * invalid in the sense that its validity cannot be established.
+ */
+IdentifiedRegion ::= CHOICE {
+ countryOnly UnCountryId,
+ countryAndRegions CountryAndRegions,
+ countryAndSubregions CountryAndSubregions,
+ ...
}
-SequenceOfIdentifiedRegion ::= SEQUENCE OF IdentifiedRegion
-CountryOnly ::= Uint16
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfIdentifiedRegion ::= SEQUENCE OF IdentifiedRegion
-CountryAndRegions ::= SEQUENCE {
- countryOnly CountryOnly,
- regions SequenceOfUint8
+/**
+ * @brief This type contains the integer representation of the country or
+ * area identifier as defined by the United Nations Statistics Division in
+ * October 2013 (see normative references in Clause 0).
+ * A conformant implementation that implements IdentifiedRegion shall
+ * recognize (in the sense of “be able to determine whether a two dimensional
+ * location lies inside or outside the borders identified by”) at least one
+ * value of UnCountryId. The Protocol Implementation Conformance Statement
+ * (PICS) provided in Annex A allows an implementation to state which
+ * UnCountryId values it recognizes.
+ * Since 2013 and before the publication of this version of this standard,
+ * three changes have been made to the country code list, to define the
+ * region "sub-Saharan Africa" and remove the "developed regions", and
+ * "developing regions". A conformant implementation may recognize these
+ * region identifiers in the sense defined in the previous paragraph.
+ * If a verifying implementation is required to check that relevant
+ * geographic information in a signed SPDU is consistent with a certificate
+ * containing one or more instances of this type, then the SDS is permitted
+ * to indicate that the signed SPDU is valid even if some instances of this
+ * type are unrecognized in the sense defined above, so long as the
+ * recognized instances of this type completely contain the relevant
+ * geographic information. Informally, if the recognized values in the
+ * certificate allow the SDS to determine that the SPDU is valid, then it
+ * can make that determination even if there are also unrecognized values in
+ * the certificate. This field is therefore not a "critical information
+ * field" as defined in 5.2.6, because unrecognized values are permitted so
+ * long as the validity of the SPDU can be established with the recognized
+ * values. However, as discussed in 5.2.6, the presence of an unrecognized
+ * value in a certificate can make it impossible to determine whether the
+ * certificate and the SPDU are valid.
+ */
+UnCountryId ::= Uint16
+
+/**
+ * @brief This type is defined only for backwards compatibility.
+ */
+CountryOnly ::= UnCountryId
+
+/**
+ * @brief A conformant implementation that supports CountryAndRegions shall
+ * support a regions field containing at least eight entries.
+ * A conformant implementation that implements this type shall recognize
+ * (in the sense of "be able to determine whether a two dimensional location
+ * lies inside or outside the borders identified by") at least one value of
+ * UnCountryId and at least one value for a region within the country
+ * indicated by that recognized UnCountryId value. In this version of this
+ * standard, the only means to satisfy this is for a conformant
+ * implementation to recognize the value of UnCountryId indicating USA and
+ * at least one of the FIPS state codes for US states. The Protocol
+ * Implementation Conformance Statement (PICS) provided in Annex A allows
+ * an implementation to state which UnCountryId values it recognizes and
+ * which region values are recognized within that country.
+ * If a verifying implementation is required to check that an relevant
+ * geographic information in a signed SPDU is consistent with a certificate
+ * containing one or more instances of this type, then the SDS is permitted
+ * to indicate that the signed SPDU is valid even if some values of country
+ * or within regions are unrecognized in the sense defined above, so long
+ * as the recognized instances of this type completely contain the relevant
+ * geographic information. Informally, if the recognized values in the
+ * certificate allow the SDS to determine that the SPDU is valid, then it
+ * can make that determination even if there are also unrecognized values
+ * in the certificate. This field is therefore not a "critical information
+ * field" as defined in 5.2.6, because unrecognized values are permitted so
+ * long as the validity of the SPDU can be established with the recognized
+ * values. However, as discussed in 5.2.6, the presence of an unrecognized
+ * value in a certificate can make it impossible to determine whether the
+ * certificate is valid and so whether the SPDU is valid.
+ * In this type:
+ *
+ * @param countryOnly: is a UnCountryId as defined above.
+ *
+ * @param regions: identifies one or more regions within the country. If
+ * country indicates the United States of America, the values in this field
+ * identify the state or statistically equivalent entity using the integer
+ * version of the 2010 FIPS codes as provided by the U.S. Census Bureau
+ * (see normative references in Clause 0). For other values of country, the
+ * meaning of region is not defined in this version of this standard.
+ */
+CountryAndRegions ::= SEQUENCE {
+ countryOnly UnCountryId,
+ regions SequenceOfUint8
}
-CountryAndSubregions ::= SEQUENCE {
- country CountryOnly,
- regionAndSubregions SequenceOfRegionAndSubregions
+/**
+ * @brief A conformant implementation that supports CountryAndSubregions
+ * shall support a regionAndSubregions field containing at least eight
+ * entries.
+ * A conformant implementation that implements this type shall recognize
+ * (in the sense of “be able to determine whether a two dimensional location
+ * lies inside or outside the borders identified by”) at least one value of
+ * country and at least one value for a region within the country indicated
+ * by that recognized country value. In this version of this standard, the
+ * only means to satisfy this is for a conformant implementation to recognize
+ * the value of UnCountryId indicating USA and at least one of the FIPS state
+ * codes for US states. The Protocol Implementation Conformance Statement
+ * (PICS) provided in Annex A allows an implementation to state which
+ * UnCountryId values it recognizes and which region values are recognized
+ * within that country.
+ * If a verifying implementation is required to check that an relevant
+ * geographic information in a signed SPDU is consistent with a certificate
+ * containing one or more instances of this type, then the SDS is permitted
+ * to indicate that the signed SPDU is valid even if some values of country
+ * or within regionAndSubregions are unrecognized in the sense defined above,
+ * so long as the recognized instances of this type completely contain the
+ * relevant geographic information. Informally, if the recognized values in
+ * the certificate allow the SDS to determine that the SPDU is valid, then
+ * it can make that determination even if there are also unrecognized values
+ * in the certificate. This field is therefore not a "critical information
+ * field" as defined in 5.2.6, because unrecognized values are permitted so
+ * long as the validity of the SPDU can be established with the recognized
+ * values. However, as discussed in 5.2.6, the presence of an unrecognized
+ * value in a certificate can make it impossible to determine whether the
+ * certificate is valid and so whether the SPDU is valid.
+ * In this structure:
+ *
+ * @param countryOnly: is a UnCountryId as defined above.
+ *
+ * @param regionAndSubregions: identifies one or more subregions within
+ * country.
+ */
+CountryAndSubregions ::= SEQUENCE {
+ countryOnly UnCountryId,
+ regionAndSubregions SequenceOfRegionAndSubregions
}
-RegionAndSubregions ::= SEQUENCE {
- region Uint8,
- subregions SequenceOfUint16
+/**
+ * @brief The meanings of the fields in this structure are to be interpreted
+ * in the context of a country within which the region is located, referred
+ * to as the "enclosing country". If this structure is used in a
+ * CountryAndSubregions structure, the enclosing country is the one indicated
+ * by the country field in the CountryAndSubregions structure. If other uses
+ * are defined for this structure in future, it is expected that that
+ * definition will include a specification of how the enclosing country can
+ * be determined.
+ * If the enclosing country is the United States of America:
+ * - The region field identifies the state or statistically equivalent
+ * entity using the integer version of the 2010 FIPS codes as provided by the
+ * U.S. Census Bureau (see normative references in Clause 0).
+ * - The values in the subregions field identify the county or county
+ * equivalent entity using the integer version of the 2010 FIPS codes as
+ * provided by the U.S. Census Bureau.
+ * If the enclosing country is a different country from the USA, the meaning
+ * of regionAndSubregions is not defined in this version of this standard.
+ * A conformant implementation that implements this type shall recognize (in
+ * the sense of "be able to determine whether a two-dimensional location lies
+ * inside or outside the borders identified by"), for at least one enclosing
+ * country, at least one value for a region within that country and at least
+ * one subregion for the indicated region. In this version of this standard,
+ * the only means to satisfy this is for a conformant implementation to
+ * recognize, for the USA, at least one of the FIPS state codes for US
+ * states, and at least one of the county codes in at least one of the
+ * recognized states. The Protocol Implementation Conformance Statement
+ * (PICS) provided in Annex A allows an implementation to state which
+ * UnCountryId values it recognizes and which region values are recognized
+ * within that country.
+ * If a verifying implementation is required to check that an relevant
+ * geographic information in a signed SPDU is consistent with a certificate
+ * containing one or more instances of this type, then the SDS is permitted
+ * to indicate that the signed SPDU is valid even if some values within
+ * subregions are unrecognized in the sense defined above, so long as the
+ * recognized instances of this type completely contain the relevant
+ * geographic information. Informally, if the recognized values in the
+ * certificate allow the SDS to determine that the SPDU is valid, then it
+ * can make that determination even if there are also unrecognized values
+ * in the certificate. This field is therefore not not a "critical
+ * information field" as defined in 5.2.6, because unrecognized values are
+ * permitted so long as the validity of the SPDU can be established with the
+ * recognized values. However, as discussed in 5.2.6, the presence of an
+ * unrecognized value in a certificate can make it impossible to determine
+ * whether the certificate is valid and so whether the SPDU is valid.
+ * In this structure:
+ *
+ * @param region: identifies a region within a country.
+ *
+ * @param subregions: identifies one or more subregions within region. A
+ * conformant implementation that supports RegionAndSubregions shall support
+ * a subregions field containing at least eight entries.
+ */
+RegionAndSubregions ::= SEQUENCE {
+ region Uint8,
+ subregions SequenceOfUint16
}
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfRegionAndSubregions ::= SEQUENCE OF RegionAndSubregions
-ThreeDLocation ::= SEQUENCE {
- latitude Latitude,
- longitude Longitude,
- elevation Elevation
+/**
+ * @brief This structure contains an estimate of 3D location. The details of
+ * the structure are given in the definitions of the individual fields below.
+ *
+ * @note The units used in this data structure are consistent with the
+ * location data structures used in SAE J2735 [B26], though the encoding is
+ * incompatible.
+ */
+ThreeDLocation ::= SEQUENCE {
+ latitude Latitude,
+ longitude Longitude,
+ elevation Elevation
}
+/**
+ * @brief This type contains an INTEGER encoding an estimate of the latitude
+ * with precision 1/10th microdegree relative to the World Geodetic System
+ * (WGS)-84 datum as defined in NIMA Technical Report TR8350.2.
+ * The integer in the latitude field is no more than 900 000 000 and no less
+ * than ?900 000 000, except that the value 900 000 001 is used to indicate
+ * the latitude was not available to the sender.
+ */
Latitude ::= NinetyDegreeInt
+
+/**
+ * @brief This type contains an INTEGER encoding an estimate of the longitude
+ * with precision 1/10th microdegree relative to the World Geodetic System
+ * (WGS)-84 datum as defined in NIMA Technical Report TR8350.2.
+ * The integer in the longitude field is no more than 1 800 000 000 and no
+ * less than ?1 799 999 999, except that the value 1 800 000 001 is used to
+ * indicate that the longitude was not available to the sender.
+ */
Longitude ::= OneEightyDegreeInt
-Elevation ::= ElevInt
-NinetyDegreeInt ::= INTEGER {
- min (-900000000),
- max (900000000),
- unknown (900000001)
+/**
+ * @brief This structure contains an estimate of the geodetic altitude above
+ * or below the WGS84 ellipsoid. The 16-bit value is interpreted as an
+ * integer number of decimeters representing the height above a minimum
+ * height of -409.5 m, with the maximum height being 6143.9 m.
+ */
+Elevation ::= Uint16
+
+/**
+ * @brief The integer in the latitude field is no more than 900,000,000 and
+ * no less than -900,000,000, except that the value 900,000,001 is used to
+ * indicate the latitude was not available to the sender.
+ */
+NinetyDegreeInt ::= INTEGER {
+ min (-900000000),
+ max (900000000),
+ unknown (900000001)
} (-900000000..900000001)
-KnownLatitude ::= NinetyDegreeInt (min..max) -- Minus 90deg to +90deg in microdegree intervals
+/**
+ * @brief The known latitudes are from -900,000,000 to +900,000,000 in 0.1
+ * microdegree intervals.
+ */
+KnownLatitude ::= NinetyDegreeInt (min..max)
+
+/**
+ * @brief The value 900,000,001 indicates that the latitude was not
+ * available to the sender.
+ */
UnknownLatitude ::= NinetyDegreeInt (unknown)
-
-OneEightyDegreeInt ::= INTEGER {
- min (-1799999999),
- max (1800000000),
- unknown (1800000001)
+
+/**
+ * @brief The integer in the longitude field is no more than 1,800,000,000
+ * and no less than -1,799,999,999, except that the value 1,800,000,001 is
+ * used to indicate that the longitude was not available to the sender.
+ */
+OneEightyDegreeInt ::= INTEGER {
+ min (-1799999999),
+ max (1800000000),
+ unknown (1800000001)
} (-1799999999..1800000001)
+/**
+ * @brief The known longitudes are from -1,799,999,999 to +1,800,000,000 in
+ * 0.1 microdegree intervals.
+ */
KnownLongitude ::= OneEightyDegreeInt (min..max)
+
+/**
+ * @brief The value 1,800,000,001 indicates that the longitude was not
+ * available to the sender.
+ */
UnknownLongitude ::= OneEightyDegreeInt (unknown)
-
-ElevInt ::= Uint16 -- Range is from -4096 to 61439 in units of one-tenth of a meter
--- ------------------------------------------------------------------
---
--- Crypto
---
--- ------------------------------------------------------------------
-Signature ::= CHOICE {
- ecdsaNistP256Signature EcdsaP256Signature,
- ecdsaBrainpoolP256r1Signature EcdsaP256Signature,
- ...,
- ecdsaBrainpoolP384r1Signature EcdsaP384Signature
+--***************************************************************************--
+-- Crypto Structures --
+--***************************************************************************--
+
+/**
+ * @brief This structure represents a signature for a supported public key
+ * algorithm. It may be contained within SignedData or Certificate.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.5. An implementation that does not
+ * recognize the indicated CHOICE for this type when verifying a signed SPDU
+ * shall indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2,
+ * that is, it is invalid in the sense that its validity cannot be
+ * established.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to instances of this data structure of form EcdsaP256Signature
+ * and EcdsaP384Signature.
+ */
+Signature ::= CHOICE {
+ ecdsaNistP256Signature EcdsaP256Signature,
+ ecdsaBrainpoolP256r1Signature EcdsaP256Signature,
+ ...,
+ ecdsaBrainpoolP384r1Signature EcdsaP384Signature,
+ ecdsaNistP384Signature EcdsaP384Signature,
+ sm2Signature EcsigP256Signature
}
-EcdsaP256Signature ::= SEQUENCE {
- rSig EccP256CurvePoint,
- sSig OCTET STRING (SIZE (32))
+/**
+ * @brief This structure represents an ECDSA signature. The signature is
+ * generated as specified in 5.3.1.
+ *
+ * If the signature process followed the specification of FIPS 186-4
+ * and output the integer r, r is represented as an EccP256CurvePoint
+ * indicating the selection x-only.
+ *
+ * If the signature process followed the specification of SEC 1 and
+ * output the elliptic curve point R to allow for fast verification, R is
+ * represented as an EccP256CurvePoint indicating the choice compressed-y-0,
+ * compressed-y-1, or uncompressed at the sender's discretion.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. When this data structure
+ * is canonicalized, the EccP256CurvePoint in rSig is represented in the
+ * form x-only.
+ *
+ * @note When the signature is of form x-only, the x-value in rSig is
+ * an integer mod n, the order of the group; when the signature is of form
+ * compressed-y-\*, the x-value in rSig is an integer mod p, the underlying
+ * prime defining the finite field. In principle this means that to convert a
+ * signature from form compressed-y-\* to form x-only, the converter checks
+ * the x-value to see if it lies between n and p and reduces it mod n if so.
+ * In practice this check is unnecessary: Haase's Theorem states that
+ * difference between n and p is always less than 2*square-root(p), and so the
+ * chance that an integer lies between n and p, for a 256-bit curve, is
+ * bounded above by approximately square-root(p)/p or 2^(-128). For the
+ * 256-bit curves in this standard, the exact values of n and p in hexadecimal
+ * are:
+ *
+ * NISTp256:
+ * - p = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF
+ * - n = FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551
+ *
+ * Brainpoolp256:
+ * - p = A9FB57DBA1EEA9BC3E660A909D838D726E3BF623D52620282013481D1F6E5377
+ * - n = A9FB57DBA1EEA9BC3E660A909D838D718C397AA3B561A6F7901E0E82974856A7
+ */
+EcdsaP256Signature ::= SEQUENCE {
+ rSig EccP256CurvePoint,
+ sSig OCTET STRING (SIZE (32))
}
-EcdsaP384Signature ::= SEQUENCE {
- rSig EccP384CurvePoint,
- sSig OCTET STRING (SIZE (48))
+/**
+ * @brief This structure represents an ECDSA signature. The signature is
+ * generated as specified in 5.3.1.
+ *
+ * If the signature process followed the specification of FIPS 186-4
+ * and output the integer r, r is represented as an EccP384CurvePoint
+ * indicating the selection x-only.
+ *
+ * If the signature process followed the specification of SEC 1 and
+ * output the elliptic curve point R to allow for fast verification, R is
+ * represented as an EccP384CurvePoint indicating the choice compressed-y-0,
+ * compressed-y-1, or uncompressed at the sender's discretion.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. When this data structure
+ * is canonicalized, the EccP384CurvePoint in rSig is represented in the
+ * form x-only.
+ *
+ * @note When the signature is of form x-only, the x-value in rSig is
+ * an integer mod n, the order of the group; when the signature is of form
+ * compressed-y-\*, the x-value in rSig is an integer mod p, the underlying
+ * prime defining the finite field. In principle this means that to convert a
+ * signature from form compressed-y-* to form x-only, the converter checks the
+ * x-value to see if it lies between n and p and reduces it mod n if so. In
+ * practice this check is unnecessary: Haase's Theorem states that difference
+ * between n and p is always less than 2*square-root(p), and so the chance
+ * that an integer lies between n and p, for a 384-bit curve, is bounded
+ * above by approximately square-root(p)/p or 2^(-192). For the 384-bit curve
+ * in this standard, the exact values of n and p in hexadecimal are:
+ * - p = 8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B412B1DA197FB71123
+ * ACD3A729901D1A71874700133107EC53
+ * - n = 8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B31F166E6CAC0425A7
+ * CF3AB6AF6B7FC3103B883202E9046565
+ */
+EcdsaP384Signature ::= SEQUENCE {
+ rSig EccP384CurvePoint,
+ sSig OCTET STRING (SIZE (48))
}
-EccP256CurvePoint ::= CHOICE {
- x-only OCTET STRING (SIZE (32)),
- fill NULL, -- consistency with 1363 / X9.62
- compressed-y-0 OCTET STRING (SIZE (32)),
- compressed-y-1 OCTET STRING (SIZE (32)),
- uncompressedP256 SEQUENCE {
- x OCTET STRING (SIZE (32)),
- y OCTET STRING (SIZE (32))
- }
+/**
+ * @brief This structure represents a elliptic curve signature where the
+ * component r is constrained to be an integer. This structure supports SM2
+ * signatures as specified in 5.3.1.3.
+ */
+EcsigP256Signature ::= SEQUENCE {
+ rSig OCTET STRING (SIZE (32)),
+ sSig OCTET STRING (SIZE (32))
}
-EccP384CurvePoint::= CHOICE {
- x-only OCTET STRING (SIZE (48)),
- fill NULL, -- consistency w 1363 / X9.62
- compressed-y-0 OCTET STRING (SIZE (48)),
- compressed-y-1 OCTET STRING (SIZE (48)),
- uncompressedP384 SEQUENCE {
- x OCTET STRING (SIZE (48)),
- y OCTET STRING (SIZE (48))
- }
+/**
+ * @brief This structure specifies a point on an elliptic curve in Weierstrass
+ * form defined over a 256-bit prime number. The curves supported in this
+ * standard are NIST p256 as defined in FIPS 186-4, Brainpool p256r1 as
+ * defined in RFC 5639, and the SM2 curve as defined in GB/T 32918.5-2017.
+ * The fields in this structure are OCTET STRINGS produced with the elliptic
+ * curve point encoding and decoding methods defined in subclause 5.5.6 of
+ * IEEE Std 1363-2000. The x-coordinate is encoded as an unsigned integer of
+ * length 32 octets in network byte order for all values of the CHOICE; the
+ * encoding of the y-coordinate y depends on whether the point is x-only,
+ * compressed, or uncompressed. If the point is x-only, y is omitted. If the
+ * point is compressed, the value of type depends on the least significant
+ * bit of y: if the least significant bit of y is 0, type takes the value
+ * compressed-y-0, and if the least significant bit of y is 1, type takes the
+ * value compressed-y-1. If the point is uncompressed, y is encoded explicitly
+ * as an unsigned integer of length 32 octets in network byte order.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2 if it appears in a
+ * HeaderInfo or in a ToBeSignedCertificate. See the definitions of HeaderInfo
+ * and ToBeSignedCertificate for a specification of the canonicalization
+ * operations.
+ */
+EccP256CurvePoint::= CHOICE {
+ x-only OCTET STRING (SIZE (32)),
+ fill NULL,
+ compressed-y-0 OCTET STRING (SIZE (32)),
+ compressed-y-1 OCTET STRING (SIZE (32)),
+ uncompressedP256 SEQUENCE {
+ x OCTET STRING (SIZE (32)),
+ y OCTET STRING (SIZE (32))
+ }
}
+/**
+ * @brief This structure specifies a point on an elliptic curve in
+ * Weierstrass form defined over a 384-bit prime number. The only supported
+ * such curve in this standard is Brainpool p384r1 as defined in RFC 5639.
+ * The fields in this structure are octet strings produced with the elliptic
+ * curve point encoding and decoding methods defined in subclause 5.5.6 of
+ * IEEE Std 1363-2000. The x-coordinate is encoded as an unsigned integer of
+ * length 48 octets in network byte order for all values of the CHOICE; the
+ * encoding of the y-coordinate y depends on whether the point is x-only,
+ * compressed, or uncompressed. If the point is x-only, y is omitted. If the
+ * point is compressed, the value of type depends on the least significant
+ * bit of y: if the least significant bit of y is 0, type takes the value
+ * compressed-y-0, and if the least significant bit of y is 1, type takes the
+ * value compressed-y-1. If the point is uncompressed, y is encoded
+ * explicitly as an unsigned integer of length 48 octets in network byte order.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2 if it appears in a
+ * HeaderInfo or in a ToBeSignedCertificate. See the definitions of HeaderInfo
+ * and ToBeSignedCertificate for a specification of the canonicalization
+ * operations.
+ */
+EccP384CurvePoint::= CHOICE {
+ x-only OCTET STRING (SIZE (48)),
+ fill NULL,
+ compressed-y-0 OCTET STRING (SIZE (48)),
+ compressed-y-1 OCTET STRING (SIZE (48)),
+ uncompressedP384 SEQUENCE {
+ x OCTET STRING (SIZE (48)),
+ y OCTET STRING (SIZE (48))
+ }
+}
-SymmAlgorithm ::= ENUMERATED {
- aes128Ccm,
- ...
+/**
+ * @brief This enumerated value indicates supported symmetric algorithms. The
+ * algorithm identifier identifies both the algorithm itself and a specific
+ * mode of operation. The symmetric algorithms supported in this version of
+ * this standard are AES-128 and SM4. The only mode of operation supported is
+ * Counter Mode Encryption With Cipher Block Chaining Message Authentication
+ * Code (CCM). Full details are given in 5.3.8.
+ */
+SymmAlgorithm ::= ENUMERATED {
+ aes128Ccm,
+ ...,
+ sm4Ccm
}
-HashAlgorithm ::= ENUMERATED {
- sha256,
- ...,
- sha384
+/**
+ * @brief This structure identifies a hash algorithm. The value sha256,
+ * indicates SHA-256. The value sha384 indicates SHA-384. The value sm3
+ * indicates SM3. See 5.3.3 for more details.
+ *
+ * @note Critical information fields: This is a critical information field as
+ * defined in 5.2.6. An implementation that does not recognize the enumerated
+ * value of this type in a signed SPDU when verifying a signed SPDU shall
+ * indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2, that
+ * is, it is invalid in the sense that its validity cannot be established.
+ */
+HashAlgorithm ::= ENUMERATED {
+ sha256,
+ ...,
+ sha384,
+ sm3
}
-EciesP256EncryptedKey ::= SEQUENCE {
- v EccP256CurvePoint,
- c OCTET STRING (SIZE (16)),
- t OCTET STRING (SIZE (16))
+/**
+ * @brief This data structure is used to transfer a 16-byte symmetric key
+ * encrypted using ECIES as specified in IEEE Std 1363a-2004. The symmetric
+ * key is input to the key encryption process with no headers, encapsulation,
+ * or length indication. Encryption and decryption are carried out as
+ * specified in 5.3.5.1.
+ *
+ * @param v: is the sender's ephemeral public key, which is the output V from
+ * encryption as specified in 5.3.5.1.
+ *
+ * @param c: is the encrypted symmetric key, which is the output C from
+ * encryption as specified in 5.3.5.1. The algorithm for the symmetric key
+ * is identified by the CHOICE indicated in the following SymmetricCiphertext.
+ * For ECIES this shall be AES-128.
+ *
+ * @param t: is the authentication tag, which is the output tag from
+ * encryption as specified in 5.3.5.1.
+ */
+EciesP256EncryptedKey ::= SEQUENCE {
+ v EccP256CurvePoint,
+ c OCTET STRING (SIZE (16)),
+ t OCTET STRING (SIZE (16))
}
-EncryptionKey ::= CHOICE {
- public PublicEncryptionKey,
- symmetric SymmetricEncryptionKey
+/**
+ * @brief This data structure is used to transfer a 16-byte symmetric key
+ * encrypted using SM2 encryption as specified in 5.3.3. The symmetric key is
+ * input to the key encryption process with no headers, encapsulation, or
+ * length indication. Encryption and decryption are carried out as specified
+ * in 5.3.5.2.
+ *
+ * @param v: is the sender's ephemeral public key, which is the output V from
+ * encryption as specified in 5.3.5.2.
+ *
+ * @param c: is the encrypted symmetric key, which is the output C from
+ * encryption as specified in 5.3.5.2. The algorithm for the symmetric key
+ * is identified by the CHOICE indicated in the following SymmetricCiphertext.
+ * For SM2 this algorithm shall be SM4.
+ *
+ * @param t: is the authentication tag, which is the output tag from
+ * encryption as specified in 5.3.5.2.
+ */
+EcencP256EncryptedKey ::= SEQUENCE {
+ v EccP256CurvePoint,
+ c OCTET STRING (SIZE (16)),
+ t OCTET STRING (SIZE (32))
}
-PublicEncryptionKey ::= SEQUENCE {
- supportedSymmAlg SymmAlgorithm,
- publicKey BasePublicEncryptionKey
+
+/**
+ * @brief This structure contains an encryption key, which may be a public or
+ * a symmetric key.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2 if it appears in a
+ * HeaderInfo or in a ToBeSignedCertificate. The canonicalization applies to
+ * the PublicEncryptionKey. See the definitions of HeaderInfo and
+ * ToBeSignedCertificate for a specification of the canonicalization
+ * operations.
+ */
+EncryptionKey ::= CHOICE {
+ public PublicEncryptionKey,
+ symmetric SymmetricEncryptionKey
}
-BasePublicEncryptionKey ::= CHOICE {
- eciesNistP256 EccP256CurvePoint,
- eciesBrainpoolP256r1 EccP256CurvePoint,
- ...
+/**
+ * @brief This structure specifies a public encryption key and the associated
+ * symmetric algorithm which is used for bulk data encryption when encrypting
+ * for that public key.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2 if it appears in a
+ * HeaderInfo or in a ToBeSignedCertificate. The canonicalization applies to
+ * the BasePublicEncryptionKey. See the definitions of HeaderInfo and
+ * ToBeSignedCertificate for a specification of the canonicalization
+ * operations.
+ */
+PublicEncryptionKey ::= SEQUENCE {
+ supportedSymmAlg SymmAlgorithm,
+ publicKey BasePublicEncryptionKey
}
-PublicVerificationKey ::= CHOICE {
- ecdsaNistP256 EccP256CurvePoint,
- ecdsaBrainpoolP256r1 EccP256CurvePoint,
- ...,
- ecdsaBrainpoolP384r1 EccP384CurvePoint
+/**
+ * @brief This structure specifies the bytes of a public encryption key for
+ * a particular algorithm. Supported public key encryption algorithms are
+ * defined in 5.3.5.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2 if it appears in a
+ * HeaderInfo or in a ToBeSignedCertificate. See the definitions of HeaderInfo
+ * and ToBeSignedCertificate for a specification of the canonicalization
+ * operations.
+ */
+BasePublicEncryptionKey ::= CHOICE {
+ eciesNistP256 EccP256CurvePoint,
+ eciesBrainpoolP256r1 EccP256CurvePoint,
+ ...,
+ ecencSm2 EccP256CurvePoint
}
-SymmetricEncryptionKey ::= CHOICE {
- aes128Ccm OCTET STRING(SIZE(16)),
- ...
+/**
+ * @brief This structure represents a public key and states with what
+ * algorithm the public key is to be used. Cryptographic mechanisms are
+ * defined in 5.3.
+ * An EccP256CurvePoint or EccP384CurvePoint within a PublicVerificationKey
+ * structure is invalid if it indicates the choice x-only.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.6. An implementation that does not
+ * recognize the indicated CHOICE when verifying a signed SPDU shall indicate
+ * that the signed SPDU is invalid indicate that the signed SPDU is invalid
+ * in the sense of 4.2.2.3.2, that is, it is invalid in the sense that its
+ * validity cannot be established.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the EccP256CurvePoint and the Ecc384CurvePoint. Both forms of
+ * point are encoded in compressed form, i.e., such that the choice indicated
+ * within the Ecc*CurvePoint is compressed-y-0 or compressed-y-1.
+ */
+PublicVerificationKey ::= CHOICE {
+ ecdsaNistP256 EccP256CurvePoint,
+ ecdsaBrainpoolP256r1 EccP256CurvePoint,
+ ... ,
+ ecdsaBrainpoolP384r1 EccP384CurvePoint,
+ ecdsaNistP384 EccP384CurvePoint,
+ ecsigSm2 EccP256CurvePoint
}
--- ------------------------------------------------------------------
---
--- PSID / ITS-AID
---
--- ------------------------------------------------------------------
+/**
+ * @brief This structure provides the key bytes for use with an identified
+ * symmetric algorithm. The supported symmetric algorithms are AES-128 and
+ * SM4 in CCM mode as specified in 5.3.8.
+ */
+SymmetricEncryptionKey ::= CHOICE {
+ aes128Ccm OCTET STRING(SIZE(16)),
+ ...,
+ sm4Ccm OCTET STRING(SIZE(16))
+}
-PsidSsp ::= SEQUENCE {
- psid Psid,
- ssp ServiceSpecificPermissions OPTIONAL
+--***************************************************************************--
+-- PSID / ITS-AID --
+--***************************************************************************--
+
+/**
+ * @brief This structure represents the permissions that the certificate
+ * holder has with respect to activities for a single application area,
+ * identified by a Psid.
+ *
+ * @note The determination as to whether the activities are consistent with
+ * the permissions indicated by the PSID and ServiceSpecificPermissions is
+ * made by the SDEE and not by the SDS; the SDS provides the PSID and SSP
+ * information to the SDEE to enable the SDEE to make that determination.
+ * See 5.2.4.3.3 for more information.
+ *
+ * @note The SDEE specification is expected to specify what application
+ * activities are permitted by particular ServiceSpecificPermissions values.
+ * The SDEE specification is also expected EITHER to specify application
+ * activities that are permitted if the ServiceSpecificPermissions is
+ * omitted, OR to state that the ServiceSpecificPermissions need to always be
+ * present.
+ *
+ * @note Consistency with signed SPDU: As noted in 5.1.1,
+ * consistency between the SSP and the signed SPDU is defined by rules
+ * specific to the given PSID and is out of scope for this standard.
+ *
+ * @note Consistency with issuing certificate: If a certificate has an
+ * appPermissions entry A for which the ssp field is omitted, A is consistent
+ * with the issuing certificate if the issuing certificate contains a
+ * PsidSspRange P for which the following holds:
+ * - The psid field in P is equal to the psid field in A and one of the
+ * following is true:
+ * - The sspRange field in P indicates all.
+ * - The sspRange field in P indicates opaque and one of the entries in
+ * opaque is an OCTET STRING of length 0.
+ *
+ * For consistency rules for other forms of the ssp field, see the
+ * following subclauses.
+ */
+PsidSsp ::= SEQUENCE {
+ psid Psid,
+ ssp ServiceSpecificPermissions OPTIONAL
}
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfPsidSsp ::= SEQUENCE OF PsidSsp
+/**
+ * @brief This type represents the PSID defined in IEEE Std 1609.12.
+ */
Psid ::= INTEGER (0..MAX)
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfPsid ::= SEQUENCE OF Psid
-ServiceSpecificPermissions ::= CHOICE {
- opaque OCTET STRING (SIZE(0..MAX)),
- ...,
- bitmapSsp BitmapSsp
+/**
+ * @brief This structure represents the Service Specific Permissions (SSP)
+ * relevant to a given entry in a PsidSsp. The meaning of the SSP is specific
+ * to the associated Psid. SSPs may be PSID-specific octet strings or
+ * bitmap-based. See Annex C for further discussion of how application
+ * specifiers may choose which SSP form to use.
+ *
+ * @note Consistency with issuing certificate: If a certificate has an
+ * appPermissions entry A for which the ssp field is opaque, A is consistent
+ * with the issuing certificate if the issuing certificate contains one of
+ * the following:
+ * - (OPTION 1) A SubjectPermissions field indicating the choice all and
+ * no PsidSspRange field containing the psid field in A;
+ * - (OPTION 2) A PsidSspRange P for which the following holds:
+ * - The psid field in P is equal to the psid field in A and one of the
+ * following is true:
+ * - The sspRange field in P indicates all.
+ * - The sspRange field in P indicates opaque and one of the entries in
+ * the opaque field in P is an OCTET STRING identical to the opaque field in
+ * A.
+ *
+ * For consistency rules for other types of ServiceSpecificPermissions,
+ * see the following subclauses.
+ */
+ServiceSpecificPermissions ::= CHOICE {
+ opaque OCTET STRING (SIZE(0..MAX)),
+ ...,
+ bitmapSsp BitmapSsp
}
+/**
+ * @brief This structure represents a bitmap representation of a SSP. The
+ * mapping of the bits of the bitmap to constraints on the signed SPDU is
+ * PSID-specific.
+ *
+ * @note Consistency with issuing certificate: If a certificate has an
+ * appPermissions entry A for which the ssp field is bitmapSsp, A is
+ * consistent with the issuing certificate if the certificate contains one
+ * of the following:
+ * - (OPTION 1) A SubjectPermissions field indicating the choice all and
+ * no PsidSspRange field containing the psid field in A;
+ * - (OPTION 2) A PsidSspRange P for which the following holds:
+ * - The psid field in P is equal to the psid field in A and one of the
+ * following is true:
+ * - EITHER The sspRange field in P indicates all
+ * - OR The sspRange field in P indicates bitmapSspRange and for every
+ * bit set to 1 in the sspBitmask in P, the bit in the identical position in
+ * the sspValue in A is set equal to the bit in that position in the
+ * sspValue in P.
+ *
+ * @note A BitmapSsp B is consistent with a BitmapSspRange R if for every
+ * bit set to 1 in the sspBitmask in R, the bit in the identical position in
+ * B is set equal to the bit in that position in the sspValue in R. For each
+ * bit set to 0 in the sspBitmask in R, the corresponding bit in the
+ * identical position in B may be freely set to 0 or 1, i.e., if a bit is
+ * set to 0 in the sspBitmask in R, the value of corresponding bit in the
+ * identical position in B has no bearing on whether B and R are consistent.
+ */
BitmapSsp ::= OCTET STRING (SIZE(0..31))
-PsidSspRange ::= SEQUENCE {
- psid Psid,
- sspRange SspRange OPTIONAL
+/**
+ * @brief This structure represents the certificate issuing or requesting
+ * permissions of the certificate holder with respect to one particular set
+ * of application permissions.
+ *
+ * @param psid: identifies the application area.
+ *
+ * @param sspRange: identifies the SSPs associated with that PSID for which
+ * the holder may issue or request certificates. If sspRange is omitted, the
+ * holder may issue or request certificates for any SSP for that PSID.
+ */
+PsidSspRange ::= SEQUENCE {
+ psid Psid,
+ sspRange SspRange OPTIONAL
}
+/**
+ * @brief This type is used for clarity of definitions.
+ */
SequenceOfPsidSspRange ::= SEQUENCE OF PsidSspRange
-SspRange ::= CHOICE {
- opaque SequenceOfOctetString,
- all NULL,
- ... ,
- bitmapSspRange BitmapSspRange
-}
-
-BitmapSspRange ::= SEQUENCE {
- sspValue OCTET STRING (SIZE(1..32)),
- sspBitmask OCTET STRING (SIZE(1..32))
+/**
+ * @brief This structure identifies the SSPs associated with a PSID for
+ * which the holder may issue or request certificates.
+ *
+ * @note Consistency with issuing certificate: If a certificate has a
+ * PsidSspRange A for which the ssp field is opaque, A is consistent with
+ * the issuing certificate if the issuing certificate contains one of the
+ * following:
+ * - (OPTION 1) A SubjectPermissions field indicating the choice all and
+ * no PsidSspRange field containing the psid field in A;
+ * - (OPTION 2) A PsidSspRange P for which the following holds:
+ * - The psid field in P is equal to the psid field in A and one of the
+ * following is true:
+ * - The sspRange field in P indicates all.
+ * - The sspRange field in P indicates opaque, and the sspRange field in
+ * A indicates opaque, and every OCTET STRING within the opaque in A is a
+ * duplicate of an OCTET STRING within the opaque in P.
+ *
+ * If a certificate has a PsidSspRange A for which the ssp field is all,
+ * A is consistent with the issuing certificate if the issuing certificate
+ * contains a PsidSspRange P for which the following holds:
+ * - (OPTION 1) A SubjectPermissions field indicating the choice all and
+ * no PsidSspRange field containing the psid field in A;
+ * - (OPTION 2) A PsidSspRange P for which the psid field in P is equal to
+ * the psid field in A and the sspRange field in P indicates all.
+ *
+ * For consistency rules for other types of SspRange, see the following
+ * subclauses.
+ *
+ * @note The choice "all" may also be indicated by omitting the
+ * SspRange in the enclosing PsidSspRange structure. Omitting the SspRange is
+ * preferred to explicitly indicating "all".
+ */
+SspRange ::= CHOICE {
+ opaque SequenceOfOctetString,
+ all NULL,
+ ...,
+ bitmapSspRange BitmapSspRange
}
-SequenceOfOctetString ::= SEQUENCE (SIZE (0..MAX)) OF
- OCTET STRING (SIZE(0..MAX))
-
-
--- ------------------------------------------------------------------
---
--- Goes in certs
---
--- ------------------------------------------------------------------
+/**
+ * @brief This structure represents a bitmap representation of a SSP. The
+ * sspValue indicates permissions. The sspBitmask contains an octet string
+ * used to permit or constrain sspValue fields in issued certificates. The
+ * sspValue and sspBitmask fields shall be of the same length.
+ *
+ * @note Consistency with issuing certificate: If a certificate has an
+ * PsidSspRange value P for which the sspRange field is bitmapSspRange,
+ * P is consistent with the issuing certificate if the issuing certificate
+ * contains one of the following:
+ * - (OPTION 1) A SubjectPermissions field indicating the choice all and
+ * no PsidSspRange field containing the psid field in P;
+ * - (OPTION 2) A PsidSspRange R for which the following holds:
+ * - The psid field in R is equal to the psid field in P and one of the
+ * following is true:
+ * - EITHER The sspRange field in R indicates all
+ * - OR The sspRange field in R indicates bitmapSspRange and for every
+ * bit set to 1 in the sspBitmask in R:
+ * - The bit in the identical position in the sspBitmask in P is set
+ * equal to 1, AND
+ * - The bit in the identical position in the sspValue in P is set equal
+ * to the bit in that position in the sspValue in R.
+ *
+ * Reference ETSI TS 103 097 for more information on bitmask SSPs.
+ */
+BitmapSspRange ::= SEQUENCE {
+ sspValue OCTET STRING (SIZE(1..32)),
+ sspBitmask OCTET STRING (SIZE(1..32))
+}
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfOctetString ::=
+ SEQUENCE (SIZE (0..MAX)) OF OCTET STRING (SIZE(0..MAX))
+
+
+--***************************************************************************--
+-- Certificate Components --
+--***************************************************************************--
+
+/**
+ * @brief This field contains the certificate holder's assurance level, which
+ * indicates the security of both the platform and storage of secret keys as
+ * well as the confidence in this assessment.
+ *
+ * This field is encoded as defined in Table 1, where "A" denotes bit
+ * fields specifying an assurance level, "R" reserved bit fields, and "C" bit
+ * fields specifying the confidence.
+ *
+ * Table 1: Bitwise encoding of subject assurance
+ *
+ * | Bit number | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
+ * | -------------- | --- | --- | --- | --- | --- | --- | --- | --- |
+ * | Interpretation | A | A | A | R | R | R | C | C |
+ *
+ * In Table 1, bit number 0 denotes the least significant bit. Bit 7
+ * to bit 5 denote the device's assurance levels, bit 4 to bit 2 are reserved
+ * for future use, and bit 1 and bit 0 denote the confidence.
+ *
+ * The specification of these assurance levels as well as the
+ * encoding of the confidence levels is outside the scope of the present
+ * standard. It can be assumed that a higher assurance value indicates that
+ * the holder is more trusted than the holder of a certificate with lower
+ * assurance value and the same confidence value.
+ *
+ * @note This field was originally specified in ETSI TS 103 097 and
+ * future uses of this field are anticipated to be consistent with future
+ * versions of that standard.
+ */
SubjectAssurance ::= OCTET STRING (SIZE(1))
+/**
+ * @brief This integer identifies a series of CRLs issued under the authority
+ * of a particular CRACA.
+ */
CrlSeries ::= Uint16
-
--- ------------------------------------------------------------------
---
--- Pseudonym Linkage
---
--- ------------------------------------------------------------------
+--***************************************************************************--
+-- Pseudonym Linkage --
+--***************************************************************************--
+
+/**
+ * @brief This atomic type is used in the definition of other data structures.
+ */
IValue ::= Uint16
+
+/**
+ * @brief This is a UTF-8 string as defined in IETF RFC 3629. The contents
+ * are determined by policy.
+ */
Hostname ::= UTF8String (SIZE(0..255))
+
+/**
+ * @brief This is the individual linkage value. See 5.1.3 and 7.3 for details
+ * of use.
+ */
LinkageValue ::= OCTET STRING (SIZE(9))
-GroupLinkageValue ::= SEQUENCE {
- jValue OCTET STRING (SIZE(4)),
- value OCTET STRING (SIZE(9))
+
+/**
+ * @brief This is the group linkage value. See 5.1.3 and 7.3 for details of
+ * use.
+ */
+GroupLinkageValue ::= SEQUENCE {
+ jValue OCTET STRING (SIZE(4)),
+ value OCTET STRING (SIZE(9))
}
-
-LaId ::= OCTET STRING (SIZE(2))
+
+/**
+ * @brief This structure contains a LA Identifier for use in the algorithms
+ * specified in 5.1.3.4.
+ */
+LaId ::= OCTET STRING (SIZE(2))
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfLinkageSeed ::= SEQUENCE OF LinkageSeed
+
+/**
+ * @brief This structure contains a linkage seed value for use in the
+ * algorithms specified in 5.1.3.4.
+ */
LinkageSeed ::= OCTET STRING (SIZE(16))
-END
+--***************************************************************************--
+-- Information Object Classes and Sets --
+--***************************************************************************--
+/**
+ * @brief This class defines objects in a form suitable for import into the
+ * definition of HeaderInfo.
+ */
+EXT-TYPE ::= CLASS {
+ &extId ExtId,
+ &ExtContent
+} WITH SYNTAX {&ExtContent IDENTIFIED BY &extId}
+
+/**
+ * @brief This structure is the Information Object Class used to contain
+ * information about a set of certificate extensions that are associated with
+ * each other: an AppExtension, a CertIssueExtension, and a
+ * CertRequestExtension.
+ */
+CERT-EXT-TYPE ::= CLASS {
+ &id ExtId,
+ &App,
+ &Issue,
+ &Req
+} WITH SYNTAX {ID &id APP &App ISSUE &Issue REQUEST &Req}
+
+/**
+ * @brief This parameterized type represents a (id, content) pair drawn from
+ * the set ExtensionTypes, which is constrained to contain objects defined by
+ * the class EXT-TYPE.
+ */
+Extension {EXT-TYPE : ExtensionTypes} ::= SEQUENCE {
+ id EXT-TYPE.&extId({ExtensionTypes}),
+ content EXT-TYPE.&ExtContent({ExtensionTypes}{@.id})
+}
+
+/**
+ * @brief This type is used as an identifier for instances of ExtContent
+ * within an EXT-TYPE.
+ */
+ExtId ::= INTEGER(0..255)
+
+END
diff --git a/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2DataTypes.asn b/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2DataTypes.asn
deleted file mode 100644
index a7e8abf388..0000000000
--- a/epan/dissectors/asn1/ieee1609dot2/IEEE1609dot2DataTypes.asn
+++ /dev/null
@@ -1,314 +0,0 @@
-IEEE1609dot2 {iso(1) identified-organization(3) ieee(111)
-standards-association-numbered-series-standards(2) wave-stds(1609)
-dot2(2) base(1) schema(1) major-version-2(2)}
-
--- Minor version: 1
-
---******************************************************************************
---
--- IEEE P1609.2 Data Types
---
---******************************************************************************
-
-DEFINITIONS AUTOMATIC TAGS ::= BEGIN
-
-EXPORTS ALL;
-
-IMPORTS
- CrlSeries,
- EccP256CurvePoint,
- EciesP256EncryptedKey,
- EncryptionKey,
- GeographicRegion,
- GroupLinkageValue,
- HashAlgorithm,
- HashedId3,
- HashedId8,
- Hostname,
- IValue,
- LinkageValue,
- Opaque,
- Psid,
- PsidSsp,
- PsidSspRange,
- PublicEncryptionKey,
- PublicVerificationKey,
- SequenceOfHashedId3,
- SequenceOfPsidSsp,
- SequenceOfPsidSspRange,
- ServiceSpecificPermissions,
- Signature,
- SubjectAssurance,
- SymmetricEncryptionKey,
- ThreeDLocation,
- Time64,
- Uint3,
- Uint8,
- Uint16,
- Uint32,
- ValidityPeriod
-FROM IEEE1609dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
- standards-association-numbered-series-standards(2) wave-stds(1609)
- dot2(2) base(1) base-types(2) major-version-2 (2)}
-
-;
-
---
---*********************************************************************
---
--- Structures for describing secured data
---
---*********************************************************************
-
--- Necessary to get certain tools to generate sample PDUs
--- TestIeee1609Dot2Data ::= Ieee1609Dot2Data
--- TestCertificate ::= Certificate
-
--- this structure belongs later in the file but putting it here avoids
--- compiler errors with certain tools
-SignedDataPayload ::= SEQUENCE {
- data Ieee1609Dot2Data OPTIONAL,
- extDataHash HashedData OPTIONAL,
- ...
-}
- (WITH COMPONENTS {..., data PRESENT} |
- WITH COMPONENTS {..., extDataHash PRESENT})
-
-Ieee1609Dot2Data ::= SEQUENCE {
- protocolVersion Uint8(3),
- content Ieee1609Dot2Content
-}
-
-Ieee1609Dot2Content ::= CHOICE {
- unsecuredData Opaque,
- signedData SignedData,
- encryptedData EncryptedData,
- signedCertificateRequest Opaque,
- ...
-}
-
-SignedData ::= SEQUENCE {
- hashId HashAlgorithm,
- tbsData ToBeSignedData,
- signer SignerIdentifier,
- signature Signature
-}
-
-SignerIdentifier ::= CHOICE {
- digest HashedId8,
- certificate SequenceOfCertificate,
- self NULL,
- ...
-}
-
-ToBeSignedData ::= SEQUENCE {
- payload SignedDataPayload,
- headerInfo HeaderInfo
-}
-
-HashedData::= CHOICE {
- sha256HashedData OCTET STRING (SIZE(32)),
- ...
-}
-
-HeaderInfo ::= SEQUENCE {
- psid Psid,
- generationTime Time64 OPTIONAL,
- expiryTime Time64 OPTIONAL,
- generationLocation ThreeDLocation OPTIONAL,
- p2pcdLearningRequest HashedId3 OPTIONAL,
- missingCrlIdentifier MissingCrlIdentifier OPTIONAL,
- encryptionKey EncryptionKey OPTIONAL,
- ...,
- inlineP2pcdRequest SequenceOfHashedId3 OPTIONAL,
- requestedCertificate Certificate OPTIONAL
-}
-
-MissingCrlIdentifier ::= SEQUENCE {
- cracaId HashedId3,
- crlSeries CrlSeries,
- ...
-}
-
-Countersignature ::= Ieee1609Dot2Data (WITH COMPONENTS {...,
- content (WITH COMPONENTS {...,
- signedData (WITH COMPONENTS {...,
- tbsData (WITH COMPONENTS {...,
- payload (WITH COMPONENTS {...,
- data ABSENT,
- extDataHash PRESENT
- }),
- headerInfo(WITH COMPONENTS {...,
- generationTime PRESENT,
- expiryTime ABSENT,
- generationLocation ABSENT,
- p2pcdLearningRequest ABSENT,
- missingCrlIdentifier ABSENT,
- encryptionKey ABSENT
- })
- })
- })
- })
-})
-
---**********************************************************************
---
--- Structures for describing encrypted data
---
---**********************************************************************
-
-
-EncryptedData ::= SEQUENCE {
- recipients SequenceOfRecipientInfo,
- ciphertext SymmetricCiphertext
-}
-RecipientInfo ::= CHOICE {
- pskRecipInfo PreSharedKeyRecipientInfo,
- symmRecipInfo SymmRecipientInfo,
- certRecipInfo PKRecipientInfo,
- signedDataRecipInfo PKRecipientInfo,
- rekRecipInfo PKRecipientInfo
-}
-
-SequenceOfRecipientInfo ::= SEQUENCE OF RecipientInfo
-
-PreSharedKeyRecipientInfo ::= HashedId8
-SymmRecipientInfo ::= SEQUENCE {
- recipientId HashedId8,
- encKey SymmetricCiphertext
-}
-
-PKRecipientInfo ::= SEQUENCE {
- recipientId HashedId8,
- encKey EncryptedDataEncryptionKey
-}
-
-EncryptedDataEncryptionKey ::= CHOICE {
- eciesNistP256 EciesP256EncryptedKey,
- eciesBrainpoolP256r1 EciesP256EncryptedKey,
- ...
-}
-
-SymmetricCiphertext ::= CHOICE {
- aes128ccm AesCcmCiphertext,
- ...
-}
-
-AesCcmCiphertext ::= SEQUENCE {
- nonce OCTET STRING (SIZE (12)),
- ccmCiphertext Opaque -- 16 bytes longer than plaintext
-}
-
-
---**********************************************************************
---
--- Certificates and other security management data structures
---
---**********************************************************************
-
--- Certificates are implicit (type = implicit, toBeSigned includes
--- reconstruction value, signature absent) or explicit (type = explicit,
--- toBeSigned includes verification key, signature present).
-
-Certificate ::= CertificateBase (ImplicitCertificate | ExplicitCertificate)
-
-TestCertificate ::= Certificate
-
-SequenceOfCertificate ::= SEQUENCE OF Certificate
-
-CertificateBase ::= SEQUENCE {
- version Uint8(3),
- type CertificateType,
- issuer IssuerIdentifier,
- toBeSigned ToBeSignedCertificate,
- signature Signature OPTIONAL
-}
-
-CertificateType ::= ENUMERATED {
- explicit,
- implicit,
- ...
-}
-
-ImplicitCertificate ::= CertificateBase (WITH COMPONENTS {...,
- type(implicit),
- toBeSigned(WITH COMPONENTS {...,
- verifyKeyIndicator(WITH COMPONENTS {reconstructionValue})
- }),
- signature ABSENT
- })
-
-ExplicitCertificate ::= CertificateBase (WITH COMPONENTS {...,
- type(explicit),
- toBeSigned(WITH COMPONENTS {...,
- verifyKeyIndicator(WITH COMPONENTS {verificationKey})
- }),
- signature PRESENT
- })
-
-IssuerIdentifier ::= CHOICE {
- sha256AndDigest HashedId8,
- self HashAlgorithm,
- ...,
- sha384AndDigest HashedId8
-}
-
-ToBeSignedCertificate ::= SEQUENCE {
- id CertificateId,
- cracaId HashedId3,
- crlSeries CrlSeries,
- validityPeriod ValidityPeriod,
- region GeographicRegion OPTIONAL,
- assuranceLevel SubjectAssurance OPTIONAL,
- appPermissions SequenceOfPsidSsp OPTIONAL,
- certIssuePermissions SequenceOfPsidGroupPermissions OPTIONAL,
- certRequestPermissions SequenceOfPsidGroupPermissions OPTIONAL,
- canRequestRollover NULL OPTIONAL,
- encryptionKey PublicEncryptionKey OPTIONAL,
- verifyKeyIndicator VerificationKeyIndicator,
- ...
-}
-(WITH COMPONENTS { ..., appPermissions PRESENT} |
- WITH COMPONENTS { ..., certIssuePermissions PRESENT} |
- WITH COMPONENTS { ..., certRequestPermissions PRESENT})
-
-CertificateId ::= CHOICE {
- linkageData LinkageData,
- name Hostname,
- binaryId OCTET STRING(SIZE(1..64)),
- none NULL,
- ...
-}
-
-LinkageData ::= SEQUENCE {
- iCert IValue,
- linkage-value LinkageValue,
- group-linkage-value GroupLinkageValue OPTIONAL
-}
-
--- EndEntityType ::= BIT STRING {app (0), enrol (1) } (SIZE (8)) (ALL EXCEPT {})
-EndEntityType ::= BIT STRING {app (0), enrol (1) } (SIZE (8))
-
-PsidGroupPermissions ::= SEQUENCE {
- subjectPermissions SubjectPermissions,
- minChainLength INTEGER DEFAULT 1,
- chainLengthRange INTEGER DEFAULT 0,
- eeType EndEntityType DEFAULT {app}
-}
-
-SequenceOfPsidGroupPermissions ::= SEQUENCE OF PsidGroupPermissions
-
-SubjectPermissions ::= CHOICE {
- explicit SequenceOfPsidSspRange,
- all NULL,
- ...
-}
-
-VerificationKeyIndicator ::= CHOICE {
- verificationKey PublicVerificationKey,
- reconstructionValue EccP256CurvePoint,
- ...
-}
-
-END
-
diff --git a/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2.asn b/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2.asn
new file mode 100644
index 0000000000..e9c557cd6f
--- /dev/null
+++ b/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2.asn
@@ -0,0 +1,1470 @@
+-- https://forge.etsi.org/rep/ITS/asn1/ieee1609.2/-/blob/ieee/Ieee1609Dot2.asn
+--***************************************************************************--
+-- IEEE Std 1609.2 --
+--***************************************************************************--
+
+/**
+ * @note Section references in this file are to clauses in IEEE Std
+ * 1609.2 unless indicated otherwise. Full forms of acronyms and
+ * abbreviations used in this file are specified in 3.2.
+ */
+
+Ieee1609Dot2 {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609)
+ dot2(2) base(1) schema(1) major-version-2(2) minor-version-6(6)}
+
+DEFINITIONS AUTOMATIC TAGS ::= BEGIN
+
+IMPORTS
+ CERT-EXT-TYPE,
+ CrlSeries,
+ EccP256CurvePoint,
+ EcencP256EncryptedKey,
+ EciesP256EncryptedKey,
+ EncryptionKey,
+ EXT-TYPE,
+ Extension,
+ ExtId,
+ GeographicRegion,
+ GroupLinkageValue,
+ HashAlgorithm,
+ HashedId3,
+ HashedId8,
+ HashedId32,
+ HashedId48,
+ Hostname,
+ IValue,
+ LinkageValue,
+ Opaque,
+ Psid,
+ PsidSsp,
+ PsidSspRange,
+ PublicEncryptionKey,
+ PublicVerificationKey,
+ SequenceOfHashedId3,
+ SequenceOfPsidSsp,
+ SequenceOfPsidSspRange,
+ ServiceSpecificPermissions,
+ Signature,
+ SubjectAssurance,
+ SymmetricEncryptionKey,
+ ThreeDLocation,
+ Time64,
+ Uint3,
+ Uint8,
+ Uint16,
+ Uint32,
+ ValidityPeriod
+FROM Ieee1609Dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ base(1) base-types(2) major-version-2(2) minor-version-4(4)}
+WITH SUCCESSORS
+
+ EtsiOriginatingHeaderInfoExtension
+FROM EtsiTs103097ExtensionModule {itu-t(0) identified-organization(4) etsi(0)
+ itsDomain(5) wg5(5) secHeaders(103097) extension(2) major-version-1(1)
+ minor-version-0(0)}
+WITH SUCCESSORS
+;
+
+--***************************************************************************--
+-- Secured Data --
+--***************************************************************************--
+
+/**
+ * @brief This data type is used to contain the other data types in this
+ * clause. The fields in the Ieee1609Dot2Data have the following meanings:
+ *
+ * @param protocolVersion: contains the current version of the protocol. The
+ * version specified in this standard is version 3, represented by the
+ * integer 3. There are no major or minor version numbers.
+ *
+ * @param content: contains the content in the form of an Ieee1609Dot2Content.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the Ieee1609Dot2Content.
+ */
+Ieee1609Dot2Data ::= SEQUENCE {
+ protocolVersion Uint8(3),
+ content Ieee1609Dot2Content
+}
+
+/**
+ * @brief In this structure:
+ *
+ * @param unsecuredData: indicates that the content is an OCTET STRING to be
+ * consumed outside the SDS.
+ *
+ * @param signedData: indicates that the content has been signed according to
+ * this standard.
+ *
+ * @param encryptedData: indicates that the content has been encrypted
+ * according to this standard.
+ *
+ * @param signedCertificateRequest: indicates that the content is a
+ * certificate request signed by an IEEE 1609.2 certificate or self-signed.
+ *
+ * @param signedX509CertificateRequest: indicates that the content is a
+ * certificate request signed by an ITU-T X.509 certificate.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2 if it is of type signedData.
+ * The canonicalization applies to the SignedData.
+ */
+Ieee1609Dot2Content ::= CHOICE {
+ unsecuredData Opaque,
+ signedData SignedData,
+ encryptedData EncryptedData,
+ signedCertificateRequest Opaque,
+ ...,
+ signedX509CertificateRequest Opaque
+}
+
+/**
+ * @brief In this structure:
+ *
+ * @param hashId: indicates the hash algorithm to be used to generate the hash
+ * of the message for signing and verification.
+ *
+ * @param tbsData: contains the data that is hashed as input to the signature.
+ *
+ * @param signer: determines the keying material and hash algorithm used to
+ * sign the data.
+ *
+ * @param signature: contains the digital signature itself, calculated as
+ * specified in 5.3.1.
+ * - If signer indicates the choice self, then the signature calculation
+ * is parameterized as follows:
+ * - Data input is equal to the COER encoding of the tbsData field
+ * canonicalized according to the encoding considerations given in 6.3.6.
+ * - Verification type is equal to self.
+ * - Signer identifier input is equal to the empty string.
+ * - If signer indicates certificate or digest, then the signature
+ * calculation is parameterized as follows:
+ * - Data input is equal to the COER encoding of the tbsData field
+ * canonicalized according to the encoding considerations given in 6.3.6.
+ * - Verification type is equal to certificate.
+ * - Signer identifier input equal to the COER-encoding of the
+ * Certificate that is to be used to verify the SPDU, canonicalized according
+ * to the encoding considerations given in 6.4.3.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the ToBeSignedData and the Signature.
+ */
+SignedData ::= SEQUENCE {
+ hashId HashAlgorithm,
+ tbsData ToBeSignedData,
+ signer SignerIdentifier,
+ signature Signature
+}
+
+/**
+ * @brief This structure contains the data to be hashed when generating or
+ * verifying a signature. See 6.3.4 for the specification of the input to the
+ * hash.
+ *
+ * @param payload: contains data that is provided by the entity that invokes
+ * the SDS.
+ *
+ * @param headerInfo: contains additional data that is inserted by the SDS.
+ * This structure is used as follows to determine the "data input" to the
+ * hash operation for signing or verification as specified in 5.3.1.2.2 or
+ * 5.3.1.3.
+ * - If payload does not contain the field omitted, the data input to the
+ * hash operation is the COER encoding of the ToBeSignedData.
+ * - If payload field in this ToBeSignedData instance contains the field
+ * omitted, the data input to the hash operation is the COER encoding of the
+ * ToBeSignedData, concatenated with the hash of the omitted payload. The hash
+ * of the omitted payload is calculated with the same hash algorithm that is
+ * used to calculate the hash of the data input for signing or verification.
+ * The data input to the hash operation is simply the COER enocding of the
+ * ToBeSignedData, concatenated with the hash of the omitted payload: there is
+ * no additional wrapping or length indication. As noted in 5.2.4.3.4, the
+ * means by which the signer and verifier establish the contents of the
+ * omitted payload are out of scope for this standard.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the SignedDataPayload if it is of type data, and to the
+ * HeaderInfo.
+ */
+ToBeSignedData ::= SEQUENCE {
+ payload SignedDataPayload,
+ headerInfo HeaderInfo
+}
+
+/**
+ * @brief This structure contains the data payload of a ToBeSignedData. This
+ * structure contains at least one of the optional elements, and may contain
+ * more than one. See 5.2.4.3.4 for more details.
+ * The security profile in Annex C allows an implementation of this standard
+ * to state which forms of Signed�Data�Payload are supported by that
+ * implementation, and also how the signer and verifier are intended to obtain
+ * the external data for hashing. The specification of an SDEE that uses
+ * external data is expected to be explicit and unambiguous about how this
+ * data is obtained and how it is formatted prior to processing by the hash
+ * function.
+ *
+ * @param data: contains data that is explicitly transported within the
+ * structure.
+ *
+ * @param extDataHash: contains the hash of data that is not explicitly
+ * transported within the structure, and which the creator of the structure
+ * wishes to cryptographically bind to the signature.
+ *
+ * @param omitted: indicates that there is external data to be included in the
+ * hash calculation for the signature.The mechanism for including the external
+ * data in the hash calculation is specified in 6.3.6.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the Ieee1609Dot2Data.
+ */
+SignedDataPayload ::= SEQUENCE {
+ data Ieee1609Dot2Data OPTIONAL,
+ extDataHash HashedData OPTIONAL,
+ ...,
+ omitted NULL OPTIONAL
+} (WITH COMPONENTS {..., data PRESENT} |
+ WITH COMPONENTS {..., extDataHash PRESENT} |
+ WITH COMPONENTS {..., omitted PRESENT})
+
+
+/**
+ * @brief This structure contains the hash of some data with a specified hash
+ * algorithm. See 5.3.3 for specification of the permitted hash algorithms.
+ *
+ * @param sha256HashedData: indicates data hashed with SHA-256.
+ *
+ * @param sha384HashedData: indicates data hashed with SHA-384.
+ *
+ * @param sm3HashedData: indicates data hashed with SM3.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.6. An implementation that does not
+ * recognize the indicated CHOICE for this type when verifying a signed SPDU
+ * shall indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2,
+ * that is, it is invalid in the sense that its validity cannot be established.
+ */
+HashedData::= CHOICE {
+ sha256HashedData HashedId32,
+ ...,
+ sha384HashedData HashedId48,
+ sm3HashedData HashedId32
+}
+
+/**
+ * @brief This structure contains information that is used to establish
+ * validity by the criteria of 5.2.
+ *
+ * @param psid: indicates the application area with which the sender is
+ * claiming the payload is to be associated.
+ *
+ * @param generationTime: indicates the time at which the structure was
+ * generated. See 5.2.5.2.2 and 5.2.5.2.3 for discussion of the use of this
+ * field.
+ *
+ * @param expiryTime: if present, contains the time after which the data
+ * is no longer considered relevant. If both generationTime and
+ * expiryTime are present, the signed SPDU is invalid if generationTime is
+ * not strictly earlier than expiryTime.
+ *
+ * @param generationLocation: if present, contains the location at which the
+ * signature was generated.
+ *
+ * @param p2pcdLearningRequest: if present, is used by the SDS to request
+ * certificates for which it has seen identifiers and does not know the
+ * entire certificate. A specification of this peer-to-peer certificate
+ * distribution (P2PCD) mechanism is given in Clause 8. This field is used
+ * for the separate-certificate-pdu flavor of P2PCD and shall only be present
+ * if inlineP2pcdRequest is not present. The HashedId3 is calculated with the
+ * whole-certificate hash algorithm, determined as described in 6.4.3,
+ * applied to the COER-encoded certificate, canonicalized as defined in the
+ * definition of Certificate.
+ *
+ * @param missingCrlIdentifier: if present, is used by the SDS to request
+ * CRLs which it knows to have been issued and have not received. This is
+ * provided for future use and the associated mechanism is not defined in
+ * this version of this standard.
+ *
+ * @param encryptionKey: if present, is used to provide a key that is to
+ * be used to encrypt at least one response to this SPDU. The SDEE
+ * specification is expected to specify which response SPDUs are to be
+ * encrypted with this key. One possible use of this key to encrypt a
+ * response is specified in 6.3.35, 6.3.37, and 6.3.34. An encryptionKey
+ * field of type symmetric should only be used if the SignedData containing
+ * this field is securely encrypted by some means.
+ *
+ * @param inlineP2pcdRequest: if present, is used by the SDS to request
+ * unknown certificates per the inline peer-to-peer certificate distribution
+ * mechanism is given in Clause 8. This field shall only be present if
+ * p2pcdLearningRequest is not present. The HashedId3 is calculated with the
+ * whole-certificate hash algorithm, determined as described in 6.4.3, applied
+ * to the COER-encoded certificate, canonicalized as defined in the definition
+ * of Certificate.
+ *
+ * @param requestedCertificate: if present, is used by the SDS to provide
+ * certificates per the "inline" version of the peer-to-peer certificate
+ * distribution mechanism given in Clause 8.
+ *
+ * @param pduFunctionalType: if present, is used to indicate that the SPDU is
+ * to be consumed by a process other than an application process as defined
+ * in ISO 21177 [B14a]. See 6.3.23b for more details.
+ *
+ * @param contributedExtensions: if present, is used to contain additional
+ * extensions defined using the ContributedExtensionBlocks structure.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the EncryptionKey. If encryptionKey is present, and indicates
+ * the choice public, and contains a BasePublicEncryptionKey that is an
+ * elliptic curve point (i.e., of type EccP256CurvePoint or
+ * EccP384CurvePoint), then the elliptic curve point is encoded in compressed
+ * form, i.e., such that the choice indicated within the Ecc*CurvePoint is
+ * compressed-y-0 or compressed-y-1.
+ * The canonicalization does not apply to any fields after the extension
+ * marker, including any fields in contributedExtensions.
+ */
+HeaderInfo ::= SEQUENCE {
+ psid Psid,
+ generationTime Time64 OPTIONAL,
+ expiryTime Time64 OPTIONAL,
+ generationLocation ThreeDLocation OPTIONAL,
+ p2pcdLearningRequest HashedId3 OPTIONAL,
+ missingCrlIdentifier MissingCrlIdentifier OPTIONAL,
+ encryptionKey EncryptionKey OPTIONAL,
+ ...,
+ inlineP2pcdRequest SequenceOfHashedId3 OPTIONAL,
+ requestedCertificate Certificate OPTIONAL,
+ pduFunctionalType PduFunctionalType OPTIONAL,
+ contributedExtensions ContributedExtensionBlocks OPTIONAL
+}
+
+/**
+ * @brief This structure may be used to request a CRL that the SSME knows to
+ * have been issued and has not yet received. It is provided for future use
+ * and its use is not defined in this version of this standard.
+ *
+ * @param cracaId: is the HashedId3 of the CRACA, as defined in 5.1.3. The
+ * HashedId3 is calculated with the whole-certificate hash algorithm,
+ * determined as described in 6.4.3, applied to the COER-encoded certificate,
+ * canonicalized as defined in the definition of Certificate.
+ *
+ * @param crlSeries: is the requested CRL Series value. See 5.1.3 for more
+ * information.
+ */
+MissingCrlIdentifier ::= SEQUENCE {
+ cracaId HashedId3,
+ crlSeries CrlSeries,
+ ...
+}
+
+/**
+ * @brief This data structure identifies the functional entity that is
+ * intended to consume an SPDU, for the case where that functional entity is
+ * not an application process, and are instead security support services for an
+ * application process. Further details and the intended use of this field are
+ * defined in ISO 21177 [B20].
+ *
+ * @param tlsHandshake: indicates that the Signed SPDU is not to be directly
+ * consumed as an application PDU and is to be used to provide information
+ * about the holder�s permissions to a Transport Layer Security (TLS)
+ * (IETF 5246 [B15], IETF 8446 [B16]) handshake process operating to secure
+ * communications to an application process. See IETF [B15] and ISO 21177
+ * [B20] for further information.
+ *
+ * @param iso21177ExtendedAuth: indicates that the Signed SPDU is not to be
+ * directly consumed as an application PDU and is to be used to provide
+ * additional information about the holder�s permissions to the ISO 21177
+ * Security Subsystem for an application process. See ISO 21177 [B20] for
+ * further information.
+ *
+ * @param iso21177SessionExtension: indicates that the Signed SPDU is not to
+ * be directly consumed as an application PDU and is to be used to extend an
+ * existing ISO 21177 secure session. This enables a secure session to
+ * persist beyond the lifetime of the certificates used to establish that
+ * session.
+ */
+PduFunctionalType ::= INTEGER (0..255)
+
+tlsHandshake PduFunctionalType ::= 1
+iso21177ExtendedAuth PduFunctionalType ::= 2
+iso21177SessionExtension PduFunctionalType ::= 3
+
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+ContributedExtensionBlocks ::= SEQUENCE (SIZE(1..MAX)) OF
+ ContributedExtensionBlock
+
+/**
+ * @brief This Information Object Class defines the class that provides a
+ * template for defining extension blocks.
+ */
+IEEE1609DOT2-HEADERINFO-CONTRIBUTED-EXTENSION ::= CLASS {
+ &id HeaderInfoContributorId UNIQUE,
+ &Extn
+} WITH SYNTAX {&Extn IDENTIFIED BY &id}
+
+/**
+ * @brief This data structure defines the format of an extension block
+ * provided by an identified contributor by using the temnplate provided
+ * in the class IEEE1609DOT2-HEADERINFO-CONTRIBUTED-EXTENSION constraint
+ * to the objects in the set Ieee1609Dot2HeaderInfoContributedExtensions.
+ *
+ * @param contributorId: uniquely identifies the contributor.
+ *
+ * @param extns: contains a list of extensions from that contributor.
+ * Extensions are expected and not required to follow the format specified
+ * in 6.5.
+ */
+ContributedExtensionBlock ::= SEQUENCE {
+ contributorId IEEE1609DOT2-HEADERINFO-CONTRIBUTED-EXTENSION.&id({
+ Ieee1609Dot2HeaderInfoContributedExtensions
+ }),
+ extns SEQUENCE (SIZE(1..MAX)) OF
+ IEEE1609DOT2-HEADERINFO-CONTRIBUTED-EXTENSION.&Extn({
+ Ieee1609Dot2HeaderInfoContributedExtensions
+ }{@.contributorId})
+}
+
+/**
+ * @brief This structure is an ASN.1 Information Object Set listing the
+ * defined contributed extension types and the associated
+ * HeaderInfoContributorId values. In this version of this standard two
+ * extension types are defined: Ieee1609ContributedHeaderInfoExtension and
+ * EtsiOriginatingHeaderInfoExtension.
+ */
+Ieee1609Dot2HeaderInfoContributedExtensions
+ IEEE1609DOT2-HEADERINFO-CONTRIBUTED-EXTENSION ::= {
+ {Ieee1609ContributedHeaderInfoExtension IDENTIFIED BY
+ ieee1609HeaderInfoContributorId} |
+ {EtsiOriginatingHeaderInfoExtension IDENTIFIED BY
+ etsiHeaderInfoContributorId},
+ ...
+}
+
+/**
+ * @brief This is an integer used to identify a HeaderInfo extension
+ * contributing organization. In this version of this standard two values are
+ * defined:
+ * - ieee1609OriginatingExtensionId indicating extensions originating with
+ * IEEE 1609.
+ * - etsiOriginatingExtensionId indicating extensions originating with
+ * ETSI TC ITS.
+ */
+HeaderInfoContributorId ::= INTEGER (0..255)
+
+ieee1609HeaderInfoContributorId HeaderInfoContributorId ::= 1
+etsiHeaderInfoContributorId HeaderInfoContributorId ::= 2
+
+
+/**
+ * @brief This structure allows the recipient of data to determine which
+ * keying material to use to authenticate the data. It also indicates the
+ * verification type to be used to generate the hash for verification, as
+ * specified in 5.3.1.
+ *
+ * @param digest: If the choice indicated is digest:
+ * - The structure contains the HashedId8 of the relevant certificate. The
+ * HashedId8 is calculated with the whole-certificate hash algorithm,
+ * determined as described in 6.4.3.
+ * - The verification type is certificate and the certificate data
+ * passed to the hash function as specified in 5.3.1 is the authorization
+ * certificate.
+ *
+ * @param certificate: If the choice indicated is certificate:
+ * - The structure contains one or more Certificate structures, in order
+ * such that the first certificate is the authorization certificate and each
+ * subsequent certificate is the issuer of the one before it.
+ * - The verification type is certificate and the certificate data
+ * passed to the hash function as specified in 5.3.1 is the authorization
+ * certificate.
+ *
+ * @param self: If the choice indicated is self:
+ * - The structure does not contain any data beyond the indication that
+ * the choice value is self.
+ * - The verification type is self-signed.
+ *
+ * @note Critical information fields:
+ * - If present, this is a critical information field as defined in 5.2.6.
+ * An implementation that does not recognize the CHOICE value for this type
+ * when verifying a signed SPDU shall indicate that the signed SPDU is invalid.
+ * - If present, certificate is a critical information field as defined in
+ * 5.2.6. An implementation that does not support the number of certificates
+ * in certificate when verifying a signed SPDU shall indicate that the signed
+ * SPDU is invalid. A compliant implementation shall support certificate
+ * fields containing at least one certificate.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to every Certificate in the certificate field.
+ */
+SignerIdentifier ::= CHOICE {
+ digest HashedId8,
+ certificate SequenceOfCertificate,
+ self NULL,
+ ...
+}
+
+/**
+ * @brief This data structure is used to perform a countersignature over an
+ * already-signed SPDU. This is the profile of an Ieee1609Dot2Data containing
+ * a signedData. The tbsData within content is composed of a payload
+ * containing the hash (extDataHash) of the externally generated, pre-signed
+ * SPDU over which the countersignature is performed.
+ */
+Countersignature ::= Ieee1609Dot2Data (WITH COMPONENTS {...,
+ content (WITH COMPONENTS {...,
+ signedData (WITH COMPONENTS {...,
+ tbsData (WITH COMPONENTS {...,
+ payload (WITH COMPONENTS {...,
+ data ABSENT,
+ extDataHash PRESENT
+ }),
+ headerInfo(WITH COMPONENTS {...,
+ generationTime PRESENT,
+ expiryTime ABSENT,
+ generationLocation ABSENT,
+ p2pcdLearningRequest ABSENT,
+ missingCrlIdentifier ABSENT,
+ encryptionKey ABSENT
+ })
+ })
+ })
+ })
+})
+
+
+--***************************************************************************--
+-- Encrypted Data --
+--***************************************************************************--
+
+/**
+ * @brief This data structure encodes data that has been encrypted to one or
+ * more recipients using the recipients� public or symmetric keys as
+ * specified in 5.3.4.
+ *
+ * @param recipients: contains one or more RecipientInfos. These entries may
+ * be more than one RecipientInfo, and more than one type of RecipientInfo,
+ * as long as all entries are indicating or containing the same data encryption
+ * key.
+ *
+ * @param ciphertext: contains the encrypted data. This is the encryption of
+ * an encoded Ieee1609Dot2Data structure as specified in 5.3.4.2.
+ *
+ * @note Critical information fields:
+ * - If present, recipients is a critical information field as defined in
+ * 5.2.6. An implementation that does not support the number of RecipientInfo
+ * in recipients when decrypted shall indicate that the encrypted SPDU could
+ * not be decrypted due to unsupported critical information fields. A
+ * compliant implementation shall support recipients fields containing at
+ * least eight entries.
+ *
+ * @note If the plaintext is raw data, i.e., it has not been output from a
+ * previous operation of the SDS, then it is trivial to encapsulate it in an
+ * Ieee1609Dot2Data of type unsecuredData as noted in 4.2.2.2.2. For example,
+ * '03 80 08 01 23 45 67 89 AB CD EF' is the C-OER encoding of '01 23 45 67
+ * 89 AB CD EF' encapsulated in an Ieee1609Dot2Data of type unsecuredData.
+ * The first byte of the encoding 03 is the protocolVersion, the second byte
+ * 80 indicates the choice unsecuredData, and the third byte 08 is the length
+ * of the raw data '01 23 45 67 89 AB CD EF'.
+ */
+EncryptedData ::= SEQUENCE {
+ recipients SequenceOfRecipientInfo,
+ ciphertext SymmetricCiphertext
+}
+
+/**
+ * @brief This data structure is used to transfer the data encryption key to
+ * an individual recipient of an EncryptedData. The option pskRecipInfo is
+ * selected if the EncryptedData was encrypted using the static encryption
+ * key approach specified in 5.3.4. The other options are selected if the
+ * EncryptedData was encrypted using the ephemeral encryption key approach
+ * specified in 5.3.4. The meanings of the choices are:
+ *
+ * See Annex C.7 for guidance on when it may be appropriate to use
+ * each of these approaches.
+ *
+ * @param pskRecipInfo: The data was encrypted directly using a pre-shared
+ * symmetric key.
+ *
+ * @param symmRecipInfo: The data was encrypted with a data encryption key,
+ * and the data encryption key was encrypted using a symmetric key.
+ *
+ * @param certRecipInfo: The data was encrypted with a data encryption key,
+ * the data encryption key was encrypted using a public key encryption scheme,
+ * where the public encryption key was obtained from a certificate. In this
+ * case, the parameter P1 to ECIES as defined in 5.3.5 is the hash of the
+ * certificate, calculated with the whole-certificate hash algorithm,
+ * determined as described in 6.4.3, applied to the COER-encoded certificate,
+ * canonicalized as defined in the definition of Certificate.
+ *
+ * @note If the encryption algorithm is SM2, there is no equivalent of the
+ * parameter P1 and so no input to the encryption process that uses the hash
+ * of the certificate.
+ *
+ * @param signedDataRecipInfo: The data was encrypted with a data encryption
+ * key, the data encryption key was encrypted using a public key encryption
+ * scheme, where the public encryption key was obtained as the public response
+ * encryption key from a SignedData. In this case, if ECIES is the encryption
+ * algorithm, then the parameter P1 to ECIES as defined in 5.3.5 is the
+ * SHA-256 hash of the Ieee1609Dot2Data of type signedData containing the
+ * response encryption key, canonicalized as defined in the definition of
+ * Ieee1609Dot2Data.
+ *
+ * @note If the encryption algorithm is SM2, there is no equivalent of the
+ * parameter P1 and so no input to the encryption process that uses the hash
+ * of the Ieee1609Dot2Data.
+ *
+ * @param rekRecipInfo: The data was encrypted with a data encryption key,
+ * the data encryption key was encrypted using a public key encryption scheme,
+ * where the public encryption key was not obtained from a Signed-Data or a
+ * certificate. In this case, the SDEE specification is expected to specify
+ * how the public key is obtained, and if ECIES is the encryption algorithm,
+ * then the parameter P1 to ECIES as defined in 5.3.5 is the hash of the
+ * empty string.
+ *
+ * @note If the encryption algorithm is SM2, there is no equivalent of the
+ * parameter P1 and so no input to the encryption process that uses the hash
+ * of the empty string.
+ *
+ * @note The material input to encryption is the bytes of the encryption key
+ * with no headers, encapsulation, or length indication. Contrast this to
+ * encryption of data, where the data is encapsulated in an Ieee1609Dot2Data.
+ */
+RecipientInfo ::= CHOICE {
+ pskRecipInfo PreSharedKeyRecipientInfo,
+ symmRecipInfo SymmRecipientInfo,
+ certRecipInfo PKRecipientInfo,
+ signedDataRecipInfo PKRecipientInfo,
+ rekRecipInfo PKRecipientInfo
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfRecipientInfo ::= SEQUENCE OF RecipientInfo
+
+/**
+ * @brief This data structure is used to indicate a symmetric key that may
+ * be used directly to decrypt a SymmetricCiphertext. It consists of the
+ * low-order 8 bytes of the hash of the COER encoding of a
+ * SymmetricEncryptionKey structure containing the symmetric key in question.
+ * The HashedId8 is calculated with the hash algorithm determined as
+ * specified in 5.3.9.3. The symmetric key may be established by any
+ * appropriate means agreed by the two parties to the exchange.
+ */
+PreSharedKeyRecipientInfo ::= HashedId8
+
+/**
+ * @brief This data structure contains the following fields:
+ *
+ * @param recipientId: contains the hash of the symmetric key encryption key
+ * that may be used to decrypt the data encryption key. It consists of the
+ * low-order 8 bytes of the hash of the COER encoding of a
+ * SymmetricEncryptionKey structure containing the symmetric key in question.
+ * The HashedId8 is calculated with the hash algorithm determined as
+ * specified in 5.3.9.4. The symmetric key may be established by any
+ * appropriate means agreed by the two parties to the exchange.
+ *
+ * @param encKey: contains the encrypted data encryption key within a
+ * SymmetricCiphertext, where the data encryption key is input to the data
+ * encryption key encryption process with no headers, encapsulation, or
+ * length indication.
+ */
+SymmRecipientInfo ::= SEQUENCE {
+ recipientId HashedId8,
+ encKey SymmetricCiphertext
+}
+
+/**
+ * @brief This data structure contains the following fields:
+ *
+ * @param recipientId: contains the hash of the container for the encryption
+ * public key as specified in the definition of RecipientInfo. Specifically,
+ * depending on the choice indicated by the containing RecipientInfo structure:
+ * - If the containing RecipientInfo structure indicates certRecipInfo,
+ * this field contains the HashedId8 of the certificate. The HashedId8 is
+ * calculated with the whole-certificate hash algorithm, determined as
+ * described in 6.4.3, applied to the COER-encoded certificate, canonicalized
+ * as defined in the definition of Certificate.
+ * - If the containing RecipientInfo structure indicates
+ * signedDataRecipInfo, this field contains the HashedId8 of the
+ * Ieee1609Dot2Data of type signedData that contained the encryption key,
+ * with that Ieee��1609�Dot2��Data canonicalized per 6.3.4. The HashedId8 is
+ * calculated with the hash algorithm determined as specified in 5.3.9.5.
+ * - If the containing RecipientInfo structure indicates rekRecipInfo, this
+ * field contains the HashedId8 of the COER encoding of a PublicEncryptionKey
+ * structure containing the response encryption key. The HashedId8 is
+ * calculated with the hash algorithm determined as specified in 5.3.9.5.
+ *
+ * @param encKey: contains the encrypted data encryption key, where the data
+ * encryption key is input to the data encryption key encryption process with
+ * no headers, encapsulation, or length indication.
+ */
+PKRecipientInfo ::= SEQUENCE {
+ recipientId HashedId8,
+ encKey EncryptedDataEncryptionKey
+}
+
+/**
+ * @brief This data structure contains an encrypted data encryption key,
+ * where the data encryption key is input to the data encryption key
+ * encryption process with no headers, encapsulation, or length indication.
+ *
+ * Critical information fields: If present and applicable to
+ * the receiving SDEE, this is a critical information field as defined in
+ * 5.2.6. If an implementation receives an encrypted SPDU and determines that
+ * one or more RecipientInfo fields are relevant to it, and if all of those
+ * RecipientInfos contain an EncryptedDataEncryptionKey such that the
+ * implementation does not recognize the indicated CHOICE, the implementation
+ * shall indicate that the encrypted SPDU is not decryptable.
+ */
+EncryptedDataEncryptionKey ::= CHOICE {
+ eciesNistP256 EciesP256EncryptedKey,
+ eciesBrainpoolP256r1 EciesP256EncryptedKey,
+ ...,
+ ecencSm2256 EcencP256EncryptedKey
+}
+
+/**
+ * @brief This data structure encapsulates a ciphertext generated with an
+ * approved symmetric algorithm.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.6. An implementation that does not
+ * recognize the indicated CHOICE value for this type in an encrypted SPDU
+ * shall indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2,
+ * that is, it is invalid in the sense that its validity cannot be established.
+ */
+SymmetricCiphertext ::= CHOICE {
+ aes128ccm One28BitCcmCiphertext,
+ ...,
+ sm4Ccm One28BitCcmCiphertext
+}
+
+/**
+ * @brief This data structure encapsulates an encrypted ciphertext for any
+ * symmetric algorithm with 128-bit blocks in CCM mode. The ciphertext is
+ * 16 bytes longer than the corresponding plaintext due to the inclusion of
+ * the message authentication code (MAC). The plaintext resulting from a
+ * correct decryption of the ciphertext is either a COER-encoded
+ * Ieee1609Dot2Data structure (see 6.3.41), or a 16-byte symmetric key
+ * (see 6.3.44).
+ *
+ * The ciphertext is 16 bytes longer than the corresponding plaintext.
+ *
+ * The plaintext resulting from a correct decryption of the
+ * ciphertext is a COER-encoded Ieee1609Dot2Data structure.
+ *
+ * @param nonce: contains the nonce N as specified in 5.3.8.
+ *
+ * @param ccmCiphertext: contains the ciphertext C as specified in 5.3.8.
+ *
+ * @note In the name of this structure, "One28" indicates that the
+ * symmetric cipher block size is 128 bits. It happens to also be the case
+ * that the keys used for both AES-128-CCM and SM4-CCM are also 128 bits long.
+ * This is, however, not what �One28� refers to. Since the cipher is used in
+ * counter mode, i.e., as a stream cipher, the fact that that block size is 128
+ * bits affects only the size of the MAC and does not affect the size of the
+ * raw ciphertext.
+ */
+One28BitCcmCiphertext ::= SEQUENCE {
+ nonce OCTET STRING (SIZE (12)),
+ ccmCiphertext Opaque
+}
+
+/**
+ * @brief This type is defined only for backwards compatibility.
+ */
+Aes128CcmCiphertext ::= One28BitCcmCiphertext
+
+--***************************************************************************--
+-- Certificates and other Security Management --
+--***************************************************************************--
+
+/**
+ * @brief This structure is a profile of the structure CertificateBase which
+ * specifies the valid combinations of fields to transmit implicit and
+ * explicit certificates.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the CertificateBase.
+ */
+Certificate ::=
+ CertificateBase (ImplicitCertificate | ExplicitCertificate)
+
+TestCertificate ::= Certificate
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfCertificate ::= SEQUENCE OF Certificate
+
+/**
+ * @brief The fields in this structure have the following meaning:
+ *
+ * @param version: contains the version of the certificate format. In this
+ * version of the data structures, this field is set to 3.
+ *
+ * @param type: states whether the certificate is implicit or explicit. This
+ * field is set to explicit for explicit certificates and to implicit for
+ * implicit certificates. See ExplicitCertificate and ImplicitCertificate for
+ * more details.
+ *
+ * @param issuer: identifies the issuer of the certificate.
+ *
+ * @param toBeSigned: is the certificate contents. This field is an input to
+ * the hash when generating or verifying signatures for an explicit
+ * certificate, or generating or verifying the public key from the
+ * reconstruction value for an implicit certificate. The details of how this
+ * field are encoded are given in the description of the
+ * ToBeSignedCertificate type.
+ *
+ * @param signature: is included in an ExplicitCertificate. It is the
+ * signature, calculated by the signer identified in the issuer field, over
+ * the hash of toBeSigned. The hash is calculated as specified in 5.3.1, where:
+ * - Data input is the encoding of toBeSigned following the COER.
+ * - Signer identifier input depends on the verification type, which in
+ * turn depends on the choice indicated by issuer. If the choice indicated by
+ * issuer is self, the verification type is self-signed and the signer
+ * identifier input is the empty string. If the choice indicated by issuer is
+ * not self, the verification type is certificate and the signer identifier
+ * input is the canonicalized COER encoding of the certificate indicated by
+ * issuer. The canonicalization is carried out as specified in the
+ * Canonicalization section of this subclause.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the ToBeSignedCertificate and to the Signature.
+ *
+ * @note Whole-certificate hash: If the entirety of a certificate is hashed
+ * to calculate a HashedId3, HashedId8, or HashedId10, the algorithm used for
+ * this purpose is known as the whole-certificate hash. The method used to
+ * determine the whole-certificate hash algorithm is specified in 5.3.9.2.
+ */
+CertificateBase ::= SEQUENCE {
+ version Uint8(3),
+ type CertificateType,
+ issuer IssuerIdentifier,
+ toBeSigned ToBeSignedCertificate,
+ signature Signature OPTIONAL
+}
+
+/**
+ * @brief This enumerated type indicates whether a certificate is explicit or
+ * implicit.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.5. An implementation that does not
+ * recognize the indicated CHOICE for this type when verifying a signed SPDU
+ * shall indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2,
+ * that is, it is invalid in the sense that its validity cannot be
+ * established.
+ */
+CertificateType ::= ENUMERATED {
+ explicit,
+ implicit,
+ ...
+}
+
+/**
+ * @brief This is a profile of the CertificateBase structure providing all
+ * the fields necessary for an implicit certificate, and no others.
+ */
+ImplicitCertificate ::= CertificateBase (WITH COMPONENTS {...,
+ type(implicit),
+ toBeSigned(WITH COMPONENTS {...,
+ verifyKeyIndicator(WITH COMPONENTS {reconstructionValue})
+ }),
+ signature ABSENT
+})
+
+/**
+ * @brief This is a profile of the CertificateBase structure providing all
+ * the fields necessary for an explicit certificate, and no others.
+ */
+ExplicitCertificate ::= CertificateBase (WITH COMPONENTS {...,
+ type(explicit),
+ toBeSigned (WITH COMPONENTS {...,
+ verifyKeyIndicator(WITH COMPONENTS {verificationKey})
+ }),
+ signature PRESENT
+})
+
+/**
+ * @brief This structure allows the recipient of a certificate to determine
+ * which keying material to use to authenticate the certificate.
+ *
+ * If the choice indicated is sha256AndDigest, sha384AndDigest, or
+ * sm3AndDigest:
+ * - The structure contains the HashedId8 of the issuing certificate. The
+ * HashedId8 is calculated with the whole-certificate hash algorithm,
+ * determined as described in 6.4.3, applied to the COER-encoded certificate,
+ * canonicalized as defined in the definition of Certificate.
+ * - The hash algorithm to be used to generate the hash of the certificate
+ * for verification is SHA-256 (in the case of sha256AndDigest), SM3 (in the
+ * case of sm3AndDigest) or SHA-384 (in the case of sha384AndDigest).
+ * - The certificate is to be verified with the public key of the
+ * indicated issuing certificate.
+ *
+ * If the choice indicated is self:
+ * - The structure indicates what hash algorithm is to be used to generate
+ * the hash of the certificate for verification.
+ * - The certificate is to be verified with the public key indicated by
+ * the verifyKeyIndicator field in theToBeSignedCertificate.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.5. An implementation that does not
+ * recognize the indicated CHOICE for this type when verifying a signed SPDU
+ * shall indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2,
+ * that is, it is invalid in the sense that its validity cannot be
+ * established.
+ */
+IssuerIdentifier ::= CHOICE {
+ sha256AndDigest HashedId8,
+ self HashAlgorithm,
+ ...,
+ sha384AndDigest HashedId8,
+ sm3AndDigest HashedId8
+}
+
+/**
+ * @brief The fields in the ToBeSignedCertificate structure have the
+ * following meaning:
+ *
+ * For both implicit and explicit certificates, when the certificate
+ * is hashed to create or recover the public key (in the case of an implicit
+ * certificate) or to generate or verify the signature (in the case of an
+ * explicit certificate), the hash is Hash (Data input) || Hash (
+ * Signer identifier input), where:
+ * - Data input is the COER encoding of toBeSigned, canonicalized
+ * as described above.
+ * - Signer identifier input depends on the verification type,
+ * which in turn depends on the choice indicated by issuer. If the choice
+ * indicated by issuer is self, the verification type is self-signed and the
+ * signer identifier input is the empty string. If the choice indicated by
+ * issuer is not self, the verification type is certificate and the signer
+ * identifier input is the COER encoding of the canonicalization per 6.4.3 of
+ * the certificate indicated by issuer.
+ *
+ * In other words, for implicit certificates, the value H (CertU) in SEC 4,
+ * section 3, is for purposes of this standard taken to be H [H
+ * (canonicalized ToBeSignedCertificate from the subordinate certificate) ||
+ * H (entirety of issuer Certificate)]. See 5.3.2 for further discussion,
+ * including material differences between this standard and SEC 4 regarding
+ * how the hash function output is converted from a bit string to an integer.
+ *
+ * @param id: contains information that is used to identify the certificate
+ * holder if necessary.
+ *
+ * @param cracaId: identifies the Certificate Revocation Authorization CA
+ * (CRACA) responsible for certificate revocation lists (CRLs) on which this
+ * certificate might appear. Use of the cracaId is specified in 5.1.3. The
+ * HashedId3 is calculated with the whole-certificate hash algorithm,
+ * determined as described in 6.4.3, applied to the COER-encoded certificate,
+ * canonicalized as defined in the definition of Certificate.
+ *
+ * @param crlSeries: represents the CRL series relevant to a particular
+ * Certificate Revocation Authorization CA (CRACA) on which the certificate
+ * might appear. Use of this field is specified in 5.1.3.
+ *
+ * @param validityPeriod: contains the validity period of the certificate.
+ *
+ * @param region: if present, indicates the validity region of the
+ * certificate. If it is omitted the validity region is indicated as follows:
+ * - If enclosing certificate is self-signed, i.e., the choice indicated
+ * by the issuer field in the enclosing certificate structure is self, the
+ * certificate is valid worldwide.
+ * - Otherwise, the certificate has the same validity region as the
+ * certificate that issued it.
+ *
+ * @param assuranceLevel: indicates the assurance level of the certificate
+ * holder.
+ *
+ * @param appPermissions: indicates the permissions that the certificate
+ * holder has to sign application data with this certificate. A valid
+ * instance of appPermissions contains any particular Psid value in at most
+ * one entry.
+ *
+ * @param certIssuePermissions: indicates the permissions that the certificate
+ * holder has to sign certificates with this certificate. A valid instance of
+ * this array contains no more than one entry whose psidSspRange field
+ * indicates all. If the array has multiple entries and one entry has its
+ * psidSspRange field indicate all, then the entry indicating all specifies
+ * the permissions for all PSIDs other than the ones explicitly specified in
+ * the other entries. See the description of PsidGroupPermissions for further
+ * discussion.
+ *
+ * @param certRequestPermissions: indicates the permissions that the
+ * certificate holder can request in its certificate. A valid instance of this
+ * array contains no more than one entry whose psidSspRange field indicates
+ * all. If the array has multiple entries and one entry has its psidSspRange
+ * field indicate all, then the entry indicating all specifies the permissions
+ * for all PSIDs other than the ones explicitly specified in the other entries.
+ * See the description of PsidGroupPermissions for further discussion.
+ *
+ * @param canRequestRollover: indicates that the certificate may be used to
+ * sign a request for another certificate with the same permissions. This
+ * field is provided for future use and its use is not defined in this
+ * version of this standard.
+ *
+ * @param encryptionKey: contains a public key for encryption for which the
+ * certificate holder holds the corresponding private key.
+ *
+ * @param verifyKeyIndicator: contains material that may be used to recover
+ * the public key that may be used to verify data signed by this certificate.
+ *
+ * @param flags: indicates additional yes/no properties of the certificate
+ * holder. The only bit with defined semantics in this string in this version
+ * of this standard is usesCubk. If set, the usesCubk bit indicates that the
+ * certificate holder supports the compact unified butterfly key response.
+ * Further material about the compact unified butterfly key response can be
+ * found in IEEE Std 1609.2.1.
+ *
+ * @note usesCubk is only relevant for CA certificates, and the only
+ * functionality defined associated with this field is associated with
+ * consistency checks on received certificate responses. No functionality
+ * associated with communications between peer SDEEs is defined associated
+ * with this field.
+ *
+ * @param appExtensions: indicates additional permissions that may be applied
+ * to application activities that the certificate holder is carrying out.
+ *
+ * @param certIssueExtensions: indicates additional permissions to issue
+ * certificates containing endEntityExtensions.
+ *
+ * @param certRequestExtensions: indicates additional permissions to request
+ * certificates containing endEntityExtensions.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the PublicEncryptionKey and to the VerificationKeyIndicator.
+ *
+ * If the PublicEncryptionKey contains a BasePublicEncryptionKey that is an
+ * elliptic curve point (i.e., of type EccP256CurvePoint or EccP384CurvePoint),
+ * then the elliptic curve point is encoded in compressed form, i.e., such
+ * that the choice indicated within the Ecc*CurvePoint is compressed-y-0 or
+ * compressed-y-1.
+ *
+ * @note Critical information fields:
+ * - If present, appPermissions is a critical information field as defined
+ * in 5.2.6. If an implementation of verification does not support the number
+ * of PsidSsp in the appPermissions field of a certificate that signed a
+ * signed SPDU, that implementation shall indicate that the signed SPDU is
+ * invalid in the sense of 4.2.2.3.2, that is, it is invalid in the sense
+ * that its validity cannot be established.. A conformant implementation
+ * shall support appPermissions fields containing at least eight entries.
+ * It may be the case that an implementation of verification does not support
+ * the number of entries in the appPermissions field and the appPermissions
+ * field is not relevant to the verification: this will occur, for example,
+ * if the certificate in question is a CA certificate and so the
+ * certIssuePermissions field is relevant to the verification and the
+ * appPermissions field is not. In this case, whether the implementation
+ * indicates that the signed SPDU is valid (because it could validate all
+ * relevant fields) or invalid (because it could not parse the entire
+ * certificate) is implementation-specific.
+ * - If present, certIssuePermissions is a critical information field as
+ * defined in 5.2.6. If an implementation of verification does not support
+ * the number of PsidGroupPermissions in the certIssuePermissions field of a
+ * CA certificate in the chain of a signed SPDU, the implementation shall
+ * indicate that the signed SPDU is invalid in the sense of 4.2.2.3.2, that
+ * is, it is invalid in the sense that its validity cannot be established.
+ * A conformant implementation shall support certIssuePermissions fields
+ * containing at least eight entries.
+ * It may be the case that an implementation of verification does not support
+ * the number of entries in the certIssuePermissions field and the
+ * certIssuePermissions field is not relevant to the verification: this will
+ * occur, for example, if the certificate in question is the signing
+ * certificate for the SPDU and so the appPermissions field is relevant to
+ * the verification and the certIssuePermissions field is not. In this case,
+ * whether the implementation indicates that the signed SPDU is valid
+ * (because it could validate all relevant fields) or invalid (because it
+ * could not parse the entire certificate) is implementation-specific.
+ * - If present, certRequestPermissions is a critical information field as
+ * defined in 5.2.6. If an implementaiton of verification of a certificate
+ * request does not support the number of PsidGroupPermissions in
+ * certRequestPermissions, the implementation shall indicate that the signed
+ * SPDU is invalid in the sense of 4.2.2.3.2, that is, it is invalid in the
+ * sense that its validity cannot be established. A conformant implementation
+ * shall support certRequestPermissions fields containing at least eight
+ * entries.
+ * It may be the case that an implementation of verification does not support
+ * the number of entries in the certRequestPermissions field and the
+ * certRequestPermissions field is not relevant to the verification: this will
+ * occur, for example, if the certificate in question is the signing
+ * certificate for the SPDU and so the appPermissions field is relevant to
+ * the verification and the certRequestPermissions field is not. In this
+ * case, whether the implementation indicates that the signed SPDU is valid
+ * (because it could validate all relevant fields) or invalid (because it
+ * could not parse the entire certificate) is implementation-specific.
+ */
+ToBeSignedCertificate ::= SEQUENCE {
+ id CertificateId,
+ cracaId HashedId3,
+ crlSeries CrlSeries,
+ validityPeriod ValidityPeriod,
+ region GeographicRegion OPTIONAL,
+ assuranceLevel SubjectAssurance OPTIONAL,
+ appPermissions SequenceOfPsidSsp OPTIONAL,
+ certIssuePermissions SequenceOfPsidGroupPermissions OPTIONAL,
+ certRequestPermissions SequenceOfPsidGroupPermissions OPTIONAL,
+ canRequestRollover NULL OPTIONAL,
+ encryptionKey PublicEncryptionKey OPTIONAL,
+ verifyKeyIndicator VerificationKeyIndicator,
+ ...,
+ flags BIT STRING {usesCubk (0)} (SIZE (8)) OPTIONAL,
+ appExtensions SequenceOfAppExtensions,
+ certIssueExtensions SequenceOfCertIssueExtensions,
+ certRequestExtension SequenceOfCertRequestExtensions
+}
+(WITH COMPONENTS { ..., appPermissions PRESENT} |
+ WITH COMPONENTS { ..., certIssuePermissions PRESENT} |
+ WITH COMPONENTS { ..., certRequestPermissions PRESENT})
+
+/**
+ * @brief This structure contains information that is used to identify the
+ * certificate holder if necessary.
+ *
+ * @param linkageData: is used to identify the certificate for revocation
+ * purposes in the case of certificates that appear on linked certificate
+ * CRLs. See 5.1.3 and 7.3 for further discussion.
+ *
+ * @param name: is used to identify the certificate holder in the case of
+ * non-anonymous certificates. The contents of this field are a matter of
+ * policy and are expected to be human-readable.
+ *
+ * @param binaryId: supports identifiers that are not human-readable.
+ *
+ * @param none: indicates that the certificate does not include an identifier.
+ *
+ * @note Critical information fields:
+ * - If present, this is a critical information field as defined in 5.2.6.
+ * An implementation that does not recognize the choice indicated in this
+ * field shall reject a signed SPDU as invalid.
+ */
+CertificateId ::= CHOICE {
+ linkageData LinkageData,
+ name Hostname,
+ binaryId OCTET STRING(SIZE(1..64)),
+ none NULL,
+ ...
+}
+
+/**
+ * @brief This structure contains information that is matched against
+ * information obtained from a linkage ID-based CRL to determine whether the
+ * containing certificate has been revoked. See 5.1.3.4 and 7.3 for details
+ * of use.
+ */
+LinkageData ::= SEQUENCE {
+ iCert IValue,
+ linkage-value LinkageValue,
+ group-linkage-value GroupLinkageValue OPTIONAL
+}
+
+/**
+ * @brief This type indicates which type of permissions may appear in
+ * end-entity certificates the chain of whose permissions passes through the
+ * PsidGroupPermissions field containing this value. If app is indicated, the
+ * end-entity certificate may contain an appPermissions field. If enroll is
+ * indicated, the end-entity certificate may contain a certRequestPermissions
+ * field.
+ */
+EndEntityType ::=
+ BIT STRING {app (0), enrol (1) } (SIZE (8)) --(ALL EXCEPT {})
+
+/**
+ * @brief This structure states the permissions that a certificate holder has
+ * with respect to issuing and requesting certificates for a particular set
+ * of PSIDs. For examples, see D.5.3 and D.5.4.
+ *
+ * @param subjectPermissions: indicates PSIDs and SSP Ranges covered by this
+ * field.
+ *
+ * @param minChainLength: and chainLengthRange indicate how long the
+ * certificate chain from this certificate to the end-entity certificate is
+ * permitted to be. As specified in 5.1.2.1, the length of the certificate
+ * chain is the number of certificates "below" this certificate in the chain,
+ * down to and including the end-entity certificate. The length is permitted
+ * to be (a) greater than or equal to minChainLength certificates and (b)
+ * less than or equal to minChainLength + chainLengthRange certificates. A
+ * value of 0 for minChainLength is not permitted when this type appears in
+ * the certIssuePermissions field of a ToBeSignedCertificate; a certificate
+ * that has a value of 0 for this field is invalid. The value -1 for
+ * chainLengthRange is a special case: if the value of chainLengthRange is -1
+ * it indicates that the certificate chain may be any length equal to or
+ * greater than minChainLength. See the examples below for further discussion.
+ *
+ * @param eeType: takes one or more of the values app and enroll and indicates
+ * the type of certificates or requests that this instance of
+ * PsidGroupPermissions in the certificate is entitled to authorize.
+ * Different instances of PsidGroupPermissions within a ToBeSignedCertificate
+ * may have different values for eeType.
+ * - If this field indicates app, the chain is allowed to end in an
+ * authorization certificate, i.e., a certficate in which these permissions
+ * appear in an appPermissions field (in other words, if the field does not
+ * indicate app and the chain ends in an authorization certificate, the
+ * chain shall be considered invalid).
+ * - If this field indicates enroll, the chain is allowed to end in an
+ * enrollment certificate, i.e., a certificate in which these permissions
+ * appear in a certReqPermissions permissions field (in other words, if the
+ * field does not indicate enroll and the chain ends in an enrollment
+ * certificate, the chain shall be considered invalid).
+ */
+PsidGroupPermissions ::= SEQUENCE {
+ subjectPermissions SubjectPermissions,
+ minChainLength INTEGER DEFAULT 1,
+ chainLengthRange INTEGER DEFAULT 0,
+ eeType EndEntityType DEFAULT {app}
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfPsidGroupPermissions ::= SEQUENCE OF PsidGroupPermissions
+
+/**
+ * @brief This indicates the PSIDs and associated SSPs for which certificate
+ * issuance or request permissions are granted by a PsidGroupPermissions
+ * structure. If this takes the value explicit, the enclosing
+ * PsidGroupPermissions structure grants certificate issuance or request
+ * permissions for the indicated PSIDs and SSP Ranges. If this takes the
+ * value all, the enclosing PsidGroupPermissions structure grants certificate
+ * issuance or request permissions for all PSIDs not indicated by other
+ * PsidGroupPermissions in the same certIssuePermissions or
+ * certRequestPermissions field.
+ *
+ * @note Critical information fields:
+ * - If present, this is a critical information field as defined in 5.2.6.
+ * An implementation that does not recognize the indicated CHOICE when
+ * verifying a signed SPDU shall indicate that the signed SPDU is
+ * invalidin the sense of 4.2.2.3.2, that is, it is invalid in the sense that
+ * its validity cannot be established.
+ * - If present, explicit is a critical information field as defined in
+ * 5.2.6. An implementation that does not support the number of PsidSspRange
+ * in explicit when verifying a signed SPDU shall indicate that the signed
+ * SPDU is invalid in the sense of 4.2.2.3.2, that is, it is invalid in the
+ * sense that its validity cannot be established. A conformant implementation
+ * shall support explicit fields containing at least eight entries.
+ */
+SubjectPermissions ::= CHOICE {
+ explicit SequenceOfPsidSspRange,
+ all NULL,
+ ...
+}
+
+/**
+ * @brief The contents of this field depend on whether the certificate is an
+ * implicit or an explicit certificate.
+ *
+ * @param verificationKey: is included in explicit certificates. It contains
+ * the public key to be used to verify signatures generated by the holder of
+ * the Certificate.
+ *
+ * @param reconstructionValue: is included in implicit certificates. It
+ * contains the reconstruction value, which is used to recover the public key
+ * as specified in SEC 4 and 5.3.2.
+ *
+ * @note Critical information fields: If present, this is a critical
+ * information field as defined in 5.2.5. An implementation that does not
+ * recognize the indicated CHOICE for this type when verifying a signed SPDU
+ * shall indicate that the signed SPDU is invalid indicate that the signed
+ * SPDU is invalid in the sense of 4.2.2.3.2, that is, it is invalid in the
+ * sense that its validity cannot be established.
+ *
+ * @note Canonicalization: This data structure is subject to canonicalization
+ * for the relevant operations specified in 6.1.2. The canonicalization
+ * applies to the PublicVerificationKey and to the EccP256CurvePoint. The
+ * EccP256CurvePoint is encoded in compressed form, i.e., such that the
+ * choice indicated within the EccP256CurvePoint is compressed-y-0 or
+ * compressed-y-1.
+ */
+VerificationKeyIndicator ::= CHOICE {
+ verificationKey PublicVerificationKey,
+ reconstructionValue EccP256CurvePoint,
+ ...
+}
+
+/**
+ * @brief This structure uses the parameterized type Extension to define an
+ * Ieee1609ContributedHeaderInfoExtension as an open Extension Content field
+ * identified by an extension identifier. The extension identifier value is
+ * unique to extensions defined by ETSI and need not be unique among all
+ * extension identifier values defined by all contributing organizations.
+ */
+Ieee1609ContributedHeaderInfoExtension ::=
+ Extension{{Ieee1609HeaderInfoExtensions}}
+
+/**
+ * @brief This is an integer used to identify an
+ * Ieee1609ContributedHeaderInfoExtension.
+ */
+Ieee1609HeaderInfoExtensionId ::= ExtId
+
+p2pcd8ByteLearningRequestId Ieee1609HeaderInfoExtensionId ::= 1
+
+/**
+ * @brief This is the ASN.1 Information Object Class that associates IEEE
+ * 1609 HeaderInfo contributed extensions with the appropriate
+ * Ieee1609HeaderInfoExtensionId value.
+ */
+Ieee1609HeaderInfoExtensions EXT-TYPE ::= {
+ {HashedId8 IDENTIFIED BY p2pcd8ByteLearningRequestId},
+ ...
+}
+
+/**
+ * @brief This structure contains any AppExtensions that apply to the
+ * certificate holder. As specified in 5.2.4.2.3, each individual
+ * AppExtension type is associated with consistency conditions, specific to
+ * that extension, that govern its consistency with SPDUs signed by the
+ * certificate holder and with the CertIssueExtensions in the CA certificates
+ * in that certificate holder�s chain. Those consistency conditions are
+ * specified for each individual AppExtension below.
+ */
+SequenceOfAppExtensions ::= SEQUENCE (SIZE(1..MAX)) OF AppExtension
+
+/**
+ * @brief This structure contains an individual AppExtension. AppExtensions
+ * specified in this standard are drawn from the ASN.1 Information Object Set
+ * SetCertExtensions. This set, and its use in the AppExtension type, is
+ * structured so that each AppExtension is associated with a
+ * CertIssueExtension and a CertRequestExtension and all are identified by
+ * the same id value. In this structure:
+ *
+ * @param id: identifies the extension type.
+ *
+ * @param content: provides the content of the extension.
+ */
+AppExtension ::= SEQUENCE {
+ id CERT-EXT-TYPE.&id({SetCertExtensions}),
+ content CERT-EXT-TYPE.&App({SetCertExtensions}{@.id})
+}
+
+/**
+ * @brief This field contains any CertIssueExtensions that apply to the
+ * certificate holder. As specified in 5.2.4.2.3, each individual
+ * CertIssueExtension type is associated with consistency conditions,
+ * specific to that extension, that govern its consistency with
+ * AppExtensions in certificates issued by the certificate holder and with
+ * the CertIssueExtensions in the CA certificates in that certificate
+ * holder�s chain. Those consistency conditions are specified for each
+ * individual CertIssueExtension below.
+ */
+SequenceOfCertIssueExtensions ::=
+ SEQUENCE (SIZE(1..MAX)) OF CertIssueExtension
+
+/**
+ * @brief This field contains an individual CertIssueExtension.
+ * CertIssueExtensions specified in this standard are drawn from the ASN.1
+ * Information Object Set SetCertExtensions. This set, and its use in the
+ * CertIssueExtension type, is structured so that each CertIssueExtension
+ * is associated with a AppExtension and a CertRequestExtension and all are
+ * identified by the same id value. In this structure:
+ *
+ * @param id: identifies the extension type.
+ *
+ * @param permissions: indicates the permissions. Within this field.
+ * - all indicates that the certificate is entitled to issue all values of
+ * the extension.
+ * - specific is used to specify which values of the extension may be
+ * issued in the case where all does not apply.
+ */
+CertIssueExtension ::= SEQUENCE {
+ id CERT-EXT-TYPE.&id({SetCertExtensions}),
+ permissions CHOICE {
+ specific CERT-EXT-TYPE.&Issue({SetCertExtensions}{@.id}),
+ all NULL
+ }
+}
+
+/**
+ * @brief This field contains any CertRequestExtensions that apply to the
+ * certificate holder. As specified in 5.2.4.2.3, each individual
+ * CertRequestExtension type is associated with consistency conditions,
+ * specific to that extension, that govern its consistency with
+ * AppExtensions in certificates issued by the certificate holder and with
+ * the CertRequestExtensions in the CA certificates in that certificate
+ * holder�s chain. Those consistency conditions are specified for each
+ * individual CertRequestExtension below.
+ */
+SequenceOfCertRequestExtensions ::= SEQUENCE (SIZE(1..MAX)) OF CertRequestExtension
+
+/**
+ * @brief This field contains an individual CertRequestExtension.
+ * CertRequestExtensions specified in this standard are drawn from the
+ * ASN.1 Information Object Set SetCertExtensions. This set, and its use in
+ * the CertRequestExtension type, is structured so that each
+ * CertRequestExtension is associated with a AppExtension and a
+ * CertRequestExtension and all are identified by the same id value. In this
+ * structure:
+ *
+ * @param id: identifies the extension type.
+ *
+ * @param permissions: indicates the permissions. Within this field.
+ * - all indicates that the certificate is entitled to issue all values of
+ * the extension.
+ * - specific is used to specify which values of the extension may be
+ * issued in the case where all does not apply.
+ */
+CertRequestExtension ::= SEQUENCE {
+ id CERT-EXT-TYPE.&id({SetCertExtensions}),
+ permissions CHOICE {
+ content CERT-EXT-TYPE.&Req({SetCertExtensions}{@.id}),
+ all NULL
+ }
+}
+
+/**
+ * @brief This type is the AppExtension used to identify an operating
+ * organization. The associated CertIssueExtension and CertRequestExtension
+ * are both of type OperatingOrganizationId.
+ * To determine consistency between this type and an SPDU, the SDEE
+ * specification for that SPDU is required to specify how the SPDU can be
+ * used to determine an OBJECT IDENTIFIER (for example, by including the
+ * full OBJECT IDENTIFIER in the SPDU, or by including a RELATIVE-OID with
+ * clear instructions about how a full OBJECT IDENTIFIER can be obtained from
+ * the RELATIVE-OID). The SPDU is then consistent with this type if the
+ * OBJECT IDENTIFIER determined from the SPDU is identical to the OBJECT
+ * IDENTIFIER contained in this field.
+ * This AppExtension does not have consistency conditions with a
+ * corresponding CertIssueExtension. It can appear in a certificate issued
+ * by any CA.
+ */
+OperatingOrganizationId ::= OBJECT IDENTIFIER
+
+certExtId-OperatingOrganization ExtId ::= 1
+
+/**
+ * @brief This Information Object is an instance of the Information Object
+ * Class CERT-EXT-TYPE. It is defined to bind together the AppExtension,
+ * CertIssueExtension, and CertRequestExtension types associated with the
+ * use of an operating organization identifier, and to assocaute them all
+ * with the extension identifier value certExtId-OperatingOrganization.
+ */
+instanceOperatingOrganizationCertExtensions CERT-EXT-TYPE ::= {
+ ID certExtId-OperatingOrganization
+ APP OperatingOrganizationId
+ ISSUE NULL
+ REQUEST NULL
+}
+
+/**
+ * @brief This Information Object Set is a collection of Information Objects
+ * used to contain the AppExtension, CertIssueExtension, and
+ * CertRequestExtension types associated with a specific use of certificate
+ * extensions. In this version of this standard it only has a single entry
+ * instanceOperatingOrganizationCertExtensions.
+ */
+SetCertExtensions CERT-EXT-TYPE ::= {
+ instanceOperatingOrganizationCertExtensions,
+ ...
+}
+
+END
diff --git a/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2Crl.asn b/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2Crl.asn
new file mode 100644
index 0000000000..acea51aad4
--- /dev/null
+++ b/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2Crl.asn
@@ -0,0 +1,104 @@
+-- https://forge.etsi.org/rep/ITS/asn1/ieee1609.2/-/blob/ieee/Ieee1609Dot2Crl.asn
+--***************************************************************************--
+-- IEEE Std 1609.2: CRL Data Types --
+--***************************************************************************--
+
+/**
+ * @note Section references in this file are to clauses in IEEE Std
+ * 1609.2 unless indicated otherwise. Full forms of acronyms and
+ * abbreviations used in this file are specified in 3.2.
+ */
+
+Ieee1609Dot2Crl {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ crl(3) major-version-3(3) minor-version-2(2)}
+
+DEFINITIONS AUTOMATIC TAGS ::= BEGIN
+
+IMPORTS
+ Ieee1609Dot2Data
+FROM Ieee1609Dot2 {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609)
+ dot2(2) base(1) schema(1) major-version-2(2) minor-version-6(6)}
+WITH SUCCESSORS
+
+ Opaque,
+ Psid
+FROM Ieee1609Dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ base(1) base-types(2) major-version-2(2) minor-version-4(4)}
+WITH SUCCESSORS
+
+ CrlContents
+FROM Ieee1609Dot2CrlBaseTypes {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ crl(3) base-types(2) major-version-3(3) minor-version-2(2)}
+WITH SUCCESSORS
+;
+
+/**
+ * @brief This is the PSID for the CRL application.
+ */
+CrlPsid ::= Psid(256)
+
+/**
+ * @brief This structure is the SPDU used to contain a signed CRL. A valid
+ * signed CRL meets the validity criteria of 7.4.
+ */
+ /*
+SecuredCrl ::= Ieee1609Dot2Data (WITH COMPONENTS {...,
+ content (WITH COMPONENTS {
+ signedData (WITH COMPONENTS {...,
+ tbsData (WITH COMPONENTS {
+ payload (WITH COMPONENTS {...,
+ data (WITH COMPONENTS {...,
+ content (WITH COMPONENTS {
+ unsecuredData (CONTAINING CrlContents)
+ })
+ })
+ }),
+ headerInfo (WITH COMPONENTS {...,
+ psid (CrlPsid),
+ generationTime ABSENT,
+ expiryTime ABSENT,
+ generationLocation ABSENT,
+ p2pcdLearningRequest ABSENT,
+ missingCrlIdentifier ABSENT,
+ encryptionKey ABSENT
+ })
+ })
+ })
+ })
+})
+*/
+/* Rewrite the above asn1 */
+SecuredCrl ::= SEQUENCE {
+ content SecuredCrlContent
+}
+
+-- content
+SecuredCrlContent ::= CHOICE {
+ signedData CrlSignedData
+}
+
+CrlSignedData ::= SEQUENCE {
+ tbsData CrlToBeSignedData
+}
+
+CrlToBeSignedData ::= SEQUENCE {
+ payload CrlSignedDataPayload,
+ headerInfo HeaderInfo
+}
+
+CrlSignedDataPayload ::= SEQUENCE {
+ data Ieee1609Dot2CrlData OPTIONAL
+}
+
+Ieee1609Dot2CrlData ::= SEQUENCE {
+ content Ieee1609Dot2CrlContent
+}
+
+Ieee1609Dot2CrlContent ::= CHOICE {
+ unsecuredData CrlContents
+}
+END
diff --git a/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2CrlBaseTypes.asn b/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2CrlBaseTypes.asn
new file mode 100644
index 0000000000..7ea8e1c79f
--- /dev/null
+++ b/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2CrlBaseTypes.asn
@@ -0,0 +1,469 @@
+-- https://forge.etsi.org/rep/ITS/asn1/ieee1609.2/-/blob/ieee/Ieee1609Dot2CrlBaseTypes.asn
+--***************************************************************************--
+-- IEEE Std 1609.2: CRL Base Data Types --
+--***************************************************************************--
+
+/**
+ * @note Section references in this file are to clauses in IEEE Std
+ * 1609.2 unless indicated otherwise. Full forms of acronyms and
+ * abbreviations used in this file are specified in 3.2.
+ */
+
+Ieee1609Dot2CrlBaseTypes {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ crl(3) base-types(2) major-version-3(3) minor-version-2(2)}
+
+DEFINITIONS AUTOMATIC TAGS ::= BEGIN
+
+IMPORTS
+ CrlSeries,
+ Duration,
+ GeographicRegion,
+ HashedId8,
+ HashedId10,
+ IValue,
+ LaId,
+ LinkageSeed,
+ Opaque,
+ Psid,
+ SequenceOfLinkageSeed,
+ Signature,
+ Time32,
+ Uint3,
+ Uint8,
+ Uint16,
+ Uint32,
+ ValidityPeriod
+FROM Ieee1609Dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
+ standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
+ base(1) base-types(2) major-version-2(2) minor-version-4(4)}
+WITH SUCCESSORS
+;
+
+/**
+ * @brief The fields in this structure have the following meaning:
+ *
+ * @param version: is the version number of the CRL. For this version of this
+ * standard it is 1.
+ *
+ * @param crlSeries: represents the CRL series to which this CRL belongs. This
+ * is used to determine whether the revocation information in a CRL is relevant
+ * to a particular certificate as specified in 5.1.3.2.
+ *
+ * @param crlCraca: contains the low-order eight octets of the hash of the
+ * certificate of the Certificate Revocation Authorization CA (CRACA) that
+ * ultimately authorized the issuance of this CRL. This is used to determine
+ * whether the revocation information in a CRL is relevant to a particular
+ * certificate as specified in 5.1.3.2. In a valid signed CRL as specified in
+ * 7.4 the crlCraca is consistent with the associatedCraca field in the
+ * Service Specific Permissions as defined in 7.4.3.3. The HashedId8 is
+ * calculated with the whole-certificate hash algorithm, determined as
+ * described in 6.4.3, applied to the COER-encoded certificate, canonicalized
+ * as defined in the definition of Certificate.
+ *
+ * @param issueDate: specifies the time when the CRL was issued.
+ *
+ * @param nextCrl: contains the time when the next CRL with the same crlSeries
+ * and cracaId is expected to be issued. The CRL is invalid unless nextCrl is
+ * strictly after issueDate. This field is used to set the expected update time
+ * for revocation information associated with the (crlCraca, crlSeries) pair as
+ * specified in 5.1.3.6.
+ *
+ * @param priorityInfo: contains information that assists devices with limited
+ * storage space in determining which revocation information to retain and
+ * which to discard.
+ *
+ * @param typeSpecific: contains the CRL body.
+ */
+CrlContents ::= SEQUENCE {
+ version Uint8 (1),
+ crlSeries CrlSeries,
+ crlCraca HashedId8,
+ issueDate Time32,
+ nextCrl Time32,
+ priorityInfo CrlPriorityInfo,
+ typeSpecific TypeSpecificCrlContents
+}
+
+/**
+ * @brief This data structure contains information that assists devices with
+ * limited storage space in determining which revocation information to retain
+ * and which to discard.
+ *
+ * @param priority: indicates the priority of the revocation information
+ * relative to other CRLs issued for certificates with the same cracaId and
+ * crlSeries values. A higher value for this field indicates higher importance
+ * of this revocation information.
+ *
+ * @note This mechanism is for future use; details are not specified in this
+ * version of the standard.
+ */
+CrlPriorityInfo ::= SEQUENCE {
+ priority Uint8 OPTIONAL,
+ ...
+}
+
+/**
+ * @brief This structure contains type-specific CRL contents.
+ *
+ * @param fullHashCrl: contains a full hash-based CRL, i.e., a listing of the
+ * hashes of all certificates that:
+ * - contain the indicated cracaId and crlSeries values, and
+ * - are revoked by hash, and
+ * - have been revoked, and
+ * - have not expired.
+ *
+ * @param deltaHashCrl: contains a delta hash-based CRL, i.e., a listing of
+ * the hashes of all certificates that:
+ * - contain the indicated cracaId and crlSeries values, and
+ * - are revoked by hash, and
+ * - have been revoked since the previous CRL that contained the indicated
+ * cracaId and crlSeries values.
+ *
+ * @param fullLinkedCrl and fullLinkedCrlWithAlg: contain a full linkage
+ * ID-based CRL, i.e., a listing of the individual and/or group linkage data
+ * for all certificates that:
+ * - contain the indicated cracaId and crlSeries values, and
+ * - are revoked by linkage value, and
+ * - have been revoked, and
+ * - have not expired.
+ * The difference between fullLinkedCrl and fullLinkedCrlWithAlg is in how
+ * the cryptographic algorithms to be used in the seed evolution function and
+ * linkage value generation function of 5.1.3.4 are communicated to the
+ * receiver of the CRL. See below in this subclause for details.
+ *
+ * @param deltaLinkedCrl and deltaLinkedCrlWithAlg: contain a delta linkage
+ * ID-based CRL, i.e., a listing of the individual and/or group linkage data
+ * for all certificates that:
+ * - contain the specified cracaId and crlSeries values, and
+ * - are revoked by linkage data, and
+ * - have been revoked since the previous CRL that contained the indicated
+ * cracaId and crlSeries values.
+ * The difference between deltaLinkedCrl and deltaLinkedCrlWithAlg is in how
+ * the cryptographic algorithms to be used in the seed evolution function
+ * and linkage value generation function of 5.1.3.4 are communicated to the
+ * receiver of the CRL. See below in this subclause for details.
+ *
+ * @note It is the intent of this standard that once a certificate is revoked,
+ * it remains revoked for the rest of its lifetime. CRL signers are expected
+ * to include a revoked certificate on all CRLs issued between the
+ * certificate's revocation and its expiry.
+ *
+ * @note Seed evolution function and linkage value generation function
+ * identification. In order to derive linkage values per the mechanisms given
+ * in 5.1.3.4, a receiver needs to know the seed evolution function and the
+ * linkage value generation function.
+ *
+ * If the contents of this structure is a
+ * ToBeSignedLinkageValueCrlWithAlgIdentifier, then the seed evolution function
+ * and linkage value generation function are given explicitly as specified in
+ * the specification of ToBeSignedLinkageValueCrlWithAlgIdentifier.
+ *
+ * If the contents of this structure is a ToBeSignedLinkageValueCrl, then the
+ * seed evolution function and linkage value generation function are obtained
+ * based on the crlCraca field in the CrlContents:
+ * - If crlCraca was obtained with SHA-256 or SHA-384, then
+ * seedEvolutionFunctionIdentifier is seedEvoFn1-sha256 and
+ * linkageValueGenerationFunctionIdentifier is lvGenFn1-aes128.
+ * - If crlCraca was obtained with SM3, then seedEvolutionFunctionIdentifier
+ * is seedEvoFn1-sm3 and linkageValueGenerationFunctionIdentifier is
+ * lvGenFn1-sm4.
+ */
+TypeSpecificCrlContents ::= CHOICE {
+ fullHashCrl ToBeSignedHashIdCrl,
+ deltaHashCrl ToBeSignedHashIdCrl,
+ fullLinkedCrl ToBeSignedLinkageValueCrl,
+ deltaLinkedCrl ToBeSignedLinkageValueCrl,
+ ...,
+ fullLinkedCrlWithAlg ToBeSignedLinkageValueCrlWithAlgIdentifier,
+ deltaLinkedCrlWithAlg ToBeSignedLinkageValueCrlWithAlgIdentifier
+}
+
+/**
+ * @brief This data structure represents information about a revoked
+ * certificate.
+ *
+ * @param crlSerial: is a counter that increments by 1 every time a new full
+ * or delta CRL is issued for the indicated crlCraca and crlSeries values.
+ *
+ * @param entries: contains the individual revocation information items.
+ *
+ * @note To indicate that a hash-based CRL contains no individual revocation
+ * information items, the recommended approach is for the SEQUENCE OF in the
+ * SequenceOfHashBasedRevocationInfo in this field to indicate zero entries.
+ */
+ToBeSignedHashIdCrl ::= SEQUENCE {
+ crlSerial Uint32,
+ entries SequenceOfHashBasedRevocationInfo,
+ ...
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfHashBasedRevocationInfo ::=
+ SEQUENCE OF HashBasedRevocationInfo
+
+/**
+ * @brief In this structure:
+ *
+ * @param id: is the HashedId10 identifying the revoked certificate. The
+ * HashedId10 is calculated with the whole-certificate hash algorithm,
+ * determined as described in 6.4.3, applied to the COER-encoded certificate,
+ * canonicalized as defined in the definition of Certificate.
+ *
+ * @param expiry: is the value computed from the validity period's start and
+ * duration values in that certificate.
+ */
+HashBasedRevocationInfo ::= SEQUENCE {
+ id HashedId10,
+ expiry Time32,
+ ...
+}
+
+/**
+ * @brief In this structure:
+ *
+ * @param iRev: is the value iRev used in the algorithm given in 5.1.3.4. This
+ * value applies to all linkage-based revocation information included within
+ * either indvidual or groups.
+ *
+ * @param indexWithinI: is a counter that is set to 0 for the first CRL issued
+ * for the indicated combination of crlCraca, crlSeries, and iRev, and
+ * increments by 1 every time a new full or delta CRL is issued for the
+ * indicated crlCraca and crlSeries values without changing iRev.
+ *
+ * @param individual: contains individual linkage data.
+ *
+ * @note To indicate that a linkage ID-based CRL contains no individual
+ * linkage data, the recommended approach is for the SEQUENCE OF in the
+ * SequenceOfJMaxGroup in this field to indicate zero entries.
+ *
+ * @param groups: contains group linkage data.
+ *
+ * @note To indicate that a linkage ID-based CRL contains no group linkage
+ * data, the recommended approach is for the SEQUENCE OF in the
+ * SequenceOfGroupCrlEntry in this field to indicate zero entries.
+ *
+ * @param groupsSingleSeed: contains group linkage data generated with a single
+ * seed.
+ */
+ToBeSignedLinkageValueCrl ::= SEQUENCE {
+ iRev IValue,
+ indexWithinI Uint8,
+ individual SequenceOfJMaxGroup OPTIONAL,
+ groups SequenceOfGroupCrlEntry OPTIONAL,
+ ...,
+ groupsSingleSeed SequenceOfGroupSingleSeedCrlEntry OPTIONAL
+} (WITH COMPONENTS {..., individual PRESENT} |
+ WITH COMPONENTS {..., groups PRESENT} |
+ WITH COMPONENTS {..., groupsSingleSeed PRESENT})
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfJMaxGroup ::= SEQUENCE OF JMaxGroup
+
+/**
+ * @brief In this structure:
+ *
+ * @param jMax: is the value jMax used in the algorithm given in 5.1.3.4. This
+ * value applies to all linkage-based revocation information included within
+ * contents.
+ *
+ * @param contents: contains individual linkage data.
+ */
+JMaxGroup ::= SEQUENCE {
+ jmax Uint8,
+ contents SequenceOfLAGroup,
+ ...
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfLAGroup ::= SEQUENCE OF LAGroup
+
+/**
+ * @brief In this structure:
+ *
+ * @param la1Id: is the value LinkageAuthorityIdentifier1 used in the
+ * algorithm given in 5.1.3.4. This value applies to all linkage-based
+ * revocation information included within contents.
+ *
+ * @param la2Id: is the value LinkageAuthorityIdentifier2 used in the
+ * algorithm given in 5.1.3.4. This value applies to all linkage-based
+ * revocation information included within contents.
+ *
+ * @param contents: contains individual linkage data.
+ */
+LAGroup ::= SEQUENCE {
+ la1Id LaId,
+ la2Id LaId,
+ contents SequenceOfIMaxGroup,
+ ...
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfIMaxGroup ::= SEQUENCE OF IMaxGroup
+
+/**
+ * @brief In this structure:
+ *
+ * @param iMax indicates that for the entries in contents, revocation
+ * information need no longer be calculated once iCert > iMax as the holder
+ * is known to have no more valid certs at that point. iMax is not directly
+ * used in the calculation of the linkage values, it is used to determine
+ * when revocation information can safely be deleted.
+ *
+ * @param contents contains individual linkage data for certificates that are
+ * revoked using two seeds, per the algorithm given in per the mechanisms
+ * given in 5.1.3.4 and with seedEvolutionFunctionIdentifier and
+ * linkageValueGenerationFunctionIdentifier obtained as specified in 7.3.3.
+ *
+ * @param singleSeed contains individual linkage data for certificates that
+ * are revoked using a single seed, per the algorithm given in per the
+ * mechanisms given in 5.1.3.4 and with seedEvolutionFunctionIdentifier and
+ * linkageValueGenerationFunctionIdentifier obtained as specified in 7.3.3.
+ */
+IMaxGroup ::= SEQUENCE {
+ iMax Uint16,
+ contents SequenceOfIndividualRevocation,
+ ...,
+ singleSeed SequenceOfLinkageSeed OPTIONAL
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfIndividualRevocation ::=
+ SEQUENCE (SIZE(0..MAX)) OF IndividualRevocation
+
+/**
+ * @brief In this structure:
+ *
+ * @param linkageSeed1 is the value LinkageSeed1 used in the algorithm given
+ * in 5.1.3.4.
+ *
+ * @param linkageSeed2 is the value LinkageSeed2 used in the algorithm given
+ * in 5.1.3.4.
+ */
+IndividualRevocation ::= SEQUENCE {
+ linkageSeed1 LinkageSeed,
+ linkageSeed2 LinkageSeed,
+ ...
+}
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfGroupCrlEntry ::= SEQUENCE OF GroupCrlEntry
+
+/**
+ * @brief In this structure:
+ *
+ * @param iMax: indicates that for these certificates, revocation information
+ * need no longer be calculated once iCert > iMax as the holders are known
+ * to have no more valid certs for that (crlCraca, crlSeries) at that point.
+ *
+ * @param la1Id: is the value LinkageAuthorityIdentifier1 used in the
+ * algorithm given in 5.1.3.4. This value applies to all linkage-based
+ * revocation information included within contents.
+ *
+ * @param linkageSeed1: is the value LinkageSeed1 used in the algorithm given
+ * in 5.1.3.4.
+ *
+ * @param la2Id: is the value LinkageAuthorityIdentifier2 used in the
+ * algorithm given in 5.1.3.4. This value applies to all linkage-based
+ * revocation information included within contents.
+ *
+ * @param linkageSeed2: is the value LinkageSeed2 used in the algorithm given
+ * in 5.1.3.4.
+ */
+GroupCrlEntry ::= SEQUENCE {
+ iMax Uint16,
+ la1Id LaId,
+ linkageSeed1 LinkageSeed,
+ la2Id LaId,
+ linkageSeed2 LinkageSeed,
+ ...
+}
+
+/**
+ * @brief In this structure:
+ *
+ * @param iRev is the value iRev used in the algorithm given in 5.1.3.4. This
+ * value applies to all linkage-based revocation information included within
+ * either indvidual or groups.
+ *
+ * @param indexWithinI is a counter that is set to 0 for the first CRL issued
+ * for the indicated combination of crlCraca, crlSeries, and iRev, and increments by 1 every time a new full or delta CRL is issued for the indicated crlCraca and crlSeries values without changing iRev.
+ *
+ * @param seedEvolution contains an identifier for the seed evolution
+ * function, used as specified in 5.1.3.4.
+ *
+ * @param lvGeneration contains an identifier for the linkage value
+ * generation function, used as specified in 5.1.3.4.
+ *
+ * @param individual contains individual linkage data.
+ *
+ * @param groups contains group linkage data for linkage value generation
+ * with two seeds.
+ *
+ * @param groupsSingleSeed contains group linkage data for linkage value
+ * generation with one seed.
+ */
+ToBeSignedLinkageValueCrlWithAlgIdentifier ::= SEQUENCE {
+ iRev IValue,
+ indexWithinI Uint8,
+ seedEvolution SeedEvolutionFunctionIdentifier,
+ lvGeneration LvGenerationFunctionIdentifier,
+ individual SequenceOfJMaxGroup OPTIONAL,
+ groups SequenceOfGroupCrlEntry OPTIONAL,
+ groupsSingleSeed SequenceOfGroupSingleSeedCrlEntry OPTIONAL,
+ ...
+} (WITH COMPONENTS {..., individual PRESENT} |
+ WITH COMPONENTS {..., groups PRESENT} |
+ WITH COMPONENTS {..., groupsSingleSeed PRESENT})
+
+/**
+ * @brief This type is used for clarity of definitions.
+ */
+SequenceOfGroupSingleSeedCrlEntry ::=
+ SEQUENCE OF GroupSingleSeedCrlEntry
+
+/**
+ * @brief This structure contains the linkage seed for group revocation with
+ * a single seed. The seed is used as specified in the algorithms in 5.1.3.4.
+ */
+GroupSingleSeedCrlEntry ::= SEQUENCE {
+ iMax Uint16,
+ laId LaId,
+ linkageSeed LinkageSeed
+}
+
+/**
+ * @brief This structure contains an identifier for the algorithms specified
+ * in 5.1.3.4.
+ */
+ExpansionAlgorithmIdentifier ::= ENUMERATED {
+ sha256ForI-aesForJ,
+ sm3ForI-sm4ForJ,
+ ...
+}
+
+/**
+ * @brief This is the identifier for the seed evolution function. See 5.1.3
+ * for details of use.
+ */
+SeedEvolutionFunctionIdentifier ::= NULL
+
+/**
+ * @brief This is the identifier for the linkage value generation function.
+ * See 5.1.3 for details of use.
+ */
+LvGenerationFunctionIdentifier ::= NULL
+
+END
diff --git a/epan/dissectors/asn1/ieee1609dot2/ieee1609dot2.cnf b/epan/dissectors/asn1/ieee1609dot2/ieee1609dot2.cnf
index 4fa376b8b7..50e47b862f 100644
--- a/epan/dissectors/asn1/ieee1609dot2/ieee1609dot2.cnf
+++ b/epan/dissectors/asn1/ieee1609dot2/ieee1609dot2.cnf
@@ -6,6 +6,7 @@ OER
#.END
#.MODULE
+Ieee1609Dot2BaseTypes ieee1609dot2
#.MODULE_IMPORT
#.EXPORTS ONLY_VALS WS_DLL
@@ -18,7 +19,7 @@ Psid
#.PDU
Ieee1609Dot2Data
-
+SecuredCrl
#.NO_EMIT
#.NO_EMIT ONLY_VALS
@@ -30,16 +31,21 @@ OneEightyDegreeInt
TestCertificate
Countersignature
ExplicitCertificate
-HashedId10
ImplicitCertificate
KnownLatitude
KnownLongitude
-LaId
-LinkageSeed
SequenceOfPsid
Uint3
UnknownLatitude
UnknownLongitude
+OperatingOrganizationId
+Ieee1609HeaderInfoExtensionId
+Ieee1609ContributedHeaderInfoExtension
+Aes128CcmCiphertext
+CrlPsid
+ExpansionAlgorithmIdentifier
+Extension
+CountryOnly
#.TYPE_RENAME
@@ -73,7 +79,6 @@ EncryptedDataEncryptionKey/eciesBrainpoolP256r1 edekEciesBrainpoolP256r1
#.TYPE_ATTR
NinetyDegreeInt DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ieee1609dot2_NinetyDegreeInt_fmt)
OneEightyDegreeInt DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ieee1609dot2_OneEightyDegreeInt_fmt)
-ElevInt DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ieee1609dot2_ElevInt_fmt)
Time32 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ieee1609dot2_Time32_fmt)
Time64 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ieee1609dot2_Time64_fmt)
@@ -180,7 +185,7 @@ psid-peer-to-peer-distribution-of-security-management-information Psid
psid-traffic-light-manoeuver-service Psid
psid-road-and-lane-topology-service Psid
psid-infrastructure-to-vehicle-information-service Psid
-psid-traffic-light-control-service Psid
+psid-traffic-light-control-requests-service Psid
psid-geonetworking-management-communications Psid
psid-certificate-revocation-list-application Psid
psid-collective-perception-service Psid
diff --git a/epan/dissectors/asn1/ieee1609dot2/packet-ieee1609dot2-template.c b/epan/dissectors/asn1/ieee1609dot2/packet-ieee1609dot2-template.c
index be9f5c4ff5..3baddbf1cd 100644
--- a/epan/dissectors/asn1/ieee1609dot2/packet-ieee1609dot2-template.c
+++ b/epan/dissectors/asn1/ieee1609dot2/packet-ieee1609dot2-template.c
@@ -35,12 +35,12 @@ void proto_register_ieee1609dot2(void);
void proto_reg_handoff_ieee1609dot2(void);
/* Initialize the protocol and registered fields */
-int proto_ieee1609dot2 = -1;
+int proto_ieee1609dot2;
dissector_handle_t proto_ieee1609dot2_handle = NULL;
#include "packet-ieee1609dot2-hf.c"
/* Initialize the subtree pointers */
-static int ett_ieee1609dot2_ssp = -1;
+static int ett_ieee1609dot2_ssp;
#include "packet-ieee1609dot2-ett.c"
static dissector_table_t unsecured_data_subdissector_table;
@@ -65,9 +65,9 @@ ieee1609dot2_NinetyDegreeInt_fmt(gchar *s, guint32 v)
{
gint32 lat = (gint32)v;
if (lat == 900000001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable(%d)", lat);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable(%d)", lat);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
abs(lat) / 10000000,
abs(lat) % 10000000 * 6 / 1000000,
abs(lat) % 10000000 * 6 % 1000000 * 6.0 / 100000.0,
@@ -81,9 +81,9 @@ ieee1609dot2_OneEightyDegreeInt_fmt(gchar *s, guint32 v)
{
gint32 lng = (gint32)v;
if (lng == 1800000001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable(%d)", lng);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable(%d)", lng);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
abs(lng) / 10000000,
abs(lng) % 10000000 * 6 / 1000000,
abs(lng) % 10000000 * 6 % 1000000 * 6.0 / 100000.0,
@@ -92,20 +92,13 @@ ieee1609dot2_OneEightyDegreeInt_fmt(gchar *s, guint32 v)
}
}
-static void
-ieee1609dot2_ElevInt_fmt(gchar *s, guint32 v)
-{
- // Range is from -4096 to 61439 in units of one-tenth of a meter
- gint32 alt = (gint32)v - 4096;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%u)", alt * 0.1, v);
-}
static void
ieee1609dot2_Time32_fmt(gchar *s, guint32 v)
{
time_t secs = v + 1072915200 - 5;
struct tm *tm = gmtime(&secs);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u-%02u-%02u %02u:%02u:%02u (%u)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u-%02u-%02u %02u:%02u:%02u (%u)",
tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, v
);
}
@@ -116,7 +109,7 @@ ieee1609dot2_Time64_fmt(gchar *s, guint64 v)
time_t secs = v / 1000000 + 1072915200 - 5;
guint32 usecs = v % 1000000;
struct tm *tm = gmtime(&secs);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u-%02u-%02u %02u:%02u:%02u.%06u (%" G_GUINT64_FORMAT ")",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u-%02u-%02u %02u:%02u:%02u.%06u (%" PRIu64 ")",
tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, usecs, v
);
}
@@ -151,11 +144,13 @@ void proto_register_ieee1609dot2(void) {
"ATS-AID/PSID based dissector for Service Specific Permissions (SSP)", proto_ieee1609dot2, FT_UINT32, BASE_HEX);
}
+
void proto_reg_handoff_ieee1609dot2(void) {
dissector_add_string("media_type", "application/x-its", proto_ieee1609dot2_handle);
dissector_add_string("media_type", "application/x-its-request", proto_ieee1609dot2_handle);
dissector_add_string("media_type", "application/x-its-response", proto_ieee1609dot2_handle);
+ dissector_add_uint("ieee1609dot2.psid", psid_certificate_revocation_list_application, create_dissector_handle(dissect_SecuredCrl_PDU, proto_ieee1609dot2));
//dissector_add_uint_range_with_preference("udp.port", "56000,56001", proto_ieee1609dot2_handle);
}
diff --git a/epan/dissectors/asn1/ilp/ilp.cnf b/epan/dissectors/asn1/ilp/ilp.cnf
index 062e7c0c71..716efee045 100644
--- a/epan/dissectors/asn1/ilp/ilp.cnf
+++ b/epan/dissectors/asn1/ilp/ilp.cnf
@@ -57,7 +57,7 @@ guint32 IlpMessage;
%(DEFAULT_BODY)s
- col_append_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ", val_to_str(IlpMessage,ilp_IlpMessage_vals,"Unknown"));
+ col_append_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ", val_to_str_const(IlpMessage,ilp_IlpMessage_vals,"Unknown"));
#.END
@@ -96,7 +96,7 @@ guint32 IlpMessage;
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_ilp_setid);
- proto_tree_add_item(subtree, hf_ilp_mobile_directory_number, mdn_tvb, 0, 8, ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(subtree, hf_ilp_mobile_directory_number, mdn_tvb, 0, 8, ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
}
#.FN_BODY SETId/imsi VAL_PTR=&imsi_tvb
diff --git a/epan/dissectors/asn1/ilp/packet-ilp-template.c b/epan/dissectors/asn1/ilp/packet-ilp-template.c
index 288bbf3472..1a628839c7 100644
--- a/epan/dissectors/asn1/ilp/packet-ilp-template.c
+++ b/epan/dissectors/asn1/ilp/packet-ilp-template.c
@@ -33,7 +33,7 @@ void proto_register_ilp(void);
static dissector_handle_t rrlp_handle;
static dissector_handle_t lpp_handle;
-static dissector_handle_t ilp_handle;
+static dissector_handle_t ilp_tcp_handle;
/* IANA Registered Ports
@@ -42,7 +42,7 @@ static dissector_handle_t ilp_handle;
#define ILP_TCP_PORT 7276
/* Initialize the protocol and registered fields */
-static int proto_ilp = -1;
+static int proto_ilp;
#define ILP_HEADER_SIZE 2
@@ -50,11 +50,11 @@ static int proto_ilp = -1;
static gboolean ilp_desegment = TRUE;
#include "packet-ilp-hf.c"
-static int hf_ilp_mobile_directory_number = -1;
+static int hf_ilp_mobile_directory_number;
/* Initialize the subtree pointers */
-static gint ett_ilp = -1;
-static gint ett_ilp_setid = -1;
+static gint ett_ilp;
+static gint ett_ilp_setid;
#include "packet-ilp-ett.c"
/* Include constants */
@@ -106,7 +106,7 @@ void proto_register_ilp(void) {
/* Register protocol */
proto_ilp = proto_register_protocol(PNAME, PSNAME, PFNAME);
- ilp_handle = register_dissector("ilp", dissect_ilp_tcp, proto_ilp);
+ ilp_tcp_handle = register_dissector("ilp", dissect_ilp_tcp, proto_ilp);
/* Register fields and subtrees */
proto_register_field_array(proto_ilp, hf, array_length(hf));
@@ -126,9 +126,12 @@ void proto_register_ilp(void) {
void
proto_reg_handoff_ilp(void)
{
- dissector_add_string("media_type","application/oma-supl-ilp", ilp_handle);
+ dissector_handle_t ilp_pdu_handle;
+
+ ilp_pdu_handle = create_dissector_handle(dissect_ILP_PDU_PDU, proto_ilp);
rrlp_handle = find_dissector_add_dependency("rrlp", proto_ilp);
lpp_handle = find_dissector_add_dependency("lpp", proto_ilp);
- dissector_add_uint_with_preference("tcp.port", ILP_TCP_PORT, ilp_handle);
+ dissector_add_string("media_type","application/oma-supl-ilp", ilp_pdu_handle);
+ dissector_add_uint_with_preference("tcp.port", ILP_TCP_PORT, ilp_tcp_handle);
}
diff --git a/epan/dissectors/asn1/inap/inap.cnf b/epan/dissectors/asn1/inap/inap.cnf
index c53bf11f21..fe9ad0ac82 100644
--- a/epan/dissectors/asn1/inap/inap.cnf
+++ b/epan/dissectors/asn1/inap/inap.cnf
@@ -170,6 +170,7 @@ static const inap_err_t inap_err_tab[] = {
#.FN_BODY Code/local VAL_PTR = &opcode
%(DEFAULT_BODY)s
+ if (is_ExtensionField == FALSE){
if (inap_opcode_type == INAP_OPCODE_RETURN_ERROR){
errorCode = opcode;
col_append_str(actx->pinfo->cinfo, COL_INFO, val_to_str(errorCode, inap_err_code_string_vals, "Unknown INAP error (%%u)"));
@@ -180,6 +181,7 @@ static const inap_err_t inap_err_tab[] = {
col_append_str(actx->pinfo->cinfo, COL_INFO, " ");
col_set_fence(actx->pinfo->cinfo, COL_INFO);
}
+ }
#.FN_HDR Invoke
@@ -228,6 +230,7 @@ static const inap_err_t inap_err_tab[] = {
#.FN_HDR ExtensionField
obj_id = NULL;
+ is_ExtensionField =TRUE;
#.FN_PARS Code/global FN_VARIANT = _str VAL_PTR = &obj_id
@@ -240,6 +243,7 @@ static const inap_err_t inap_err_tab[] = {
call_data_dissector(tvb, actx->pinfo, ext_tree);
offset = tvb_reported_length_remaining(tvb,offset);
}
+ is_ExtensionField = FALSE;
diff --git a/epan/dissectors/asn1/inap/packet-inap-template.c b/epan/dissectors/asn1/inap/packet-inap-template.c
index cc709cc386..8334aaea03 100644
--- a/epan/dissectors/asn1/inap/packet-inap-template.c
+++ b/epan/dissectors/asn1/inap/packet-inap-template.c
@@ -38,7 +38,7 @@ void proto_reg_handoff_inap(void);
/* Initialize the protocol and registered fields */
-static int proto_inap = -1;
+static int proto_inap;
/* include constants */
#include "packet-inap-val.h"
@@ -54,6 +54,7 @@ static dissector_handle_t inap_handle;
static guint32 opcode=0;
static guint32 errorCode=0;
static const char *obj_id = NULL;
+static gboolean is_ExtensionField =FALSE;
static int inap_opcode_type;
#define INAP_OPCODE_INVOKE 1
@@ -61,47 +62,49 @@ static int inap_opcode_type;
#define INAP_OPCODE_RETURN_ERROR 3
#define INAP_OPCODE_REJECT 4
-static int hf_inap_cause_indicator = -1;
+static int hf_inap_cause_indicator;
/* Initialize the subtree pointers */
-static gint ett_inap = -1;
-static gint ett_inapisup_parameter = -1;
-static gint ett_inap_RedirectionInformation = -1;
-static gint ett_inap_HighLayerCompatibility = -1;
-static gint ett_inap_extension_data = -1;
-static gint ett_inap_cause = -1;
-static gint ett_inap_calledAddressValue = -1;
-static gint ett_inap_callingAddressValue = -1;
-static gint ett_inap_additionalCallingPartyNumber = -1;
-static gint ett_inap_assistingSSPIPRoutingAddress = -1;
-static gint ett_inap_correlationID = -1;
-static gint ett_inap_number = -1;
-static gint ett_inap_dialledNumber = -1;
-static gint ett_inap_callingLineID = -1;
-static gint ett_inap_iNServiceControlCode = -1;
-static gint ett_inap_iNServiceControlCodeLow = -1;
-static gint ett_inap_iNServiceControlCodeHigh = -1;
-static gint ett_inap_lineID = -1;
-static gint ett_inap_prefix = -1;
-static gint ett_inap_iPAddressValue = -1;
-static gint ett_inap_digitsResponse = -1;
+static gint ett_inap;
+static gint ett_inapisup_parameter;
+static gint ett_inap_RedirectionInformation;
+static gint ett_inap_HighLayerCompatibility;
+static gint ett_inap_extension_data;
+static gint ett_inap_cause;
+static gint ett_inap_calledAddressValue;
+static gint ett_inap_callingAddressValue;
+static gint ett_inap_additionalCallingPartyNumber;
+static gint ett_inap_assistingSSPIPRoutingAddress;
+static gint ett_inap_correlationID;
+static gint ett_inap_number;
+static gint ett_inap_dialledNumber;
+static gint ett_inap_callingLineID;
+static gint ett_inap_iNServiceControlCode;
+static gint ett_inap_iNServiceControlCodeLow;
+static gint ett_inap_iNServiceControlCodeHigh;
+static gint ett_inap_lineID;
+static gint ett_inap_prefix;
+static gint ett_inap_iPAddressValue;
+static gint ett_inap_digitsResponse;
#include "packet-inap-ett.c"
-static expert_field ei_inap_unknown_invokeData = EI_INIT;
-static expert_field ei_inap_unknown_returnResultData = EI_INIT;
-static expert_field ei_inap_unknown_returnErrorData = EI_INIT;
+static expert_field ei_inap_unknown_invokeData;
+static expert_field ei_inap_unknown_returnResultData;
+static expert_field ei_inap_unknown_returnErrorData;
#include "packet-inap-table.c"
-const value_string inap_general_problem_strings[] = {
-{0,"General Problem Unrecognized Component"},
-{1,"General Problem Mistyped Component"},
-{3,"General Problem Badly Structured Component"},
-{0, NULL}
+#if 0
+static const value_string inap_general_problem_strings[] = {
+ {0,"General Problem Unrecognized Component"},
+ {1,"General Problem Mistyped Component"},
+ {3,"General Problem Badly Structured Component"},
+ {0, NULL}
};
+#endif
-/* Forvard declarations */
+/* Forward declarations */
static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_);
static int dissect_returnResultData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_);
static int dissect_returnErrorData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx);
@@ -154,6 +157,7 @@ dissect_inap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *d
/* Get the length and add 2 */
inap_pdu_size = tvb_get_guint8(tvb, offset+1)+2;
opcode = 0;
+ is_ExtensionField =FALSE;
dissect_inap_ROS(TRUE, tvb, offset, &asn1_ctx, tree, -1);
return inap_pdu_size;
diff --git a/epan/dissectors/asn1/isdn-sup/packet-isdn-sup-template.c b/epan/dissectors/asn1/isdn-sup/packet-isdn-sup-template.c
index f76e71eefc..f805678ee8 100644
--- a/epan/dissectors/asn1/isdn-sup/packet-isdn-sup-template.c
+++ b/epan/dissectors/asn1/isdn-sup/packet-isdn-sup-template.c
@@ -25,12 +25,16 @@
void proto_register_isdn_sup(void);
void proto_reg_handoff_isdn_sup(void);
+static dissector_handle_t isdn_sup_arg_handle;
+static dissector_handle_t isdn_sup_res_handle;
+static dissector_handle_t isdn_sup_err_handle;
+
#include "packet-isdn-sup-val.h"
/* Initialize the protocol and registered fields */
-static int proto_isdn_sup = -1;
-static int hf_isdn_sup_operation = -1;
-static int hf_isdn_sup_error = -1;
+static int proto_isdn_sup;
+static int hf_isdn_sup_operation;
+static int hf_isdn_sup_error;
/* Global variables */
@@ -68,19 +72,19 @@ static const value_string isdn_sup_str_error[] = {
{ 0, NULL}
};
-static int hf_isdn_sup = -1;
+static int hf_isdn_sup;
#include "packet-isdn-sup-hf.c"
/* Initialize the subtree pointers */
-static gint ett_isdn_sup = -1;
+static gint ett_isdn_sup;
#include "packet-isdn-sup-ett.c"
-/* static expert_field ei_isdn_sup_unsupported_arg_type = EI_INIT; */
-static expert_field ei_isdn_sup_unsupported_result_type = EI_INIT;
-static expert_field ei_isdn_sup_unsupported_error_type = EI_INIT;
+/* static expert_field ei_isdn_sup_unsupported_arg_type; */
+static expert_field ei_isdn_sup_unsupported_result_type;
+static expert_field ei_isdn_sup_unsupported_error_type;
/* Preference settings default */
@@ -280,31 +284,21 @@ void proto_reg_handoff_isdn_sup(void) {
int i;
#if 0
dissector_handle_t q931_handle;
-#endif
- dissector_handle_t isdn_sup_arg_handle;
- dissector_handle_t isdn_sup_res_handle;
- dissector_handle_t isdn_sup_err_handle;
-
-#if 0
q931_handle = find_dissector("q931");
#endif
- isdn_sup_arg_handle = create_dissector_handle(dissect_isdn_sup_arg, proto_isdn_sup);
- isdn_sup_res_handle = create_dissector_handle(dissect_isdn_sup_res, proto_isdn_sup);
for (i=0; i<(int)array_length(isdn_sup_op_tab); i++) {
dissector_add_uint("q932.ros.etsi.local.arg", isdn_sup_op_tab[i].opcode, isdn_sup_arg_handle);
dissector_add_uint("q932.ros.etsi.local.res", isdn_sup_op_tab[i].opcode, isdn_sup_res_handle);
}
for (i=0; i<(int)array_length(isdn_sup_global_op_tab); i++) {
- if(isdn_sup_global_op_tab->arg_pdu)
+ if(isdn_sup_global_op_tab[i].arg_pdu)
dissector_add_string("q932.ros.global.arg", isdn_sup_global_op_tab[i].oid, create_dissector_handle(isdn_sup_global_op_tab[i].arg_pdu, proto_isdn_sup));
- if(isdn_sup_global_op_tab->res_pdu)
+ if(isdn_sup_global_op_tab[i].res_pdu)
dissector_add_string("q932.ros.global.res", isdn_sup_global_op_tab[i].oid, create_dissector_handle(isdn_sup_global_op_tab[i].res_pdu, proto_isdn_sup));
}
- isdn_sup_err_handle = create_dissector_handle(dissect_isdn_sup_err, proto_isdn_sup);
-
for (i=0; i<(int)array_length(isdn_sup_err_tab); i++) {
dissector_add_uint("q932.ros.etsi.local.err", isdn_sup_err_tab[i].errcode, isdn_sup_err_handle);
}
@@ -360,4 +354,9 @@ void proto_register_isdn_sup(void) {
proto_register_subtree_array(ett, array_length(ett));
expert_isdn_sup = expert_register_protocol(proto_isdn_sup);
expert_register_field_array(expert_isdn_sup, ei, array_length(ei));
+
+ /* Register dissectors */
+ isdn_sup_arg_handle = register_dissector(PFNAME "_arg", dissect_isdn_sup_arg, proto_isdn_sup);
+ isdn_sup_res_handle = register_dissector(PFNAME "_res", dissect_isdn_sup_res, proto_isdn_sup);
+ isdn_sup_err_handle = register_dissector(PFNAME "_err", dissect_isdn_sup_err, proto_isdn_sup);
}
diff --git a/epan/dissectors/asn1/its/CAM-PDU-Descriptions.asn b/epan/dissectors/asn1/its/CAM-PDU-Descriptions.asn
new file mode 100644
index 0000000000..80a3a5bba5
--- /dev/null
+++ b/epan/dissectors/asn1/its/CAM-PDU-Descriptions.asn
@@ -0,0 +1,336 @@
+CAM-PDU-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) camPduRelease2 (103900) major-version-2 (2) minor-version-1 (1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+ItsPduHeader, CauseCodeV2, ReferencePosition, AccelerationControl, Curvature, CurvatureCalculationMode, Heading, LanePosition, EmergencyPriority, EmbarkationStatus, Speed,
+DriveDirection, AccelerationComponent, StationType, ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse,
+VehicleRole, VehicleLength, VehicleWidth, Path, RoadworksSubCauseCode, ClosedLanes, TrafficRule, SpeedLimit, SteeringWheelAngle, PerformanceClass, YawRate,
+PtActivation, ProtectedCommunicationZonesRSU, CenDsrcTollingZone, GenerationDeltaTime, BasicContainer
+
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1)} WITH SUCCESSORS
+;
+
+
+-- The root data frame for cooperative awareness messages
+
+/**
+* This type represents the CAM PDU.
+*
+* It shall include the following componenets:
+*
+* @field header: the header of the CAM PDU.
+*
+* @field cam: the payload of the CAM PDU.
+*/
+
+CAM ::= SEQUENCE {
+ header ItsPduHeader (WITH COMPONENTS {... , protocolVersion (2), messageId(cam)}),
+ cam CamPayload
+}
+
+/**
+* This type represents the CAM payload.
+*
+* It shall include the following components:
+*
+* @field generationDeltaTime: Time corresponding to the time of the reference position in the CAM, considered as time of the CAM generation.
+*
+* @field camParameters: The sequence of CAM mandatory and optional container.
+*
+*/
+CamPayload ::= SEQUENCE {
+ generationDeltaTime GenerationDeltaTime,
+ camParameters CamParameters
+}
+
+/**
+* @field basicContainer: the mandatory basic container of the CAM.
+*
+* @field highFrequencyContainer: the mandatory container represents the high frequency of the CAM.
+*
+* @field lowFrequencyContainer: the optional conatainer represents the low frequency of the CAM.
+*
+* @field specialVehicleContainer: The special container of the CAM shall be present as defined in clause 6.1.2.
+* The content of the container shall be set according to the value of the vehicleRole component as specified in Table 5.
+*/
+CamParameters ::= SEQUENCE {
+ basicContainer BasicContainer,
+ highFrequencyContainer HighFrequencyContainer,
+ lowFrequencyContainer LowFrequencyContainer OPTIONAL,
+ specialVehicleContainer SpecialVehicleContainer OPTIONAL,
+ ...
+}
+
+/**
+* This type represents the high frequency container.
+*
+* It shall include the following components:
+*
+* @field basicVehicleContainerHighFrequency: The mandatory high frequency container of the CAM when the originating ITS-S is of the type vehicle ITS-S.
+*
+* @field rsuContainerHighFrequency: The mandatory high frequency container of CAM when the type of the originating ITS-S is RSU ITS-S.
+*/
+HighFrequencyContainer ::= CHOICE {
+ basicVehicleContainerHighFrequency BasicVehicleContainerHighFrequency,
+ rsuContainerHighFrequency RSUContainerHighFrequency,
+ ...
+}
+
+/**
+* This type represents the low frequency container.
+*
+* It shall include the following components:
+*
+* The low frequency container of the CAM when the originating ITS-S is of the type vehicle ITS-S. It shall be present as defined in clause 6.1.2.
+*/
+ LowFrequencyContainer ::= CHOICE {
+ basicVehicleContainerLowFrequency BasicVehicleContainerLowFrequency (WITH COMPONENTS {..., pathHistory (SIZE (0..23))}),
+ ...
+}
+
+/**
+* This type represent the Special Vehicle Container.
+*
+* It shall include the following components:
+*
+* @field publicTransportContainer: If the vehicleRole component is set to publicTransport(1) this container shall be present.
+*
+* @field specialTransportContainer: If the vehicleRole component is set to specialTransport(2) this container shall be present.
+*
+* @field dangerousGoodsContainer: If the vehicleRole component is set to dangerousGoods(3) this container shall be present.
+*
+* @field roadWorksContainerBasic: If the vehicleRole component is set to roadWork(4) this container shall be present.
+*
+* @field rescueContainer: If the vehicleRole component is set to rescue(5) this container shall be present.
+*
+* @field emergencyContainer: If the vehicleRole component is set to emergency(6) this container shall be present.
+*
+* @field safetyCarContainer: If the vehicleRole component is set to safetyCar(7) this container shall be present.
+*/
+SpecialVehicleContainer ::= CHOICE {
+ publicTransportContainer PublicTransportContainer,
+ specialTransportContainer SpecialTransportContainer,
+ dangerousGoodsContainer DangerousGoodsContainer,
+ roadWorksContainerBasic RoadWorksContainerBasic,
+ rescueContainer RescueContainer,
+ emergencyContainer EmergencyContainer,
+ safetyCarContainer SafetyCarContainer,
+ ...
+}
+
+/**
+* This type contains detaild information of the Basic Vehicle Container High Frequency.
+*
+* It shall include the following components:
+*
+* @field heading: It represent the heading and heading accuracy of the vehicle movement of the originating ITS-S with regards to the true north.
+* The heading accuracy provided in the heading Confidence value shall provide the accuracy of the measured vehicle heading with a confidence level
+* of 95 %. Otherwise, the value of the headingConfidence shall be set to unavailable.
+*
+* @field speed: It represent driving speed and speed accuracy of the originating ITS-S. The speed accuracy provided in the speedConfidence shall
+* provide the accuracy of the speed value with a confidence level of 95 %. Otherwise, the speedConfidence shall be set to unavailable.
+*
+* @field driveDirection: This component represent the vehicle drive direction (forward or backward) of the originating ITS-S.
+*
+* @field vehicleLength: This component represent the vehicle length value and vehicle length confidence indication of the vehicle ITS-S that
+* originate the CAM.
+*
+* @field vehicleWidth: This component represents the Vehicle Width of the vehicle ITS-S that originates the CAM excluding side mirrors and possible
+* similar extensions.
+*
+* @field longitudinalAcceleration: It represent the vehicle Longitudinal Acceleration of the originating ITS-S in the centre of the mass of the
+* empty vehicle. It shall include the measured vehicle longitudinal acceleration and its accuracy value with the confidence level of 95 %.
+* Otherwise, the longitudinalAccelerationConfidence shall be set to unavailable.
+*
+* @field curvature: this component reppresent the actual trajectory of the vehicle.
+*
+* @field curvatureCalculationMode: It indicates whether vehicle yaw-rate is used in the calculation of the curvature of the vehicle ITS-S that
+* originates the CAM.
+*
+* @field yawRate: It denotes the vehicle rotation around the centre of mass of the empty vehicle. The leading sign denotes the direction of
+* rotation. The value is negative if the motion is clockwise when viewing from the top.
+* yawRateConfidence denotes the accuracy for the 95 % confidence level for the measured yawRateValue. Otherwise, the value of yawRateConfidence
+* shall be set to unavailable.
+*
+* @field accelerationControl: an optional component which represents the current status of the vehcile mechnanisms controlling the longitudinal movement of the vehcile ITS-S
+* (e.g. brake pedal, gas pedal, etc. engaged) that originate the CAM.
+*
+* @field lanePosition: an optional component which represents the lanePosition of the referencePosition of a vehicle. This component shall be present if the data is
+* available at the originating ITS-S.
+*
+* @field steeringWheelAngle: an optional component which indicates the steering wheel angle and accuracy as measured at the vehicle ITS-S that originates the CAM.
+*
+* @field lateralAcceleration: an optional component which represents the vehicle lateral acceleration of the originating ITS-S in the centre of the mass of the empty vehicle.
+* It shall include the measured vehicle lateral acceleration and its accuracy value with the confidence level of 95%.
+*
+* @field verticalAcceleration: an optional component which indicates the originating ITS-S in the centre of the mass of the empty vehicle.
+*
+* @field performanceClass: an optional component characterizes the maximum age of the CAM data elements with regard to the generation delta time.
+*
+* @field cenDsrcTollingZone: an optional component which represents the information about the position of a CEN DSRC Tolling Station operating in the 5,8 GHz frequency band.
+*/
+BasicVehicleContainerHighFrequency ::= SEQUENCE {
+ heading Heading,
+ speed Speed,
+ driveDirection DriveDirection,
+ vehicleLength VehicleLength,
+ vehicleWidth VehicleWidth,
+ longitudinalAcceleration AccelerationComponent,
+ curvature Curvature,
+ curvatureCalculationMode CurvatureCalculationMode,
+ yawRate YawRate,
+ accelerationControl AccelerationControl OPTIONAL,
+ lanePosition LanePosition OPTIONAL,
+ steeringWheelAngle SteeringWheelAngle OPTIONAL,
+ lateralAcceleration AccelerationComponent OPTIONAL,
+ verticalAcceleration AccelerationComponent OPTIONAL,
+ performanceClass PerformanceClass OPTIONAL,
+ cenDsrcTollingZone CenDsrcTollingZone OPTIONAL
+}
+
+/**
+* This type contains detaild information of the Basic Vehicle Container Low Frequency.
+*
+* It shall include the following components:
+*
+* @field vehicleRole: represent the role of the vehicle ITS-S that originates the CAM. Only values 0 to 7 shall be used.
+*
+* @field exteriorLights: represent the status of the most important exterior lights switches of the vehicle ITS-S that originates the CAM.
+*
+* @field pathHistory: which represents the vehicle's recent movement over some past time and/or distance. It consists of a list of path points,
+* each represented as DF PathPoint. The list of path points may consist of up to 23 elements.
+*/
+BasicVehicleContainerLowFrequency ::= SEQUENCE {
+ vehicleRole VehicleRole,
+ exteriorLights ExteriorLights,
+ pathHistory Path
+}
+
+/**
+* This type contains detaild information of the Public Transport Container.
+*
+* It shall include the following components:
+*
+* @field embarkationStatus: It indicates whether the passenger embarkation is currently ongoing.
+*
+* @field ptActivation: an optional component used for controlling traffic lights, barriers, bollards, etc.
+*/
+PublicTransportContainer ::= SEQUENCE {
+ embarkationStatus EmbarkationStatus,
+ ptActivation PtActivation OPTIONAL
+}
+
+/**
+* This type contains detaild information of the Special Transport Container.
+*
+* It shall include the following components:
+*
+* @field specialTransportType: which indicates whether the originating ITS-S is mounted on a special transport vehicle with heavy or oversized load
+* or both. It shall be present if the data is available in originating ITS-S.
+*
+* @field lightBarSirenInUse: indicates whether light-bar or a siren is in use by the vehicle originating the CAM.
+*/
+SpecialTransportContainer ::= SEQUENCE {
+ specialTransportType SpecialTransportType,
+ lightBarSirenInUse LightBarSirenInUse
+}
+
+/**
+* This type contains detaild information of the Dangerous Goods Container.
+*
+* It shall include the following components:
+*
+* @field dangerousGoodsBasic: identifies the type of the dangerous goods transported by the vehicle that originates the CAM. It shall be present if
+* the data is available in the originating ITS S.
+*/
+ DangerousGoodsContainer ::= SEQUENCE {
+ dangerousGoodsBasic DangerousGoodsBasic
+ }
+
+ /**
+* This type contains detaild information of the Road Works Container Basic.
+*
+* It shall include the following components:
+*
+* @field roadworksSubCauseCode: The optional component, in case the originating ITS-S is mounted to a vehicle ITS-S participating to roadwork. It
+* provides information on the type of roadwork that it is currently undertaking. This component shall be present if the data is available in
+* originating ITS S.
+*
+* @field lightBarSirenInUse: it indicates whether light-bar or a siren is in use by the vehicle originating the CAM.
+*
+* @field closedLanes: an optional component which provides information about the opening/closure status of the lanes ahead. Lanes are counted from
+* the outside boarder of the road. If a lane is closed to traffic, the corresponding bit shall be set to 1.
+*/
+ RoadWorksContainerBasic ::= SEQUENCE {
+ roadworksSubCauseCode RoadworksSubCauseCode OPTIONAL,
+ lightBarSirenInUse LightBarSirenInUse,
+ closedLanes ClosedLanes OPTIONAL
+ }
+
+/**
+* This type contains detaild information of the Rescue Container.
+*
+* It shall include the following components:
+*
+* @field lightBarSirenInUse: it indicates whether light-bar or a siren is in use by the vehicle originating the CAM.
+*/
+RescueContainer ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse
+}
+
+/**
+* This type contains detaild information of the Emergency Container.
+*
+* It shall include the following components:
+*
+* @field lightBarSirenInUse: it indicates whether light-bar or a siren is in use by the vehicle originating the CAM.
+*
+* @field incidentIndication: the optional incident related to the roadworks to provide additional information of the roadworks zone.
+*
+* @field emergencyPriority: the optional component represent right of way indicator of the vehicle ITS-S that originates the CAM PDU.
+*/
+EmergencyContainer ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse,
+ incidentIndication CauseCodeV2 OPTIONAL,
+ emergencyPriority EmergencyPriority OPTIONAL
+}
+
+/**
+* This type contains detaild information of the Safety Car Container.
+*
+* It shall include the following components:
+*
+* @field lightBarSirenInUse: it indicates whether light-bar or a siren is in use by the vehicle originating the CAM.
+*
+* @field incidentIndication: the optional incident related to the roadworks to provide additional information of the roadworks zone.
+*
+* @field trafficRule: an optional rule indicates whether vehicles are allowed to overtake a safety car that is originating this CAM.
+*
+* @field speedLimit: an optional speed indicates whether a speed limit is applied to vehicles following the safety car.
+*/
+SafetyCarContainer ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse,
+ incidentIndication CauseCodeV2 OPTIONAL,
+ trafficRule TrafficRule OPTIONAL,
+ speedLimit SpeedLimit OPTIONAL
+}
+
+/**
+* This type contains detaild information of the RSU Container High Frequency.
+*
+* It shall include the following components:
+*
+* @field protectedCommunicationZonesRSU: an optional Information about position of a CEN DSRC Tolling Station operating in the 5,8 GHz frequency
+* band. If this information is provided by RSUs a receiving vehicle ITS-S is prepared to adopt mitigation techniques when being in the vicinity of
+* CEN DSRC tolling stations.
+
+*/
+RSUContainerHighFrequency ::= SEQUENCE {
+ protectedCommunicationZonesRSU ProtectedCommunicationZonesRSU OPTIONAL,
+ ...
+}
+
+END
diff --git a/epan/dissectors/asn1/its/CAM.asn b/epan/dissectors/asn1/its/CAM.asn
index 6f5fcb9a71..500e97c3f3 100644
--- a/epan/dissectors/asn1/its/CAM.asn
+++ b/epan/dissectors/asn1/its/CAM.asn
@@ -9,17 +9,17 @@ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637)
BEGIN
IMPORTS
-
- ItsPduHeader, CauseCode, ReferencePosition, AccelerationControl, Curvature,
- CurvatureCalculationMode, Heading, LanePosition, EmergencyPriority, EmbarkationStatus, Speed,
- DriveDirection, LongitudinalAcceleration, LateralAcceleration, VerticalAcceleration, StationType,
+
+ ItsPduHeader, ReferencePosition, AccelerationControl, CauseCode, Curvature,CurvatureCalculationMode,DriveDirection,
+ Heading, LanePosition, EmergencyPriority, EmbarkationStatus, Speed,
+ LongitudinalAcceleration, LateralAcceleration, VerticalAcceleration, StationType,
ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse, VehicleRole,
- VehicleLength, VehicleWidth, PathHistory, RoadworksSubCauseCode, ClosedLanes, TrafficRule,
+ VehicleLength, VehicleWidth, PathHistoryV2, RoadworksSubCauseCode, ClosedLanes, TrafficRule,
SpeedLimit, SteeringWheelAngle, PerformanceClass, YawRate, ProtectedCommunicationZone, PtActivation,
- Latitude, Longitude, ProtectedCommunicationZonesRSU, CenDsrcTollingZone FROM ITS-Container {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)
- };
-
+ Latitude, Longitude, ProtectedCommunicationZonesRSU, CenDsrcTollingZone
+ -- Wireshark modification
+ FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+ ;
-- The root data frame for cooperative awareness messages
CAM ::= SEQUENCE {
header ItsPduHeader,
@@ -89,7 +89,7 @@ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637)
BasicVehicleContainerLowFrequency ::= SEQUENCE {
vehicleRole VehicleRole,
exteriorLights ExteriorLights,
- pathHistory PathHistory
+ pathHistory PathHistoryV2
}
PublicTransportContainer ::= SEQUENCE {
diff --git a/epan/dissectors/asn1/its/CAMv2.asn b/epan/dissectors/asn1/its/CAMv2.asn
new file mode 100644
index 0000000000..500e97c3f3
--- /dev/null
+++ b/epan/dissectors/asn1/its/CAMv2.asn
@@ -0,0 +1,139 @@
+-- https://www.etsi.org/deliver/etsi_en/302600_302699/30263702/01.04.01_30/en_30263702v010401v.pdf
+--
+CAM-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cam (2) version (2)
+}
+
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+
+ ItsPduHeader, ReferencePosition, AccelerationControl, CauseCode, Curvature,CurvatureCalculationMode,DriveDirection,
+ Heading, LanePosition, EmergencyPriority, EmbarkationStatus, Speed,
+ LongitudinalAcceleration, LateralAcceleration, VerticalAcceleration, StationType,
+ ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse, VehicleRole,
+ VehicleLength, VehicleWidth, PathHistoryV2, RoadworksSubCauseCode, ClosedLanes, TrafficRule,
+ SpeedLimit, SteeringWheelAngle, PerformanceClass, YawRate, ProtectedCommunicationZone, PtActivation,
+ Latitude, Longitude, ProtectedCommunicationZonesRSU, CenDsrcTollingZone
+ -- Wireshark modification
+ FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+ ;
+ -- The root data frame for cooperative awareness messages
+ CAM ::= SEQUENCE {
+ header ItsPduHeader,
+ cam CoopAwareness
+ }
+
+ CoopAwareness ::= SEQUENCE {
+ generationDeltaTime GenerationDeltaTime,
+ camParameters CamParameters
+ }
+
+ CamParameters ::= SEQUENCE {
+ basicContainer BasicContainer,
+ highFrequencyContainer HighFrequencyContainer,
+ lowFrequencyContainer LowFrequencyContainer OPTIONAL,
+ specialVehicleContainer SpecialVehicleContainer OPTIONAL,
+ ...
+ }
+
+ HighFrequencyContainer ::= CHOICE {
+ basicVehicleContainerHighFrequency BasicVehicleContainerHighFrequency,
+ rsuContainerHighFrequency RSUContainerHighFrequency,
+ ...
+ }
+
+ LowFrequencyContainer ::= CHOICE {
+ basicVehicleContainerLowFrequency BasicVehicleContainerLowFrequency,
+ ...
+ }
+
+ SpecialVehicleContainer ::= CHOICE {
+ publicTransportContainer PublicTransportContainer,
+ specialTransportContainer SpecialTransportContainer,
+ dangerousGoodsContainer DangerousGoodsContainer,
+ roadWorksContainerBasic RoadWorksContainerBasic,
+ rescueContainer RescueContainer,
+ emergencyContainer EmergencyContainer,
+ safetyCarContainer SafetyCarContainer,
+ ...
+ }
+
+ BasicContainer ::= SEQUENCE {
+ stationType StationType,
+ referencePosition ReferencePosition,
+ ...
+ }
+
+ BasicVehicleContainerHighFrequency ::= SEQUENCE {
+ heading Heading,
+ speed Speed,
+ driveDirection DriveDirection,
+ vehicleLength VehicleLength,
+ vehicleWidth VehicleWidth,
+ longitudinalAcceleration LongitudinalAcceleration,
+ curvature Curvature,
+ curvatureCalculationMode CurvatureCalculationMode,
+ yawRate YawRate,
+ accelerationControl AccelerationControl OPTIONAL,
+ lanePosition LanePosition OPTIONAL,
+ steeringWheelAngle SteeringWheelAngle OPTIONAL,
+ lateralAcceleration LateralAcceleration OPTIONAL,
+ verticalAcceleration VerticalAcceleration OPTIONAL,
+ performanceClass PerformanceClass OPTIONAL,
+ cenDsrcTollingZone CenDsrcTollingZone OPTIONAL
+ }
+
+ BasicVehicleContainerLowFrequency ::= SEQUENCE {
+ vehicleRole VehicleRole,
+ exteriorLights ExteriorLights,
+ pathHistory PathHistoryV2
+ }
+
+ PublicTransportContainer ::= SEQUENCE {
+ embarkationStatus EmbarkationStatus,
+ ptActivation PtActivation OPTIONAL
+ }
+
+ SpecialTransportContainer ::= SEQUENCE {
+ specialTransportType SpecialTransportType,
+ lightBarSirenInUse LightBarSirenInUse
+ }
+
+ DangerousGoodsContainer ::= SEQUENCE {
+ dangerousGoodsBasic DangerousGoodsBasic
+ }
+
+ RoadWorksContainerBasic ::= SEQUENCE {
+ roadworksSubCauseCode RoadworksSubCauseCode OPTIONAL,
+ lightBarSirenInUse LightBarSirenInUse,
+ closedLanes ClosedLanes OPTIONAL
+ }
+
+ RescueContainer ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse
+ }
+
+ EmergencyContainer ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse,
+ incidentIndication CauseCode OPTIONAL,
+ emergencyPriority EmergencyPriority OPTIONAL
+ }
+
+ SafetyCarContainer ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse,
+ incidentIndication CauseCode OPTIONAL,
+ trafficRule TrafficRule OPTIONAL,
+ speedLimit SpeedLimit OPTIONAL
+ }
+
+ RSUContainerHighFrequency ::= SEQUENCE {
+ protectedCommunicationZonesRSU ProtectedCommunicationZonesRSU OPTIONAL,
+ ...
+ }
+
+ GenerationDeltaTime ::= INTEGER { oneMilliSec(1) } (0..65535)
+
+END
diff --git a/epan/dissectors/asn1/its/CMakeLists.txt b/epan/dissectors/asn1/its/CMakeLists.txt
index f90a9c9d13..2b616f6905 100644
--- a/epan/dissectors/asn1/its/CMakeLists.txt
+++ b/epan/dissectors/asn1/its/CMakeLists.txt
@@ -15,24 +15,34 @@ set( EXT_ASN_FILE_LIST
)
set( ASN_FILE_LIST
- ITS-Container.asn
+ ETSI-ITS-CDD.asn
+# ITS-Container.asn
ITS-ContainerV1.asn
ISO_TS_14816.asn
- ISO_TS_24534-3.asn
- ISO_TS_17419.asn
+# ISO_TS_24534-3.asn
+# ISO_TS_17419.asn
ISO_TS_14906_Application.asn
ISO_TS_19091.asn
GDD.asn
ISO19321IVIv2.asn
ETSI_TS_103301.asn
CAMv1.asn
- CAM.asn
+# CAM.asn
+ CAM-PDU-Descriptions.asn
DENMv1.asn
- DENM.asn
+# DENM.asn
+ DENM-PDU-Descriptions.asn
TIS_TPG_Transactions_Descriptions.asn
EVCSN-PDU-Descriptions.asn
EV-RSR-PDU-Descriptions.asn
+ CPM-OriginatingStationContainers.asn
CPM-PDU-Descriptions.asn
+ CPM-PerceivedObjectContainer.asn
+ CPM-PerceptionRegionContainer.asn
+ CPM-SensorInformationContainer.asn
+ VAM-PDU-Descriptions.asn
+# VAM-Temp-Imports.asn
+ IMZM-PDU-Descriptions.asn
)
set( EXTRA_DIST
diff --git a/epan/dissectors/asn1/its/CPM-OriginatingStationContainers.asn b/epan/dissectors/asn1/its/CPM-OriginatingStationContainers.asn
new file mode 100644
index 0000000000..995cf9e2a2
--- /dev/null
+++ b/epan/dissectors/asn1/its/CPM-OriginatingStationContainers.asn
@@ -0,0 +1,28 @@
+CPM-OriginatingStationContainers {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) originatingStationContainers (2) major-version-1 (1) minor-version-1(1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+CartesianAngle, MapReference, Speed, StationType, TrailerData, Wgs84Angle
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-3 (3) minor-version-1 (1)}
+;
+
+OriginatingVehicleContainer ::= SEQUENCE {
+ orientationAngle Wgs84Angle,
+ pitchAngle CartesianAngle OPTIONAL,
+ rollAngle CartesianAngle OPTIONAL,
+ trailerDataSet TrailerDataSet OPTIONAL,
+ ...
+}
+
+OriginatingRsuContainer ::= SEQUENCE{
+ mapReference MapReference OPTIONAL,
+ ...
+}
+
+TrailerDataSet::= SEQUENCE SIZE(1..8,...) OF TrailerData (WITH COMPONENTS {... ,frontOverhang ABSENT, rearOverhang ABSENT, trailerWidth ABSENT})
+
+END
diff --git a/epan/dissectors/asn1/its/CPM-PDU-Descriptions.asn b/epan/dissectors/asn1/its/CPM-PDU-Descriptions.asn
index 0835528b41..afb669b66f 100644
--- a/epan/dissectors/asn1/its/CPM-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/its/CPM-PDU-Descriptions.asn
@@ -11,525 +11,98 @@
--
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-CPM-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) tr (103562) cpm (1) version (1)
-}
+CPM-PDU-Descriptions { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) cpm (1) major-version-1 (1) minor-version-1(1)}
DEFINITIONS AUTOMATIC TAGS ::=
+
BEGIN
IMPORTS
-ItsPduHeader, Heading, ReferencePosition, Speed, DriveDirection, LongitudinalAcceleration,
-LateralAcceleration, VerticalAcceleration, StationType, VehicleLength, VehicleWidth, YawRate,
-SpeedConfidence
-FROM ITS-Container {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) }
-
-IntersectionReferenceID, LaneID, NodeOffsetPointXY, Offset-B10, Offset-B11, Offset-B12, Offset-B13,
-Offset-B14, Offset-B16, RoadSegmentReferenceID, VehicleHeight
-FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2) }
-
-GenerationDeltaTime
-FROM CAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) en(302637) cam(2) version(2) }
-;
-
--- The root data frame for collective perception message
-CPM ::= SEQUENCE {
- header ItsPduHeader,
- cpm CollectivePerceptionMessage
-}
-
-CollectivePerceptionMessage ::= SEQUENCE {
- generationDeltaTime GenerationDeltaTime,
- cpmParameters CpmParameters
-}
-
-CpmParameters ::= SEQUENCE {
- managementContainer CpmManagementContainer,
- stationDataContainer StationDataContainer OPTIONAL,
- sensorInformationContainer SensorInformationContainer OPTIONAL,
- perceivedObjectContainer PerceivedObjectContainer OPTIONAL,
- freeSpaceAddendumContainer FreeSpaceAddendumContainer OPTIONAL,
- numberOfPerceivedObjects NumberOfPerceivedObjects,
- ...
-}
-
-CpmManagementContainer ::= SEQUENCE {
- stationType StationType,
- perceivedObjectContainerSegmentInfo PerceivedObjectContainerSegmentInfo OPTIONAL,
- referencePosition ReferencePosition,
- ...
-}
-
-StationDataContainer ::= CHOICE {
- originatingVehicleContainer OriginatingVehicleContainer,
- originatingRSUContainer OriginatingRSUContainer,
- ...
-}
-
-OriginatingVehicleContainer ::= SEQUENCE {
- heading Heading,
- speed Speed,
- vehicleOrientationAngle WGS84Angle OPTIONAL,
- driveDirection DriveDirection DEFAULT forward,
- longitudinalAcceleration LongitudinalAcceleration OPTIONAL,
- lateralAcceleration LateralAcceleration OPTIONAL,
- verticalAcceleration VerticalAcceleration OPTIONAL,
- yawRate YawRate OPTIONAL,
- pitchAngle CartesianAngle OPTIONAL,
- rollAngle CartesianAngle OPTIONAL,
- vehicleLength VehicleLength OPTIONAL,
- vehicleWidth VehicleWidth OPTIONAL,
- vehicleHeight VehicleHeight OPTIONAL,
- trailerDataContainer TrailerDataContainer OPTIONAL,
- ...
-}
-
-OriginatingRSUContainer ::= CHOICE {
- intersectionReferenceId IntersectionReferenceID,
- roadSegmentReferenceId RoadSegmentReferenceID,
- ...
-}
-
-SensorInformationContainer ::= SEQUENCE SIZE(1..128, ...) OF SensorInformation
-
-SensorInformation ::= SEQUENCE {
- sensorID Identifier,
- type SensorType,
- detectionArea DetectionArea,
- freeSpaceConfidence FreeSpaceConfidence OPTIONAL,
- ...
-}
-
-PerceivedObjectContainer ::= SEQUENCE SIZE(1..128, ...) OF PerceivedObject
-
-PerceivedObject ::= SEQUENCE {
- objectID Identifier,
- sensorIDList SensorIdList OPTIONAL,
- timeOfMeasurement TimeOfMeasurement,
- objectAge ObjectAge OPTIONAL,
- objectConfidence ObjectConfidence DEFAULT 0,
- xDistance ObjectDistanceWithConfidence,
- yDistance ObjectDistanceWithConfidence,
- zDistance ObjectDistanceWithConfidence OPTIONAL,
- xSpeed SpeedExtended,
- ySpeed SpeedExtended,
- zSpeed SpeedExtended OPTIONAL,
- xAcceleration LongitudinalAcceleration OPTIONAL,
- yAcceleration LateralAcceleration OPTIONAL,
- zAcceleration VerticalAcceleration OPTIONAL,
- yawAngle CartesianAngle OPTIONAL,
- planarObjectDimension1 ObjectDimension OPTIONAL,
- planarObjectDimension2 ObjectDimension OPTIONAL,
- verticalObjectDimension ObjectDimension OPTIONAL,
- objectRefPoint ObjectRefPoint DEFAULT 0,
- dynamicStatus DynamicStatus OPTIONAL,
- classification ObjectClassDescription OPTIONAL,
- matchedPosition MatchedPosition OPTIONAL,
- ...
-}
-
-DetectionArea ::= CHOICE {
- vehicleSensor VehicleSensor,
- stationarySensorRadial AreaRadial,
- stationarySensorPolygon AreaPolygon,
- stationarySensorCircular AreaCircular,
- stationarySensorEllipse AreaEllipse,
- stationarySensorRectangle AreaRectangle,
- ...
-}
-
-VehicleSensor ::= SEQUENCE {
- refPointId RefPointId DEFAULT 0,
- xSensorOffset XSensorOffset,
- ySensorOffset YSensorOffset,
- zSensorOffset ZSensorOffset OPTIONAL,
- vehicleSensorPropertyList VehicleSensorPropertyList,
- ...
-}
-
-VehicleSensorPropertyList ::= SEQUENCE SIZE(1..10) OF VehicleSensorProperties
-
-VehicleSensorProperties ::= SEQUENCE {
- range Range,
- horizontalOpeningAngleStart CartesianAngleValue,
- horizontalOpeningAngleEnd CartesianAngleValue,
- verticalOpeningAngleStart CartesianAngleValue OPTIONAL,
- verticalOpeningAngleEnd CartesianAngleValue OPTIONAL,
- ...
-}
+ItsPduHeader, MessageRateHz, MessageSegmentationInfo, OrdinalNumber1B, ReferencePosition, StationType, TimestampIts
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-3 (3) minor-version-1 (1)}
+--WITH SUCCESSORS
-AreaCircular ::= SEQUENCE {
- nodeCenterPoint OffsetPoint OPTIONAL,
- radius Radius
-}
+OriginatingRsuContainer, OriginatingVehicleContainer
+FROM CPM-OriginatingStationContainers {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) originatingStationContainers (2) major-version-1 (1) minor-version-1(1)}
+--WITH SUCCESSORS
-AreaEllipse ::= SEQUENCE {
- nodeCenterPoint OffsetPoint OPTIONAL,
- semiMinorRangeLength SemiRangeLength,
- semiMajorRangeLength SemiRangeLength,
- semiMajorRangeOrientation WGS84AngleValue,
- semiHeight SemiRangeLength OPTIONAL
-}
+SensorInformationContainer
+FROM CPM-SensorInformationContainer {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) sensorInformationContainer (3) major-version-1 (1) minor-version-1(1)}
+--WITH SUCCESSORS
-AreaRectangle ::= SEQUENCE {
- nodeCenterPoint OffsetPoint OPTIONAL,
- semiMajorRangeLength SemiRangeLength,
- semiMinorRangeLength SemiRangeLength,
- semiMajorRangeOrientation WGS84AngleValue,
- semiHeight SemiRangeLength OPTIONAL
-}
+PerceptionRegionContainer
+FROM CPM-PerceptionRegionContainer {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) perceptionRegionContainer (5) major-version-1 (1) minor-version-1(1)}
+--WITH SUCCESSORS
-AreaPolygon ::= SEQUENCE {
- polyPointList PolyPointList
-}
+PerceivedObjectContainer
+FROM CPM-PerceivedObjectContainer {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) perceivedObjectContainer (4) major-version-1 (1) minor-version-1(1)}
+--WITH SUCCESSORS
-PolyPointList ::= SEQUENCE (SIZE(3..16, ...)) OF OffsetPoint
+;
-AreaRadial ::= SEQUENCE {
- range Range,
- stationaryHorizontalOpeningAngleStart WGS84AngleValue,
- stationaryHorizontalOpeningAngleEnd WGS84AngleValue,
- verticalOpeningAngleStart CartesianAngleValue OPTIONAL,
- verticalOpeningAngleEnd CartesianAngleValue OPTIONAL,
- sensorPositionOffset OffsetPoint OPTIONAL,
- sensorHeight SensorHeight OPTIONAL,
- ...
+CollectivePerceptionMessage ::= SEQUENCE {
+ header ItsPduHeader (WITH COMPONENTS {... , protocolVersion (2), messageId(cpm)}),
+ payload CpmPayload
}
-FreeSpaceAddendumContainer ::= SEQUENCE SIZE(1..128, ...) OF FreeSpaceAddendum
-
-FreeSpaceAddendum ::= SEQUENCE {
- freeSpaceConfidence FreeSpaceConfidence,
- freeSpaceArea FreeSpaceArea,
- sensorIDList SensorIdList OPTIONAL,
- shadowingApplies ShadowingApplies DEFAULT TRUE,
+CpmPayload ::= SEQUENCE {
+ managementContainer ManagementContainer,
+ cpmContainers ConstraintWrappedCpmContainers,
...
}
-FreeSpaceArea ::= CHOICE {
- freeSpacePolygon AreaPolygon,
- freeSpaceCircular AreaCircular,
- freeSpaceEllipse AreaEllipse,
- freeSpaceRectangle AreaRectangle,
+ManagementContainer ::= SEQUENCE {
+ referenceTime TimestampIts,
+ referencePosition ReferencePosition,
+ segmentationInfo MessageSegmentationInfo OPTIONAL,
+ messageRateRange MessageRateRange OPTIONAL,
...
}
-ObjectDistanceWithConfidence ::= SEQUENCE {
- value DistanceValue,
- confidence DistanceConfidence
-}
-
-ObjectDimension ::= SEQUENCE {
- value ObjectDimensionValue,
- confidence ObjectDimensionConfidence
-}
-
-CartesianAngle ::= SEQUENCE {
- value CartesianAngleValue,
- confidence AngleConfidence
-}
-
-WGS84Angle ::= SEQUENCE {
- value WGS84AngleValue,
- confidence AngleConfidence
-}
-SpeedExtended ::= SEQUENCE {
- value SpeedValueExtended,
- confidence SpeedConfidence
-}
+CPM-CONTAINER-ID-AND-TYPE ::= CLASS {
+ &id CpmContainerId UNIQUE,
+ &Type
+} WITH SYNTAX {&Type IDENTIFIED BY &id}
-SensorIdList ::= SEQUENCE SIZE(1..128, ...) OF Identifier
+CpmContainerId ::= INTEGER (1..16)
-TrailerDataContainer ::= SEQUENCE SIZE(1..2) OF TrailerData
+originatingVehicleContainer CpmContainerId ::= 1
+originatingRsuContainer CpmContainerId ::= 2
+sensorInformationContainer CpmContainerId ::= 3
+perceptionRegionContainer CpmContainerId ::= 4
+perceivedObjectContainer CpmContainerId ::= 5
-TrailerData ::= SEQUENCE {
- refPointId RefPointId,
- hitchPointOffset HitchPointOffset,
- frontOverhang FrontOverhang,
- rearOverhang RearOverhang,
- trailerWidth VehicleWidth OPTIONAL,
- hitchAngle CartesianAngle OPTIONAL,
- ...
-}
-
-LongitudinalLanePosition ::= SEQUENCE {
- longitudinalLanePositionValue LongitudinalLanePositionValue,
- longitudinalLanePositionConfidence LongitudinalLanePositionConfidence
-}
-MatchedPosition ::= SEQUENCE {
- laneID LaneID OPTIONAL,
- longitudinalLanePosition LongitudinalLanePosition OPTIONAL,
+CpmContainers CPM-CONTAINER-ID-AND-TYPE ::= {
+ {OriginatingVehicleContainer IDENTIFIED BY originatingVehicleContainer} |
+ {OriginatingRsuContainer IDENTIFIED BY originatingRsuContainer} |
+ {SensorInformationContainer IDENTIFIED BY sensorInformationContainer} |
+ {PerceptionRegionContainer IDENTIFIED BY perceptionRegionContainer} |
+ {PerceivedObjectContainer IDENTIFIED BY perceivedObjectContainer},
...
}
-PerceivedObjectContainerSegmentInfo ::= SEQUENCE {
- totalMsgSegments SegmentCount,
- thisSegmentNum SegmentCount
-}
-
-ObjectClassDescription ::= SEQUENCE (SIZE(1..8)) OF ObjectClass
-
-ObjectClass ::= SEQUENCE {
- confidence ClassConfidence,
- class CHOICE {
- vehicle VehicleSubclass,
- person PersonSubclass,
- animal AnimalSubclass,
- other OtherSubclass
- }
-}
-
-VehicleSubclass ::= SEQUENCE {
- type VehicleSubclassType DEFAULT 0,
- confidence ClassConfidence DEFAULT 0
-}
-
-PersonSubclass ::= SEQUENCE {
- type PersonSubclassType DEFAULT 0,
- confidence ClassConfidence DEFAULT 0
+WrappedCpmContainer ::= SEQUENCE {
+ containerId CPM-CONTAINER-ID-AND-TYPE.&id( {CpmContainers} ),
+ containerData CPM-CONTAINER-ID-AND-TYPE.&Type( {CpmContainers}{@containerId} )
}
-AnimalSubclass ::= SEQUENCE {
- type AnimalSubclassType DEFAULT 0,
- confidence ClassConfidence DEFAULT 0
-}
-
-OtherSubclass ::= SEQUENCE {
- type OtherSublassType DEFAULT 0,
- confidence ClassConfidence DEFAULT 0
-}
+WrappedCpmContainers::= SEQUENCE SIZE(1..8,...) OF WrappedCpmContainer
-OffsetPoint ::= SEQUENCE {
- nodeOffsetPointxy NodeOffsetPointXY (WITH COMPONENTS {..., node-LatLon ABSENT, regional ABSENT}),
- nodeOffsetPointZ NodeOffsetPointZ OPTIONAL
-}
+ConstraintWrappedCpmContainers ::= WrappedCpmContainers
+-- ((WITH COMPONENT (WITH COMPONENTS {..., containerId (ALL EXCEPT 1)})) |
+-- (WITH COMPONENT (WITH COMPONENTS {..., containerId (ALL EXCEPT 2)})))
+-- ALL did not work...
+ ((WITH COMPONENT (WITH COMPONENTS {..., containerId })) |
+ (WITH COMPONENT (WITH COMPONENTS {..., containerId })))
-NodeOffsetPointZ ::= CHOICE {
- node-Z1 Offset-B10, -- node is within 5.11m of last node
- node-Z2 Offset-B11, -- node is within 10.23m of last node
- node-Z3 Offset-B12, -- node is within 20.47m of last node
- node-Z4 Offset-B13, -- node is within 40.96m of last node
- node-Z5 Offset-B14, -- node is within 81.91m of last node
- node-Z6 Offset-B16 -- node is within 327.67m of last node
+MessageRateRange::= SEQUENCE{
+ messageRateMin MessageRateHz,
+ messageRateMax MessageRateHz
}
-AnimalSubclassType ::= INTEGER {unknown(0)} (0..255)
-
-ClassConfidence ::= INTEGER {
- unknown(0),
- onePercent(1),
- oneHundredPercent(100),
- unavailable(101)
-} (0..101)
-
-WGS84AngleValue ::= INTEGER {
- wgs84North(0),
- wgs84East(900),
- wgs84South(1800),
- wgs84West(2700),
- unavailable(3601)
-} (0..3601)
-
-CartesianAngleValue ::= INTEGER {
- zeroPointOneDegree(1),
- oneDegree(10),
- unavailable(3601)
-} (0..3601)
-
-AngleConfidence ::= INTEGER {
- zeroPointOneDegree (1),
- oneDegree (10),
- outOfRange(126),
- unavailable(127)
-} (1..127)
-
-SemiRangeLength ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..10000)
-
-DistanceValue ::= INTEGER {
- zeroPointZeroOneMeter(1),
- oneMeter(100)
-} (-132768..132767)
-
-DistanceConfidence ::= INTEGER {
- zeroPointZeroOneMeter(1),
- oneMeter(100),
- outOfRange(101),
- unavailable(102)
-} (0..102)
-
-DynamicStatus ::= INTEGER {
- dynamic(0),
- hasBeenDynamic(1),
- static(2)
-} (0..2)
-
-HitchPointOffset ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..100)
-
-FrontOverhang ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..50)
-
-FreeSpaceConfidence ::= INTEGER {
- unknown(0),
- onePercent(1),
- oneHundredPercent(100),
- unavailable(101)
-} (0..101)
-
-LongitudinalLanePositionValue ::= INTEGER {
- zeroPointOneMeter(1)
-} (0..32767)
-
-LongitudinalLanePositionConfidence ::= INTEGER {
- zeroPointZeroOneMeter(1),
- oneMeter(100),
- outOfRange(101),
- unavailable(102)
-} (0..102)
-
-ObjectAge ::= INTEGER {
- oneMiliSec(1)
-} (0..1500)
-
-ObjectConfidence ::= INTEGER {
- unknown(0),
- onePercent(1),
- oneHundredPercent(100),
- unavailable(101)
-} (0..101)
-
-ObjectDimensionValue ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..1023)
-
-ObjectDimensionConfidence ::= INTEGER {
- zeroPointZeroOneMeter(1),
- oneMeter(100),
- outOfRange(101),
- unavailable(102)
-} (0..102)
-
-ObjectRefPoint ::= INTEGER {
- mid(0),
- bottomLeft(1),
- midLeft(2),
- topLeft(3),
- bottomMid(4),
- topMid(5),
- bottomRight(6),
- midRight(7),
- topRight(8)
-} (0..8)
-
-OtherSublassType ::= INTEGER {
- unknown(0),
- roadSideUnit(1)
-} (0..255)
-
-PersonSubclassType ::= INTEGER {
- unknown(0),
- pedestrian(1),
- personInWheelchair(2),
- cyclist(3),
- personWithStroller(4),
- personOnSkates(5),
- personGroup(6)
-} (0..255)
-
-Radius ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..10000)
-
-Range ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..10000)
-
-RearOverhang ::= INTEGER {
- zeroPointOneMeter(1),
- oneMeter(10)
-} (0..150)
-
-RefPointId ::= INTEGER (0..255)
-
-SensorHeight ::= INTEGER {
- zeroPointZeroOneMeter(1)
-} (-5000..5000)
-
-ShadowingApplies ::= BOOLEAN
-
-Identifier ::= INTEGER (0..255)
-
-NumberOfPerceivedObjects ::= INTEGER (0..255)
-
-SensorType ::= INTEGER {
- undefined(0),
- radar(1),
- lidar(2),
- monovideo(3),
- stereovision(4),
- nightvision(5),
- ultrasonic(6),
- pmd(7),
- fusion(8),
- inductionloop(9),
- sphericalCamera(10),
- itssaggregation(11)
-} (0..15)
-
-SegmentCount ::= INTEGER(1..127)
-
-SpeedValueExtended ::= INTEGER {
- standstill(0),
- oneCentimeterPerSec(1),
- unavailable(16383)
-} (-16383..16383)
-
-TimeOfMeasurement ::= INTEGER {
- oneMilliSecond(1)
-} (-1500..1500)
-
-VehicleSubclassType ::= INTEGER {
- unknown(0),
- moped(1),
- motorcycle(2),
- passengerCar(3),
- bus(4),
- lightTruck(5),
- heavyTruck(6),
- trailer(7),
- specialVehicles(8),
- tram(9),
- emergencyVehicle(10),
- agricultural(11)
-} (0..255)
-
-XSensorOffset ::= INTEGER {
- negativeZeroPointZeroOneMeter(-1),
- negativeOneMeter(-100)
-} (-5000..0)
-
-YSensorOffset ::= INTEGER {
- zeroPointZeroOneMeter(1),
- oneMeter(100)
-} (-1000..1000)
-
-ZSensorOffset ::= INTEGER {
- zeroPointZeroOneMeter(1),
- oneMeter(100)
-} (0..1000)
-
END
+
diff --git a/epan/dissectors/asn1/its/CPM-PerceivedObjectContainer.asn b/epan/dissectors/asn1/its/CPM-PerceivedObjectContainer.asn
new file mode 100644
index 0000000000..652ac551fc
--- /dev/null
+++ b/epan/dissectors/asn1/its/CPM-PerceivedObjectContainer.asn
@@ -0,0 +1,21 @@
+CPM-PerceivedObjectContainer {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) perceivedObjectContainer (4) major-version-1 (1) minor-version-1(1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+CardinalNumber1B, PerceivedObject
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-3 (3) minor-version-1 (1)}
+;
+
+PerceivedObjectContainer ::= SEQUENCE {
+ numberOfPerceivedObjects CardinalNumber1B,
+ perceivedObjects PerceivedObjects,
+ ...
+}
+
+PerceivedObjects::= SEQUENCE SIZE(0..255, ...) OF PerceivedObject (WITH COMPONENTS {... ,objectId PRESENT})
+
+END
diff --git a/epan/dissectors/asn1/its/CPM-PerceptionRegionContainer.asn b/epan/dissectors/asn1/its/CPM-PerceptionRegionContainer.asn
new file mode 100644
index 0000000000..06a96fed99
--- /dev/null
+++ b/epan/dissectors/asn1/its/CPM-PerceptionRegionContainer.asn
@@ -0,0 +1,29 @@
+CPM-PerceptionRegionContainer {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) perceptionRegionContainer (5) major-version-1 (1) minor-version-1(1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+CardinalNumber1B, DeltaTimeMilliSecondSigned, Identifier2B, Shape, ConfidenceLevel, SensorType, SequenceOfIdentifier1B
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-3 (3) minor-version-1 (1)}
+;
+
+
+PerceptionRegionContainer ::= SEQUENCE SIZE(1..256, ...) OF PerceptionRegion
+
+PerceptionRegion ::= SEQUENCE {
+ measurementDeltaTime DeltaTimeMilliSecondSigned,
+ perceptionRegionConfidence ConfidenceLevel,
+ perceptionRegionShape Shape,
+ shadowingApplies BOOLEAN,
+ sensorIdList SequenceOfIdentifier1B OPTIONAL,
+ numberOfPerceivedObjects CardinalNumber1B OPTIONAL,
+ perceivedObjectIds PerceivedObjectIds OPTIONAL,
+ ...
+}
+
+PerceivedObjectIds::= SEQUENCE SIZE(0..255, ...) OF Identifier2B
+
+END
diff --git a/epan/dissectors/asn1/its/CPM-SensorInformationContainer.asn b/epan/dissectors/asn1/its/CPM-SensorInformationContainer.asn
new file mode 100644
index 0000000000..b41bfff81c
--- /dev/null
+++ b/epan/dissectors/asn1/its/CPM-SensorInformationContainer.asn
@@ -0,0 +1,26 @@
+CPM-SensorInformationContainer {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103324) sensorInformationContainer (3) major-version-1 (1) minor-version-1(1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+Shape, ConfidenceLevel, Identifier1B, SensorType
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-3 (3) minor-version-1 (1) }
+;
+
+SensorInformationContainer ::= SEQUENCE SIZE(1..128, ...) OF SensorInformation
+
+
+SensorInformation ::= SEQUENCE {
+ sensorId Identifier1B,
+ sensorType SensorType,
+ perceptionRegionShape Shape OPTIONAL,
+ perceptionRegionConfidence ConfidenceLevel OPTIONAL,
+ shadowingApplies BOOLEAN,
+ ...
+}
+
+
+END
diff --git a/epan/dissectors/asn1/its/DENM-PDU-Descriptions.asn b/epan/dissectors/asn1/its/DENM-PDU-Descriptions.asn
new file mode 100644
index 0000000000..98994902dd
--- /dev/null
+++ b/epan/dissectors/asn1/its/DENM-PDU-Descriptions.asn
@@ -0,0 +1,113 @@
+-- https://forge.etsi.org/rep/ITS/asn1/denm_ts103831/-/blob/release2/DENM-PDU-Descriptions.asn
+--
+DENM-PDU-Description {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) denmPduRelease2 (103831) major-version-2 (2) minor-version-1 (1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+ActionId, ActionIdList, CauseCodeV2, ClosedLanes, DangerousGoodsExtended, DeltaReferencePosition, DeltaTimeMilliSecondPositive, DeltaTimeSecond,
+EnergyStorageType, EventZone, HeightLonCarr, InformationQuality, ItsPduHeader, LanePosition, LightBarSirenInUse, ItineraryPath, NumberOfOccupants,
+PosLonCarr, PosCentMass, PositionOfPillars, PositioningSolutionType, PosFrontAx, PositionOfOccupants, RequestResponseIndication, ReferencePosition,
+RestrictedTypes, RoadType, StandardLength3b, StationType, Speed, SpeedLimit, StationarySince, TimestampIts, Traces,
+TrafficDirection, TrafficRule, TurningRadius, Temperature, VehicleMass, VehicleIdentification, Wgs84Angle, WheelBaseVehicle
+
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-3 (3) minor-version-1 (1)}
+;
+
+
+DENM ::= SEQUENCE {
+ header ItsPduHeader (WITH COMPONENTS {... , protocolVersion (2), messageId(denm)}),
+ denm DenmPayload
+}
+
+DenmPayload ::= SEQUENCE {
+ management ManagementContainer,
+ situation SituationContainer OPTIONAL,
+ location LocationContainer OPTIONAL,
+ alacarte AlacarteContainer OPTIONAL
+}
+
+ManagementContainer ::= SEQUENCE {
+ actionId ActionId,
+ detectionTime TimestampIts,
+ referenceTime TimestampIts,
+ termination Termination OPTIONAL,
+ eventPosition ReferencePosition,
+ awarenessDistance StandardLength3b OPTIONAL,
+ awarenessTrafficDirection TrafficDirection OPTIONAL,
+ validityDuration DeltaTimeSecond DEFAULT defaultValidity,
+ transmissionInterval DeltaTimeMilliSecondPositive OPTIONAL,
+ stationType StationType,
+ ...
+}
+
+SituationContainer ::= SEQUENCE {
+ informationQuality InformationQuality,
+ eventType CauseCodeV2,
+ linkedCause CauseCodeV2 OPTIONAL,
+ eventZone EventZone OPTIONAL,
+ ...
+}
+
+LocationContainer ::= SEQUENCE {
+ eventSpeed Speed OPTIONAL,
+ eventPositionHeading Wgs84Angle OPTIONAL,
+ traces Traces,
+ roadType RoadType OPTIONAL,
+ ...
+}
+
+ImpactReductionContainer ::= SEQUENCE {
+ heightLonCarrLeft HeightLonCarr,
+ heightLonCarrRight HeightLonCarr,
+ posLonCarrLeft PosLonCarr,
+ posLonCarrRight PosLonCarr,
+ positionOfPillars PositionOfPillars,
+ posCentMass PosCentMass,
+ wheelBaseVehicle WheelBaseVehicle,
+ turningRadius TurningRadius,
+ posFrontAx PosFrontAx,
+ positionOfOccupants PositionOfOccupants,
+ vehicleMass VehicleMass,
+ requestResponseIndication RequestResponseIndication
+}
+
+RoadWorksContainerExtended ::= SEQUENCE {
+ lightBarSirenInUse LightBarSirenInUse OPTIONAL,
+ closedLanes ClosedLanes OPTIONAL,
+ restriction RestrictedTypes OPTIONAL,
+ speedLimit SpeedLimit OPTIONAL,
+ incidentIndication CauseCodeV2 OPTIONAL,
+ recommendedPath ItineraryPath OPTIONAL,
+ startingPointSpeedLimit DeltaReferencePosition OPTIONAL,
+ trafficFlowRule TrafficRule OPTIONAL,
+ referenceDenms ActionIdList OPTIONAL
+ }
+
+StationaryVehicleContainer ::= SEQUENCE {
+ stationarySince StationarySince OPTIONAL,
+ stationaryCause CauseCodeV2 OPTIONAL,
+ carryingDangerousGoods DangerousGoodsExtended OPTIONAL,
+ numberOfOccupants NumberOfOccupants OPTIONAL,
+ vehicleIdentification VehicleIdentification OPTIONAL,
+ energyStorageType EnergyStorageType OPTIONAL
+}
+
+AlacarteContainer ::= SEQUENCE {
+ lanePosition LanePosition OPTIONAL,
+ impactReduction ImpactReductionContainer OPTIONAL,
+ externalTemperature Temperature OPTIONAL,
+ roadWorks RoadWorksContainerExtended OPTIONAL,
+ positioningSolution PositioningSolutionType OPTIONAL,
+ stationaryVehicle StationaryVehicleContainer OPTIONAL,
+ ...
+}
+
+defaultValidity INTEGER ::= 600
+
+Termination ::= ENUMERATED {isCancellation(0), isNegation (1)}
+
+END
diff --git a/epan/dissectors/asn1/its/DENM.asn b/epan/dissectors/asn1/its/DENM.asn
index 5eb776b29e..4c00ae090e 100644
--- a/epan/dissectors/asn1/its/DENM.asn
+++ b/epan/dissectors/asn1/its/DENM.asn
@@ -1,21 +1,24 @@
--
-- https://www.etsi.org/deliver/etsi_en/302600_302699/30263703/01.03.00_20/en_30263703v010300a.pdf
-DENM-PDU-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en
+DENMv1-PDU-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en
(302637) denm (1) version (2)
}
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
- ItsPduHeader, CauseCode, Speed, InformationQuality, ReferencePosition, ClosedLanes,
+ -- Wireshark modification
+ CauseCode,
+ ItsPduHeader, Speed, InformationQuality, ReferencePosition, ClosedLanes,
DangerousGoodsExtended, Heading, LanePosition, LightBarSirenInUse, RoadType, HeightLonCarr,
PosLonCarr, PosCentMass, PositioningSolutionType, RequestResponseIndication, StationType,
SpeedLimit, StationarySince, TimestampIts, WheelBaseVehicle, TurningRadius, PosFrontAx,
PositionOfOccupants, Temperature, VehicleMass, VehicleIdentification, EnergyStorageType, ActionID,
ItineraryPath, NumberOfOccupants, PositionOfPillars, RelevanceTrafficDirection, RestrictedTypes,
Traces, TransmissionInterval, ValidityDuration, RelevanceDistance, EventHistory, TrafficRule,
- DeltaReferencePosition FROM ITS-Container {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)
- };
+ DeltaReferencePosition
+ FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+ ;
+
DENM ::= SEQUENCE {
header ItsPduHeader,
denm DecentralizedEnvironmentalNotificationMessage
diff --git a/epan/dissectors/asn1/its/ETSI-ITS-CDD.asn b/epan/dissectors/asn1/its/ETSI-ITS-CDD.asn
new file mode 100644
index 0000000000..c00932a8b4
--- /dev/null
+++ b/epan/dissectors/asn1/its/ETSI-ITS-CDD.asn
@@ -0,0 +1,2135 @@
+--! @options: no-fields-header
+
+ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+------------------------------------------
+-- Specification of CDD Data Elements:
+------------------------------------------
+
+AccelerationChange::= ENUMERATED {
+ accelerate (0),
+ decelerate (1)
+}
+
+AccelerationConfidence ::= INTEGER {
+ outOfRange (101),
+ unavailable (102)
+} (0..102)
+
+AccelerationControl ::= BIT STRING {
+ brakePedalEngaged (0),
+ gasPedalEngaged (1),
+ emergencyBrakeEngaged (2),
+ collisionWarningEngaged (3),
+ accEngaged (4),
+ cruiseControlEngaged (5),
+ speedLimiterEngaged (6)
+} (SIZE(7))
+
+AccelerationMagnitudeValue ::= INTEGER {
+ positiveOutOfRange (160),
+ unavailable (161)
+} (0.. 161)
+
+
+AccelerationValue ::= INTEGER {
+ negativeOutOfRange (-160),
+ positiveOutOfRange (160),
+ unavailable (161)
+} (-160 .. 161)
+
+
+AccessTechnologyClass ::= ENUMERATED {
+ any (0),
+ itsg5Class (1),
+ ltev2xClass (2),
+ nrv2xClass (3),
+ ...
+}
+
+AccidentSubCauseCode ::= INTEGER {
+ unavailable (0),
+ multiVehicleAccident (1),
+ heavyAccident (2),
+ accidentInvolvingLorry (3),
+ accidentInvolvingBus (4),
+ accidentInvolvingHazardousMaterials (5),
+ accidentOnOppositeLane (6),
+ unsecuredAccident (7),
+ assistanceRequested (8)
+} (0..255)
+
+AdverseWeatherCondition-AdhesionSubCauseCode ::= INTEGER {
+ unavailable (0),
+ heavyFrostOnRoad (1),
+ fuelOnRoad (2),
+ mudOnRoad (3),
+ snowOnRoad (4),
+ iceOnRoad (5),
+ blackIceOnRoad (6),
+ oilOnRoad (7),
+ looseChippings (8),
+ instantBlackIce (9),
+ roadsSalted (10)
+} (0..255)
+
+AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode ::= INTEGER {
+ unavailable (0),
+ strongWinds (1),
+ damagingHail (2),
+ hurricane (3),
+ thunderstorm (4),
+ tornado (5),
+ blizzard (6)
+} (0..255)
+
+AdverseWeatherCondition-PrecipitationSubCauseCode ::= INTEGER {
+ unavailable (0),
+ heavyRain (1),
+ heavySnowfall (2),
+ softHail (3)
+} (0..255)
+
+AdverseWeatherCondition-VisibilitySubCauseCode ::= INTEGER {
+ unavailable (0),
+ fog (1),
+ smoke (2),
+ heavySnowfall (3),
+ heavyRain (4),
+ heavyHail (5),
+ lowSunGlare (6),
+ sandstorms (7),
+ swarmsOfInsects (8)
+} (0..255)
+
+AirHumidity ::= INTEGER {
+ oneHundredPercent (1000),
+ unavailable (1001)
+} (1..1001)
+
+
+AltitudeConfidence ::= ENUMERATED {
+ alt-000-01 (0),
+ alt-000-02 (1),
+ alt-000-05 (2),
+ alt-000-10 (3),
+ alt-000-20 (4),
+ alt-000-50 (5),
+ alt-001-00 (6),
+ alt-002-00 (7),
+ alt-005-00 (8),
+ alt-010-00 (9),
+ alt-020-00 (10),
+ alt-050-00 (11),
+ alt-100-00 (12),
+ alt-200-00 (13),
+ outOfRange (14),
+ unavailable (15)
+}
+
+AltitudeValue ::= INTEGER {
+ negativeOutOfRange (-100000),
+ postiveOutOfRange (800000),
+ unavailable (800001)
+} (-100000..800001)
+
+AngleConfidence ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+AngularSpeedConfidence ::= ENUMERATED {
+ degSec-01 (0),
+ degSec-02 (1),
+ degSec-05 (2),
+ degSec-10 (3),
+ degSec-20 (4),
+ degSec-50 (5),
+ outOfRange (6),
+ unavailable (7)
+}
+
+AngularAccelerationConfidence ::= ENUMERATED {
+ degSecSquared-01 (0),
+ degSecSquared-02 (1),
+ degSecSquared-05 (2),
+ degSecSquared-10 (3),
+ degSecSquared-20 (4),
+ degSecSquared-50 (5),
+ outOfRange (6),
+ unavailable (7)
+}
+
+AxlesCount ::= INTEGER{
+ outOfRange (1001),
+ unavailable (1002)
+} (2..1002)
+
+BarometricPressure ::= INTEGER{
+ outOfRangelower (2999),
+ outOfRangeUpper (12001),
+ unavailable (12002)
+} (2999..12002)
+
+BogiesCount ::= INTEGER{
+ outOfRange (100),
+ unavailable (101)
+} (2..101)
+
+
+CardinalNumber1B ::= INTEGER(0..255)
+
+CardinalNumber3b ::= INTEGER(1..8)
+
+CartesianAngleValue ::= INTEGER {
+ valueNotUsed (3600),
+ unavailable (3601)
+} (0..3601)
+
+CartesianAngularAccelerationComponentValue ::= INTEGER {
+ negativeOutOfRange (-255),
+ positiveOutOfRange (255),
+ unavailable (256)
+} (-255..256)
+
+CartesianAngularVelocityComponentValue ::= INTEGER {
+ negativeOutofRange (-255),
+ positiveOutOfRange (255),
+ unavailable (256)
+} (-255..256)
+
+
+CauseCodeType ::= INTEGER {
+ reserved (0),
+ trafficCondition (1),
+ accident (2),
+ roadworks (3),
+ impassability (5),
+ adverseWeatherCondition-Adhesion (6),
+ aquaplaning (7),
+ hazardousLocation-SurfaceCondition (9),
+ hazardousLocation-ObstacleOnTheRoad (10),
+ hazardousLocation-AnimalOnTheRoad (11),
+ humanPresenceOnTheRoad (12),
+ wrongWayDriving (14),
+ rescueAndRecoveryWorkInProgress (15),
+ adverseWeatherCondition-ExtremeWeatherCondition (17),
+ adverseWeatherCondition-Visibility (18),
+ adverseWeatherCondition-Precipitation (19),
+ violence (20),
+ slowVehicle (26),
+ dangerousEndOfQueue (27),
+ vehicleBreakdown (91),
+ postCrash (92),
+ humanProblem (93),
+ stationaryVehicle (94),
+ emergencyVehicleApproaching (95),
+ hazardousLocation-DangerousCurve (96),
+ collisionRisk (97),
+ signalViolation (98),
+ dangerousSituation (99),
+ railwayLevelCrossing (100)
+} (0..255)
+
+CartesianCoordinateSmall::= INTEGER {
+ negativeOutOfRange (-3094),
+ positiveOutOfRange (1001)
+} (-3094..1001)
+
+CartesianCoordinate::= INTEGER{
+ negativeOutOfRange (-32768),
+ positiveOutOfRange (32767)
+} (-32768..32767)
+
+CartesianCoordinateLarge::= INTEGER{
+ negativeOutOfRange (-131072),
+ positiveOutOfRange (131071)
+} (-131072..131071)
+
+--CenDsrcTollingZoneID::= ProtectedZoneId
+
+ClusterBreakupReason ::= ENUMERATED {
+ notProvided (0),
+ clusteringPurposeCompleted (1),
+ leaderMovedOutOfClusterBoundingBox (2),
+ joiningAnotherCluster (3),
+ enteringLowRiskAreaBasedOnMaps (4),
+ receptionOfCpmContainingCluster (5),
+ max(15)
+}
+
+ClusterLeaveReason ::= ENUMERATED {
+ notProvided (0),
+ clusterLeaderLost (1),
+ clusterDisbandedByLeader (2),
+ outOfClusterBoundingBox (3),
+ outOfClusterSpeedRange (4),
+ joiningAnotherCluster (5),
+ cancelledJoin (6),
+ failedJoin (7),
+ safetyCondition (8),
+ max(15)
+}
+
+CollisionRiskSubCauseCode ::= INTEGER {
+ unavailable (0),
+ longitudinalCollisionRisk (1),
+ crossingCollisionRisk (2),
+ lateralCollisionRisk (3),
+ vulnerableRoadUser (4)
+}(0..255)
+
+ConfidenceLevel ::= INTEGER {
+ unavailable (101)
+} (1..101)
+
+CoordinateConfidence ::= INTEGER {
+ outOfRange (4095),
+ unavailable (4096)
+} (1..4096)
+
+
+CorrelationCellValue ::= INTEGER {
+ full-negative-correlation (-100),
+ no-correlation (0),
+ full-positive-correlation (100),
+ unavailable (101)
+} (-100..101)
+
+CurvatureCalculationMode ::= ENUMERATED {
+ yawRateUsed (0),
+ yawRateNotUsed (1),
+ unavailable (2),
+ ...
+}
+
+CurvatureConfidence ::= ENUMERATED {
+ onePerMeter-0-00002 (0),
+ onePerMeter-0-0001 (1),
+ onePerMeter-0-0005 (2),
+ onePerMeter-0-002 (3),
+ onePerMeter-0-01 (4),
+ onePerMeter-0-1 (5),
+ outOfRange (6),
+ unavailable (7)
+}
+
+CurvatureValue ::= INTEGER {
+ outOfRangeNegative (-1023),
+ straight (0),
+ outOfRangePositive (1022),
+ unavailable (1023)
+} (-1023..1023)
+
+DangerousEndOfQueueSubCauseCode ::= INTEGER {
+ unavailable (0),
+ suddenEndOfQueue (1),
+ queueOverHill (2),
+ queueAroundBend (3),
+ queueInTunnel (4)
+} (0..255)
+
+DangerousGoodsBasic::= ENUMERATED {
+ explosives1 (0),
+ explosives2 (1),
+ explosives3 (2),
+ explosives4 (3),
+ explosives5 (4),
+ explosives6 (5),
+ flammableGases (6),
+ nonFlammableGases (7),
+ toxicGases (8),
+ flammableLiquids (9),
+ flammableSolids (10),
+ substancesLiableToSpontaneousCombustion (11),
+ substancesEmittingFlammableGasesUponContactWithWater (12),
+ oxidizingSubstances (13),
+ organicPeroxides (14),
+ toxicSubstances (15),
+ infectiousSubstances (16),
+ radioactiveMaterial (17),
+ corrosiveSubstances (18),
+ miscellaneousDangerousSubstances (19)
+}
+
+DangerousSituationSubCauseCode ::= INTEGER {
+ unavailable (0),
+ emergencyElectronicBrakeEngaged (1),
+ preCrashSystemEngaged (2),
+ espEngaged (3),
+ absEngaged (4),
+ ebEngaged (5),
+ brakeWarningEngaged (6),
+ collisionRiskWarningEngaged (7)
+} (0..255)
+
+DeltaAltitude ::= INTEGER {
+ negativeOutOfRange (-12700),
+ positiveOutOfRange (12799),
+ unavailable (12800)
+} (-12700..12800)
+
+DeltaLatitude ::= INTEGER {
+ unavailable (131072)
+} (-131071..131072)
+
+DeltaLongitude ::= INTEGER {
+ unavailable (131072)
+} (-131071..131072)
+
+DeltaTimeMilliSecondPositive ::= INTEGER (1..10000)
+
+DeltaTimeMilliSecondSigned ::= INTEGER (-2048..2047)
+
+DeltaTimeQuarterSecond::= INTEGER {
+ unavailable (255)
+} (1..255)
+
+DeltaTimeTenthOfSecond::= INTEGER {
+ unavailable (127)
+} (0..127)
+
+DeltaTimeSecond ::= INTEGER (0..86400)
+
+-- Exists in IVI {iso (1) standard (0) ivi (19321) version2 (2)
+--Direction::= INTEGER{
+-- sameDirection (0),
+-- oppositeDirection (1),
+-- bothDirections (2),
+-- unavailable (3)
+-- } (0..3)
+
+DriveDirection ::= ENUMERATED {
+ forward (0),
+ backward (1),
+ unavailable (2)
+}
+
+DrivingLaneStatus ::= BIT STRING (SIZE (1..13))
+
+EmbarkationStatus ::= BOOLEAN
+
+EmergencyPriority ::= BIT STRING {
+ requestForRightOfWay (0),
+ requestForFreeCrossingAtATrafficLight (1)
+} (SIZE(2))
+
+EmergencyVehicleApproachingSubCauseCode ::= INTEGER {
+ unavailable (0),
+ emergencyVehicleApproaching (1),
+ prioritizedVehicleApproaching (2)
+} (0..255)
+
+EnergyStorageType ::= BIT STRING {
+ hydrogenStorage (0),
+ electricEnergyStorage (1),
+ liquidPropaneGas (2),
+ compressedNaturalGas (3),
+ diesel (4),
+ gasoline (5),
+ ammonia (6)
+}(SIZE(7))
+
+EuVehicleCategoryL ::= ENUMERATED { l1, l2, l3, l4, l5, l6, l7 }
+
+EuVehicleCategoryM ::= ENUMERATED {m1, m2, m3}
+
+EuVehicleCategoryN ::= ENUMERATED {n1, n2, n3}
+
+EuVehicleCategoryO ::= ENUMERATED {o1, o2, o3, o4}
+
+ExteriorLights ::= BIT STRING {
+ lowBeamHeadlightsOn (0),
+ highBeamHeadlightsOn (1),
+ leftTurnSignalOn (2),
+ rightTurnSignalOn (3),
+ daytimeRunningLightsOn (4),
+ reverseLightOn (5),
+ fogLightOn (6),
+ parkingLightsOn (7)
+} (SIZE(8))
+
+GenerationDeltaTime ::= INTEGER { oneMilliSec(1) } (0..65535)
+
+HardShoulderStatus ::= ENUMERATED {
+ availableForStopping (0),
+ closed (1),
+ availableForDriving (2)
+}
+
+HazardousLocation-AnimalOnTheRoadSubCauseCode ::= INTEGER {
+ unavailable (0),
+ wildAnimals (1),
+ herdOfAnimals (2),
+ smallAnimals (3),
+ largeAnimals (4)
+} (0..255)
+
+HazardousLocation-DangerousCurveSubCauseCode ::= INTEGER {
+ unavailable (0),
+ dangerousLeftTurnCurve (1),
+ dangerousRightTurnCurve (2),
+ multipleCurvesStartingWithUnknownTurningDirection (3),
+ multipleCurvesStartingWithLeftTurn (4),
+ multipleCurvesStartingWithRightTurn (5)
+} (0..255)
+
+HazardousLocation-ObstacleOnTheRoadSubCauseCode ::= INTEGER {
+ unavailable (0),
+ shedLoad (1),
+ partsOfVehicles (2),
+ partsOfTyres (3),
+ bigObjects (4),
+ fallenTrees (5),
+ hubCaps (6),
+ waitingVehicles (7)
+} (0..255)
+
+HazardousLocation-SurfaceConditionSubCauseCode ::= INTEGER {
+ unavailable (0),
+ rockfalls (1),
+ earthquakeDamage (2),
+ sewerCollapse (3),
+ subsidence (4),
+ snowDrifts (5),
+ stormDamage (6),
+ burstPipe (7),
+ volcanoEruption (8),
+ fallingIce (9),
+ fire (10)
+} (0..255)
+
+HeadingConfidence ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+HeadingValue ::= INTEGER {
+ wgs84North (0),
+ wgs84East (900),
+ wgs84South (1800),
+ wgs84West (2700),
+ doNotUse (3600),
+ unavailable (3601)
+} (0..3601)
+
+HeightLonCarr ::= INTEGER {
+ outOfRange(99),
+ unavailable(100)
+} (1..100)
+
+HumanPresenceOnTheRoadSubCauseCode ::= INTEGER {
+ unavailable (0),
+ childrenOnRoadway (1),
+ cyclistOnRoadway (2),
+ motorcyclistOnRoadway (3)
+} (0..255)
+
+HumanProblemSubCauseCode ::= INTEGER {
+ unavailable (0),
+ glycemiaProblem (1),
+ heartProblem (2)
+} (0..255)
+
+Identifier1B ::= INTEGER (0..255)
+
+Identifier2B ::= INTEGER (0..65535)
+
+InformationQuality ::= INTEGER (0..7)
+
+InterferenceManagementZoneType ::= ENUMERATED {
+ permanentCenDsrcTolling (0),
+ temporaryCenDsrcTolling (1),
+ unavailable (2),
+ urbanRail (3),
+ satelliteStation (4),
+ fixedLinks (5),
+ ...
+}
+
+Iso3833VehicleType ::= INTEGER {
+ passengerCar (0),
+ saloon (1),
+ convertibleSaloon (2),
+ pullmanSaloon (3),
+ stationWagon (4),
+ truckStationWagon (5),
+ coupe (6),
+ convertible (7),
+ multipurposePassengerCar (8),
+ forwardControlPassengerCar (9),
+ specialPassengerCar (10),
+ bus (11),
+ minibus (12),
+ urbanBus (13),
+ interurbanCoach (14),
+ longDistanceCoach (15),
+ articulatedBus (16),
+ trolleyBus (17),
+ specialBus (18),
+ commercialVehicle (19),
+ specialCommercialVehicle (20),
+ specialVehicle (21),
+ trailingTowingVehicle (22),
+ semiTrailerTowingVehicle (23),
+ trailer (24),
+ busTrailer (25),
+ generalPurposeTrailer (26),
+ caravan (27),
+ specialTrailer (28),
+ semiTrailer (29),
+ busSemiTrailer (30),
+ generalPurposeSemiTrailer (31),
+ specialSemiTrailer (32),
+ roadTrain (33),
+ passengerRoadTrain (34),
+ articulatedRoadTrain (35),
+ doubleRoadTrain (36),
+ compositeRoadTrain (37),
+ specialRoadTrain (38),
+ moped (39),
+ motorCycle (40)
+ } (0..255)
+
+LanePosition ::= INTEGER {
+ offTheRoad (-1),
+ innerHardShoulder (0),
+ outerHardShoulder (14)
+} (-1..14)
+
+LaneType::= INTEGER{
+ traffic (0),
+ through (1),
+ reversible (2),
+ acceleration (3),
+ deceleration (4),
+ leftHandTurning (5),
+ rightHandTurning (6),
+ dedicatedVehicle (7),
+ bus (8),
+ taxi (9),
+ hov (10),
+ hot (11),
+ pedestrian (12),
+ cycleLane (13),
+ median (14),
+ striping (15),
+ trackedVehicle (16),
+ parking (17),
+ emergency (18),
+ verge (19),
+ minimumRiskManoeuvre (20),
+ unknown (31)
+}(0..31)
+
+--LaneWidth::= INTEGER (0..1023)
+
+Latitude ::= INTEGER {
+ unavailable(900000001)
+} (-900000000..900000001)
+
+LateralAccelerationValue ::= INTEGER {
+ negativeOutOfRange (-160),
+ positiveOutOfRange (160),
+ unavailable (161)
+} (-160 .. 161)
+
+LightBarSirenInUse ::= BIT STRING {
+ lightBarActivated (0),
+ sirenActivated (1)
+} (SIZE(2))
+
+Longitude ::= INTEGER {
+ valueNotUsed (-1800000000),
+ unavailable (1800000001)
+} (-1800000000..1800000001)
+
+LongitudinalAccelerationValue::= INTEGER {
+ negativeOutOfRange (-160),
+ positiveOutOfRange (160),
+ unavailable (161)
+} (-160 .. 161)
+
+LongitudinalLanePositionValue ::= INTEGER {
+ outOfRange(32766),
+ unavailable(32767)
+}(0..32767)
+
+LongitudinalLanePositionConfidence ::= INTEGER {
+ outOfRange (1022),
+ unavailable (1023)
+} (0..1023)
+
+MatrixIncludedComponents::= BIT STRING{
+ xPosition (0),
+ yPosition (1),
+ zPosition (2),
+ xVelocityOrVelocityMagnitude (3),
+ yVelocityOrVelocityDirection (4),
+ zSpeed (5),
+ xAccelOrAccelMagnitude (6),
+ yAccelOrAccelDirection (7),
+ zAcceleration (8),
+ zAngle (9),
+ yAngle (10),
+ xAngle (11),
+ zAngularVelocity (12)
+} (SIZE(13,...))
+
+MessageId::= INTEGER {
+ denm (1),
+ cam (2),
+ poi (3),
+ spatem (4),
+ mapem (5),
+ ivim (6),
+ ev-rsr (7),
+ tistpgtransaction (8),
+ srem (9),
+ ssem (10),
+ evcsn (11),
+ saem (12),
+ rtcmem (13),
+ cpm (14),
+ imzm (15),
+ vam (16),
+ dsm (17),
+ pcim (18),
+ pcvm (19),
+ mcm (20),
+ pam (21)
+} (0..255)
+
+NumberOfOccupants ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (0 .. 127)
+
+ObjectPerceptionQuality ::= INTEGER {
+ noConfidence (0),
+ fullConfidence (15)
+} (0..15)
+
+ObjectDimensionValue ::= INTEGER {
+ outOfRange (255),
+ unavailable (256)
+}(1..256)
+
+ObjectDimensionConfidence ::= INTEGER {
+ outOfRange (31),
+ unavailable (32)
+} (1..32)
+
+ObjectFace ::= ENUMERATED {
+ front (0),
+ sideLeftFront (1),
+ sideLeftBack (2),
+ sideRightFront (3),
+ sideRightBack (4),
+ back (5)
+}
+
+OpeningDaysHours ::= UTF8String
+
+--OrdinalNumber1B ::= INTEGER(0..255)
+
+
+OrdinalNumber3b ::= INTEGER(1..8)
+
+OtherSubClass ::= INTEGER {
+ unknown (0),
+ singleObject (1),
+ multipleObjects (2),
+ bulkMaterial (3)
+} (0..255)
+
+PathDeltaTime ::= INTEGER (1..65535, ...)
+
+PerformanceClass ::= INTEGER {
+ unavailable (0),
+ performanceClassA (1),
+ performanceClassB (2)
+} (0..7)
+
+PhoneNumber ::= NumericString (SIZE(1..16))
+
+PosCentMass ::= INTEGER {
+ tenCentimetres (1),
+ outOfRange (62),
+ unavailable (63)
+} (1..63)
+
+PositioningSolutionType ::= ENUMERATED {
+ noPositioningSolution (0),
+ sGNSS (1),
+ dGNSS (2),
+ sGNSSplusDR (3),
+ dGNSSplusDR (4),
+ dR (5),
+ ...
+}
+
+PositionOfOccupants ::= BIT STRING {
+ row1LeftOccupied (0),
+ row1RightOccupied (1),
+ row1MidOccupied (2),
+ row1NotDetectable (3),
+ row1NotPresent (4),
+ row2LeftOccupied (5),
+ row2RightOccupied (6),
+ row2MidOccupied (7),
+ row2NotDetectable (8),
+ row2NotPresent (9),
+ row3LeftOccupied (10),
+ row3RightOccupied (11),
+ row3MidOccupied (12),
+ row3NotDetectable (13),
+ row3NotPresent (14),
+ row4LeftOccupied (15),
+ row4RightOccupied (16),
+ row4MidOccupied (17),
+ row4NotDetectable (18),
+ row4NotPresent (19)
+} (SIZE(20))
+
+PosFrontAx ::= INTEGER {
+ outOfRange (19),
+ unavailable(20)
+} (1..20)
+
+PosLonCarr ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+PosPillar ::= INTEGER {
+ outOfRange (29),
+ unavailable (30)
+} (1..30)
+
+PostCrashSubCauseCode ::= INTEGER {
+ unavailable (0),
+ accidentWithoutECallTriggered (1),
+ accidentWithECallManuallyTriggered (2),
+ accidentWithECallAutomaticallyTriggered (3),
+ accidentWithECallTriggeredWithoutAccessToCellularNetwork (4)
+} (0..255)
+
+PrecipitationIntensity ::= INTEGER {
+ outOfRange (2000),
+ unavailable (2001)
+} (1..2001)
+
+ProtectedZoneId ::= INTEGER (0.. 134217727)
+
+ProtectedZoneRadius ::= INTEGER (1..255,...)
+
+ProtectedZoneType::= ENUMERATED {
+ permanentCenDsrcTolling (0),
+ ...,
+ temporaryCenDsrcTolling (1)
+}
+
+PtActivationData ::= OCTET STRING (SIZE(1..20))
+
+PtActivationType ::= INTEGER {
+ undefinedCodingType (0),
+ r09-16CodingType (1),
+ vdv-50149CodingType (2)
+} (0..255)
+
+RailwayLevelCrossingSubCauseCode ::= INTEGER {
+ unavailable (0),
+ doNotCrossAbnormalSituation (1),
+ closed (2),
+ unguarded (3),
+ nominal (4)
+} (0..255)
+
+--RelevanceDistance ::= ENUMERATED {
+-- lessThan50m(0),
+-- lessThan100m(1),
+-- lessThan200m(2),
+-- lessThan500m(3),
+-- lessThan1000m(4),
+-- lessThan5km(5),
+-- lessThan10km(6),
+-- over10km(7)
+--}
+
+--RelevanceTrafficDirection ::= ENUMERATED {
+-- allTrafficDirections(0),
+-- upstreamTraffic(1),
+-- downstreamTraffic(2),
+-- oppositeTraffic(3)
+--}
+
+RequestResponseIndication ::= ENUMERATED {
+ request (0),
+ response (1)
+}
+
+RescueAndRecoveryWorkInProgressSubCauseCode ::= INTEGER {
+ unavailable (0),
+ emergencyVehicles (1),
+ rescueHelicopterLanding (2),
+ policeActivityOngoing (3),
+ medicalEmergencyOngoing (4),
+ childAbductionInProgress (5)
+} (0..255)
+
+
+RoadType ::= ENUMERATED {
+ urban-NoStructuralSeparationToOppositeLanes (0),
+ urban-WithStructuralSeparationToOppositeLanes (1),
+ nonUrban-NoStructuralSeparationToOppositeLanes (2),
+ nonUrban-WithStructuralSeparationToOppositeLanes (3)
+}
+
+RoadworksSubCauseCode ::= INTEGER {
+ unavailable (0),
+ majorRoadworks (1),
+ roadMarkingWork (2),
+ slowMovingRoadMaintenance (3),
+ shortTermStationaryRoadworks (4),
+ streetCleaning (5),
+ winterService (6)
+} (0..255)
+
+SafeDistanceIndicator::= BOOLEAN
+
+SemiAxisLength ::= INTEGER{
+ doNotUse (0),
+ outOfRange (4094),
+ unavailable (4095)
+} (0..4095)
+
+SensorType ::= INTEGER {
+ undefined (0),
+ radar (1),
+ lidar (2),
+ monovideo (3),
+ stereovision (4),
+ nightvision (5),
+ ultrasonic (6),
+ pmd (7),
+ inductionLoop (8),
+ sphericalCamera (9),
+ uwb (10),
+ acoustic (11),
+ localAggregation (12),
+ itsAggregation (13)
+} (0..31)
+
+SequenceNumber ::= INTEGER (0..65535)
+
+SignalViolationSubCauseCode ::= INTEGER {
+ unavailable (0),
+ stopSignViolation (1),
+ trafficLightViolation (2),
+ turningRegulationViolation (3)
+} (0..255)
+
+SlowVehicleSubCauseCode ::= INTEGER {
+ unavailable (0),
+ maintenanceVehicle (1),
+ vehiclesSlowingToLookAtAccident (2),
+ abnormalLoad (3),
+ abnormalWideLoad (4),
+ convoy (5),
+ snowplough (6),
+ deicing (7),
+ saltingVehicles (8)
+} (0..255)
+
+SpecialTransportType ::= BIT STRING {
+ heavyLoad (0),
+ excessWidth (1),
+ excessLength (2),
+ excessHeight (3)
+} (SIZE(4))
+
+SpeedConfidence ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+SpeedLimit ::= INTEGER (1..255)
+
+SpeedValue ::= INTEGER {
+ standstill (0),
+ outOfRange (16382),
+ unavailable (16383)
+} (0..16383)
+
+VelocityComponentValue ::= INTEGER {
+ negativeOutOfRange (-16383),
+ positiveOutOfRange (16382),
+ unavailable (16383)
+} (-16383..16383)
+
+
+StabilityLossProbability ::= INTEGER {
+ stable (0),
+ totalLossOfStability (50),
+ unavailable (63)
+} (0..63)
+
+StandardLength12b::= INTEGER (0..4095)
+
+StandardLength3b ::= ENUMERATED {
+ lessThan50m (0),
+ lessThan100m (1),
+ lessThan200m (2),
+ lessThan500m (3),
+ lessThan1000m (4),
+ lessThan5km (5),
+ lessThan10km (6),
+ over10km (7)
+}
+
+StandardLength9b::= INTEGER (0..511)
+
+StandardLength1B::= INTEGER (0..255)
+
+StandardLength2B::= INTEGER (0..65535)
+
+StationarySince ::= ENUMERATED {
+ lessThan1Minute (0),
+ lessThan2Minutes (1),
+ lessThan15Minutes (2),
+ equalOrGreater15Minutes (3)
+}
+
+StationaryVehicleSubCauseCode ::= INTEGER {
+ unavailable (0),
+ humanProblem (1),
+ vehicleBreakdown (2),
+ postCrash (3),
+ publicTransportStop (4),
+ carryingDangerousGoods (5),
+ vehicleOnFire (6)
+} (0..255)
+
+StationId ::= INTEGER(0..4294967295)
+
+StationID ::= INTEGER(0..4294967295)
+
+StationType ::= INTEGER {
+ unknown (0),
+ pedestrian (1),
+ cyclist (2),
+ moped (3),
+ motorcycle (4),
+ passengerCar (5),
+ bus (6),
+ lightTruck (7),
+ heavyTruck (8),
+ trailer (9),
+ specialVehicle (10),
+ tram (11),
+ lightVruVehicle (12),
+ animal (13),
+ roadSideUnit (15)
+} (0..255)
+
+SteeringWheelAngleConfidence ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+SteeringWheelAngleValue ::= INTEGER {
+ negativeOutOfRange (-511),
+ positiveOutOfRange (511),
+ unavailable (512)
+} (-511..512)
+
+SubCauseCodeType ::= INTEGER (0..255)
+
+Temperature ::= INTEGER {
+ equalOrSmallerThanMinus60Deg (-60),
+ equalOrGreaterThan67Deg(67)} (-60..67)
+
+TimestampIts ::= INTEGER (0..4398046511103)
+
+TrafficConditionSubCauseCode ::= INTEGER {
+ unavailable (0),
+ increasedVolumeOfTraffic (1),
+ trafficJamSlowlyIncreasing (2),
+ trafficJamIncreasing (3),
+ trafficJamStronglyIncreasing (4),
+ trafficStationary (5),
+ trafficJamSlightlyDecreasing (6),
+ trafficJamDecreasing (7),
+ trafficJamStronglyDecreasing (8)
+} (0..255)
+
+TrafficDirection ::= ENUMERATED {
+ allTrafficDirections (0),
+ upstreamTraffic (1),
+ downstreamTraffic (2),
+ oppositeTraffic (3)
+}
+
+TrafficParticipantType ::= INTEGER {
+ unknown (0),
+ pedestrian (1),
+ cyclist (2),
+ moped (3),
+ motorcycle (4),
+ passengerCar (5),
+ bus (6),
+ lightTruck (7),
+ heavyTruck (8),
+ trailer (9),
+ specialVehicle (10),
+ tram (11),
+ lightVruVehicle (12),
+ animal (13),
+ agricultural (14),
+ roadSideUnit (15)
+} (0..255)
+
+TrafficRule ::= ENUMERATED {
+ noPassing (0),
+ noPassingForTrucks (1),
+ passToRight (2),
+ passToLeft (3),
+ ...}
+
+TrailerPresenceInformation ::= ENUMERATED {
+ noTrailerPresent (0),
+ trailerPresentWithKnownLength (1),
+ trailerPresentWithUnknownLength (2),
+ trailerPresenceIsUnknown (3),
+ unavailable (4)
+}
+
+TrajectoryInterceptionProbability ::= INTEGER {
+ unavailable (63)
+} (0..63)
+
+TrajectoryInterceptionConfidence ::= INTEGER {
+ lessthan50percent (0),
+ between50and70Percent (1),
+ between70and90Percent (2),
+ above90Percent (3)
+} (0..3)
+
+--TransmissionInterval::= INTEGER (1..10000)
+
+TurningDirection::= ENUMERATED {
+ left,
+ right
+}
+
+TurningRadius ::= INTEGER {
+ outOfRange (254),
+ unavailable (255)
+} (1..255)
+
+--ValidityDuration::= INTEGER {
+-- timeOfDetection(0),
+-- oneSecondAfterDetection(1)
+--} (0..86400)
+
+VDS ::= IA5String (SIZE(6))
+
+VehicleBreakdownSubCauseCode ::= INTEGER {
+ unavailable (0),
+ lackOfFuel (1),
+ lackOfBatteryPower (2),
+ engineProblem (3),
+ transmissionProblem (4),
+ engineCoolingProblem (5),
+ brakingSystemProblem (6),
+ steeringProblem (7),
+ tyrePuncture (8),
+ tyrePressureProblem (9),
+ vehicleOnFire (10)
+} (0..255)
+
+VehicleHeight ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+}(1..128)
+
+VehicleLengthConfidenceIndication ::= ENUMERATED {
+ noTrailerPresent (0),
+ trailerPresentWithKnownLength (1),
+ trailerPresentWithUnknownLength (2),
+ trailerPresenceIsUnknown (3),
+ unavailable (4)
+}
+
+VehicleLengthValue ::= INTEGER {
+ outOfRange(1022),
+ unavailable(1023)
+} (1..1023)
+
+VehicleMass ::= INTEGER {
+ outOfRange (1023),
+ unavailable(1024)
+} (1..1024)
+
+VehicleRole ::= ENUMERATED {
+ default (0),
+ publicTransport (1),
+ specialTransport(2),
+ dangerousGoods (3),
+ roadWork (4),
+ rescue (5),
+ emergency (6),
+ safetyCar (7),
+ agriculture (8),
+ commercial (9),
+ military (10),
+ roadOperator (11),
+ taxi (12),
+ reserved1 (13),
+ reserved2 (14),
+ reserved3 (15)
+}
+
+VehicleWidth ::= INTEGER {
+ outOfRange (61),
+ unavailable (62)
+} (1..62)
+
+VerticalAccelerationValue ::= INTEGER {
+ negativeOutOfRange (-160),
+ positiveOutOfRange (160),
+ unavailable (161)
+} (-160 .. 161)
+
+VruClusterProfiles ::= BIT STRING {
+ pedestrian (0),
+ bicyclist (1),
+ motorcyclist (2),
+ animal (3)
+} (SIZE(4))
+
+VruDeviceUsage ::= ENUMERATED {
+ unavailable (0),
+ other (1),
+ idle (2),
+ listeningToAudio (3),
+ typing (4),
+ calling (5),
+ playingGames (6),
+ reading (7),
+ viewing (8),
+ max (255)
+}
+
+VruEnvironment ::= ENUMERATED {
+ unavailable (0),
+ intersectionCrossing (1),
+ zebraCrossing (2),
+ sidewalk (3),
+ onVehicleRoad (4),
+ protectedGeographicArea (5),
+ max (255)
+}
+
+VruMovementControl ::= ENUMERATED {
+ unavailable (0),
+ braking (1),
+ hardBraking (2),
+ stopPedaling (3),
+ brakingAndStopPedaling (4),
+ hardBrakingAndStopPedaling (5),
+ noReaction (6),
+ max (255)
+}
+
+VruSubProfilePedestrian ::= ENUMERATED {
+ unavailable (0),
+ ordinary-pedestrian (1),
+ road-worker (2),
+ first-responder (3),
+ max (15)
+}
+
+VruSubProfileBicyclist ::= ENUMERATED {
+ unavailable (0),
+ bicyclist (1),
+ wheelchair-user (2),
+ horse-and-rider (3),
+ rollerskater (4),
+ e-scooter (5),
+ personal-transporter (6),
+ pedelec (7),
+ speed-pedelec (8),
+ max (15)
+}
+
+VruSubProfileMotorcyclist ::= ENUMERATED {
+ unavailable (0),
+ moped (1),
+ motorcycle (2),
+ motorcycle-and-sidecar-right (3),
+ motorcycle-and-sidecar-left (4),
+ max (15)
+}
+
+VruSubProfileAnimal ::= ENUMERATED {
+ unavailable (0),
+ wild-animal (1),
+ farm-animal (2),
+ service-animal (3),
+ max (15)
+}
+
+VruSizeClass ::= ENUMERATED {
+ unavailable (0),
+ low (1),
+ medium (2),
+ high (3),
+ max (15)
+}
+
+VruSpecificExteriorLights ::= BIT STRING {
+ unavailable (0),
+ backFlashLight (1),
+ helmetLight (2),
+ armLight (3),
+ legLight (4),
+ wheelLight (5)
+} (SIZE(8))
+
+WheelBaseVehicle ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+Wgs84AngleConfidence ::= INTEGER {
+ outOfRange (126),
+ unavailable (127)
+} (1..127)
+
+
+Wgs84AngleValue ::= INTEGER {
+ wgs84North (0),
+ wgs84East (900),
+ wgs84South (1800),
+ wgs84West (2700),
+ doNotUse (3600),
+ unavailable (3601)
+} (0..3601)
+
+WMInumber ::= IA5String (SIZE(1..3))
+
+WrongWayDrivingSubCauseCode ::= INTEGER {
+ unavailable (0),
+ wrongLane (1),
+ wrongDirection (2)
+} (0..255)
+
+YawRateConfidence ::= ENUMERATED {
+ degSec-000-01 (0),
+ degSec-000-05 (1),
+ degSec-000-10 (2),
+ degSec-001-00 (3),
+ degSec-005-00 (4),
+ degSec-010-00 (5),
+ degSec-100-00 (6),
+ outOfRange (7),
+ unavailable (8)
+}
+
+YawRateValue ::= INTEGER {
+ negativeOutOfRange (-32766),
+ positiveOutOfRange (32766),
+ unavailable (32767)
+} (-32766..32767)
+
+----------------------------------------
+-- Specification of CDD Data Frames:
+----------------------------------------
+
+Acceleration3dWithConfidence::= CHOICE {
+ polarAcceleration AccelerationPolarWithZ,
+ cartesianAcceleration AccelerationCartesian
+}
+
+AccelerationPolarWithZ::= SEQUENCE{
+ accelerationMagnitude AccelerationMagnitude,
+ accelerationDirection CartesianAngle,
+ zAcceleration AccelerationComponent OPTIONAL
+}
+
+AccelerationCartesian::= SEQUENCE{
+ xAcceleration AccelerationComponent,
+ yAcceleration AccelerationComponent,
+ zAcceleration AccelerationComponent OPTIONAL
+}
+
+AccelerationComponent ::= SEQUENCE {
+ value AccelerationValue,
+ confidence AccelerationConfidence
+}
+
+AccelerationChangeIndication ::= SEQUENCE {
+ accelOrDecel AccelerationChange,
+ actionDeltaTime DeltaTimeTenthOfSecond,
+ ...
+}
+
+AccelerationMagnitude::= SEQUENCE {
+ accelerationMagnitudeValue AccelerationMagnitudeValue,
+ accelerationConfidence AccelerationConfidence
+}
+
+ActionId ::= SEQUENCE {
+ originatingStationId StationId,
+ sequenceNumber SequenceNumber
+}
+
+ActionID ::= SEQUENCE {
+ originatingStationId StationID,
+ sequenceNumber SequenceNumber
+}
+
+ActionIdList::= SEQUENCE (SIZE(1..8, ...)) OF ActionId
+
+Altitude ::= SEQUENCE {
+ altitudeValue AltitudeValue,
+ altitudeConfidence AltitudeConfidence
+}
+
+BasicContainer ::= SEQUENCE {
+ stationType TrafficParticipantType,
+ referencePosition ReferencePositionWithConfidence,
+ ...
+}
+
+CartesianAngle ::= SEQUENCE {
+ value CartesianAngleValue,
+ confidence AngleConfidence
+}
+
+CartesianAngularVelocityComponent ::= SEQUENCE {
+ value CartesianAngularVelocityComponentValue,
+ confidence AngularSpeedConfidence
+}
+
+CartesianAngularAccelerationComponent ::= SEQUENCE {
+ value CartesianAngularAccelerationComponentValue,
+ confidence AngularAccelerationConfidence
+}
+
+CartesianCoordinateWithConfidence ::= SEQUENCE {
+ value CartesianCoordinateLarge,
+ confidence CoordinateConfidence
+}
+
+CartesianPosition3d::=SEQUENCE{
+ xCoordinate CartesianCoordinate,
+ yCoordinate CartesianCoordinate,
+ zCoordinate CartesianCoordinate OPTIONAL
+}
+
+CartesianPosition3dWithConfidence::= SEQUENCE{
+ xCoordinate CartesianCoordinateWithConfidence,
+ yCoordinate CartesianCoordinateWithConfidence,
+ zCoordinate CartesianCoordinateWithConfidence OPTIONAL
+}
+
+CauseCode ::= SEQUENCE {
+ causeCode CauseCodeType,
+ subCauseCode SubCauseCodeType,
+ ...
+}
+
+CauseCodeChoice::= CHOICE {
+ reserved0 SubCauseCodeType,
+ trafficCondition1 TrafficConditionSubCauseCode,
+ accident2 AccidentSubCauseCode,
+ roadworks3 RoadworksSubCauseCode,
+ reserved4 SubCauseCodeType,
+ impassability5 SubCauseCodeType,
+ adverseWeatherCondition-Adhesion6 AdverseWeatherCondition-AdhesionSubCauseCode,
+ aquaplaning7 SubCauseCodeType,
+ reserved8 SubCauseCodeType,
+ hazardousLocation-SurfaceCondition9 HazardousLocation-SurfaceConditionSubCauseCode,
+ hazardousLocation-ObstacleOnTheRoad10 HazardousLocation-ObstacleOnTheRoadSubCauseCode,
+ hazardousLocation-AnimalOnTheRoad11 HazardousLocation-AnimalOnTheRoadSubCauseCode,
+ humanPresenceOnTheRoad12 HumanPresenceOnTheRoadSubCauseCode,
+ reserved13 SubCauseCodeType,
+ wrongWayDriving14 WrongWayDrivingSubCauseCode,
+ rescueAndRecoveryWorkInProgress15 RescueAndRecoveryWorkInProgressSubCauseCode,
+ reserved16 SubCauseCodeType,
+ adverseWeatherCondition-ExtremeWeatherCondition17 AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode,
+ adverseWeatherCondition-Visibility18 AdverseWeatherCondition-VisibilitySubCauseCode,
+ adverseWeatherCondition-Precipitation19 AdverseWeatherCondition-PrecipitationSubCauseCode,
+ violence20 SubCauseCodeType,
+ reserved21 SubCauseCodeType,
+ reserved22 SubCauseCodeType,
+ reserved23 SubCauseCodeType,
+ reserved24 SubCauseCodeType,
+ reserved25 SubCauseCodeType,
+ slowVehicle26 SlowVehicleSubCauseCode,
+ dangerousEndOfQueue27 DangerousEndOfQueueSubCauseCode,
+ reserved28 SubCauseCodeType,
+ reserved29 SubCauseCodeType,
+ reserved30 SubCauseCodeType,
+ reserved31 SubCauseCodeType,
+ reserved32 SubCauseCodeType,
+ reserved33 SubCauseCodeType,
+ reserved34 SubCauseCodeType,
+ reserved35 SubCauseCodeType,
+ reserved36 SubCauseCodeType,
+ reserved37 SubCauseCodeType,
+ reserved38 SubCauseCodeType,
+ reserved39 SubCauseCodeType,
+ reserved40 SubCauseCodeType,
+ reserved41 SubCauseCodeType,
+ reserved42 SubCauseCodeType,
+ reserved43 SubCauseCodeType,
+ reserved44 SubCauseCodeType,
+ reserved45 SubCauseCodeType,
+ reserved46 SubCauseCodeType,
+ reserved47 SubCauseCodeType,
+ reserved48 SubCauseCodeType,
+ reserved49 SubCauseCodeType,
+ reserved50 SubCauseCodeType,
+ reserved51 SubCauseCodeType,
+ reserved52 SubCauseCodeType,
+ reserved53 SubCauseCodeType,
+ reserved54 SubCauseCodeType,
+ reserved55 SubCauseCodeType,
+ reserved56 SubCauseCodeType,
+ reserved57 SubCauseCodeType,
+ reserved58 SubCauseCodeType,
+ reserved59 SubCauseCodeType,
+ reserved60 SubCauseCodeType,
+ reserved61 SubCauseCodeType,
+ reserved62 SubCauseCodeType,
+ reserved63 SubCauseCodeType,
+ reserved64 SubCauseCodeType,
+ reserved65 SubCauseCodeType,
+ reserved66 SubCauseCodeType,
+ reserved67 SubCauseCodeType,
+ reserved68 SubCauseCodeType,
+ reserved69 SubCauseCodeType,
+ reserved70 SubCauseCodeType,
+ reserved71 SubCauseCodeType,
+ reserved72 SubCauseCodeType,
+ reserved73 SubCauseCodeType,
+ reserved74 SubCauseCodeType,
+ reserved75 SubCauseCodeType,
+ reserved76 SubCauseCodeType,
+ reserved77 SubCauseCodeType,
+ reserved78 SubCauseCodeType,
+ reserved79 SubCauseCodeType,
+ reserved80 SubCauseCodeType,
+ reserved81 SubCauseCodeType,
+ reserved82 SubCauseCodeType,
+ reserved83 SubCauseCodeType,
+ reserved84 SubCauseCodeType,
+ reserved85 SubCauseCodeType,
+ reserved86 SubCauseCodeType,
+ reserved87 SubCauseCodeType,
+ reserved88 SubCauseCodeType,
+ reserved89 SubCauseCodeType,
+ reserved90 SubCauseCodeType,
+ vehicleBreakdown91 VehicleBreakdownSubCauseCode,
+ postCrash92 PostCrashSubCauseCode,
+ humanProblem93 HumanProblemSubCauseCode,
+ stationaryVehicle94 StationaryVehicleSubCauseCode,
+ emergencyVehicleApproaching95 EmergencyVehicleApproachingSubCauseCode,
+ hazardousLocation-DangerousCurve96 HazardousLocation-DangerousCurveSubCauseCode,
+ collisionRisk97 CollisionRiskSubCauseCode,
+ signalViolation98 SignalViolationSubCauseCode,
+ dangerousSituation99 DangerousSituationSubCauseCode,
+ railwayLevelCrossing100 RailwayLevelCrossingSubCauseCode,
+ reserved101 SubCauseCodeType,
+ reserved102 SubCauseCodeType,
+ reserved103 SubCauseCodeType,
+ reserved104 SubCauseCodeType,
+ reserved105 SubCauseCodeType,
+ reserved106 SubCauseCodeType,
+ reserved107 SubCauseCodeType,
+ reserved108 SubCauseCodeType,
+ reserved109 SubCauseCodeType,
+ reserved110 SubCauseCodeType,
+ reserved111 SubCauseCodeType,
+ reserved112 SubCauseCodeType,
+ reserved113 SubCauseCodeType,
+ reserved114 SubCauseCodeType,
+ reserved115 SubCauseCodeType,
+ reserved116 SubCauseCodeType,
+ reserved117 SubCauseCodeType,
+ reserved118 SubCauseCodeType,
+ reserved119 SubCauseCodeType,
+ reserved120 SubCauseCodeType,
+ reserved121 SubCauseCodeType,
+ reserved122 SubCauseCodeType,
+ reserved123 SubCauseCodeType,
+ reserved124 SubCauseCodeType,
+ reserved125 SubCauseCodeType,
+ reserved126 SubCauseCodeType,
+ reserved127 SubCauseCodeType,
+ reserved128 SubCauseCodeType
+ }
+
+CauseCodeV2 ::= SEQUENCE {
+ ccAndScc CauseCodeChoice,
+ ...
+}
+
+CenDsrcTollingZone ::= SEQUENCE {
+ protectedZoneLatitude Latitude,
+ protectedZoneLongitude Longitude,
+ cenDsrcTollingZoneId ProtectedZoneId OPTIONAL,
+ ...
+}
+
+CircularShape ::= SEQUENCE {
+ shapeReferencePoint CartesianPosition3d OPTIONAL,
+ radius StandardLength12b,
+ height StandardLength12b OPTIONAL
+}
+
+ClosedLanes ::= SEQUENCE {
+ innerhardShoulderStatus HardShoulderStatus OPTIONAL,
+ outerhardShoulderStatus HardShoulderStatus OPTIONAL,
+ drivingLaneStatus DrivingLaneStatus OPTIONAL,
+ ...
+}
+
+ClusterBreakupInfo ::= SEQUENCE {
+ clusterBreakupReason ClusterBreakupReason,
+ breakupTime DeltaTimeQuarterSecond,
+ ...
+}
+
+ClusterJoinInfo ::= SEQUENCE {
+ clusterId Identifier1B,
+ joinTime DeltaTimeQuarterSecond,
+ ...
+}
+
+ClusterLeaveInfo ::= SEQUENCE {
+ clusterId Identifier1B,
+ clusterLeaveReason ClusterLeaveReason,
+ ...
+}
+
+CorrelationColumn ::= SEQUENCE SIZE (1..13,...) OF CorrelationCellValue
+
+Curvature ::= SEQUENCE {
+ curvatureValue CurvatureValue,
+ curvatureConfidence CurvatureConfidence
+}
+
+DangerousGoodsExtended ::= SEQUENCE {
+ dangerousGoodsType DangerousGoodsBasic,
+ unNumber INTEGER (0..9999),
+ elevatedTemperature BOOLEAN,
+ tunnelsRestricted BOOLEAN,
+ limitedQuantity BOOLEAN,
+ emergencyActionCode IA5String (SIZE (1..24)) OPTIONAL,
+ phoneNumber PhoneNumber OPTIONAL,
+ companyName UTF8String (SIZE (1..24)) OPTIONAL,
+ ...
+}
+
+DeltaReferencePosition ::= SEQUENCE {
+ deltaLatitude DeltaLatitude,
+ deltaLongitude DeltaLongitude,
+ deltaAltitude DeltaAltitude
+}
+
+DigitalMap ::= SEQUENCE (SIZE(1..256)) OF ReferencePosition
+
+EllipticalShape ::= SEQUENCE {
+ shapeReferencePoint CartesianPosition3d OPTIONAL,
+ semiMajorAxisLength StandardLength12b,
+ semiMinorAxisLength StandardLength12b,
+ orientation Wgs84AngleValue OPTIONAL,
+ height StandardLength12b OPTIONAL
+}
+
+EulerAnglesWithConfidence ::= SEQUENCE {
+ zAngle CartesianAngle,
+ yAngle CartesianAngle OPTIONAL,
+ xAngle CartesianAngle OPTIONAL
+}
+
+EuVehicleCategoryCode ::= CHOICE {
+ euVehicleCategoryL EuVehicleCategoryL,
+ euVehicleCategoryM EuVehicleCategoryM,
+ euVehicleCategoryN EuVehicleCategoryN,
+ euVehicleCategoryO EuVehicleCategoryO,
+ euVehicleCategoryT NULL,
+ euVehicleCategoryG NULL
+ }
+
+EventHistory::= SEQUENCE (SIZE(1..23)) OF EventPoint
+
+EventPoint ::= SEQUENCE {
+ eventPosition DeltaReferencePosition,
+ eventDeltaTime PathDeltaTime OPTIONAL,
+ informationQuality InformationQuality
+}
+
+EventZone::= EventHistory
+ ((WITH COMPONENT (WITH COMPONENTS {..., eventDeltaTime PRESENT})) |
+ (WITH COMPONENT (WITH COMPONENTS {..., eventDeltaTime ABSENT})))
+
+GeneralizedLanePosition::= CHOICE {
+ trafficLanePosition LanePosition,
+ nonTrafficLanePosition LanePositionAndType,
+ trafficIslandPosition TrafficIslandPosition,
+ mapPosition MapPosition,
+ ...
+}
+
+Heading ::= SEQUENCE {
+ headingValue HeadingValue,
+ headingConfidence HeadingConfidence
+}
+
+
+HeadingChangeIndication ::= SEQUENCE {
+ direction TurningDirection,
+ actionDeltaTime DeltaTimeTenthOfSecond,
+ ...
+}
+
+InterferenceManagementChannel ::= SEQUENCE {
+ centreFrequency INTEGER (1 .. 99999),
+ channelWidth INTEGER (0 .. 9999),
+ exponent INTEGER (0 .. 15)
+}
+
+InterferenceManagementZone ::= SEQUENCE {
+ zoneDefinition InterferenceManagementZoneDefinition,
+ managementInfo InterferenceManagementInfo
+}
+
+InterferenceManagementZoneDefinition::= SEQUENCE{
+ interferenceManagementZoneLatitude Latitude,
+ interferenceManagementZoneLongitude Longitude,
+ interferenceManagementZoneId ProtectedZoneId OPTIONAL,
+ interferenceManagementZoneShape Shape (WITH COMPONENTS{..., radial ABSENT, radialShapes ABSENT}) OPTIONAL,
+ ...
+}
+
+InterferenceManagementInfo::= SEQUENCE (SIZE(1..16,...)) OF InterferenceManagementInfoPerChannel
+
+
+InterferenceManagementInfoPerChannel ::= SEQUENCE {
+ interferenceManagementChannel InterferenceManagementChannel,
+ interferenceManagementZoneType InterferenceManagementZoneType,
+ interferenceManagementMitigationType MitigationForTechnologies OPTIONAL,
+ expiryTime TimestampIts OPTIONAL,
+ ...
+}
+
+InterferenceManagementZones ::= SEQUENCE (SIZE(1..16), ...) OF InterferenceManagementZone
+
+IntersectionReferenceId ::= SEQUENCE {
+ region Identifier2B OPTIONAL,
+ id Identifier2B
+}
+
+ItineraryPath ::= SEQUENCE SIZE(1..40) OF ReferencePosition
+
+ProtocolVersion ::= INTEGER(0..255)
+
+ItsPduHeader ::= SEQUENCE {
+-- protocolVersion OrdinalNumber1B,
+ protocolVersion ProtocolVersion,
+ messageId MessageId,
+ stationId StationId
+}
+
+LanePositionAndType::= SEQUENCE {
+ transversalPosition LanePosition,
+ laneType LaneType,
+ ...
+}
+
+LateralAcceleration ::= SEQUENCE {
+ lateralAccelerationValue LateralAccelerationValue,
+ lateralAccelerationConfidence AccelerationConfidence
+}
+
+LongitudinalAcceleration ::= SEQUENCE {
+ longitudinalAccelerationValue LongitudinalAccelerationValue,
+ longitudinalAccelerationConfidence AccelerationConfidence
+}
+
+LongitudinalLanePosition ::= SEQUENCE {
+ longitudinalLanePositionValue LongitudinalLanePositionValue,
+ longitudinalLanePositionConfidence LongitudinalLanePositionConfidence
+}
+
+LowerTriangularPositiveSemidefiniteMatrices::= SEQUENCE SIZE (1..4) OF LowerTriangularPositiveSemidefiniteMatrix
+
+LowerTriangularPositiveSemidefiniteMatrix ::= SEQUENCE{
+ componentsIncludedIntheMatrix MatrixIncludedComponents,
+ matrix LowerTriangularPositiveSemidefiniteMatrixColumns
+}
+
+LowerTriangularPositiveSemidefiniteMatrixColumns ::= SEQUENCE SIZE (1..13) OF CorrelationColumn
+
+MapPosition ::= SEQUENCE {
+ mapReference MapReference OPTIONAL,
+ laneId Identifier1B OPTIONAL,
+ connectionId Identifier1B OPTIONAL,
+ longitudinalLanePosition LongitudinalLanePosition OPTIONAL,
+ ...
+}
+ ((WITH COMPONENTS {..., laneId PRESENT, connectionId ABSENT }) |
+ (WITH COMPONENTS {..., laneId ABSENT, connectionId PRESENT }))
+
+MapReference::= CHOICE {
+ roadsegment RoadSegmentReferenceId,
+ intersection IntersectionReferenceId
+ }
+
+MessageRateHz::= SEQUENCE {
+ mantissa INTEGER (1..100),
+ exponent INTEGER (-5..2)
+ }
+
+MessageSegmentationInfo ::= SEQUENCE {
+ totalMsgNo CardinalNumber3b,
+ thisMsgNo OrdinalNumber3b
+ }
+
+MitigationForTechnologies ::= SEQUENCE (SIZE(1..8)) OF MitigationPerTechnologyClass
+
+MitigationPerTechnologyClass ::= SEQUENCE {
+ accessTechnologyClass AccessTechnologyClass,
+ lowDutyCycle INTEGER (0 .. 10000) OPTIONAL,
+ powerReduction INTEGER (0 .. 30) OPTIONAL,
+ dmcToffLimit INTEGER (0 .. 1200) OPTIONAL,
+ dmcTonLimit INTEGER (0 .. 20) OPTIONAL,
+ ...
+}
+
+ObjectClass ::= CHOICE {
+ vehicleSubClass TrafficParticipantType (unknown|passengerCar..tram|agricultural),
+ vruSubClass VruProfileAndSubprofile,
+ groupSubClass VruClusterInformation (WITH COMPONENTS{..., clusterBoundingBoxShape ABSENT}),
+ otherSubClass OtherSubClass,
+ ...
+}
+
+ObjectClassDescription ::= SEQUENCE (SIZE(1..8)) OF ObjectClassWithConfidence
+
+ObjectClassWithConfidence ::= SEQUENCE {
+ objectClass ObjectClass,
+ confidence ConfidenceLevel
+}
+
+ObjectDimension ::= SEQUENCE {
+ value ObjectDimensionValue,
+ confidence ObjectDimensionConfidence
+}
+
+Path::= SEQUENCE (SIZE(0..40)) OF PathPoint
+
+PathHistory::= SEQUENCE (SIZE(40)) OF PathPoint
+
+--PathHistoryV2::= SEQUENCE (SIZE(0..40)) OF PathPoint
+
+PathPredicted::= SEQUENCE (SIZE(0..15,...)) OF PathPointPredicted
+
+PathPoint ::= SEQUENCE {
+ pathPosition DeltaReferencePosition,
+ pathDeltaTime PathDeltaTime OPTIONAL
+}
+
+PathPointPredicted::= SEQUENCE {
+ deltaLatitude DeltaLatitude,
+ deltaLongitude DeltaLongitude,
+ horizontalPositionConfidence PosConfidenceEllipse OPTIONAL,
+ deltaAltitude DeltaAltitude DEFAULT unavailable,
+ altitudeConfidence AltitudeConfidence DEFAULT unavailable,
+ pathDeltaTime DeltaTimeTenthOfSecond,
+ ...
+}
+
+PerceivedObject ::= SEQUENCE {
+ objectId Identifier2B OPTIONAL,
+ measurementDeltaTime DeltaTimeMilliSecondSigned,
+ position CartesianPosition3dWithConfidence,
+ velocity Velocity3dWithConfidence OPTIONAL,
+ acceleration Acceleration3dWithConfidence OPTIONAL,
+ angles EulerAnglesWithConfidence OPTIONAL,
+ zAngularVelocity CartesianAngularVelocityComponent OPTIONAL,
+ lowerTriangularCorrelationMatrices LowerTriangularPositiveSemidefiniteMatrices OPTIONAL,
+ objectDimensionZ ObjectDimension OPTIONAL,
+ objectDimensionY ObjectDimension OPTIONAL,
+ objectDimensionX ObjectDimension OPTIONAL,
+ objectAge DeltaTimeMilliSecondSigned (0..2047) OPTIONAL,
+ objectPerceptionQuality ObjectPerceptionQuality OPTIONAL,
+ sensorIdList SequenceOfIdentifier1B OPTIONAL,
+ classification ObjectClassDescription OPTIONAL,
+ mapPosition MapPosition OPTIONAL,
+ ...
+}
+
+PolygonalShape ::= SEQUENCE {
+ shapeReferencePoint CartesianPosition3d OPTIONAL,
+ polygon SequenceOfCartesianPosition3d (SIZE(3..16,...)),
+ height StandardLength12b OPTIONAL
+}
+
+PosConfidenceEllipse ::= SEQUENCE {
+ semiMajorConfidence SemiAxisLength,
+ semiMinorConfidence SemiAxisLength,
+ semiMajorOrientation HeadingValue
+}
+
+PositionConfidenceEllipse ::= SEQUENCE {
+ semiMajorAxisLength SemiAxisLength,
+ semiMinorAxisLength SemiAxisLength,
+ semiMajorAxisOrientation Wgs84AngleValue
+}
+
+PositionOfPillars ::= SEQUENCE (SIZE(1..3, ...)) OF PosPillar
+
+ProtectedCommunicationZone ::= SEQUENCE {
+ protectedZoneType ProtectedZoneType,
+ expiryTime TimestampIts OPTIONAL,
+ protectedZoneLatitude Latitude,
+ protectedZoneLongitude Longitude,
+ protectedZoneRadius ProtectedZoneRadius OPTIONAL,
+ protectedZoneId ProtectedZoneId OPTIONAL,
+ ...
+}
+
+ProtectedCommunicationZonesRSU ::= SEQUENCE (SIZE(1..16)) OF ProtectedCommunicationZone
+
+PtActivation ::= SEQUENCE {
+ ptActivationType PtActivationType,
+ ptActivationData PtActivationData
+}
+
+RadialShape ::= SEQUENCE {
+ shapeReferencePoint CartesianPosition3d OPTIONAL,
+ range StandardLength12b,
+ stationaryHorizontalOpeningAngleStart Wgs84AngleValue,
+ stationaryHorizontalOpeningAngleEnd Wgs84AngleValue,
+ verticalOpeningAngleStart CartesianAngleValue OPTIONAL,
+ verticalOpeningAngleEnd CartesianAngleValue OPTIONAL
+}
+
+
+RadialShapes ::= SEQUENCE {
+ refPointId Identifier1B,
+ xCoordinate CartesianCoordinateSmall,
+ yCoordinate CartesianCoordinateSmall,
+ zCoordinate CartesianCoordinateSmall OPTIONAL,
+ radialShapesList RadialShapesList
+}
+
+RadialShapesList ::= SEQUENCE SIZE(1..16,...) OF RadialShapeDetails
+
+RadialShapeDetails ::= SEQUENCE {
+ range StandardLength12b,
+ horizontalOpeningAngleStart CartesianAngleValue,
+ horizontalOpeningAngleEnd CartesianAngleValue,
+ verticalOpeningAngleStart CartesianAngleValue OPTIONAL,
+ verticalOpeningAngleEnd CartesianAngleValue OPTIONAL
+}
+
+RectangularShape ::= SEQUENCE {
+ centerPoint CartesianPosition3d OPTIONAL,
+ semiLength StandardLength12b,
+ semiBreadth StandardLength12b,
+ orientation Wgs84AngleValue OPTIONAL,
+ height StandardLength12b OPTIONAL
+}
+
+ReferencePosition ::= SEQUENCE {
+ latitude Latitude,
+ longitude Longitude,
+ positionConfidenceEllipse PosConfidenceEllipse,
+ altitude Altitude
+}
+
+ReferencePositionWithConfidence ::= SEQUENCE {
+ latitude Latitude,
+ longitude Longitude,
+ positionConfidenceEllipse PositionConfidenceEllipse,
+ altitude Altitude
+}
+
+RestrictedTypes ::= SEQUENCE (SIZE(1..3, ...)) OF StationType
+
+RoadSegmentReferenceId ::= SEQUENCE {
+ region Identifier2B OPTIONAL,
+ id Identifier2B
+}
+
+SafeDistanceIndication ::= SEQUENCE {
+ subjectStation StationId OPTIONAL,
+ safeDistanceIndicator SafeDistanceIndicator,
+ timeToCollision DeltaTimeTenthOfSecond OPTIONAL,
+ ...
+}
+
+SequenceOfCartesianPosition3d ::= SEQUENCE (SIZE(1..16, ...)) OF CartesianPosition3d
+
+SequenceOfIdentifier1B ::= SEQUENCE SIZE(1..128, ...) OF Identifier1B
+
+SequenceOfSafeDistanceIndication ::= SEQUENCE(SIZE(1..8,...)) OF SafeDistanceIndication
+
+SequenceOfTrajectoryInterceptionIndication ::= SEQUENCE (SIZE(1..8,...)) OF TrajectoryInterceptionIndication
+
+Shape::= CHOICE {
+ rectangular RectangularShape,
+ circular CircularShape,
+ polygonal PolygonalShape,
+ elliptical EllipticalShape,
+ radial RadialShape,
+ radialShapes RadialShapes,
+ ...
+}
+
+Speed ::= SEQUENCE {
+ speedValue SpeedValue,
+ speedConfidence SpeedConfidence
+}
+
+StabilityChangeIndication ::= SEQUENCE {
+ lossProbability StabilityLossProbability,
+ actionDeltaTime DeltaTimeTenthOfSecond,
+ ...
+}
+
+SteeringWheelAngle ::= SEQUENCE {
+ steeringWheelAngleValue SteeringWheelAngleValue,
+ steeringWheelAngleConfidence SteeringWheelAngleConfidence
+}
+
+Traces ::= SEQUENCE SIZE(1..7) OF Path
+
+TrafficIslandPosition ::= SEQUENCE {
+ oneSide LanePositionAndType,
+ otherSide LanePositionAndType,
+ ...
+}
+
+TrailerData ::= SEQUENCE {
+ refPointId Identifier1B,
+ hitchPointOffset StandardLength1B,
+ frontOverhang StandardLength1B OPTIONAL,
+ rearOverhang StandardLength1B OPTIONAL,
+ trailerWidth VehicleWidth OPTIONAL,
+ hitchAngle CartesianAngle,
+ ...
+}
+
+TrajectoryInterceptionIndication ::= SEQUENCE {
+ subjectStation StationId OPTIONAL,
+ trajectoryInterceptionProbability TrajectoryInterceptionProbability,
+ trajectoryInterceptionConfidence TrajectoryInterceptionConfidence OPTIONAL,
+ ...
+}
+
+VarLengthNumber::=CHOICE{
+ content [0] INTEGER(0..127), -- one octet length
+ extension [1] Ext1
+ }
+Ext1::=CHOICE{
+ content [0] INTEGER(128..16511), -- two octets length
+ extension [1] Ext2
+}
+Ext2::=CHOICE{
+ content [0] INTEGER(16512..2113663), -- three octets length
+ extension [1] Ext3
+ }
+Ext3::= INTEGER(2113664..270549119,...) -- four and more octets length
+
+VerticalAcceleration ::= SEQUENCE {
+ verticalAccelerationValue VerticalAccelerationValue,
+ verticalAccelerationConfidence AccelerationConfidence
+}
+
+VehicleIdentification ::= SEQUENCE {
+ wMInumber WMInumber OPTIONAL,
+ vDS VDS OPTIONAL,
+ ...
+}
+
+VehicleLength ::= SEQUENCE {
+ vehicleLengthValue VehicleLengthValue,
+ vehicleLengthConfidenceIndication VehicleLengthConfidenceIndication
+}
+
+VehicleLengthV2 ::= SEQUENCE {
+ vehicleLengthValue VehicleLengthValue,
+ trailerPresenceInformation TrailerPresenceInformation
+}
+
+Velocity3dWithConfidence::= CHOICE{
+ polarVelocity VelocityPolarWithZ,
+ cartesianVelocity VelocityCartesian
+}
+
+VelocityCartesian::= SEQUENCE {
+ xVelocity VelocityComponent,
+ yVelocity VelocityComponent,
+ zVelocity VelocityComponent OPTIONAL
+}
+
+VelocityComponent ::= SEQUENCE {
+ value VelocityComponentValue,
+ confidence SpeedConfidence
+}
+
+VelocityPolarWithZ::= SEQUENCE {
+ velocityMagnitude Speed,
+ velocityDirection CartesianAngle,
+ zVelocity VelocityComponent OPTIONAL
+}
+
+VruClusterInformation ::= SEQUENCE {
+ clusterId Identifier1B OPTIONAL,
+ clusterBoundingBoxShape Shape (WITH COMPONENTS{..., elliptical ABSENT, radial ABSENT, radialShapes ABSENT}) OPTIONAL,
+ clusterCardinalitySize CardinalNumber1B,
+ clusterProfiles VruClusterProfiles OPTIONAL,
+ ...
+}
+
+VruExteriorLights ::= SEQUENCE {
+ vehicular ExteriorLights,
+ vruSpecific VruSpecificExteriorLights,
+ ...
+}
+
+VruProfileAndSubprofile ::= CHOICE {
+ pedestrian VruSubProfilePedestrian,
+ bicyclistAndLightVruVehicle VruSubProfileBicyclist,
+ motorcyclist VruSubProfileMotorcyclist,
+ animal VruSubProfileAnimal,
+ ...
+}
+
+Wgs84Angle ::= SEQUENCE {
+ value Wgs84AngleValue,
+ confidence Wgs84AngleConfidence
+}
+
+
+YawRate::= SEQUENCE {
+ yawRateValue YawRateValue,
+ yawRateConfidence YawRateConfidence
+}
+
+------------------------------------------
+END
+
diff --git a/epan/dissectors/asn1/its/ETSI_TS_103301.asn b/epan/dissectors/asn1/its/ETSI_TS_103301.asn
index 61ebcd1652..3e4bba066f 100644
--- a/epan/dissectors/asn1/its/ETSI_TS_103301.asn
+++ b/epan/dissectors/asn1/its/ETSI_TS_103301.asn
@@ -1,179 +1,179 @@
--- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- ETSI TS 103 301
---
--- This ASN.1 was generated: 30.08.2016
---
--- This document contains the data element needed for the encoding the SPATEM, MAPEM, IVIM, SSEM and SREM message
--- as defined in ETSI TS 103 301
---
--- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-
-
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
---
--- module: SPAT-MESSAGE-PDU-Descriptions
---
--- This ASN.1 was created: 30.08.2016
---
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
-SPATEM-PDU-Descriptions {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) spatem (0) version2 (2)
-}
- DEFINITIONS AUTOMATIC TAGS ::=
-
- BEGIN
-
- IMPORTS
- SPAT FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2
- (2) }
-
- ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
- (1) ts (102894) cdd (2) version (2) };
-
- SPATEM ::= SEQUENCE {
- header ItsPduHeader,
- spat SPAT
- }
-END
-
-
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
---
--- module: MAP-MESSAGE-PDU-Descriptions
---
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
-MAPEM-PDU-Descriptions {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) mapem (1) version2 (2)
-}
- DEFINITIONS AUTOMATIC TAGS ::=
-
- BEGIN
-
- IMPORTS
-
- MapData
- FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2) }
-
- ItsPduHeader
- FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)};
-
- MAPEM ::= SEQUENCE {
- header ItsPduHeader,
- map MapData
- }
-
-END
-
-
-
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
---
--- module: IVI-MESSAGE-PDU-Descriptions
---
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
-IVIM-PDU-Descriptions {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) ivim (2)
-version2 (2)
-}
- DEFINITIONS AUTOMATIC TAGS ::=
-
- BEGIN
-
- IMPORTS
-
- IviStructure FROM IVI {iso (1) standard (0) ivi (19321) version1 (1)}
-
- ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
- (1) ts (102894) cdd (2) version (2)};
-
- IVIM ::= SEQUENCE {
- header ItsPduHeader,
- ivi IviStructure
- }
-
-END
-
-
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
---
--- module: SRM-MESSAGE-PDU-Descriptions
---
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
-SREM-PDU-Descriptions {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) srem (3)
-version2 (2)
-}
- DEFINITIONS AUTOMATIC TAGS ::=
-
- BEGIN
-
- IMPORTS
-
- SignalRequestMessage FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2)
- dsrc (2) version2 (2) }
-
- ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
- (1) ts (102894) cdd (2) version (2)};
-
- SREM ::= SEQUENCE {
- header ItsPduHeader,
- srm SignalRequestMessage
- }
- END
-
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
---
--- module: SSM-MESSAGE-PDU-Descriptions
---
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
-SSEM-PDU-Descriptions {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) ssem (4)
-version2 (2)
-}
- DEFINITIONS AUTOMATIC TAGS ::=
-
- BEGIN
-
- IMPORTS
-
- SignalStatusMessage FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc
- (2) version2 (2) }
-
- ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
- (1) ts (102894) cdd (2) version (2)};
-
- SSEM ::= SEQUENCE {
- header ItsPduHeader,
- ssm SignalStatusMessage
- }
-
-END
-
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
---
--- module: RTCM corrections extended message
---
--- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
-RTCMEM-PDU-Descriptions {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) rtcmem (5)
-version1 (1)
-}
- DEFINITIONS AUTOMATIC TAGS ::=
-
- BEGIN
-
- IMPORTS
-
- RTCMcorrections FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2)
- version2 (2) }
-
- ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
- (1) ts (102894) cdd (2) version (2)};
-
- RTCMEM ::= SEQUENCE {
- header ItsPduHeader,
- rtcmc RTCMcorrections
- }
-
-END
+-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-- ETSI TS 103 301
+--
+-- This ASN.1 was generated: 30.08.2016
+--
+-- This document contains the data element needed for the encoding the SPATEM, MAPEM, IVIM, SSEM and SREM message
+-- as defined in ETSI TS 103 301
+--
+-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+--
+-- module: SPAT-MESSAGE-PDU-Descriptions
+--
+-- This ASN.1 was created: 30.08.2016
+--
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+SPATEM-PDU-Descriptions {
+ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) spatem (0) version2 (2)
+}
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+ SPAT FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2
+ (2) }
+
+ ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
+ (1) ts (102894) cdd (2) version (2) };
+
+ SPATEM ::= SEQUENCE {
+ header ItsPduHeader,
+ spat SPAT
+ }
+END
+
+
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+--
+-- module: MAP-MESSAGE-PDU-Descriptions
+--
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+MAPEM-PDU-Descriptions {
+ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) mapem (1) version2 (2)
+}
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+
+ MapData
+ FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2) }
+
+ ItsPduHeader
+ FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)};
+
+ MAPEM ::= SEQUENCE {
+ header ItsPduHeader,
+ map MapData
+ }
+
+END
+
+
+
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+--
+-- module: IVI-MESSAGE-PDU-Descriptions
+--
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+IVIM-PDU-Descriptions {
+ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) ivim (2)
+version2 (2)
+}
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+
+ IviStructure FROM IVI {iso (1) standard (0) ivi (19321) version1 (1)}
+
+ ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
+ (1) ts (102894) cdd (2) version (2)};
+
+ IVIM ::= SEQUENCE {
+ header ItsPduHeader,
+ ivi IviStructure
+ }
+
+END
+
+
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+--
+-- module: SRM-MESSAGE-PDU-Descriptions
+--
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+SREM-PDU-Descriptions {
+ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) srem (3)
+version2 (2)
+}
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+
+ SignalRequestMessage FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2)
+ dsrc (2) version2 (2) }
+
+ ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
+ (1) ts (102894) cdd (2) version (2)};
+
+ SREM ::= SEQUENCE {
+ header ItsPduHeader,
+ srm SignalRequestMessage
+ }
+END
+
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+--
+-- module: SSM-MESSAGE-PDU-Descriptions
+--
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+SSEM-PDU-Descriptions {
+ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) ssem (4)
+version2 (2)
+}
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+
+ SignalStatusMessage FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc
+ (2) version2 (2) }
+
+ ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
+ (1) ts (102894) cdd (2) version (2)};
+
+ SSEM ::= SEQUENCE {
+ header ItsPduHeader,
+ ssm SignalStatusMessage
+ }
+
+END
+
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+--
+-- module: RTCM corrections extended message
+--
+-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
+RTCMEM-PDU-Descriptions {
+ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (103301) rtcmem (5)
+version1 (1)
+}
+ DEFINITIONS AUTOMATIC TAGS ::=
+
+ BEGIN
+
+ IMPORTS
+
+ RTCMcorrections FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2)
+ version2 (2) }
+
+ ItsPduHeader FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1
+ (1) ts (102894) cdd (2) version (2)};
+
+ RTCMEM ::= SEQUENCE {
+ header ItsPduHeader,
+ rtcmc RTCMcorrections
+ }
+
+END
diff --git a/epan/dissectors/asn1/its/EVCSN-PDU-Descriptions.asn b/epan/dissectors/asn1/its/EVCSN-PDU-Descriptions.asn
index ca67e9fa96..b95dfd085d 100644
--- a/epan/dissectors/asn1/its/EVCSN-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/its/EVCSN-PDU-Descriptions.asn
@@ -18,9 +18,8 @@ IMPORTS
TimestampIts, -- CORRECTION
DigitalMap, -- PATCH
ReferencePosition
-FROM ITS-Container {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)
-};
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+;
-- Root Message PDU: EvcsnPdu
diff --git a/epan/dissectors/asn1/its/IMZM-PDU-Descriptions.asn b/epan/dissectors/asn1/its/IMZM-PDU-Descriptions.asn
new file mode 100644
index 0000000000..72a4092f2a
--- /dev/null
+++ b/epan/dissectors/asn1/its/IMZM-PDU-Descriptions.asn
@@ -0,0 +1,264 @@
+--! @brief Specification of the Interference Management Zone Message ETSI TS 103 724
+--! Latest version available at @url https:
+--https ://forge.etsi.org/rep/ITS/asn1/imzm_ts103724/-/blob/release2/IMZM-PDU-Descriptions.asn
+
+IMZM-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts103724 (103724) imzm (1) version1 (1)
+}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+--! @brief Include ETSI TS 102 894-2
+--! Include references from @url https:
+ItsPduHeader, Latitude, Longitude, TimestampIts, ProtectedZoneRadius, ProtectedZoneId, InterferenceManagementZones, BasicContainer, GenerationDeltaTime
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1) }
+
+
+--! @brief Include ETSI EN 302 637-2
+--! Include references from @url https:
+--BasicContainer,
+--GenerationDeltaTime
+--FROM CAM-PDU-Descriptions { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cam (2) version (2)}
+
+--! @brief Include ETSI TS 103 300-3
+--! All data types, imported from `VAM-Temp-Imports` will be imported from the CDD ETSI TS 102 894-2 Release 2 when available
+AreaCircular, AreaRectangle, AreaPolygon, OffsetPoint, SemiRangeLength, WGS84AngleValue
+FROM VAM-Temp-Imports { itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(103300) temp-imports(255) version1(1)}
+;
+
+--! @brief DF: Interference Management Zone Message Root
+--! This DF includes DEs for the IMZM `protocolVersion`, the IMZ message type identifier `messageID`
+--! and the station identifier `stationID` of the originating ITS-S.
+IMZM ::= SEQUENCE {
+ --! @details header
+ --! - The DE `protocolVersion` is used to select the appropriate protocol decoder at the receiving
+ --! ITS-S. For TS 103 724 V2.1.1, the value of the DE `protocolVersion` shall be set to 1.
+ --! - The DE `messageID` shall be harmonized with other V2X message identifier definitions.
+ --! For IMZM, the DE messageID shall be set to `imzm(15)`.
+ header ItsPduHeader,
+ imzm InterferenceManagementZoneMessage
+}
+
+--! @brief DF: Interference Management Zone Message
+--! This is the actual IMZM Payload. It shall include the time stamp of the IMZM and the applicable
+--! containers of type `BasicContainer` and `ImzmContainer`.
+InterferenceManagementZoneMessage ::= SEQUENCE {
+ generationDeltaTime GenerationDeltaTime, -- from CAM-PDU-Descriptions
+ imzmParameters ImzmParameters
+}
+
+--! @brief DF: IMZM Parameters
+--! The sequence of containers in the IMZM. Other containers may be added in the future.
+ImzmParameters ::= SEQUENCE {
+ --! @details basicContainer
+ --! imported from CAM-PDU-Descriptions
+ basicContainer BasicContainer,
+ --! @details imzmContainer
+ --! container specific to the IMZM
+ imzmContainer ImzmContainer,
+ ...
+}
+
+--! @brief DF: IMZM Container
+--! The IMZM container includes a sequence of up to 16 interference management zones.
+--! For each interference management zones, it contains a sequence of interference
+--! management zones per channel together with their characteristics.
+ImzmContainer ::= SEQUENCE {
+ --! @details interferenceManagementZones
+ --! mapped to the DF_ProtectedCommunicationZone in ETSI TS 102 894-2
+ interferenceManagementZones InterferenceManagementZones,
+ ...
+}
+
+--! @brief DF: List of Interference Management Zones
+--! A list of up to 16 interference management zones.
+--!
+--! **EXAMPLE**: An interference management communication zone may be defined around a
+--! CEN DSRC road side equipment or an urban rail operational area.
+--! @category: Infrastructure information, Communication information
+--InterferenceManagementZones ::= SEQUENCE (SIZE(1..16), ...) OF InterferenceManagementZone
+
+--! @brief DF: Interference Management Zone
+--! Describes a zone of interferenceManagement inside which the ITS communication should
+--! be restricted.
+--! @category: Infrastructure information, Communication information
+--InterferenceManagementZone ::= SEQUENCE {
+-- zoneDefinition ZoneDefinition,
+-- interferenceManagementInfo InterferenceManagementInfo
+--}
+
+--! @brief DF: Zone Definition
+--! Describes the zone where band sharing occurs. When reusing CDD Rel.1 types, names are unchanged.
+--! @category: Infrastructure information, Communication information
+--ZoneDefinition::= SEQUENCE{
+ --! @details interferenceManagementZoneLatitude
+ --! Latitude of the centre point of the interference management zone.
+-- interferenceManagementZoneLatitude Latitude, - - from ITS-Container
+ --! @details interferenceManagementZoneLongitude
+ --! Longitude of the centre point of the interference management zone.
+-- interferenceManagementZoneLongitude Longitude, - - from ITS-Container
+ --! @details interferenceManagementZoneRadius
+ --! Radius of the interference management zone in metres.
+ --! This DE is present if the data is available
+-- interferenceManagementZoneRadius ProtectedZoneRadius OPTIONAL, - - from ITS-Container
+ --! @details interferenceManagementZoneID
+ --! Identification of the interference management zone.
+ --! This DE is present if the data is available.
+-- interferenceManagementZoneID ProtectedZoneId OPTIONAL, - - from ITS-Container
+ --! @details interferenceManagementZoneShape
+ --! Shape of the interference management zone.
+ --! This DF is present if the data is available.
+-- interferenceManagementZoneShape InterferenceManagementZoneShape OPTIONAL,
+-- ...
+--}
+
+--! @brief DF: Interference Management Information
+--! A list of up to 16 definitions containing which interference management may be applied in the zone,
+--! per affected frequency channels.
+--!
+--! **Note**: in the case where no mitigation should be applied by the ITS-S, this is indicated
+--! by the value of interferenceManagementMitigationType set to unavailable.
+--! @category: Infrastructure information, Communication information
+-- InterferenceManagementInfo::= SEQUENCE (SIZE(1..16,...)) OF InterferenceManagementInfoPerChannel
+
+--! @brief DF: Interference Management Information Per Channel
+--! A break up of the interference management information per affected frequency channels.
+--! @category: Infrastructure information, Communication information
+--InterferenceManagementInfoPerChannel ::= SEQUENCE {
+ --! @details interferenceManagementChannel
+ --! Characteritics of the frequency channel for which the zone
+ --! should be applied interference management
+-- interferenceManagementChannel InterferenceManagementChannel,
+ --! @details interferenceManagementZoneType
+ --! Type of the interference management zone.
+-- interferenceManagementZoneType InterferenceManagementZoneType,
+ --! @details interferenceManagementMitigationType
+ --! Type of the mitigation to be used in the interference management zone.
+-- interferenceManagementMitigationType InterferenceManagementMitigationType OPTIONAL,
+ --! @details expiryTime
+ --! Time at which the validity of the interference management communication zone will expire.
+ --! This DE is present when the interference management is temporarily valid
+-- expiryTime TimestampIts OPTIONAL, - - from ITS-Container
+-- ...
+--}
+
+--! @brief DF: InterferenceManagementChannel
+--! Indicates which shared frequency channel should be applied interference management in the zone.
+--! @category: Communication information
+--InterferenceManagementChannel ::= SEQUENCE {
+ --! @details centre frequency of the channel
+ --! @unit: 10exp+2 Hz (where exp is exponent)
+-- centreFrequency INTEGER (1 .. 99999),
+ --! @details width of the channel
+ --! @unit: 10exp Hz (where exp is exponent)
+-- channelWidth INTEGER (0 .. 9999),
+ --! @details exponent of the power of 10
+ --! @unit: N/A
+-- exponent INTEGER (0 .. 15)
+--}
+
+--! @brief DE: InterferenceManagementZoneType
+--! defines the type of an interference management zone, so that an ITS-S can
+--! assert the actions to do while passing by such zone (e.g. reduce the transmit
+--! power in case of a DSRC tolling station).
+--! @unit: N/A
+--! @category: Communication information
+--InterferenceManagementZoneType ::= ENUMERATED {
+-- permanentCenDsrcTolling(0), - -!< as specified in ETSI TS 102 792
+-- temporaryCenDsrcTolling(1), - -!< as specified in ETSI TS 102 792
+-- unavailable(2), - -!< default value. Set to 2 for backwards compatibility with DSRC tolling
+-- urbanRail(3), - -!< as specified in ETSI TS 103 724, clause 7
+-- satelliteStation(4), - -!< as specified in ETSI TS 103 724, clause 7
+-- fixedLinks(5), - -!< as specified in ETSI TS 103 724, clause 7
+-- ...
+--}
+
+--! @brief DF: Mitigation type in the interference management zone
+--! Information and commands defining the required mitigation type the
+--! receiving ITS-S has to use in the defined interference management zone.
+--! It indicates the type of mitigation and the parameters to be used to protect the
+--! potential victim in the interference management zone per channel access technology class.
+--! @category: Communication information
+--InterferenceManagementMitigationType ::= CHOICE {
+ --! @details unavailable is the default value to be used when data is not available.
+-- unavailable NULL,
+-- mitigationForTechnologies MitigationForTechnologies
+--}
+
+--! @brief DF: Mitigation type container for the different channel access technology classes
+--! Class of parameters for the relevant channel access technology classes,
+--! as specified in ETSI TS 103 724, clause 7.
+--! @category: Communication information
+--MitigationForTechnologies ::= SEQUENCE (SIZE(1..8)) OF MitigationPerTechnologyClass
+
+--! @brief DF: Mitigation type container per channel access technology class
+--! Class of parameters for the specific technology indicated in the container.
+--! All parameters are optional, as they may not apply to some of the technologies or
+--! interference management zone types. Specification details are in ETSI TS 103 724, clause 7.
+--! @category: Communication information
+--MitigationPerTechnologyClass ::= SEQUENCE {
+ --! @details channel access technology in which this mitigation is applied.
+ --! @unit: N/A
+-- accessTechnologyClass AccessTechnologyClass,
+ --! @details duty cycle limit.
+ --! @unit: 0.01% steps
+-- lowDutyCycle INTEGER (0 .. 10000) OPTIONAL,
+ --! @details power reduction.
+ --! @unit: dB
+-- powerReduction INTEGER (0 .. 30) OPTIONAL,
+ --! @details Idle time limit as defined in ETSI TS 103 175.
+ --! @unit: ms
+-- dmcToffLimit INTEGER (0 .. 1200) OPTIONAL,
+ --! @details Transmission duration limit, as defined in ETSI EN 302 571.
+ --! @unit: ms
+-- dmcTonLimit INTEGER (0 .. 20) OPTIONAL,
+-- ...
+--}
+
+--! @brief DE: channel access technology class
+--! Access technology to which the mitigation type applies.
+--! @category: Communication information
+--AccessTechnologyClass ::= ENUMERATED {
+-- any(0), - -!< any access technology class (see clause 7 of TS 103 724).
+-- itsg5Class(1), - -!< ITS-G5 access technology class.
+-- ltev2xClass(2), - -!< LTE-V2X access technology class.
+-- nrv2xClass(3), - -!< NR-V2X access technology class.
+-- ...
+--}
+
+--! @brief DF: Shape of the interference management zone
+--! Bounding box of an interference management zone
+--! @category: GeoReference information
+--InterferenceManagementZoneShape::= CHOICE {
+-- rectangle AreaRectangle, - - imported from VAM-Temp-Imports
+-- circle AreaCircular, - - imported from VAM-Temp-Imports
+-- polygon AreaPolygon, - - imported from VAM-Temp-Imports
+-- ellipse AreaEllipse, - - could not be imported from another specification yet
+-- ...
+--}
+
+--! @brief DF: Area Ellipse
+--! Area Ellipse copied from CPM TR 103 562. Will be removed when CDD Release 2 is available.
+--! Describes an elliptical area. The ellipse is centred about the reference point
+--! of the ITS-S or about the nodeCenterPoint (if provided).
+--! @category: GeoReference information
+--AreaEllipse ::= SEQUENCE {
+ --! @details nodeCenterPoint
+ --! Optional offset point about which the ellipse is centred with respect to the reference
+ --! position of the ITS-S.
+-- nodeCenterPoint OffsetPoint OPTIONAL,
+ --! @details semiMajorRangeLength
+ --! Minor radius of the ellipse.
+-- semiMajorRangeLength SemiRangeLength,
+ --! @details semiMinorRangeLength
+ --! Major radius of the ellipse.
+-- semiMinorRangeLength SemiRangeLength,
+ --! @details semiMajorRangeOrientation
+ --! Orientation of the semiMajorRangeLength of the ellipse in the WGS84 coordinate system.
+-- semiMajorRangeOrientation WGS84AngleValue
+--}
+
+END
diff --git a/epan/dissectors/asn1/its/ISO19321IVIv2.asn b/epan/dissectors/asn1/its/ISO19321IVIv2.asn
index d800dcaafd..2340b301a7 100644
--- a/epan/dissectors/asn1/its/ISO19321IVIv2.asn
+++ b/epan/dissectors/asn1/its/ISO19321IVIv2.asn
@@ -15,17 +15,19 @@ DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
-ActionID, Altitude, DangerousGoodsBasic , DeltaLatitude, DeltaLongitude, DeltaReferencePosition, Heading, HeadingValue, Latitude, LanePosition, Longitude, ReferencePosition, RoadType, SpecialTransportType, Speed, SpeedValue, StationType, TimestampIts, VehicleRole
-FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) }
+ActionID, Altitude, DangerousGoodsBasic , DeltaLatitude, DeltaLongitude, DeltaReferencePosition, Heading, HeadingValue, Latitude, LanePosition, Longitude,
+ReferencePosition, RoadType, SpecialTransportType, Speed, SpeedValue, StationType, TimestampIts, VehicleRole, VarLengthNumber, EuVehicleCategoryCode, Iso3833VehicleType
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
AxleWeightLimits, DieselEmissionValues, ExhaustEmissionValues, EngineCharacteristics, EnvironmentalCharacteristics, PassengerCapacity , Provider, SoundLevel, VehicleDimensions, VehicleWeightLimits
FROM EfcDsrcApplication {iso(1) standard(0) 14906 application(0) version6(6)}
-EuVehicleCategoryCode, Iso3833VehicleType
-FROM ElectronicRegistrationIdentificationVehicleDataModule {iso(1) standard(0) iso24534 (24534) vehicleData (1) version1 (1)}
+--EuVehicleCategoryCode,
+--Iso3833VehicleType
+--FROM ElectronicRegistrationIdentificationVehicleDataModule {iso(1) standard(0) iso24534 (24534) vehicleData (1) version1 (1)}
-VarLengthNumber
-FROM CITSapplMgmtIDs {iso(1) standard(0) cits-applMgmt (17419) dataDictionary (1) version1 (1)}
+--VarLengthNumber use ETSI-ITS-CDD instead
+--FROM CITSapplMgmtIDs {iso(1) standard(0) cits-applMgmt (17419) dataDictionary (1) version1 (1)}
RoadSegmentReferenceID, IntersectionReferenceID, LaneID
FROM DSRC {iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2)}
diff --git a/epan/dissectors/asn1/its/ISO_TS_19091.asn b/epan/dissectors/asn1/its/ISO_TS_19091.asn
index ac3b094173..f9adef0510 100644
--- a/epan/dissectors/asn1/its/ISO_TS_19091.asn
+++ b/epan/dissectors/asn1/its/ISO_TS_19091.asn
@@ -26,8 +26,8 @@ DEFINITIONS AUTOMATIC TAGS::= BEGIN
IMPORTS
-Longitude, Latitude, StationID
-FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) }
+Longitude, Latitude, StationID, VehicleHeight, Iso3833VehicleType
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
Reg-AdvisorySpeed, Reg-ComputedLane, Reg-ConnectionManeuverAssist, Reg-GenericLane,
Reg-IntersectionGeometry, Reg-IntersectionState, Reg-LaneAttributes, Reg-MapData,
@@ -38,8 +38,9 @@ Reg-SignalStatusMessage, Reg-SPAT
FROM REGION {iso (1) standard (0) signalizedIntersection (19091) profilec(2) region (1) version2 (2)}
-Iso3833VehicleType
-FROM ElectronicRegistrationIdentificationVehicleDataModule { iso(1) standard(0) iso24534 (24534) vehicleData (1) version1 (1) };
+--Iso3833VehicleType
+--FROM ElectronicRegistrationIdentificationVehicleDataModule { iso(1) standard(0) iso24534 (24534) vehicleData (1) version1 (1) }
+;
-- -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
-- Messages
@@ -1239,7 +1240,7 @@ TransmissionState ::= ENUMERATED {
unavailable (7)
}
-VehicleHeight ::= INTEGER (0..127)
+--VehicleHeight ::= INTEGER (0..127)
VehicleType ::= ENUMERATED {
none (0),
@@ -1283,14 +1284,14 @@ DEFINITIONS AUTOMATIC TAGS::= BEGIN
IMPORTS
-DeltaTime, FuelType, IntersectionID, LaneConnectionID, LaneID, NodeOffsetPointXY, NodeSetXY, PrioritizationResponseStatus, SignalGroupID, VehicleHeight
+DeltaTime, FuelType, IntersectionID, LaneConnectionID, LaneID, NodeOffsetPointXY, NodeSetXY, PrioritizationResponseStatus, SignalGroupID
FROM DSRC {
iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2)
}
-Altitude, DeltaAltitude, StationID, VehicleMass
-FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) };
+Altitude, DeltaAltitude, StationID, VehicleMass, VehicleHeight
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)};
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- AddGrpC data dictionary extensions to SAEJ2735
diff --git a/epan/dissectors/asn1/its/ITS-Container.asn b/epan/dissectors/asn1/its/ITS-Container.asn
index b3a038e22b..a66af20120 100644
--- a/epan/dissectors/asn1/its/ITS-Container.asn
+++ b/epan/dissectors/asn1/its/ITS-Container.asn
@@ -6,11 +6,17 @@ DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-IMPORTS;
+IMPORTS
+ -- Wireshark modification
+ CauseCode
+ FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+
+;
ItsPduHeader ::= SEQUENCE {
protocolVersion INTEGER (0..255),
- messageID INTEGER{ denm(1), cam(2), poi(3), spatem(4), mapem(5), ivim(6), ev-rsr(7), tistpgtransaction(8), srem(9), ssem(10), evcsn(11), saem(12), rtcmem(13), cpm(14) } (0..255), -- Mantis #7209, #7005
+ messageID INTEGER{ denm(1), cam(2), poi(3), spatem(4), mapem(5), ivim(6), ev-rsr(7), tistpgtransaction(8), srem(9), ssem(10), evcsn(11), saem(12), rtcmem(13), cpm(14),
+ imzm(15), vam(16),dsm(17), pcim(18), pcvm(19), mcm(20), pam(21) } (0..255), -- Mantis #7209, #7005
stationID StationID
}
@@ -87,123 +93,126 @@ PtActivationType ::= INTEGER {undefinedCodingType(0), r09-16CodingType(1), vdv-5
PtActivationData ::= OCTET STRING (SIZE(1..20))
-AccelerationControl ::= BIT STRING {
- brakePedalEngaged (0),
- gasPedalEngaged (1),
- emergencyBrakeEngaged (2),
- collisionWarningEngaged (3),
- accEngaged (4),
- cruiseControlEngaged (5),
- speedLimiterEngaged (6)
-} (SIZE(7))
+--AccelerationControl ::= BIT STRING {
+-- brakePedalEngaged (0),
+-- gasPedalEngaged (1),
+-- emergencyBrakeEngaged (2),
+-- collisionWarningEngaged (3),
+-- accEngaged (4),
+-- cruiseControlEngaged (5),
+-- speedLimiterEngaged (6)
+--} (SIZE(7))
SemiAxisLength ::= INTEGER{oneCentimeter(1), outOfRange(4094), unavailable(4095)} (0..4095)
-CauseCode ::= SEQUENCE {
- causeCode CauseCodeType,
- subCauseCode SubCauseCodeType,
- ...
-}
+-- WS Modification
+--CauseCode ::= SEQUENCE {
+-- causeCode CauseCodeType,
+-- subCauseCode SubCauseCodeType,
+-- ...
+-- }
-CauseCodeType ::= INTEGER {
- reserved (0),
- trafficCondition (1),
- accident (2),
- roadworks (3),
- impassability (5),
- adverseWeatherCondition-Adhesion (6),
- aquaplannning (7),
- hazardousLocation-SurfaceCondition (9),
- hazardousLocation-ObstacleOnTheRoad (10),
- hazardousLocation-AnimalOnTheRoad (11),
- humanPresenceOnTheRoad (12),
- wrongWayDriving (14),
- rescueAndRecoveryWorkInProgress (15),
- adverseWeatherCondition-ExtremeWeatherCondition (17),
- adverseWeatherCondition-Visibility (18),
- adverseWeatherCondition-Precipitation (19),
- slowVehicle (26),
- dangerousEndOfQueue (27),
- vehicleBreakdown (91),
- postCrash (92),
- humanProblem (93),
- stationaryVehicle (94),
- emergencyVehicleApproaching (95),
- hazardousLocation-DangerousCurve (96),
- collisionRisk (97),
- signalViolation (98),
- dangerousSituation (99)
-} (0..255)
+-- WS Modification
+--CauseCodeType ::= INTEGER {
+-- reserved (0),
+-- trafficCondition (1),
+-- accident (2),
+-- roadworks (3),
+-- impassability (5),
+-- adverseWeatherCondition-Adhesion (6),
+-- aquaplaning (7),
+-- hazardousLocation-SurfaceCondition (9),
+-- hazardousLocation-ObstacleOnTheRoad (10),
+-- hazardousLocation-AnimalOnTheRoad (11),
+-- humanPresenceOnTheRoad (12),
+-- wrongWayDriving (14),
+-- rescueAndRecoveryWorkInProgress (15),
+-- adverseWeatherCondition-ExtremeWeatherCondition (17),
+-- adverseWeatherCondition-Visibility (18),
+-- adverseWeatherCondition-Precipitation (19),
+-- violence (20),
+-- slowVehicle (26),
+-- dangerousEndOfQueue (27),
+-- vehicleBreakdown (91),
+-- postCrash (92),
+-- humanProblem (93),
+-- stationaryVehicle (94),
+-- emergencyVehicleApproaching (95),
+-- hazardousLocation-DangerousCurve (96),
+-- collisionRisk (97),
+-- signalViolation (98),
+-- dangerousSituation (99),
+-- railwayLevelCrossing (100)
+--} (0..255)
-SubCauseCodeType ::= INTEGER (0..255)
+-- SubCauseCodeType ::= INTEGER (0..255)
-TrafficConditionSubCauseCode ::= INTEGER {unavailable(0), increasedVolumeOfTraffic(1), trafficJamSlowlyIncreasing(2), trafficJamIncreasing(3), trafficJamStronglyIncreasing(4), trafficStationary(5), trafficJamSlightlyDecreasing(6), trafficJamDecreasing(7), trafficJamStronglyDecreasing(8)} (0..255)
+ TrafficConditionSubCauseCode ::= INTEGER {unavailable(0), increasedVolumeOfTraffic(1), trafficJamSlowlyIncreasing(2), trafficJamIncreasing(3), trafficJamStronglyIncreasing(4), trafficStationary(5), trafficJamSlightlyDecreasing(6), trafficJamDecreasing(7), trafficJamStronglyDecreasing(8)} (0..255)
-AccidentSubCauseCode ::= INTEGER {unavailable(0), multiVehicleAccident(1), heavyAccident(2), accidentInvolvingLorry(3), accidentInvolvingBus(4), accidentInvolvingHazardousMaterials(5), accidentOnOppositeLane(6), unsecuredAccident(7), assistanceRequested(8)} (0..255)
+ AccidentSubCauseCode ::= INTEGER {unavailable(0), multiVehicleAccident(1), heavyAccident(2), accidentInvolvingLorry(3), accidentInvolvingBus(4), accidentInvolvingHazardousMaterials(5), accidentOnOppositeLane(6), unsecuredAccident(7), assistanceRequested(8)} (0..255)
-RoadworksSubCauseCode ::= INTEGER {unavailable(0), majorRoadworks(1), roadMarkingWork(2), slowMovingRoadMaintenance(3), shortTermStationaryRoadworks(4), streetCleaning(5), winterService(6)} (0..255)
+ RoadworksSubCauseCode ::= INTEGER {unavailable(0), majorRoadworks(1), roadMarkingWork(2), slowMovingRoadMaintenance(3), shortTermStationaryRoadworks(4), streetCleaning(5), winterService(6)} (0..255)
-HumanPresenceOnTheRoadSubCauseCode ::= INTEGER {unavailable(0), childrenOnRoadway(1), cyclistOnRoadway(2), motorcyclistOnRoadway(3)} (0..255)
+ HumanPresenceOnTheRoadSubCauseCode ::= INTEGER {unavailable(0), childrenOnRoadway(1), cyclistOnRoadway(2), motorcyclistOnRoadway(3)} (0..255)
-WrongWayDrivingSubCauseCode ::= INTEGER {unavailable(0), wrongLane(1), wrongDirection(2)} (0..255)
+ WrongWayDrivingSubCauseCode ::= INTEGER {unavailable(0), wrongLane(1), wrongDirection(2)} (0..255)
-AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode ::= INTEGER {unavailable(0), strongWinds(1), damagingHail(2), hurricane(3), thunderstorm(4), tornado(5), blizzard(6)} (0..255)
+ AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode ::= INTEGER {unavailable(0), strongWinds(1), damagingHail(2), hurricane(3), thunderstorm(4), tornado(5), blizzard(6)} (0..255)
-AdverseWeatherCondition-AdhesionSubCauseCode ::= INTEGER {unavailable(0), heavyFrostOnRoad(1), fuelOnRoad(2), mudOnRoad(3), snowOnRoad(4), iceOnRoad(5), blackIceOnRoad(6), oilOnRoad(7), looseChippings(8), instantBlackIce(9), roadsSalted(10)} (0..255)
+ AdverseWeatherCondition-AdhesionSubCauseCode ::= INTEGER {unavailable(0), heavyFrostOnRoad(1), fuelOnRoad(2), mudOnRoad(3), snowOnRoad(4), iceOnRoad(5), blackIceOnRoad(6), oilOnRoad(7), looseChippings(8), instantBlackIce(9), roadsSalted(10)} (0..255)
-AdverseWeatherCondition-VisibilitySubCauseCode ::= INTEGER {unavailable(0), fog(1), smoke(2), heavySnowfall(3), heavyRain(4), heavyHail(5), lowSunGlare(6), sandstorms(7), swarmsOfInsects(8)} (0..255)
+ AdverseWeatherCondition-VisibilitySubCauseCode ::= INTEGER {unavailable(0), fog(1), smoke(2), heavySnowfall(3), heavyRain(4), heavyHail(5), lowSunGlare(6), sandstorms(7), swarmsOfInsects(8)} (0..255)
-AdverseWeatherCondition-PrecipitationSubCauseCode ::= INTEGER {unavailable(0), heavyRain(1), heavySnowfall(2), softHail(3)} (0..255)
+ AdverseWeatherCondition-PrecipitationSubCauseCode ::= INTEGER {unavailable(0), heavyRain(1), heavySnowfall(2), softHail(3)} (0..255)
-SlowVehicleSubCauseCode ::= INTEGER {unavailable(0), maintenanceVehicle(1), vehiclesSlowingToLookAtAccident(2), abnormalLoad(3), abnormalWideLoad(4), convoy(5), snowplough(6), deicing(7), saltingVehicles(8)} (0..255)
+ SlowVehicleSubCauseCode ::= INTEGER {unavailable(0), maintenanceVehicle(1), vehiclesSlowingToLookAtAccident(2), abnormalLoad(3), abnormalWideLoad(4), convoy(5), snowplough(6), deicing(7), saltingVehicles(8)} (0..255)
-StationaryVehicleSubCauseCode ::= INTEGER {unavailable(0), humanProblem(1), vehicleBreakdown(2), postCrash(3), publicTransportStop(4), carryingDangerousGoods(5)} (0..255)
+ StationaryVehicleSubCauseCode ::= INTEGER {unavailable(0), humanProblem(1), vehicleBreakdown(2), postCrash(3), publicTransportStop(4), carryingDangerousGoods(5)} (0..255)
-HumanProblemSubCauseCode ::= INTEGER {unavailable(0), glycemiaProblem(1), heartProblem(2)} (0..255)
+ HumanProblemSubCauseCode ::= INTEGER {unavailable(0), glycemiaProblem(1), heartProblem(2)} (0..255)
-EmergencyVehicleApproachingSubCauseCode ::= INTEGER {unavailable(0), emergencyVehicleApproaching(1), prioritizedVehicleApproaching(2)} (0..255)
+ EmergencyVehicleApproachingSubCauseCode ::= INTEGER {unavailable(0), emergencyVehicleApproaching(1), prioritizedVehicleApproaching(2)} (0..255)
-HazardousLocation-DangerousCurveSubCauseCode ::= INTEGER {unavailable(0), dangerousLeftTurnCurve(1), dangerousRightTurnCurve(2), multipleCurvesStartingWithUnknownTurningDirection(3), multipleCurvesStartingWithLeftTurn(4), multipleCurvesStartingWithRightTurn(5)} (0..255)
+ HazardousLocation-DangerousCurveSubCauseCode ::= INTEGER {unavailable(0), dangerousLeftTurnCurve(1), dangerousRightTurnCurve(2), multipleCurvesStartingWithUnknownTurningDirection(3), multipleCurvesStartingWithLeftTurn(4), multipleCurvesStartingWithRightTurn(5)} (0..255)
-HazardousLocation-SurfaceConditionSubCauseCode ::= INTEGER {unavailable(0), rockfalls(1), earthquakeDamage(2), sewerCollapse(3), subsidence(4), snowDrifts(5), stormDamage(6), burstPipe(7), volcanoEruption(8), fallingIce(9)} (0..255)
+ HazardousLocation-SurfaceConditionSubCauseCode ::= INTEGER {unavailable(0), rockfalls(1), earthquakeDamage(2), sewerCollapse(3), subsidence(4), snowDrifts(5), stormDamage(6), burstPipe(7), volcanoEruption(8), fallingIce(9)} (0..255)
-HazardousLocation-ObstacleOnTheRoadSubCauseCode ::= INTEGER {unavailable(0), shedLoad(1), partsOfVehicles(2), partsOfTyres(3), bigObjects(4), fallenTrees(5), hubCaps(6), waitingVehicles(7)} (0..255)
+ HazardousLocation-ObstacleOnTheRoadSubCauseCode ::= INTEGER {unavailable(0), shedLoad(1), partsOfVehicles(2), partsOfTyres(3), bigObjects(4), fallenTrees(5), hubCaps(6), waitingVehicles(7)} (0..255)
-HazardousLocation-AnimalOnTheRoadSubCauseCode ::= INTEGER {unavailable(0), wildAnimals(1), herdOfAnimals(2), smallAnimals(3), largeAnimals(4)} (0..255)
+ HazardousLocation-AnimalOnTheRoadSubCauseCode ::= INTEGER {unavailable(0), wildAnimals(1), herdOfAnimals(2), smallAnimals(3), largeAnimals(4)} (0..255)
-CollisionRiskSubCauseCode ::= INTEGER {unavailable(0), longitudinalCollisionRisk(1), crossingCollisionRisk(2), lateralCollisionRisk(3), vulnerableRoadUser(4)} (0..255)
+ CollisionRiskSubCauseCode ::= INTEGER {unavailable(0), longitudinalCollisionRisk(1), crossingCollisionRisk(2), lateralCollisionRisk(3), vulnerableRoadUser(4)} (0..255)
-SignalViolationSubCauseCode ::= INTEGER {unavailable(0), stopSignViolation(1), trafficLightViolation(2), turningRegulationViolation(3)} (0..255)
+ SignalViolationSubCauseCode ::= INTEGER {unavailable(0), stopSignViolation(1), trafficLightViolation(2), turningRegulationViolation(3)} (0..255)
-RescueAndRecoveryWorkInProgressSubCauseCode ::= INTEGER {unavailable(0), emergencyVehicles(1), rescueHelicopterLanding(2), policeActivityOngoing(3), medicalEmergencyOngoing(4), childAbductionInProgress(5)} (0..255)
+ RescueAndRecoveryWorkInProgressSubCauseCode ::= INTEGER {unavailable(0), emergencyVehicles(1), rescueHelicopterLanding(2), policeActivityOngoing(3), medicalEmergencyOngoing(4), childAbductionInProgress(5)} (0..255)
-DangerousEndOfQueueSubCauseCode ::= INTEGER {unavailable(0), suddenEndOfQueue(1), queueOverHill(2), queueAroundBend(3), queueInTunnel(4)} (0..255)
+ DangerousEndOfQueueSubCauseCode ::= INTEGER {unavailable(0), suddenEndOfQueue(1), queueOverHill(2), queueAroundBend(3), queueInTunnel(4)} (0..255)
-DangerousSituationSubCauseCode ::= INTEGER {unavailable(0), emergencyElectronicBrakeEngaged(1), preCrashSystemEngaged(2), espEngaged(3), absEngaged(4), aebEngaged(5), brakeWarningEngaged(6), collisionRiskWarningEngaged(7)} (0..255)
+ DangerousSituationSubCauseCode ::= INTEGER {unavailable(0), emergencyElectronicBrakeEngaged(1), preCrashSystemEngaged(2), espEngaged(3), absEngaged(4), aebEngaged(5), brakeWarningEngaged(6), collisionRiskWarningEngaged(7)} (0..255)
-VehicleBreakdownSubCauseCode ::= INTEGER {unavailable(0), lackOfFuel (1), lackOfBatteryPower (2), engineProblem(3), transmissionProblem(4), engineCoolingProblem(5), brakingSystemProblem(6), steeringProblem(7), tyrePuncture(8), tyrePressureProblem(9)} (0..255)
+ VehicleBreakdownSubCauseCode ::= INTEGER {unavailable(0), lackOfFuel (1), lackOfBatteryPower (2), engineProblem(3), transmissionProblem(4), engineCoolingProblem(5), brakingSystemProblem(6), steeringProblem(7), tyrePuncture(8), tyrePressureProblem(9)} (0..255)
-PostCrashSubCauseCode ::= INTEGER {unavailable(0), accidentWithoutECallTriggered (1), accidentWithECallManuallyTriggered (2), accidentWithECallAutomaticallyTriggered (3), accidentWithECallTriggeredWithoutAccessToCellularNetwork(4)} (0..255)
+ PostCrashSubCauseCode ::= INTEGER {unavailable(0), accidentWithoutECallTriggered (1), accidentWithECallManuallyTriggered (2), accidentWithECallAutomaticallyTriggered (3), accidentWithECallTriggeredWithoutAccessToCellularNetwork(4)} (0..255)
+-- Curvature ::= SEQUENCE {
+-- curvatureValue CurvatureValue,
+-- curvatureConfidence CurvatureConfidence
+--}
-Curvature ::= SEQUENCE {
- curvatureValue CurvatureValue,
- curvatureConfidence CurvatureConfidence
-}
+-- CurvatureValue ::= INTEGER {straight(0), unavailable(1023)} (-1023..1023)
-CurvatureValue ::= INTEGER {straight(0), unavailable(1023)} (-1023..1023)
-
-CurvatureConfidence ::= ENUMERATED {
- onePerMeter-0-00002 (0),
- onePerMeter-0-0001 (1),
- onePerMeter-0-0005 (2),
- onePerMeter-0-002 (3),
- onePerMeter-0-01 (4),
- onePerMeter-0-1 (5),
- outOfRange (6),
- unavailable (7)
-}
+--CurvatureConfidence ::= ENUMERATED {
+-- onePerMeter-0-00002 (0),
+-- onePerMeter-0-0001 (1),
+-- onePerMeter-0-0005 (2),
+-- onePerMeter-0-002 (3),
+-- onePerMeter-0-01 (4),
+-- onePerMeter-0-1 (5),
+-- outOfRange (6),
+-- unavailable (7)
+--}
-CurvatureCalculationMode ::= ENUMERATED {yawRateUsed(0), yawRateNotUsed(1), unavailable(2), ...}
+-- CurvatureCalculationMode ::= ENUMERATED {yawRateUsed(0), yawRateNotUsed(1), unavailable(2), ...}
Heading ::= SEQUENCE {
headingValue HeadingValue,
@@ -239,32 +248,32 @@ Speed ::= SEQUENCE {
speedConfidence SpeedConfidence
}
-DriveDirection ::= ENUMERATED {forward (0), backward (1), unavailable (2)}
+-- DriveDirection ::= ENUMERATED {forward (0), backward (1), unavailable (2)}
EmbarkationStatus ::= BOOLEAN
-LongitudinalAcceleration ::= SEQUENCE {
- longitudinalAccelerationValue LongitudinalAccelerationValue,
- longitudinalAccelerationConfidence AccelerationConfidence
-}
+--LongitudinalAcceleration ::= SEQUENCE {
+-- longitudinalAccelerationValue LongitudinalAccelerationValue,
+-- longitudinalAccelerationConfidence AccelerationConfidence
+--}
-LongitudinalAccelerationValue ::= INTEGER {pointOneMeterPerSecSquaredForward(1), pointOneMeterPerSecSquaredBackward(-1), unavailable(161)} (-160 .. 161)
+--LongitudinalAccelerationValue ::= INTEGER {pointOneMeterPerSecSquaredForward(1), pointOneMeterPerSecSquaredBackward(-1), unavailable(161)} (-160 .. 161)
-AccelerationConfidence ::= INTEGER {pointOneMeterPerSecSquared(1), outOfRange(101), unavailable(102)} (0 .. 102)
+--AccelerationConfidence ::= INTEGER {pointOneMeterPerSecSquared(1), outOfRange(101), unavailable(102)} (0 .. 102)
-LateralAcceleration ::= SEQUENCE {
- lateralAccelerationValue LateralAccelerationValue,
- lateralAccelerationConfidence AccelerationConfidence
-}
+--LateralAcceleration ::= SEQUENCE {
+-- lateralAccelerationValue LateralAccelerationValue,
+-- lateralAccelerationConfidence AccelerationConfidence
+--}
-LateralAccelerationValue ::= INTEGER {pointOneMeterPerSecSquaredToRight(-1), pointOneMeterPerSecSquaredToLeft(1), unavailable(161)} (-160 .. 161)
+--LateralAccelerationValue ::= INTEGER {pointOneMeterPerSecSquaredToRight(-1), pointOneMeterPerSecSquaredToLeft(1), unavailable(161)} (-160 .. 161)
-VerticalAcceleration ::= SEQUENCE {
- verticalAccelerationValue VerticalAccelerationValue,
- verticalAccelerationConfidence AccelerationConfidence
-}
+--VerticalAcceleration ::= SEQUENCE {
+-- verticalAccelerationValue VerticalAccelerationValue,
+-- verticalAccelerationConfidence AccelerationConfidence
+--}
-VerticalAccelerationValue ::= INTEGER {pointOneMeterPerSecSquaredUp(1), pointOneMeterPerSecSquaredDown(-1), unavailable(161)} (-160 .. 161)
+--VerticalAccelerationValue ::= INTEGER {pointOneMeterPerSecSquaredUp(1), pointOneMeterPerSecSquaredDown(-1), unavailable(161)} (-160 .. 161)
StationType ::= INTEGER {unknown(0), pedestrian(1), cyclist(2), moped(3), motorcycle(4), passengerCar(5), bus(6), lightTruck(7), heavyTruck(8), trailer(9), specialVehicles(10), tram(11), roadSideUnit(15)} (0..255)
@@ -302,17 +311,17 @@ DangerousGoodsBasic::= ENUMERATED {
miscellaneousDangerousSubstances(19)
}
-DangerousGoodsExtended ::= SEQUENCE {
- dangerousGoodsType DangerousGoodsBasic,
- unNumber INTEGER (0..9999),
- elevatedTemperature BOOLEAN,
- tunnelsRestricted BOOLEAN,
- limitedQuantity BOOLEAN,
- emergencyActionCode IA5String (SIZE (1..24)) OPTIONAL,
- phoneNumber PhoneNumber OPTIONAL,
- companyName UTF8String (SIZE (1..24)) OPTIONAL,
- ...
-}
+--DangerousGoodsExtended ::= SEQUENCE {
+-- dangerousGoodsType DangerousGoodsBasic,
+-- unNumber INTEGER (0..9999),
+-- elevatedTemperature BOOLEAN,
+-- tunnelsRestricted BOOLEAN,
+-- limitedQuantity BOOLEAN,
+-- emergencyActionCode IA5String (SIZE (1..24)) OPTIONAL,
+-- phoneNumber PhoneNumber OPTIONAL,
+-- companyName UTF8String (SIZE (1..24)) OPTIONAL,
+-- ...
+--}
SpecialTransportType ::= BIT STRING {heavyLoad(0), excessWidth(1), excessLength(2), excessHeight(3)} (SIZE(4))
@@ -321,77 +330,77 @@ LightBarSirenInUse ::= BIT STRING {
sirenActivated (1)
} (SIZE(2))
-HeightLonCarr ::= INTEGER {oneCentimeter(1), unavailable(100)} (1..100)
+--HeightLonCarr ::= INTEGER {oneCentimeter(1), unavailable(100)} (1..100)
-PosLonCarr ::= INTEGER {oneCentimeter(1), unavailable(127)} (1..127)
+--PosLonCarr ::= INTEGER {oneCentimeter(1), unavailable(127)} (1..127)
-PosPillar ::= INTEGER {tenCentimeters(1), unavailable(30)} (1..30)
+--PosPillar ::= INTEGER {tenCentimeters(1), unavailable(30)} (1..30)
-PosCentMass ::= INTEGER {tenCentimeters(1), unavailable(63)} (1..63)
+-- PosCentMass ::= INTEGER {tenCentimeters(1), unavailable(63)} (1..63)
-RequestResponseIndication ::= ENUMERATED {request(0), response(1)}
+-- RequestResponseIndication ::= ENUMERATED {request(0), response(1)}
SpeedLimit ::= INTEGER {oneKmPerHour(1)} (1..255)
-StationarySince ::= ENUMERATED {lessThan1Minute(0), lessThan2Minutes(1), lessThan15Minutes(2), equalOrGreater15Minutes(3)}
+-- StationarySince ::= ENUMERATED {lessThan1Minute(0), lessThan2Minutes(1), lessThan15Minutes(2), equalOrGreater15Minutes(3)}
-Temperature ::= INTEGER {equalOrSmallerThanMinus60Deg (-60), oneDegreeCelsius(1), equalOrGreaterThan67Deg(67)} (-60..67)
+--Temperature ::= INTEGER {equalOrSmallerThanMinus60Deg (-60), oneDegreeCelsius(1), equalOrGreaterThan67Deg(67)} (-60..67)
TrafficRule ::= ENUMERATED {noPassing(0), noPassingForTrucks(1), passToRight(2), passToLeft(3), ... }
-WheelBaseVehicle ::= INTEGER {tenCentimeters(1), unavailable(127)} (1..127)
-
-TurningRadius ::= INTEGER {point4Meters(1), unavailable(255)} (1..255)
-
-PosFrontAx ::= INTEGER {tenCentimeters(1), unavailable(20)} (1..20)
-
-PositionOfOccupants ::= BIT STRING {
- row1LeftOccupied (0),
- row1RightOccupied (1),
- row1MidOccupied (2),
- row1NotDetectable (3),
- row1NotPresent (4),
- row2LeftOccupied (5),
- row2RightOccupied (6),
- row2MidOccupied (7),
- row2NotDetectable (8),
- row2NotPresent (9),
- row3LeftOccupied (10),
- row3RightOccupied (11),
- row3MidOccupied (12),
- row3NotDetectable (13),
- row3NotPresent (14),
- row4LeftOccupied (15),
- row4RightOccupied (16),
- row4MidOccupied (17),
- row4NotDetectable (18),
- row4NotPresent (19)
-} (SIZE(20))
-
-PositioningSolutionType ::= ENUMERATED {noPositioningSolution(0), sGNSS(1), dGNSS(2), sGNSSplusDR(3), dGNSSplusDR(4), dR(5), ...}
-
-VehicleIdentification ::= SEQUENCE {
- wMInumber WMInumber OPTIONAL,
- vDS VDS OPTIONAL,
- ...
-}
+-- WheelBaseVehicle ::= INTEGER {tenCentimeters(1), unavailable(127)} (1..127)
-WMInumber ::= IA5String (SIZE(1..3))
+--TurningRadius ::= INTEGER {point4Meters(1), unavailable(255)} (1..255)
-VDS ::= IA5String (SIZE(6))
+-- PosFrontAx ::= INTEGER {tenCentimeters(1), unavailable(20)} (1..20)
-EnergyStorageType ::= BIT STRING {hydrogenStorage(0), electricEnergyStorage(1), liquidPropaneGas(2), compressedNaturalGas(3), diesel(4), gasoline(5), ammonia(6)} (SIZE(7))
+--PositionOfOccupants ::= BIT STRING {
+-- row1LeftOccupied (0),
+-- row1RightOccupied (1),
+-- row1MidOccupied (2),
+-- row1NotDetectable (3),
+-- row1NotPresent (4),
+-- row2LeftOccupied (5),
+-- row2RightOccupied (6),
+-- row2MidOccupied (7),
+-- row2NotDetectable (8),
+-- row2NotPresent (9),
+-- row3LeftOccupied (10),
+-- row3RightOccupied (11),
+-- row3MidOccupied (12),
+-- row3NotDetectable (13),
+-- row3NotPresent (14),
+-- row4LeftOccupied (15),
+-- row4RightOccupied (16),
+-- row4MidOccupied (17),
+-- row4NotDetectable (18),
+-- row4NotPresent (19)
+--} (SIZE(20))
-VehicleLength ::= SEQUENCE {
- vehicleLengthValue VehicleLengthValue,
- vehicleLengthConfidenceIndication VehicleLengthConfidenceIndication
-}
+-- PositioningSolutionType ::= ENUMERATED {noPositioningSolution(0), sGNSS(1), dGNSS(2), sGNSSplusDR(3), dGNSSplusDR(4), dR(5), ...}
+
+--VehicleIdentification ::= SEQUENCE {
+-- wMInumber WMInumber OPTIONAL,
+-- vDS VDS OPTIONAL,
+-- ...
+--}
+
+--WMInumber ::= IA5String (SIZE(1..3))
-VehicleLengthValue ::= INTEGER {tenCentimeters(1), outOfRange(1022), unavailable(1023)} (1..1023)
+--VDS ::= IA5String (SIZE(6))
-VehicleLengthConfidenceIndication ::= ENUMERATED {noTrailerPresent(0), trailerPresentWithKnownLength(1), trailerPresentWithUnknownLength(2), trailerPresenceIsUnknown(3), unavailable(4)}
+-- EnergyStorageType ::= BIT STRING {hydrogenStorage(0), electricEnergyStorage(1), liquidPropaneGas(2), compressedNaturalGas(3), diesel(4), gasoline(5), ammonia(6)} (SIZE(7))
-VehicleWidth ::= INTEGER {tenCentimeters(1), outOfRange(61), unavailable(62)} (1..62)
+--VehicleLength ::= SEQUENCE {
+-- vehicleLengthValue VehicleLengthValue,
+-- vehicleLengthConfidenceIndication VehicleLengthConfidenceIndication
+--}
+
+--VehicleLengthValue ::= INTEGER {tenCentimeters(1), outOfRange(1022), unavailable(1023)} (1..1023)
+
+--VehicleLengthConfidenceIndication ::= ENUMERATED {noTrailerPresent(0), trailerPresentWithKnownLength(1), trailerPresentWithUnknownLength(2), trailerPresenceIsUnknown(3), unavailable(4)}
+
+--VehicleWidth ::= INTEGER {tenCentimeters(1), outOfRange(61), unavailable(62)} (1..62)
PathHistory::= SEQUENCE (SIZE(0..40)) OF PathPoint
@@ -440,20 +449,20 @@ YawRateConfidence ::= ENUMERATED {
ProtectedZoneType::= ENUMERATED { permanentCenDsrcTolling (0), ..., temporaryCenDsrcTolling (1) }
-RelevanceDistance ::= ENUMERATED {lessThan50m(0), lessThan100m(1), lessThan200m(2), lessThan500m(3), lessThan1000m(4), lessThan5km(5), lessThan10km(6), over10km(7)}
+-- RelevanceDistance ::= ENUMERATED {lessThan50m(0), lessThan100m(1), lessThan200m(2), lessThan500m(3), lessThan1000m(4), lessThan5km(5), lessThan10km(6), over10km(7)}
-RelevanceTrafficDirection ::= ENUMERATED {allTrafficDirections(0), upstreamTraffic(1), downstreamTraffic(2), oppositeTraffic(3)}
+-- RelevanceTrafficDirection ::= ENUMERATED {allTrafficDirections(0), upstreamTraffic(1), downstreamTraffic(2), oppositeTraffic(3)}
-TransmissionInterval ::= INTEGER {oneMilliSecond(1), tenSeconds(10000)} (1..10000)
+-- TransmissionInterval ::= INTEGER {oneMilliSecond(1), tenSeconds(10000)} (1..10000)
-ValidityDuration ::= INTEGER {timeOfDetection(0), oneSecondAfterDetection(1)} (0..86400)
+-- ValidityDuration ::= INTEGER {timeOfDetection(0), oneSecondAfterDetection(1)} (0..86400)
ActionID ::= SEQUENCE {
originatingStationID StationID,
sequenceNumber SequenceNumber
}
-ItineraryPath ::= SEQUENCE SIZE(1..40) OF ReferencePosition
+-- ItineraryPath ::= SEQUENCE SIZE(1..40) OF ReferencePosition
ProtectedCommunicationZone ::= SEQUENCE {
protectedZoneType ProtectedZoneType,
@@ -465,23 +474,23 @@ ProtectedCommunicationZone ::= SEQUENCE {
...
}
-Traces ::= SEQUENCE SIZE(1..7) OF PathHistory
+-- Traces ::= SEQUENCE SIZE(1..7) OF PathHistory
-NumberOfOccupants ::= INTEGER {oneOccupant (1), unavailable(127)} (0 .. 127)
+-- NumberOfOccupants ::= INTEGER {oneOccupant (1), unavailable(127)} (0 .. 127)
SequenceNumber ::= INTEGER (0..65535)
-PositionOfPillars ::= SEQUENCE (SIZE(1..3, ...)) OF PosPillar
+-- PositionOfPillars ::= SEQUENCE (SIZE(1..3, ...)) OF PosPillar
-RestrictedTypes ::= SEQUENCE (SIZE(1..3, ...)) OF StationType
+-- RestrictedTypes ::= SEQUENCE (SIZE(1..3, ...)) OF StationType
-EventHistory::= SEQUENCE (SIZE(1..23)) OF EventPoint
+--EventHistory::= SEQUENCE (SIZE(1..23)) OF EventPoint
-EventPoint ::= SEQUENCE {
- eventPosition DeltaReferencePosition,
- eventDeltaTime PathDeltaTime OPTIONAL,
- informationQuality InformationQuality
-}
+--EventPoint ::= SEQUENCE {
+-- eventPosition DeltaReferencePosition,
+-- eventDeltaTime PathDeltaTime OPTIONAL,
+-- informationQuality InformationQuality
+--}
ProtectedCommunicationZonesRSU ::= SEQUENCE (SIZE(1..16)) OF ProtectedCommunicationZone
diff --git a/epan/dissectors/asn1/its/TIS_TPG_Transactions_Descriptions.asn b/epan/dissectors/asn1/its/TIS_TPG_Transactions_Descriptions.asn
index dc5607b6f1..b4df4800be 100644
--- a/epan/dissectors/asn1/its/TIS_TPG_Transactions_Descriptions.asn
+++ b/epan/dissectors/asn1/its/TIS_TPG_Transactions_Descriptions.asn
@@ -9,10 +9,9 @@ DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
-ItsPduHeader, CauseCode, ReferencePosition, Speed, Heading, TimestampIts, StationID, PhoneNumber, OpeningDaysHours, DigitalMap -- PATCH
-FROM ITS-Container {
- itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (1)
-};
+CauseCode, ItsPduHeader, ReferencePosition, Speed, Heading, TimestampIts, StationID, PhoneNumber, OpeningDaysHours, DigitalMap -- PATCH
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+;
diff --git a/epan/dissectors/asn1/its/VAM-PDU-Descriptions.asn b/epan/dissectors/asn1/its/VAM-PDU-Descriptions.asn
new file mode 100644
index 0000000000..1cd6021bf2
--- /dev/null
+++ b/epan/dissectors/asn1/its/VAM-PDU-Descriptions.asn
@@ -0,0 +1,98 @@
+-- Draft V0.0.4_2.2.1 - VAM TS 103 300-1 ASN.1 module
+-- Based on the official version available at @url https:
+-- Modified to import from the CDD module V2.1.1
+
+VAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5)
+ wg1(1) 103300 vam(1) major-version-3(3) minor-version-1(1)}
+DEFINITIONS AUTOMATIC TAGS ::=
+BEGIN
+
+ IMPORTS
+ AccelerationChangeIndication, BasicContainer, CartesianAngle, ClusterBreakupInfo,
+ ClusterJoinInfo, ClusterLeaveInfo, Curvature, CurvatureCalculationMode,
+ DeltaTimeQuarterSecond, GenerationDeltaTime, HeadingChangeIndication, ItsPduHeader, LanePosition,
+ LateralAcceleration, LongitudinalAcceleration, PathHistory, PathPredicted,
+ SequenceOfSafeDistanceIndication, SequenceOfTrajectoryInterceptionIndication,
+ SequenceOfTrajectoryInterceptionIndication, Speed, StabilityChangeIndication, StationId,
+ TrajectoryInterceptionIndication, VerticalAcceleration, VruClusterInformation, VruDeviceUsage,
+ VruEnvironment, VruExteriorLights, GeneralizedLanePosition, VruProfileAndSubprofile, VruMovementControl,
+ VruSizeClass, YawRate, Wgs84Angle
+ FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1) }
+ -- WITH SUCCESSORS
+ ;
+
+
+ VAM ::= SEQUENCE {
+ header ItsPduHeaderVam,
+ vam VruAwareness
+ }
+
+ ItsPduHeaderVam ::= ItsPduHeader(WITH COMPONENTS {..., protocolVersion(3), messageId(vam)})
+
+
+ VruAwareness ::= SEQUENCE {
+ generationDeltaTime GenerationDeltaTime,
+ vamParameters VamParameters
+ }
+
+ VamParameters ::= SEQUENCE {
+ basicContainer BasicContainer,
+ vruHighFrequencyContainer VruHighFrequencyContainer,
+ vruLowFrequencyContainer VruLowFrequencyContainer OPTIONAL,
+ vruClusterInformationContainer VruClusterInformationContainer OPTIONAL,
+ vruClusterOperationContainer VruClusterOperationContainer OPTIONAL,
+ vruMotionPredictionContainer VruMotionPredictionContainer OPTIONAL,
+ ...
+ }
+
+ VruHighFrequencyContainer ::= SEQUENCE {
+ heading Wgs84Angle,
+ speed Speed,
+ longitudinalAcceleration LongitudinalAcceleration,
+ curvature Curvature OPTIONAL,
+ curvatureCalculationMode CurvatureCalculationMode OPTIONAL,
+ yawRate YawRate OPTIONAL,
+ lateralAcceleration LateralAcceleration OPTIONAL,
+ verticalAcceleration VerticalAcceleration OPTIONAL,
+ vruLanePosition GeneralizedLanePosition OPTIONAL,
+ environment VruEnvironment OPTIONAL,
+ movementControl VruMovementControl OPTIONAL,
+ orientation Wgs84Angle OPTIONAL,
+ rollAngle CartesianAngle OPTIONAL,
+ deviceUsage VruDeviceUsage OPTIONAL,
+ ...
+ }
+
+ VruLowFrequencyContainer ::= SEQUENCE {
+ profileAndSubprofile VruProfileAndSubprofile,
+ sizeClass VruSizeClass OPTIONAL,
+ exteriorLights VruExteriorLights OPTIONAL,
+ ...
+ }
+
+ VruClusterInformationContainer::= SEQUENCE{
+ vruClusterInformation VruClusterInformation (WITH COMPONENTS{..., clusterId, clusterBoundingBoxShape PRESENT}),
+ ...
+ }
+
+
+ VruClusterOperationContainer ::= SEQUENCE {
+ clusterJoinInfo ClusterJoinInfo OPTIONAL,
+ clusterLeaveInfo ClusterLeaveInfo OPTIONAL,
+ clusterBreakupInfo ClusterBreakupInfo OPTIONAL,
+ clusterIdChangeTimeInfo DeltaTimeQuarterSecond OPTIONAL,
+ ...
+ }
+
+ VruMotionPredictionContainer ::= SEQUENCE {
+ pathHistory PathHistory OPTIONAL,
+ pathPrediction PathPredicted OPTIONAL,
+ safeDistance SequenceOfSafeDistanceIndication OPTIONAL,
+ trajectoryInterceptionIndication SequenceOfTrajectoryInterceptionIndication OPTIONAL,
+ accelerationChangeIndication AccelerationChangeIndication OPTIONAL,
+ headingChangeIndication HeadingChangeIndication OPTIONAL,
+ stabilityChangeIndication StabilityChangeIndication OPTIONAL,
+ ...
+ }
+
+END
diff --git a/epan/dissectors/asn1/its/VAM-Temp-Imports.asn b/epan/dissectors/asn1/its/VAM-Temp-Imports.asn
new file mode 100644
index 0000000000..a9eb9624b1
--- /dev/null
+++ b/epan/dissectors/asn1/its/VAM-Temp-Imports.asn
@@ -0,0 +1,122 @@
+-- Note: This module defines types that are intended to be updated within
+-- or added to the Common Data Dictionary. Defining the types in this
+-- module allows them to be used by the VAM before the CDD has been
+-- updated. Once the CDD has been updated, this module will also be
+-- updated to import the new types directly from the CDD, and the
+-- version number of this module will be incremented.
+
+VAM-Temp-Imports {itu-t(0) identified-organization(4) etsi(0) itsDomain(5)
+ wg1(1) ts(103300) part-3(3) temp-imports(255) version(1)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+ReferencePosition, SpeedConfidence, StationID, VehicleWidth
+FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-3 (3) minor-version-1 (1)}
+
+NodeOffsetPointXY, Offset-B10, Offset-B11, Offset-B12, Offset-B13,
+Offset-B14, Offset-B16
+FROM DSRC
+ {iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2)
+ version (2)}
+
+;
+
+-- identical to BasicContainer as used in CAM
+--BasicContainer ::= SEQUENCE {
+-- stationType StationType, - - from VAM-Temp-Imports
+-- referencePosition ReferencePosition, - - from ITS-Container
+-- ...
+--}
+
+--ItsPduHeader ::= SEQUENCE {
+-- protocolVersion INTEGER (0..255),
+-- messageID INTEGER{ denm(1), cam(2), poi(3), spatem(4), mapem(5), ivim(6), ev-rsr(7), tistpgtransaction(8), srem(9), ssem(10), evcsn(11), saem(12), rtcmem(13), vam(14) } (0..255), - - Mantis #7209, #7005
+-- stationID StationID
+--}
+
+
+
+
+--AreaCircular ::= SEQUENCE {
+-- nodeCenterPoint OffsetPoint OPTIONAL,
+-- radius Radius
+--}
+
+--AreaPolygon ::= SEQUENCE {
+-- polyPointList PolyPointList
+--}
+
+--AreaRectangle ::= SEQUENCE {
+-- nodeCenterPoint OffsetPoint OPTIONAL,
+-- semiMajorRangeLength SemiRangeLength,
+-- semiMinorRangeLength SemiRangeLength,
+-- semiMajorRangeOrientation WGS84AngleValue,
+-- semiHeight SemiRangeLength OPTIONAL
+--}
+
+--OffsetPoint ::= SEQUENCE{
+-- nodeOffsetPointXY NodeOffsetPointXY (WITH COMPONENTS {..., node-LatLon ABSENT, regional ABSENT}),
+-- nodeOffsetPointZ NodeOffsetPointZ OPTIONAL
+--}
+
+
+--NodeOffsetPointZ ::= CHOICE {
+-- node-Z1 Offset-B10, - - node is within 5.11m of last node
+-- node-Z2 Offset-B11, - - node is within 10.23m of last node
+-- node-Z3 Offset-B12, - - node is within 20.47m of last node
+-- node-Z4 Offset-B13, - - node is within 40.96m of last node
+-- node-Z5 Offset-B14, - - node is within 81.91m of last node
+-- node-Z6 Offset-B16 - - node is within 327.67m of last node
+--}
+
+
+--Radius ::= INTEGER {
+-- zeroPointOneMeter (1),
+-- oneMeter (10)
+--} (0..10000)
+
+
+-- PolyPointList ::= SEQUENCE (SIZE(3..16, ...)) OF OffsetPoint
+
+--SemiRangeLength ::= INTEGER {
+-- zeroPointOneMeter (1),
+-- oneMeter (10)
+--} (0..10000)
+
+--WGS84Angle ::= SEQUENCE {
+-- value WGS84AngleValue,
+-- confidence AngleConfidence
+--}
+
+--WGS84AngleValue ::= INTEGER {
+-- wgs84North (0),
+-- wgs84East (900),
+-- wgs84South (1800),
+-- wgs84West (2700),
+-- unavailable (3601)
+--} (0..3601)
+
+--AngleConfidence ::= INTEGER {
+-- zeroPointOneDegree (1), - - if the heading accuracy is equal to or less than 0,1 degree
+-- oneDegree (10),
+-- outOfRange (126), - - if the heading accuracy is out of range, i.e. greater than
+ -- 12,5 degrees. A corresponding reported angle value shall be
+ -- considered invalid and cannot be trusted.
+-- unavailable (127) - - if the heading accuracy information is not available
+--} (1..127)
+
+
+
+--StationType ::= INTEGER {
+-- unknown(0), pedestrian(1), cyclist(2), moped(3), motorcycle(4),
+-- passengerCar(5), bus(6), lightTruck(7), heavyTruck(8), trailer(9),
+-- specialVehicles(10), tram(11), lightVruVehicle(12), animals(13),
+-- roadSideUnit(15)
+--}
+--(0..255)
+
+END
diff --git a/epan/dissectors/asn1/its/its.cnf b/epan/dissectors/asn1/its/its.cnf
index 769c29360a..b02051970a 100644
--- a/epan/dissectors/asn1/its/its.cnf
+++ b/epan/dissectors/asn1/its/its.cnf
@@ -22,10 +22,11 @@ MAPEM
SPATEM
EV-RSR
RTCMEM
-CPM
-EvcsnPdu
+VAM
+ItsPduHeaderVam
+IMZM
-# Could be Language but size of Language bit string is 10 and DriverLanguage max is 15...
+EvcsnPdu
DriverLanguage
ChargingPower
StatusResponseCode
@@ -33,14 +34,29 @@ CurrentVehicleConfiguration
TpgLocation
CS5
DSRCmsgID
+VehicleLengthV2
+TrailerPresenceInformation
+CartesianAngularAccelerationComponent
+CartesianAngularAccelerationComponentValue
+AngularAccelerationConfidence
+StandardLength2B
+StandardLength9b
+PrecipitationIntensity
+ObjectFace
+BogiesCount
+BarometricPressure
+AxlesCount
+AirHumidity
+
#.NO_EMIT
Code-Units WITHOUT_VALS
+
#.MODULE
CAMv1-PDU-Descriptions camv1
CAM-PDU-Descriptions cam
DENMv1-PDU-Descriptions denmv1
-DENM-PDU-Descriptions denm
+DENM-PDU-Description denm
EVCSN-PDU-Descriptions evcsn
EV-RechargingSpotReservation-PDU-Descriptions evrsr
IVIM-PDU-Descriptions ivim
@@ -50,22 +66,30 @@ MAPEM-PDU-Descriptions mapem
SREM-PDU-Descriptions srem
SSEM-PDU-Descriptions ssem
AVIAEINumberingAndDataStructures anads
-ITS-Container its
+ITS-Container itsv2
ITS-ContainerV1 itsv1
-ElectronicRegistrationIdentificationVehicleDataModule erivdm
-CITSapplMgmtIDs csmid
+#ElectronicRegistrationIdentificationVehicleDataModule erivdm
+#CITSapplMgmtIDs csmid
EfcDsrcApplication dsrc_app
IVI ivi
GDD gdd
DSRC dsrc
-RTCMEM-PDU-Descriptions rtcmem
-CPM-PDU-Descriptions cpm
+RTCMEM-PDU-Descriptions rtcmem
+ETSI-ITS-CDD its
+CPM-OriginatingStationContainers cpm
+CPM-PDU-Descriptions cpm
+CPM-PerceivedObjectContainer cpm
+CPM-PerceptionRegionContainer cpm
+CPM-SensorInformationContainer cpm
+VAM-PDU-Descriptions vam
+IMZM-PDU-Descriptions imzm
+#VAM-Temp-Imports vam
#.END
#.PDU
-CoopAwareness
+CamPayload
CoopAwarenessV1
-DecentralizedEnvironmentalNotificationMessage
+DenmPayload
DecentralizedEnvironmentalNotificationMessageV1
EVChargingSpotNotificationPOIMessage
EV-RSR-MessageBody
@@ -78,6 +102,8 @@ SignalStatusMessage
RTCMcorrections
CollectivePerceptionMessage
ItsPduHeader
+VruAwareness
+InterferenceManagementZoneMessage
# AddGrpC regional extension
ConnectionManeuverAssist-addGrpC
ConnectionTrajectory-addGrpC
@@ -90,6 +116,12 @@ SignalStatusPackage-addGrpC
LaneAttributes-addGrpC
MovementEvent-addGrpC
RequestorDescription-addGrpC
+#CpmContainers
+OriginatingVehicleContainer
+OriginatingRsuContainer
+SensorInformationContainer
+PerceptionRegionContainer
+PerceivedObjectContainer
#.TYPE_RENAME
@@ -132,9 +164,18 @@ SignalRequestPackage/regional T_SignalRequestPackageRegional
SignalRequest/regional T_SignalRequestRegional
SignalStatusPackage/regional T_SignalStatusPackageRegional
SignalStatus/regional T_SignalStatusRegional
+PerceptionRegion/numberOfPerceivedObjects T_PerceptionRegionNumberOfPerceivedObjects
+PerceptionRegion/shadowingApplies T_PerceptionRegionShadowingApplies
+
+
#.END
#.FIELD_RENAME
+PerceptionRegion/perceptionRegionShape perceptionRegionPerceptionRegionShape
+PerceptionRegion/shadowingApplies perceptionRegionShadowingApplies
+PerceptionRegion/numberOfPerceivedObjects perceptionRegionNumberOfPerceivedObjects
+PerceptionRegion/perceptionRegionConfidence perceptionRegionPerceptionRegionConfidence
+
TisTpgDRM/location drmLocation
TisTpgTRM/location trmLocation
TisTpgTCM/location tcmLocation
@@ -287,11 +328,11 @@ Node-XY-28b/y n28bY
Node-XY-32b/y n32bY
#.TYPE_ATTR
-Longitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_longitude_fmt)
Latitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_latitude_fmt)
+Longitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_longitude_fmt)
AltitudeValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_altitude_fmt)
-DeltaLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_longitude_fmt)
-DeltaLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_latitude_fmt)
+DeltaLatitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_latitude_fmt)
+DeltaLongitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_longitude_fmt)
DeltaAltitude DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_delta_altitude_fmt)
PathDeltaTime DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_path_delta_time_fmt)
SemiAxisLength DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_sax_length_fmt)
@@ -299,6 +340,7 @@ HeadingValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_heading_value_fmt)
HeadingConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_heading_confidence_fmt)
SpeedValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_speed_value_fmt)
SpeedConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_speed_confidence_fmt)
+SpeedLimit DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_speed_limit_fmt)
VehicleLengthValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_vehicle_length_value_fmt)
VehicleWidth DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_vehicle_width_fmt)
LongitudinalAccelerationValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_acceleration_value_fmt)
@@ -309,6 +351,8 @@ CurvatureValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_curvature_value_fmt)
YawRateValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_yaw_rate_value_fmt)
SteeringWheelAngleValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_swa_value_fmt)
SteeringWheelAngleConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_swa_confidence_fmt)
+TimestampIts DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_timestamp_fmt)
+ValidityDuration DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(its_validity_duration_fmt)
GenerationDeltaTime STRINGS=NULL
@@ -328,10 +372,8 @@ ObjectConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_general_confi
DistanceValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_distance_value_fmt)
DistanceConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_distance_confidence_fmt)
SpeedValueExtended DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_speed_value_ext_fmt)
-CartesianAngleValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_cartesian_angle_value_fmt)
-AngleConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_angle_confidence_fmt)
ObjectDimensionValue DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_object_dimension_value_fmt)
-ObjectDimensionConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_object_dimension_confidence_fmt)
+#ObjectDimensionConfidence DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(cpm_object_dimension_confidence_fmt)
#.END
@@ -346,14 +388,14 @@ Position3D/elevation ABBREV=position3D.elevation
#.END
#.MAKE_DEFINES
-ItsPduHeader/messageID
+MessageId
#.END
#.MAKE_ENUM
RegionId
CauseCodeType
-#.FN_HDR CoopAwareness
+#.FN_HDR CamPayload
actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t);
col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "CAM");
col_set_str(actx->pinfo->cinfo, COL_INFO, "CAM");
@@ -365,7 +407,7 @@ CauseCodeType
col_set_str(actx->pinfo->cinfo, COL_INFO, "CAMv1");
#.END
-#.FN_HDR DecentralizedEnvironmentalNotificationMessage
+#.FN_HDR DenmPayload
actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t);
col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "DENM");
col_set_str(actx->pinfo->cinfo, COL_INFO, "DENM");
@@ -448,6 +490,17 @@ CauseCodeType
col_set_str(actx->pinfo->cinfo, COL_INFO, "CPM");
#.END
+#.FN_HDR InterferenceManagementZoneMessage
+ actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t);
+ col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "IMZM");
+ col_set_str(actx->pinfo->cinfo, COL_INFO, "IMZM");
+#.END
+
+#.FN_HDR VruAwareness
+ actx->private_data = (void*)wmem_new0(actx->pinfo->pool, its_private_data_t);
+ col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "VAM");
+ col_set_str(actx->pinfo->cinfo, COL_INFO, "VAM");
+#.END
#.FN_HDR ConnectionManeuverAssist-addGrpC
actx->private_data = wmem_new0(actx->pinfo->pool, its_private_data_t);
@@ -703,9 +756,10 @@ CauseCodeType
#.FN_PARS RegionId VAL_PTR = &((its_private_data_t*)actx->private_data)->region_id
-#.FN_PARS ItsPduHeader/protocolVersion VAL_PTR = &((its_header_t*)actx->private_data)->version
-#.FN_PARS ItsPduHeader/messageID VAL_PTR = &((its_header_t*)actx->private_data)->msgId
-#.FN_PARS StationID VAL_PTR = actx->private_data?&((its_header_t*)actx->private_data)->stationId:NULL
+#.FN_PARS ProtocolVersion VAL_PTR = &((its_header_t*)actx->private_data)->version
+#.FN_PARS MessageId VAL_PTR = &((its_header_t*)actx->private_data)->msgId
+#.FN_PARS StationId VAL_PTR = actx->private_data?&((its_header_t*)actx->private_data)->stationId:NULL
+#.FN_PARS CpmContainerId VAL_PTR = &((its_header_t*)actx->private_data)->CpmContainerId
#.FN_BODY ItsPduHeader
guint8 version = tvb_get_guint8(tvb, 0);
@@ -743,6 +797,8 @@ addGrpC RegionId
#.FN_PARS RegionalExtension/regExtValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_regextval_pdu
+#.FN_PARS WrappedCpmContainer/containerData FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_cpmcontainers_pdu
+
#.FN_BODY TypeOfReceptacle VAL_PTR=&parameter_tvb LEN_PTR=&len
tvbuff_t *parameter_tvb = NULL;
@@ -775,6 +831,20 @@ addGrpC RegionId
* 1111 Cable for Reserved
DC charging
*/
+#.END
+
+#.FN_BODY CountryCode VAL_PTR=&val_tvb
+ tvbuff_t *val_tvb = NULL;
+%(DEFAULT_BODY)s
+ append_country_code_fmt(actx->created_item, val_tvb);
+#.END
+
+#.FN_BODY Text/language VAL_PTR=&val_tvb
+ tvbuff_t *val_tvb = NULL;
+%(DEFAULT_BODY)s
+ append_country_code_fmt(actx->created_item, val_tvb);
+#.END
+
#.NO_EMIT WITH_VALS
#.END
@@ -792,6 +862,7 @@ $ITS-ContainerV1$HeadingValue
HeadingConfidence
SpeedValue
SpeedConfidence
+SpeedLimit
VehicleLengthValue
VehicleWidth
LongitudinalAccelerationValue
@@ -801,48 +872,20 @@ AccelerationConfidence
CurvatureValue
YawRateValue
SteeringWheelAngleValue
+ValidityDuration
+ObjectDimensionValue
SteeringWheelAngleConfidence
+TimestampIts
GenerationDeltaTime
-TimeOfMeasurement
-ClassConfidence
-FreeSpaceConfidence
-ObjectConfidence
-DistanceValue
-DistanceConfidence
-SpeedValueExtended
-CartesianAngleValue
-AngleConfidence
-ObjectDimensionValue
-ObjectDimensionConfidence
+
#.END
#.NO_EMIT WITHOUT_VALS
# Just keep the vals. hf are made manually and used in cause/subcause decoding
-PostCrashSubCauseCode
-VehicleBreakdownSubCauseCode
-DangerousSituationSubCauseCode
-DangerousEndOfQueueSubCauseCode
-RescueAndRecoveryWorkInProgressSubCauseCode
-SignalViolationSubCauseCode
-CollisionRiskSubCauseCode
-HazardousLocation-AnimalOnTheRoadSubCauseCode
-HazardousLocation-ObstacleOnTheRoadSubCauseCode
-HazardousLocation-SurfaceConditionSubCauseCode
-HazardousLocation-DangerousCurveSubCauseCode
-EmergencyVehicleApproachingSubCauseCode
-HumanProblemSubCauseCode
-StationaryVehicleSubCauseCode
-SlowVehicleSubCauseCode
-AdverseWeatherCondition-PrecipitationSubCauseCode
-AdverseWeatherCondition-VisibilitySubCauseCode
-AdverseWeatherCondition-AdhesionSubCauseCode
-AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode
-WrongWayDrivingSubCauseCode
-HumanPresenceOnTheRoadSubCauseCode
-AccidentSubCauseCode
-TrafficConditionSubCauseCode
+
#.END
+
#.FN_PARS CauseCodeType VAL_PTR = &((its_private_data_t*)actx->private_data)->cause_code
#.FN_BODY SubCauseCodeType
diff --git a/epan/dissectors/asn1/its/packet-its-template.c b/epan/dissectors/asn1/its/packet-its-template.c
index 58a6856620..959cd9f6e1 100644
--- a/epan/dissectors/asn1/its/packet-its-template.c
+++ b/epan/dissectors/asn1/its/packet-its-template.c
@@ -107,90 +107,96 @@
void proto_reg_handoff_its(void);
void proto_register_its(void);
-static expert_field ei_its_no_sub_dis = EI_INIT;
+static dissector_handle_t its_handle;
+
+static expert_field ei_its_no_sub_dis;
// TAP
-static int its_tap = -1;
+static int its_tap;
// Protocols
-static int proto_its = -1;
-static int proto_its_denm = -1;
-static int proto_its_denmv1 = -1;
-static int proto_its_cam = -1;
-static int proto_its_camv1 = -1;
-static int proto_its_evcsn = -1;
-static int proto_its_evrsr = -1;
-static int proto_its_ivimv1 = -1;
-static int proto_its_ivim = -1;
-static int proto_its_tistpg = -1;
-static int proto_its_ssem = -1;
-static int proto_its_srem = -1;
-static int proto_its_rtcmem = -1;
-static int proto_its_mapemv1 = -1;
-static int proto_its_mapem = -1;
-static int proto_its_spatemv1 = -1;
-static int proto_its_spatem = -1;
-static int proto_its_cpm = -1;
-static int proto_addgrpc = -1;
+static int proto_its;
+static int proto_its_denm;
+static int proto_its_denmv1;
+static int proto_its_cam;
+static int proto_its_camv1;
+static int proto_its_evcsn;
+static int proto_its_evrsr;
+static int proto_its_ivimv1;
+static int proto_its_ivim;
+static int proto_its_tistpg;
+static int proto_its_ssem;
+static int proto_its_srem;
+static int proto_its_rtcmemv1;
+static int proto_its_rtcmem;
+static int proto_its_mapemv1;
+static int proto_its_mapem;
+static int proto_its_spatemv1;
+static int proto_its_spatem;
+static int proto_its_cpm;
+static int proto_its_imzm;
+static int proto_its_vam;
+static int proto_addgrpc;
/*
* DENM SSP
*/
-static int hf_denmssp_version = -1;
-static int hf_denmssp_flags = -1;
-static int hf_denmssp_trafficCondition = -1;
-static int hf_denmssp_accident = -1;
-static int hf_denmssp_roadworks = -1;
-static int hf_denmssp_adverseWeatherConditionAdhesion = -1;
-static int hf_denmssp_hazardousLocationSurfaceCondition = -1;
-static int hf_denmssp_hazardousLocationObstacleOnTheRoad = -1;
-static int hf_denmssp_hazardousLocationAnimalOnTheRoad = -1;
-static int hf_denmssp_humanPresenceOnTheRoad = -1;
-static int hf_denmssp_wrongWayDriving = -1;
-static int hf_denmssp_rescueAndRecoveryWorkInProgress = -1;
-static int hf_denmssp_ExtremeWeatherCondition = -1;
-static int hf_denmssp_adverseWeatherConditionVisibility = -1;
-static int hf_denmssp_adverseWeatherConditionPrecipitation = -1;
-static int hf_denmssp_slowVehicle = -1;
-static int hf_denmssp_dangerousEndOfQueue = -1;
-static int hf_denmssp_vehicleBreakdown = -1;
-static int hf_denmssp_postCrash = -1;
-static int hf_denmssp_humanProblem = -1;
-static int hf_denmssp_stationaryVehicle = -1;
-static int hf_denmssp_emergencyVehicleApproaching = -1;
-static int hf_denmssp_hazardousLocationDangerousCurve = -1;
-static int hf_denmssp_collisionRisk = -1;
-static int hf_denmssp_signalViolation = -1;
-static int hf_denmssp_dangerousSituation = -1;
+static int hf_denmssp_version;
+static int hf_denmssp_flags;
+static int hf_denmssp_trafficCondition;
+static int hf_denmssp_accident;
+static int hf_denmssp_roadworks;
+static int hf_denmssp_adverseWeatherConditionAdhesion;
+static int hf_denmssp_hazardousLocationSurfaceCondition;
+static int hf_denmssp_hazardousLocationObstacleOnTheRoad;
+static int hf_denmssp_hazardousLocationAnimalOnTheRoad;
+static int hf_denmssp_humanPresenceOnTheRoad;
+static int hf_denmssp_wrongWayDriving;
+static int hf_denmssp_rescueAndRecoveryWorkInProgress;
+static int hf_denmssp_ExtremeWeatherCondition;
+static int hf_denmssp_adverseWeatherConditionVisibility;
+static int hf_denmssp_adverseWeatherConditionPrecipitation;
+static int hf_denmssp_slowVehicle;
+static int hf_denmssp_dangerousEndOfQueue;
+static int hf_denmssp_vehicleBreakdown;
+static int hf_denmssp_postCrash;
+static int hf_denmssp_humanProblem;
+static int hf_denmssp_stationaryVehicle;
+static int hf_denmssp_emergencyVehicleApproaching;
+static int hf_denmssp_hazardousLocationDangerousCurve;
+static int hf_denmssp_collisionRisk;
+static int hf_denmssp_signalViolation;
+static int hf_denmssp_dangerousSituation;
/*
* CAM SSP
*/
-static int hf_camssp_version = -1;
-static int hf_camssp_flags = -1;
-static int hf_camssp_cenDsrcTollingZone = -1;
-static int hf_camssp_publicTransport = -1;
-static int hf_camssp_specialTransport = -1;
-static int hf_camssp_dangerousGoods = -1;
-static int hf_camssp_roadwork = -1;
-static int hf_camssp_rescue = -1;
-static int hf_camssp_emergency = -1;
-static int hf_camssp_safetyCar = -1;
-static int hf_camssp_closedLanes = -1;
-static int hf_camssp_requestForRightOfWay = -1;
-static int hf_camssp_requestForFreeCrossingAtATrafficLight = -1;
-static int hf_camssp_noPassing = -1;
-static int hf_camssp_noPassingForTrucks = -1;
-static int hf_camssp_speedLimit = -1;
-static int hf_camssp_reserved = -1;
-
-static gint ett_denmssp_flags = -1;
-static gint ett_camssp_flags = -1;
+static int hf_camssp_version;
+static int hf_camssp_flags;
+static int hf_camssp_cenDsrcTollingZone;
+static int hf_camssp_publicTransport;
+static int hf_camssp_specialTransport;
+static int hf_camssp_dangerousGoods;
+static int hf_camssp_roadwork;
+static int hf_camssp_rescue;
+static int hf_camssp_emergency;
+static int hf_camssp_safetyCar;
+static int hf_camssp_closedLanes;
+static int hf_camssp_requestForRightOfWay;
+static int hf_camssp_requestForFreeCrossingAtATrafficLight;
+static int hf_camssp_noPassing;
+static int hf_camssp_noPassingForTrucks;
+static int hf_camssp_speedLimit;
+static int hf_camssp_reserved;
+
+static gint ett_denmssp_flags;
+static gint ett_camssp_flags;
// Subdissectors
static dissector_table_t its_version_subdissector_table;
static dissector_table_t its_msgid_subdissector_table;
static dissector_table_t regionid_subdissector_table;
+static dissector_table_t cpmcontainer_subdissector_table;
static dissector_table_t cam_pt_activation_table;
typedef struct its_private_data {
@@ -204,7 +210,7 @@ typedef struct its_pt_activation_data {
tvbuff_t *data;
} its_pt_activation_data_t;
-// Specidic dissector for content of open type for regional extensions
+// Specific dissector for content of open type for regional extensions
static int dissect_regextval_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
its_private_data_t *re = (its_private_data_t*)data;
@@ -214,6 +220,16 @@ static int dissect_regextval_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
return tvb_captured_length(tvb);
}
+// Specific dissector for content of open type for regional extensions
+static int dissect_cpmcontainers_pdu(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, void* data _U_)
+{
+ its_header_t* hdr = (its_header_t*)data;
+ // XXX What to do when region_id = noRegion? Test length is zero?
+ if (!dissector_try_uint_new(cpmcontainer_subdissector_table, hdr->CpmContainerId, tvb, pinfo, tree, FALSE, NULL))
+ call_data_dissector(tvb, pinfo, tree);
+ return tvb_captured_length(tvb);
+}
+
static int dissect_denmssp_pdu(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
static int * const denmssp_flags[] = {
@@ -286,62 +302,36 @@ static int dissect_camssp_pdu(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree
// Generated by asn2wrs
#include "packet-its-hf.c"
-// CauseCode/SubCauseCode management
-static int hf_its_trafficConditionSubCauseCode = -1;
-static int hf_its_accidentSubCauseCode = -1;
-static int hf_its_roadworksSubCauseCode = -1;
-static int hf_its_adverseWeatherCondition_PrecipitationSubCauseCode = -1;
-static int hf_its_adverseWeatherCondition_VisibilitySubCauseCode = -1;
-static int hf_its_adverseWeatherCondition_AdhesionSubCauseCode = -1;
-static int hf_its_adverseWeatherCondition_ExtremeWeatherConditionSubCauseCode = -1;
-static int hf_its_hazardousLocation_AnimalOnTheRoadSubCauseCode = -1;
-static int hf_its_hazardousLocation_ObstacleOnTheRoadSubCauseCode = -1;
-static int hf_its_hazardousLocation_SurfaceConditionSubCauseCode = -1;
-static int hf_its_hazardousLocation_DangerousCurveSubCauseCode = -1;
-static int hf_its_humanPresenceOnTheRoadSubCauseCode = -1;
-static int hf_its_wrongWayDrivingSubCauseCode = -1;
-static int hf_its_rescueAndRecoveryWorkInProgressSubCauseCode = -1;
-static int hf_its_slowVehicleSubCauseCode = -1;
-static int hf_its_dangerousEndOfQueueSubCauseCode = -1;
-static int hf_its_vehicleBreakdownSubCauseCode = -1;
-static int hf_its_postCrashSubCauseCode = -1;
-static int hf_its_humanProblemSubCauseCode = -1;
-static int hf_its_stationaryVehicleSubCauseCode = -1;
-static int hf_its_emergencyVehicleApproachingSubCauseCode = -1;
-static int hf_its_collisionRiskSubCauseCode = -1;
-static int hf_its_signalViolationSubCauseCode = -1;
-static int hf_its_dangerousSituationSubCauseCode = -1;
-
-static gint ett_its = -1;
+static gint ett_its;
#include "packet-its-ett.c"
// Deal with cause/subcause code management
-struct { CauseCodeType_enum cause; int* hf; } cause_to_subcause[] = {
- { trafficCondition, &hf_its_trafficConditionSubCauseCode },
- { accident, &hf_its_accidentSubCauseCode },
- { roadworks, &hf_its_roadworksSubCauseCode },
- { adverseWeatherCondition_Precipitation, &hf_its_adverseWeatherCondition_PrecipitationSubCauseCode },
- { adverseWeatherCondition_Visibility, &hf_its_adverseWeatherCondition_VisibilitySubCauseCode },
- { adverseWeatherCondition_Adhesion, &hf_its_adverseWeatherCondition_AdhesionSubCauseCode },
- { adverseWeatherCondition_ExtremeWeatherCondition, &hf_its_adverseWeatherCondition_ExtremeWeatherConditionSubCauseCode },
- { hazardousLocation_AnimalOnTheRoad, &hf_its_hazardousLocation_AnimalOnTheRoadSubCauseCode },
- { hazardousLocation_ObstacleOnTheRoad, &hf_its_hazardousLocation_ObstacleOnTheRoadSubCauseCode },
- { hazardousLocation_SurfaceCondition, &hf_its_hazardousLocation_SurfaceConditionSubCauseCode },
- { hazardousLocation_DangerousCurve, &hf_its_hazardousLocation_DangerousCurveSubCauseCode },
- { humanPresenceOnTheRoad, &hf_its_humanPresenceOnTheRoadSubCauseCode },
- { wrongWayDriving, &hf_its_wrongWayDrivingSubCauseCode },
- { rescueAndRecoveryWorkInProgress, &hf_its_rescueAndRecoveryWorkInProgressSubCauseCode },
- { slowVehicle, &hf_its_slowVehicleSubCauseCode },
- { dangerousEndOfQueue, &hf_its_dangerousEndOfQueueSubCauseCode },
- { vehicleBreakdown, &hf_its_vehicleBreakdownSubCauseCode },
- { postCrash, &hf_its_postCrashSubCauseCode },
- { humanProblem, &hf_its_humanProblemSubCauseCode },
- { stationaryVehicle, &hf_its_stationaryVehicleSubCauseCode },
- { emergencyVehicleApproaching, &hf_its_emergencyVehicleApproachingSubCauseCode },
- { collisionRisk, &hf_its_collisionRiskSubCauseCode },
- { signalViolation, &hf_its_signalViolationSubCauseCode },
- { dangerousSituation, &hf_its_dangerousSituationSubCauseCode },
+static struct { CauseCodeType_enum cause; int* hf; } cause_to_subcause[] = {
+ { trafficCondition, &hf_its_trafficCondition1 },
+ { accident, &hf_its_accident2 },
+ { roadworks, &hf_its_roadworks3 },
+ { adverseWeatherCondition_Precipitation, &hf_its_adverseWeatherCondition_Precipitation19 },
+ { adverseWeatherCondition_Visibility, &hf_its_adverseWeatherCondition_Visibility18 },
+ { adverseWeatherCondition_Adhesion, &hf_its_adverseWeatherCondition_Adhesion6 },
+ { adverseWeatherCondition_ExtremeWeatherCondition, &hf_its_adverseWeatherCondition_ExtremeWeatherCondition17 },
+ { hazardousLocation_AnimalOnTheRoad, &hf_its_hazardousLocation_AnimalOnTheRoad11 },
+ { hazardousLocation_ObstacleOnTheRoad, &hf_its_hazardousLocation_ObstacleOnTheRoad10 },
+ { hazardousLocation_SurfaceCondition, &hf_its_hazardousLocation_SurfaceCondition9 },
+ { hazardousLocation_DangerousCurve, &hf_its_hazardousLocation_DangerousCurve96 },
+ { humanPresenceOnTheRoad, &hf_its_humanPresenceOnTheRoad12 },
+ { wrongWayDriving, &hf_its_wrongWayDriving14 },
+ { rescueAndRecoveryWorkInProgress, &hf_its_rescueAndRecoveryWorkInProgress15 },
+ { slowVehicle, &hf_its_slowVehicle26 },
+ { dangerousEndOfQueue, &hf_its_dangerousEndOfQueue27 },
+ { vehicleBreakdown, &hf_its_vehicleBreakdown91 },
+ { postCrash, &hf_its_postCrash92 },
+ { humanProblem, &hf_its_humanProblem93 },
+ { stationaryVehicle, &hf_its_stationaryVehicle94 },
+ { emergencyVehicleApproaching, &hf_its_emergencyVehicleApproaching95 },
+ { collisionRisk, &hf_its_collisionRisk97 },
+ { signalViolation, &hf_its_signalViolation98 },
+ { dangerousSituation, &hf_its_dangerousSituation99 },
{ reserved, NULL },
};
@@ -356,6 +346,21 @@ find_subcause_from_cause(CauseCodeType_enum cause)
return cause_to_subcause[idx].hf?cause_to_subcause[idx].hf:&hf_its_subCauseCode;
}
+static unsigned char ita2_ascii[32] = {
+ '\0', 'T', '\r', 'O', ' ', 'H', 'N', 'M', '\n', 'L', 'R', 'G', 'I', 'P', 'C', 'V',
+ 'E', 'Z', 'D', 'B', 'S', 'Y', 'F', 'X', 'A', 'W', 'J', '\0', 'U', 'Q', 'K'
+};
+
+static void
+append_country_code_fmt(proto_item *item, tvbuff_t *val_tvb)
+{
+ guint16 v = tvb_get_guint16(val_tvb, 0, ENC_BIG_ENDIAN);
+ v >>= 6; /* 10 bits */
+ guint16 v1 = (v >> 5) & 0x1F;
+ guint16 v2 = v & 0x1F;
+ proto_item_append_text(item, " - %c%c", ita2_ascii[v1], ita2_ascii[v2]);
+}
+
#include "packet-its-fn.c"
static void
@@ -363,9 +368,9 @@ its_latitude_fmt(gchar *s, guint32 v)
{
gint32 lat = (gint32)v;
if (lat == 900000001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lat);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lat);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
abs(lat) / 10000000,
abs(lat) % 10000000 * 6 / 1000000,
abs(lat) % 10000000 * 6 % 1000000 * 6.0 / 100000.0,
@@ -379,9 +384,9 @@ its_longitude_fmt(gchar *s, guint32 v)
{
gint32 lng = (gint32)v;
if (lng == 1800000001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lng);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lng);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
abs(lng) / 10000000,
abs(lng) % 10000000 * 6 / 1000000,
abs(lng) % 10000000 * 6 % 1000000 * 6.0 / 100000.0,
@@ -395,9 +400,9 @@ its_altitude_fmt(gchar *s, guint32 v)
{
gint32 alt = (gint32)v;
if (alt == 800001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", alt);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", alt);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", alt * 0.01, alt);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", alt * 0.01, alt);
}
}
@@ -406,9 +411,9 @@ its_delta_latitude_fmt(gchar *s, guint32 v)
{
gint32 lat = (gint32)v;
if (lat == 131072) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lat);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lat);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
abs(lat) / 10000000,
abs(lat) % 10000000 * 6 / 1000000,
abs(lat) % 10000000 * 6 % 1000000 * 6.0 / 100000.0,
@@ -422,9 +427,9 @@ its_delta_longitude_fmt(gchar *s, guint32 v)
{
gint32 lng = (gint32)v;
if (lng == 131072) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lng);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", lng);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%u°%u'%.3f\"%c (%d)",
abs(lng) / 10000000,
abs(lng) % 10000000 * 6 / 1000000,
abs(lng) % 10000000 * 6 % 1000000 * 6.0 / 100000.0,
@@ -438,9 +443,9 @@ its_delta_altitude_fmt(gchar *s, guint32 v)
{
gint32 alt = (gint32)v;
if (alt == 12800) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", alt);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", alt);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", alt * 0.01, alt);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", alt * 0.01, alt);
}
}
@@ -448,7 +453,7 @@ static void
its_path_delta_time_fmt(gchar *s, guint32 v)
{
gint32 dt = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fs (%d)", dt * 0.01, dt);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fs (%d)", dt * 0.01, dt);
}
@@ -456,11 +461,11 @@ static void
its_sax_length_fmt(gchar *s, guint32 v)
{
if (v == 4095) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 4094) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", v * 0.01, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", v * 0.01, v);
}
}
@@ -469,9 +474,9 @@ its_heading_value_fmt(gchar *s, guint32 v)
{
const gchar *p = try_val_to_str(v, VALS(its_HeadingValue_vals));
if (p) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%s (%d)", p, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%s (%d)", p, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 0.1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 0.1, v);
}
}
@@ -479,11 +484,11 @@ static void
its_heading_confidence_fmt(gchar *s, guint32 v)
{
if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 0.1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 0.1, v);
}
}
@@ -491,12 +496,12 @@ static void
its_speed_value_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "standstill (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "standstill (%d)", v);
} else if (v == 16383) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else {
double vms = v * 0.01;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s = %.1fkm/h (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s = %.1fkm/h (%d)",
vms, vms * 3.6, v);
}
}
@@ -505,23 +510,29 @@ static void
its_speed_confidence_fmt(gchar *s, guint32 v)
{
if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s (%d)", v * 0.01, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s (%d)", v * 0.01, v);
}
}
static void
+its_speed_limit_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%dkm/h (%d)", v, v);
+}
+
+static void
its_vehicle_length_value_fmt(gchar *s, guint32 v)
{
if (v == 1023) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 1022) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%d)", v * 0.1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%d)", v * 0.1, v);
}
}
@@ -529,11 +540,11 @@ static void
its_vehicle_width_fmt(gchar *s, guint32 v)
{
if (v == 62) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 61) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%d)", v * 0.1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%d)", v * 0.1, v);
}
}
@@ -542,9 +553,9 @@ its_acceleration_value_fmt(gchar *s, guint32 v)
{
gint32 acc = (gint32)v;
if (acc == 161) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fm/s² (%d)", acc * 0.1, acc);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fm/s² (%d)", acc * 0.1, acc);
}
}
@@ -552,11 +563,11 @@ static void
its_acceleration_confidence_fmt(gchar *s, guint32 v)
{
if (v == 102) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 101) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fm/s² (%d)", v * 0.1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fm/s² (%d)", v * 0.1, v);
}
}
@@ -565,11 +576,11 @@ its_curvature_value_fmt(gchar *s, guint32 v)
{
gint32 curv = (gint32)v;
if (curv == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "straight (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "straight (%d)", v);
} else if (curv == 30001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.3fm %s (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%.3fm %s (%d)",
30000.0 / curv,
(curv > 0) ? "left" : "right",
curv);
@@ -581,11 +592,11 @@ its_yaw_rate_value_fmt(gchar *s, guint32 v)
{
gint32 yaw = (gint32)v;
if (yaw == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "straight (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "straight (%d)", v);
} else if (yaw == 32767) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2f°/s %s (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2f°/s %s (%d)",
yaw * 0.01,
(yaw > 0) ? "left" : "right",
yaw);
@@ -597,11 +608,11 @@ its_swa_value_fmt(gchar *s, guint32 v)
{
gint32 swa = (gint32)v;
if (swa == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "straight (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "straight (%d)", v);
} else if (swa == 512) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f° %s (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f° %s (%d)",
swa * 1.5,
(swa > 0) ? "left" : "right",
swa);
@@ -612,11 +623,11 @@ static void
its_swa_confidence_fmt(gchar *s, guint32 v)
{
if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if (v == 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 1.5, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 1.5, v);
}
}
@@ -624,9 +635,9 @@ static void
dsrc_moi_fmt(gchar *s, guint32 v)
{
if (v == 527040) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "invalid (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "invalid (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ud %02u:%02u (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%ud %02u:%02u (%d)",
v / 1440, v % 1440 / 60, v % 60, v);
}
}
@@ -635,11 +646,11 @@ static void
dsrc_dsecond_fmt(gchar *s, guint32 v)
{
if (v == 65535) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else if ((61000 <= v) && (v <= 65534)) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "reserved (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "reserved (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%02u.%03u (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%02u.%03u (%d)",
v / 1000, v % 1000, v);
}
}
@@ -648,15 +659,32 @@ static void
dsrc_time_mark_fmt(gchar *s, guint32 v)
{
if (v == 36001) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unknown (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unknown (%d)", v);
} else if (v == 36000) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "moreThanHour (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "moreThanHour (%d)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%02u:%02u.%u (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%02u:%02u.%u (%d)",
v / 600, v % 600 / 10, v % 10, v);
}
}
+static void
+its_timestamp_fmt(gchar *s, guint64 v)
+{
+ time_t secs = v / 1000 + 1072915200 - 5;
+ struct tm *tm = gmtime(&secs);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u-%02u-%02u %02u:%02u:%02u.%03u (%" PRIu64 ")",
+ tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, (guint32)(v % 1000), v
+ );
+}
+
+static void
+its_validity_duration_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%02u:%02u:%02u (%d)",
+ v / 3600, v % 3600 / 60, v % 60, v);
+}
+
static const value_string dsrc_TimeIntervalConfidence_vals[] = {
{ 0, "21% probability" },
{ 1, "36% probability" },
@@ -681,10 +709,10 @@ static void
dsrc_velocity_fmt(gchar *s, guint32 v)
{
if (v == 8191) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
} else {
double vms = v * 0.02;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s = %ukm/h (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s = %ukm/h (%d)",
vms, (int)lround(vms * 3.6), v);
}
}
@@ -692,7 +720,7 @@ dsrc_velocity_fmt(gchar *s, guint32 v)
static void
dsrc_angle_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2f° (%d)", v * 0.0125, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2f° (%d)", v * 0.0125, v);
}
static void
@@ -700,102 +728,35 @@ dsrc_delta_time_fmt(gchar *s, guint32 v)
{
gint32 dt = (gint32)v;
if (dt == -122) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unknown (%d)", dt);
+ snprintf(s, ITEM_LABEL_LENGTH, "unknown (%d)", dt);
} else if (dt == -121) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "moreThanMinus20Minutes (%d)", dt);
+ snprintf(s, ITEM_LABEL_LENGTH, "moreThanMinus20Minutes (%d)", dt);
} else if (dt == 121) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "moreThanPlus20Minutes (%d)", dt);
+ snprintf(s, ITEM_LABEL_LENGTH, "moreThanPlus20Minutes (%d)", dt);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%s%d:%02u (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%s%d:%02u (%d)",
(dt < 0) ? "-" : "", abs(dt) / 6, abs(dt) % 6 * 10, dt);
}
}
-static void
-cpm_general_confidence_fmt(gchar *s, guint32 v)
-{
- if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unknown (%u)", v);
- } else if (v == 101) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%u)", v);
- } else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u%% (%u)", v, v);
- }
-}
-
-static void
-cpm_distance_value_fmt(gchar *s, guint32 v)
-{
- gint32 sv = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", sv * 0.01, sv);
-}
-
-static void
-cpm_distance_confidence_fmt(gchar *s, guint32 v)
-{
- if (v == 102) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
- } else if (v == 101) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
- } else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", v * 0.01, v);
- }
-}
-
-static void
-cpm_speed_value_ext_fmt(gchar *s, guint32 v)
-{
- gint32 sv = (gint32)v;
- if (sv == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "standstill (%d)", sv);
- } else if (sv == 16383) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", sv);
- } else {
- double vms = sv * 0.01;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm/s = %.1fkm/h (%d)",
- vms, vms * 3.6, sv);
- }
-}
-
-static void
-cpm_cartesian_angle_value_fmt(gchar *s, guint32 v)
-{
- if (v == 3601) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
- } else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 0.1, v);
- }
-}
-
-static void
-cpm_angle_confidence_fmt(gchar *s, guint32 v)
-{
- if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
- } else if (v == 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
- } else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f° (%d)", v * 0.1, v);
- }
-}
static void
cpm_object_dimension_value_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%d)", v * 0.1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%d)", v * 0.1, v);
}
-static void
-cpm_object_dimension_confidence_fmt(gchar *s, guint32 v)
-{
- if (v == 102) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
- } else if (v == 101) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
- } else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", v * 0.01, v);
- }
-}
+//static void
+//cpm_object_dimension_confidence_fmt(gchar *s, guint32 v)
+//{
+// if (v == 102) {
+// snprintf(s, ITEM_LABEL_LENGTH, "unavailable (%d)", v);
+// } else if (v == 101) {
+// snprintf(s, ITEM_LABEL_LENGTH, "outOfRange (%d)", v);
+// } else {
+// snprintf(s, ITEM_LABEL_LENGTH, "%.2fm (%d)", v * 0.01, v);
+// }
+//}
static int
dissect_its_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
@@ -816,15 +777,15 @@ dissect_its_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
static void
its_msgid_prompt(packet_info *pinfo, gchar *result)
{
- guint32 msgid = GPOINTER_TO_UINT(p_get_proto_data(pinfo->pool, pinfo, hf_its_messageID, pinfo->curr_layer_num));
+ guint32 msgid = GPOINTER_TO_UINT(p_get_proto_data(pinfo->pool, pinfo, hf_its_messageId, pinfo->curr_layer_num));
- g_snprintf(result, MAX_DECODE_AS_PROMPT_LEN, "MsgId (%s%u)", UTF8_RIGHTWARDS_ARROW, msgid);
+ snprintf(result, MAX_DECODE_AS_PROMPT_LEN, "MsgId (%s%u)", UTF8_RIGHTWARDS_ARROW, msgid);
}
static gpointer
its_msgid_value(packet_info *pinfo)
{
- return p_get_proto_data(pinfo->pool, pinfo, hf_its_messageID, pinfo->curr_layer_num);
+ return p_get_proto_data(pinfo->pool, pinfo, hf_its_messageId, pinfo->curr_layer_num);
}
// Registration of protocols
@@ -833,102 +794,6 @@ void proto_register_its(void)
static hf_register_info hf_its[] = {
#include "packet-its-hfarr.c"
- { &hf_its_roadworksSubCauseCode,
- { "roadworksSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_RoadworksSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_postCrashSubCauseCode,
- { "postCrashSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_PostCrashSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_vehicleBreakdownSubCauseCode,
- { "vehicleBreakdownSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_VehicleBreakdownSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_dangerousSituationSubCauseCode,
- { "dangerousSituationSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_DangerousSituationSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_dangerousEndOfQueueSubCauseCode,
- { "dangerousEndOfQueueSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_DangerousEndOfQueueSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_rescueAndRecoveryWorkInProgressSubCauseCode,
- { "rescueAndRecoveryWorkInProgressSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_RescueAndRecoveryWorkInProgressSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_signalViolationSubCauseCode,
- { "signalViolationSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_SignalViolationSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_collisionRiskSubCauseCode,
- { "collisionRiskSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_CollisionRiskSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_hazardousLocation_AnimalOnTheRoadSubCauseCode,
- { "hazardousLocation_AnimalOnTheRoadSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_HazardousLocation_AnimalOnTheRoadSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_hazardousLocation_ObstacleOnTheRoadSubCauseCode,
- { "hazardousLocation_ObstacleOnTheRoadSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_HazardousLocation_ObstacleOnTheRoadSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_hazardousLocation_SurfaceConditionSubCauseCode,
- { "hazardousLocation_SurfaceConditionSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_HazardousLocation_SurfaceConditionSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_hazardousLocation_DangerousCurveSubCauseCode,
- { "hazardousLocation_DangerousCurveSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_HazardousLocation_DangerousCurveSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_emergencyVehicleApproachingSubCauseCode,
- { "emergencyVehicleApproachingSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_EmergencyVehicleApproachingSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_humanProblemSubCauseCode,
- { "humanProblemSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_HumanProblemSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_stationaryVehicleSubCauseCode,
- { "stationaryVehicleSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_StationaryVehicleSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_slowVehicleSubCauseCode,
- { "slowVehicleSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_SlowVehicleSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_adverseWeatherCondition_PrecipitationSubCauseCode,
- { "adverseWeatherCondition_PrecipitationSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_AdverseWeatherCondition_PrecipitationSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_adverseWeatherCondition_VisibilitySubCauseCode,
- { "adverseWeatherCondition_VisibilitySubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_AdverseWeatherCondition_VisibilitySubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_adverseWeatherCondition_AdhesionSubCauseCode,
- { "adverseWeatherCondition_AdhesionSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_AdverseWeatherCondition_AdhesionSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_adverseWeatherCondition_ExtremeWeatherConditionSubCauseCode,
- { "adverseWeatherCondition_ExtremeWeatherConditionSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_AdverseWeatherCondition_ExtremeWeatherConditionSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_wrongWayDrivingSubCauseCode,
- { "wrongWayDrivingSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_WrongWayDrivingSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_humanPresenceOnTheRoadSubCauseCode,
- { "humanPresenceOnTheRoadSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_HumanPresenceOnTheRoadSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_accidentSubCauseCode,
- { "accidentSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_AccidentSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
- { &hf_its_trafficConditionSubCauseCode,
- { "trafficConditionSubCauseCode", "its.subCauseCode",
- FT_UINT32, BASE_DEC, VALS(its_TrafficConditionSubCauseCode_vals), 0,
- "SubCauseCodeType", HFILL }},
/*
* DENM SSP
@@ -1053,12 +918,13 @@ void proto_register_its(void)
expert_register_field_array(expert_its, ei, array_length(ei));
- register_dissector("its", dissect_its_PDU, proto_its);
+ its_handle = register_dissector("its", dissect_its_PDU, proto_its);
// Register subdissector table
its_version_subdissector_table = register_dissector_table("its.version", "ITS version", proto_its, FT_UINT8, BASE_DEC);
its_msgid_subdissector_table = register_dissector_table("its.msg_id", "ITS message id", proto_its, FT_UINT32, BASE_DEC);
regionid_subdissector_table = register_dissector_table("dsrc.regionid", "DSRC RegionId", proto_its, FT_UINT32, BASE_DEC);
+ cpmcontainer_subdissector_table = register_dissector_table("cpm.container", "CPM Containers id", proto_its, FT_UINT32, BASE_DEC);
cam_pt_activation_table = register_dissector_table("cam.ptat", "CAM PtActivationType", proto_its, FT_UINT32, BASE_DEC);
proto_its_denm = proto_register_protocol_in_name_only("ITS message - DENM", "DENM", "its.message.denm", proto_its, FT_BYTES);
@@ -1074,10 +940,13 @@ void proto_register_its(void)
proto_its_evrsr = proto_register_protocol_in_name_only("ITS message - EVRSR", "EVRSR", "its.message.evrsr", proto_its, FT_BYTES);
proto_its_srem = proto_register_protocol_in_name_only("ITS message - SREM", "SREM", "its.message.srem", proto_its, FT_BYTES);
proto_its_ssem = proto_register_protocol_in_name_only("ITS message - SSEM", "SSEM", "its.message.ssem", proto_its, FT_BYTES);
+ proto_its_rtcmemv1 = proto_register_protocol_in_name_only("ITS message - RTCMEMv1", "RTCMEMv1", "its.message.rtcmemv1", proto_its, FT_BYTES);
proto_its_rtcmem = proto_register_protocol_in_name_only("ITS message - RTCMEM", "RTCMEM", "its.message.rtcmem", proto_its, FT_BYTES);
proto_its_evcsn = proto_register_protocol_in_name_only("ITS message - EVCSN", "EVCSN", "its.message.evcsn", proto_its, FT_BYTES);
proto_its_tistpg = proto_register_protocol_in_name_only("ITS message - TISTPG", "TISTPG", "its.message.tistpg", proto_its, FT_BYTES);
proto_its_cpm = proto_register_protocol_in_name_only("ITS message - CPM", "CPM", "its.message.cpm", proto_its, FT_BYTES);
+ proto_its_vam = proto_register_protocol_in_name_only("ITS message - VAM", "VAM", "its.message.vam", proto_its, FT_BYTES);
+ proto_its_imzm = proto_register_protocol_in_name_only("ITS message - IMZM", "IMZM", "its.message.imzm", proto_its, FT_BYTES);
proto_addgrpc = proto_register_protocol_in_name_only("DSRC Addition Grp C (EU)", "ADDGRPC", "dsrc.addgrpc", proto_its, FT_BYTES);
@@ -1105,31 +974,32 @@ void proto_register_its(void)
#define ITS_IVIM_PROT_VER 2
#define ITS_SREM_PROT_VER 2
#define ITS_SSEM_PROT_VER 2
+#define ITS_RTCMEM_PROT_VERv1 1
#define ITS_RTCMEM_PROT_VER 2
#define ITS_TIS_TPG_PROT_VER 1
-#define ITS_CPM_PROT_VER 1
+#define ITS_CPM_PROT_VER 2
+#define ITS_VAM_PROT_VER 2
+#define ITS_IMZM_PROT_VER 2
void proto_reg_handoff_its(void)
{
const char *subdissector[BTP_SUBDISS_SZ] = { "btpa.port", "btpb.port" };
const guint16 ports[BTP_PORTS_SZ] = { ITS_WKP_DEN, ITS_WKP_CA, ITS_WKP_EVCSN, ITS_WKP_CHARGING, ITS_WKP_IVI, ITS_WKP_TPG, ITS_WKP_TLC_SSEM, ITS_WKP_GPC, ITS_WKP_TLC_SREM, ITS_WKP_RLT, ITS_WKP_TLM, ITS_WKP_CPS };
int sdIdx, pIdx;
- dissector_handle_t its_handle_;
// Register well known ports to btp subdissector table (BTP A and B)
- its_handle_ = create_dissector_handle(dissect_its_PDU, proto_its);
for (sdIdx=0; sdIdx < BTP_SUBDISS_SZ; sdIdx++) {
for (pIdx=0; pIdx < BTP_PORTS_SZ; pIdx++) {
- dissector_add_uint(subdissector[sdIdx], ports[pIdx], its_handle_);
+ dissector_add_uint(subdissector[sdIdx], ports[pIdx], its_handle);
}
}
// Enable decode as for its pdu's send via udp
- dissector_add_for_decode_as("udp.port", its_handle_);
+ dissector_add_for_decode_as("udp.port", its_handle);
- dissector_add_uint("its.msg_id", (ITS_DENM_PROT_VER << 16) + ITS_DENM, create_dissector_handle( dissect_denm_DecentralizedEnvironmentalNotificationMessage_PDU, proto_its_denm ));
- dissector_add_uint("its.msg_id", (ITS_DENM_PROT_VERv1 << 16) + ITS_DENM, create_dissector_handle( dissect_denmv1_DecentralizedEnvironmentalNotificationMessageV1_PDU, proto_its_denmv1 ));
- dissector_add_uint("its.msg_id", (ITS_CAM_PROT_VER << 16) + ITS_CAM, create_dissector_handle( dissect_cam_CoopAwareness_PDU, proto_its_cam ));
+ dissector_add_uint("its.msg_id", (ITS_DENM_PROT_VER << 16) + ITS_DENM, create_dissector_handle(dissect_denm_DenmPayload_PDU, proto_its_denm ));
+ dissector_add_uint("its.msg_id", (ITS_DENM_PROT_VERv1 << 16) + ITS_DENM, create_dissector_handle(dissect_denmv1_DecentralizedEnvironmentalNotificationMessageV1_PDU, proto_its_denmv1 ));
+ dissector_add_uint("its.msg_id", (ITS_CAM_PROT_VER << 16) + ITS_CAM, create_dissector_handle( dissect_cam_CamPayload_PDU, proto_its_cam ));
dissector_add_uint("its.msg_id", (ITS_CAM_PROT_VERv1 << 16) + ITS_CAM, create_dissector_handle( dissect_camv1_CoopAwarenessV1_PDU, proto_its_camv1));
dissector_add_uint("its.msg_id", (ITS_SPATEM_PROT_VERv1 << 16) + ITS_SPATEM, create_dissector_handle( dissect_dsrc_SPAT_PDU, proto_its_spatemv1 ));
dissector_add_uint("its.msg_id", (ITS_SPATEM_PROT_VER << 16) + ITS_SPATEM, create_dissector_handle( dissect_dsrc_SPAT_PDU, proto_its_spatem ));
@@ -1140,10 +1010,13 @@ void proto_reg_handoff_its(void)
dissector_add_uint("its.msg_id", ITS_EV_RSR, create_dissector_handle( dissect_evrsr_EV_RSR_MessageBody_PDU, proto_its_evrsr ));
dissector_add_uint("its.msg_id", (ITS_SREM_PROT_VER << 16) + ITS_SREM, create_dissector_handle( dissect_dsrc_SignalRequestMessage_PDU, proto_its_srem ));
dissector_add_uint("its.msg_id", (ITS_SSEM_PROT_VER << 16) + ITS_SSEM, create_dissector_handle( dissect_dsrc_SignalStatusMessage_PDU, proto_its_ssem ));
- dissector_add_uint("its.msg_id", (ITS_RTCMEM_PROT_VER << 16) + ITS_RTCMEM, create_dissector_handle( dissect_dsrc_RTCMcorrections_PDU, proto_its_rtcmem ));
+ dissector_add_uint("its.msg_id", (ITS_RTCMEM_PROT_VERv1 << 16) + ITS_RTCMEM, create_dissector_handle( dissect_dsrc_RTCMcorrections_PDU, proto_its_rtcmemv1));
+ dissector_add_uint("its.msg_id", (ITS_RTCMEM_PROT_VER << 16) + ITS_RTCMEM, create_dissector_handle(dissect_dsrc_RTCMcorrections_PDU, proto_its_rtcmem));
dissector_add_uint("its.msg_id", ITS_EVCSN, create_dissector_handle( dissect_evcsn_EVChargingSpotNotificationPOIMessage_PDU, proto_its_evcsn ));
dissector_add_uint("its.msg_id", (ITS_TIS_TPG_PROT_VER << 16) + ITS_TISTPGTRANSACTION, create_dissector_handle( dissect_tistpg_TisTpgTransaction_PDU, proto_its_tistpg ));
dissector_add_uint("its.msg_id", (ITS_CPM_PROT_VER << 16) + ITS_CPM, create_dissector_handle(dissect_cpm_CollectivePerceptionMessage_PDU, proto_its_cpm));
+ dissector_add_uint("its.msg_id", (ITS_IMZM_PROT_VER << 16) + ITS_IMZM, create_dissector_handle(dissect_imzm_InterferenceManagementZoneMessage_PDU, proto_its_imzm));
+ dissector_add_uint("its.msg_id", (ITS_VAM_PROT_VER << 16) + ITS_VAM, create_dissector_handle(dissect_vam_VruAwareness_PDU, proto_its_vam));
/* Missing definitions: ITS_POI, ITS_SAEM */
@@ -1164,6 +1037,12 @@ void proto_reg_handoff_its(void)
dissector_add_uint("geonw.ssp", psid_den_basic_services, create_dissector_handle(dissect_denmssp_pdu, proto_its_denm));
dissector_add_uint("geonw.ssp", psid_ca_basic_services, create_dissector_handle(dissect_camssp_pdu, proto_its_cam));
+ dissector_add_uint("cpm.container", 1, create_dissector_handle(dissect_cpm_OriginatingVehicleContainer_PDU, proto_its_cpm));
+ dissector_add_uint("cpm.container", 2, create_dissector_handle(dissect_cpm_OriginatingRsuContainer_PDU, proto_its_cpm));
+ dissector_add_uint("cpm.container", 3, create_dissector_handle(dissect_cpm_SensorInformationContainer_PDU, proto_its_cpm));
+ dissector_add_uint("cpm.container", 4, create_dissector_handle(dissect_cpm_PerceptionRegionContainer_PDU, proto_its_cpm));
+ dissector_add_uint("cpm.container", 5, create_dissector_handle(dissect_cpm_PerceivedObjectContainer_PDU, proto_its_cpm));
+
its_tap = register_tap("its");
}
diff --git a/epan/dissectors/asn1/its/packet-its-template.h b/epan/dissectors/asn1/its/packet-its-template.h
index 12bf4f6991..6381b753d3 100644
--- a/epan/dissectors/asn1/its/packet-its-template.h
+++ b/epan/dissectors/asn1/its/packet-its-template.h
@@ -21,6 +21,7 @@ typedef struct its_header {
guint32 version;
guint32 msgId;
guint32 stationId;
+ guint32 CpmContainerId;
} its_header_t;
enum regext_type_enum {
diff --git a/epan/dissectors/asn1/kerberos/k5.asn b/epan/dissectors/asn1/kerberos/k5.asn
index 1010dd9aae..1eb9120a6a 100644
--- a/epan/dissectors/asn1/kerberos/k5.asn
+++ b/epan/dissectors/asn1/kerberos/k5.asn
@@ -115,7 +115,10 @@ PADATA-TYPE ::= INTEGER {
pA-PKINIT-KX(147), -- [RFC6112]
pA-PKU2U-NAME(148), -- [PKU2U]
pA-REQ-ENC-PA-REP(149), -- [RFC6806]
+ pA-AS-FRESHNESS(150), -- [RFC8070]
pA-SPAKE(151), -- draft-ietf-kitten-krb-spake-preauth-09
+ pA-REDHAT-IDP-OAUTH2(152), -- (pbrezina@redhat.com)
+ pA-REDHAT-PASSKEY(153), -- (pbrezina@redhat.com)
pA-KERB-KEY-LIST-REQ(161), -- [MS-KILE]
pA-KERB-KEY-LIST-REP(162), -- [MS-KILE]
pA-SUPPORTED-ETYPES(165), -- [MS-KILE]
diff --git a/epan/dissectors/asn1/kerberos/kerberos.cnf b/epan/dissectors/asn1/kerberos/kerberos.cnf
index d6a7a457ad..fb7b92ae69 100644
--- a/epan/dissectors/asn1/kerberos/kerberos.cnf
+++ b/epan/dissectors/asn1/kerberos/kerberos.cnf
@@ -32,6 +32,8 @@ KRB-PRIV/_untag/enc-part kRB_PRIV_enc_part
KrbCredInfo/key krbCredInfo_key
AP-REP/_untag/enc-part aP_REP_enc_part
KDC-REP/enc-part kDC_REP_enc_part
+KDC-REP/padata rEP_SEQUENCE_OF_PA_DATA
+KDC-REQ/padata rEQ_SEQUENCE_OF_PA_DATA
Ticket/_untag/enc-part ticket_enc_part
ETYPE-INFO-ENTRY/salt info_salt
ETYPE-INFO2-ENTRY/salt info2_salt
@@ -153,7 +155,7 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
case KRB5_ET_KDC_ERR_MORE_PREAUTH_DATA_REQUIRED:
case KRB5_ET_KDC_ERR_PREAUTH_BAD_AUTHENTICATION_SET:
case KRB5_ET_KDC_ERR_UNKNOWN_CRITICAL_FAST_OPTIONS:
- offset=dissect_ber_octet_string_wcb(FALSE, actx, tree, tvb, offset, hf_kerberos_e_data, dissect_kerberos_SEQUENCE_OF_PA_DATA);
+ offset=dissect_ber_octet_string_wcb(FALSE, actx, tree, tvb, offset, hf_kerberos_e_data, dissect_kerberos_T_rEP_SEQUENCE_OF_PA_DATA);
break;
default:
offset=dissect_ber_octet_string(FALSE, actx, tree, tvb, offset, hf_kerberos_e_data, NULL);
@@ -171,6 +173,37 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
"Unknown:%d"));
}
+#.FN_BODY KDC-REQ/padata
+ kerberos_private_data_t* private_data = kerberos_get_private_data(actx);
+ struct _kerberos_PA_FX_FAST_REQUEST saved_stack = private_data->PA_FX_FAST_REQUEST;
+
+ /*
+ * we need to defer calling dissect_kerberos_PA_FX_FAST_REQUEST,
+ * see dissect_kerberos_defer_PA_FX_FAST_REQUEST()
+ */
+ private_data->PA_FX_FAST_REQUEST = (struct _kerberos_PA_FX_FAST_REQUEST) { .defer = TRUE, };
+%(DEFAULT_BODY)s
+ if (private_data->PA_FX_FAST_REQUEST.tvb != NULL) {
+ struct _kerberos_PA_FX_FAST_REQUEST used_stack = private_data->PA_FX_FAST_REQUEST;
+ private_data->PA_FX_FAST_REQUEST = (struct _kerberos_PA_FX_FAST_REQUEST) { .defer = FALSE, };
+
+ /*
+ * dissect_kerberos_defer_PA_FX_FAST_REQUEST() remembered
+ * a tvb, so replay dissect_kerberos_PA_FX_FAST_REQUEST()
+ * here.
+ */
+ dissect_kerberos_PA_FX_FAST_REQUEST(FALSE,
+ used_stack.tvb,
+ 0,
+ actx,
+ used_stack.tree,
+ -1);
+ }
+ private_data->PA_FX_FAST_REQUEST = saved_stack;
+
+#.FN_BODY KDC-REP/padata
+%(DEFAULT_BODY)s
+
#.FN_BODY PA-DATA/padata-value
proto_tree *sub_tree=tree;
kerberos_private_data_t* private_data = kerberos_get_private_data(actx);
@@ -234,7 +267,7 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
break;
case KERBEROS_PA_FX_FAST:
if (kerberos_private_is_kdc_req(private_data)) {
- offset=dissect_ber_octet_string_wcb(FALSE, actx, sub_tree, tvb, offset,hf_index, dissect_kerberos_PA_FX_FAST_REQUEST);
+ offset=dissect_ber_octet_string_wcb(FALSE, actx, sub_tree, tvb, offset,hf_index, dissect_kerberos_defer_PA_FX_FAST_REQUEST);
}else{
offset=dissect_ber_octet_string_wcb(FALSE, actx, sub_tree, tvb, offset,hf_index, dissect_kerberos_PA_FX_FAST_REPLY);
}
@@ -270,7 +303,7 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
#.FN_BODY HostAddress/address
gint8 appclass;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
const char *address_str;
@@ -574,10 +607,10 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
* http://www.ietf.org/internet-drafts/draft-ietf-krb-wg-kerberos-clarifications-07.txt
*/
if (actx->pinfo->destport == UDP_PORT_KERBEROS && actx->pinfo->ptype == PT_UDP) {
- conversation = find_conversation(actx->pinfo->num, &actx->pinfo->src, &actx->pinfo->dst, ENDPOINT_UDP,
+ conversation = find_conversation(actx->pinfo->num, &actx->pinfo->src, &actx->pinfo->dst, CONVERSATION_UDP,
actx->pinfo->srcport, 0, NO_PORT_B);
if (conversation == NULL) {
- conversation = conversation_new(actx->pinfo->num, &actx->pinfo->src, &actx->pinfo->dst, ENDPOINT_UDP,
+ conversation = conversation_new(actx->pinfo->num, &actx->pinfo->src, &actx->pinfo->dst, CONVERSATION_UDP,
actx->pinfo->srcport, 0, NO_PORT2);
conversation_set_dissector(conversation, kerberos_handle_udp);
}
@@ -614,7 +647,6 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
##else
%(DEFAULT_BODY)s
##endif
- return offset;
#.FN_BODY EncryptedKrbFastResponse/cipher
##ifdef HAVE_KERBEROS
@@ -622,7 +654,6 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
##else
%(DEFAULT_BODY)s
##endif
- return offset;
#.FN_BODY EncryptedChallenge/cipher
##ifdef HAVE_KERBEROS
@@ -630,7 +661,6 @@ KrbFastArmorTypes PROT_PREFIX UPPER_CASE
##else
%(DEFAULT_BODY)s
##endif
- return offset;
#.FN_BODY KrbFastArmorTypes VAL_PTR=&(private_data->fast_type)
kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
diff --git a/epan/dissectors/asn1/kerberos/packet-kerberos-template.c b/epan/dissectors/asn1/kerberos/packet-kerberos-template.c
index 490cd329e1..901fcf7545 100644
--- a/epan/dissectors/asn1/kerberos/packet-kerberos-template.c
+++ b/epan/dissectors/asn1/kerberos/packet-kerberos-template.c
@@ -15,11 +15,11 @@
*
* and
*
- * https://tools.ietf.org/html/draft-ietf-krb-wg-kerberos-clarifications-07
+ * https://tools.ietf.org/html/rfc4120
*
* and
*
- * https://tools.ietf.org/html/draft-ietf-krb-wg-kerberos-referrals-05
+ * https://tools.ietf.org/html/rfc6806
*
* Some structures from RFC2630
*
@@ -136,6 +136,11 @@ typedef struct {
wmem_list_t *learnt_keys;
wmem_list_t *missing_keys;
guint32 within_PA_TGS_REQ;
+ struct _kerberos_PA_FX_FAST_REQUEST {
+ gboolean defer;
+ tvbuff_t *tvb;
+ proto_tree *tree;
+ } PA_FX_FAST_REQUEST;
#ifdef HAVE_KERBEROS
enc_key_t *PA_TGS_REQ_key;
enc_key_t *PA_TGS_REQ_subkey;
@@ -150,182 +155,204 @@ typedef struct {
#endif
} kerberos_private_data_t;
+static dissector_handle_t kerberos_handle_tcp;
static dissector_handle_t kerberos_handle_udp;
/* Forward declarations */
-static int dissect_kerberos_Applications(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_AuthorizationData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_ENC_TIMESTAMP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_Applications(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_AuthorizationData(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_ENC_TIMESTAMP(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
#ifdef HAVE_KERBEROS
-static int dissect_kerberos_PA_ENC_TS_ENC(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_ENC_TS_ENC(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
#endif
-static int dissect_kerberos_PA_PAC_REQUEST(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_S4U2Self(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_S4U_X509_USER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_ETYPE_INFO(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_ETYPE_INFO2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_AD_IF_RELEVANT(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_AUTHENTICATION_SET_ELEM(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_FX_FAST_REQUEST(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_EncryptedChallenge(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_KERB_KEY_LIST_REQ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_KERB_KEY_LIST_REP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_FX_FAST_REPLY(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_PAC_OPTIONS(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_KERB_AD_RESTRICTION_ENTRY(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_SEQUENCE_OF_ENCTYPE(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_PA_SPAKE(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_PAC_REQUEST(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_S4U2Self(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_S4U_X509_USER(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_ETYPE_INFO(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_ETYPE_INFO2(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_AD_IF_RELEVANT(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_AUTHENTICATION_SET_ELEM(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_FX_FAST_REQUEST(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_EncryptedChallenge(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_KERB_KEY_LIST_REQ(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_KERB_KEY_LIST_REP(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_FX_FAST_REPLY(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_PAC_OPTIONS(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_KERB_AD_RESTRICTION_ENTRY(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_SEQUENCE_OF_ENCTYPE(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_PA_SPAKE(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
#ifdef HAVE_KERBEROS
-static int dissect_kerberos_KrbFastReq(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_KrbFastResponse(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
-static int dissect_kerberos_FastOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_KrbFastReq(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_KrbFastResponse(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_kerberos_FastOptions(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
#endif
/* Desegment Kerberos over TCP messages */
static gboolean krb_desegment = TRUE;
-static gint proto_kerberos = -1;
-
-static gint hf_krb_rm_reserved = -1;
-static gint hf_krb_rm_reclen = -1;
-static gint hf_krb_provsrv_location = -1;
-static gint hf_krb_pw_salt = -1;
-static gint hf_krb_ext_error_nt_status = -1;
-static gint hf_krb_ext_error_reserved = -1;
-static gint hf_krb_ext_error_flags = -1;
-static gint hf_krb_address_ip = -1;
-static gint hf_krb_address_netbios = -1;
-static gint hf_krb_address_ipv6 = -1;
-static gint hf_krb_gssapi_len = -1;
-static gint hf_krb_gssapi_bnd = -1;
-static gint hf_krb_gssapi_dlgopt = -1;
-static gint hf_krb_gssapi_dlglen = -1;
-static gint hf_krb_gssapi_c_flag_deleg = -1;
-static gint hf_krb_gssapi_c_flag_mutual = -1;
-static gint hf_krb_gssapi_c_flag_replay = -1;
-static gint hf_krb_gssapi_c_flag_sequence = -1;
-static gint hf_krb_gssapi_c_flag_conf = -1;
-static gint hf_krb_gssapi_c_flag_integ = -1;
-static gint hf_krb_gssapi_c_flag_dce_style = -1;
-static gint hf_krb_midl_version = -1;
-static gint hf_krb_midl_hdr_len = -1;
-static gint hf_krb_midl_fill_bytes = -1;
-static gint hf_krb_midl_blob_len = -1;
-static gint hf_krb_pac_signature_type = -1;
-static gint hf_krb_pac_signature_signature = -1;
-static gint hf_krb_w2k_pac_entries = -1;
-static gint hf_krb_w2k_pac_version = -1;
-static gint hf_krb_w2k_pac_type = -1;
-static gint hf_krb_w2k_pac_size = -1;
-static gint hf_krb_w2k_pac_offset = -1;
-static gint hf_krb_pac_clientid = -1;
-static gint hf_krb_pac_namelen = -1;
-static gint hf_krb_pac_clientname = -1;
-static gint hf_krb_pac_logon_info = -1;
-static gint hf_krb_pac_credential_data = -1;
-static gint hf_krb_pac_credential_info = -1;
-static gint hf_krb_pac_credential_info_version = -1;
-static gint hf_krb_pac_credential_info_etype = -1;
-static gint hf_krb_pac_s4u_delegation_info = -1;
-static gint hf_krb_pac_upn_dns_info = -1;
-static gint hf_krb_pac_upn_flags = -1;
-static gint hf_krb_pac_upn_dns_offset = -1;
-static gint hf_krb_pac_upn_dns_len = -1;
-static gint hf_krb_pac_upn_upn_offset = -1;
-static gint hf_krb_pac_upn_upn_len = -1;
-static gint hf_krb_pac_upn_upn_name = -1;
-static gint hf_krb_pac_upn_dns_name = -1;
-static gint hf_krb_pac_server_checksum = -1;
-static gint hf_krb_pac_privsvr_checksum = -1;
-static gint hf_krb_pac_client_info_type = -1;
-static gint hf_krb_pac_client_claims_info = -1;
-static gint hf_krb_pac_device_info = -1;
-static gint hf_krb_pac_device_claims_info = -1;
-static gint hf_krb_pac_ticket_checksum = -1;
-static gint hf_krb_pa_supported_enctypes = -1;
-static gint hf_krb_pa_supported_enctypes_des_cbc_crc = -1;
-static gint hf_krb_pa_supported_enctypes_des_cbc_md5 = -1;
-static gint hf_krb_pa_supported_enctypes_rc4_hmac = -1;
-static gint hf_krb_pa_supported_enctypes_aes128_cts_hmac_sha1_96 = -1;
-static gint hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96 = -1;
-static gint hf_krb_pa_supported_enctypes_fast_supported = -1;
-static gint hf_krb_pa_supported_enctypes_compound_identity_supported = -1;
-static gint hf_krb_pa_supported_enctypes_claims_supported = -1;
-static gint hf_krb_pa_supported_enctypes_resource_sid_compression_disabled = -1;
-static gint hf_krb_ad_ap_options = -1;
-static gint hf_krb_ad_ap_options_cbt = -1;
-static gint hf_krb_ad_target_principal = -1;
-static gint hf_krb_key_hidden_item = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_MessageType = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_Flags = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_ServiceTicketLength = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_TicketGrantingTicketLength = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_ServiceTicket = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_TicketGrantingTicket = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_FLAG_ALLOW_EXPIRED_TICKET = -1;
-static gint hf_kerberos_KERB_TICKET_LOGON_FLAG_REDIRECTED = -1;
+static gint proto_kerberos;
+
+static gint hf_krb_rm_reserved;
+static gint hf_krb_rm_reclen;
+static gint hf_krb_provsrv_location;
+static gint hf_krb_pw_salt;
+static gint hf_krb_ext_error_nt_status;
+static gint hf_krb_ext_error_reserved;
+static gint hf_krb_ext_error_flags;
+static gint hf_krb_address_ip;
+static gint hf_krb_address_netbios;
+static gint hf_krb_address_ipv6;
+static gint hf_krb_gssapi_len;
+static gint hf_krb_gssapi_bnd;
+static gint hf_krb_gssapi_dlgopt;
+static gint hf_krb_gssapi_dlglen;
+static gint hf_krb_gssapi_c_flag_deleg;
+static gint hf_krb_gssapi_c_flag_mutual;
+static gint hf_krb_gssapi_c_flag_replay;
+static gint hf_krb_gssapi_c_flag_sequence;
+static gint hf_krb_gssapi_c_flag_conf;
+static gint hf_krb_gssapi_c_flag_integ;
+static gint hf_krb_gssapi_c_flag_dce_style;
+static gint hf_krb_midl_version;
+static gint hf_krb_midl_hdr_len;
+static gint hf_krb_midl_fill_bytes;
+static gint hf_krb_midl_blob_len;
+static gint hf_krb_pac_signature_type;
+static gint hf_krb_pac_signature_signature;
+static gint hf_krb_w2k_pac_entries;
+static gint hf_krb_w2k_pac_version;
+static gint hf_krb_w2k_pac_type;
+static gint hf_krb_w2k_pac_size;
+static gint hf_krb_w2k_pac_offset;
+static gint hf_krb_pac_clientid;
+static gint hf_krb_pac_namelen;
+static gint hf_krb_pac_clientname;
+static gint hf_krb_pac_logon_info;
+static gint hf_krb_pac_credential_data;
+static gint hf_krb_pac_credential_info;
+static gint hf_krb_pac_credential_info_version;
+static gint hf_krb_pac_credential_info_etype;
+static gint hf_krb_pac_s4u_delegation_info;
+static gint hf_krb_pac_upn_dns_info;
+static gint hf_krb_pac_upn_flags;
+static gint hf_krb_pac_upn_flag_upn_constructed;
+static gint hf_krb_pac_upn_flag_has_sam_name_and_sid;
+static gint hf_krb_pac_upn_upn_offset;
+static gint hf_krb_pac_upn_upn_len;
+static gint hf_krb_pac_upn_upn_name;
+static gint hf_krb_pac_upn_dns_offset;
+static gint hf_krb_pac_upn_dns_len;
+static gint hf_krb_pac_upn_dns_name;
+static gint hf_krb_pac_upn_samaccountname_offset;
+static gint hf_krb_pac_upn_samaccountname_len;
+static gint hf_krb_pac_upn_samaccountname;
+static gint hf_krb_pac_upn_objectsid_offset;
+static gint hf_krb_pac_upn_objectsid_len;
+static gint hf_krb_pac_server_checksum;
+static gint hf_krb_pac_privsvr_checksum;
+static gint hf_krb_pac_client_info_type;
+static gint hf_krb_pac_client_claims_info;
+static gint hf_krb_pac_device_info;
+static gint hf_krb_pac_device_claims_info;
+static gint hf_krb_pac_ticket_checksum;
+static gint hf_krb_pac_attributes_info;
+static gint hf_krb_pac_attributes_info_length;
+static gint hf_krb_pac_attributes_info_flags;
+static gint hf_krb_pac_attributes_info_flags_pac_was_requested;
+static gint hf_krb_pac_attributes_info_flags_pac_was_given_implicitly;
+static gint hf_krb_pac_requester_sid;
+static gint hf_krb_pac_full_checksum;
+static gint hf_krb_pa_supported_enctypes;
+static gint hf_krb_pa_supported_enctypes_des_cbc_crc;
+static gint hf_krb_pa_supported_enctypes_des_cbc_md5;
+static gint hf_krb_pa_supported_enctypes_rc4_hmac;
+static gint hf_krb_pa_supported_enctypes_aes128_cts_hmac_sha1_96;
+static gint hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96;
+static gint hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96_sk;
+static gint hf_krb_pa_supported_enctypes_fast_supported;
+static gint hf_krb_pa_supported_enctypes_compound_identity_supported;
+static gint hf_krb_pa_supported_enctypes_claims_supported;
+static gint hf_krb_pa_supported_enctypes_resource_sid_compression_disabled;
+static gint hf_krb_ad_ap_options;
+static gint hf_krb_ad_ap_options_cbt;
+static gint hf_krb_ad_ap_options_unverified_target_name;
+static gint hf_krb_ad_target_principal;
+static gint hf_krb_key_hidden_item;
+static gint hf_kerberos_KERB_TICKET_LOGON;
+static gint hf_kerberos_KERB_TICKET_LOGON_MessageType;
+static gint hf_kerberos_KERB_TICKET_LOGON_Flags;
+static gint hf_kerberos_KERB_TICKET_LOGON_ServiceTicketLength;
+static gint hf_kerberos_KERB_TICKET_LOGON_TicketGrantingTicketLength;
+static gint hf_kerberos_KERB_TICKET_LOGON_ServiceTicket;
+static gint hf_kerberos_KERB_TICKET_LOGON_TicketGrantingTicket;
+static gint hf_kerberos_KERB_TICKET_LOGON_FLAG_ALLOW_EXPIRED_TICKET;
+static gint hf_kerberos_KERB_TICKET_LOGON_FLAG_REDIRECTED;
#ifdef HAVE_KERBEROS
-static gint hf_kerberos_KrbFastResponse = -1;
-static gint hf_kerberos_strengthen_key = -1;
-static gint hf_kerberos_finished = -1;
-static gint hf_kerberos_fast_options = -1;
-static gint hf_kerberos_ticket_checksum = -1;
-static gint hf_krb_patimestamp = -1;
-static gint hf_krb_pausec = -1;
-static gint hf_kerberos_FastOptions_reserved = -1;
-static gint hf_kerberos_FastOptions_hide_client_names = -1;
-static gint hf_kerberos_FastOptions_spare_bit2 = -1;
-static gint hf_kerberos_FastOptions_spare_bit3 = -1;
-static gint hf_kerberos_FastOptions_spare_bit4 = -1;
-static gint hf_kerberos_FastOptions_spare_bit5 = -1;
-static gint hf_kerberos_FastOptions_spare_bit6 = -1;
-static gint hf_kerberos_FastOptions_spare_bit7 = -1;
-static gint hf_kerberos_FastOptions_spare_bit8 = -1;
-static gint hf_kerberos_FastOptions_spare_bit9 = -1;
-static gint hf_kerberos_FastOptions_spare_bit10 = -1;
-static gint hf_kerberos_FastOptions_spare_bit11 = -1;
-static gint hf_kerberos_FastOptions_spare_bit12 = -1;
-static gint hf_kerberos_FastOptions_spare_bit13 = -1;
-static gint hf_kerberos_FastOptions_spare_bit14 = -1;
-static gint hf_kerberos_FastOptions_spare_bit15 = -1;
-static gint hf_kerberos_FastOptions_kdc_follow_referrals = -1;
+static gint hf_kerberos_KrbFastResponse;
+static gint hf_kerberos_strengthen_key;
+static gint hf_kerberos_finished;
+static gint hf_kerberos_fast_options;
+static gint hf_kerberos_ticket_checksum;
+static gint hf_krb_patimestamp;
+static gint hf_krb_pausec;
+static gint hf_kerberos_FastOptions_reserved;
+static gint hf_kerberos_FastOptions_hide_client_names;
+static gint hf_kerberos_FastOptions_spare_bit2;
+static gint hf_kerberos_FastOptions_spare_bit3;
+static gint hf_kerberos_FastOptions_spare_bit4;
+static gint hf_kerberos_FastOptions_spare_bit5;
+static gint hf_kerberos_FastOptions_spare_bit6;
+static gint hf_kerberos_FastOptions_spare_bit7;
+static gint hf_kerberos_FastOptions_spare_bit8;
+static gint hf_kerberos_FastOptions_spare_bit9;
+static gint hf_kerberos_FastOptions_spare_bit10;
+static gint hf_kerberos_FastOptions_spare_bit11;
+static gint hf_kerberos_FastOptions_spare_bit12;
+static gint hf_kerberos_FastOptions_spare_bit13;
+static gint hf_kerberos_FastOptions_spare_bit14;
+static gint hf_kerberos_FastOptions_spare_bit15;
+static gint hf_kerberos_FastOptions_kdc_follow_referrals;
#endif
#include "packet-kerberos-hf.c"
/* Initialize the subtree pointers */
-static gint ett_kerberos = -1;
-static gint ett_krb_recordmark = -1;
-static gint ett_krb_pac = -1;
-static gint ett_krb_pac_drep = -1;
-static gint ett_krb_pac_midl_blob = -1;
-static gint ett_krb_pac_logon_info = -1;
-static gint ett_krb_pac_credential_info = -1;
-static gint ett_krb_pac_s4u_delegation_info = -1;
-static gint ett_krb_pac_upn_dns_info = -1;
-static gint ett_krb_pac_device_info = -1;
-static gint ett_krb_pac_server_checksum = -1;
-static gint ett_krb_pac_privsvr_checksum = -1;
-static gint ett_krb_pac_client_info_type = -1;
-static gint ett_krb_pac_ticket_checksum = -1;
-static gint ett_krb_pa_supported_enctypes = -1;
-static gint ett_krb_ad_ap_options = -1;
-static gint ett_kerberos_KERB_TICKET_LOGON = -1;
+static gint ett_kerberos;
+static gint ett_krb_recordmark;
+static gint ett_krb_pac;
+static gint ett_krb_pac_drep;
+static gint ett_krb_pac_midl_blob;
+static gint ett_krb_pac_logon_info;
+static gint ett_krb_pac_credential_info;
+static gint ett_krb_pac_s4u_delegation_info;
+static gint ett_krb_pac_upn_dns_info;
+static gint ett_krb_pac_upn_dns_info_flags;
+static gint ett_krb_pac_device_info;
+static gint ett_krb_pac_server_checksum;
+static gint ett_krb_pac_privsvr_checksum;
+static gint ett_krb_pac_client_info_type;
+static gint ett_krb_pac_ticket_checksum;
+static gint ett_krb_pac_attributes_info;
+static gint ett_krb_pac_attributes_info_flags;
+static gint ett_krb_pac_requester_sid;
+static gint ett_krb_pac_full_checksum;
+static gint ett_krb_pa_supported_enctypes;
+static gint ett_krb_ad_ap_options;
+static gint ett_kerberos_KERB_TICKET_LOGON;
#ifdef HAVE_KERBEROS
-static gint ett_krb_pa_enc_ts_enc = -1;
-static gint ett_kerberos_KrbFastFinished = -1;
-static gint ett_kerberos_KrbFastResponse = -1;
-static gint ett_kerberos_KrbFastReq = -1;
-static gint ett_kerberos_FastOptions = -1;
+static gint ett_krb_pa_enc_ts_enc;
+static gint ett_kerberos_KrbFastFinished;
+static gint ett_kerberos_KrbFastResponse;
+static gint ett_kerberos_KrbFastReq;
+static gint ett_kerberos_FastOptions;
#endif
#include "packet-kerberos-ett.c"
-static expert_field ei_kerberos_missing_keytype = EI_INIT;
-static expert_field ei_kerberos_decrypted_keytype = EI_INIT;
-static expert_field ei_kerberos_learnt_keytype = EI_INIT;
-static expert_field ei_kerberos_address = EI_INIT;
-static expert_field ei_krb_gssapi_dlglen = EI_INIT;
+static expert_field ei_kerberos_missing_keytype;
+static expert_field ei_kerberos_decrypted_keytype;
+static expert_field ei_kerberos_learnt_keytype;
+static expert_field ei_kerberos_address;
+static expert_field ei_krb_gssapi_dlglen;
static dissector_handle_t krb4_handle=NULL;
@@ -378,7 +405,7 @@ kerberos_get_private_data(asn1_ctx_t *actx)
return (kerberos_private_data_t *)(actx->private_data);
}
-static gboolean
+static bool
kerberos_private_is_kdc_req(kerberos_private_data_t *private_data)
{
switch (private_data->msg_type) {
@@ -398,6 +425,38 @@ kerberos_is_win2k_pkinit(asn1_ctx_t *actx)
return private_data->is_win2k_pkinit;
}
+static int dissect_kerberos_defer_PA_FX_FAST_REQUEST(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_)
+{
+ kerberos_private_data_t* private_data = kerberos_get_private_data(actx);
+
+ /*
+ * dissect_ber_octet_string_wcb() always passes
+ * implicit_tag=FALSE, offset=0 and hf_index=-1
+ *
+ * It means we only need to remember tvb and tree
+ * in order to replay dissect_kerberos_PA_FX_FAST_REQUEST()
+ * in dissect_kerberos_T_rEQ_SEQUENCE_OF_PA_DATA()
+ */
+ ws_assert(implicit_tag == FALSE);
+ ws_assert(offset == 0);
+ ws_assert(hf_index <= 0);
+
+ if (private_data->PA_FX_FAST_REQUEST.defer) {
+ /*
+ * Remember the tvb (and the optional tree)
+ */
+ private_data->PA_FX_FAST_REQUEST.tvb = tvb;
+ private_data->PA_FX_FAST_REQUEST.tree = tree;
+ /*
+ * only handle the first PA_FX_FAST_REQUEST...
+ */
+ private_data->PA_FX_FAST_REQUEST.defer = FALSE;
+ return tvb_reported_length_remaining(tvb, offset);
+ }
+
+ return dissect_kerberos_PA_FX_FAST_REQUEST(implicit_tag, tvb, offset, actx, tree, hf_index);
+}
+
#ifdef HAVE_KERBEROS
/* Decrypt Kerberos blobs */
@@ -437,7 +496,7 @@ wmem_map_t *kerberos_longterm_keys = NULL;
static wmem_map_t *kerberos_all_keys = NULL;
static wmem_map_t *kerberos_app_session_keys = NULL;
-static gboolean
+static bool
enc_key_list_cb(wmem_allocator_t* allocator _U_, wmem_cb_event_t event _U_, void *user_data _U_)
{
enc_key_list = NULL;
@@ -690,11 +749,11 @@ add_encryption_key(packet_info *pinfo,
}
new_key = wmem_new0(key_scope, enc_key_t);
- g_snprintf(new_key->key_origin, KRB_MAX_ORIG_LEN, "%s %s in frame %u",
+ snprintf(new_key->key_origin, KRB_MAX_ORIG_LEN, "%s %s in frame %u",
methodl, origin, pinfo->num);
new_key->fd_num = pinfo->num;
new_key->id = ++private_data->learnt_key_ids;
- g_snprintf(new_key->id_str, KRB_MAX_ID_STR_LEN, "%d.%u",
+ snprintf(new_key->id_str, KRB_MAX_ID_STR_LEN, "%d.%u",
new_key->fd_num, new_key->id);
new_key->keytype=keytype;
new_key->keylength=keylength;
@@ -755,7 +814,7 @@ save_encryption_key(tvbuff_t *tvb _U_, int offset _U_, int length _U_,
const char *element = proto_registrar_get_name(hf_index);
char origin[KRB_MAX_ORIG_LEN] = { 0, };
- g_snprintf(origin, KRB_MAX_ORIG_LEN, "%s_%s", parent, element);
+ snprintf(origin, KRB_MAX_ORIG_LEN, "%s_%s", parent, element);
add_encryption_key(actx->pinfo,
private_data,
@@ -926,12 +985,12 @@ static void missing_encryption_key(proto_tree *tree, packet_info *pinfo,
enc_key_t *mek = NULL;
mek = wmem_new0(pinfo->pool, enc_key_t);
- g_snprintf(mek->key_origin, KRB_MAX_ORIG_LEN,
+ snprintf(mek->key_origin, KRB_MAX_ORIG_LEN,
"keytype %d usage %d missing in frame %u",
keytype, usage, pinfo->num);
mek->fd_num = pinfo->num;
mek->id = ++private_data->missing_key_ids;
- g_snprintf(mek->id_str, KRB_MAX_ID_STR_LEN, "missing.%u",
+ snprintf(mek->id_str, KRB_MAX_ID_STR_LEN, "missing.%u",
mek->id);
mek->keytype=keytype;
@@ -1002,12 +1061,12 @@ static void missing_signing_key(proto_tree *tree, packet_info *pinfo,
enc_key_t *mek = NULL;
mek = wmem_new0(pinfo->pool, enc_key_t);
- g_snprintf(mek->key_origin, KRB_MAX_ORIG_LEN,
+ snprintf(mek->key_origin, KRB_MAX_ORIG_LEN,
"checksum %d keytype %d missing in frame %u",
checksum, keytype, pinfo->num);
mek->fd_num = pinfo->num;
mek->id = ++private_data->missing_key_ids;
- g_snprintf(mek->id_str, KRB_MAX_ID_STR_LEN, "missing.%u",
+ snprintf(mek->id_str, KRB_MAX_ID_STR_LEN, "missing.%u",
mek->id);
mek->keytype=keytype;
@@ -1134,19 +1193,19 @@ read_keytab_file(const char *filename)
new_key = wmem_new0(wmem_epan_scope(), enc_key_t);
new_key->fd_num = -1;
new_key->id = ++kerberos_longterm_ids;
- g_snprintf(new_key->id_str, KRB_MAX_ID_STR_LEN, "keytab.%u", new_key->id);
+ snprintf(new_key->id_str, KRB_MAX_ID_STR_LEN, "keytab.%u", new_key->id);
new_key->next = enc_key_list;
/* generate origin string, describing where this key came from */
pos=new_key->key_origin;
pos+=MIN(KRB_MAX_ORIG_LEN,
- g_snprintf(pos, KRB_MAX_ORIG_LEN, "keytab principal "));
+ snprintf(pos, KRB_MAX_ORIG_LEN, "keytab principal "));
for(i=0;i<key.principal->length;i++){
pos+=MIN(KRB_MAX_ORIG_LEN-(pos-new_key->key_origin),
- g_snprintf(pos, (gulong)(KRB_MAX_ORIG_LEN-(pos-new_key->key_origin)), "%s%s",(i?"/":""),(key.principal->data[i]).data));
+ snprintf(pos, KRB_MAX_ORIG_LEN-(pos-new_key->key_origin), "%s%s",(i?"/":""),(key.principal->data[i]).data));
}
pos+=MIN(KRB_MAX_ORIG_LEN-(pos-new_key->key_origin),
- g_snprintf(pos, (gulong)(KRB_MAX_ORIG_LEN-(pos-new_key->key_origin)), "@%s",key.principal->realm.data));
+ snprintf(pos, KRB_MAX_ORIG_LEN-(pos-new_key->key_origin), "@%s",key.principal->realm.data));
*pos=0;
new_key->keytype=key.key.enctype;
new_key->keylength=key.key.length;
@@ -1829,6 +1888,8 @@ keytype_for_cksumtype(krb5_cksumtype checksum)
}
struct verify_krb5_pac_state {
+ int pacbuffer_length;
+ const guint8 *pacbuffer;
krb5_pac pac;
krb5_cksumtype server_checksum;
guint server_count;
@@ -1838,6 +1899,10 @@ struct verify_krb5_pac_state {
enc_key_t *kdc_ek;
krb5_cksumtype ticket_checksum_type;
const krb5_data *ticket_checksum_data;
+ krb5_cksumtype full_checksum_type;
+ const krb5_data *full_checksum_data;
+ guint full_count;
+ enc_key_t *full_ek;
};
static void
@@ -2019,7 +2084,7 @@ verify_krb5_pac_ticket_checksum(proto_tree *tree _U_,
}
checksum.length = MIN(checksum.length, (unsigned int)checksum_length);
- tepdata.data = (void *)(uintptr_t)tepbuffer;
+ tepdata.data = (void *)tepbuffer;
tepdata.length = teplength;
ret = decode_krb5_enc_tkt_part(&tepdata, &tep);
@@ -2161,6 +2226,216 @@ verify_krb5_pac_ticket_checksum(proto_tree *tree _U_,
#endif /* HAVE_DECODE_KRB5_ENC_TKT_PART */
}
+#define __KRB5_PAC_FULL_CHECKSUM 19
+
+static void
+verify_krb5_pac_full_checksum(proto_tree *tree,
+ asn1_ctx_t *actx,
+ tvbuff_t *orig_pactvb,
+ struct verify_krb5_pac_state *state)
+{
+ kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
+ krb5_error_code ret;
+ krb5_keyblock kdc_key = { .magic = KV5M_KEYBLOCK, };
+ size_t checksum_length = 0;
+ krb5_checksum checksum = { .checksum_type = 0, };
+ krb5_data pac_data = { .length = 0, };
+ tvbuff_t *copy_pactvb = NULL;
+ guint32 cur_offset;
+ guint32 num_buffers;
+ guint32 idx;
+ krb5_boolean valid = FALSE;
+
+ if (state->kdc_ek == NULL) {
+ int keytype = keytype_for_cksumtype(state->full_checksum_type);
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ keytype,
+ "Missing KDC (for full)",
+ "kdc_checksum_key",
+ 0,
+ 0);
+ return;
+ }
+
+ kdc_key.magic = KV5M_KEYBLOCK;
+ kdc_key.enctype = state->kdc_ek->keytype;
+ kdc_key.length = state->kdc_ek->keylength;
+ kdc_key.contents = (guint8 *)state->kdc_ek->keyvalue;
+
+ ret = krb5_c_checksum_length(krb5_ctx,
+ state->full_checksum_type,
+ &checksum_length);
+ if (ret != 0) {
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ state->kdc_ek->keytype,
+ "krb5_c_checksum_length failed for Full Signature",
+ "kdc_checksum_key",
+ 1,
+ 0);
+ return;
+ }
+
+ /*
+ * The checksum element begins with 4 bytes of type
+ * (state->full_checksum_type) before the crypto checksum
+ */
+ if (state->full_checksum_data->length < (4 + checksum_length)) {
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ state->kdc_ek->keytype,
+ "pacbuffer_length too short for Full Signature",
+ "kdc_checksum_key",
+ 1,
+ 0);
+ return;
+ }
+
+ pac_data.data = wmem_memdup(actx->pinfo->pool, state->pacbuffer, state->pacbuffer_length);
+ if (pac_data.data == NULL) {
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ state->kdc_ek->keytype,
+ "wmem_memdup(pacbuffer) failed",
+ "kdc_checksum_key",
+ 1,
+ 0);
+ return;
+ }
+ pac_data.length = state->pacbuffer_length;
+
+ copy_pactvb = tvb_new_child_real_data(orig_pactvb,
+ (guint8 *)pac_data.data,
+ pac_data.length,
+ pac_data.length);
+ if (copy_pactvb == NULL) {
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ state->kdc_ek->keytype,
+ "tvb_new_child_real_data(pac_copy) failed",
+ "kdc_checksum_key",
+ 1,
+ 0);
+ return;
+ }
+
+#define __PAC_CHECK_OFFSET_SIZE(__offset, __length, __reason) do { \
+ guint64 __end = state->pacbuffer_length; \
+ guint64 __offset64 = __offset; \
+ guint64 __length64 = __length; \
+ guint64 __last; \
+ if (__offset64 > G_MAXINT32) { \
+ missing_signing_key(tree, actx->pinfo, private_data, \
+ orig_pactvb, state->full_checksum_type, \
+ state->kdc_ek->keytype, \
+ __reason, \
+ "kdc_checksum_key", \
+ 1, \
+ 0); \
+ return; \
+ } \
+ if (__length64 > G_MAXINT32) { \
+ missing_signing_key(tree, actx->pinfo, private_data, \
+ orig_pactvb, state->full_checksum_type, \
+ state->kdc_ek->keytype, \
+ __reason, \
+ "kdc_checksum_key", \
+ 1, \
+ 0); \
+ return; \
+ } \
+ __last = __offset64 + __length64; \
+ if (__last > __end) { \
+ missing_signing_key(tree, actx->pinfo, private_data, \
+ orig_pactvb, state->full_checksum_type, \
+ state->kdc_ek->keytype, \
+ __reason, \
+ "kdc_checksum_key", \
+ 1, \
+ 0); \
+ return; \
+ } \
+} while(0)
+
+ cur_offset = 0;
+ __PAC_CHECK_OFFSET_SIZE(cur_offset, 8, "PACTYPE Header");
+ num_buffers = tvb_get_guint32(copy_pactvb, cur_offset, ENC_LITTLE_ENDIAN);
+ cur_offset += 4;
+ /* ignore 4 byte version */
+ cur_offset += 4;
+
+ for (idx = 0; idx < num_buffers; idx++) {
+ guint32 b_type;
+ guint32 b_length;
+ guint64 b_offset;
+
+ __PAC_CHECK_OFFSET_SIZE(cur_offset, 16, "PAC_INFO_BUFFER Header");
+ b_type = tvb_get_guint32(copy_pactvb, cur_offset, ENC_LITTLE_ENDIAN);
+ cur_offset += 4;
+ b_length = tvb_get_guint32(copy_pactvb, cur_offset, ENC_LITTLE_ENDIAN);
+ cur_offset += 4;
+ b_offset = tvb_get_guint64(copy_pactvb, cur_offset, ENC_LITTLE_ENDIAN);
+ cur_offset += 8;
+
+ __PAC_CHECK_OFFSET_SIZE(b_offset, b_length, "PAC_INFO_BUFFER Payload");
+
+ if (b_length <= 4) {
+ continue;
+ }
+
+ /*
+ * Leave PAC_TICKET_CHECKSUM and clear all other checksums
+ * and their possible RODC identifier, but leaving their
+ * checksum type as is.
+ */
+ switch (b_type) {
+ case KRB5_PAC_SERVER_CHECKSUM:
+ case KRB5_PAC_PRIVSVR_CHECKSUM:
+ case __KRB5_PAC_FULL_CHECKSUM:
+ memset(pac_data.data + b_offset+4, 0, b_length-4);
+ break;
+ }
+ }
+
+ checksum.checksum_type = state->full_checksum_type;
+ checksum.contents = (guint8 *)state->full_checksum_data->data + 4;
+ checksum.length = (unsigned)checksum_length;
+
+ ret = krb5_c_verify_checksum(krb5_ctx, &kdc_key,
+ KRB5_KEYUSAGE_APP_DATA_CKSUM,
+ &pac_data, &checksum, &valid);
+ if (ret != 0) {
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ state->kdc_ek->keytype,
+ "krb5_c_verify_checksum failed for Full PAC Signature",
+ "kdc_checksum_key",
+ 1,
+ 1);
+ return;
+ }
+
+ if (valid == FALSE) {
+ missing_signing_key(tree, actx->pinfo, private_data,
+ orig_pactvb, state->full_checksum_type,
+ state->kdc_ek->keytype,
+ "Invalid Full PAC Signature",
+ "kdc_checksum_key",
+ 1,
+ 1);
+ return;
+ }
+
+ used_signing_key(tree, actx->pinfo, private_data,
+ state->kdc_ek, orig_pactvb,
+ state->full_checksum_type,
+ "Verified Full PAC",
+ "kdc_checksum_key",
+ 1,
+ 1);
+}
+
static void
verify_krb5_pac(proto_tree *tree _U_, asn1_ctx_t *actx, tvbuff_t *pactvb)
{
@@ -2168,6 +2443,7 @@ verify_krb5_pac(proto_tree *tree _U_, asn1_ctx_t *actx, tvbuff_t *pactvb)
krb5_error_code ret;
krb5_data checksum_data = {0,0,NULL};
krb5_data ticket_checksum_data = {0,0,NULL};
+ krb5_data full_checksum_data = {0,0,NULL};
int length = tvb_captured_length(pactvb);
const guint8 *pacbuffer = NULL;
struct verify_krb5_pac_state state = {
@@ -2185,6 +2461,8 @@ verify_krb5_pac(proto_tree *tree _U_, asn1_ctx_t *actx, tvbuff_t *pactvb)
}
pacbuffer = tvb_get_ptr(pactvb, 0, length);
+ state.pacbuffer_length = length;
+ state.pacbuffer = pacbuffer;
ret = krb5_pac_parse(krb5_ctx, pacbuffer, length, &state.pac);
if (ret != 0) {
@@ -2214,6 +2492,13 @@ verify_krb5_pac(proto_tree *tree _U_, asn1_ctx_t *actx, tvbuff_t *pactvb)
state.ticket_checksum_data = &ticket_checksum_data;
state.ticket_checksum_type = pletoh32(ticket_checksum_data.data);
};
+ ret = krb5_pac_get_buffer(krb5_ctx, state.pac,
+ __KRB5_PAC_FULL_CHECKSUM,
+ &full_checksum_data);
+ if (ret == 0) {
+ state.full_checksum_data = &full_checksum_data;
+ state.full_checksum_type = pletoh32(full_checksum_data.data);
+ };
read_keytab_file_from_preferences();
@@ -2264,6 +2549,14 @@ verify_krb5_pac(proto_tree *tree _U_, asn1_ctx_t *actx, tvbuff_t *pactvb)
krb5_free_data_contents(krb5_ctx, &ticket_checksum_data);
}
+ if (state.full_checksum_type != 0) {
+ verify_krb5_pac_full_checksum(tree, actx, pactvb, &state);
+ }
+
+ if (state.full_checksum_data != NULL) {
+ krb5_free_data_contents(krb5_ctx, &full_checksum_data);
+ }
+
krb5_pac_free(krb5_ctx, state.pac);
}
#endif /* HAVE_KRB5_PAC_VERIFY */
@@ -2326,19 +2619,19 @@ read_keytab_file(const char *filename)
new_key = wmem_new0(wmem_epan_scope(), enc_key_t);
new_key->fd_num = -1;
new_key->id = ++kerberos_longterm_ids;
- g_snprintf(new_key->id_str, KRB_MAX_ID_STR_LEN, "keytab.%u", new_key->id);
+ snprintf(new_key->id_str, KRB_MAX_ID_STR_LEN, "keytab.%u", new_key->id);
new_key->next = enc_key_list;
/* generate origin string, describing where this key came from */
pos=new_key->key_origin;
pos+=MIN(KRB_MAX_ORIG_LEN,
- g_snprintf(pos, KRB_MAX_ORIG_LEN, "keytab principal "));
+ snprintf(pos, KRB_MAX_ORIG_LEN, "keytab principal "));
for(i=0;i<key.principal->name.name_string.len;i++){
pos+=MIN(KRB_MAX_ORIG_LEN-(pos-new_key->key_origin),
- g_snprintf(pos, KRB_MAX_ORIG_LEN-(pos-new_key->key_origin), "%s%s",(i?"/":""),key.principal->name.name_string.val[i]));
+ snprintf(pos, KRB_MAX_ORIG_LEN-(pos-new_key->key_origin), "%s%s",(i?"/":""),key.principal->name.name_string.val[i]));
}
pos+=MIN(KRB_MAX_ORIG_LEN-(pos-new_key->key_origin),
- g_snprintf(pos, KRB_MAX_ORIG_LEN-(pos-new_key->key_origin), "@%s",key.principal->realm));
+ snprintf(pos, KRB_MAX_ORIG_LEN-(pos-new_key->key_origin), "@%s",key.principal->realm));
*pos=0;
new_key->keytype=key.keyblock.keytype;
new_key->keylength=(int)key.keyblock.keyvalue.length;
@@ -2475,7 +2768,7 @@ add_encryption_key(packet_info *pinfo, int keytype, int keylength, const char *k
new_key->keytype = keytype;
new_key->length = keylength;
new_key->contents = g_memdup2(keyvalue, keylength);
- g_snprintf(new_key->origin, KRB_MAX_ORIG_LEN, "%s learnt from frame %u", origin, pinfo->num);
+ snprintf(new_key->origin, KRB_MAX_ORIG_LEN, "%s learnt from frame %u", origin, pinfo->num);
service_key_list = g_slist_append(service_key_list, (gpointer) new_key);
}
@@ -2490,7 +2783,7 @@ save_encryption_key(tvbuff_t *tvb _U_, int offset _U_, int length _U_,
const char *element = proto_registrar_get_name(hf_index);
char origin[KRB_MAX_ORIG_LEN] = { 0, };
- g_snprintf(origin, KRB_MAX_ORIG_LEN, "%s_%s", parent, element);
+ snprintf(origin, KRB_MAX_ORIG_LEN, "%s_%s", parent, element);
add_encryption_key(actx->pinfo,
private_data->key.keytype,
@@ -2603,7 +2896,7 @@ read_keytab_file(const char *service_key_file)
sk->keytype = KEYTYPE_DES3_CBC_MD5;
sk->length = DES3_KEY_SIZE;
sk->contents = g_memdup2(buf + 2, DES3_KEY_SIZE);
- g_snprintf(sk->origin, KRB_MAX_ORIG_LEN, "3DES service key file, key #%d, offset %ld", count, ftell(skf));
+ snprintf(sk->origin, KRB_MAX_ORIG_LEN, "3DES service key file, key #%d, offset %ld", count, ftell(skf));
service_key_list = g_slist_append(service_key_list, (gpointer) sk);
if (fseek(skf, newline_skip, SEEK_CUR) < 0) {
fprintf(stderr, "unable to seek...\n");
@@ -2628,7 +2921,7 @@ decrypt_krb5_data(proto_tree *tree, packet_info *pinfo,
tvbuff_t *encr_tvb;
guint8 *decrypted_data = NULL, *plaintext = NULL;
guint8 cls;
- gboolean pc;
+ bool pc;
guint32 tag, item_len, data_len;
int id_offset, offset;
guint8 key[DES3_KEY_SIZE];
@@ -2637,7 +2930,7 @@ decrypt_krb5_data(proto_tree *tree, packet_info *pinfo,
guint8 *digest;
guint8 zero_fill[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
guint8 confounder[8];
- gboolean ind;
+ bool ind;
GSList *ske;
service_key_t *sk;
struct des3_ctx ctx;
@@ -2964,6 +3257,9 @@ static const value_string krb5_error_codes[] = {
#define PAC_DEVICE_INFO 14
#define PAC_DEVICE_CLAIMS_INFO 15
#define PAC_TICKET_CHECKSUM 16
+#define PAC_ATTRIBUTES_INFO 17
+#define PAC_REQUESTER_SID 18
+#define PAC_FULL_CHECKSUM 19
static const value_string w2k_pac_types[] = {
{ PAC_LOGON_INFO , "Logon Info" },
{ PAC_CREDENTIAL_TYPE , "Credential Type" },
@@ -2976,6 +3272,9 @@ static const value_string w2k_pac_types[] = {
{ PAC_DEVICE_INFO , "Device Info" },
{ PAC_DEVICE_CLAIMS_INFO , "Device Claims Info" },
{ PAC_TICKET_CHECKSUM , "Ticket Checksum" },
+ { PAC_ATTRIBUTES_INFO , "Attributes Info" },
+ { PAC_REQUESTER_SID , "Requester Sid" },
+ { PAC_FULL_CHECKSUM , "Full Checksum" },
{ 0, NULL },
};
@@ -3060,7 +3359,7 @@ decrypt_krb5_data_asn1(proto_tree *tree, asn1_ctx_t *actx,
}
static int
-dissect_krb5_decrypt_ticket_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_ticket_data (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3093,7 +3392,7 @@ dissect_krb5_decrypt_ticket_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offse
}
static int
-dissect_krb5_decrypt_authenticator_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_authenticator_data (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
@@ -3136,7 +3435,7 @@ dissect_krb5_decrypt_authenticator_data (gboolean imp_tag _U_, tvbuff_t *tvb, in
}
static int
-dissect_krb5_decrypt_authorization_data(gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_authorization_data(bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
@@ -3177,7 +3476,7 @@ dissect_krb5_decrypt_authorization_data(gboolean imp_tag _U_, tvbuff_t *tvb, int
}
static int
-dissect_krb5_decrypt_KDC_REP_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_KDC_REP_data (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
@@ -3248,7 +3547,7 @@ dissect_krb5_decrypt_KDC_REP_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offs
}
static int
-dissect_krb5_decrypt_PA_ENC_TIMESTAMP (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_PA_ENC_TIMESTAMP (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3278,7 +3577,7 @@ dissect_krb5_decrypt_PA_ENC_TIMESTAMP (gboolean imp_tag _U_, tvbuff_t *tvb, int
}
static int
-dissect_krb5_decrypt_AP_REP_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_AP_REP_data (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3307,7 +3606,7 @@ dissect_krb5_decrypt_AP_REP_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offse
}
static int
-dissect_krb5_decrypt_PRIV_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_PRIV_data (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3336,9 +3635,10 @@ dissect_krb5_decrypt_PRIV_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset,
}
static int
-dissect_krb5_decrypt_CRED_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_CRED_data (bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
+ kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
guint8 *plaintext;
int length;
tvbuff_t *next_tvb;
@@ -3346,6 +3646,11 @@ dissect_krb5_decrypt_CRED_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset,
next_tvb=tvb_new_subset_remaining(tvb, offset);
length=tvb_captured_length_remaining(tvb, offset);
+ if (private_data->etype == 0) {
+ offset=dissect_kerberos_Applications(FALSE, next_tvb, 0, actx , tree, /* hf_index*/ -1);
+ return offset;
+ }
+
/* RFC4120 :
* EncKrbCredPart encrypted with usage
* == 14
@@ -3365,7 +3670,7 @@ dissect_krb5_decrypt_CRED_data (gboolean imp_tag _U_, tvbuff_t *tvb, int offset,
}
static int
-dissect_krb5_decrypt_KrbFastReq(gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_KrbFastReq(bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3428,7 +3733,7 @@ dissect_krb5_decrypt_KrbFastReq(gboolean imp_tag _U_, tvbuff_t *tvb, int offset,
}
static int
-dissect_krb5_decrypt_KrbFastResponse(gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_KrbFastResponse(bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3461,7 +3766,7 @@ dissect_krb5_decrypt_KrbFastResponse(gboolean imp_tag _U_, tvbuff_t *tvb, int of
}
static int
-dissect_krb5_decrypt_EncryptedChallenge(gboolean imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
+dissect_krb5_decrypt_EncryptedChallenge(bool imp_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
proto_tree *tree, int hf_index _U_)
{
guint8 *plaintext;
@@ -3506,6 +3811,7 @@ static int * const hf_krb_pa_supported_enctypes_fields[] = {
&hf_krb_pa_supported_enctypes_rc4_hmac,
&hf_krb_pa_supported_enctypes_aes128_cts_hmac_sha1_96,
&hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96,
+ &hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96_sk,
&hf_krb_pa_supported_enctypes_fast_supported,
&hf_krb_pa_supported_enctypes_compound_identity_supported,
&hf_krb_pa_supported_enctypes_claims_supported,
@@ -3514,7 +3820,7 @@ static int * const hf_krb_pa_supported_enctypes_fields[] = {
};
static int
-dissect_kerberos_PA_SUPPORTED_ENCTYPES(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
+dissect_kerberos_PA_SUPPORTED_ENCTYPES(bool implicit_tag _U_, tvbuff_t *tvb _U_,
int offset _U_, asn1_ctx_t *actx _U_,
proto_tree *tree _U_, int hf_index _U_)
{
@@ -3530,12 +3836,13 @@ dissect_kerberos_PA_SUPPORTED_ENCTYPES(gboolean implicit_tag _U_, tvbuff_t *tvb
static int * const hf_krb_ad_ap_options_fields[] = {
&hf_krb_ad_ap_options_cbt,
+ &hf_krb_ad_ap_options_unverified_target_name,
NULL,
};
static int
-dissect_kerberos_AD_AP_OPTIONS(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
+dissect_kerberos_AD_AP_OPTIONS(bool implicit_tag _U_, tvbuff_t *tvb _U_,
int offset _U_, asn1_ctx_t *actx _U_,
proto_tree *tree _U_, int hf_index _U_)
{
@@ -3550,7 +3857,7 @@ dissect_kerberos_AD_AP_OPTIONS(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
}
static int
-dissect_kerberos_AD_TARGET_PRINCIPAL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
+dissect_kerberos_AD_TARGET_PRINCIPAL(bool implicit_tag _U_, tvbuff_t *tvb _U_,
int offset _U_, asn1_ctx_t *actx _U_,
proto_tree *tree _U_, int hf_index _U_)
{
@@ -3626,7 +3933,7 @@ dissect_krb5_rfc1964_checksum(asn1_ctx_t *actx _U_, proto_tree *tree, tvbuff_t *
}
static int
-dissect_krb5_PA_PROV_SRV_LOCATION(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_)
+dissect_krb5_PA_PROV_SRV_LOCATION(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_)
{
offset=dissect_ber_GeneralString(actx, tree, tvb, offset, hf_krb_provsrv_location, NULL, 0);
@@ -3634,7 +3941,7 @@ dissect_krb5_PA_PROV_SRV_LOCATION(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
}
static int
-dissect_krb5_PW_SALT(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_)
+dissect_krb5_PW_SALT(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_)
{
kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
gint length;
@@ -3874,6 +4181,22 @@ dissect_krb5_PAC_S4U_DELEGATION_INFO(proto_tree *parent_tree, tvbuff_t *tvb, int
return offset;
}
+#define PAC_UPN_DNS_FLAG_CONSTRUCTED 0x00000001
+#define PAC_UPN_DNS_FLAG_HAS_SAM_NAME_AND_SID 0x00000002
+static const true_false_string tfs_krb_pac_upn_flag_upn_constructed = {
+ "UPN Name is Constructed",
+ "UPN Name is NOT Constructed",
+};
+static const true_false_string tfs_krb_pac_upn_flag_has_sam_name_and_sid = {
+ "SAM_NAME and SID are included",
+ "SAM_NAME and SID are NOT included",
+};
+static int * const hf_krb_pac_upn_flags_fields[] = {
+ &hf_krb_pac_upn_flag_upn_constructed,
+ &hf_krb_pac_upn_flag_has_sam_name_and_sid,
+ NULL
+};
+
static int
dissect_krb5_PAC_UPN_DNS_INFO(proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_)
{
@@ -3881,6 +4204,9 @@ dissect_krb5_PAC_UPN_DNS_INFO(proto_tree *parent_tree, tvbuff_t *tvb, int offset
proto_tree *tree;
guint16 dns_offset, dns_len;
guint16 upn_offset, upn_len;
+ guint16 samaccountname_offset = 0, samaccountname_len = 0;
+ guint16 objectsid_offset = 0, objectsid_len = 0;
+ guint32 flags;
item = proto_tree_add_item(parent_tree, hf_krb_pac_upn_dns_info, tvb, offset, -1, ENC_NA);
tree = proto_item_add_subtree(item, ett_krb_pac_upn_dns_info);
@@ -3902,7 +4228,29 @@ dissect_krb5_PAC_UPN_DNS_INFO(proto_tree *parent_tree, tvbuff_t *tvb, int offset
offset+=2;
/* flags */
- proto_tree_add_item(tree, hf_krb_pac_upn_flags, tvb, offset, 4, ENC_LITTLE_ENDIAN);
+ flags = tvb_get_letohl(tvb, offset);
+ proto_tree_add_bitmask(tree, tvb, offset,
+ hf_krb_pac_upn_flags,
+ ett_krb_pac_upn_dns_info_flags,
+ hf_krb_pac_upn_flags_fields,
+ ENC_LITTLE_ENDIAN);
+ offset+=4;
+
+ if (flags & PAC_UPN_DNS_FLAG_HAS_SAM_NAME_AND_SID) {
+ samaccountname_len = tvb_get_letohs(tvb, offset);
+ proto_tree_add_item(tree, hf_krb_pac_upn_samaccountname_len, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset+=2;
+ samaccountname_offset = tvb_get_letohs(tvb, offset);
+ proto_tree_add_item(tree, hf_krb_pac_upn_samaccountname_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset+=2;
+
+ objectsid_len = tvb_get_letohs(tvb, offset);
+ proto_tree_add_item(tree, hf_krb_pac_upn_objectsid_len, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset+=2;
+ objectsid_offset = tvb_get_letohs(tvb, offset);
+ proto_tree_add_item(tree, hf_krb_pac_upn_objectsid_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ /* offset+=2; */
+ }
/* upn */
proto_tree_add_item(tree, hf_krb_pac_upn_upn_name, tvb, upn_offset, upn_len, ENC_UTF_16|ENC_LITTLE_ENDIAN);
@@ -3910,6 +4258,17 @@ dissect_krb5_PAC_UPN_DNS_INFO(proto_tree *parent_tree, tvbuff_t *tvb, int offset
/* dns */
proto_tree_add_item(tree, hf_krb_pac_upn_dns_name, tvb, dns_offset, dns_len, ENC_UTF_16|ENC_LITTLE_ENDIAN);
+ /* samaccountname */
+ if (samaccountname_offset != 0 && samaccountname_len != 0) {
+ proto_tree_add_item(tree, hf_krb_pac_upn_samaccountname, tvb, samaccountname_offset, samaccountname_len, ENC_UTF_16|ENC_LITTLE_ENDIAN);
+ }
+ /* objectsid */
+ if (objectsid_offset != 0 && objectsid_len != 0) {
+ tvbuff_t *sid_tvb;
+ sid_tvb=tvb_new_subset_length(tvb, objectsid_offset, objectsid_len);
+ dissect_nt_sid(sid_tvb, 0, tree, "objectSid", NULL, -1);
+ }
+
return dns_offset;
}
@@ -4053,6 +4412,79 @@ dissect_krb5_PAC_TICKET_CHECKSUM(proto_tree *parent_tree, tvbuff_t *tvb, int off
return offset;
}
+#define PAC_ATTRIBUTE_FLAG_PAC_WAS_REQUESTED 0x00000001
+#define PAC_ATTRIBUTE_FLAG_PAC_WAS_GIVEN_IMPLICITLY 0x00000002
+static const true_false_string tfs_krb_pac_attributes_info_pac_was_requested = {
+ "PAC was requested",
+ "PAC was NOT requested",
+};
+static const true_false_string tfs_krb_pac_attributes_info_pac_was_given_implicitly = {
+ "PAC was given implicitly",
+ "PAC was NOT given implicitly",
+};
+static int * const hf_krb_pac_attributes_info_flags_fields[] = {
+ &hf_krb_pac_attributes_info_flags_pac_was_requested,
+ &hf_krb_pac_attributes_info_flags_pac_was_given_implicitly,
+ NULL
+};
+
+static int
+dissect_krb5_PAC_ATTRIBUTES_INFO(proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_)
+{
+ proto_item *item;
+ proto_tree *tree;
+
+ item = proto_tree_add_item(parent_tree, hf_krb_pac_attributes_info, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_krb_pac_attributes_info);
+
+ /* flags length*/
+ proto_tree_add_item(tree, hf_krb_pac_attributes_info_length, tvb, offset, 4, ENC_LITTLE_ENDIAN);
+ offset+=4;
+
+ /* flags */
+ proto_tree_add_bitmask(tree, tvb, offset,
+ hf_krb_pac_attributes_info_flags,
+ ett_krb_pac_attributes_info_flags,
+ hf_krb_pac_attributes_info_flags_fields,
+ ENC_LITTLE_ENDIAN);
+ offset+=4;
+
+ return offset;
+}
+
+static int
+dissect_krb5_PAC_REQUESTER_SID(proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_)
+{
+ proto_item *item;
+ proto_tree *tree;
+
+ item = proto_tree_add_item(parent_tree, hf_krb_pac_requester_sid, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_krb_pac_requester_sid);
+
+ offset = dissect_nt_sid(tvb, offset, tree, "RequesterSid", NULL, -1);
+
+ return offset;
+}
+
+static int
+dissect_krb5_PAC_FULL_CHECKSUM(proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_)
+{
+ proto_item *item;
+ proto_tree *tree;
+
+ item = proto_tree_add_item(parent_tree, hf_krb_pac_full_checksum, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_krb_pac_full_checksum);
+
+ /* signature type */
+ proto_tree_add_item(tree, hf_krb_pac_signature_type, tvb, offset, 4, ENC_LITTLE_ENDIAN);
+ offset+=4;
+
+ /* signature data */
+ proto_tree_add_item(tree, hf_krb_pac_signature_signature, tvb, offset, -1, ENC_NA);
+
+ return offset;
+}
+
static int
dissect_krb5_AD_WIN2K_PAC_struct(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx)
{
@@ -4115,6 +4547,15 @@ dissect_krb5_AD_WIN2K_PAC_struct(proto_tree *tree, tvbuff_t *tvb, int offset, as
case PAC_TICKET_CHECKSUM:
dissect_krb5_PAC_TICKET_CHECKSUM(tr, next_tvb, 0, actx);
break;
+ case PAC_ATTRIBUTES_INFO:
+ dissect_krb5_PAC_ATTRIBUTES_INFO(tr, next_tvb, 0, actx);
+ break;
+ case PAC_REQUESTER_SID:
+ dissect_krb5_PAC_REQUESTER_SID(tr, next_tvb, 0, actx);
+ break;
+ case PAC_FULL_CHECKSUM:
+ dissect_krb5_PAC_FULL_CHECKSUM(tr, next_tvb, 0, actx);
+ break;
default:
break;
@@ -4123,7 +4564,7 @@ dissect_krb5_AD_WIN2K_PAC_struct(proto_tree *tree, tvbuff_t *tvb, int offset, as
}
static int
-dissect_krb5_AD_WIN2K_PAC(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
+dissect_krb5_AD_WIN2K_PAC(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
{
guint32 entries;
guint32 version;
@@ -4160,15 +4601,14 @@ static const ber_sequence_t PA_ENC_TS_ENC_sequence[] = {
};
static int
-dissect_kerberos_PA_ENC_TS_ENC(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_kerberos_PA_ENC_TS_ENC(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
PA_ENC_TS_ENC_sequence, hf_index, ett_krb_pa_enc_ts_enc);
return offset;
}
static int
-dissect_kerberos_T_strengthen_key(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 491 "./asn1/kerberos/kerberos.cnf"
+dissect_kerberos_T_strengthen_key(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
gint save_encryption_key_parent_hf_index = private_data->save_encryption_key_parent_hf_index;
kerberos_key_save_fn saved_encryption_key_fn = private_data->save_encryption_key_fn;
@@ -4193,7 +4633,7 @@ static const ber_sequence_t KrbFastFinished_sequence[] = {
};
static int
-dissect_kerberos_KrbFastFinished(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_kerberos_KrbFastFinished(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
KrbFastFinished_sequence, hf_index, ett_kerberos_KrbFastFinished);
@@ -4201,7 +4641,7 @@ dissect_kerberos_KrbFastFinished(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i
}
static const ber_sequence_t KrbFastResponse_sequence[] = {
- { &hf_kerberos_padata , BER_CLASS_CON, 0, 0, dissect_kerberos_SEQUENCE_OF_PA_DATA },
+ { &hf_kerberos_rEP_SEQUENCE_OF_PA_DATA, BER_CLASS_CON, 0, 0, dissect_kerberos_T_rEP_SEQUENCE_OF_PA_DATA },
{ &hf_kerberos_strengthen_key, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_kerberos_T_strengthen_key },
{ &hf_kerberos_finished , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_kerberos_KrbFastFinished },
{ &hf_kerberos_nonce , BER_CLASS_CON, 3, 0, dissect_kerberos_UInt32 },
@@ -4209,7 +4649,7 @@ static const ber_sequence_t KrbFastResponse_sequence[] = {
};
static int
-dissect_kerberos_KrbFastResponse(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_kerberos_KrbFastResponse(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
KrbFastResponse_sequence, hf_index, ett_kerberos_KrbFastResponse);
@@ -4218,15 +4658,19 @@ dissect_kerberos_KrbFastResponse(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i
static const ber_sequence_t KrbFastReq_sequence[] = {
{ &hf_kerberos_fast_options, BER_CLASS_CON, 0, 0, dissect_kerberos_FastOptions },
- { &hf_kerberos_padata , BER_CLASS_CON, 1, 0, dissect_kerberos_SEQUENCE_OF_PA_DATA },
+ { &hf_kerberos_rEQ_SEQUENCE_OF_PA_DATA, BER_CLASS_CON, 1, 0, dissect_kerberos_T_rEQ_SEQUENCE_OF_PA_DATA },
{ &hf_kerberos_req_body , BER_CLASS_CON, 2, 0, dissect_kerberos_KDC_REQ_BODY },
{ NULL, 0, 0, 0, NULL }
};
static int
-dissect_kerberos_KrbFastReq(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_kerberos_KrbFastReq(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ kerberos_private_data_t *private_data = kerberos_get_private_data(actx);
+ struct _kerberos_PA_FX_FAST_REQUEST saved_stack = private_data->PA_FX_FAST_REQUEST;
+ private_data->PA_FX_FAST_REQUEST = (struct _kerberos_PA_FX_FAST_REQUEST) { .defer = FALSE, };
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
KrbFastReq_sequence, hf_index, ett_kerberos_KrbFastReq);
+ private_data->PA_FX_FAST_REQUEST = saved_stack;
return offset;
}
@@ -4253,7 +4697,7 @@ static int * const FastOptions_bits[] = {
};
static int
-dissect_kerberos_FastOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_kerberos_FastOptions(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
FastOptions_bits, 17, hf_index, ett_kerberos_FastOptions,
NULL);
@@ -4448,7 +4892,7 @@ dissect_kerberos_KERB_TICKET_LOGON(tvbuff_t *tvb, int offset, asn1_ctx_t *actx,
static gint
dissect_kerberos_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
- gboolean dci, gboolean do_col_protocol, gboolean have_rm,
+ bool dci, bool do_col_protocol, bool have_rm,
kerberos_callbacks *cb)
{
volatile int offset = 0;
@@ -4492,7 +4936,7 @@ dissect_kerberos_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
* a go at it.
*/
gint8 tmp_class;
- gboolean tmp_pc;
+ bool tmp_pc;
gint32 tmp_tag;
get_ber_identifier(tvb, offset, &tmp_class, &tmp_pc, &tmp_tag);
@@ -4839,12 +5283,20 @@ void proto_register_kerberos(void) {
{ &hf_krb_pac_upn_flags, {
"Flags", "kerberos.pac.upn.flags", FT_UINT32, BASE_HEX,
NULL, 0, "UPN flags", HFILL }},
- { &hf_krb_pac_upn_dns_offset, {
- "DNS Offset", "kerberos.pac.upn.dns_offset", FT_UINT16, BASE_DEC,
- NULL, 0, NULL, HFILL }},
- { &hf_krb_pac_upn_dns_len, {
- "DNS Len", "kerberos.pac.upn.dns_len", FT_UINT16, BASE_DEC,
- NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_flag_upn_constructed, {
+ "UPN Name Constructed",
+ "kerberos.pac.upn.flags.upn_constructed",
+ FT_BOOLEAN, 32,
+ TFS(&tfs_krb_pac_upn_flag_upn_constructed),
+ PAC_UPN_DNS_FLAG_CONSTRUCTED,
+ "Is the UPN Name constructed?", HFILL }},
+ { &hf_krb_pac_upn_flag_has_sam_name_and_sid, {
+ "SAM_NAME and SID Included",
+ "kerberos.pac.upn.flags.has_sam_name_and_sid",
+ FT_BOOLEAN, 32,
+ TFS(&tfs_krb_pac_upn_flag_has_sam_name_and_sid),
+ PAC_UPN_DNS_FLAG_HAS_SAM_NAME_AND_SID,
+ "Are SAM_NAME and SID included?", HFILL }},
{ &hf_krb_pac_upn_upn_offset, {
"UPN Offset", "kerberos.pac.upn.upn_offset", FT_UINT16, BASE_DEC,
NULL, 0, NULL, HFILL }},
@@ -4854,9 +5306,30 @@ void proto_register_kerberos(void) {
{ &hf_krb_pac_upn_upn_name, {
"UPN Name", "kerberos.pac.upn.upn_name", FT_STRING, BASE_NONE,
NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_dns_offset, {
+ "DNS Offset", "kerberos.pac.upn.dns_offset", FT_UINT16, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_dns_len, {
+ "DNS Len", "kerberos.pac.upn.dns_len", FT_UINT16, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
{ &hf_krb_pac_upn_dns_name, {
"DNS Name", "kerberos.pac.upn.dns_name", FT_STRING, BASE_NONE,
NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_samaccountname_offset, {
+ "sAMAccountName Offset", "kerberos.pac.upn.samaccountname_offset", FT_UINT16, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_samaccountname_len, {
+ "sAMAccountName Len", "kerberos.pac.upn.samaccountname_len", FT_UINT16, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_samaccountname, {
+ "sAMAccountName", "kerberos.pac.upn.samaccountname", FT_STRING, BASE_NONE,
+ NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_objectsid_offset, {
+ "objectSid Offset", "kerberos.pac.upn.objectsid_offset", FT_UINT16, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_upn_objectsid_len, {
+ "objectSid Len", "kerberos.pac.upn.objectsid_len", FT_UINT16, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
{ &hf_krb_pac_client_claims_info, {
"PAC_CLIENT_CLAIMS_INFO", "kerberos.pac_client_claims_info", FT_BYTES, BASE_NONE,
NULL, 0, "PAC_CLIENT_CLAIMS_INFO structure", HFILL }},
@@ -4869,6 +5342,35 @@ void proto_register_kerberos(void) {
{ &hf_krb_pac_ticket_checksum, {
"PAC_TICKET_CHECKSUM", "kerberos.pac_ticket_checksum", FT_BYTES, BASE_NONE,
NULL, 0, "PAC_TICKET_CHECKSUM structure", HFILL }},
+ { &hf_krb_pac_attributes_info, {
+ "PAC_ATTRIBUTES_INFO", "kerberos.pac_attributes_info", FT_BYTES, BASE_NONE,
+ NULL, 0, "PAC_ATTRIBUTES_INFO structure", HFILL }},
+ { &hf_krb_pac_attributes_info_length, {
+ "Flags Valid Length", "kerberos.pac.attributes_info.length", FT_UINT32, BASE_DEC,
+ NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_attributes_info_flags, {
+ "Flags", "kerberos.pac.attributes_info.flags",
+ FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_krb_pac_attributes_info_flags_pac_was_requested, {
+ "PAC Requested",
+ "kerberos.pac.attributes.flags.pac_was_requested",
+ FT_BOOLEAN, 32,
+ TFS(&tfs_krb_pac_attributes_info_pac_was_requested),
+ PAC_ATTRIBUTE_FLAG_PAC_WAS_REQUESTED,
+ "Was a PAC requested?", HFILL }},
+ { &hf_krb_pac_attributes_info_flags_pac_was_given_implicitly, {
+ "PAC given Implicitly",
+ "kerberos.pac.attributes.flags.pac_was_given_implicitly",
+ FT_BOOLEAN, 32,
+ TFS(&tfs_krb_pac_attributes_info_pac_was_given_implicitly),
+ PAC_ATTRIBUTE_FLAG_PAC_WAS_GIVEN_IMPLICITLY,
+ "Was PAC given implicitly?", HFILL }},
+ { &hf_krb_pac_requester_sid, {
+ "PAC_REQUESTER_SID", "kerberos.pac_requester_sid", FT_BYTES, BASE_NONE,
+ NULL, 0, "PAC_REQUESTER_SID structure", HFILL }},
+ { &hf_krb_pac_full_checksum, {
+ "PAC_FULL_CHECKSUM", "kerberos.pac_full_checksum", FT_BYTES, BASE_NONE,
+ NULL, 0, "PAC_FULL_CHECKSUM structure", HFILL }},
{ &hf_krb_pa_supported_enctypes,
{ "SupportedEnctypes", "kerberos.supported_entypes",
FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
@@ -4887,6 +5389,9 @@ void proto_register_kerberos(void) {
{ &hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96,
{ "aes256-cts-hmac-sha1-96", "kerberos.supported_entypes.aes256-cts-hmac-sha1-96",
FT_BOOLEAN, 32, TFS(&tfs_supported_not_supported), 0x00000010, NULL, HFILL }},
+ { &hf_krb_pa_supported_enctypes_aes256_cts_hmac_sha1_96_sk,
+ { "aes256-cts-hmac-sha1-96-sk", "kerberos.supported_entypes.aes256-cts-hmac-sha1-96-sk",
+ FT_BOOLEAN, 32, TFS(&tfs_supported_not_supported), 0x00000020, NULL, HFILL }},
{ &hf_krb_pa_supported_enctypes_fast_supported,
{ "fast-supported", "kerberos.supported_entypes.fast-supported",
FT_BOOLEAN, 32, TFS(&tfs_supported_not_supported), 0x00010000, NULL, HFILL }},
@@ -4905,6 +5410,9 @@ void proto_register_kerberos(void) {
{ &hf_krb_ad_ap_options_cbt,
{ "ChannelBindings", "kerberos.ad_ap_options.cbt",
FT_BOOLEAN, 32, TFS(&tfs_set_notset), 0x00004000, NULL, HFILL }},
+ { &hf_krb_ad_ap_options_unverified_target_name,
+ { "UnverifiedTargetName", "kerberos.ad_ap_options.unverified_target_name",
+ FT_BOOLEAN, 32, TFS(&tfs_set_notset), 0x00008000, NULL, HFILL }},
{ &hf_krb_ad_target_principal,
{ "Target Principal", "kerberos.ad_target_principal",
FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
@@ -5037,7 +5545,7 @@ void proto_register_kerberos(void) {
"Checksum", HFILL }},
{ &hf_krb_patimestamp,
{ "patimestamp", "kerberos.patimestamp",
- FT_STRING, BASE_NONE, NULL, 0, "KerberosTime", HFILL }},
+ FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "KerberosTime", HFILL }},
{ &hf_krb_pausec,
{ "pausec", "kerberos.pausec",
FT_UINT32, BASE_DEC, NULL, 0, "Microseconds", HFILL }},
@@ -5057,11 +5565,16 @@ void proto_register_kerberos(void) {
&ett_krb_pac_credential_info,
&ett_krb_pac_s4u_delegation_info,
&ett_krb_pac_upn_dns_info,
+ &ett_krb_pac_upn_dns_info_flags,
&ett_krb_pac_device_info,
&ett_krb_pac_server_checksum,
&ett_krb_pac_privsvr_checksum,
&ett_krb_pac_client_info_type,
&ett_krb_pac_ticket_checksum,
+ &ett_krb_pac_attributes_info,
+ &ett_krb_pac_attributes_info_flags,
+ &ett_krb_pac_requester_sid,
+ &ett_krb_pac_full_checksum,
&ett_krb_pa_supported_enctypes,
&ett_krb_ad_ap_options,
&ett_kerberos_KERB_TICKET_LOGON,
@@ -5092,6 +5605,10 @@ void proto_register_kerberos(void) {
expert_krb = expert_register_protocol(proto_kerberos);
expert_register_field_array(expert_krb, ei, array_length(ei));
+ /* Register dissectors */
+ kerberos_handle_udp = register_dissector("kerberos.udp", dissect_kerberos_udp, proto_kerberos);
+ kerberos_handle_tcp = register_dissector("kerberos.tcp", dissect_kerberos_tcp, proto_kerberos);
+
/* Register preferences */
krb_module = prefs_register_protocol(proto_kerberos, kerberos_prefs_apply_cb);
prefs_register_bool_preference(krb_module, "desegment",
@@ -5176,16 +5693,8 @@ static dcerpc_auth_subdissector_fns gss_kerb_auth_seal_fns = {
void
proto_reg_handoff_kerberos(void)
{
- dissector_handle_t kerberos_handle_tcp;
-
krb4_handle = find_dissector_add_dependency("krb4", proto_kerberos);
- kerberos_handle_udp = create_dissector_handle(dissect_kerberos_udp,
- proto_kerberos);
-
- kerberos_handle_tcp = create_dissector_handle(dissect_kerberos_tcp,
- proto_kerberos);
-
dissector_add_uint_with_preference("udp.port", UDP_PORT_KERBEROS, kerberos_handle_udp);
dissector_add_uint_with_preference("tcp.port", TCP_PORT_KERBEROS, kerberos_handle_tcp);
diff --git a/epan/dissectors/asn1/kpm-v2/CMakeLists.txt b/epan/dissectors/asn1/kpm-v2/CMakeLists.txt
new file mode 100644
index 0000000000..f21e68ac59
--- /dev/null
+++ b/epan/dissectors/asn1/kpm-v2/CMakeLists.txt
@@ -0,0 +1,39 @@
+# CMakeLists.txt
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+
+set( PROTOCOL_NAME kpm-v2 )
+
+set( PROTO_OPT )
+
+set( EXPORT_FILES
+ ${PROTOCOL_NAME}-exp.cnf
+)
+
+set( EXT_ASN_FILE_LIST
+)
+
+set( ASN_FILE_LIST
+ e2sm-kpm-v2.02.asn
+ e2sm-v3.01.asn
+)
+
+set( EXTRA_DIST
+ ${ASN_FILE_LIST}
+ packet-${PROTOCOL_NAME}-template.c
+ ${PROTOCOL_NAME}.cnf
+)
+
+set( SRC_FILES
+ ${EXTRA_DIST}
+ ${EXT_ASN_FILE_LIST}
+)
+
+set( A2W_FLAGS )
+
+ASN2WRS()
diff --git a/epan/dissectors/asn1/kpm-v2/e2sm-kpm-v2.02.asn b/epan/dissectors/asn1/kpm-v2/e2sm-kpm-v2.02.asn
new file mode 100644
index 0000000000..5555ed7299
--- /dev/null
+++ b/epan/dissectors/asn1/kpm-v2/e2sm-kpm-v2.02.asn
@@ -0,0 +1,384 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM-KPM Information Element Definitions
+-- **************************************************************
+
+E2SM-KPM-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) oran(53148) e2(1) version2(2) e2sm(2) e2sm-KPMMON-IEs (2)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+-- IEs
+-- **************************************************************
+
+IMPORTS
+ CGI,
+ FiveQI,
+ PLMNIdentity,
+ QCI,
+ QosFlowIdentifier,
+ RANfunction-Name,
+ RIC-Format-Type,
+ RIC-Style-Name,
+ RIC-Style-Type,
+ S-NSSAI,
+ UEID
+FROM E2SM-COMMON-IEs;
+
+TimeStamp ::= OCTET STRING (SIZE(4))
+
+GranularityPeriod ::= INTEGER (1.. 4294967295)
+
+MeasurementType ::= CHOICE {
+ measName MeasurementTypeName,
+ measID MeasurementTypeID,
+ ...
+}
+
+MeasurementTypeName ::= PrintableString(SIZE(1.. 150, ...))
+
+MeasurementTypeID ::= INTEGER (1.. 65536, ...)
+
+MeasurementLabel ::= SEQUENCE {
+ noLabel ENUMERATED {true, ...} OPTIONAL,
+ -- TODO: changed from PLMNIdentity and S-NSSAI
+ plmnID PLMNIdentity OPTIONAL,
+ sliceID S-NSSAI OPTIONAL,
+ fiveQI FiveQI OPTIONAL,
+ qFI QosFlowIdentifier OPTIONAL,
+ qCI QCI OPTIONAL,
+ qCImax QCI OPTIONAL,
+ qCImin QCI OPTIONAL,
+ aRPmax INTEGER (1.. 15, ...) OPTIONAL,
+ aRPmin INTEGER (1.. 15, ...) OPTIONAL,
+ bitrateRange INTEGER (1.. 65535, ...) OPTIONAL,
+ layerMU-MIMO INTEGER (1.. 65535, ...) OPTIONAL,
+ sUM ENUMERATED {true, ...} OPTIONAL,
+ distBinX INTEGER (1.. 65535, ...) OPTIONAL,
+ distBinY INTEGER (1.. 65535, ...) OPTIONAL,
+ distBinZ INTEGER (1.. 65535, ...) OPTIONAL,
+ preLabelOverride ENUMERATED {true, ...} OPTIONAL,
+ startEndInd ENUMERATED {start, end, ...} OPTIONAL,
+ min ENUMERATED {true, ...} OPTIONAL,
+ max ENUMERATED {true, ...} OPTIONAL,
+ avg ENUMERATED {true, ...} OPTIONAL,
+ ...
+}
+
+TestCondInfo ::= SEQUENCE{
+ testType TestCond-Type,
+ testExpr TestCond-Expression OPTIONAL,
+ testValue TestCond-Value OPTIONAL,
+ ...
+}
+
+TestCond-Type ::= CHOICE{
+ gBR ENUMERATED {true, ...},
+ aMBR ENUMERATED {true, ...},
+ isStat ENUMERATED {true, ...},
+ isCatM ENUMERATED {true, ...},
+ rSRP ENUMERATED {true, ...},
+ rSRQ ENUMERATED {true, ...},
+ ...,
+ ul-rSRP ENUMERATED {true, ...},
+ cQI ENUMERATED {true, ...},
+ fiveQI ENUMERATED {true, ...},
+ qCI ENUMERATED {true, ...},
+ sNSSAI ENUMERATED {true, ...}
+}
+
+TestCond-Expression ::= ENUMERATED {
+ equal,
+ greaterthan,
+ lessthan,
+ contains,
+ present,
+ ...
+}
+
+TestCond-Value ::= CHOICE{
+ valueInt INTEGER,
+ valueEnum INTEGER,
+ valueBool BOOLEAN,
+ valueBitS BIT STRING,
+ valueOctS OCTET STRING,
+ valuePrtS PrintableString,
+ ...,
+ valueReal REAL
+}
+
+
+
+-- **************************************************************
+-- Lists
+-- **************************************************************
+
+maxnoofCells INTEGER ::= 16384
+maxnoofRICStyles INTEGER ::= 63
+maxnoofMeasurementInfo INTEGER ::= 65535
+maxnoofLabelInfo INTEGER ::= 2147483647
+maxnoofMeasurementRecord INTEGER ::= 65535
+maxnoofMeasurementValue INTEGER ::= 2147483647
+maxnoofConditionInfo INTEGER ::= 32768
+maxnoofUEID INTEGER ::= 65535
+maxnoofConditionInfoPerSub INTEGER ::= 32768
+maxnoofUEIDPerSub INTEGER ::= 65535
+maxnoofUEMeasReport INTEGER ::= 65535
+
+
+MeasurementInfoList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementInfoItem
+
+MeasurementInfoItem ::= SEQUENCE {
+ measType MeasurementType,
+ labelInfoList LabelInfoList,
+ ...
+}
+
+LabelInfoList ::= SEQUENCE (SIZE(1..maxnoofLabelInfo)) OF LabelInfoItem
+
+LabelInfoItem ::= SEQUENCE {
+ measLabel MeasurementLabel,
+ ...
+}
+
+MeasurementData ::= SEQUENCE (SIZE(1..maxnoofMeasurementRecord)) OF MeasurementDataItem
+
+MeasurementDataItem ::= SEQUENCE {
+ measRecord MeasurementRecord,
+ incompleteFlag ENUMERATED {true, ...} OPTIONAL,
+ ...
+}
+
+MeasurementRecord ::= SEQUENCE (SIZE(1..maxnoofMeasurementValue)) OF MeasurementRecordItem
+
+MeasurementRecordItem ::= CHOICE {
+ integer INTEGER (0.. 4294967295),
+ real REAL,
+ noValue NULL,
+ ...
+}
+
+MeasurementInfo-Action-List ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementInfo-Action-Item
+
+MeasurementInfo-Action-Item ::= SEQUENCE {
+ measName MeasurementTypeName,
+ measID MeasurementTypeID OPTIONAL,
+ ...
+}
+
+MeasurementCondList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementCondItem
+
+MeasurementCondItem ::= SEQUENCE {
+ measType MeasurementType,
+ matchingCond MatchingCondList,
+ ...
+}
+
+MeasurementCondUEidList ::= SEQUENCE (SIZE(1..maxnoofMeasurementInfo)) OF MeasurementCondUEidItem
+
+MeasurementCondUEidItem ::= SEQUENCE {
+ measType MeasurementType,
+ matchingCond MatchingCondList,
+ matchingUEidList MatchingUEidList OPTIONAL,
+ ...
+}
+
+MatchingCondList ::= SEQUENCE (SIZE(1..maxnoofConditionInfo)) OF MatchingCondItem
+
+MatchingCondItem ::= CHOICE{
+ measLabel MeasurementLabel,
+ testCondInfo TestCondInfo,
+ ...
+}
+
+MatchingUEidList ::= SEQUENCE (SIZE(1..maxnoofUEID)) OF MatchingUEidItem
+
+MatchingUEidItem ::= SEQUENCE{
+ ueID UEID,
+ ...
+}
+
+MatchingUeCondPerSubList ::= SEQUENCE (SIZE(1..maxnoofConditionInfoPerSub)) OF MatchingUeCondPerSubItem
+
+MatchingUeCondPerSubItem ::= SEQUENCE{
+ testCondInfo TestCondInfo,
+ ...
+}
+
+MatchingUEidPerSubList ::= SEQUENCE (SIZE(2..maxnoofUEIDPerSub)) OF MatchingUEidPerSubItem
+
+MatchingUEidPerSubItem ::= SEQUENCE{
+ ueID UEID,
+ ...
+}
+
+UEMeasurementReportList ::= SEQUENCE (SIZE(1..maxnoofUEMeasReport)) OF UEMeasurementReportItem
+
+UEMeasurementReportItem ::= SEQUENCE{
+ ueID UEID,
+ measReport E2SM-KPM-IndicationMessage-Format1,
+ ...
+}
+
+
+
+-- **************************************************************
+-- E2SM-KPM Service Model IEs
+-- **************************************************************
+
+ -- **************************************************************
+-- Event Trigger Definition OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-EventTriggerDefinition ::= SEQUENCE{
+ eventDefinition-formats CHOICE{
+ eventDefinition-Format1 E2SM-KPM-EventTriggerDefinition-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-KPM-EventTriggerDefinition-Format1 ::= SEQUENCE{
+ reportingPeriod INTEGER (1.. 4294967295),
+ ...
+}
+
+-- **************************************************************
+-- Action Definition OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-ActionDefinition ::= SEQUENCE{
+ ric-Style-Type RIC-Style-Type,
+ actionDefinition-formats CHOICE{
+ actionDefinition-Format1 E2SM-KPM-ActionDefinition-Format1,
+ actionDefinition-Format2 E2SM-KPM-ActionDefinition-Format2,
+ actionDefinition-Format3 E2SM-KPM-ActionDefinition-Format3,
+ ...,
+ actionDefinition-Format4 E2SM-KPM-ActionDefinition-Format4,
+ actionDefinition-Format5 E2SM-KPM-ActionDefinition-Format5
+ },
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format1 ::= SEQUENCE {
+ measInfoList MeasurementInfoList,
+ granulPeriod GranularityPeriod,
+ cellGlobalID CGI OPTIONAL,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format2 ::= SEQUENCE {
+ ueID UEID,
+ subscriptInfo E2SM-KPM-ActionDefinition-Format1,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format3 ::= SEQUENCE {
+ measCondList MeasurementCondList,
+ granulPeriod GranularityPeriod,
+ cellGlobalID CGI OPTIONAL,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format4 ::= SEQUENCE {
+ matchingUeCondList MatchingUeCondPerSubList,
+ subscriptionInfo E2SM-KPM-ActionDefinition-Format1,
+ ...
+}
+
+E2SM-KPM-ActionDefinition-Format5 ::= SEQUENCE {
+ matchingUEidList MatchingUEidPerSubList,
+ subscriptionInfo E2SM-KPM-ActionDefinition-Format1,
+ ...
+}
+
+
+-- **************************************************************
+-- Indication Header OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-IndicationHeader ::= SEQUENCE{
+ indicationHeader-formats CHOICE{
+ indicationHeader-Format1 E2SM-KPM-IndicationHeader-Format1,
+ ...
+ },
+ ...
+}
+
+E2SM-KPM-IndicationHeader-Format1 ::= SEQUENCE{
+ colletStartTime TimeStamp,
+ fileFormatversion PrintableString (SIZE (0..15), ...) OPTIONAL,
+ senderName PrintableString (SIZE (0..400), ...) OPTIONAL,
+ senderType PrintableString (SIZE (0..8), ...) OPTIONAL,
+ vendorName PrintableString (SIZE (0..32), ...) OPTIONAL,
+ ...
+}
+
+-- **************************************************************
+-- Indication Message OCTET STRING contents
+-- **************************************************************
+
+E2SM-KPM-IndicationMessage ::= SEQUENCE{
+ indicationMessage-formats CHOICE{
+ indicationMessage-Format1 E2SM-KPM-IndicationMessage-Format1,
+ indicationMessage-Format2 E2SM-KPM-IndicationMessage-Format2,
+ ...,
+ indicationMessage-Format3 E2SM-KPM-IndicationMessage-Format3
+ },
+ ...
+}
+
+E2SM-KPM-IndicationMessage-Format1 ::= SEQUENCE {
+ measData MeasurementData,
+ measInfoList MeasurementInfoList OPTIONAL,
+ granulPeriod GranularityPeriod OPTIONAL,
+ ...
+}
+
+E2SM-KPM-IndicationMessage-Format2 ::= SEQUENCE {
+ measData MeasurementData,
+ measCondUEidList MeasurementCondUEidList,
+ granulPeriod GranularityPeriod OPTIONAL,
+ ...
+}
+
+E2SM-KPM-IndicationMessage-Format3 ::= SEQUENCE {
+ ueMeasReportList UEMeasurementReportList,
+ ...
+}
+
+
+-- ***************************************************************
+-- RAN Function Definition OCTET STRING contents
+-- ***************************************************************
+
+E2SM-KPM-RANfunction-Description ::= SEQUENCE{
+ ranFunction-Name RANfunction-Name,
+ ric-EventTriggerStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RIC-EventTriggerStyle-Item OPTIONAL,
+ ric-ReportStyle-List SEQUENCE (SIZE(1..maxnoofRICStyles)) OF RIC-ReportStyle-Item OPTIONAL,
+ ...
+}
+
+RIC-EventTriggerStyle-Item ::= SEQUENCE{
+ ric-EventTriggerStyle-Type RIC-Style-Type,
+ ric-EventTriggerStyle-Name RIC-Style-Name,
+ ric-EventTriggerFormat-Type RIC-Format-Type,
+ ...
+}
+
+RIC-ReportStyle-Item ::= SEQUENCE{
+ ric-ReportStyle-Type RIC-Style-Type,
+ ric-ReportStyle-Name RIC-Style-Name,
+ ric-ActionFormat-Type RIC-Format-Type,
+ measInfo-Action-List MeasurementInfo-Action-List,
+ ric-IndicationHeaderFormat-Type RIC-Format-Type,
+ ric-IndicationMessageFormat-Type RIC-Format-Type,
+ ...
+}
+
+END
+
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/kpm-v2/e2sm-v3.01.asn b/epan/dissectors/asn1/kpm-v2/e2sm-v3.01.asn
new file mode 100644
index 0000000000..6a90cd487f
--- /dev/null
+++ b/epan/dissectors/asn1/kpm-v2/e2sm-v3.01.asn
@@ -0,0 +1,388 @@
+-- ASN1START
+-- **************************************************************
+-- E2SM
+-- Information Element Definitions
+-- N.B. this is an edited version, only supplying what is needed for KPM-v2
+-- **************************************************************
+
+E2SM-COMMON-IEs {
+iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2sm(2) e2sm-COMMON-IEs (0)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- --------------------------------------------------
+-- Constants
+-- --------------------------------------------------
+
+maxE1APid INTEGER ::= 65535
+maxF1APid INTEGER ::= 4
+
+-- IEs derived from 3GPP 36.423 (X2AP)
+maxEARFCN INTEGER ::= 65535
+
+-- IEs derived from 3GPP 38.473 (F1AP)
+maxNRARFCN INTEGER ::= 3279165
+maxnoofNrCellBands INTEGER ::= 32
+
+
+-- --------------------------------------------------
+-- E2SM Commmon IEs
+-- --------------------------------------------------
+
+CGI ::= CHOICE {
+ nR-CGI NR-CGI,
+ eUTRA-CGI EUTRA-CGI,
+ ...
+}
+
+
+RANfunction-Name ::= SEQUENCE{
+ ranFunction-ShortName PrintableString(SIZE(1..150,...)),
+ ranFunction-E2SM-OID PrintableString(SIZE(1..1000,...)),
+ ranFunction-Description PrintableString(SIZE(1..150,...)),
+ ranFunction-Instance INTEGER OPTIONAL,
+ ...
+}
+
+RIC-Format-Type ::= INTEGER
+
+RIC-Style-Type ::= INTEGER
+
+RIC-Style-Name ::= PrintableString(SIZE(1..150,...))
+
+UEID ::= CHOICE{
+ gNB-UEID UEID-GNB,
+ gNB-DU-UEID UEID-GNB-DU,
+ gNB-CU-UP-UEID UEID-GNB-CU-UP,
+ ng-eNB-UEID UEID-NG-ENB,
+ ng-eNB-DU-UEID UEID-NG-ENB-DU,
+ en-gNB-UEID UEID-EN-GNB,
+ eNB-UEID UEID-ENB,
+ ...
+}
+
+UEID-GNB ::= SEQUENCE{
+ amf-UE-NGAP-ID AMF-UE-NGAP-ID,
+ guami GUAMI,
+ gNB-CU-UE-F1AP-ID-List UEID-GNB-CU-F1AP-ID-List OPTIONAL,
+-- C-ifCUDUseparated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CU-DU separated gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. More than 1 F1AP ID shall be reported by E2 Node only when NR-DC is established.
+ gNB-CU-CP-UE-E1AP-ID-List UEID-GNB-CU-CP-E1AP-ID-List OPTIONAL,
+-- C-ifCPUPseparated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CP-UP separated gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ ran-UEID RANUEID OPTIONAL,
+ m-NG-RAN-UE-XnAP-ID NG-RANnodeUEXnAPID OPTIONAL,
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported by both MN and SN.
+ globalGNB-ID GlobalGNB-ID OPTIONAL,
+-- This IE shall not be used. This IE is replaced with globalNG-RANNode-ID.
+ ...,
+ globalNG-RANNode-ID GlobalNGRANNodeID OPTIONAL
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported only by SN.
+}
+
+UEID-GNB-CU-CP-E1AP-ID-List ::= SEQUENCE (SIZE(1..maxE1APid)) OF UEID-GNB-CU-CP-E1AP-ID-Item
+
+UEID-GNB-CU-CP-E1AP-ID-Item ::= SEQUENCE{
+ gNB-CU-CP-UE-E1AP-ID GNB-CU-CP-UE-E1AP-ID,
+ ...
+}
+
+UEID-GNB-CU-F1AP-ID-List ::= SEQUENCE (SIZE(1..maxF1APid)) OF UEID-GNB-CU-CP-F1AP-ID-Item
+
+UEID-GNB-CU-CP-F1AP-ID-Item ::= SEQUENCE{
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID,
+ ...
+}
+
+UEID-GNB-DU ::= SEQUENCE{
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID,
+ ran-UEID RANUEID OPTIONAL,
+ ...
+}
+
+UEID-GNB-CU-UP ::= SEQUENCE{
+ gNB-CU-CP-UE-E1AP-ID GNB-CU-CP-UE-E1AP-ID,
+ ran-UEID RANUEID OPTIONAL,
+ ...
+}
+
+UEID-NG-ENB ::= SEQUENCE{
+ amf-UE-NGAP-ID AMF-UE-NGAP-ID,
+ guami GUAMI,
+ ng-eNB-CU-UE-W1AP-ID NGENB-CU-UE-W1AP-ID OPTIONAL,
+-- C-ifCUDUseperated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CU-DU seperated ng-eNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ m-NG-RAN-UE-XnAP-ID NG-RANnodeUEXnAPID OPTIONAL,
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported by both MN and SN.
+ globalNgENB-ID GlobalNgENB-ID OPTIONAL,
+-- This IE shall not be used. This IE is replaced with globalNG-RANNode-ID.
+ ...,
+ globalNG-RANNode-ID GlobalNGRANNodeID OPTIONAL
+-- C-ifDCSetup: This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported only by SN.
+}
+
+
+UEID-NG-ENB-DU ::= SEQUENCE{
+ ng-eNB-CU-UE-W1AP-ID NGENB-CU-UE-W1AP-ID,
+ ...
+}
+
+UEID-EN-GNB ::= SEQUENCE{
+ m-eNB-UE-X2AP-ID ENB-UE-X2AP-ID,
+ m-eNB-UE-X2AP-ID-Extension ENB-UE-X2AP-ID-Extension OPTIONAL,
+ globalENB-ID GlobalENB-ID,
+ gNB-CU-UE-F1AP-ID GNB-CU-UE-F1AP-ID OPTIONAL,
+-- C-ifCUDUseperated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CU-DU seperated en-gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ gNB-CU-CP-UE-E1AP-ID-List UEID-GNB-CU-CP-E1AP-ID-List OPTIONAL,
+-- C-ifCPUPseparated: This IE shall be present in messages from E2 Node to NearRT-RIC for a CP-UP separated en-gNB, whereas from NearRT-RIC to E2 Node messages, this IE may not be included.
+ ran-UEID RANUEID OPTIONAL,
+ ...
+}
+
+UEID-ENB ::= SEQUENCE{
+ mME-UE-S1AP-ID MME-UE-S1AP-ID,
+ gUMMEI GUMMEI,
+ m-eNB-UE-X2AP-ID ENB-UE-X2AP-ID OPTIONAL,
+-- This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported by MeNB and SeNB.
+ m-eNB-UE-X2AP-ID-Extension ENB-UE-X2AP-ID-Extension OPTIONAL,
+ globalENB-ID GlobalENB-ID OPTIONAL,
+-- This IE shall be present in messages from E2 Node to NearRT-RIC if DC is established, whereas from NearRT-RIC to E2 Node messages, this IE may not be included. To be reported only by SeNB.
+ ...
+}
+
+-- **************************************************************
+-- 3GPP derived IEs
+-- **************************************************************
+-- NOTE:
+-- - Extension fields removed and replaced with "..."
+-- - IE names modified across all extracts to use "PLMNIdentity"
+
+-- **************************************************************
+-- IEs derived from 3GPP 36.413 (S1AP)
+-- **************************************************************
+-- **************************************************************
+
+-- copied from v16.5.0
+ENB-ID ::= CHOICE {
+ macro-eNB-ID BIT STRING (SIZE (20)),
+ home-eNB-ID BIT STRING (SIZE (28)),
+ ... ,
+ short-Macro-eNB-ID BIT STRING (SIZE(18)),
+ long-Macro-eNB-ID BIT STRING (SIZE(21))
+}
+
+-- copied from v16.5.0
+GlobalENB-ID ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ eNB-ID ENB-ID,
+ ...
+}
+
+
+-- copied from v16.5.0
+GUMMEI ::= SEQUENCE {
+ pLMN-Identity PLMNIdentity,
+ mME-Group-ID MME-Group-ID,
+ mME-Code MME-Code,
+ ...
+}
+
+-- copied from v16.5.0
+MME-Group-ID ::= OCTET STRING (SIZE (2))
+
+-- copied from v16.5.0
+MME-Code ::= OCTET STRING (SIZE (1))
+
+-- copied from v16.5.0
+MME-UE-S1AP-ID ::= INTEGER (0..4294967295)
+
+-- copied from v16.5.0
+QCI ::= INTEGER (0..255)
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 36.423 (X2AP)
+-- **************************************************************
+-- Extension fields removed.
+-- Note: to avoid duplicate names with NGAP, XnAP, etc.:
+-- GNB-ID renamed ENGNB-ID,
+-- GlobalGNB-ID renamed GlobalenGNB-ID,
+-- UE-X2AP-ID renamed ENB-UE-X2AP-ID
+-- UE-X2AP-ID-Extension renamed ENB-UE-X2AP-ID-Extension
+-- **************************************************************
+
+
+-- copied from v16.5.0
+ENB-UE-X2AP-ID ::= INTEGER (0..4095)
+
+-- copied from v16.5.0
+ENB-UE-X2AP-ID-Extension ::= INTEGER (0..4095, ...)
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 37.473 (W1AP)
+-- **************************************************************
+
+-- copied from v16.3.0
+NGENB-CU-UE-W1AP-ID ::= INTEGER (0..4294967295)
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 38.413 (NGAP)
+-- Extension fields removed and replaced with ...
+-- **************************************************************
+
+-- copied from v16.2.0
+AMFPointer ::= BIT STRING (SIZE(6))
+
+-- copied from v16.2.0
+AMFRegionID ::= BIT STRING (SIZE(8))
+
+-- copied from v16.2.0
+AMFSetID ::= BIT STRING (SIZE(10))
+
+-- copied from v16.2.0
+AMF-UE-NGAP-ID ::= INTEGER (0..1099511627775)
+
+-- copied from v16.2.0
+EUTRACellIdentity ::= BIT STRING (SIZE(28))
+
+-- copied from v16.2.0
+EUTRA-CGI ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ eUTRACellIdentity EUTRACellIdentity,
+ ...
+}
+
+-- copied from v16.2.0
+FiveQI ::= INTEGER (0..255, ...)
+
+-- copied from v16.2.0
+GlobalGNB-ID ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ gNB-ID GNB-ID,
+ ...
+}
+
+-- copied from v16.2.0
+GlobalNgENB-ID ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ ngENB-ID NgENB-ID,
+ ...
+}
+
+
+-- copied from v16.2.0
+GNB-ID ::= CHOICE {
+ gNB-ID BIT STRING (SIZE(22..32)),
+ ...
+}
+
+-- copied from v16.2.0
+GUAMI ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ aMFRegionID AMFRegionID,
+ aMFSetID AMFSetID,
+ aMFPointer AMFPointer,
+ ...
+}
+
+-- copied from v16.2.0
+NgENB-ID ::= CHOICE {
+ macroNgENB-ID BIT STRING (SIZE(20)),
+ shortMacroNgENB-ID BIT STRING (SIZE(18)),
+ longMacroNgENB-ID BIT STRING (SIZE(21)),
+ ...
+}
+
+-- copied from v16.2.0
+NRCellIdentity ::= BIT STRING (SIZE(36))
+
+-- copied from v16.2.0
+NR-CGI ::= SEQUENCE {
+ pLMNIdentity PLMNIdentity,
+ nRCellIdentity NRCellIdentity,
+ ...
+}
+
+-- copied from v16.2.0
+PLMNIdentity ::= OCTET STRING (SIZE(3))
+
+-- copied from v16.2.0
+QosFlowIdentifier ::= INTEGER (0..63, ...)
+
+-- copied from v16.2.0
+SD ::= OCTET STRING (SIZE(3))
+
+-- copied from v16.2.0
+S-NSSAI ::= SEQUENCE {
+ sST SST,
+ sD SD OPTIONAL,
+ ...
+}
+
+-- copied from v16.2.0
+SST ::= OCTET STRING (SIZE(1))
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 38.423 (XnAP)
+-- **************************************************************
+
+-- copied from v16.2.0
+NG-RANnodeUEXnAPID ::= INTEGER (0.. 4294967295)
+
+GlobalNGRANNodeID ::= CHOICE {
+ gNB GlobalGNB-ID,
+ ng-eNB GlobalNgENB-ID,
+ ...
+}
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 37.483 (E1AP)
+-- **************************************************************
+
+-- copied from v17.1.0
+GNB-CU-CP-UE-E1AP-ID ::= INTEGER (0..4294967295)
+
+-- copied from v17.1.0
+-- GNB-CU-UP-ID ::= INTEGER (0..68719476735)
+
+
+
+
+
+
+-- **************************************************************
+-- IEs derived from 3GPP 38.473 (F1AP)
+-- **************************************************************
+
+
+
+-- copied from v16.5.0
+GNB-CU-UE-F1AP-ID ::= INTEGER (0..4294967295)
+
+
+
+-- copied from v16.5.0
+RANUEID ::= OCTET STRING (SIZE (8))
+
+
+
+
+
+END
+-- ASN1STOP
diff --git a/epan/dissectors/asn1/kpm-v2/kpm-v2.cnf b/epan/dissectors/asn1/kpm-v2/kpm-v2.cnf
new file mode 100644
index 0000000000..8181df8d00
--- /dev/null
+++ b/epan/dissectors/asn1/kpm-v2/kpm-v2.cnf
@@ -0,0 +1,84 @@
+# kpm-v2.cnf
+# kpm-v2 conformation file
+
+#.OPT
+PER
+ALIGNED
+#.END
+
+#.USE_VALS_EXT
+
+#.EXPORTS ONLY_VALS WS_DLL
+
+#.EXPORTS
+
+#.PDU
+
+E2SM-KPM-EventTriggerDefinition
+E2SM-KPM-ActionDefinition
+E2SM-KPM-IndicationHeader
+E2SM-KPM-IndicationMessage
+E2SM-KPM-RANfunction-Description
+
+
+#.MAKE_ENUM
+
+#.NO_EMIT
+
+#.OMIT_ASSIGNMENT
+
+#.END
+
+
+#.TYPE_ATTR
+
+#.TYPE_RENAME
+
+#.FIELD_RENAME
+
+#.FIELD_ATTR
+
+#.ASSIGN_VALUE_TO_TYPE
+
+#.END
+
+#.REGISTER
+
+#.FN_BODY RANfunction-Name/ranFunction-ShortName VAL_PTR=&value_tvb
+ tvbuff_t *value_tvb;
+%(DEFAULT_BODY)s
+ if (!actx->pinfo->fd->visited) {
+ /* N.B. too early to work out exact dissector, as don't have OID yet */
+ e2ap_store_ran_function_mapping(actx->pinfo, tree, value_tvb,
+ tvb_get_string_enc(actx->pinfo->pool, value_tvb, 0, tvb_captured_length(value_tvb), ENC_ASCII));
+ }
+
+
+#.FN_BODY RANfunction-Name/ranFunction-E2SM-OID VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ %(DEFAULT_BODY)s
+ e2ap_update_ran_function_mapping(actx->pinfo, tree, parameter_tvb,
+ tvb_get_string_enc(actx->pinfo->pool, parameter_tvb, 0,
+ tvb_captured_length(parameter_tvb), ENC_ASCII));
+
+
+#.FN_BODY E2SM-KPM-IndicationHeader-Format1/colletStartTime
+ int ts_offset = offset;
+ %(DEFAULT_BODY)s
+ /* Add as a generated field the timestamp decoded */
+ const char *time_str = tvb_ntp_fmt_ts_sec(tvb, (ts_offset+7)/8);
+ proto_item *ti = proto_tree_add_string(tree, hf_kpm_v2_timestamp_string, tvb, (ts_offset+7)/8, 4, time_str);
+ proto_item_set_generated(ti);
+
+#
+# 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:
+#
diff --git a/epan/dissectors/asn1/kpm-v2/packet-kpm-v2-template.c b/epan/dissectors/asn1/kpm-v2/packet-kpm-v2-template.c
new file mode 100644
index 0000000000..5cadf89c3d
--- /dev/null
+++ b/epan/dissectors/asn1/kpm-v2/packet-kpm-v2-template.c
@@ -0,0 +1,122 @@
+/* packet-kpm-v2-template.c
+ * Copyright 2021, Martin Mathieson
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ *
+ * References: ORAN-WG3.E2SM-KPM-v02.02
+ */
+
+#include "config.h"
+
+#include <epan/packet.h>
+#include <epan/strutil.h>
+#include <epan/asn1.h>
+
+#include "packet-e2ap.h"
+#include "packet-per.h"
+#include "packet-ntp.h"
+
+#define PNAME "KPM V2"
+#define PSNAME "KPMv2"
+#define PFNAME "kpm-v2"
+
+
+void proto_register_kpm_v2(void);
+void proto_reg_handoff_kpm_v2(void);
+
+
+#include "packet-kpm-v2-val.h"
+
+/* Initialize the protocol and registered fields */
+static int proto_kpm_v2;
+#include "packet-kpm-v2-hf.c"
+
+static int hf_kpm_v2_timestamp_string;
+
+
+#include "packet-kpm-v2-ett.c"
+
+
+/* Forward declarations */
+static int dissect_E2SM_KPM_EventTriggerDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_ActionDefinition_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_IndicationHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_IndicationMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_E2SM_KPM_RANfunction_Description_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+
+#include "packet-kpm-v2-fn.c"
+
+
+/*--- proto_reg_handoff_kpm_v2 ---------------------------------------*/
+void
+proto_reg_handoff_kpm_v2(void)
+{
+//#include "packet-kpm-v2-dis-tab.c"
+
+ static ran_function_dissector_t kpm_v2 =
+ { "ORAN-E2SM-KPM", "1.3.6.1.4.1.53148.1.2.2.2", 2, 2,
+ { dissect_E2SM_KPM_RANfunction_Description_PDU,
+
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+
+ dissect_E2SM_KPM_ActionDefinition_PDU,
+ dissect_E2SM_KPM_IndicationMessage_PDU,
+ dissect_E2SM_KPM_IndicationHeader_PDU,
+ NULL, /* no dissect_E2SM_KPM_CallProcessID_PDU */
+ dissect_E2SM_KPM_EventTriggerDefinition_PDU
+ }
+ };
+
+ /* Register dissector with e2ap */
+ register_e2ap_ran_function_dissector(KPM_RANFUNCTIONS, &kpm_v2);
+}
+
+
+
+/*--- proto_register_kpm_v2 -------------------------------------------*/
+void proto_register_kpm_v2(void) {
+
+ /* List of fields */
+
+ static hf_register_info hf[] = {
+#include "packet-kpm-v2-hfarr.c"
+ { &hf_kpm_v2_timestamp_string,
+ { "Timestamp string", "kpm-v2.timestamp-string",
+ FT_STRING, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }},
+ };
+
+ /* List of subtrees */
+ static gint *ett[] = {
+#include "packet-kpm-v2-ettarr.c"
+ };
+
+
+ /* Register protocol */
+ proto_kpm_v2 = proto_register_protocol(PNAME, PSNAME, PFNAME);
+ /* Register fields and subtrees */
+ proto_register_field_array(proto_kpm_v2, hf, array_length(hf));
+ proto_register_subtree_array(ett, array_length(ett));
+}
+
+/*
+ * Editor modelines
+ *
+ * Local Variables:
+ * c-basic-offset: 2
+ * tab-width: 8
+ * indent-tabs-mode: nil
+ * End:
+ *
+ * ex: set shiftwidth=2 tabstop=8 expandtab:
+ * :indentSize=2:tabSize=8:noTabs=true:
+ */
diff --git a/epan/dissectors/asn1/lcsap/LCS-AP-CommonDataTypes.asn b/epan/dissectors/asn1/lcsap/LCS-AP-CommonDataTypes.asn
index 97a02080d7..1e3e23a36c 100644
--- a/epan/dissectors/asn1/lcsap/LCS-AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/lcsap/LCS-AP-CommonDataTypes.asn
@@ -1,4 +1,5 @@
--- ETSI TS 129 171 V16.2.0 (2020-12)
+--
+-- 3GPP TS 29.171 v17.2.0 (2022-12-15)
-- 7.5.6 Common Definitions
-- **************************************************************
diff --git a/epan/dissectors/asn1/lcsap/LCS-AP-Constants.asn b/epan/dissectors/asn1/lcsap/LCS-AP-Constants.asn
index a33544f726..ff8c3fe724 100644
--- a/epan/dissectors/asn1/lcsap/LCS-AP-Constants.asn
+++ b/epan/dissectors/asn1/lcsap/LCS-AP-Constants.asn
@@ -1,10 +1,13 @@
--- ETSI TS 129 171 V16.2.0 (2020-12)
+--
+-- 3GPP TS 29.171 v17.2.0 (2022-12-15)
+-- 7.5.7 Constant definitions
+
-- **************************************************************
--
-- Constant definitions
--
-- **************************************************************
-
+
LCS-AP-Constants {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) lcs-AP (4) version1 (1) lcs-AP-Constants (4)}
@@ -67,6 +70,8 @@ id-Ciphering-Data INTEGER ::= 28
id-Ciphering-Data-Ack INTEGER ::= 29
id-Ciphering-Data-Error-Report INTEGER ::= 30
id-Coverage-Level INTEGER ::= 31
+id-UE-Country-Determination-Indication INTEGER ::= 32
+id-UE-Area-Indication INTEGER ::= 33
diff --git a/epan/dissectors/asn1/lcsap/LCS-AP-Containers.asn b/epan/dissectors/asn1/lcsap/LCS-AP-Containers.asn
index f7ab8860c5..6582b5f364 100644
--- a/epan/dissectors/asn1/lcsap/LCS-AP-Containers.asn
+++ b/epan/dissectors/asn1/lcsap/LCS-AP-Containers.asn
@@ -1,6 +1,7 @@
--- ETSI TS 129 171 V16.2.0 (2020-12)
--
+-- 3GPP TS 29.171 v17.2.0 (2022-12-15)
-- 7.5.8 Container Definitions
+
-- **************************************************************
--
-- Container definitions
diff --git a/epan/dissectors/asn1/lcsap/LCS-AP-IEs.asn b/epan/dissectors/asn1/lcsap/LCS-AP-IEs.asn
index c01d45e66c..4ffb2592a6 100644
--- a/epan/dissectors/asn1/lcsap/LCS-AP-IEs.asn
+++ b/epan/dissectors/asn1/lcsap/LCS-AP-IEs.asn
@@ -1,6 +1,7 @@
--- ETSI TS 129 171 V16.2.0 (2020-12)
--
+-- 3GPP TS 29.171 v17.2.0 (2022-12-15)
-- 7.5.5 Information element definitions
+
-- **************************************************************
--
-- Information Element Definitions
@@ -113,6 +114,7 @@ Confidence ::= INTEGER (0..100)
Correlation-ID ::= OCTET STRING (SIZE (4))
+Country ::= OCTET STRING
-- D
@@ -222,7 +224,10 @@ Geographical-Area ::= CHOICE {
ellipsoid-Arc Ellipsoid-Arc,
...,
high-Accuracy-Ellipsoid-Point-With-Uncertainty-Ellipse High-Accuracy-Ellipsoid-Point-With-Uncertainty-Ellipse,
- high-Accuracy-Ellipsoid-Point-With-Altitude-And-Uncertainty-Ellipsoid High-Accuracy-Ellipsoid-Point-With-Altitude-And-Uncertainty-Ellipsoid
+ high-Accuracy-Ellipsoid-Point-With-Altitude-And-Uncertainty-Ellipsoid High-Accuracy-Ellipsoid-Point-With-Altitude-And-Uncertainty-Ellipsoid,
+ high-Accuracy-Ellipsoid-Point-With-Scalable-Uncertainty-Ellipse High-Accuracy-Ellipsoid-Point-With-Scalable-Uncertainty-Ellipse,
+ high-Accuracy-Ellipsoid-Point-With-Altitude-And-Scalable-Uncertainty-Ellipsoid High-Accuracy-Ellipsoid-Point-With-Altitude-And-Scalable-Uncertainty-Ellipsoid
+
}
Geographical-Coordinates ::= SEQUENCE {
@@ -252,7 +257,7 @@ GNSS-Positioning-Data-Set ::= SEQUENCE (SIZE (1..max-GNSS-Set)) OF GNSS-Position
-- H
-High-Accuracy-Altitude ::= INTEGER (-64000..128000)
+High-Accuracy-Altitude ::= INTEGER (-64000..1280000)
High-Accuracy-DegreesLatitude ::= INTEGER(-2147483648..2147483647)
@@ -270,6 +275,17 @@ High-Accuracy-Ellipsoid-Point-With-Uncertainty-Ellipse-ExtIEs LCS-AP-PROTOCOL-EX
...
}
+High-Accuracy-Ellipsoid-Point-With-Scalable-Uncertainty-Ellipse ::= SEQUENCE {
+ high-Accuracy-Geographical-Coordinates High-Accuracy-Geographical-Coordinates,
+ high-Accuracy-Scalable-Uncertainty-Ellipse High-Accuracy-Scalable-Uncertainty-Ellipse,
+ confidence Confidence,
+ iE-Extensions ProtocolExtensionContainer { { High-Accuracy-Ellipsoid-Point-With-Scalable-Uncertainty-Ellipse-ExtIEs} } OPTIONAL,
+ ...}
+
+High-Accuracy-Ellipsoid-Point-With-Scalable-Uncertainty-Ellipse-ExtIEs LCS-AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
High-Accuracy-Ellipsoid-Point-With-Altitude-And-Uncertainty-Ellipsoid ::= SEQUENCE {
high-Accuracy-Geographical-Coordinates High-Accuracy-Geographical-Coordinates,
@@ -286,6 +302,21 @@ High-Accuracy-Ellipsoid-Point-With-Altitude-And-Uncertainty-Ellipsoid-ExtIEs LCS
...
}
+High-Accuracy-Ellipsoid-Point-With-Altitude-And-Scalable-Uncertainty-Ellipsoid ::= SEQUENCE {
+ high-Accuracy-Geographical-Coordinates High-Accuracy-Geographical-Coordinates,
+ high-Accuracy-Altitude High-Accuracy-Altitude,
+ high-Accuracy-Scalable-Uncertainty-Ellipse High-Accuracy-Scalable-Uncertainty-Ellipse,
+ confidence Confidence,
+ high-Accuracy-Scalable-Uncertainty-Altitude High-Accuracy-Scalable-Uncertainty-Altitude,
+ vertical-Confidence Confidence,
+ iE-Extensions ProtocolExtensionContainer { { High-Accuracy-Ellipsoid-Point-With-Altitude-And-Scalable-Uncertainty-Ellipsoid-ExtIEs} } OPTIONAL,
+ ...}
+
+
+High-Accuracy-Ellipsoid-Point-With-Altitude-And-Scalable-Uncertainty-Ellipsoid-ExtIEs LCS-AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
High-Accuracy-Geographical-Coordinates ::= SEQUENCE {
high-Accuracy-DegreesLatitude High-Accuracy-DegreesLatitude,
@@ -301,6 +332,8 @@ High-Accuracy-Geographical-Coordinates-ExtIEs LCS-AP-PROTOCOL-EXTENSION ::= {
High-Accuracy-Uncertainty-Code ::= INTEGER (0..255)
+High-Accuracy-Extended-Uncertainty-Code ::= INTEGER (0..255)
+
High-Accuracy-Uncertainty-Ellipse ::= SEQUENCE {
high-Accuracy-Uncertainty-SemiMajor High-Accuracy-Uncertainty-Code,
high-Accuracy-Uncertainty-SemiMinor High-Accuracy-Uncertainty-Code,
@@ -312,6 +345,28 @@ High-Accuracy-Uncertainty-Ellipse ::= SEQUENCE {
High-Accuracy-Uncertainty-Ellipse-ExtIEs LCS-AP-PROTOCOL-EXTENSION ::= {
...
}
+High-Accuracy-Extended-Uncertainty-Ellipse ::= SEQUENCE {
+ high-Accuracy-Extended-Uncertainty-SemiMajor High-Accuracy-Extended-Uncertainty-Code,
+ high-Accuracy-Extended-Uncertainty-SemiMinor High-Accuracy-Extended-Uncertainty-Code,
+ orientation-Major-Axis INTEGER (0..179),
+ iE-Extensions ProtocolExtensionContainer { { High-Accuracy-Extended-Uncertainty-Ellipse-ExtIEs} } OPTIONAL,
+ ...
+}
+
+High-Accuracy-Extended-Uncertainty-Ellipse-ExtIEs LCS-AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+High-Accuracy-Scalable-Uncertainty-Ellipse ::= CHOICE {
+high-Accuracy-Uncertainty-Ellipse High-Accuracy-Uncertainty-Ellipse,
+high-Accuracy-Extended-Uncertainty-Ellipse High-Accuracy-Extended-Uncertainty-Ellipse
+}
+
+High-Accuracy-Scalable-Uncertainty-Altitude ::= CHOICE {
+high-Accuracy-Uncertainty-Altitude High-Accuracy-Uncertainty-Code,
+high-Accuracy-Extended-Uncertainty-Altitude High-Accuracy-Extended-Uncertainty-Code
+}
+
Home-eNB-ID ::= BIT STRING (SIZE (28))
@@ -387,6 +442,11 @@ Include-Velocity ::= ENUMERATED {
Inner-Radius ::= INTEGER (0..65535) -- 16 bit field
+International-Area-Indication ::= ENUMERATED {
+ yes,
+...
+}
+
-- J
-- K
@@ -617,6 +677,18 @@ UE-Positioning-Capability ::= SEQUENCE {
...
}
+UE-Country-Determination-Indication ::= ENUMERATED {
+ required,
+ not-required,
+...
+}
+
+UE-Area-Indication ::= SEQUENCE {
+ country Country,
+ international-area-indication International-Area-Indication
+}
+
+
-- V
Validity-Duration ::= INTEGER (0..65535)
diff --git a/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Contents.asn b/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Contents.asn
index 2c02945c70..77d881a47c 100644
--- a/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Contents.asn
@@ -1,6 +1,7 @@
--- ETSI TS 129 171 V16.2.0 (2020-12)
--
+-- 3GPP TS 29.171 v17.2.0 (2022-12-15)
-- 7.5.4 PDU definitions
+
-- **************************************************************
--
-- PDU definitions for LCS-AP.
@@ -53,7 +54,9 @@ IMPORTS
Return-Error-Type,
Return-Error-Cause,
UE-Positioning-Capability,
- Velocity-Estimate
+ Velocity-Estimate,
+ UE-Country-Determination-Indication,
+ UE-Area-Indication
FROM LCS-AP-IEs
ProtocolExtensionContainer{},
@@ -92,7 +95,9 @@ FROM LCS-AP-Containers
id-Return-Error-Cause,
id-Source-Identity,
id-UE-Positioning-Capability,
- id-Velocity-Estimate
+ id-Velocity-Estimate,
+ id-UE-Country-Determination-Indication,
+ id-UE-Area-Indication
FROM LCS-AP-Constants;
@@ -126,7 +131,8 @@ Location-Request-IEs LCS-AP-PROTOCOL-IES ::= {
}
Location-Request-Extensions LCS-AP-PROTOCOL-EXTENSION ::= {
- { ID id-LCS-Service-Type-ID CRITICALITY ignore EXTENSION LCS-Service-Type-ID PRESENCE optional },
+ { ID id-LCS-Service-Type-ID CRITICALITY ignore EXTENSION LCS-Service-Type-ID PRESENCE optional } |
+ { ID id-UE-Country-Determination-Indication CRITICALITY ignore TYPE UE-Country-Determination-Indication PRESENCE optional},
...
}
@@ -158,7 +164,8 @@ Location-Response-Extensions LCS-AP-PROTOCOL-EXTENSION ::= {
{ ID id-E-UTRAN-Cell-Identifier CRITICALITY ignore EXTENSION E-CGI PRESENCE optional } |
{ ID id-Cell-Portion-ID CRITICALITY ignore EXTENSION Cell-Portion-ID PRESENCE optional } |
{ ID id-Civic-Address CRITICALITY ignore EXTENSION Civic-Address PRESENCE optional } |
-{ ID id-Barometric-Pressure CRITICALITY ignore EXTENSION Barometric-Pressure PRESENCE optional },
+{ ID id-Barometric-Pressure CRITICALITY ignore EXTENSION Barometric-Pressure PRESENCE optional } |
+{ ID id-UE-Area-Indication CRITICALITY ignore EXTENSION UE-Area-Indication PRESENCE optional },
...
}
diff --git a/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Descriptions.asn b/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Descriptions.asn
index 9a1625c7d7..4327c7f1bb 100644
--- a/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/lcsap/LCS-AP-PDU-Descriptions.asn
@@ -1,6 +1,7 @@
--- ETSI TS 129 171 V16.2.0 (2020-12)
--
+-- 3GPP TS 29.171 v17.2.0 (2022-12-15)
-- 7.5.3 Elementary procedure definitions
+
-- **************************************************************
--
-- Elementary Procedure definitions
diff --git a/epan/dissectors/asn1/lcsap/lcsap.cnf b/epan/dissectors/asn1/lcsap/lcsap.cnf
index d3838bfbd6..325196ab10 100644
--- a/epan/dissectors/asn1/lcsap/lcsap.cnf
+++ b/epan/dissectors/asn1/lcsap/lcsap.cnf
@@ -49,7 +49,8 @@ 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(lcsap_ProtocolIE_ID_vals), "unknown (%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
+ val_to_str(ProtocolIE_ID, VALS(lcsap_ProtocolIE_ID_vals), "unknown (%d)"));
}
#.END
@@ -102,13 +103,13 @@ ProtocolIE-Field/value ie_field_value
if (tmp == 0)
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%sReq",
- val_to_str(ProcedureCode, lcsap_ProcedureCode_vals, "unknown message"));
+ val_to_str_const(ProcedureCode, lcsap_ProcedureCode_vals, "unknown message"));
else if (tmp == 32)
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%sResp",
- val_to_str(ProcedureCode, lcsap_ProcedureCode_vals, "unknown message"));
+ val_to_str_const(ProcedureCode, lcsap_ProcedureCode_vals, "unknown message"));
else
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s",
- val_to_str(ProcedureCode, lcsap_ProcedureCode_vals, "unknown message"));
+ val_to_str_const(ProcedureCode, lcsap_ProcedureCode_vals, "unknown message"));
}
#.END
@@ -265,38 +266,40 @@ id-Reset ProcedureCode
id-Ciphering-Key-Data-Delivery ProcedureCode
# ProtocolIE-ID
-id-Correlation-ID ProtocolIE-ID
-id-Location-Type ProtocolIE-ID
-id-E-UTRAN-Cell-Identifier ProtocolIE-ID
-id-LCS-Client-Type ProtocolIE-ID
-id-LCS-Priority ProtocolIE-ID
-id-LCS-QOS ProtocolIE-ID
-id-UE-Positioning-Capability ProtocolIE-ID
-id-Include-Velocity ProtocolIE-ID
-id-IMSI ProtocolIE-ID
-id-IMEI ProtocolIE-ID
-id-MultipleAPDUs ProtocolIE-ID
-id-Positioning-Data ProtocolIE-ID
-id-Velocity-Estimate ProtocolIE-ID
-id-Accuracy-Fulfillment-Indicator ProtocolIE-ID
-id-LCS-Cause ProtocolIE-ID
-id-Payload-Type ProtocolIE-ID
-id-Return-Error-Cause ProtocolIE-ID
-id-APDU ProtocolIE-ID
-id-Return-Error-Request ProtocolIE-ID
-id-Location-Estimate ProtocolIE-ID
-id-Source-Identity ProtocolIE-ID
-id-Destination-ID ProtocolIE-ID
-id-LCS-Service-Type-ID ProtocolIE-ID
-id-Cell-Portion-ID ProtocolIE-ID
-id-Civic-Address ProtocolIE-ID
-id-Barometric-Pressure ProtocolIE-ID
-id-Additional-PositioningDataSet ProtocolIE-ID
-id-RAT-Type ProtocolIE-ID
-id-Ciphering-Data ProtocolIE-ID
-id-Ciphering-Data-Ack ProtocolIE-ID
-id-Ciphering-Data-Error-Report ProtocolIE-ID
-id-Coverage-Level ProtocolIE-ID
+id-Correlation-ID ProtocolIE-ID
+id-Location-Type ProtocolIE-ID
+id-E-UTRAN-Cell-Identifier ProtocolIE-ID
+id-LCS-Client-Type ProtocolIE-ID
+id-LCS-Priority ProtocolIE-ID
+id-LCS-QOS ProtocolIE-ID
+id-UE-Positioning-Capability ProtocolIE-ID
+id-Include-Velocity ProtocolIE-ID
+id-IMSI ProtocolIE-ID
+id-IMEI ProtocolIE-ID
+id-MultipleAPDUs ProtocolIE-ID
+id-Positioning-Data ProtocolIE-ID
+id-Velocity-Estimate ProtocolIE-ID
+id-Accuracy-Fulfillment-Indicator ProtocolIE-ID
+id-LCS-Cause ProtocolIE-ID
+id-Payload-Type ProtocolIE-ID
+id-Return-Error-Cause ProtocolIE-ID
+id-APDU ProtocolIE-ID
+id-Return-Error-Request ProtocolIE-ID
+id-Location-Estimate ProtocolIE-ID
+id-Source-Identity ProtocolIE-ID
+id-Destination-ID ProtocolIE-ID
+id-LCS-Service-Type-ID ProtocolIE-ID
+id-Cell-Portion-ID ProtocolIE-ID
+id-Civic-Address ProtocolIE-ID
+id-Barometric-Pressure ProtocolIE-ID
+id-Additional-PositioningDataSet ProtocolIE-ID
+id-RAT-Type ProtocolIE-ID
+id-Ciphering-Data ProtocolIE-ID
+id-Ciphering-Data-Ack ProtocolIE-ID
+id-Ciphering-Data-Error-Report ProtocolIE-ID
+id-Coverage-Level ProtocolIE-ID
+id-UE-Country-Determination-Indication ProtocolIE-ID
+id-UE-Area-Indication ProtocolIE-ID
#.REGISTER
@@ -330,6 +333,8 @@ Ciphering-Data N lcsap.ies id-Ciphering-Data
Ciphering-Data-Ack N lcsap.ies id-Ciphering-Data-Ack
Ciphering-Data-Error-Report N lcsap.ies id-Ciphering-Data-Error-Report
Coverage-Level N lcsap.ies id-Coverage-Level
+UE-Country-Determination-Indication N lcsap.ies id-UE-Country-Determination-Indication
+UE-Area-Indication N lcsap.ies id-UE-Area-Indication
#LCS-AP-PROTOCOL-EXTENSION
LCS-Service-Type-ID N lcsap.extension id-LCS-Service-Type-ID
diff --git a/epan/dissectors/asn1/lcsap/packet-lcsap-template.c b/epan/dissectors/asn1/lcsap/packet-lcsap-template.c
index 82913ced7f..a0ae1b16b8 100644
--- a/epan/dissectors/asn1/lcsap/packet-lcsap-template.c
+++ b/epan/dissectors/asn1/lcsap/packet-lcsap-template.c
@@ -45,31 +45,30 @@ void proto_reg_handoff_lcsap(void);
#include "packet-lcsap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_lcsap = -1;
+static int proto_lcsap;
-static int hf_lcsap_pos_method = -1;
-static int hf_lcsap_pos_usage = -1;
-static int hf_lcsap_gnss_pos_method = -1;
-static int hf_lcsap_gnss_id = -1;
-static int hf_lcsap_gnss_pos_usage = -1;
+static int hf_lcsap_pos_method;
+static int hf_lcsap_pos_usage;
+static int hf_lcsap_gnss_pos_method;
+static int hf_lcsap_gnss_id;
+static int hf_lcsap_gnss_pos_usage;
#include "packet-lcsap-hf.c"
/* Initialize the subtree pointers */
-static int ett_lcsap = -1;
-static int ett_lcsap_plmnd_id = -1;
-static int ett_lcsap_imsi = -1;
-static int ett_lcsap_civic_address = -1;
+static int ett_lcsap;
+static int ett_lcsap_plmnd_id;
+static int ett_lcsap_imsi;
+static int ett_lcsap_civic_address;
#include "packet-lcsap-ett.c"
-static expert_field ei_lcsap_civic_data_not_xml = EI_INIT;
+static expert_field ei_lcsap_civic_data_not_xml;
/* Global variables */
static guint32 ProcedureCode;
static guint32 ProtocolIE_ID;
static guint32 ProtocolExtensionID;
static guint32 PayloadType = -1;
-static guint gbl_lcsapSctpPort=SCTP_PORT_LCSAP;
/* Dissector handles */
static dissector_handle_t lcsap_handle;
@@ -231,27 +230,13 @@ dissect_lcsap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
void
proto_reg_handoff_lcsap(void)
{
- static gboolean Initialized=FALSE;
- static guint SctpPort;
-
- if (!Initialized) {
- lpp_handle = find_dissector_add_dependency("lpp", proto_lcsap);
- lppa_handle = find_dissector_add_dependency("lppa", proto_lcsap);
- xml_handle = find_dissector_add_dependency("xml", proto_lcsap);
- dissector_add_for_decode_as("sctp.port", lcsap_handle); /* for "decode-as" */
- dissector_add_uint("sctp.ppi", LCS_AP_PAYLOAD_PROTOCOL_ID, lcsap_handle);
- Initialized=TRUE;
+ lpp_handle = find_dissector_add_dependency("lpp", proto_lcsap);
+ lppa_handle = find_dissector_add_dependency("lppa", proto_lcsap);
+ xml_handle = find_dissector_add_dependency("xml", proto_lcsap);
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_LCSAP, lcsap_handle);
+ dissector_add_uint("sctp.ppi", LCS_AP_PAYLOAD_PROTOCOL_ID, lcsap_handle);
#include "packet-lcsap-dis-tab.c"
- } else {
- if (SctpPort != 0) {
- dissector_delete_uint("sctp.port", SctpPort, lcsap_handle);
- }
- }
-
- SctpPort=gbl_lcsapSctpPort;
- if (SctpPort != 0) {
- dissector_add_uint("sctp.port", SctpPort, lcsap_handle);
- }
+
}
/*--- proto_register_lcsap -------------------------------------------*/
@@ -298,7 +283,7 @@ void proto_register_lcsap(void) {
#include "packet-lcsap-ettarr.c"
};
- module_t *lcsap_module;
+ /* module_t *lcsap_module; */
expert_module_t *expert_lcsap;
static ei_register_info ei[] = {
@@ -326,14 +311,8 @@ void proto_register_lcsap(void) {
lcsap_proc_sout_dissector_table = register_dissector_table("lcsap.proc.sout", "LCS-AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_lcsap, FT_UINT32, BASE_DEC);
lcsap_proc_uout_dissector_table = register_dissector_table("lcsap.proc.uout", "LCS-AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_lcsap, FT_UINT32, BASE_DEC);
- /* Register configuration options for ports */
- lcsap_module = prefs_register_protocol(proto_lcsap, proto_reg_handoff_lcsap);
+ /* lcsap_module = prefs_register_protocol(proto_lcsap, NULL); */
- prefs_register_uint_preference(lcsap_module, "sctp.port",
- "LCSAP SCTP Port",
- "Set the SCTP port for LCSAP messages",
- 10,
- &gbl_lcsapSctpPort);
}
/*
diff --git a/epan/dissectors/asn1/ldap/ldap.cnf b/epan/dissectors/asn1/ldap/ldap.cnf
index 2a9f04869b..cf0f41f35e 100644
--- a/epan/dissectors/asn1/ldap/ldap.cnf
+++ b/epan/dissectors/asn1/ldap/ldap.cnf
@@ -25,7 +25,7 @@ BindResponse/_untag/matchedDN bindResponse_matchedDN
IntermediateResponse/_untag/responseValue intermediateResponse_responseValue
#.TYPE_ATTR
-LDAPString TYPE = FT_STRING DISPLAY = STR_UNICODE STRINGS = NULL
+LDAPString TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
LDAPURL TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
LDAPOID TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
Mechanism TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
@@ -34,10 +34,11 @@ DirSyncFlags TYPE = FT_UINT32 DISPLAY = BASE_HEX STRINGS = NULL
Simple TYPE = FT_STRING DISPLAY = BASE_NONE STRINGS = NULL
#.REGISTER
-SearchControlValue B "1.2.840.113556.1.4.319" "pagedResultsControl"
-SortKeyList B "1.2.840.113556.1.4.473" "sortKeyList"
-SortResult B "1.2.840.113556.1.4.474" "sortResult"
-DirSyncControlValue B "1.2.840.113556.1.4.841" "dirsync"
+#[MS-ADTS]
+SearchControlValue B "1.2.840.113556.1.4.319" "LDAP_PAGED_RESULT_OID_STRING"
+SortKeyList B "1.2.840.113556.1.4.473" "LDAP_SERVER_SORT_OID"
+SortResult B "1.2.840.113556.1.4.474" "LDAP_SERVER_RESP_SORT_OID"
+DirSyncControlValue B "1.2.840.113556.1.4.841" "LDAP_SERVER_DIRSYNC_OID"
#RFC 3062
PasswdModifyRequestValue B "1.3.6.1.4.1.4203.1.11.1" "passwdModifyOID"
#RFC 3909
@@ -191,7 +192,7 @@ char *mechanism = NULL;
tvbuff_t *parameter_tvb;
ldap_conv_info_t *ldap_info;
gint8 ber_class;
-gboolean pc;
+bool pc;
gint32 tag;
%(DEFAULT_BODY)s
@@ -276,7 +277,7 @@ ldap_conv_info_t *ldap_info;
* NTLMSSP blob
*/
if ( (tvb_reported_length(parameter_tvb)>=7)
- && (!tvb_memeql(parameter_tvb, 0, "NTLMSSP", 7))){
+ && (!tvb_memeql(parameter_tvb, 0, (const guint8*)"NTLMSSP", 7))){
call_dissector(ntlmssp_handle, parameter_tvb, actx->pinfo, tree);
break;
}
@@ -600,7 +601,7 @@ ldap_conv_info_t *ldap_info;
Filter_string=wmem_strdup_printf(actx->pinfo->pool, "(!%s)",string_or_null(Filter_string));
#.FN_BODY MatchingRuleAssertion/dnAttributes
- gboolean val;
+ bool val;
offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, &val);
@@ -700,7 +701,7 @@ ldap_conv_info_t *ldap_info;
if( new_tvb
&& (tvb_reported_length(new_tvb)>=7)
- && (!tvb_memeql(new_tvb, 0, "NTLMSSP", 7))){
+ && (!tvb_memeql(new_tvb, 0, (const guint8*)"NTLMSSP", 7))){
/* make sure the protocol op comes first */
ldap_do_protocolop(actx->pinfo);
@@ -710,7 +711,7 @@ ldap_conv_info_t *ldap_info;
#.FN_BODY Control/controlValue
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
@@ -754,7 +755,7 @@ ldap_conv_info_t *ldap_info;
#.FN_BODY DirSyncFlags
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
gint32 val;
diff --git a/epan/dissectors/asn1/ldap/packet-ldap-template.c b/epan/dissectors/asn1/ldap/packet-ldap-template.c
index b931381999..5041cdb508 100644
--- a/epan/dissectors/asn1/ldap/packet-ldap-template.c
+++ b/epan/dissectors/asn1/ldap/packet-ldap-template.c
@@ -80,8 +80,10 @@
#include <epan/strutil.h>
#include <epan/show_exception.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include <epan/expert.h>
#include <epan/uat.h>
+#include <epan/charsets.h>
#include <wsutil/str_util.h>
#include "packet-frame.h"
#include "packet-tcp.h"
@@ -107,97 +109,97 @@ void proto_register_ldap(void);
void proto_reg_handoff_ldap(void);
/* Initialize the protocol and registered fields */
-static int ldap_tap = -1;
-static int proto_ldap = -1;
-static int proto_cldap = -1;
-
-static int hf_ldap_sasl_buffer_length = -1;
-static int hf_ldap_response_in = -1;
-static int hf_ldap_response_to = -1;
-static int hf_ldap_time = -1;
-static int hf_ldap_guid = -1;
-
-static int hf_mscldap_ntver_flags = -1;
-static int hf_mscldap_ntver_flags_v1 = -1;
-static int hf_mscldap_ntver_flags_v5 = -1;
-static int hf_mscldap_ntver_flags_v5ex = -1;
-static int hf_mscldap_ntver_flags_v5ep = -1;
-static int hf_mscldap_ntver_flags_vcs = -1;
-static int hf_mscldap_ntver_flags_vnt4 = -1;
-static int hf_mscldap_ntver_flags_vpdc = -1;
-static int hf_mscldap_ntver_flags_vip = -1;
-static int hf_mscldap_ntver_flags_vl = -1;
-static int hf_mscldap_ntver_flags_vgc = -1;
-
-static int hf_mscldap_netlogon_ipaddress_family = -1;
-static int hf_mscldap_netlogon_ipaddress_port = -1;
-static int hf_mscldap_netlogon_ipaddress = -1;
-static int hf_mscldap_netlogon_ipaddress_ipv4 = -1;
-static int hf_mscldap_netlogon_opcode = -1;
-static int hf_mscldap_netlogon_flags = -1;
-static int hf_mscldap_netlogon_flags_pdc = -1;
-static int hf_mscldap_netlogon_flags_gc = -1;
-static int hf_mscldap_netlogon_flags_ldap = -1;
-static int hf_mscldap_netlogon_flags_ds = -1;
-static int hf_mscldap_netlogon_flags_kdc = -1;
-static int hf_mscldap_netlogon_flags_timeserv = -1;
-static int hf_mscldap_netlogon_flags_closest = -1;
-static int hf_mscldap_netlogon_flags_writable = -1;
-static int hf_mscldap_netlogon_flags_good_timeserv = -1;
-static int hf_mscldap_netlogon_flags_ndnc = -1;
-static int hf_mscldap_netlogon_flags_fnc = -1;
-static int hf_mscldap_netlogon_flags_dnc = -1;
-static int hf_mscldap_netlogon_flags_dns = -1;
-static int hf_mscldap_netlogon_flags_wdc = -1;
-static int hf_mscldap_netlogon_flags_rodc = -1;
-static int hf_mscldap_domain_guid = -1;
-static int hf_mscldap_forest = -1;
-static int hf_mscldap_domain = -1;
-static int hf_mscldap_hostname = -1;
-static int hf_mscldap_nb_domain_z = -1;
-static int hf_mscldap_nb_domain = -1;
-static int hf_mscldap_nb_hostname_z = -1;
-static int hf_mscldap_nb_hostname = -1;
-static int hf_mscldap_username_z = -1;
-static int hf_mscldap_username = -1;
-static int hf_mscldap_sitename = -1;
-static int hf_mscldap_clientsitename = -1;
-static int hf_mscldap_netlogon_lm_token = -1;
-static int hf_mscldap_netlogon_nt_token = -1;
-static int hf_ldap_sid = -1;
-static int hf_ldap_AccessMask_ADS_CREATE_CHILD = -1;
-static int hf_ldap_AccessMask_ADS_DELETE_CHILD = -1;
-static int hf_ldap_AccessMask_ADS_LIST = -1;
-static int hf_ldap_AccessMask_ADS_SELF_WRITE = -1;
-static int hf_ldap_AccessMask_ADS_READ_PROP = -1;
-static int hf_ldap_AccessMask_ADS_WRITE_PROP = -1;
-static int hf_ldap_AccessMask_ADS_DELETE_TREE = -1;
-static int hf_ldap_AccessMask_ADS_LIST_OBJECT = -1;
-static int hf_ldap_AccessMask_ADS_CONTROL_ACCESS = -1;
-static int hf_ldap_LDAPMessage_PDU = -1;
-static int hf_ldap_object_security_flag = -1;
-static int hf_ldap_ancestor_first_flag = -1;
-static int hf_ldap_public_data_only_flag = -1;
-static int hf_ldap_incremental_value_flag = -1;
-static int hf_ldap_oid = -1;
-static int hf_ldap_gssapi_encrypted_payload = -1;
+static int ldap_tap;
+static int proto_ldap;
+static int proto_cldap;
+
+static int hf_ldap_sasl_buffer_length;
+static int hf_ldap_response_in;
+static int hf_ldap_response_to;
+static int hf_ldap_time;
+static int hf_ldap_guid;
+
+static int hf_mscldap_ntver_flags;
+static int hf_mscldap_ntver_flags_v1;
+static int hf_mscldap_ntver_flags_v5;
+static int hf_mscldap_ntver_flags_v5ex;
+static int hf_mscldap_ntver_flags_v5ep;
+static int hf_mscldap_ntver_flags_vcs;
+static int hf_mscldap_ntver_flags_vnt4;
+static int hf_mscldap_ntver_flags_vpdc;
+static int hf_mscldap_ntver_flags_vip;
+static int hf_mscldap_ntver_flags_vl;
+static int hf_mscldap_ntver_flags_vgc;
+
+static int hf_mscldap_netlogon_ipaddress_family;
+static int hf_mscldap_netlogon_ipaddress_port;
+static int hf_mscldap_netlogon_ipaddress;
+static int hf_mscldap_netlogon_ipaddress_ipv4;
+static int hf_mscldap_netlogon_opcode;
+static int hf_mscldap_netlogon_flags;
+static int hf_mscldap_netlogon_flags_pdc;
+static int hf_mscldap_netlogon_flags_gc;
+static int hf_mscldap_netlogon_flags_ldap;
+static int hf_mscldap_netlogon_flags_ds;
+static int hf_mscldap_netlogon_flags_kdc;
+static int hf_mscldap_netlogon_flags_timeserv;
+static int hf_mscldap_netlogon_flags_closest;
+static int hf_mscldap_netlogon_flags_writable;
+static int hf_mscldap_netlogon_flags_good_timeserv;
+static int hf_mscldap_netlogon_flags_ndnc;
+static int hf_mscldap_netlogon_flags_fnc;
+static int hf_mscldap_netlogon_flags_dnc;
+static int hf_mscldap_netlogon_flags_dns;
+static int hf_mscldap_netlogon_flags_wdc;
+static int hf_mscldap_netlogon_flags_rodc;
+static int hf_mscldap_domain_guid;
+static int hf_mscldap_forest;
+static int hf_mscldap_domain;
+static int hf_mscldap_hostname;
+static int hf_mscldap_nb_domain_z;
+static int hf_mscldap_nb_domain;
+static int hf_mscldap_nb_hostname_z;
+static int hf_mscldap_nb_hostname;
+static int hf_mscldap_username_z;
+static int hf_mscldap_username;
+static int hf_mscldap_sitename;
+static int hf_mscldap_clientsitename;
+static int hf_mscldap_netlogon_lm_token;
+static int hf_mscldap_netlogon_nt_token;
+static int hf_ldap_sid;
+static int hf_ldap_AccessMask_ADS_CREATE_CHILD;
+static int hf_ldap_AccessMask_ADS_DELETE_CHILD;
+static int hf_ldap_AccessMask_ADS_LIST;
+static int hf_ldap_AccessMask_ADS_SELF_WRITE;
+static int hf_ldap_AccessMask_ADS_READ_PROP;
+static int hf_ldap_AccessMask_ADS_WRITE_PROP;
+static int hf_ldap_AccessMask_ADS_DELETE_TREE;
+static int hf_ldap_AccessMask_ADS_LIST_OBJECT;
+static int hf_ldap_AccessMask_ADS_CONTROL_ACCESS;
+static int hf_ldap_LDAPMessage_PDU;
+static int hf_ldap_object_security_flag;
+static int hf_ldap_ancestor_first_flag;
+static int hf_ldap_public_data_only_flag;
+static int hf_ldap_incremental_value_flag;
+static int hf_ldap_oid;
+static int hf_ldap_gssapi_encrypted_payload;
#include "packet-ldap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_ldap = -1;
-static gint ett_ldap_msg = -1;
-static gint ett_ldap_sasl_blob = -1;
-static gint ett_ldap_payload = -1;
-static gint ett_mscldap_netlogon_flags = -1;
-static gint ett_mscldap_ntver_flags = -1;
-static gint ett_mscldap_ipdetails = -1;
-static gint ett_ldap_DirSyncFlagsSubEntry = -1;
+static gint ett_ldap;
+static gint ett_ldap_msg;
+static gint ett_ldap_sasl_blob;
+static gint ett_ldap_payload;
+static gint ett_mscldap_netlogon_flags;
+static gint ett_mscldap_ntver_flags;
+static gint ett_mscldap_ipdetails;
+static gint ett_ldap_DirSyncFlagsSubEntry;
#include "packet-ldap-ett.c"
-static expert_field ei_ldap_exceeded_filter_length = EI_INIT;
-static expert_field ei_ldap_too_many_filter_elements = EI_INIT;
+static expert_field ei_ldap_exceeded_filter_length;
+static expert_field ei_ldap_too_many_filter_elements;
static dissector_table_t ldap_name_dissector_table=NULL;
static const char *object_identifier_id = NULL; /* LDAP OID */
@@ -221,7 +223,8 @@ static dissector_handle_t gssapi_wrap_handle;
static dissector_handle_t ntlmssp_handle;
static dissector_handle_t spnego_handle;
static dissector_handle_t tls_handle;
-static dissector_handle_t ldap_handle ;
+static dissector_handle_t ldap_handle;
+static dissector_handle_t cldap_handle;
static void prefs_register_ldap(void); /* forward declaration for use in preferences registration */
@@ -306,7 +309,7 @@ ldapstat_init(struct register_srt* srt _U_, GArray* srt_array)
}
static tap_packet_status
-ldapstat_packet(void *pldap, packet_info *pinfo, epan_dissect_t *edt _U_, const void *psi)
+ldapstat_packet(void *pldap, packet_info *pinfo, epan_dissect_t *edt _U_, const void *psi, tap_flags_t flags _U_)
{
guint i = 0;
srt_stat_table *ldap_srt_table;
@@ -317,7 +320,7 @@ ldapstat_packet(void *pldap, packet_info *pinfo, epan_dissect_t *edt _U_, const
if(ldap->is_request){
return TAP_PACKET_DONT_REDRAW;
}
- /* if we havnt seen the request, just ignore it */
+ /* if we haven't seen the request, just ignore it */
if(!ldap->req_frame){
return TAP_PACKET_DONT_REDRAW;
}
@@ -461,7 +464,7 @@ static GHashTable* attribute_types_hash;
static hf_register_info* dynamic_hf;
static guint dynamic_hf_size;
-static gboolean
+static bool
attribute_types_update_cb(void *r, char **err)
{
attribute_type_t *rec = (attribute_type_t *)r;
@@ -483,7 +486,7 @@ attribute_types_update_cb(void *r, char **err)
*/
c = proto_check_field_name(rec->attribute_type);
if (c) {
- *err = g_strdup_printf("Attribute type can't contain '%c'", c);
+ *err = ws_strdup_printf("Attribute type can't contain '%c'", c);
return FALSE;
}
@@ -576,7 +579,7 @@ attribute_types_post_update_cb(void)
dynamic_hf[i].p_id = hf_id;
dynamic_hf[i].hfinfo.name = attribute_type;
- dynamic_hf[i].hfinfo.abbrev = g_strdup_printf("ldap.AttributeValue.%s", attribute_type);
+ dynamic_hf[i].hfinfo.abbrev = ws_strdup_printf("ldap.AttributeValue.%s", attribute_type);
dynamic_hf[i].hfinfo.type = FT_STRING;
dynamic_hf[i].hfinfo.display = BASE_NONE;
dynamic_hf[i].hfinfo.strings = NULL;
@@ -631,10 +634,10 @@ static char *ldapvalue_string=NULL;
* display it as a string, othervise just display it in hex.
*/
static int
-dissect_ldap_AssertionValue(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index)
+dissect_ldap_AssertionValue(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index)
{
gint8 ber_class;
- gboolean pc, ind, is_ascii;
+ bool pc, ind, is_ascii;
gint32 tag;
guint32 len;
@@ -677,7 +680,7 @@ dissect_ldap_AssertionValue(gboolean implicit_tag, tvbuff_t *tvb, int offset, as
dissect_dcerpc_uuid_t(tvb, offset, actx->pinfo, tree, drep, hf_ldap_guid, &uuid);
ldapvalue_string=(char*)wmem_alloc(actx->pinfo->pool, 1024);
- g_snprintf(ldapvalue_string, 1023, "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
+ snprintf(ldapvalue_string, 1023, "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
uuid.data1, uuid.data2, uuid.data3, uuid.data4[0], uuid.data4[1],
uuid.data4[2], uuid.data4[3], uuid.data4[4], uuid.data4[5],
uuid.data4[6], uuid.data4[7]);
@@ -691,7 +694,7 @@ dissect_ldap_AssertionValue(gboolean implicit_tag, tvbuff_t *tvb, int offset, as
flags=tvb_get_letohl(tvb, offset);
ldapvalue_string=(char*)wmem_alloc(actx->pinfo->pool, 1024);
- g_snprintf(ldapvalue_string, 1023, "0x%08x",flags);
+ snprintf(ldapvalue_string, 1023, "0x%08x",flags);
/* populate bitmask subtree */
offset = dissect_mscldap_ntver_flags(tree, tvb, offset);
@@ -759,7 +762,7 @@ static void ldap_do_protocolop(packet_info *pinfo)
if (do_protocolop) {
- valstr = val_to_str(ProtocolOp, ldap_ProtocolOp_choice_vals, "Unknown (%%u)");
+ valstr = val_to_str(ProtocolOp, ldap_ProtocolOp_choice_vals, "Unknown (%u)");
col_append_fstr(pinfo->cinfo, COL_INFO, "%s(%u) ", valstr, MessageID);
@@ -830,7 +833,7 @@ ldap_match_call_response(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gu
case LDAP_REQ_COMPARE:
case LDAP_REQ_EXTENDED:
- /* this a a request - add it to the unmatched list */
+ /* this is a request - add it to the unmatched list */
/* check that we don't already have one of those in the
unmatched list and if so remove it */
@@ -930,7 +933,7 @@ dissect_ldap_payload(tvbuff_t *tvb, packet_info *pinfo,
guint length = 0;
tvbuff_t *msg_tvb = NULL;
gint8 ber_class;
- gboolean pc, ind = 0;
+ bool pc, ind = 0;
gint32 ber_tag;
attributedesc_string=NULL;
@@ -1056,6 +1059,10 @@ static void
ldap_conv_info_t *ldap_info = NULL;
proto_item *ldap_item = NULL;
proto_tree *ldap_tree = NULL;
+ guint32 sasl_length = 0;
+ guint32 remaining_length = 0;
+ guint8 sasl_start[2] = { 0, };
+ gboolean detected_sasl_security = FALSE;
ldm_tree = NULL;
@@ -1094,9 +1101,26 @@ static void
* check if it looks like it could be a SASL blob here
* and in that case just assume it is GSS-SPNEGO
*/
- if(!doing_sasl_security && (tvb_bytes_exist(tvb, offset, 5))
- &&(tvb_get_ntohl(tvb, offset)<=(guint)(tvb_reported_length_remaining(tvb, offset)-4))
- &&(tvb_get_guint8(tvb, offset+4)==0x60) ){
+ if(!doing_sasl_security && tvb_bytes_exist(tvb, offset, 6)) {
+ sasl_length = tvb_get_ntohl(tvb, offset);
+ remaining_length = tvb_reported_length_remaining(tvb, offset);
+ sasl_start[0] = tvb_get_guint8(tvb, offset+4);
+ sasl_start[1] = tvb_get_guint8(tvb, offset+5);
+ }
+ if ((sasl_length + 4) <= remaining_length) {
+ if (sasl_start[0] == 0x05 && sasl_start[1] == 0x04) {
+ /*
+ * Likely modern kerberos signing
+ */
+ detected_sasl_security = TRUE;
+ } else if (sasl_start[0] == 0x60) {
+ /*
+ * Likely ASN.1 based kerberos
+ */
+ detected_sasl_security = TRUE;
+ }
+ }
+ if (detected_sasl_security) {
ldap_info->auth_type=LDAP_AUTH_SASL;
ldap_info->first_auth_frame=pinfo->num;
ldap_info->auth_mech=wmem_strdup(wmem_file_scope(), "GSS-SPNEGO");
@@ -1223,41 +1247,46 @@ static void
if(ver_len==0){
return;
}
- if (gssapi_encrypt.gssapi_decrypted_tvb) {
- tvbuff_t *decr_tvb = gssapi_encrypt.gssapi_decrypted_tvb;
- proto_tree *enc_tree = NULL;
+ if (gssapi_encrypt.gssapi_data_encrypted) {
+ if (gssapi_encrypt.gssapi_decrypted_tvb) {
+ tvbuff_t *decr_tvb = gssapi_encrypt.gssapi_decrypted_tvb;
+ proto_tree *enc_tree = NULL;
- /*
- * The LDAP payload (blob) was encrypted and we were able to decrypt it.
- * The data was signed via a MIC token, sealed (encrypted), and "wrapped"
- * within the mechanism's "blob." Call dissect_ldap_payload to dissect
- * one or more LDAPMessages such as searchRequest messages within this
- * payload.
- */
- col_set_str(pinfo->cinfo, COL_INFO, "SASL GSS-API Privacy (decrypted): ");
+ /*
+ * The LDAP payload (blob) was encrypted and we were able to decrypt it.
+ * The data was signed via a MIC token, sealed (encrypted), and "wrapped"
+ * within the mechanism's "blob." Call dissect_ldap_payload to dissect
+ * one or more LDAPMessages such as searchRequest messages within this
+ * payload.
+ */
+ col_set_str(pinfo->cinfo, COL_INFO, "SASL GSS-API Privacy (decrypted): ");
- if (sasl_tree) {
- guint decr_len = tvb_reported_length(decr_tvb);
+ if (sasl_tree) {
+ guint decr_len = tvb_reported_length(decr_tvb);
- enc_tree = proto_tree_add_subtree_format(sasl_tree, decr_tvb, 0, -1,
- ett_ldap_payload, NULL, "GSS-API Encrypted payload (%d byte%s)",
- decr_len, plurality(decr_len, "", "s"));
- }
+ enc_tree = proto_tree_add_subtree_format(sasl_tree, decr_tvb, 0, -1,
+ ett_ldap_payload, NULL, "GSS-API Encrypted payload (%d byte%s)",
+ decr_len, plurality(decr_len, "", "s"));
+ }
- dissect_ldap_payload(decr_tvb, pinfo, enc_tree, ldap_info, is_mscldap);
- }
- else if (gssapi_encrypt.gssapi_data_encrypted) {
- /*
- * The LDAP message was encrypted but couldn't be decrypted so just display the
- * encrypted data all of which is found in Packet Bytes.
- */
- col_add_fstr(pinfo->cinfo, COL_INFO, "SASL GSS-API Privacy: payload (%d byte%s)",
- sasl_len-ver_len, plurality(sasl_len-ver_len, "", "s"));
+ dissect_ldap_payload(decr_tvb, pinfo, enc_tree, ldap_info, is_mscldap);
+ } else {
+ /*
+ * The LDAP message was encrypted but couldn't be decrypted so just display the
+ * encrypted data all of which is found in Packet Bytes.
+ */
+ col_add_fstr(pinfo->cinfo, COL_INFO, "SASL GSS-API Privacy: payload (%d byte%s)",
+ sasl_len-ver_len, plurality(sasl_len-ver_len, "", "s"));
- proto_tree_add_item(sasl_tree, hf_ldap_gssapi_encrypted_payload, gssapi_tvb, ver_len, -1, ENC_NA);
- }
- else {
- tvbuff_t *plain_tvb = tvb_new_subset_remaining(gssapi_tvb, ver_len);
+ proto_tree_add_item(sasl_tree, hf_ldap_gssapi_encrypted_payload, gssapi_tvb, ver_len, -1, ENC_NA);
+ }
+ } else {
+ tvbuff_t *plain_tvb;
+ if (gssapi_encrypt.gssapi_decrypted_tvb) {
+ plain_tvb = gssapi_encrypt.gssapi_decrypted_tvb;
+ } else {
+ plain_tvb = tvb_new_subset_remaining(gssapi_tvb, ver_len);
+ }
proto_tree *plain_tree = NULL;
/*
@@ -1290,11 +1319,7 @@ static void
}
}
-/*
- * prepend_dot is no longer used, but is being left in place in order to
- * maintain ABI compatibility.
- */
-int dissect_mscldap_string(tvbuff_t *tvb, int offset, char *str, int max_len, gboolean prepend_dot _U_)
+int dissect_mscldap_string(wmem_allocator_t *scope, tvbuff_t *tvb, int offset, int max_len, char **str)
{
int compr_len;
const gchar *name;
@@ -1302,7 +1327,7 @@ int dissect_mscldap_string(tvbuff_t *tvb, int offset, char *str, int max_len, gb
/* The name data MUST start at offset 0 of the tvb */
compr_len = get_dns_name(tvb, offset, max_len, 0, &name, &name_len);
- (void) g_strlcpy(str, name, max_len);
+ *str = get_utf_8_string(scope, name, name_len);
return offset + compr_len;
}
@@ -1398,10 +1423,10 @@ static int dissect_mscldap_netlogon_flags(proto_tree *parent_tree, tvbuff_t *tvb
return offset;
}
-static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void* data _U_)
+static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
{
int old_offset, offset=0;
- char str[256];
+ char *str;
guint16 itype;
guint16 len;
guint32 version;
@@ -1465,17 +1490,17 @@ static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* Forest */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_forest, tvb, old_offset, offset-old_offset, str);
/* Domain */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_domain, tvb, old_offset, offset-old_offset, str);
/* Hostname */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_hostname, tvb, old_offset, offset-old_offset, str);
/* DC IP Address */
@@ -1501,42 +1526,42 @@ static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* Forest */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_forest, tvb, old_offset, offset-old_offset, str);
/* Domain */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_domain, tvb, old_offset, offset-old_offset, str);
/* Hostname */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_hostname, tvb, old_offset, offset-old_offset, str);
/* NetBIOS Domain */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_nb_domain, tvb, old_offset, offset-old_offset, str);
/* NetBIOS Hostname */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_nb_hostname, tvb, old_offset, offset-old_offset, str);
/* User */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_username, tvb, old_offset, offset-old_offset, str);
/* Server Site */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_sitename, tvb, old_offset, offset-old_offset, str);
/* Client Site */
old_offset=offset;
- offset=dissect_mscldap_string(tvb, offset, str, 255, FALSE);
+ offset=dissect_mscldap_string(pinfo->pool, tvb, offset, 255, &str);
proto_tree_add_string(tree, hf_mscldap_clientsitename, tvb, old_offset, offset-old_offset, str);
/* get the version number from the end of the buffer, as the
@@ -1551,7 +1576,7 @@ static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
* This section may need to be updated if the base Windows APIs
* are changed to support ipv6, which currently is not the case.
*
- * The desector assumes the length is based on ipv4 and
+ * The dissector assumes the length is based on ipv4 and
* ignores the length
*/
@@ -1559,7 +1584,7 @@ static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
offset +=1;
- /* add IP address and desect the sockaddr_in structure */
+ /* add IP address and dissect the sockaddr_in structure */
old_offset = offset + 4;
item = proto_tree_add_item(tree, hf_mscldap_netlogon_ipaddress, tvb, old_offset, 4, ENC_BIG_ENDIAN);
@@ -1591,7 +1616,7 @@ static int dissect_NetLogon_PDU(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
offset = len - 8;
- /* NETLOGON_NT_VERISON Options (MS-ADTS 6.3.1.1) */
+ /* NETLOGON_NT_VERSION Options (MS-ADTS 6.3.1.1) */
offset = dissect_mscldap_ntver_flags(tree, tvb, offset);
/* LM Token */
@@ -1625,7 +1650,7 @@ get_normal_ldap_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb,
int offset, void *data _U_)
{
guint32 len;
- gboolean ind;
+ bool ind;
int data_offset;
/* normal ldap is tag+len bytes plus the length
@@ -1697,7 +1722,8 @@ ldap_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 acces
proto_tree_add_bitmask_list_value(tree, tvb, offset, 4, access_flags, access);
}
-struct access_mask_info ldap_access_mask_info = {
+
+static struct access_mask_info ldap_access_mask_info = {
"LDAP", /* Name of specific rights */
ldap_specific_rights, /* Dissection function */
NULL, /* Generic mapping table */
@@ -1732,7 +1758,7 @@ dissect_ldap_guid(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* dat
dissect_dcerpc_uuid_t(tvb, 0, pinfo, tree, drep, hf_ldap_guid, &uuid);
ldapvalue_string=(char*)wmem_alloc(pinfo->pool, 1024);
- g_snprintf(ldapvalue_string, 1023, "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
+ snprintf(ldapvalue_string, 1023, "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
uuid.data1, uuid.data2, uuid.data3, uuid.data4[0], uuid.data4[1],
uuid.data4[2], uuid.data4[3], uuid.data4[4], uuid.data4[5],
uuid.data4[6], uuid.data4[7]);
@@ -1744,7 +1770,7 @@ dissect_ldap_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data
{
guint32 sasl_len;
guint32 ldap_len;
- gboolean ind;
+ bool ind;
conversation_t *conversation;
ldap_conv_info_t *ldap_info = NULL;
@@ -2097,7 +2123,7 @@ void proto_register_ldap(void) {
{ &hf_mscldap_netlogon_flags_fnc,
{ "FDC", "mscldap.netlogon.flags.forestnc", FT_BOOLEAN, 32,
- TFS(&tfs_ads_fnc), 0x80000000, "Is the the NC the default forest root(Windows 2008)?", HFILL }},
+ TFS(&tfs_ads_fnc), 0x80000000, "Is the NC the default forest root(Windows 2008)?", HFILL }},
{ &hf_ldap_guid,
{ "GUID", "ldap.guid", FT_GUID, BASE_NONE,
@@ -2231,13 +2257,12 @@ void proto_register_ldap(void) {
prefs_register_obsolete_preference(ldap_module, "max_pdu");
- proto_cldap = proto_register_protocol(
- "Connectionless Lightweight Directory Access Protocol",
- "CLDAP", "cldap");
+ proto_cldap = proto_register_protocol("Connectionless Lightweight Directory Access Protocol", "CLDAP", "cldap");
+ cldap_handle = register_dissector("cldap", dissect_mscldap, proto_cldap);
ldap_tap=register_tap("ldap");
- ldap_name_dissector_table = register_dissector_table("ldap.name", "LDAP Attribute Type Dissectors", proto_cldap, FT_STRING, BASE_NONE);
+ ldap_name_dissector_table = register_dissector_table("ldap.name", "LDAP Attribute Type Dissectors", proto_cldap, FT_STRING, STRING_CASE_INSENSITIVE);
register_srt_table(proto_ldap, NULL, 1, ldapstat_packet, ldapstat_init, NULL);
}
@@ -2247,9 +2272,6 @@ void proto_register_ldap(void) {
void
proto_reg_handoff_ldap(void)
{
- dissector_handle_t cldap_handle;
-
- cldap_handle = create_dissector_handle(dissect_mscldap, proto_cldap);
dissector_add_uint_with_preference("udp.port", UDP_PORT_CLDAP, cldap_handle);
gssapi_handle = find_dissector_add_dependency("gssapi", proto_ldap);
@@ -2265,7 +2287,7 @@ proto_reg_handoff_ldap(void)
oid_add_from_string("ISO assigned OIDs, USA", "1.2.840");
/* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dsml/dsml/ldap_controls_and_session_support.asp */
-/* https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/3c5e87db-4728-4f29-b164-01dd7d7391ea */
+/* https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/3c5e87db-4728-4f29-b164-01dd7d7391ea */
oid_add_from_string("LDAP_PAGED_RESULT_OID_STRING","1.2.840.113556.1.4.319");
oid_add_from_string("LDAP_SERVER_SHOW_DELETED_OID","1.2.840.113556.1.4.417");
oid_add_from_string("LDAP_SERVER_SORT_OID","1.2.840.113556.1.4.473");
@@ -2280,7 +2302,8 @@ proto_reg_handoff_ldap(void)
oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_OID","1.2.840.113556.1.4.800");
oid_add_from_string("LDAP_SERVER_SD_FLAGS_OID","1.2.840.113556.1.4.801");
oid_add_from_string("LDAP_SERVER_RANGE_OPTION_OID","1.2.840.113556.1.4.802");
- oid_add_from_string("LDAP_OID_COMPARATOR_OR","1.2.840.113556.1.4.804");
+ oid_add_from_string("LDAP_MATCHING_RULE_BIT_AND", "1.2.840.113556.1.4.803");
+ oid_add_from_string("LDAP_MATCHING_RULE_BIT_OR","1.2.840.113556.1.4.804");
oid_add_from_string("LDAP_SERVER_TREE_DELETE_OID","1.2.840.113556.1.4.805");
oid_add_from_string("LDAP_SERVER_DIRSYNC_OID","1.2.840.113556.1.4.841");
oid_add_from_string("LDAP_SERVER_GET_STATS_OID","1.2.840.113556.1.4.970");
@@ -2300,7 +2323,11 @@ proto_reg_handoff_ldap(void)
oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_ADAM_OID","1.2.840.113556.1.4.1851");
oid_add_from_string("LDAP_SERVER_QUOTA_CONTROL_OID","1.2.840.113556.1.4.1852");
oid_add_from_string("msDS-PortSSL","1.2.840.113556.1.4.1860");
+ oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_ADAM_DIGEST_OID", "1.2.840.113556.1.4.1880");
oid_add_from_string("LDAP_SERVER_SHUTDOWN_NOTIFY_OID","1.2.840.113556.1.4.1907");
+ oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_PARTIAL_SECRETS_OID", "1.2.840.113556.1.4.1920");
+ oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_V60_OID", "1.2.840.113556.1.4.1935");
+ oid_add_from_string("LDAP_MATCHING_RULE_TRANSITIVE_EVAL", "1.2.840.113556.1.4.1941");
oid_add_from_string("LDAP_SERVER_RANGE_RETRIEVAL_NOERR_OID","1.2.840.113556.1.4.1948");
oid_add_from_string("msDS-isRODC","1.2.840.113556.1.4.1960");
oid_add_from_string("LDAP_SERVER_FORCE_UPDATE_OID","1.2.840.113556.1.4.1974");
@@ -2308,17 +2335,26 @@ proto_reg_handoff_ldap(void)
oid_add_from_string("LDAP_SERVER_SHOW_RECYCLED_OID","1.2.840.113556.1.4.2064");
oid_add_from_string("LDAP_SERVER_SHOW_DEACTIVATED_LINK_OID","1.2.840.113556.1.4.2065");
oid_add_from_string("LDAP_SERVER_POLICY_HINTS_DEPRECATED_OID","1.2.840.113556.1.4.2066");
+ oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_V61_R2_OID", "1.2.840.113556.1.4.2080");
oid_add_from_string("LDAP_SERVER_DIRSYNC_EX_OID","1.2.840.113556.1.4.2090");
oid_add_from_string("LDAP_SERVER_TREE_DELETE_EX_OID","1.2.840.113556.1.4.2204");
oid_add_from_string("LDAP_SERVER_UPDATE_STATS_OID","1.2.840.113556.1.4.2205");
oid_add_from_string("LDAP_SERVER_SEARCH_HINTS_OID","1.2.840.113556.1.4.2206");
oid_add_from_string("LDAP_SERVER_EXPECTED_ENTRY_COUNT_OID","1.2.840.113556.1.4.2211");
+ oid_add_from_string("LDAP_SERVER_BATCH_REQUEST_OID", "1.2.840.113556.1.4.2212");
+ oid_add_from_string("LDAP_CAP_ACTIVE_DIRECTORY_W8_OID", "1.2.840.113556.1.4.2237");
oid_add_from_string("LDAP_SERVER_POLICY_HINTS_OID","1.2.840.113556.1.4.2239");
+ oid_add_from_string("LDAP_MATCHING_RULE_DN_WITH_DATA", "1.2.840.113556.1.4.2253");
oid_add_from_string("LDAP_SERVER_SET_OWNER_OID","1.2.840.113556.1.4.2255");
oid_add_from_string("LDAP_SERVER_BYPASS_QUOTA_OID","1.2.840.113556.1.4.2256");
oid_add_from_string("LDAP_SERVER_LINK_TTL_OID","1.2.840.113556.1.4.2309");
oid_add_from_string("LDAP_SERVER_SET_CORRELATION_ID_OID","1.2.840.113556.1.4.2330");
oid_add_from_string("LDAP_SERVER_THREAD_TRACE_OVERRIDE_OID","1.2.840.113556.1.4.2354");
+
+ /* RFC4532 */
+ oid_add_from_string("LDAP_SERVER_WHO_AM_I_OID", "1.3.6.1.4.1.4203.1.11.3");
+
+ /* Mark Wahl (Critical Angle) */
oid_add_from_string("DYNAMIC_REFRESH","1.3.6.1.4.1.1466.101.119.1");
oid_add_from_string("LDAP_START_TLS_OID","1.3.6.1.4.1.1466.20037");
@@ -2348,12 +2384,6 @@ proto_reg_handoff_ldap(void)
oid_add_from_string("iPlanet Replication Modrdn Extra Mods Control", "2.16.840.1.113730.3.4.999");
- oid_add_from_string("LDAP_SERVER_QUOTA_CONTROL_OID", "1.2.840.113556.1.4.1852");
- oid_add_from_string("LDAP_SERVER_RANGE_OPTION_OID", "1.2.840.113556.1.4.802");
- oid_add_from_string("LDAP_SERVER_SHUTDOWN_NOTIFY_OID", "1.2.840.113556.1.4.1907");
- oid_add_from_string("LDAP_SERVER_RANGE_RETRIEVAL_NOERR_OID", "1.2.840.113556.1.4.1948");
-
-
dissector_add_string("ldap.name", "netlogon", create_dissector_handle(dissect_NetLogon_PDU, proto_cldap));
dissector_add_string("ldap.name", "objectGUID", create_dissector_handle(dissect_ldap_guid, proto_ldap));
dissector_add_string("ldap.name", "supportedControl", create_dissector_handle(dissect_ldap_oid, proto_ldap));
diff --git a/epan/dissectors/asn1/ldap/packet-ldap-template.h b/epan/dissectors/asn1/ldap/packet-ldap-template.h
index 9ae08f80fc..7413db9940 100644
--- a/epan/dissectors/asn1/ldap/packet-ldap-template.h
+++ b/epan/dissectors/asn1/ldap/packet-ldap-template.h
@@ -89,7 +89,7 @@ typedef struct ldap_call_response {
} ldap_call_response_t;
WS_DLL_PUBLIC
-int dissect_mscldap_string(tvbuff_t *tvb, int offset, char *str, int max_len, gboolean prepend_dot _U_);
+int dissect_mscldap_string(wmem_allocator_t *scope, tvbuff_t *tvb, int offset, int max_len, char **str);
WS_DLL_PUBLIC const value_string ldap_procedure_names[];
diff --git a/epan/dissectors/asn1/lix2/CMakeLists.txt b/epan/dissectors/asn1/lix2/CMakeLists.txt
index 57141f4f3c..57141f4f3c 100755..100644
--- a/epan/dissectors/asn1/lix2/CMakeLists.txt
+++ b/epan/dissectors/asn1/lix2/CMakeLists.txt
diff --git a/epan/dissectors/asn1/lix2/lix2.asn b/epan/dissectors/asn1/lix2/lix2.asn
index 0b83231fb8..b0f269a6f2 100755..100644
--- a/epan/dissectors/asn1/lix2/lix2.asn
+++ b/epan/dissectors/asn1/lix2/lix2.asn
@@ -1,7 +1,7 @@
--- This ASN.1 module was taken from 3GPP TS 33.128 V17.1.0 (2021-06) and modified to pass through asn2wrs
+-- This ASN.1 module was taken from 3GPP TS 33.128 V18.5.0 (2023-09) and modified to pass through asn2wrs
TS33128Payloads
-{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r17(17) version0(0)}
+{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r18(18) version5(5)}
DEFINITIONS IMPLICIT TAGS ::=
@@ -11,7 +11,7 @@ BEGIN
-- Relative OIDs
-- =============
---tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r17(17) version0(0)}
+--tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r18(18) version5(5)}
--xIRIPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xIRI(1)}
--xCCPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xCC(2)}
@@ -31,36 +31,36 @@ XIRIPayload ::= SEQUENCE
XIRIEvent ::= CHOICE
{
- -- Access and mobility related events, see clause 6.2.2
+ -- AMF events, see clause 6.2.2.2
registration [1] AMFRegistration,
deregistration [2] AMFDeregistration,
locationUpdate [3] AMFLocationUpdate,
startOfInterceptionWithRegisteredUE [4] AMFStartOfInterceptionWithRegisteredUE,
unsuccessfulAMProcedure [5] AMFUnsuccessfulProcedure,
- -- PDU session-related events, see clause 6.2.3
+ -- SMF events, see clause 6.2.3.2
pDUSessionEstablishment [6] SMFPDUSessionEstablishment,
pDUSessionModification [7] SMFPDUSessionModification,
pDUSessionRelease [8] SMFPDUSessionRelease,
startOfInterceptionWithEstablishedPDUSession [9] SMFStartOfInterceptionWithEstablishedPDUSession,
unsuccessfulSMProcedure [10] SMFUnsuccessfulProcedure,
- -- Subscriber-management related events, see clause 7.2.2
+ -- UDM events, see clause 7.2.2.3
servingSystemMessage [11] UDMServingSystemMessage,
- -- SMS-related events, see clause 6.2.5, see also sMSReport ([56] below)
+ -- SMS events, see clause 6.2.5.2
sMSMessage [12] SMSMessage,
- -- LALS-related events, see clause 7.3.3
+ -- LALS events, see clause 7.3.1.4
lALSReport [13] LALSReport,
- -- PDHR/PDSR-related events, see clause 6.2.3.4.1
+ -- PDHR/PDSR events, see clauses 6.2.3.5 and 6.2.3.9
pDHeaderReport [14] PDHeaderReport,
pDSummaryReport [15] PDSummaryReport,
- -- tag 16 is reserved because there is no equivalent mDFCellSiteReport in XIRIEvent
+ -- Tag 16 is reserved because there is no equivalent mDFCellSiteReport in XIRIEvent.
- -- MMS-related events, see clause 7.4.2
+ -- MMS events, see clause 7.4.3
mMSSend [17] MMSSend,
mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget,
mMSNotification [19] MMSNotification,
@@ -81,7 +81,7 @@ XIRIEvent ::= CHOICE
mMSMBoxViewRequest [34] MMSMBoxViewRequest,
mMSMBoxViewResponse [35] MMSMBoxViewResponse,
- -- PTC-related events, see clause 7.5.2
+ -- PTC events, see clause 7.5.2
pTCRegistration [36] PTCRegistration,
pTCSessionInitiation [37] PTCSessionInitiation,
pTCSessionAbandon [38] PTCSessionAbandon,
@@ -101,14 +101,14 @@ XIRIEvent ::= CHOICE
pTCListManagement [52] PTCListManagement,
pTCAccessPolicy [53] PTCAccessPolicy,
- -- More Subscriber-management related events, see clause 7.2.2
+ -- UDM events, see clause 7.2.2.3, continued from tag 11
subscriberRecordChangeMessage [54] UDMSubscriberRecordChangeMessage,
cancelLocationMessage [55] UDMCancelLocationMessage,
- -- SMS-related events continued from choice 12
+ -- SMS events, see clause 6.2.5.2, continued from tag 12
sMSReport [56] SMSReport,
- -- MA PDU session-related events, see clause 6.2.3.2.7
+ -- SMF MA PDU session events, see clause 6.2.3.2.7
sMFMAPDUSessionEstablishment [57] SMFMAPDUSessionEstablishment,
sMFMAPDUSessionModification [58] SMFMAPDUSessionModification,
sMFMAPDUSessionRelease [59] SMFMAPDUSessionRelease,
@@ -116,13 +116,13 @@ XIRIEvent ::= CHOICE
unsuccessfulMASMProcedure [61] SMFMAUnsuccessfulProcedure,
-- Identifier Association events, see clauses 6.2.2.2.7 and 6.3.2.2.2
- aMFIdentifierAssocation [62] AMFIdentifierAssocation,
- mMEIdentifierAssocation [63] MMEIdentifierAssocation,
+ aMFIdentifierAssociation [62] AMFIdentifierAssociation,
+ mMEIdentifierAssociation [63] MMEIdentifierAssociation,
- -- PDU to MA PDU session-related events, see clause 6.2.3.2.8
+ -- SMF PDU to MA PDU session events, see clause 6.2.3.2.8
sMFPDUtoMAPDUSessionModification [64] SMFPDUtoMAPDUSessionModification,
- -- NEF services related events, see clause 7.7.2
+ -- NEF events, see clause 7.7.2.1
nEFPDUSessionEstablishment [65] NEFPDUSessionEstablishment,
nEFPDUSessionModification [66] NEFPDUSessionModification,
nEFPDUSessionRelease [67] NEFPDUSessionRelease,
@@ -135,7 +135,7 @@ XIRIEvent ::= CHOICE
nEFMSISDNLessMOSMS [74] NEFMSISDNLessMOSMS,
nEFExpectedUEBehaviourUpdate [75] NEFExpectedUEBehaviourUpdate,
- -- SCEF services related events, see clause 7.8.2
+ -- SCEF events, see clause 7.8.2.1
sCEFPDNConnectionEstablishment [76] SCEFPDNConnectionEstablishment,
sCEFPDNConnectionUpdate [77] SCEFPDNConnectionUpdate,
sCEFPDNConnectionRelease [78] SCEFPDNConnectionRelease,
@@ -148,14 +148,106 @@ XIRIEvent ::= CHOICE
sCEFMSISDNLessMOSMS [85] SCEFMSISDNLessMOSMS,
sCEFCommunicationPatternUpdate [86] SCEFCommunicationPatternUpdate,
- --EPS Events, see clause 6.3
-
- --MME Events, see clause 6.3.2.2
+ -- MME events, see clause 6.3.2.2
mMEAttach [87] MMEAttach,
mMEDetach [88] MMEDetach,
mMELocationUpdate [89] MMELocationUpdate,
mMEStartOfInterceptionWithEPSAttachedUE [90] MMEStartOfInterceptionWithEPSAttachedUE,
- mMEUnsuccessfulProcedure [91] MMEUnsuccessfulProcedure
+ mMEUnsuccessfulProcedure [91] MMEUnsuccessfulProcedure,
+
+ -- AKMA key management events, see clauses 7.9.1.3 and 7.9.1.4
+ aAnFAnchorKeyRegister [92] AAnFAnchorKeyRegister,
+ aAnFKAKMAApplicationKeyGet [93] AAnFKAKMAApplicationKeyGet,
+ aAnFStartOfInterceptWithEstablishedAKMAKeyMaterial [94] AAnFStartOfInterceptWithEstablishedAKMAKeyMaterial,
+ aAnFAKMAContextRemovalRecord [95] AAnFAKMAContextRemovalRecord,
+ aFAKMAApplicationKeyRefresh [96] AFAKMAApplicationKeyRefresh,
+ aFStartOfInterceptWithEstablishedAKMAApplicationKey [97] AFStartOfInterceptWithEstablishedAKMAApplicationKey,
+ aFAuxiliarySecurityParameterEstablishment [98] AFAuxiliarySecurityParameterEstablishment,
+ aFApplicationKeyRemoval [99] AFApplicationKeyRemoval,
+
+ -- HR LI events, see clause 7.10.3.3
+ n9HRPDUSessionInfo [100] N9HRPDUSessionInfo,
+ s8HRBearerInfo [101] S8HRBearerInfo,
+
+ -- Separated Location Reporting, see clause 7.3.4.1
+ separatedLocationReporting [102] SeparatedLocationReporting,
+
+ -- STIR SHAKEN and RCD/eCNAM events, see clause 7.11.2
+ sTIRSHAKENSignatureGeneration [103] STIRSHAKENSignatureGeneration,
+ sTIRSHAKENSignatureValidation [104] STIRSHAKENSignatureValidation,
+
+ -- IMS events, see clause 7.12.4.2
+ iMSMessage [105] IMSMessage,
+ startOfInterceptionForActiveIMSSession [106] StartOfInterceptionForActiveIMSSession,
+ iMSCCUnavailable [107] IMSCCUnavailable,
+
+ -- UDM events, see clause 7.2.2.3, continued from tag 55
+ uDMLocationInformationResult [108] UDMLocationInformationResult,
+ uDMUEInformationResponse [109] UDMUEInformationResponse,
+ uDMUEAuthenticationResponse [110] UDMUEAuthenticationResponse,
+
+ -- AMF events, see 6.2.2.2.8, continued from tag 5
+ positioningInfoTransfer [111] AMFPositioningInfoTransfer,
+
+ -- MME events, see clause 6.3.2.2.8, continued from tag 91
+ mMEPositioningInfoTransfer [112] MMEPositioningInfoTransfer,
+
+ -- AMF events, see 6.2.2.2.9, continued from tag 111
+ aMFRANHandoverCommand [113] AMFRANHandoverCommand,
+ aMFRANHandoverRequest [114] AMFRANHandoverRequest,
+
+ -- EES events, see clause 7.14.2
+ eESEECRegistration [115] EESEECRegistration,
+ eESEASDiscovery [116] EESEASDiscovery,
+ eESEASDiscoverySubscription [117] EESEASDiscoverySubscription,
+ eESEASDiscoveryNotification [118] EESEASDiscoveryNotification,
+ eESAppContextRelocation [119] EESAppContextRelocation,
+ eESACRSubscription [120] EESACRSubscription,
+ eESACRNotification [121] EESACRNotification,
+ eESEECContextRelocation [122] EESEECContextRelocation,
+ eESStartOfInterceptionWithRegisteredEEC [123] EESStartOfInterceptionWithRegisteredEEC,
+
+ -- UDM events, see clause 7.2.2.3, continued from tag 110
+ uDMStartOfInterceptionWithRegisteredTarget [124] UDMStartOfInterceptionWithRegisteredTarget,
+
+ -- 5GMS AF events, see clause 7.15.2
+ fiveGMSAFServiceAccessInformation [125] FiveGMSAFServiceAccessInformation,
+ fiveGMSAFConsumptionReporting [126] FiveGMSAFConsumptionReporting,
+ fiveGMSAFDynamicPolicyInvocation [127] FiveGMSAFDynamicPolicyInvocation,
+ fiveGMSAFMetricsReporting [128] FiveGMSAFMetricsReporting,
+ fiveGMSAFNetworkAssistance [129] FiveGMSAFNetworkAssistance,
+ fiveGMSAFUnsuccessfulProcedure [130] FiveGMSAFUnsuccessfulProcedure,
+ fiveGMSAFStartOfInterceptionWithAlreadyConfiguredUE [131] FiveGMSAFStartOfInterceptionWithAlreadyConfiguredUE,
+
+ --AMF events, see 6.2.2.2.10, continued from tag 114
+ aMFUEConfigurationUpdate [132] AMFUEConfigurationUpdate,
+
+ -- HSS events, see clause 7.2.3.3
+ hSSServingSystemMessage [133] HSSServingSystemMessage,
+ hSSStartOfInterceptionWithRegisteredTarget [134] HSSStartOfInterceptionWithRegisteredTarget,
+
+ -- NEF events, see clause 7.7.6.1
+ nEFAFSessionWithQoSProvision [135] NEFAFSessionWithQoSProvision,
+ nEFAFSessionWithQoSNotification [136] NEFAFSessionWithQoSNotification,
+
+ -- SCEF events, see clause 7.8.6.1
+ sCEFASSessionWithQoSProvision [137] SCEFASSessionWithQoSProvision,
+ sCEFASSessionWithQoSNotification [138] SCEFASSessionWithQoSNotification,
+
+ -- AMF events, see 6.2.2.3, continued from tag 132
+ aMFRANTraceReport [139] AMFRANTraceReport,
+
+ -- RCS events, see clause 7.13.3
+ rCSRegistration [140] RCSRegistration,
+ rCSMessage [141] RCSMessage,
+ rCSCapabilityDiscovery [142] RCSCapabilityDiscovery,
+ rCSSessionEstablishment [143] RCSSessionEstablishment,
+ rCSSessionModification [144] RCSSessionModification,
+ rCSSessionRelease [145] RCSSessionRelease,
+
+ -- AMF events, see clause 6.2.2.2.12, continued from tag 139
+ aMFUEPolicyTransfer [146] AMFUEPolicyTransfer,
+ aMFUEServiceAccept [147] AMFUEServiceAccept
}
-- ==============
@@ -177,37 +269,37 @@ IRIPayload ::= SEQUENCE
IRIEvent ::= CHOICE
{
- -- Registration-related events, see clause 6.2.2
+ -- AMF events, see clause 6.2.2.3
registration [1] AMFRegistration,
deregistration [2] AMFDeregistration,
locationUpdate [3] AMFLocationUpdate,
startOfInterceptionWithRegisteredUE [4] AMFStartOfInterceptionWithRegisteredUE,
- unsuccessfulRegistrationProcedure [5] AMFUnsuccessfulProcedure,
+ unsuccessfulAMProcedure [5] AMFUnsuccessfulProcedure,
- -- PDU session-related events, see clause 6.2.3
+ -- SMF events, see clause 6.2.3.7
pDUSessionEstablishment [6] SMFPDUSessionEstablishment,
pDUSessionModification [7] SMFPDUSessionModification,
pDUSessionRelease [8] SMFPDUSessionRelease,
startOfInterceptionWithEstablishedPDUSession [9] SMFStartOfInterceptionWithEstablishedPDUSession,
- unsuccessfulSessionProcedure [10] SMFUnsuccessfulProcedure,
+ unsuccessfulSMProcedure [10] SMFUnsuccessfulProcedure,
- -- Subscriber-management related events, see clause 7.2.2
+ -- UDM events, see clause 7.2.2.4
servingSystemMessage [11] UDMServingSystemMessage,
- -- SMS-related events, see clause 6.2.5, see also sMSReport ([56] below)
+ -- SMS events, see clause 6.2.5.4
sMSMessage [12] SMSMessage,
- -- LALS-related events, see clause 7.3.3
+ -- LALS events, see clause 7.3.1.5
lALSReport [13] LALSReport,
- -- PDHR/PDSR-related events, see clause 6.2.3.4.1
+ -- PDHR/PDSR events, see clause 6.2.3.9
pDHeaderReport [14] PDHeaderReport,
pDSummaryReport [15] PDSummaryReport,
- -- MDF-related events, see clause 7.3.4
+ -- MDF events, see clause 7.3.2.2
mDFCellSiteReport [16] MDFCellSiteReport,
- -- MMS-related events, see clause 7.4.2
+ -- MMS events, see clause 7.4.4.1
mMSSend [17] MMSSend,
mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget,
mMSNotification [19] MMSNotification,
@@ -228,7 +320,7 @@ IRIEvent ::= CHOICE
mMSMBoxViewRequest [34] MMSMBoxViewRequest,
mMSMBoxViewResponse [35] MMSMBoxViewResponse,
- -- PTC-related events, see clause 7.5.2
+ -- PTC events, see clauses 7.5.2 and 7.5.3.1
pTCRegistration [36] PTCRegistration,
pTCSessionInitiation [37] PTCSessionInitiation,
pTCSessionAbandon [38] PTCSessionAbandon,
@@ -248,28 +340,28 @@ IRIEvent ::= CHOICE
pTCListManagement [52] PTCListManagement,
pTCAccessPolicy [53] PTCAccessPolicy,
- -- More Subscriber-management related events, see clause 7.2.2
- subscriberRecordChangeMessage [54] UDMSubscriberRecordChangeMessage,
- cancelLocationMessage [55] UDMCancelLocationMessage,
+ -- UDM events, see clause 7.2.2.4, continued from tag 11
+ subscriberRecordChangeMessage [54] UDMSubscriberRecordChangeMessage,
+ cancelLocationMessage [55] UDMCancelLocationMessage,
- -- SMS-related events, continued from choice 12
+ -- SMS events, see clause 6.2.5.4, continued from tag 12
sMSReport [56] SMSReport,
- -- MA PDU session-related events, see clause 6.2.3.2.7
+ -- SMF MA PDU session events, see clause 6.2.3.7
sMFMAPDUSessionEstablishment [57] SMFMAPDUSessionEstablishment,
sMFMAPDUSessionModification [58] SMFMAPDUSessionModification,
sMFMAPDUSessionRelease [59] SMFMAPDUSessionRelease,
startOfInterceptionWithEstablishedMAPDUSession [60] SMFStartOfInterceptionWithEstablishedMAPDUSession,
unsuccessfulMASMProcedure [61] SMFMAUnsuccessfulProcedure,
- -- Identifier Association events, see clauses 6.2.2.2.7 and 6.3.2.2.2
- aMFIdentifierAssocation [62] AMFIdentifierAssocation,
- mMEIdentifierAssocation [63] MMEIdentifierAssocation,
+ -- Identifier Association events, see clauses 6.2.2.3 and 6.3.2.3
+ aMFIdentifierAssociation [62] AMFIdentifierAssociation,
+ mMEIdentifierAssociation [63] MMEIdentifierAssociation,
- -- PDU to MA PDU session-related events, see clause 6.2.3.2.8
+ -- SMF PDU to MA PDU session events, see clause 6.2.3.7
sMFPDUtoMAPDUSessionModification [64] SMFPDUtoMAPDUSessionModification,
- -- NEF services related events, see clause 7.7.2,
+ -- NEF events, see clause 7.7.2.3
nEFPDUSessionEstablishment [65] NEFPDUSessionEstablishment,
nEFPDUSessionModification [66] NEFPDUSessionModification,
nEFPDUSessionRelease [67] NEFPDUSessionRelease,
@@ -281,8 +373,8 @@ IRIEvent ::= CHOICE
nEFdeviceTriggerReportNotify [73] NEFDeviceTriggerReportNotify,
nEFMSISDNLessMOSMS [74] NEFMSISDNLessMOSMS,
nEFExpectedUEBehaviourUpdate [75] NEFExpectedUEBehaviourUpdate,
-
- -- SCEF services related events, see clause 7.8.2
+
+ -- SCEF events, see clause 7.8.2.3
sCEFPDNConnectionEstablishment [76] SCEFPDNConnectionEstablishment,
sCEFPDNConnectionUpdate [77] SCEFPDNConnectionUpdate,
sCEFPDNConnectionRelease [78] SCEFPDNConnectionRelease,
@@ -294,15 +386,106 @@ IRIEvent ::= CHOICE
sCEFdeviceTriggerReportNotify [84] SCEFDeviceTriggerReportNotify,
sCEFMSISDNLessMOSMS [85] SCEFMSISDNLessMOSMS,
sCEFCommunicationPatternUpdate [86] SCEFCommunicationPatternUpdate,
-
- --EPS Events, see clause 6.3
- --MME Events, see clause 6.3.2.2
+ -- MME events, see clause 6.3.2.3
mMEAttach [87] MMEAttach,
mMEDetach [88] MMEDetach,
mMELocationUpdate [89] MMELocationUpdate,
mMEStartOfInterceptionWithEPSAttachedUE [90] MMEStartOfInterceptionWithEPSAttachedUE,
- mMEUnsuccessfulProcedure [91] MMEUnsuccessfulProcedure
+ mMEUnsuccessfulProcedure [91] MMEUnsuccessfulProcedure,
+
+ -- AKMA key management events, see clause 7.9.1.5
+ aAnFAnchorKeyRegister [92] AAnFAnchorKeyRegister,
+ aAnFKAKMAApplicationKeyGet [93] AAnFKAKMAApplicationKeyGet,
+ aAnFStartOfInterceptWithEstablishedAKMAKeyMaterial [94] AAnFStartOfInterceptWithEstablishedAKMAKeyMaterial,
+ aAnFAKMAContextRemovalRecord [95] AAnFAKMAContextRemovalRecord,
+ aFAKMAApplicationKeyRefresh [96] AFAKMAApplicationKeyRefresh,
+ aFStartOfInterceptWithEstablishedAKMAApplicationKey [97] AFStartOfInterceptWithEstablishedAKMAApplicationKey,
+ aFAuxiliarySecurityParameterEstablishment [98] AFAuxiliarySecurityParameterEstablishment,
+ aFApplicationKeyRemoval [99] AFApplicationKeyRemoval,
+
+ -- Tag 100 is reserved because there is no equivalent n9HRPDUSessionInfo in IRIEvent.
+ -- Tag 101 is reserved because there is no equivalent S8HRBearerInfo in IRIEvent.
+
+ -- Separated Location Reporting, see clause 7.3.4.1
+ separatedLocationReporting [102] SeparatedLocationReporting,
+
+ -- STIR SHAKEN and RCD/eCNAM events, see clause 7.11.3
+ sTIRSHAKENSignatureGeneration [103] STIRSHAKENSignatureGeneration,
+ sTIRSHAKENSignatureValidation [104] STIRSHAKENSignatureValidation,
+
+ -- IMS events, see clause 7.12.7
+ iMSMessage [105] IMSMessage,
+ startOfInterceptionForActiveIMSSession [106] StartOfInterceptionForActiveIMSSession,
+ iMSCCUnavailable [107] IMSCCUnavailable,
+
+ -- UDM events, see clause 7.2.2.4, continued from tag 55
+ uDMLocationInformationResult [108] UDMLocationInformationResult,
+ uDMUEInformationResponse [109] UDMUEInformationResponse,
+ uDMUEAuthenticationResponse [110] UDMUEAuthenticationResponse,
+
+ -- AMF events, see 6.2.2.3, continued from tag 5
+ positioningInfoTransfer [111] AMFPositioningInfoTransfer,
+
+ -- MME events, see clause 6.3.2.3, continued from tag 91
+ mMEPositioningInfoTransfer [112] MMEPositioningInfoTransfer,
+
+ -- AMF events, see 6.2.2.3, continued from tag 111
+ aMFRANHandoverCommand [113] AMFRANHandoverCommand,
+ aMFRANHandoverRequest [114] AMFRANHandoverRequest,
+
+ -- EES events, see clause 7.14.2.11
+ eESEECRegistration [115] EESEECRegistration,
+ eESEASDiscovery [116] EESEASDiscovery,
+ eESEASDiscoverySubscription [117] EESEASDiscoverySubscription,
+ eESEASDiscoveryNotification [118] EESEASDiscoveryNotification,
+ eESAppContextRelocation [119] EESAppContextRelocation,
+ eESACRSubscription [120] EESACRSubscription,
+ eESACRNotification [121] EESACRNotification,
+ eESEECContextRelocation [122] EESEECContextRelocation,
+ eESStartOfInterceptionWithRegisteredEEC [123] EESStartOfInterceptionWithRegisteredEEC,
+
+ -- UDM events, see clause 7.2.2.4, continued from tag 110
+ uDMStartOfInterceptionWithRegisteredTarget [124] UDMStartOfInterceptionWithRegisteredTarget,
+
+ -- 5GMS AF events, see clause 7.15.3
+ fiveGMSAFServiceAccessInformation [125] FiveGMSAFServiceAccessInformation,
+ fiveGMSAFConsumptionReporting [126] FiveGMSAFConsumptionReporting,
+ fiveGMSAFDynamicPolicyInvocation [127] FiveGMSAFDynamicPolicyInvocation,
+ fiveGMSAFMetricsReporting [128] FiveGMSAFMetricsReporting,
+ fiveGMSAFNetworkAssistance [129] FiveGMSAFNetworkAssistance,
+ fiveGMSAFUnsuccessfulProcedure [130] FiveGMSAFUnsuccessfulProcedure,
+ fiveGMSAFStartOfInterceptionWithAlreadyConfiguredUE [131] FiveGMSAFStartOfInterceptionWithAlreadyConfiguredUE,
+
+ --AMF events, see 6.2.2.3, continued from tag 114
+ aMFUEConfigurationUpdate [132] AMFUEConfigurationUpdate,
+
+ -- HSS events, see clause 7.2.3.4
+ hSSServingSystemMessage [133] HSSServingSystemMessage,
+ hSSStartOfInterceptionWithRegisteredTarget [134] HSSStartOfInterceptionWithRegisteredTarget,
+
+ -- NEF events, see clause 7.7.6.2
+ nEFAFSessionWithQoSProvision [135] NEFAFSessionWithQoSProvision,
+ nEFAFSessionWithQoSNotification [136] NEFAFSessionWithQoSNotification,
+
+ -- SCEF events, see clause 7.8.6.2
+ sCEFASSessionWithQoSProvision [137] SCEFASSessionWithQoSProvision,
+ sCEFASSessionWithQoSNotification [138] SCEFASSessionWithQoSNotification,
+
+ -- AMF events, see 6.2.2.3, continued from tag 132
+ aMFRANTraceReport [139] AMFRANTraceReport,
+
+ -- RCS events, see clause 7.13.3
+ rCSRegistration [140] RCSRegistration,
+ rCSMessage [141] RCSMessage,
+ rCSCapabilityDiscovery [142] RCSCapabilityDiscovery,
+ rCSSessionEstablishment [143] RCSSessionEstablishment,
+ rCSSessionModification [144] RCSSessionModification,
+ rCSSessionRelease [145] RCSSessionRelease,
+
+ -- AMF events, see clause 6.2.2.3, continued from tag 139
+ aMFUEPolicyTransfer [146] AMFUEPolicyTransfer,
+ aMFUEServiceAccept [147] AMFUEServiceAccept
}
IRITargetIdentifier ::= SEQUENCE
@@ -326,7 +509,15 @@ CCPDU ::= CHOICE
uPFCCPDU [1] UPFCCPDU,
extendedUPFCCPDU [2] ExtendedUPFCCPDU,
mMSCCPDU [3] MMSCCPDU,
- nIDDCCPDU [4] NIDDCCPDU
+
+ -- In Rel-16 (threeGPP(4) ts33128(19) r16(16) version9(9)),
+ -- tag 4 is pTCCCPDU and tag 5 is not used.
+ -- Rel-17 or newer decoders should decode tag 4 contents as PTCCCPDU if
+ -- r16 is used in cCPayloadOID.
+ nIDDCCPDU [4] NIDDCCPDU,
+ pTCCCPDU [5] PTCCCPDU,
+
+ iMSCCPDU [6] IMSCCPDU
}
-- ===========================
@@ -343,6 +534,62 @@ LINotificationMessage ::= CHOICE
{
lINotification [1] LINotification
}
+
+-- =================
+-- HR LI definitions
+-- =================
+
+N9HRPDUSessionInfo ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ pEI [2] PEI OPTIONAL,
+ pDUSessionID [3] PDUSessionID,
+ location [4] Location OPTIONAL,
+ sNSSAI [5] SNSSAI OPTIONAL,
+ dNN [6] DNN OPTIONAL,
+ messageCause [7] N9HRMessageCause
+}
+
+S8HRBearerInfo ::= SEQUENCE
+{
+ iMSI [1] IMSI,
+ iMEI [2] IMEI OPTIONAL,
+ bearerID [3] EPSBearerID,
+ linkedBearerID [4] EPSBearerID OPTIONAL,
+ location [5] Location OPTIONAL,
+ aPN [6] APN OPTIONAL,
+ sGWIPAddress [7] IPAddress OPTIONAL,
+ messageCause [8] S8HRMessageCause
+}
+
+-- ================
+-- HR LI parameters
+
+-- ================
+
+N9HRMessageCause ::= ENUMERATED
+{
+ pDUSessionEstablished(1),
+ pDUSessionModified(2),
+ pDUSessionReleased(3),
+ updatedLocationAvailable(4),
+ sMFChanged(5),
+ other(6),
+ hRLIEnabled(7)
+}
+
+S8HRMessageCause ::= ENUMERATED
+{
+ bearerActivated(1),
+ bearerModified(2),
+ bearerDeleted(3),
+ pDNDisconnected(4),
+ updatedLocationAvailable(5),
+ sGWChanged(6),
+ other(7),
+ hRLIEnabled(8)
+}
+
-- ==================
-- 5G NEF definitions
-- ==================
@@ -490,6 +737,26 @@ NEFExpectedUEBehaviourUpdate ::= SEQUENCE
validityTime [12] Timestamp OPTIONAL
}
+-- See clause 7.7.6.1.2 for details of this structure
+NEFAFSessionWithQoSProvision ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ aFID [2] AFID,
+ aFSessionWithQoSOpType [3] AForASSessionWithQoSOpType,
+ aFSessionWithQoSSubscription [4] SBIType OPTIONAL,
+ aFSessionWithQoSSubscriptionPatch [5] SBIType OPTIONAL,
+ aFSessionWithQoSResponseCode [6] AForASSessionWithQoSResponseCode
+}
+
+-- See clause 7.7.6.1.3 for details of this structure
+NEFAFSessionWithQoSNotification ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ aFID [2] AFID,
+ userPlaneNotificationData [3] SBIType,
+ aForASSessionWithQoSResponseCode [4] AForASSessionWithQoSResponseCode
+}
+
-- ==========================
-- Common SCEF/NEF parameters
-- ==========================
@@ -598,6 +865,33 @@ ScheduledCommunicationType ::= ENUMERATED
bidirectional(3)
}
+AForASSessionWithQoSResponseCode ::= ENUMERATED
+{
+ oK200(1),
+ created201(2),
+ noContent204(3),
+ temporaryRedirect307(4),
+ permanentRedirect308(5),
+ badRequest400(6),
+ unauthorized401(7),
+ forbidden403(8),
+ notFound404(9),
+ notAcceptable406(10),
+ lengthRequired411(11),
+ unsupportedMediaType415(12),
+ tooManyRequests429(13),
+ internalServerError500(14),
+ serviceUnavailable503(15)
+}
+
+AForASSessionWithQoSOpType ::= ENUMERATED
+{
+ pOST(1),
+ pUT(2),
+ pATCH(3),
+ dELETE(4)
+}
+
-- =================
-- 5G NEF parameters
-- =================
@@ -625,6 +919,7 @@ AFID ::= UTF8String
NEFID ::= UTF8String
+
-- ==================
-- SCEF definitions
-- ==================
@@ -779,6 +1074,28 @@ SCEFCommunicationPatternUpdate ::= SEQUENCE
validityTime [14] Timestamp OPTIONAL
}
+-- See clause 7.8.6.1.2 for details of this structure
+SCEFASSessionWithQoSProvision ::= SEQUENCE
+{
+ mSISDN [1] MSISDN OPTIONAL,
+ externalIdentifier [2] NAI OPTIONAL,
+ sCSASID [3] SCSASID,
+ aSSessionWithQoSOpType [4] AForASSessionWithQoSOpType,
+ aSSessionWithQoSSubscription [5] SBIType OPTIONAL,
+ aSSessionWithQoSSubscriptionPatch [6] SBIType OPTIONAL,
+ aSSessionWithQoSResponseCode [7] AForASSessionWithQoSResponseCode
+}
+
+-- See clause 7.8.6.1.3 for details of this structure
+SCEFASSessionWithQoSNotification ::= SEQUENCE
+{
+ mSISDN [1] MSISDN OPTIONAL,
+ externalIdentifier [2] NAI OPTIONAL,
+ sCSASID [3] SCSASID,
+ userPlaneNotificationData [4] SBIType,
+ aSSessionWithQoSResponseCode [5] AForASSessionWithQoSResponseCode
+}
+
-- =================
-- SCEF parameters
-- =================
@@ -816,6 +1133,192 @@ EPSBearerID ::= INTEGER (0..255)
APN ::= UTF8String
+-- =======================
+-- AKMA AAnF definitions
+-- =======================
+
+AAnFAnchorKeyRegister ::= SEQUENCE
+{
+ aKID [1] NAI,
+ sUPI [2] SUPI,
+ kAKMA [3] KAKMA OPTIONAL
+}
+
+AAnFKAKMAApplicationKeyGet ::= SEQUENCE
+{
+ type [1] KeyGetType,
+ aKID [2] NAI,
+ keyInfo [3] AFKeyInfo
+}
+
+AAnFStartOfInterceptWithEstablishedAKMAKeyMaterial ::= SEQUENCE
+{
+ aKID [1] NAI,
+ kAKMA [2] KAKMA OPTIONAL,
+ aFKeyList [3] SEQUENCE OF AFKeyInfo OPTIONAL
+}
+
+AAnFAKMAContextRemovalRecord ::= SEQUENCE
+{
+ aKID [1] NAI,
+ nFID [2] NFID
+}
+
+-- ======================
+-- AKMA common parameters
+-- ======================
+
+FQDN ::= UTF8String
+
+NFID ::= UTF8String
+
+UAProtocolID ::= OCTET STRING (SIZE(5))
+
+AKMAAFID ::= SEQUENCE
+{
+ aFFQDN [1] FQDN,
+ uaProtocolID [2] UAProtocolID
+}
+
+UAStarParams ::= CHOICE
+{
+ tls12 [1] TLS12UAStarParams,
+ generic [2] GenericUAStarParams
+}
+
+GenericUAStarParams ::= SEQUENCE
+{
+ genericClientParams [1] OCTET STRING,
+ genericServerParams [2] OCTET STRING
+}
+
+-- ===========================================
+-- Specific UaStarParams for TLS 1.2 (RFC5246)
+-- ===========================================
+
+TLSCipherType ::= ENUMERATED
+{
+ stream(1),
+ block(2),
+ aead(3)
+}
+
+TLSCompressionAlgorithm ::= ENUMERATED
+{
+ null(1),
+ deflate(2)
+}
+
+TLSPRFAlgorithm ::= ENUMERATED
+{
+ rfc5246(1)
+}
+
+TLSCipherSuite ::= SEQUENCE (SIZE(2)) OF INTEGER (0..255)
+
+TLS12UAStarParams ::= SEQUENCE
+{
+ preMasterSecret [1] OCTET STRING (SIZE(48)) OPTIONAL,
+ masterSecret [2] OCTET STRING (SIZE(48)),
+ pRFAlgorithm [3] TLSPRFAlgorithm,
+ cipherSuite [4] TLSCipherSuite,
+ cipherType [5] TLSCipherType,
+ encKeyLength [6] INTEGER (0..255),
+ blockLength [7] INTEGER (0..255),
+ fixedIVLength [8] INTEGER (0..255),
+ recordIVLength [9] INTEGER (0..255),
+ macLength [10] INTEGER (0..255),
+ macKeyLength [11] INTEGER (0..255),
+ compressionAlgorithm [12] TLSCompressionAlgorithm,
+ clientRandom [13] OCTET STRING (SIZE(32)),
+ serverRandom [14] OCTET STRING (SIZE(32)),
+ clientSequenceNumber [15] INTEGER,
+ serverSequenceNumber [16] INTEGER,
+ sessionID [17] OCTET STRING (SIZE(0..32)),
+ tLSServerExtensions [18] OCTET STRING (SIZE(0..65535)),
+ tLSClientExtensions [19] OCTET STRING (SIZE(0..65535)) OPTIONAL
+}
+
+KAF ::= OCTET STRING
+
+KAKMA ::= OCTET STRING
+
+-- ====================
+-- AKMA AAnF parameters
+-- ====================
+
+KeyGetType ::= ENUMERATED
+{
+ internal(1),
+ external(2)
+}
+
+AFKeyInfo ::= SEQUENCE
+{
+ aFID [1] AKMAAFID,
+ kAF [2] KAF,
+ kAFExpTime [3] KAFExpiryTime
+}
+
+-- =======================
+-- AKMA AF definitions
+-- =======================
+
+AFAKMAApplicationKeyRefresh ::= SEQUENCE
+{
+ aFID [1] AFID,
+ aKID [2] NAI,
+ kAF [3] KAF,
+ uaStarParams [4] UAStarParams OPTIONAL
+}
+
+AFStartOfInterceptWithEstablishedAKMAApplicationKey ::= SEQUENCE
+{
+ aFID [1] FQDN,
+ aKID [2] NAI,
+ kAFParamList [3] SEQUENCE OF AFSecurityParams
+}
+
+AFAuxiliarySecurityParameterEstablishment ::= SEQUENCE
+{
+ aFSecurityParams [1] AFSecurityParams
+}
+
+AFSecurityParams ::= SEQUENCE
+{
+ aFID [1] AFID,
+ aKID [2] NAI,
+ kAF [3] KAF,
+ uaStarParams [4] UAStarParams
+}
+
+AFApplicationKeyRemoval ::= SEQUENCE
+{
+ aFID [1] AFID,
+ aKID [2] NAI,
+ removalCause [3] AFKeyRemovalCause
+}
+
+-- ===================
+-- AKMA AF parameters
+-- ===================
+
+KAFParams ::= SEQUENCE
+{
+ aKID [1] NAI,
+ kAF [2] KAF,
+ kAFExpTime [3] KAFExpiryTime,
+ uaStarParams [4] UAStarParams
+}
+
+KAFExpiryTime ::= GeneralizedTime
+
+AFKeyRemovalCause ::= ENUMERATED
+{
+ unknown(1),
+ keyExpiry(2),
+ applicationSpecific(3)
+}
-- ==================
-- 5G AMF definitions
@@ -824,20 +1327,32 @@ APN ::= UTF8String
-- See clause 6.2.2.2.2 for details of this structure
AMFRegistration ::= SEQUENCE
{
- registrationType [1] AMFRegistrationType,
- registrationResult [2] AMFRegistrationResult,
- slice [3] Slice OPTIONAL,
- sUPI [4] SUPI,
- sUCI [5] SUCI OPTIONAL,
- pEI [6] PEI OPTIONAL,
- gPSI [7] GPSI OPTIONAL,
- gUTI [8] FiveGGUTI,
- location [9] Location OPTIONAL,
- non3GPPAccessEndpoint [10] UEEndpointAddress OPTIONAL,
- fiveGSTAIList [11] TAIList OPTIONAL,
- sMSOverNasIndicator [12] SMSOverNASIndicator OPTIONAL,
- oldGUTI [13] EPS5GGUTI OPTIONAL,
- eMM5GRegStatus [14] EMM5GMMStatus OPTIONAL
+ registrationType [1] AMFRegistrationType,
+ registrationResult [2] AMFRegistrationResult,
+ slice [3] Slice OPTIONAL,
+ sUPI [4] SUPI,
+ sUCI [5] SUCI OPTIONAL,
+ pEI [6] PEI OPTIONAL,
+ gPSI [7] GPSI OPTIONAL,
+ gUTI [8] FiveGGUTI,
+ location [9] Location OPTIONAL,
+ non3GPPAccessEndpoint [10] UEEndpointAddress OPTIONAL,
+ fiveGSTAIList [11] TAIList OPTIONAL,
+ sMSOverNasIndicator [12] SMSOverNASIndicator OPTIONAL,
+ oldGUTI [13] EPS5GGUTI OPTIONAL,
+ eMM5GRegStatus [14] EMM5GMMStatus OPTIONAL,
+ nonIMEISVPEI [15] NonIMEISVPEI OPTIONAL,
+ mACRestIndicator [16] MACRestrictionIndicator OPTIONAL,
+ pagingRestrictionIndicator [17] PagingRestrictionIndicator OPTIONAL,
+ rATType [18] RATType OPTIONAL,
+ rRCEstablishmentCause [19] RRCEstablishmentCause OPTIONAL,
+ nGInformation [20] NGInformation OPTIONAL,
+ nASTransportInitialInformation [21] NASTransportInitialInformation OPTIONAL,
+ sORTransparentContainer [22] SORTransparentContainer OPTIONAL,
+ equivalentPLMNList [23] PLMNList OPTIONAL,
+ fiveGMMCapability [24] FiveGMMCapability OPTIONAL,
+ initialRANUEContextSetup [25] InitialRANUEContextSetup OPTIONAL,
+ mUSIMUERequestType [26] MUSIMUERequestType OPTIONAL
}
-- See clause 6.2.2.2.3 for details of this structure
@@ -886,7 +1401,9 @@ AMFStartOfInterceptionWithRegisteredUE ::= SEQUENCE
fiveGSTAIList [12] TAIList OPTIONAL,
sMSOverNASIndicator [13] SMSOverNASIndicator OPTIONAL,
oldGUTI [14] EPS5GGUTI OPTIONAL,
- eMM5GRegStatus [15] EMM5GMMStatus OPTIONAL
+ eMM5GRegStatus [15] EMM5GMMStatus OPTIONAL,
+ sORTransparentContainer [16] SORTransparentContainer OPTIONAL,
+ uEPolicy [17] UEPolicy OPTIONAL
}
-- See clause 6.2.2.2.6 for details of this structure
@@ -903,6 +1420,99 @@ AMFUnsuccessfulProcedure ::= SEQUENCE
location [9] Location OPTIONAL
}
+-- See clause 6.2.2.2.8 on for details of this structure
+AMFPositioningInfoTransfer ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ sUCI [2] SUCI OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ gUTI [5] FiveGGUTI OPTIONAL,
+ nRPPaMessage [6] OCTET STRING OPTIONAL,
+ lPPMessage [7] OCTET STRING OPTIONAL,
+ lcsCorrelationId [8] UTF8String (SIZE(1..255))
+}
+
+-- See clause 6.2.2.2.9.2 for details of this structure
+AMFRANHandoverCommand ::= SEQUENCE
+{
+ userIdentifiers [1] UserIdentifiers,
+ aMFUENGAPID [2] AMFUENGAPID,
+ rANUENGAPID [3] RANUENGAPID,
+ handoverType [4] HandoverType,
+ targetToSourceContainer [5] RANTargetToSourceContainer
+}
+
+-- See clause 6.2.2.2.9.3 for details of this structure
+AMFRANHandoverRequest ::= SEQUENCE
+{
+ userIdentifiers [1] UserIdentifiers,
+ aMFUENGAPID [2] AMFUENGAPID,
+ rANUENGAPID [3] RANUENGAPID,
+ handoverType [4] HandoverType,
+ handoverCause [5] HandoverCause,
+ pDUSessionResourceInformation [6] PDUSessionResourceInformation,
+ mobilityRestrictionList [7] MobilityRestrictionList OPTIONAL,
+ locationReportingRequestType [8] LocationReportingRequestType OPTIONAL,
+ targetToSourceContainer [9] RANTargetToSourceContainer,
+ nPNAccessInformation [10] NPNAccessInformation OPTIONAL,
+ sourceToTargetContainer [11] RANSourceToTargetContainer
+}
+
+--See clause 6.2.2.2.10 on for details of this structure
+AMFUEConfigurationUpdate ::= SEQUENCE
+{
+ userIdentifiers [1] UserIdentifiers,
+ gUTI [2] GUTI,
+ oldGUTI [3] EPS5GGUTI OPTIONAL,
+ fiveGSTAIList [4] TAIList OPTIONAL,
+ slice [5] Slice OPTIONAL,
+ serviceAreaList [6] ServiceAreaList OPTIONAL,
+ registrationResult [7] AMFRegistrationResult OPTIONAL,
+ sMSOverNASIndicator [8] SMSOverNASIndicator OPTIONAL
+}
+
+-- See clause 6.2.2.2.10.2 for details of this structure
+AMFRANTraceReport ::= SEQUENCE
+{
+ userIdentifiers [1] UserIdentifiers,
+ aMFUENGAPID [2] AMFUENGAPID,
+ rANUENGAPID [3] RANUENGAPID,
+ traceRecordType [4] TraceRecordType,
+ traceDirection [5] TraceDirection,
+ traceActivationInfo [6] TraceActivationInfo OPTIONAL,
+ nGRANCGI [7] NCGI,
+ globalRANNodeID [8] GlobalRANNodeID,
+ traceCollectionEntityInfo [9] TraceCollectionEntityInfo OPTIONAL,
+ aMFTraceData [10] XMLType,
+ location [11] Location OPTIONAL
+}
+
+-- See clause 6.2.2.2.12 for details of this Structure
+AMFUEPolicyTransfer ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ sUCI [2] SUCI OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ gUTI [5] FiveGGUTI OPTIONAL,
+ uEPolicy [6] UEPolicy
+}
+
+-- See clause 6.2.2.2.12 for details of this structure
+AMFUEServiceAccept ::= SEQUENCE
+{
+ userIdentifiers [1] UserIdentifiers,
+ serviceMessageIdentity [2] ServiceMessageIdentity,
+ serviceType [3] OCTET STRING (SIZE(1)) OPTIONAL,
+ fiveGTMSI [4] FiveGTMSI OPTIONAL,
+ uplinkDataStatus [5] OCTET STRING (SIZE(2..32)) OPTIONAL,
+ pDUSessionStatus [6] OCTET STRING (SIZE(2..32)) OPTIONAL,
+ uERequestType [7] FiveGSMRequestType OPTIONAL,
+ pagingRestriction [8] PagingRestrictionIndicator OPTIONAL,
+ forbiddenTAIList [9] TAIList OPTIONAL
+}
+
-- =================
-- 5G AMF parameters
-- =================
@@ -949,11 +1559,269 @@ AMFRegistrationType ::= ENUMERATED
initial(1),
mobility(2),
periodic(3),
- emergency(4)
+ emergency(4),
+ sNPNOnboarding(5),
+ disasterMobility(6),
+ disasterInitial(7)
}
AMFSetID ::= INTEGER (0..1023)
+AMFUENGAPID ::= INTEGER (0..1099511627775)
+
+AreaScopeOfMDT ::= CHOICE
+{
+ cellBased [1] SEQUENCE (SIZE(1..MAX)) OF CellID,
+ tABased [2] SEQUENCE (SIZE(1..MAX)) OF TAC,
+ pLMNWide [3] PLMNID,
+ tAIBased [4] SEQUENCE (SIZE(1..MAX)) OF TAI
+}
+
+MDTActivation ::= ENUMERATED
+{
+ immediateMDTOnly(1),
+ loggedMDTOnly(2),
+ immediateMDTandTrace(3)
+}
+
+MDTConfiguration ::= ENUMERATED
+{
+ mDTConfigurationNR(1),
+ mDTConfigurationEUTRA(2)
+}
+
+MDTConfigurationEUTRA ::= SEQUENCE
+{
+ mDTActivation [1] MDTActivation,
+ areaScopeofMDT [2] AreaScopeOfMDT,
+ mDTMode [3] MDTMode,
+ signallingBasedMDTPLMNList [4] PLMNList
+}
+
+MDTConfigurationNR ::= SEQUENCE
+{
+ mDTActivation [1] MDTActivation,
+ areaScopeofMDT [2] AreaScopeOfMDT,
+ mDTModeNR [3] MDTMode,
+ signallingBasedMDTPLMNList [4] PLMNList
+}
+
+-- TS 38.413 [23], clause 9.3.1.169
+MDTMode ::= CHOICE
+{
+ immediateMDT [1] OCTET STRING,
+ loggedMDT [2] OCTET STRING
+}
+
+-- TS 24.501 [13], clause 9.11.3.49
+ServiceAreaList ::= OCTET STRING (SIZE(4..112))
+
+ServiceMessageIdentity ::= CHOICE
+{
+ serviceRequest [1] OCTET STRING,
+ serviceAccept [2] OCTET STRING
+}
+
+TraceActivationInfo ::= SEQUENCE
+{
+ nGRANTraceID [1] OCTET STRING (SIZE(8)),
+ interfacestoTrace [2] BIT STRING (SIZE(8)),
+ traceDepth [3] TraceDepth,
+ traceCollectionEntityIPAddress [4] IPAddress,
+ mDTConfiguration [5] MDTConfiguration OPTIONAL
+}
+
+TraceCollectionEntityInfo ::= SEQUENCE
+{
+ traceCollectionEntityIPAddress [1] BIT STRING (SIZE(1..160, ...)),
+ traceCollectionEntityURI [2] UTF8String
+}
+
+-- TS 32.423 [112], clause 5.3
+TraceDepth ::= ENUMERATED
+{
+ minimum(1),
+ medium(2),
+ maximum(3),
+ minimumWithoutVendorSpecificExtension(4),
+ mediumWithoutVendorSpecificExtension(5),
+ maximumWithoutVendorSpecificExtension(6)
+}
+
+TraceDirection ::= ENUMERATED
+{
+ toAMF(1),
+ fromAMF(2)
+}
+
+TraceRecordType ::= ENUMERATED
+{
+ traceStart(1),
+ cellTrafficTrace(2),
+ traceDataDelivery(3),
+ traceDeactivation(4)
+}
+
+NASTransportInitialInformation ::= SEQUENCE
+{
+ rANUENGAPID [1] RANUENGAPID,
+ iABNodeIndication [2] BOOLEAN OPTIONAL,
+ eDTSession [3] BOOLEAN OPTIONAL,
+ authenticatedIndication [4] BOOLEAN OPTIONAL,
+ nPNAccessInformation [5] CellCAGList OPTIONAL,
+ rEDCAPIndication [6] REDCAPIndication OPTIONAL
+}
+
+NGInformation ::= SEQUENCE
+{
+ globalRANNodeID [1] GlobalRANNodeID,
+ rANNodeName [2] RANNodeName OPTIONAL,
+ supportedTAList [3] SupportedTAList OPTIONAL,
+ extendedRANNodeName [4] RANNodeName OPTIONAL,
+ pLMNSupportList [5] PLMNSupportList,
+ iABSupported [6] BOOLEAN OPTIONAL
+}
+
+PLMNSupportList ::= SEQUENCE (SIZE(1..MAX)) OF PLMNSupportItem
+
+PLMNSupportItem ::= SEQUENCE
+{
+ pLMNIdentity [1] PLMNID,
+ nPNSupport [2] NID OPTIONAL,
+ onboardingSupport [3] BOOLEAN OPTIONAL
+}
+
+F1Information ::= SEQUENCE
+{
+ gNBDUID [1] INTEGER (0..68719476735),
+ gNBDUName [2] UTF8String OPTIONAL,
+ gNBCUName [3] UTF8String OPTIONAL,
+ gNBDUServedCells [4] SEQUENCE (SIZE(1..MAX)) OF RANCGI,
+ extendedGNBDUName [5] UTF8String OPTIONAL,
+ extendedGNBCUName [6] UTF8String OPTIONAL
+}
+
+REDCAPIndication ::= ENUMERATED
+{
+ redCAP(1)
+}
+
+RRCEstablishmentCause ::= CHOICE
+{
+ ePCEstablishmentCause [1] EstablishmentCause,
+ fiveGCEstablishmentCause [2] EstablishmentCause
+}
+
+EstablishmentCause ::= ENUMERATED
+{
+ emergency(1),
+ highPriorityAccess(2),
+ mtAccess(3),
+ moSignalling(4),
+ moData(5),
+ moVoiceCall(6),
+ moVideoCall(7),
+ moSMS(8),
+ mpsPriorityAccess(9),
+ mcsPriorityAccess(10),
+ notAvailable(11),
+ exceptionData(12)
+}
+
+SORTransparentContainer ::= OCTET STRING (SIZE (17..65535))
+
+UEPolicy ::= OCTET STRING (SIZE(16..65540))
+
+InitialRANUEContextSetup ::= SEQUENCE
+{
+ aMFUENGAPID [1] AMFUENGAPID,
+ rANUENGAPID [2] RANUENGAPID,
+ oldAMF [3] GUAMI OPTIONAL,
+ pDUSessionSetupRequest [4] SEQUENCE (SIZE(1..MAX)) OF PDUSessionSetupRequestItem,
+ allowedNSSAI [5] AllowedNSSAI,
+ mobilityRestrictionList [6] MobilityRestrictionList OPTIONAL,
+ uERadioCapability [7] UERadioCapability OPTIONAL,
+ rATFrequencySelectionPriority [8] RATFrequencySelectionPriority OPTIONAL,
+ uERadioCapabilityForPaging [9] UERadioCapabilityForPaging OPTIONAL,
+ iABAuthorizedIndicator [10] IABAuthorizedIndicator OPTIONAL,
+ nRV2XServicesAuthorization [11] NRV2XServicesAuthorization OPTIONAL,
+ lTEV2XServiceAuthorization [12] LTEV2XServiceAuthorization OPTIONAL,
+ rGLevelWirelineAccessCharacteristics [13] OCTET STRING OPTIONAL,
+ uERadioCapabilityID [14] OCTET STRING OPTIONAL,
+ targetNSSAIInfo [15] TargetNSSAIInfo OPTIONAL,
+ fiveGProSeAuthorizationIndication [16] FiveGProSeAuthorizationIndication OPTIONAL
+}
+
+PDUSessionSetupRequestItem ::= SEQUENCE
+{
+ pDUSessionID [1] PDUSessionID,
+ sNSSAI [2] SNSSAI
+}
+
+UERadioCapability ::= SEQUENCE
+{
+ uERadioCapibilityNR [1] OCTET STRING OPTIONAL,
+ uERadioCapabilityEUTRA [2] OCTET STRING OPTIONAL
+}
+
+UERadioCapabilityForPaging ::= SEQUENCE
+{
+ uERadioCapabilityForPagingOfNR [1] OCTET STRING OPTIONAL,
+ uERadioCapabilityForPagingOfEUTRA [2] OCTET STRING OPTIONAL,
+ uERadioCapabilityForPagingOfNBIoT [3] OCTET STRING OPTIONAL
+}
+
+NRV2XServicesAuthorization ::= SEQUENCE
+{
+ v2XVehicleUEAuthorizationIndicator [1] V2XUEAuthorizationIndicator OPTIONAL,
+ v2XPedestrianUEAuthorizationIndicator [2] V2XUEAuthorizationIndicator OPTIONAL
+}
+
+LTEV2XServiceAuthorization ::= SEQUENCE
+{
+ v2XVehicleUEAuthorizationIndicator [1] V2XUEAuthorizationIndicator OPTIONAL,
+ v2XPedestrianUEAuthorizationIndicator [2] V2XUEAuthorizationIndicator OPTIONAL
+}
+
+TargetNSSAIInfo ::= SEQUENCE
+{
+ targetSNSSAIList [1] NSSAI,
+ rATFrequencySelectionPriority [2] RATFrequencySelectionPriority
+}
+
+FiveGProSeAuthorizationIndication ::= SEQUENCE
+{
+ fiveGProSeDirectDiscovery [1] FiveGProSeAuthorizationIndicator OPTIONAL,
+ fiveGProSeDirectCommunication [2] FiveGProSeAuthorizationIndicator OPTIONAL,
+ fiveGProSeL2UEToNetworkRelay [3] FiveGProSeAuthorizationIndicator OPTIONAL,
+ fiveGProSeL3UEToNetworkRelay [4] FiveGProSeAuthorizationIndicator OPTIONAL,
+ fiveGProSeL2RemoteUE [5] FiveGProSeAuthorizationIndicator OPTIONAL
+}
+
+IABAuthorizedIndicator ::= ENUMERATED
+{
+ authorized(1),
+ notAuthorized(2)
+}
+
+V2XUEAuthorizationIndicator ::= ENUMERATED
+{
+ authorized(1),
+ notAuthorized(2)
+}
+
+FiveGProSeAuthorizationIndicator ::= ENUMERATED
+{
+ authorized(1),
+ notAuthorized(2)
+}
+
+MUSIMUERequestType ::= OCTET STRING (SIZE(1))
+
+RATFrequencySelectionPriority ::= INTEGER (1..256)
+
+FiveGMMCapability ::= OCTET STRING (SIZE(1..13))
+
-- ==================
-- 5G SMF definitions
-- ==================
@@ -961,25 +1829,33 @@ AMFSetID ::= INTEGER (0..1023)
-- See clause 6.2.3.2.2 for details of this structure
SMFPDUSessionEstablishment ::= SEQUENCE
{
- sUPI [1] SUPI OPTIONAL,
- sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
- pEI [3] PEI OPTIONAL,
- gPSI [4] GPSI OPTIONAL,
- pDUSessionID [5] PDUSessionID,
- gTPTunnelID [6] FTEID,
- pDUSessionType [7] PDUSessionType,
- sNSSAI [8] SNSSAI OPTIONAL,
- uEEndpoint [9] SEQUENCE OF UEEndpointAddress OPTIONAL,
- non3GPPAccessEndpoint [10] UEEndpointAddress OPTIONAL,
- location [11] Location OPTIONAL,
- dNN [12] DNN,
- aMFID [13] AMFID OPTIONAL,
- hSMFURI [14] HSMFURI OPTIONAL,
- requestType [15] FiveGSMRequestType,
- accessType [16] AccessType OPTIONAL,
- rATType [17] RATType OPTIONAL,
- sMPDUDNRequest [18] SMPDUDNRequest OPTIONAL,
- uEEPSPDNConnection [19] UEEPSPDNConnection OPTIONAL
+ sUPI [1] SUPI OPTIONAL,
+ sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ pDUSessionID [5] PDUSessionID,
+ gTPTunnelID [6] FTEID,
+ pDUSessionType [7] PDUSessionType,
+ sNSSAI [8] SNSSAI OPTIONAL,
+ uEEndpoint [9] SEQUENCE OF UEEndpointAddress OPTIONAL,
+ non3GPPAccessEndpoint [10] UEEndpointAddress OPTIONAL,
+ location [11] Location OPTIONAL,
+ dNN [12] DNN,
+ aMFID [13] AMFID OPTIONAL,
+ hSMFURI [14] HSMFURI OPTIONAL,
+ requestType [15] FiveGSMRequestType,
+ accessType [16] AccessType OPTIONAL,
+ rATType [17] RATType OPTIONAL,
+ sMPDUDNRequest [18] SMPDUDNRequest OPTIONAL,
+ uEEPSPDNConnection [19] UEEPSPDNConnection OPTIONAL,
+ ePS5GSComboInfo [20] EPS5GSComboInfo OPTIONAL,
+ selectedDNN [21] DNN OPTIONAL,
+ servingNetwork [22] SMFServingNetwork OPTIONAL,
+ oldPDUSessionID [23] PDUSessionID OPTIONAL,
+ handoverState [24] HandoverState OPTIONAL,
+ gTPTunnelInfo [25] GTPTunnelInfo OPTIONAL,
+ pCCRules [26] PCCRuleSet OPTIONAL,
+ ePSPDNConnectionEstablishment [27] EPSPDNConnectionEstablishment OPTIONAL
}
-- See clause 6.2.3.2.3 for details of this structure
@@ -995,7 +1871,16 @@ SMFPDUSessionModification ::= SEQUENCE
requestType [8] FiveGSMRequestType,
accessType [9] AccessType OPTIONAL,
rATType [10] RATType OPTIONAL,
- pDUSessionID [11] PDUSessionID OPTIONAL
+ pDUSessionID [11] PDUSessionID OPTIONAL,
+ ePS5GSComboInfo [12] EPS5GSComboInfo OPTIONAL,
+ uEEndpoint [13] UEEndpointAddress OPTIONAL,
+ servingNetwork [14] SMFServingNetwork OPTIONAL,
+ handoverState [15] HandoverState OPTIONAL,
+ gTPTunnelInfo [16] GTPTunnelInfo OPTIONAL,
+ pCCRules [17] PCCRuleSet OPTIONAL,
+ ePSPDNConnectionModification[18] EPSPDNConnectionModification OPTIONAL,
+ uPPathChange [19] UPPathChange OPTIONAL,
+ pFDDataForApp [20] PFDDataForApp OPTIONAL
}
-- See clause 6.2.3.2.4 for details of this structure
@@ -1010,31 +1895,43 @@ SMFPDUSessionRelease ::= SEQUENCE
uplinkVolume [7] INTEGER OPTIONAL,
downlinkVolume [8] INTEGER OPTIONAL,
location [9] Location OPTIONAL,
- cause [10] SMFErrorCodes OPTIONAL
+ cause [10] SMFErrorCodes OPTIONAL,
+ ePS5GSComboInfo [11] EPS5GSComboInfo OPTIONAL,
+ nGAPCause [12] NGAPCauseInt OPTIONAL,
+ fiveGMMCause [13] FiveGMMCause OPTIONAL,
+ pCCRuleIDs [14] PCCRuleIDSet OPTIONAL,
+ ePSPDNConnectionRelease [15] EPSPDNConnectionRelease OPTIONAL
}
-- See clause 6.2.3.2.5 for details of this structure
SMFStartOfInterceptionWithEstablishedPDUSession ::= SEQUENCE
{
- sUPI [1] SUPI OPTIONAL,
- sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
- pEI [3] PEI OPTIONAL,
- gPSI [4] GPSI OPTIONAL,
- pDUSessionID [5] PDUSessionID,
- gTPTunnelID [6] FTEID,
- pDUSessionType [7] PDUSessionType,
- sNSSAI [8] SNSSAI OPTIONAL,
- uEEndpoint [9] SEQUENCE OF UEEndpointAddress,
- non3GPPAccessEndpoint [10] UEEndpointAddress OPTIONAL,
- location [11] Location OPTIONAL,
- dNN [12] DNN,
- aMFID [13] AMFID OPTIONAL,
- hSMFURI [14] HSMFURI OPTIONAL,
- requestType [15] FiveGSMRequestType,
- accessType [16] AccessType OPTIONAL,
- rATType [17] RATType OPTIONAL,
- sMPDUDNRequest [18] SMPDUDNRequest OPTIONAL,
- timeOfSessionEstablishment [19] Timestamp OPTIONAL
+ sUPI [1] SUPI OPTIONAL,
+ sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ pDUSessionID [5] PDUSessionID,
+ gTPTunnelID [6] FTEID,
+ pDUSessionType [7] PDUSessionType,
+ sNSSAI [8] SNSSAI OPTIONAL,
+ uEEndpoint [9] SEQUENCE OF UEEndpointAddress,
+ non3GPPAccessEndpoint [10] UEEndpointAddress OPTIONAL,
+ location [11] Location OPTIONAL,
+ dNN [12] DNN,
+ aMFID [13] AMFID OPTIONAL,
+ hSMFURI [14] HSMFURI OPTIONAL,
+ requestType [15] FiveGSMRequestType,
+ accessType [16] AccessType OPTIONAL,
+ rATType [17] RATType OPTIONAL,
+ sMPDUDNRequest [18] SMPDUDNRequest OPTIONAL,
+ timeOfSessionEstablishment [19] Timestamp OPTIONAL,
+ ePS5GSComboInfo [20] EPS5GSComboInfo OPTIONAL,
+ uEEPSPDNConnection [21] UEEPSPDNConnection OPTIONAL,
+ servingNetwork [22] SMFServingNetwork OPTIONAL,
+ gTPTunnelInfo [23] GTPTunnelInfo OPTIONAL,
+ pCCRules [24] PCCRuleSet OPTIONAL,
+ ePSStartOfInterceptionWithEstablishedPDNConnection [25] EPSStartOfInterceptionWithEstablishedPDNConnection OPTIONAL,
+ pFDDataForApps [26] PFDDataForApps OPTIONAL
}
-- See clause 6.2.3.2.6 for details of this structure
@@ -1064,66 +1961,83 @@ SMFUnsuccessfulProcedure ::= SEQUENCE
-- See clause 6.2.3.2.8 for details of this structure
SMFPDUtoMAPDUSessionModification ::= SEQUENCE
{
- sUPI [1] SUPI OPTIONAL,
- sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
- pEI [3] PEI OPTIONAL,
- gPSI [4] GPSI OPTIONAL,
- sNSSAI [5] SNSSAI OPTIONAL,
- non3GPPAccessEndpoint [6] UEEndpointAddress OPTIONAL,
- location [7] Location OPTIONAL,
- requestType [8] FiveGSMRequestType,
- accessType [9] AccessType OPTIONAL,
- rATType [10] RATType OPTIONAL,
- pDUSessionID [11] PDUSessionID,
- requestIndication [12] RequestIndication,
- aTSSSContainer [13] ATSSSContainer
+ sUPI [1] SUPI OPTIONAL,
+ sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ sNSSAI [5] SNSSAI OPTIONAL,
+ non3GPPAccessEndpoint [6] UEEndpointAddress OPTIONAL,
+ location [7] Location OPTIONAL,
+ requestType [8] FiveGSMRequestType,
+ accessType [9] AccessType OPTIONAL,
+ rATType [10] RATType OPTIONAL,
+ pDUSessionID [11] PDUSessionID,
+ requestIndication [12] RequestIndication,
+ aTSSSContainer [13] ATSSSContainer,
+ uEEndpoint [14] UEEndpointAddress OPTIONAL,
+ servingNetwork [15] SMFServingNetwork OPTIONAL,
+ handoverState [16] HandoverState OPTIONAL,
+ gTPTunnelInfo [17] GTPTunnelInfo OPTIONAL,
+ ePSPDNConnectionModification [18] EPSPDNConnectionModification OPTIONAL
}
-- See clause 6.2.3.2.7.1 for details of this structure
SMFMAPDUSessionEstablishment ::= SEQUENCE
{
- sUPI [1] SUPI OPTIONAL,
- sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
- pEI [3] PEI OPTIONAL,
- gPSI [4] GPSI OPTIONAL,
- pDUSessionID [5] PDUSessionID,
- pDUSessionType [6] PDUSessionType,
- accessInfo [7] SEQUENCE OF AccessInfo,
- sNSSAI [8] SNSSAI OPTIONAL,
- uEEndpoint [9] SEQUENCE OF UEEndpointAddress OPTIONAL,
- location [10] Location OPTIONAL,
- dNN [11] DNN,
- aMFID [12] AMFID OPTIONAL,
- hSMFURI [13] HSMFURI OPTIONAL,
- requestType [14] FiveGSMRequestType,
- sMPDUDNRequest [15] SMPDUDNRequest OPTIONAL,
- servingNetwork [16] SMFServingNetwork,
- oldPDUSessionID [17] PDUSessionID OPTIONAL,
- mAUpgradeIndication [18] SMFMAUpgradeIndication OPTIONAL,
- ePSPDNCnxInfo [19] SMFEPSPDNCnxInfo OPTIONAL,
- mAAcceptedIndication [20] SMFMAAcceptedIndication,
- aTSSSContainer [21] ATSSSContainer OPTIONAL
+ sUPI [1] SUPI OPTIONAL,
+ sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ pDUSessionID [5] PDUSessionID,
+ pDUSessionType [6] PDUSessionType,
+ accessInfo [7] SEQUENCE OF AccessInfo,
+ sNSSAI [8] SNSSAI OPTIONAL,
+ uEEndpoint [9] SEQUENCE OF UEEndpointAddress OPTIONAL,
+ location [10] Location OPTIONAL,
+ dNN [11] DNN,
+ aMFID [12] AMFID OPTIONAL,
+ hSMFURI [13] HSMFURI OPTIONAL,
+ requestType [14] FiveGSMRequestType,
+ sMPDUDNRequest [15] SMPDUDNRequest OPTIONAL,
+ servingNetwork [16] SMFServingNetwork,
+ oldPDUSessionID [17] PDUSessionID OPTIONAL,
+ mAUpgradeIndication [18] SMFMAUpgradeIndication OPTIONAL,
+ ePSPDNCnxInfo [19] SMFEPSPDNCnxInfo OPTIONAL,
+ mAAcceptedIndication [20] SMFMAAcceptedIndication,
+ aTSSSContainer [21] ATSSSContainer OPTIONAL,
+ uEEPSPDNConnection [22] UEEPSPDNConnection OPTIONAL,
+ ePS5GSComboInfo [23] EPS5GSComboInfo OPTIONAL,
+ selectedDNN [24] DNN OPTIONAL,
+ handoverState [25] HandoverState OPTIONAL,
+ pCCRules [26] PCCRuleSet OPTIONAL,
+ ePSPDNConnectionEstablishment [27] EPSPDNConnectionEstablishment OPTIONAL
}
-- See clause 6.2.3.2.7.2 for details of this structure
SMFMAPDUSessionModification ::= SEQUENCE
{
- sUPI [1] SUPI OPTIONAL,
- sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
- pEI [3] PEI OPTIONAL,
- gPSI [4] GPSI OPTIONAL,
- pDUSessionID [5] PDUSessionID,
- accessInfo [6] SEQUENCE OF AccessInfo OPTIONAL,
- sNSSAI [7] SNSSAI OPTIONAL,
- location [8] Location OPTIONAL,
- requestType [9] FiveGSMRequestType OPTIONAL,
- servingNetwork [10] SMFServingNetwork,
- oldPDUSessionID [11] PDUSessionID OPTIONAL,
- mAUpgradeIndication [12] SMFMAUpgradeIndication OPTIONAL,
- ePSPDNCnxInfo [13] SMFEPSPDNCnxInfo OPTIONAL,
- mAAcceptedIndication [14] SMFMAAcceptedIndication,
- aTSSSContainer [15] ATSSSContainer OPTIONAL
-
+ sUPI [1] SUPI OPTIONAL,
+ sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ pDUSessionID [5] PDUSessionID,
+ accessInfo [6] SEQUENCE OF AccessInfo OPTIONAL,
+ sNSSAI [7] SNSSAI OPTIONAL,
+ location [8] Location OPTIONAL,
+ requestType [9] FiveGSMRequestType OPTIONAL,
+ servingNetwork [10] SMFServingNetwork,
+ oldPDUSessionID [11] PDUSessionID OPTIONAL,
+ mAUpgradeIndication [12] SMFMAUpgradeIndication OPTIONAL,
+ ePSPDNCnxInfo [13] SMFEPSPDNCnxInfo OPTIONAL,
+ mAAcceptedIndication [14] SMFMAAcceptedIndication,
+ aTSSSContainer [15] ATSSSContainer OPTIONAL,
+ uEEPSPDNConnection [16] UEEPSPDNConnection OPTIONAL,
+ ePS5GSComboInfo [17] EPS5GSComboInfo OPTIONAL,
+ handoverState [18] HandoverState OPTIONAL,
+ pCCRules [19] PCCRuleSet OPTIONAL,
+ uPPathChange [20] UPPathChange OPTIONAL,
+ pFDDataForApp [21] PFDDataForApp OPTIONAL,
+ ePSPDNConnectionModification [22] EPSPDNConnectionModification OPTIONAL
}
-- See clause 6.2.3.2.7.3 for details of this structure
@@ -1138,33 +2052,42 @@ SMFMAPDUSessionRelease ::= SEQUENCE
uplinkVolume [7] INTEGER OPTIONAL,
downlinkVolume [8] INTEGER OPTIONAL,
location [9] Location OPTIONAL,
- cause [10] SMFErrorCodes OPTIONAL
+ cause [10] SMFErrorCodes OPTIONAL,
+ nGAPCause [11] NGAPCauseInt OPTIONAL,
+ fiveGMMCause [12] FiveGMMCause OPTIONAL,
+ pCCRuleIDs [13] PCCRuleIDSet OPTIONAL,
+ ePSPDNConnectionRelease [14] EPSPDNConnectionRelease OPTIONAL
}
-- See clause 6.2.3.2.7.4 for details of this structure
SMFStartOfInterceptionWithEstablishedMAPDUSession ::= SEQUENCE
{
- sUPI [1] SUPI OPTIONAL,
- sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
- pEI [3] PEI OPTIONAL,
- gPSI [4] GPSI OPTIONAL,
- pDUSessionID [5] PDUSessionID,
- pDUSessionType [6] PDUSessionType,
- accessInfo [7] SEQUENCE OF AccessInfo,
- sNSSAI [8] SNSSAI OPTIONAL,
- uEEndpoint [9] SEQUENCE OF UEEndpointAddress OPTIONAL,
- location [10] Location OPTIONAL,
- dNN [11] DNN,
- aMFID [12] AMFID OPTIONAL,
- hSMFURI [13] HSMFURI OPTIONAL,
- requestType [14] FiveGSMRequestType OPTIONAL,
- sMPDUDNRequest [15] SMPDUDNRequest OPTIONAL,
- servingNetwork [16] SMFServingNetwork,
- oldPDUSessionID [17] PDUSessionID OPTIONAL,
- mAUpgradeIndication [18] SMFMAUpgradeIndication OPTIONAL,
- ePSPDNCnxInfo [19] SMFEPSPDNCnxInfo OPTIONAL,
- mAAcceptedIndication [20] SMFMAAcceptedIndication,
- aTSSSContainer [21] ATSSSContainer OPTIONAL
+ sUPI [1] SUPI OPTIONAL,
+ sUPIUnauthenticated [2] SUPIUnauthenticatedIndication OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ pDUSessionID [5] PDUSessionID,
+ pDUSessionType [6] PDUSessionType,
+ accessInfo [7] SEQUENCE OF AccessInfo,
+ sNSSAI [8] SNSSAI OPTIONAL,
+ uEEndpoint [9] SEQUENCE OF UEEndpointAddress OPTIONAL,
+ location [10] Location OPTIONAL,
+ dNN [11] DNN,
+ aMFID [12] AMFID OPTIONAL,
+ hSMFURI [13] HSMFURI OPTIONAL,
+ requestType [14] FiveGSMRequestType OPTIONAL,
+ sMPDUDNRequest [15] SMPDUDNRequest OPTIONAL,
+ servingNetwork [16] SMFServingNetwork,
+ oldPDUSessionID [17] PDUSessionID OPTIONAL,
+ mAUpgradeIndication [18] SMFMAUpgradeIndication OPTIONAL,
+ ePSPDNCnxInfo [19] SMFEPSPDNCnxInfo OPTIONAL,
+ mAAcceptedIndication [20] SMFMAAcceptedIndication,
+ aTSSSContainer [21] ATSSSContainer OPTIONAL,
+ ePS5GSComboInfo [22] EPS5GSComboInfo OPTIONAL,
+ uEEPSPDNConnection [23] UEEPSPDNConnection OPTIONAL,
+ pCCRules [24] PCCRuleSet OPTIONAL,
+ pFDDataForApps [25] PFDDataForApps OPTIONAL,
+ ePSStartOfInterceptionWithEstablishedPDNConnection [26] EPSStartOfInterceptionWithEstablishedPDNConnection OPTIONAL
}
-- See clause 6.2.3.2.7.5 for details of this structure
@@ -1216,18 +2139,56 @@ AccessInfo ::= SEQUENCE
gTPTunnelID [3] FTEID,
non3GPPAccessEndpoint [4] UEEndpointAddress OPTIONAL,
establishmentStatus [5] EstablishmentStatus,
- aNTypeToReactivate [6] AccessType OPTIONAL
+ aNTypeToReactivate [6] AccessType OPTIONAL,
+ gTPTunnelInfo [7] GTPTunnelInfo OPTIONAL
}
-- see Clause 6.1.2 of TS 24.193[44] for the details of the ATSSS container contents.
ATSSSContainer ::= OCTET STRING
+DLRANTunnelInformation ::= SEQUENCE
+{
+ dLQOSFlowTunnelInformation [1] QOSFlowTunnelInformation OPTIONAL,
+ additionalDLQOSFlowTunnelInformation [2] QOSFlowTunnelInformationList OPTIONAL,
+ redundantDLQOSFlowTunnelInformation [3] QOSFlowTunnelInformationList OPTIONAL,
+ additionalredundantDLQOSFlowTunnelInformation [4] QOSFlowTunnelInformationList OPTIONAL
+}
+
EstablishmentStatus ::= ENUMERATED
{
established(0),
released(1)
}
+FiveGSGTPTunnels ::= SEQUENCE
+{
+ uLNGUUPTunnelInformation [1] FTEID OPTIONAL,
+ additionalULNGUUPTunnelInformation [2] FTEIDList OPTIONAL,
+ dLRANTunnelInformation [3] DLRANTunnelInformation OPTIONAL
+}
+
+FiveQI ::= INTEGER (0..255)
+
+HandoverState ::= ENUMERATED
+{
+ none(1),
+ preparing(2),
+ prepared(3),
+ completed(4),
+ cancelled(5)
+}
+
+NGAPCauseInt ::= SEQUENCE
+{
+ group [1] NGAPCauseGroupInt,
+ value [2] NGAPCauseValueInt
+}
+
+-- Derived as described in TS 29.571 [17] clause 5.4.4.12
+NGAPCauseGroupInt ::= INTEGER
+
+NGAPCauseValueInt ::= INTEGER
+
SMFMAUpgradeIndication ::= BOOLEAN
-- Given in YAML encoding as defined in clause 6.1.6.2.31 of TS 29.502[16]
@@ -1254,6 +2215,543 @@ RequestIndication ::= ENUMERATED
rELDUETO5GANREQUEST(7)
}
+QOSFlowTunnelInformation ::= SEQUENCE
+{
+ uPTunnelInformation [1] FTEID,
+ associatedQOSFlowList [2] QOSFlowLists
+}
+
+QOSFlowTunnelInformationList ::= SEQUENCE OF QOSFlowTunnelInformation
+
+QOSFlowDescription ::= OCTET STRING
+
+QOSFlowLists ::= SEQUENCE OF QOSFlowList
+
+QOSFlowList ::= SEQUENCE
+{
+ qFI [1] QFI,
+ qOSRules [2] QOSRules OPTIONAL,
+ eBI [3] EPSBearerID OPTIONAL,
+ qOSFlowDescription [4] QOSFlowDescription OPTIONAL,
+ qOSFlowProfile [5] QOSFlowProfile OPTIONAL,
+ associatedANType [6] AccessType OPTIONAL,
+ defaultQOSRuleIndication [7] BOOLEAN OPTIONAL
+}
+
+QOSFlowProfile ::= SEQUENCE
+{
+ fiveQI [1] FiveQI
+}
+
+QOSRules ::= OCTET STRING
+
+-- See clauses 5.6.2.6-1 and 5.6.2.9-1 of TS 29.512 [89], clause table 5.6.2.5-1 of TS 29.508 [90] for the details of this structure
+PCCRule ::= SEQUENCE
+{
+ pCCRuleID [1] PCCRuleID OPTIONAL,
+ appId [2] UTF8String OPTIONAL,
+ flowInfos [3] FlowInformationSet OPTIONAL,
+ appReloc [4] BOOLEAN OPTIONAL,
+ simConnInd [5] BOOLEAN OPTIONAL,
+ simConnTerm [6] INTEGER OPTIONAL,
+ maxAllowedUpLat [7] INTEGER OPTIONAL,
+ trafficRoutes [8] RouteToLocationSet,
+ trafficSteeringPolIdDl [9] UTF8String OPTIONAL,
+ trafficSteeringPolIdUl [10] UTF8String OPTIONAL,
+ sourceDNAI [11] DNAI OPTIONAL,
+ targetDNAI [12] DNAI OPTIONAL,
+ dNAIChangeType [13] DNAIChangeType OPTIONAL,
+ sourceUEIPAddr [14] IPAddress OPTIONAL,
+ targetUEIPAddr [15] IPAddress OPTIONAL,
+ sourceTrafficRouting [16] RouteToLocation OPTIONAL,
+ targetTrafficRouting [17] RouteToLocation OPTIONAL,
+ eASIPReplaceInfos [18] EASIPReplaceInfos OPTIONAL
+}
+
+-- See clause table 5.6.2.5-1 of TS 29.508 [90] for the details of this structure.
+UPPathChange ::= SEQUENCE
+{
+ sourceDNAI [1] DNAI OPTIONAL,
+ targetDNAI [2] DNAI OPTIONAL,
+ dNAIChangeType [3] DNAIChangeType OPTIONAL,
+ sourceUEIPAddr [4] IPAddress OPTIONAL,
+ targetUEIPAddr [5] IPAddress OPTIONAL,
+ sourceTrafficRouting [6] RouteToLocation OPTIONAL,
+ targetTrafficRouting [7] RouteToLocation OPTIONAL,
+ mACAddress [8] MACAddress OPTIONAL
+}
+
+-- See table 5.6.2.14-1 of TS 29.512 [89]
+PCCRuleID ::= UTF8String
+
+PCCRuleSet ::= SET OF PCCRule
+
+PCCRuleIDSet ::= SET OF PCCRuleID
+
+FlowInformationSet ::= SET OF FlowInformation
+
+RouteToLocationSet ::= SET OF RouteToLocation
+
+-- See table 5.6.2.14 of TS 29.512 [89]
+FlowInformation ::= SEQUENCE
+{
+ flowDescription [1] FlowDescription OPTIONAL,
+ ethFlowDescription [2] EthFlowDescription OPTIONAL,
+ tosTrafficClass [3] OCTET STRING (SIZE(2)) OPTIONAL,
+ spi [4] OCTET STRING (SIZE(4)) OPTIONAL,
+ flowLabel [5] OCTET STRING (SIZE(3)) OPTIONAL,
+ flowDirection [6] FlowDirection OPTIONAL
+}
+
+-- See table 5.6.2.14 of TS 29.512 [89]
+FlowDescription ::= SEQUENCE
+{
+ sourceIPAddress [1] IPAddressOrRangeOrAny,
+ destinationIPAddress [2] IPAddressOrRangeOrAny,
+ sourcePortNumber [3] PortNumber OPTIONAL,
+ destinationPortNumber [4] PortNumber OPTIONAL,
+ protocol [5] NextLayerProtocolOrAny
+}
+
+IPAddressOrRangeOrAny ::= CHOICE
+{
+ iPAddress [1] IPAddress,
+ ipAddressRange [2] IPMask,
+ anyIPAddress [3] AnyIPAddress
+}
+
+IPMask ::= SEQUENCE
+{
+ fromIPAddress [1] IPAddress,
+ toIPAddress [2] IPAddress
+}
+
+AnyIPAddress ::= ENUMERATED
+{
+ any(1)
+}
+
+NextLayerProtocolOrAny ::= CHOICE
+{
+ nextLayerProtocol [1] NextLayerProtocol,
+ anyNextLayerProtocol [2] AnyNextLayerProtocol
+}
+
+AnyNextLayerProtocol ::= ENUMERATED
+{
+ ip(1)
+}
+
+-- See table 5.6.2.17-1 of TS 29.514 [91]
+EthFlowDescription ::= SEQUENCE
+{
+ destMacAddress [1] MACAddress OPTIONAL,
+ ethType [2] OCTET STRING (SIZE(2)),
+ fDesc [3] FlowDescription OPTIONAL,
+ fDir [4] FDir OPTIONAL,
+ sourceMacAddress [5] MACAddress OPTIONAL,
+ vlanTags [6] SET OF VLANTag,
+ srcMacAddrEnd [7] MACAddress OPTIONAL,
+ destMacAddrEnd [8] MACAddress OPTIONAL
+}
+
+-- See table 5.6.2.17-1 of TS 29.514 [91]
+FDir ::= ENUMERATED
+{
+ downlink(1)
+}
+
+-- See table 5.6.2.17-1 of TS 29.514 [91]
+VLANTag ::= SEQUENCE
+{
+ priority [1] BIT STRING (SIZE(3)),
+ cFI [2] BIT STRING (SIZE(1)),
+ vLANID [3] BIT STRING (SIZE(12))
+}
+
+-- See table 5.6.2.14 of TS 29.512 [89]
+FlowDirection ::= ENUMERATED
+{
+ downlinkOnly(1),
+ uplinkOnly(2),
+ dowlinkAndUplink(3)
+}
+
+-- See table 5.4.2.1 of TS 29.571 [17]
+DNAIChangeType ::= ENUMERATED
+{
+ early(1),
+ earlyAndLate(2),
+ late(3)
+}
+
+-- See table 5.6.2.15 of TS 29.571 [17]
+RouteToLocation ::= SEQUENCE
+{
+ dNAI [1] DNAI,
+ routeInfo [2] RouteInfo
+}
+
+-- See table 5.4.2.1 of TS 29.571 [17]
+DNAI ::= UTF8String
+
+-- See table 5.4.4.16 of TS 29.571 [17]
+RouteInfo ::= SEQUENCE
+{
+ iPAddressTunnelEndpoint [1] IPAddress,
+ uDPPortNumberTunnelEndpoint [2] PortNumber
+}
+
+-- See clause 4.1.4.2 of TS 29.512 [89]
+EASIPReplaceInfos ::= SEQUENCE
+{
+ sourceEASAddress [1] EASServerAddress,
+ targetEASAddress [2] EASServerAddress
+}
+
+-- See clause 4.1.4.2 of TS 29.512 [89]
+EASServerAddress ::= SEQUENCE
+{
+ iPAddress [1] IPAddress,
+ port [2] PortNumber
+}
+
+-- ================================
+-- PGW-C + SMF PDNConnection Events
+-- ================================
+
+EPSPDNConnectionEstablishment ::= SEQUENCE
+{
+ ePSSubscriberIDs [1] EPSSubscriberIDs,
+ iMSIUnauthenticated [2] IMSIUnauthenticatedIndication OPTIONAL,
+ defaultBearerID [3] EPSBearerID,
+ gTPTunnelInfo [4] GTPTunnelInfo OPTIONAL,
+ pDNConnectionType [5] PDNConnectionType,
+ uEEndpoints [6] SEQUENCE OF UEEndpointAddress OPTIONAL,
+ non3GPPAccessEndpoint [7] UEEndpointAddress OPTIONAL,
+ location [8] Location OPTIONAL,
+ additionalLocation [9] Location OPTIONAL,
+ aPN [10] APN,
+ requestType [11] EPSPDNConnectionRequestType OPTIONAL,
+ accessType [12] AccessType OPTIONAL,
+ rATType [13] RATType OPTIONAL,
+ protocolConfigurationOptions [14] PDNProtocolConfigurationOptions OPTIONAL,
+ servingNetwork [15] SMFServingNetwork OPTIONAL,
+ sMPDUDNRequest [16] SMPDUDNRequest OPTIONAL,
+ bearerContextsCreated [17] SEQUENCE OF EPSBearerContextCreated,
+ bearerContextsMarkedForRemoval [18] SEQUENCE OF EPSBearerContextForRemoval OPTIONAL,
+ indicationFlags [19] PDNConnectionIndicationFlags OPTIONAL,
+ handoverIndication [20] PDNHandoverIndication OPTIONAL,
+ nBIFOMSupport [21] PDNNBIFOMSupport OPTIONAL,
+ fiveGSInterworkingInfo [22] FiveGSInterworkingInfo OPTIONAL,
+ cSRMFI [23] CSRMFI OPTIONAL,
+ restorationOfPDNConnectionsSupport [24] RestorationOfPDNConnectionsSupport OPTIONAL,
+ pGWChangeIndication [25] PGWChangeIndication OPTIONAL,
+ pGWRNSI [26] PGWRNSI OPTIONAL
+}
+
+EPSPDNConnectionModification ::= SEQUENCE
+{
+ ePSSubscriberIDs [1] EPSSubscriberIDs,
+ iMSIUnauthenticated [2] IMSIUnauthenticatedIndication OPTIONAL,
+ defaultBearerID [3] EPSBearerID,
+ gTPTunnelInfo [4] GTPTunnelInfo OPTIONAL,
+ pDNConnectionType [5] PDNConnectionType,
+ uEEndpoints [6] SEQUENCE OF UEEndpointAddress OPTIONAL,
+ non3GPPAccessEndpoint [7] UEEndpointAddress OPTIONAL,
+ location [8] Location OPTIONAL,
+ additionalLocation [9] Location OPTIONAL,
+ aPN [10] APN,
+ requestType [11] EPSPDNConnectionRequestType OPTIONAL,
+ accessType [12] AccessType OPTIONAL,
+ rATType [13] RATType OPTIONAL,
+ protocolConfigurationOptions [14] PDNProtocolConfigurationOptions OPTIONAL,
+ servingNetwork [15] SMFServingNetwork OPTIONAL,
+ sMPDUDNRequest [16] SMPDUDNRequest OPTIONAL,
+ bearerContextsCreated [17] SEQUENCE OF EPSBearerContextCreated OPTIONAL,
+ bearerContextsModified [18] SEQUENCE OF EPSBearerContextModified,
+ bearerContextsMarkedForRemoval [19] SEQUENCE OF EPSBearerContextForRemoval OPTIONAL,
+ bearersDeleted [20] SEQUENCE OF EPSBearersDeleted OPTIONAL,
+ indicationFlags [21] PDNConnectionIndicationFlags OPTIONAL,
+ handoverIndication [22] PDNHandoverIndication OPTIONAL,
+ nBIFOMSupport [23] PDNNBIFOMSupport OPTIONAL,
+ fiveGSInterworkingInfo [24] FiveGSInterworkingInfo OPTIONAL,
+ cSRMFI [25] CSRMFI OPTIONAL,
+ restorationOfPDNConnectionsSupport [26] RestorationOfPDNConnectionsSupport OPTIONAL,
+ pGWChangeIndication [27] PGWChangeIndication OPTIONAL,
+ pGWRNSI [28] PGWRNSI OPTIONAL
+}
+
+EPSPDNConnectionRelease ::= SEQUENCE
+{
+ ePSSubscriberIDs [1] EPSSubscriberIDs,
+ iMSIUnauthenticated [2] IMSIUnauthenticatedIndication OPTIONAL,
+ defaultBearerID [3] EPSBearerID,
+ location [4] Location OPTIONAL,
+ gTPTunnelInfo [5] GTPTunnelInfo OPTIONAL,
+ rANNASCause [6] EPSRANNASCause OPTIONAL,
+ pDNConnectionType [7] PDNConnectionType,
+ indicationFlags [8] PDNConnectionIndicationFlags OPTIONAL,
+ scopeIndication [9] EPSPDNConnectionReleaseScopeIndication OPTIONAL,
+ bearersDeleted [10] SEQUENCE OF EPSBearersDeleted OPTIONAL
+}
+
+EPSStartOfInterceptionWithEstablishedPDNConnection ::= SEQUENCE
+{
+ ePSSubscriberIDs [1] EPSSubscriberIDs,
+ iMSIUnauthenticated [2] IMSIUnauthenticatedIndication OPTIONAL,
+ defaultBearerID [3] EPSBearerID,
+ gTPTunnelInfo [4] GTPTunnelInfo OPTIONAL,
+ pDNConnectionType [5] PDNConnectionType,
+ uEEndpoints [6] SEQUENCE OF UEEndpointAddress OPTIONAL,
+ non3GPPAccessEndpoint [7] UEEndpointAddress OPTIONAL,
+ location [8] Location OPTIONAL,
+ additionalLocation [9] Location OPTIONAL,
+ aPN [10] APN,
+ requestType [11] EPSPDNConnectionRequestType OPTIONAL,
+ accessType [12] AccessType OPTIONAL,
+ rATType [13] RATType OPTIONAL,
+ protocolConfigurationOptions [14] PDNProtocolConfigurationOptions OPTIONAL,
+ servingNetwork [15] SMFServingNetwork OPTIONAL,
+ sMPDUDNRequest [16] SMPDUDNRequest OPTIONAL,
+ bearerContexts [17] SEQUENCE OF EPSBearerContext
+}
+
+PFDDataForApps ::= SET OF PFDDataForApp
+
+PFDDataForApp ::= SEQUENCE
+{
+ aPPId [1] UTF8String,
+ pFDs [2] PFDs
+}
+
+PFDs ::= SET OF PFD
+
+-- See clause 5.6.2.5 of TS 29.551 [96]
+PFD ::= SEQUENCE
+{
+ pFDId [1] UTF8String,
+ pFDFlowDescriptions [2] PFDFlowDescriptions,
+ urls [3] PFDURLs,
+ domainNames [4] DomainNames,
+ dnProtocol [5] DnProtocol
+}
+
+PFDURLs ::= SET OF UTF8String
+
+PFDFlowDescriptions ::= SET OF PFDFlowDescription
+
+DomainNames ::= SET OF UTF8String
+
+PFDFlowDescription ::= SEQUENCE
+{
+ nextLayerProtocol [1] NextLayerProtocol,
+ serverIPAddress [2] IPAddress,
+ serverPortNumber [3] PortNumber
+}
+
+-- See clause 5.14.2.2.4 of TS 29.122 [63]
+DnProtocol ::= ENUMERATED
+{
+ dnsQname(1),
+ tlsSni(2),
+ tlsSan(3),
+ tlsScn(4)
+}
+
+-- ======================
+-- PGW-C + SMF Parameters
+-- ======================
+
+CSRMFI ::= BOOLEAN
+
+EPS5GSComboInfo ::= SEQUENCE
+{
+ ePSInterworkingIndication [1] EPSInterworkingIndication,
+ ePSSubscriberIDs [2] EPSSubscriberIDs,
+ ePSPDNCnxInfo [3] EPSPDNCnxInfo OPTIONAL,
+ ePSBearerInfo [4] EPSBearerInfo OPTIONAL
+}
+
+EPSInterworkingIndication ::= ENUMERATED
+{
+ none(1),
+ withN26(2),
+ withoutN26(3),
+ iwkNon3GPP(4)
+}
+
+EPSSubscriberIDs ::= SEQUENCE
+{
+ iMSI [1] IMSI OPTIONAL,
+ mSISDN [2] MSISDN OPTIONAL,
+ iMEI [3] IMEI OPTIONAL
+}
+
+EPSPDNCnxInfo ::= SEQUENCE
+{
+ pGWS8ControlPlaneFTEID [1] FTEID,
+ linkedBearerID [2] EPSBearerID OPTIONAL
+}
+
+EPSBearerInfo ::= SEQUENCE OF EPSBearers
+
+EPSBearers ::= SEQUENCE
+{
+ ePSBearerID [1] EPSBearerID,
+ pGWS8UserPlaneFTEID [2] FTEID,
+ qCI [3] QCI
+}
+
+EPSBearerContext ::= SEQUENCE
+{
+ ePSBearerID [1] EPSBearerID,
+ uPGTPTunnelInfo [2] GTPTunnelInfo,
+ bearerQOS [3] EPSBearerQOS
+}
+
+EPSBearerContextCreated ::= SEQUENCE
+{
+ ePSBearerID [1] EPSBearerID,
+ cause [2] EPSBearerCreationCauseValue,
+ gTPTunnelInfo [3] GTPTunnelInfo OPTIONAL,
+ bearerQOS [4] EPSBearerQOS OPTIONAL,
+ protocolConfigurationOptions [5] PDNProtocolConfigurationOptions OPTIONAL
+}
+
+EPSBearerContextModified ::= SEQUENCE
+{
+ ePSBearerID [1] EPSBearerID,
+ cause [2] EPSBearerModificationCauseValue,
+ gTPTunnelInfo [3] GTPTunnelInfo OPTIONAL,
+ bearerQOS [4] EPSBearerQOS OPTIONAL,
+ protocolConfigurationOptions [5] PDNProtocolConfigurationOptions OPTIONAL,
+ linkedBearerIDs [6] SEQUENCE OF EPSBearerID OPTIONAL
+}
+
+EPSBearersDeleted ::= SEQUENCE
+{
+ linkedEPSBearerID [1] EPSBearerID OPTIONAL,
+ ePSBearerIDs [2] SEQUENCE OF EPSBearerID OPTIONAL,
+ protocolConfigurationOptions [3] PDNProtocolConfigurationOptions OPTIONAL,
+ cause [4] EPSBearerDeletionCauseValue OPTIONAL,
+ deleteBearerResponse [5] EPSDeleteBearerResponse
+}
+
+EPSDeleteBearerResponse ::= SEQUENCE
+{
+ cause [1] EPSBearerDeletionCauseValue,
+ linkedEPSBearerID [2] EPSBearerID OPTIONAL,
+ bearerContexts [3] SEQUENCE OF EPSDeleteBearerContext OPTIONAL,
+ protocolConfigurationOptions [4] PDNProtocolConfigurationOptions OPTIONAL
+}
+
+EPSDeleteBearerContext ::= SEQUENCE
+{
+ cause [1] EPSBearerDeletionCauseValue,
+ ePSBearerID [2] EPSBearerID,
+ protocolConfigurationOptions [3] PDNProtocolConfigurationOptions OPTIONAL,
+ rANNASCause [4] EPSRANNASCause OPTIONAL
+}
+
+EPSBearerContextForRemoval ::= SEQUENCE
+{
+ ePSBearerID [1] EPSBearerID,
+ cause [2] EPSBearerRemovalCauseValue
+}
+
+EPSBearerCreationCauseValue ::= INTEGER (0..255)
+
+EPSBearerDeletionCauseValue ::= INTEGER (0..255)
+
+EPSBearerModificationCauseValue ::= INTEGER (0..255)
+
+EPSBearerRemovalCauseValue ::= INTEGER (0..255)
+
+EPSBearerQOS ::= SEQUENCE
+{
+ qCI [1] QCI OPTIONAL,
+ maximumUplinkBitRate [2] BitrateBinKBPS OPTIONAL,
+ maximumDownlinkBitRate [3] BitrateBinKBPS OPTIONAL,
+ guaranteedUplinkBitRate [4] BitrateBinKBPS OPTIONAL,
+ guaranteedDownlinkBitRate [5] BitrateBinKBPS OPTIONAL,
+ priorityLevel [6] EPSQOSPriority OPTIONAL
+}
+
+EPSRANNASCause ::= OCTET STRING
+
+EPSQOSPriority ::= INTEGER (1..15)
+
+BitrateBinKBPS ::= OCTET STRING
+
+EPSGTPTunnels ::= SEQUENCE
+{
+ controlPlaneSenderFTEID [1] FTEID OPTIONAL,
+ controlPlanePGWS5S8FTEID [2] FTEID OPTIONAL,
+ s1UeNodeBFTEID [3] FTEID OPTIONAL,
+ s5S8SGWFTEID [4] FTEID OPTIONAL,
+ s5S8PGWFTEID [5] FTEID OPTIONAL,
+ s2bUePDGFTEID [6] FTEID OPTIONAL,
+ s2aUePDGFTEID [7] FTEID OPTIONAL
+}
+
+EPSPDNConnectionRequestType ::= ENUMERATED
+{
+ initialRequest(1),
+ handover(2),
+ rLOS(3),
+ emergency(4),
+ handoverOfEmergencyBearerServices(5),
+ reserved(6)
+}
+
+EPSPDNConnectionReleaseScopeIndication ::= BOOLEAN
+
+FiveGSInterworkingInfo ::= SEQUENCE
+{
+ fiveGSInterworkingIndicator [1] FiveGSInterworkingIndicator,
+ fiveGSInterworkingWithoutN26 [2] FiveGSInterworkingWithoutN26,
+ fiveGCNotRestrictedSupport [3] FiveGCNotRestrictedSupport
+}
+
+FiveGSInterworkingIndicator ::= BOOLEAN
+
+FiveGSInterworkingWithoutN26 ::= BOOLEAN
+
+FiveGCNotRestrictedSupport ::= BOOLEAN
+
+PDNConnectionIndicationFlags ::= OCTET STRING
+
+PDNHandoverIndication ::= BOOLEAN
+
+PDNNBIFOMSupport ::= BOOLEAN
+
+PDNProtocolConfigurationOptions ::= SEQUENCE
+{
+ requestPCO [1] PDNPCO OPTIONAL,
+ requestAPCO [2] PDNPCO OPTIONAL,
+ requestEPCO [3] PDNPCO OPTIONAL,
+ responsePCO [4] PDNPCO OPTIONAL,
+ responseAPCO [5] PDNPCO OPTIONAL,
+ responseEPCO [6] PDNPCO OPTIONAL
+}
+
+PDNPCO ::= OCTET STRING
+
+PGWChangeIndication ::= BOOLEAN
+
+PGWRNSI ::= BOOLEAN
+
+QCI ::= INTEGER (0..255)
+
+GTPTunnelInfo ::= SEQUENCE
+{
+ fiveGSGTPTunnels [1] FiveGSGTPTunnels OPTIONAL,
+ ePSGTPTunnels [2] EPSGTPTunnels OPTIONAL
+}
+
+RestorationOfPDNConnectionsSupport ::= BOOLEAN
+
-- ==================
-- 5G UPF definitions
-- ==================
@@ -1293,7 +2791,8 @@ UDMServingSystemMessage ::= SEQUENCE
gUMMEI [5] GUMMEI OPTIONAL,
pLMNID [6] PLMNID OPTIONAL,
servingSystemMethod [7] UDMServingSystemMethod,
- serviceID [8] ServiceID OPTIONAL
+ serviceID [8] ServiceID OPTIONAL,
+ roamingIndicator [9] RoamingIndicator OPTIONAL
}
UDMSubscriberRecordChangeMessage ::= SEQUENCE
@@ -1316,9 +2815,63 @@ UDMCancelLocationMessage ::= SEQUENCE
gPSI [3] GPSI OPTIONAL,
gUAMI [4] GUAMI OPTIONAL,
pLMNID [5] PLMNID OPTIONAL,
- cancelLocationMethod [6] UDMCancelLocationMethod
+ cancelLocationMethod [6] UDMCancelLocationMethod,
+ aMFDeregistrationInfo [7] UDMAMFDeregistrationInfo OPTIONAL,
+ deregistrationData [8] UDMDeregistrationData OPTIONAL
+}
+
+UDMLocationInformationResult ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ pEI [2] PEI OPTIONAL,
+ gPSI [3] GPSI OPTIONAL,
+ locationInfoRequest [4] UDMLocationInfoRequest,
+ vPLMNID [5] PLMNID OPTIONAL,
+ currentLocationIndicator [6] BOOLEAN OPTIONAL,
+ aMFInstanceID [7] NFID OPTIONAL,
+ sMSFInstanceID [8] NFID OPTIONAL,
+ location [9] Location OPTIONAL,
+ rATType [10] RATType OPTIONAL,
+ problemDetails [11] UDMProblemDetails OPTIONAL
}
+UDMUEInformationResponse ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ tADSInfo [2] UEContextInfo OPTIONAL,
+ fiveGSUserStateInfo [3] FiveGSUserStateInfo OPTIONAL,
+ fiveGSRVCCInfo [4] FiveGSRVCCInfo OPTIONAL,
+ problemDetails [5] UDMProblemDetails OPTIONAL
+}
+
+UDMUEAuthenticationResponse ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ authenticationInfoRequest [2] UDMAuthenticationInfoRequest,
+ aKMAIndicator [3] BOOLEAN OPTIONAL,
+ problemDetails [4] UDMProblemDetails OPTIONAL,
+ authAAA [5] BOOLEAN OPTIONAL,
+ pvsInfo [6] ServerAddressingInfoList OPTIONAL
+}
+
+UDMStartOfInterceptionWithRegisteredTarget ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ gPSI [2] GPSI OPTIONAL,
+ uDMSubscriptionDataSets [3] SBIType
+}
+
+ServerAddressingInfoList ::= SEQUENCE (SIZE(1..MAX)) OF ServerAddressingInfo
+
+ServerAddressingInfo ::= SEQUENCE
+{
+ iPv4Address [1] IPv4Address OPTIONAL,
+ iPv6Address [2] IPv6Address OPTIONAL,
+ fQDNList [3] FQDNList OPTIONAL
+}
+
+FQDNList ::= SEQUENCE (SIZE(1..MAX)) OF FQDN
+
-- =================
-- 5G UDM parameters
-- =================
@@ -1356,6 +2909,100 @@ ServiceID ::= SEQUENCE
CAGID ::= UTF8String
+UDMAuthenticationInfoRequest ::= SEQUENCE
+{
+ infoRequestType [1] UDMInfoRequestType,
+ rGAuthCtx [2] SEQUENCE SIZE(1..MAX) OF SubscriberIdentifier,
+ authType [3] PrimaryAuthenticationType,
+ servingNetworkName [4] PLMNID,
+ aUSFInstanceID [5] NFID OPTIONAL,
+ cellCAGInfo [6] CAGID OPTIONAL,
+ n5GCIndicator [7] BOOLEAN OPTIONAL
+}
+
+UDMLocationInfoRequest ::= SEQUENCE
+{
+ requested5GSLocation [1] BOOLEAN OPTIONAL,
+ requestedCurrentLocation [2] BOOLEAN OPTIONAL,
+ requestedRATType [3] BOOLEAN OPTIONAL,
+ requestedTimeZone [4] BOOLEAN OPTIONAL,
+ requestedServingNode [5] BOOLEAN OPTIONAL
+}
+
+UDMProblemDetails ::= SEQUENCE
+{
+ cause [1] UDMProblemDetailsCause OPTIONAL
+}
+
+UDMProblemDetailsCause ::= CHOICE
+{
+ uDMDefinedCause [1] UDMDefinedCause,
+ otherCause [2] UDMProblemDetailsOtherCause
+}
+
+UDMDefinedCause ::= ENUMERATED
+{
+ userNotFound(1),
+ dataNotFound(2),
+ contextNotFound(3),
+ subscriptionNotFound(4),
+ other(5)
+}
+
+UDMInfoRequestType ::= ENUMERATED
+{
+ hSS(1),
+ aUSF(2),
+ other(3)
+}
+
+UDMProblemDetailsOtherCause ::= SEQUENCE
+{
+ problemDetailsType [1] UTF8String OPTIONAL,
+ title [2] UTF8String OPTIONAL,
+ status [3] INTEGER OPTIONAL,
+ detail [4] UTF8String OPTIONAL,
+ instance [5] UTF8String OPTIONAL,
+ cause [6] UTF8String OPTIONAL,
+ uDMInvalidParameters [7] UDMInvalidParameters,
+ uDMSupportedFeatures [8] UTF8String
+}
+
+UDMInvalidParameters ::= SEQUENCE
+{
+ parameter [1] UTF8String OPTIONAL,
+ reason [2] UTF8String OPTIONAL
+}
+
+RoamingIndicator ::= BOOLEAN
+
+UDMAMFDeregistrationInfo ::= SEQUENCE
+{
+ gUAMI [1] GUAMI,
+ purgeFlag [2] BOOLEAN
+}
+
+UDMDeregistrationData ::= SEQUENCE
+{
+ deregReason [1] UDMDeregReason OPTIONAL,
+ accessType [2] AccessType OPTIONAL,
+ pDUSessionID [3] PDUSessionID OPTIONAL
+}
+
+UDMDeregReason ::= ENUMERATED
+{
+ uEInitialRegistration(1),
+ uERegistrationAreaChange(2),
+ subscriptionWithdrawn(3),
+ fiveGSToEPSMobility(4),
+ fiveGSToEPSMobilityUeInitialRegistration(5),
+ reregistrationRequired(6),
+ sMFContextTransferred(7),
+ duplicatePDUSession(8),
+ fiveGSRVCCToUTRANMobility(9),
+ pDUSessionReactivationRequired(10),
+ disasterConditionTerminated(11)
+}
-- ===================
-- 5G SMSF definitions
-- ===================
@@ -2262,6 +3909,11 @@ PTCAccessPolicy ::= SEQUENCE
pTCAccessPolicyFailure [7] PTCAccessPolicyFailure OPTIONAL
}
+-- =========
+-- PTC CCPDU
+-- =========
+
+PTCCCPDU ::= OCTET STRING
-- =================
-- 5G PTC parameters
@@ -2456,6 +4108,835 @@ PTCAccessPolicyFailure ::= ENUMERATED
requestUnsuccessful(1),
requestUnknown(2)
}
+-- ===============
+-- IMS definitions
+-- ===============
+
+-- See clause 7.12.4.2.1 for details of this structure
+IMSMessage ::= SEQUENCE
+{
+ payload [1] IMSPayload,
+ sessionDirection [2] SessionDirection,
+ voIPRoamingIndication [3] VoIPRoamingIndication OPTIONAL,
+ -- Tag [4] is not used.
+ -- Tag [5] is not used.
+ location [6] Location OPTIONAL,
+ accessNetworkInformation [7] SEQUENCE OF SIPAccessNetworkInformation OPTIONAL,
+ cellularNetworkInformation [8] SEQUENCE OF SIPCellularNetworkInformation OPTIONAL
+}
+-- See clause 7.12.4.2.2 for details of this structure
+StartOfInterceptionForActiveIMSSession ::= SEQUENCE
+{
+ originatingId [1] SEQUENCE OF IMPU,
+ terminatingId [2] IMPU,
+ sDPState [3] SEQUENCE OF OCTET STRING OPTIONAL,
+ diversionIdentity [4] IMPU OPTIONAL,
+ voIPRoamingIndication [5] VoIPRoamingIndication OPTIONAL,
+ -- Tag [6] is not used.
+ location [7] Location OPTIONAL,
+ accessNetworkInformation [8] SEQUENCE OF SIPAccessNetworkInformation OPTIONAL,
+ cellularNetworkInformation [9] SEQUENCE OF SIPCellularNetworkInformation OPTIONAL
+}
+
+-- See clause 7.12.4.2.3 for the details.
+IMSCCUnavailable ::= SEQUENCE
+{
+ cCUnavailableReason [1] UTF8String,
+ sDPState [2] OCTET STRING OPTIONAL
+}
+
+-- =========
+-- IMS CCPDU
+-- =========
+
+IMSCCPDU ::= SEQUENCE
+{
+ payload [1] IMSCCPDUPayload,
+ sDPInfo [2] OCTET STRING OPTIONAL
+}
+
+IMSCCPDUPayload ::= OCTET STRING
+
+-- ==============
+-- IMS parameters
+-- ==============
+
+IMSPayload ::= CHOICE
+{
+ encapsulatedSIPMessage [1] SIPMessage,
+ modifiedSIPMessage [2] ModifiedSIPMessage
+}
+
+ModifiedSIPMessage ::= SEQUENCE
+{
+ modifiedSIPContent [1] SIPMessage,
+ modifications [2] PayloadModifications
+}
+
+SIPMessage ::= SEQUENCE
+{
+ iPSourceAddress [1] IPAddress,
+ iPDestinationAddress [2] IPAddress,
+ sIPContent [3] OCTET STRING
+}
+
+VoIPRoamingIndication ::= ENUMERATED
+{
+ roamingLBO(1),
+ roamingS8HR(2),
+ roamingN9HR(3)
+}
+
+SessionDirection ::= ENUMERATED
+{
+ fromTarget(1),
+ toTarget(2),
+ combined(3),
+ indeterminate(4)
+}
+
+HeaderOnlyIndication ::= BOOLEAN
+
+-- =================================
+-- STIR/SHAKEN/RCD/eCNAM definitions
+-- =================================
+
+-- See clause 7.11.2.1.2 for details of this structure
+STIRSHAKENSignatureGeneration ::= SEQUENCE
+{
+ pASSporTs [1] SEQUENCE OF PASSporT,
+ encapsulatedSIPMessage [2] SIPMessage OPTIONAL
+}
+
+-- See clause 7.11.2.1.3 for details of this structure
+STIRSHAKENSignatureValidation ::= SEQUENCE
+{
+ pASSporTs [1] SEQUENCE OF PASSporT OPTIONAL,
+ rCDTerminalDisplayInfo [2] RCDDisplayInfo OPTIONAL,
+ eCNAMTerminalDisplayInfo [3] ECNAMDisplayInfo OPTIONAL,
+ sHAKENValidationResult [4] SHAKENValidationResult,
+ sHAKENFailureStatusCode [5] SHAKENFailureStatusCode OPTIONAL,
+ encapsulatedSIPMessage [6] SIPMessage OPTIONAL
+}
+
+-- ================================
+-- STIR/SHAKEN/RCD/eCNAM parameters
+-- ================================
+
+PASSporT ::= SEQUENCE
+{
+ pASSporTHeader [1] PASSporTHeader,
+ pASSporTPayload [2] PASSporTPayload,
+ pASSporTSignature [3] OCTET STRING
+}
+
+PASSporTHeader ::= SEQUENCE
+{
+ type [1] JWSTokenType,
+ algorithm [2] UTF8String,
+ ppt [3] UTF8String OPTIONAL,
+ x5u [4] UTF8String
+}
+
+JWSTokenType ::= ENUMERATED
+{
+ passport(1)
+}
+
+PASSporTPayload ::= SEQUENCE
+{
+ issuedAtTime [1] GeneralizedTime,
+ originator [2] STIRSHAKENOriginator,
+ destination [3] STIRSHAKENDestinations,
+ attestation [4] Attestation,
+ origId [5] UTF8String,
+ diversion [6] STIRSHAKENDestination
+}
+
+STIRSHAKENOriginator ::= CHOICE
+{
+ telephoneNumber [1] STIRSHAKENTN,
+ sTIRSHAKENURI [2] UTF8String
+}
+
+STIRSHAKENDestinations ::= SEQUENCE OF STIRSHAKENDestination
+
+STIRSHAKENDestination ::= CHOICE
+{
+ telephoneNumber [1] STIRSHAKENTN,
+ sTIRSHAKENURI [2] UTF8String
+}
+
+
+STIRSHAKENTN ::= CHOICE
+{
+ mSISDN [1] MSISDN
+}
+
+Attestation ::= ENUMERATED
+{
+ attestationA(1),
+ attestationB(2),
+ attestationC(3)
+}
+
+SHAKENValidationResult ::= ENUMERATED
+{
+ tNValidationPassed(1),
+ tNValidationFailed(2),
+ noTNValidation(3)
+}
+
+SHAKENFailureStatusCode ::= INTEGER
+
+ECNAMDisplayInfo ::= SEQUENCE
+{
+ name [1] UTF8String,
+ additionalInfo [2] OCTET STRING OPTIONAL
+}
+
+RCDDisplayInfo ::= SEQUENCE
+{
+ name [1] UTF8String,
+ jcd [2] OCTET STRING OPTIONAL,
+ jcl [3] OCTET STRING OPTIONAL
+}
+
+-- =================
+-- RCS Definitions
+-- =================
+
+-- See clause 7.13.3.2 for details of this structure
+RCSRegistration ::= SEQUENCE
+{
+ rCSTargetIdentities [1] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ rCSRegistrationType [2] RCSRegistrationType,
+ rCSRegistrationUpdateRequest [3] IMSPayload,
+ rCSRegistrationUpdateResponse [4] IMSPayload,
+ location [5] Location OPTIONAL
+}
+
+-- See clause 7.13.3.3 for details of this structure
+RCSMessage ::= SEQUENCE
+{
+ rCSTargetIdentities [1] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ groupChatSessionID [2] RCSGroupChatSessionID OPTIONAL,
+ originatingIdentity [3] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ destinationIdentities [4] RCSDestinations,
+ direction [5] Direction,
+ messageType [6] RCSMessageType,
+ conversationID [7] RCSConversationID,
+ contributionID [8] RCSContributionID,
+ inReplyToContributionID [9] RCSContributionID OPTIONAL,
+ messageID [10] IMDNMessageID OPTIONAL,
+ location [11] Location OPTIONAL,
+ messagePayload [12] RCSPayload
+}
+
+-- See clause 7.13.3.4.2.1 for details of this structure
+RCSSessionEstablishment ::= SEQUENCE
+{
+ rCSTargetIdentities [1] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ conversationID [2] RCSConversationID,
+ contributionID [3] RCSContributionID,
+ inReplyToContributionID [4] RCSContributionID OPTIONAL,
+ sessionReplaces [5] RCSContributionID OPTIONAL,
+ rCSSessionType [6] RCSSessionType,
+ sessionDirection [7] Direction,
+ rCSSessionMessage [8] RCSSIPSessionMessage,
+ location [9] Location OPTIONAL
+}
+
+-- See clause 7.13.3.4.3.1 for details of this structure
+RCSSessionModification ::= SEQUENCE
+{
+ rCSTargetIdentities [1] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ conversationID [2] RCSConversationID,
+ contributionID [3] RCSContributionID,
+ inReplyToContributionID [4] RCSContributionID OPTIONAL,
+ sessionReplaces [5] RCSContributionID OPTIONAL,
+ rCSSessionType [6] RCSSessionType,
+ sessionDirection [7] Direction,
+ sessionEndpoints [8] RCSSessionEndpoints,
+ rCSSIPSessionMessage [9] RCSSIPSessionMessage,
+ location [10] Location OPTIONAL
+}
+
+-- See clause 7.13.3.4.4.1 for details of this structure
+RCSSessionRelease ::= SEQUENCE
+{
+ rCSTargetIdentities [1] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ conversationID [2] RCSConversationID,
+ contributionID [3] RCSContributionID,
+ rCSSessionType [4] RCSSessionType,
+ sessionDirection [5] Direction,
+ rCSSIPSessionMessage [6] RCSSIPSessionMessage,
+ location [7] Location OPTIONAL
+}
+
+-- See clause 7.13.3.5 for details of this structure
+RCSCapabilityDiscovery ::= SEQUENCE
+{
+ rCSTargetIdentities [1] SEQUENCE SIZE (1..MAX) OF RCSIdentity,
+ rCSTargetContactIdentities [2] SEQUENCE SIZE (1..MAX) OF RCSIdentity OPTIONAL,
+ sIPMessage [3] IMSPayload,
+ direction [4] Direction,
+ location [5] Location OPTIONAL
+}
+
+
+-- ==============
+-- RCS Parameters
+-- ==============
+
+IMDNMessageID ::= UTF8String
+
+RCSConversationID ::= UUID
+
+RCSContributionID ::= UUID
+
+RCSDestinations ::= SEQUENCE SIZE (1..MAX) OF RCSDestination
+
+RCSDestination ::= SEQUENCE SIZE (1..MAX) OF RCSIdentity
+
+RCSGroupChatSessionID ::= SIPURI
+
+RCSIdentity ::= CHOICE
+{
+ fiveGSIdentities [1] FiveGSSubscriberIDs,
+ ePSIdentities [2] EPSSubscriberIDs,
+ iMSIdentities [3] IMSSubscriberIDs
+}
+
+RCSMessageType ::= ENUMERATED
+{
+ messageWithUserContent(1),
+ fileTransferMessage(2),
+ geoLocationPUSHMessage(3),
+ iMDNNotification(4)
+}
+
+RCSRegistrationType ::= ENUMERATED
+{
+ registration(1),
+ reRegistration(2),
+ uEDeregistration(3),
+ networkDeregistration(4)
+}
+
+RCSServerURI ::= UTF8String
+
+RCSSessionEndpoints ::= ENUMERATED
+{
+ remoteOnly(1),
+ locatlOnly(2),
+ localAndRemote(3)
+}
+
+RCSSessionLeg ::= ENUMERATED
+{
+ remoteLeg(1),
+ localLeg(2)
+}
+
+RCSSessionType ::= ENUMERATED
+{
+ largeMessageStandalone(1),
+ oneTo1Chat(2)
+}
+
+RCSSIPSessionMessage ::= SEQUENCE
+{
+ sessionLeg [1] RCSSessionLeg,
+ sIPMessage [2] IMSPayload,
+ rCSSessionResult [3] RCSSessionResult
+}
+
+RCSSessionResult ::= ENUMERATED
+{
+ newLegRequested(1),
+ newLegEstablished(2),
+ legModificationRequested(3),
+ legModificationComplete(4),
+ legRemovalRequest(5),
+ legRemovalComplete(6)
+}
+
+-- =================
+-- EES definitions
+-- =================
+
+-- See clause 7.14.2.2 for details of this structure
+EESEECRegistration ::= SEQUENCE
+{
+ registrationType [1] RegistrationType,
+ eECID [2] UTF8String,
+ gPSI [3] GPSI OPTIONAL,
+ aCProfiles [4] ACProfiles OPTIONAL,
+ eECServiceContSupport [5] ACRScenarios OPTIONAL,
+ expirationTime [6] Timestamp OPTIONAL,
+ eECContextID [7] UTF8String OPTIONAL,
+ srcEESID [8] UTF8String OPTIONAL,
+ unfulfilledACProfiles [9] UnfulfilledACProfiles OPTIONAL,
+ failureResponse [10] FailureResponse OPTIONAL
+}
+
+-- See clause 7.14.2.3 for details of this structure
+EESEASDiscovery ::= SEQUENCE
+{
+ eECID [1] UTF8String,
+ gPSI [2] GPSI OPTIONAL,
+ eASDiscoveryFilter [3] EASDiscoveryFilter OPTIONAL,
+ eECServiceContSupport [4] ACRScenarios OPTIONAL,
+ uELocation [5] Location OPTIONAL,
+ eASTargetDNAIs [6] DNAIs OPTIONAL,
+ discoveredEAS [7] DiscoveredEAS OPTIONAL,
+ failureResponse [8] FailureResponse OPTIONAL
+}
+
+-- See clause 7.14.2.4 for details of this structure
+EESEASDiscoverySubscription ::= SEQUENCE
+{
+ eECID [1] UTF8String,
+ gPSI [2] GPSI OPTIONAL,
+ subscriptionType [3] SubscriptionType,
+ eASEventType [4] EASEventType,
+ eASDiscoveryFilter [5] EASDiscoveryFilter OPTIONAL,
+ eASDynamicInfoFilter [6] EASDynamicInfoFilter OPTIONAL,
+ eECServiceContSupport [7] ACRScenarios OPTIONAL,
+ expirationTime [8] Timestamp OPTIONAL,
+ subscriptionId [9] UTF8String OPTIONAL,
+ failureResponse [10] FailureResponse OPTIONAL
+}
+
+-- See clause 7.14.2.5 for details of this structure
+EESEASDiscoveryNotification ::= SEQUENCE
+{
+ subscriptionID [1] UTF8String,
+ eventType [2] EASEventType,
+ discoveredEAS [3] DiscoveredEAS,
+ failureResponse [4] FailureResponse OPTIONAL
+}
+
+-- See clause 7.14.2.6 for details of this structure
+EESAppContextRelocation ::= SEQUENCE
+{
+ eECID [1] UTF8String,
+ gPSI [2] GPSI OPTIONAL,
+ eESACRDetOrInit [3] EESACRDetOrInit
+}
+
+EESACRDetOrInit ::= CHOICE
+{
+ aCRDetermineReq [1] ACRDetermineReq,
+ aCRInitiateReq [2] ACRInitiateReq
+}
+
+ACRDetermineReq ::= SEQUENCE
+{
+ eASID [1] EASID OPTIONAL,
+ aCID [2] ACID OPTIONAL,
+ sEASEndpoint [3] EASEndpoint
+}
+
+ACRInitiateReq ::= SEQUENCE
+{
+ eASID [1] EASID OPTIONAL,
+ aCID [2] ACID OPTIONAL,
+ tEASEndpoint [3] EASEndpoint,
+ sEASEndpoint [4] EASEndpoint OPTIONAL,
+ previousTEASEndpoint [5] EASEndpoint OPTIONAL,
+ routeReq [6] RouteToLocation OPTIONAL
+}
+
+-- See clause 7.14.2.7 for details of this structure
+EESACRSubscription ::= SEQUENCE
+{
+ eECID [1] UTF8String,
+ gPSI [2] GPSI OPTIONAL,
+ subscriptionType [3] SubscriptionType,
+ expirationTime [4] Timestamp OPTIONAL,
+ eASIDs [5] EASIDs,
+ aCIDs [6] ACIDs OPTIONAL,
+ eventIDs [7] ACREventIDs OPTIONAL,
+ subscriptionId [8] UTF8String OPTIONAL,
+ failureResponse [9] FailureResponse OPTIONAL
+}
+
+-- See clause 7.14.2.8 for details of this structure
+EESACRNotification ::= SEQUENCE
+{
+ subscriptionID [1] UTF8String,
+ eASID [2] EASID,
+ eventID [3] ACREventIDs,
+ targetInfo [4] TargetInfo OPTIONAL,
+ aCRRes [5] BOOLEAN OPTIONAL,
+ failReason [6] UTF8String OPTIONAL
+}
+
+-- See clause 7.14.2.9 for details of this structure
+EESEECContextRelocation ::= SEQUENCE
+{
+ eECID [1] UTF8String,
+ eECContextID [2] UTF8String,
+ gPSI [3] GPSI OPTIONAL,
+ uELoc [4] Location OPTIONAL,
+ aCProfiles [5] ACProfiles OPTIONAL
+}
+
+-- See clause 7.14.2.10 for details of this structure
+EESStartOfInterceptionWithRegisteredEEC ::= SEQUENCE
+{
+ eECID [1] UTF8String,
+ gPSI [2] GPSI OPTIONAL,
+ aCProfiles [3] ACProfiles OPTIONAL,
+ eECServiceContSupport [4] ACRScenarios OPTIONAL,
+ expirationTime [5] Timestamp OPTIONAL,
+ eECContextID [6] UTF8String OPTIONAL,
+ srcEESID [7] UTF8String OPTIONAL,
+ unfulfilledACProfiles [8] UnfulfilledACProfiles OPTIONAL,
+ timeOfRegistration [9] Timestamp OPTIONAL
+}
+
+-- ==============
+-- EES parameters
+-- ==============
+
+RegistrationType ::= ENUMERATED
+{
+ registration (1),
+ registrationUpdate(2),
+ deregistration(3)
+}
+
+ACProfiles ::= SET OF ACProfile
+
+ACProfile ::= SEQUENCE
+{
+ aCID [1] ACID,
+ aCType [2] UTF8String OPTIONAL,
+ aCSchedule [3] Daytime OPTIONAL,
+ expACGeoServArea [4] Location OPTIONAL,
+ eASsInfo [5] EASsInfo OPTIONAL,
+ aCServiceContSupport [6] ACRScenarios OPTIONAL
+}
+
+ACID ::= UTF8String
+
+ACRScenarios ::= SET OF ACRScenario
+
+ACRScenario ::= ENUMERATED
+{
+ eECInitiated(1),
+ eECExecutedViaSourceEES(2),
+ eECExecutedViaTargetEES(3),
+ sourceEASDecided(4),
+ sourceEESExecuted(5),
+ eELManagedACR(6)
+}
+
+UnfulfilledACProfiles ::= SET OF UnfulfilledACProfile
+
+UnfulfilledACProfile ::= SEQUENCE
+{
+ aCID [1] ACID,
+ reason [2] UnfulfilledACProfileReason
+}
+
+UnfulfilledACProfileReason ::= ENUMERATED
+{
+ eASNotAvailable(1),
+ requirementsUnfulfilled(2)
+}
+
+EASID ::= UTF8String
+
+EASsInfo ::= SET OF EASInfo
+
+EASInfo ::= SEQUENCE
+{
+ eASID [1] EASID,
+ expectedSvcKPIs [2] ServiceKPIs OPTIONAL,
+ minimumReqSvcKPIs [3] ServiceKPIs OPTIONAL
+}
+
+ServiceKPIs ::= SEQUENCE
+{
+ connectionBandwidth [1] INTEGER OPTIONAL,
+ requestRate [2] INTEGER OPTIONAL,
+ responseTime [3] INTEGER OPTIONAL,
+ requestedAvailability [4] INTEGER OPTIONAL,
+ requestedCompute [5] OCTET STRING OPTIONAL,
+ requestedGraphCompute [6] OCTET STRING OPTIONAL,
+ requestedMemory [7] OCTET STRING OPTIONAL,
+ requestedStorage [8] OCTET STRING OPTIONAL
+}
+
+FailureResponse ::= ENUMERATED
+{
+ error400(1),
+ error401(2),
+ error403(3),
+ error404(4),
+ error406(5),
+ error411(6),
+ error413(7),
+ error415(8),
+ error429(9),
+ error500(10),
+ error503(11)
+}
+
+EASDiscoveryFilter ::= CHOICE
+{
+ aCsCharacteristics [1] ACProfiles,
+ eASCharacteristics [2] EASsCharacteristics
+}
+
+EASsCharacteristics ::= SET OF EASCharacteristics
+
+EASCharacteristics ::= SEQUENCE
+{
+ eASID [1] EASID OPTIONAL,
+ aSPID [2] UTF8String OPTIONAL,
+ eASType [3] UTF8String OPTIONAL,
+ eASSchedule [4] Daytime OPTIONAL,
+ eASProfile [5] EASProfile OPTIONAL,
+ eASServiceArea [6] Location OPTIONAL,
+ eASServicePermLevel [7] UTF8String OPTIONAL,
+ eASServiceFeatures [8] EASServiceFeatures OPTIONAL
+}
+
+DNAIs ::= SET OF DNAI
+
+DiscoveredEAS ::= SEQUENCE
+{
+ eASProfile [1] EASProfile,
+ lifetime [2] INTEGER OPTIONAL
+}
+
+EASProfile ::= SEQUENCE
+{
+ eASID [1] EASID,
+ eASEndpoint [2] EASEndpoint,
+ aCIDs [3] ACIDs OPTIONAL,
+ aSPID [4] UTF8String OPTIONAL,
+ eASType [5] UTF8String OPTIONAL,
+ eASDescription [6] UTF8String OPTIONAL,
+ eASSchedule [7] Daytime OPTIONAL,
+ eASServiceArea [8] Location OPTIONAL,
+ eASServiceKPIs [9] ServiceKPIs OPTIONAL,
+ eASServicePermLevel [10] UTF8String OPTIONAL,
+ eASServiceFeatures [11] EASServiceFeatures OPTIONAL,
+ eASServiceContSupport [12] ACRScenarios OPTIONAL,
+ appLocs [13] RouteToLocations OPTIONAL,
+ eASStatus [14] EASStatus OPTIONAL
+}
+
+EASStatus ::= ENUMERATED
+{
+ enabled(1),
+ disabled(2)
+}
+
+EASEndpoint ::= SEQUENCE
+{
+ fQDN [1] FQDN OPTIONAL,
+ iPv4Addresses [2] IPv4Addresses OPTIONAL,
+ iPv6Addresses [3] IPv6Addresses OPTIONAL,
+ uRI [4] UTF8String OPTIONAL
+}
+
+RouteToLocations ::= SET OF RouteToLocation
+EASServiceFeatures ::= SET OF EASServiceFeature
+EASServiceFeature ::= UTF8String
+ACIDs ::= SET OF ACID
+IPv4Addresses ::= SET OF IPv4Address
+IPv6Addresses ::= SET OF IPv6Address
+
+SubscriptionType ::= ENUMERATED
+{
+ subscription(1),
+ subscriptionUpdate(2),
+ unsubscription(3)
+}
+
+EASEventType ::= ENUMERATED
+{
+ eASAvailabilityChange(1),
+ eASDynamicInfoChange(2)
+}
+
+EASDynamicInfoFilter ::= SEQUENCE
+{
+ eASId [1] EASID,
+ eASStatus [2] BOOLEAN,
+ eASAcIDs [3] BOOLEAN,
+ eASDesc [4] BOOLEAN,
+ eASPt [5] BOOLEAN,
+ eASFeature [6] BOOLEAN,
+ eASSchedule [7] BOOLEAN,
+ eASSvcArea [8] BOOLEAN,
+ eASSvcKpi [9] BOOLEAN,
+ eASSvcCont [10] BOOLEAN
+}
+
+EASIDs ::= SET OF EASID
+
+ACREventIDs ::= ENUMERATED
+{
+ targetInformation(1),
+ aCRComplete(2)
+}
+
+TargetInfo ::= SEQUENCE
+{
+ discoveredEAS [1] DiscoveredEAS,
+ targetEESInfo [2] EDNConfigurationInfo OPTIONAL
+}
+
+EDNConfigurationInfo ::= SEQUENCE
+{
+ eDNConnectionInfo [1] EDNConnectionInfo,
+ eESsInfo [2] EESsInfo,
+ lifetime [3] INTEGER OPTIONAL
+}
+
+EDNConnectionInfo ::= SEQUENCE
+{
+ dNN [1] DNN OPTIONAL,
+ sNSSAI [2] SNSSAI OPTIONAL,
+ serviceArea [3] Location OPTIONAL
+}
+
+EESsInfo ::= SET OF EESInfo
+
+EESInfo ::= SEQUENCE
+{
+ eESID [1] EESID,
+ eESEndpoint [2] EESEndpoint,
+ eASIDs [3] EASIDs OPTIONAL,
+ serviceArea [4] Location OPTIONAL,
+ dNAIS [5] DNAIs OPTIONAL
+}
+
+EESID ::= UTF8String
+
+EESEndpoint ::= SEQUENCE
+{
+ fQDN [1] FQDN OPTIONAL,
+ iPv4Addresses [2] IPv4Addresses OPTIONAL,
+ iPv6Addresses [3] IPv6Addresses OPTIONAL,
+ uRI [4] UTF8String OPTIONAL
+}
+
+-- =================
+-- 5GMS AF definitions
+-- =================
+
+-- See clause 7.15.2.2 for details of this structure
+FiveGMSAFServiceAccessInformation ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ serviceAccessInformationResource [2] SBIType
+}
+
+-- See clause 7.15.2.3 for details of this structure
+FiveGMSAFConsumptionReporting ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ consumptionReport [2] SBIType
+}
+
+-- See clause 7.15.2.4 for details of this structure
+FiveGMSAFDynamicPolicyInvocation ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ dynamicPolicyResource [2] SBIType,
+ dPIoperationType [3] DPIOperationType
+}
+
+-- See clause 7.15.2.5 for details of this structure
+FiveGMSAFMetricsReporting ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ metricsReport [2] XMLType
+}
+
+-- See clause 7.15.2.6 for details of this structure
+FiveGMSAFNetworkAssistance ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ networkAssistanceSessionResource [2] SBIType,
+ nAOperationType [3] NAOperationType
+}
+
+-- See clause 7.15.2.7 for details of this structure
+FiveGMSAFUnsuccessfulProcedure ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ fiveGMSAFUnsuccessfulOperation [2] FiveGMSAFUnsuccessfulOperation,
+ fiveGMSAFErrorCode [3] FiveGMSAFErrorCode
+}
+
+-- See clause 7.15.2.8 for details of this structure
+FiveGMSAFStartOfInterceptionWithAlreadyConfiguredUE ::= SEQUENCE
+{
+ gPSI [1] GPSI,
+ serviceAccessInformationResource [2] SBIType
+}
+
+-- ==============
+-- 5GMS AF parameters
+-- ==============
+
+DPIOperationType ::= ENUMERATED
+{
+ createDynamicPolicy(1),
+ retrieveDynamicPolicy(2),
+ updateDynamicPolicy(3),
+ patchDynamicPolicy(4),
+ destroyDynamicPolicy(5)
+}
+
+NAOperationType ::= ENUMERATED
+{
+ createNetworkAssistanceSession(1),
+ retrieveNetworkAssistanceSession(2),
+ updateNetworkAssistanceSession(3),
+ patchNetworkAssistanceSession(4),
+ destroyNetworkAssistanceSession(5),
+ requestBitRateRecommendation(6),
+ requestDeliveryBoost(7)
+}
+
+FiveGMSAFUnsuccessfulOperation::= ENUMERATED
+{
+ retrieveServiceAccessInformation(1),
+ submitConsumptionReport(2),
+ submitMetricsReport(3),
+ createDynamicPolicy(4),
+ retrieveDynamicPolicy(5),
+ updateDynamicPolicy(6),
+ patchDynamicPolicy(7),
+ destroyDynamicPolicy(8),
+ createNetworkAssistanceSession(9),
+ retrieveNetworkAssistanceSession(10),
+ updateNetworkAssistanceSession(11),
+ patchNetworkAssistanceSession(12),
+ destroyNetworkAssistanceSession(13),
+ requestBitRateRecommendation(14),
+ requestDeliveryBoost(15)
+}
+
+FiveGMSAFErrorCode ::=ENUMERATED
+{
+ badRequest400(1),
+ unauthorized401(2),
+ notFound404(3),
+ unsupportedMediaType415(4)
+}
+
-- ===================
-- 5G LALS definitions
@@ -2503,7 +4984,8 @@ PDSummaryReport ::= SEQUENCE
firstPacketTimestamp [10] Timestamp,
lastPacketTimestamp [11] Timestamp,
packetCount [12] INTEGER,
- byteCount [13] INTEGER
+ byteCount [13] INTEGER,
+ useSessionTrigger [14] BOOLEAN
}
-- ====================
@@ -2523,7 +5005,7 @@ PDSRSummaryTrigger ::= ENUMERATED
-- Identifier Association definitions
-- ==================================
-AMFIdentifierAssocation ::= SEQUENCE
+AMFIdentifierAssociation ::= SEQUENCE
{
sUPI [1] SUPI,
sUCI [2] SUCI OPTIONAL,
@@ -2534,7 +5016,7 @@ AMFIdentifierAssocation ::= SEQUENCE
fiveGSTAIList [7] TAIList OPTIONAL
}
-MMEIdentifierAssocation ::= SEQUENCE
+MMEIdentifierAssociation ::= SEQUENCE
{
iMSI [1] IMSI,
iMEI [2] IMEI OPTIONAL,
@@ -2623,6 +5105,18 @@ MMEUnsuccessfulProcedure ::= SEQUENCE
location [7] Location OPTIONAL
}
+-- See clause 6.3.2.2.8 for details of this structure
+MMEPositioningInfoTransfer ::= SEQUENCE
+{
+ iMSI [1] IMSI,
+ iMEI [2] IMEI OPTIONAL,
+ mSISDN [3] MSISDN OPTIONAL,
+ gUTI [4] GUTI OPTIONAL,
+ lPPaMessage [5] OCTET STRING OPTIONAL,
+ lPPMessage [6] OCTET STRING OPTIONAL,
+ mMELCSCorrelationId [7] OCTET STRING (SIZE(4))
+}
+
-- ==================
-- EPS MME parameters
-- ==================
@@ -2703,7 +5197,9 @@ LINotification ::= SEQUENCE
appliedTargetID [2] TargetIdentifier OPTIONAL,
appliedDeliveryInformation [3] SEQUENCE OF LIAppliedDeliveryInformation OPTIONAL,
appliedStartTime [4] Timestamp OPTIONAL,
- appliedEndTime [5] Timestamp OPTIONAL
+ appliedEndTime [5] Timestamp OPTIONAL,
+ appliedTargetIsLocal [6] BOOLEAN OPTIONAL,
+ appliedTargetIsNonLocal [7] BOOLEAN OPTIONAL
}
-- ==========================
@@ -2761,6 +5257,54 @@ FiveGMMStatus ::= ENUMERATED
uENot5GMMRegistered(2)
}
+-- ========================================
+-- Separated Location Reporting definitions
+-- ========================================
+
+SeparatedLocationReporting ::= SEQUENCE
+{
+ sUPI [1] SUPI,
+ sUCI [2] SUCI OPTIONAL,
+ pEI [3] PEI OPTIONAL,
+ gPSI [4] GPSI OPTIONAL,
+ gUTI [5] FiveGGUTI OPTIONAL,
+ location [6] Location,
+ non3GPPAccessEndpoint [7] UEEndpointAddress OPTIONAL,
+ rATType [8] RATType OPTIONAL,
+ ePSIdentities [9] EPSSubscriberIDs OPTIONAL
+}
+
+-- =======================
+-- HSS definitions
+-- =======================
+
+HSSServingSystemMessage ::= SEQUENCE
+{
+ iMSI [1] IMSI,
+ oldPLMNID [2] PLMNID,
+ newPLMNID [3] PLMNID,
+ roamingIndicator [4] RoamingIndicator,
+ responseCodes [5] UTF8String
+}
+
+HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE
+{
+ hSSIdentities [1] HSSIdentities,
+ subscriptionDataSets [2] SubscriptionDataSets,
+ pSUserState [3] SBIType
+}
+
+HSSIdentities ::= SEQUENCE
+{
+ ePSSubscriberIDs [1] EPSSubscriberIDs OPTIONAL,
+ iMSSubscriberIDs [2] IMSSubscriberIDs OPTIONAL
+}
+
+SubscriptionDataSets ::= CHOICE
+{
+ iMSSubscriptionData [1] SBIType
+}
+
-- =================
-- Common Parameters
-- =================
@@ -2772,6 +5316,127 @@ AccessType ::= ENUMERATED
threeGPPandNonThreeGPPAccess(3)
}
+AllowedNSSAI ::= SEQUENCE OF NSSAI
+
+AllowedTACs ::= SEQUENCE (SIZE(1..MAX)) OF TAC
+
+AreaOfInterest ::= SEQUENCE
+{
+ areaOfInterestTAIList [1] AreaOfInterestTAIList OPTIONAL,
+ areaOfInterestCellList [2] AreaOfInterestCellList OPTIONAL,
+ areaOfInterestRANNodeList [3] AreaOfInterestRANNodeList OPTIONAL
+}
+
+AreaOfInterestCellList ::= SEQUENCE (SIZE(1..MAX)) OF NCGI
+
+AreaOfInterestItem ::= SEQUENCE
+{
+ areaOfInterest [1] AreaOfInterest
+}
+
+AreaOfInterestRANNodeList ::= SEQUENCE (SIZE(1..MAX)) OF GlobalRANNodeID
+
+AreaOfInterestTAIList ::= SEQUENCE (SIZE(1..MAX)) OF TAI
+
+BroadcastPLMNItem ::= SEQUENCE
+{
+ pLMNIdentity [1] PLMNID,
+ tAISliceSupportList [2] TAISliceSupportList,
+ nPNSupport [3] NID
+}
+
+CellCAGList ::= SEQUENCE (SIZE(1..MAX)) OF CAGID
+
+CauseMisc ::= ENUMERATED
+{
+ controlProcessingOverload(1),
+ notEnoughUserPlaneProcessingResources(2),
+ hardwareFailure(3),
+ oMIntervention(4),
+ unknownPLMNOrSNPN(5),
+ unspecified(6)
+}
+
+CauseNas ::= ENUMERATED
+{
+ normalRelease(1),
+ authenticationFailure(2),
+ deregister(3),
+ unspecified(4)
+}
+
+CauseProtocol ::= ENUMERATED
+{
+ transferSyntaxError(1),
+ abstractSyntaxError-reject(2),
+ abstractSyntaxErrorIgnoreAndNotify(3),
+ messageNotCompatibleWithReceiverState(4),
+ semanticError(5),
+ abstractSyntaxErrorFalselyConstructedMessage(6),
+ unspecified(7)
+}
+
+CauseRadioNetwork ::= ENUMERATED
+{
+ unspecified(1),
+ txnrelocoverallExpiry(2),
+ successfulHandover(3),
+ releaseDueToNGRANGeneratedReason(4),
+ releaseDueTo5gcGeneratedReason(5),
+ handoverCancelled(6),
+ partialHandover(7),
+ hoFailureInTarget5GCNGRANNodeOrTargetSystem(8),
+ hoTargetNotAllowed(9),
+ tNGRelocOverallExpiry(10),
+ tNGRelocPrepExpiry(11),
+ cellNotAvailable(12),
+ unknownTargetID(13),
+ noRadioResourcesAvailableInTargetCell(14),
+ unknownLocalUENGAPID(15),
+ inconsistentRemoteUENGAPID(16),
+ handoverDesirableForRadioReason(17),
+ timeCriticalHandover(18),
+ resourceOptimisationHandover(19),
+ reduceLoadInServingCell(20),
+ userInactivity(21),
+ radioConnectionWithUELost(22),
+ radioResourcesNotAvailable(23),
+ invalidQoSCombination(24),
+ failureInRadioInterfaceProcedure(25),
+ interactionWithOtherProcedure(26),
+ unknownPDUSessionID(27),
+ multiplePDUSessionIDInstances(29),
+ multipleQoSFlowIDInstances(30),
+ encryptionAndOrIntegrityProtectionAlgorithmsNotSupported(31),
+ nGIntraSystemHandoverTriggered(32),
+ nGInterSystemHandoverTriggered(33),
+ xNHandoverTriggered(34),
+ notSupported5QIValue(35),
+ uEContextTransfer(36),
+ iMSVoiceeEPSFallbackOrRATFallbackTriggered(37),
+ uPIntegrityProtectioNotPossible(38),
+ uPConfidentialityProtectionNotPossible(39),
+ sliceNotSupported(40),
+ uEInRRCInactiveStateNotReachable(41),
+ redirection(42),
+ resourcesNotAvailableForTheSlice(43),
+ uEMaxIntegrityProtectedDataRateReason(44),
+ releaseDueToCNDetectedMobility(45),
+ n26InterfaceNotAvailable(46),
+ releaseDueToPreemption(47),
+ multipleLocationReportingReferenceIDInstances(48),
+ rSNNotAvailableForTheUP(49),
+ nPMAccessDenied(50),
+ cAGOnlyAccessDenied(51),
+ insufficientUECapabilities(52)
+}
+
+CauseTransport ::= ENUMERATED
+{
+ transportResourceUnavailable(1),
+ unspecified(2)
+}
+
Direction ::= ENUMERATED
{
fromTarget(1),
@@ -2784,6 +5449,10 @@ E164Number ::= NumericString (SIZE(1..15))
EmailAddress ::= UTF8String
+EquivalentPLMNs ::= SEQUENCE (SIZE(1..MAX)) OF PLMNID
+
+EUI64 ::= OCTET STRING (SIZE(8))
+
FiveGGUTI ::= SEQUENCE
{
mCC [1] MCC,
@@ -2796,6 +5465,19 @@ FiveGGUTI ::= SEQUENCE
FiveGMMCause ::= INTEGER (0..255)
+FiveGSSubscriberID ::= CHOICE
+{
+ sUPI [1] SUPI,
+ sUCI [2] SUCI,
+ pEI [3] PEI,
+ gPSI [4] GPSI
+}
+
+FiveGSSubscriberIDs ::= SEQUENCE
+{
+ fiveGSSubscriberID [1] SEQUENCE SIZE(1..MAX) OF FiveGSSubscriberID
+}
+
FiveGSMRequestType ::= ENUMERATED
{
initialRequest(1),
@@ -2811,6 +5493,37 @@ FiveGSMCause ::= INTEGER (0..255)
FiveGTMSI ::= INTEGER (0..4294967295)
+FiveGSRVCCInfo ::= SEQUENCE
+{
+ uE5GSRVCCCapability [1] BOOLEAN,
+ sessionTransferNumber [2] UTF8String OPTIONAL,
+ correlationMSISDN [3] MSISDN OPTIONAL
+}
+
+FiveGSUserStateInfo ::= SEQUENCE
+{
+ fiveGSUserState [1] FiveGSUserState,
+ accessType [2] AccessType
+}
+
+FiveGSUserState ::= ENUMERATED
+{
+ deregistered(1),
+ registeredNotReachableForPaging(2),
+ registeredReachableForPaging(3),
+ connectedNotReachableForPaging(4),
+ connectedReachableForPaging(5),
+ notProvidedFromAMF(6)
+}
+
+ForbiddenAreaInformation ::= SEQUENCE
+{
+ pLMNIdentity [1] PLMNID,
+ forbiddenTACs [2] ForbiddenTACs
+}
+
+ForbiddenTACs ::= SEQUENCE (SIZE(1..MAX)) OF TAC
+
FTEID ::= SEQUENCE
{
tEID [1] INTEGER (0.. 4294967295),
@@ -2818,6 +5531,8 @@ FTEID ::= SEQUENCE
iPv6Address [3] IPv6Address OPTIONAL
}
+FTEIDList ::= SEQUENCE OF FTEID
+
GPSI ::= CHOICE
{
mSISDN [1] MSISDN,
@@ -2846,6 +5561,23 @@ GUTI ::= SEQUENCE
mTMSI [5] TMSI
}
+HandoverCause ::= CHOICE
+{
+ radioNetwork [1] CauseRadioNetwork,
+ transport [2] CauseTransport,
+ nas [3] CauseNas,
+ protocol [4] CauseProtocol,
+ misc [5] CauseMisc
+}
+
+HandoverType ::= ENUMERATED
+{
+ intra5GS(1),
+ fiveGStoEPS(2),
+ ePSto5GS(3),
+ fiveGStoUTRA(4)
+}
+
HomeNetworkPublicKeyID ::= OCTET STRING
HSMFURI ::= UTF8String
@@ -2864,6 +5596,14 @@ IMPU ::= CHOICE
IMSI ::= NumericString (SIZE(6..15))
+IMSIUnauthenticatedIndication ::= BOOLEAN
+
+IMSSubscriberIDs ::= CHOICE
+{
+ iMPI [1] IMPI,
+ iMPU [2] IMPU
+}
+
Initiator ::= ENUMERATED
{
uE(1),
@@ -2883,8 +5623,39 @@ IPv6Address ::= OCTET STRING (SIZE(16))
IPv6FlowLabel ::= INTEGER(0..1048575)
+LocationAreaOfInterestList ::= SEQUENCE (SIZE(1..MAX)) OF AreaOfInterestItem
+
+LocationEventType ::= ENUMERATED
+{
+ direct(1),
+ changeOfServeCell(2),
+ uEPrescenceInAreaOfInterest(3),
+ stopChangeOfServeCell(4),
+ stopUEPresenceInAreaOfInterest(5),
+ cancelLocationReportingForTheUE(6)
+}
+
+LocationReportArea ::= ENUMERATED
+{
+ cell(1)
+}
+
+LocationReportingRequestType ::= SEQUENCE
+{
+ eventType [1] LocationEventType,
+ reportArea [2] LocationReportArea,
+ areaOfInterestList [3] LocationAreaOfInterestList
+}
+
MACAddress ::= OCTET STRING (SIZE(6))
+MACRestrictionIndicator ::= ENUMERATED
+{
+ noResrictions(1),
+ mACAddressNotUseableAsEquipmentIdentifier(2),
+ unknown(3)
+}
+
MCC ::= NumericString (SIZE(3))
MNC ::= NumericString (SIZE(2..3))
@@ -2899,6 +5670,15 @@ MMEC ::= NumericString
MMEGI ::= NumericString
+MobilityRestrictionList ::= SEQUENCE
+{
+ servingPLMN [1] PLMNID,
+ equivalentPLMNs [2] EquivalentPLMNs OPTIONAL,
+ rATRestrictions [3] RATRestrictions OPTIONAL,
+ forbiddenAreaInformation [4] ForbiddenAreaInformation OPTIONAL,
+ serviceAreaInformation [5] ServiceAreaInformation OPTIONAL
+}
+
MSISDN ::= NumericString (SIZE(1..15))
NAI ::= UTF8String
@@ -2911,16 +5691,45 @@ NonLocalID ::= ENUMERATED
nonLocal(2)
}
+NonIMEISVPEI ::= CHOICE
+{
+ mACAddress [1] MACAddress,
+ eUI64 [2] EUI64
+}
+
+NPNAccessInformation ::= CHOICE
+{
+ pNINPNAccessInformation [1] CellCAGList
+}
+
NSSAI ::= SEQUENCE OF SNSSAI
+PagingRestrictionIndicator ::= OCTET STRING (SIZE(1..33))
+
PLMNID ::= SEQUENCE
{
mCC [1] MCC,
mNC [2] MNC
}
+PLMNList ::= SEQUENCE (SIZE(1..MAX)) OF PLMNID
+
+PDNConnectionType ::= ENUMERATED
+{
+ iPv4(1),
+ iPv6(2),
+ iPv4v6(3),
+ nonIP(4),
+ ethernet(5)
+}
+
PDUSessionID ::= INTEGER (0..255)
+PDUSessionResourceInformation ::= SEQUENCE
+{
+ pDUSessionID [1] PDUSessionID
+}
+
PDUSessionType ::= ENUMERATED
{
iPv4(1),
@@ -2933,13 +5742,63 @@ PDUSessionType ::= ENUMERATED
PEI ::= CHOICE
{
iMEI [1] IMEI,
- iMEISV [2] IMEISV
+ iMEISV [2] IMEISV,
+ mACAddress [3] MACAddress,
+ eUI64 [4] EUI64
}
-PortNumber ::= INTEGER(0..65535)
+PortNumber ::= INTEGER (0..65535)
+
+PrimaryAuthenticationType ::= ENUMERATED
+{
+ eAPAKAPrime(1),
+ fiveGAKA(2),
+ eAPTLS(3),
+ none(4),
+ ePSAKA(5),
+ eAPAKA(6),
+ iMSAKA(7),
+ gBAAKA(8),
+ uMTSAKA(9)
+}
ProtectionSchemeID ::= INTEGER (0..15)
+RANNodeName ::= CHOICE
+{
+ rANNodeNameVisible [1] OCTET STRING,
+ rANNodeNameUTF8 [2] UTF8String
+}
+
+RANUENGAPID ::= INTEGER (0..4294967295)
+
+-- See clause 9.3.1.20 of TS 38.413 [23] for details
+RANSourceToTargetContainer ::= OCTET STRING
+
+-- See clause 9.3.1.21 of TS 38.413 [23] for details
+RANTargetToSourceContainer ::= OCTET STRING
+
+RATInformation ::= ENUMERATED
+{
+ unlicensed(1),
+ nBIoT(2),
+ nRLEO(3),
+ nRMEO(4),
+ nRGEO(5),
+ nROTHERSAT(6)
+}
+
+RATRestrictions ::= SEQUENCE (SIZE(1..MAX)) OF RATRestrictionItem
+
+RATRestrictionInformation ::= BIT STRING (SIZE(8, ...))
+
+RATRestrictionItem ::= SEQUENCE
+{
+ pLMNIdentity [1] PLMNID,
+ rATRestrictionInformation [2] RATRestrictionInformation
+
+}
+
RATType ::= ENUMERATED
{
nR(1),
@@ -2956,7 +5815,12 @@ RATType ::= ENUMERATED
trustedN3GA(12),
trustedWLAN(13),
uTRA(14),
- gERA(15)
+ gERA(15),
+ nRLEO(16),
+ nRMEO(17),
+ nRGEO(18),
+ nROTHERSAT(19),
+ nRREDCAP(20)
}
RejectedNSSAI ::= SEQUENCE OF RejectedSNSSAI
@@ -2979,6 +5843,15 @@ RoutingIndicator ::= INTEGER (0..9999)
SchemeOutput ::= OCTET STRING
+ServiceAreaInformation ::= SEQUENCE (SIZE(1..MAX)) OF ServiceAreaInfo
+
+ServiceAreaInfo ::= SEQUENCE
+{
+ pLMNIdentity [1] PLMNID,
+ allowedTACs [2] AllowedTACs OPTIONAL,
+ notAllowedTACs [3] ForbiddenTACs OPTIONAL
+}
+
SIPURI ::= UTF8String
Slice ::= SEQUENCE
@@ -2999,8 +5872,16 @@ SMSOverNASIndicator ::= ENUMERATED
SNSSAI ::= SEQUENCE
{
- sliceServiceType [1] INTEGER (0..255),
- sliceDifferentiator [2] OCTET STRING (SIZE(3)) OPTIONAL
+ sliceServiceType [1] INTEGER (0..255),
+ sliceDifferentiator [2] OCTET STRING (SIZE(3)) OPTIONAL,
+ mappedHPLMNSliceServiceType [3] INTEGER (0..255) OPTIONAL,
+ mappedHPLMNSliceDifferentiator [4] OCTET STRING (SIZE(3)) OPTIONAL
+}
+
+SubscriberIdentifier ::= CHOICE
+{
+ sUCI [1] SUCI,
+ sUPI [2] SUPI
}
SUCI ::= SEQUENCE
@@ -3010,7 +5891,10 @@ SUCI ::= SEQUENCE
routingIndicator [3] RoutingIndicator,
protectionSchemeID [4] ProtectionSchemeID,
homeNetworkPublicKeyID [5] HomeNetworkPublicKeyID,
- schemeOutput [6] SchemeOutput
+ schemeOutput [6] SchemeOutput,
+ routingIndicatorLength [7] INTEGER (1..4) OPTIONAL
+ -- shall be included if different from the number of meaningful digits given
+ -- in routingIndicator
}
SUPI ::= CHOICE
@@ -3021,24 +5905,42 @@ SUPI ::= CHOICE
SUPIUnauthenticatedIndication ::= BOOLEAN
+SupportedTAList ::= SEQUENCE (SIZE(1..MAX)) OF TAItem
+
SwitchOffIndicator ::= ENUMERATED
{
normalDetach(1),
switchOff(2)
}
+TAItem ::= SEQUENCE
+{
+ tAC [1] TAC,
+ broadcastPLMNList [2] SEQUENCE (SIZE(1..MAX)) OF BroadcastPLMNItem,
+ rATinformation [3] RATInformation OPTIONAL
+}
+
+TAISliceSupportList ::= SEQUENCE (SIZE(1..MAX)) OF SNSSAI
+
TargetIdentifier ::= CHOICE
{
- sUPI [1] SUPI,
- iMSI [2] IMSI,
- pEI [3] PEI,
- iMEI [4] IMEI,
- gPSI [5] GPSI,
- mSISDN [6] MSISDN,
- nAI [7] NAI,
- iPv4Address [8] IPv4Address,
- iPv6Address [9] IPv6Address,
- ethernetAddress [10] MACAddress
+ sUPI [1] SUPI,
+ iMSI [2] IMSI,
+ pEI [3] PEI,
+ iMEI [4] IMEI,
+ gPSI [5] GPSI,
+ mSISDN [6] MSISDN,
+ nAI [7] NAI,
+ iPv4Address [8] IPv4Address,
+ iPv6Address [9] IPv6Address,
+ ethernetAddress [10] MACAddress,
+ iMPU [11] IMPU,
+ iMPI [12] IMPI,
+ e164Number [13] E164Number,
+ emailAddress [14] EmailAddress,
+ mCPTTID [15] UTF8String,
+ instanceIdentifierURN [16] UTF8String,
+ pTCChatGroupID [17] PTCChatGroupID
}
TargetIdentifierProvenance ::= ENUMERATED
@@ -3053,6 +5955,15 @@ TELURI ::= UTF8String
Timestamp ::= GeneralizedTime
+UEContextInfo ::= SEQUENCE
+{
+ supportVoPS [1] BOOLEAN OPTIONAL,
+ supportVoPSNon3GPP [2] BOOLEAN OPTIONAL,
+ lastActiveTime [3] Timestamp OPTIONAL,
+ accessType [4] AccessType OPTIONAL,
+ rATType [5] RATType OPTIONAL
+}
+
UEEndpointAddress ::= CHOICE
{
iPv4Address [1] IPv4Address,
@@ -3060,6 +5971,14 @@ UEEndpointAddress ::= CHOICE
ethernetAddress [3] MACAddress
}
+UserIdentifiers ::= SEQUENCE
+{
+ fiveGSSubscriberIDs [1] FiveGSSubscriberIDs OPTIONAL,
+ ePSSubscriberIDs [2] EPSSubscriberIDs OPTIONAL
+}
+
+UUID ::= OCTET STRING (SIZE (16))
+
-- ===================
-- Location parameters
-- ===================
@@ -3069,7 +5988,9 @@ Location ::= SEQUENCE
locationInfo [1] LocationInfo OPTIONAL,
positioningInfo [2] PositioningInfo OPTIONAL,
locationPresenceReport [3] LocationPresenceReport OPTIONAL,
- ePSLocationInfo [4] EPSLocationInfo OPTIONAL
+ fourGPositioningInfo [4] FourGPositioningInfo OPTIONAL,
+ fourGLocationInfo [5] FourGLocationInfo OPTIONAL,
+ iMSLocation [6] IMSLocation OPTIONAL
}
CellSiteInformation ::= SEQUENCE
@@ -3095,7 +6016,9 @@ UserLocation ::= SEQUENCE
{
eUTRALocation [1] EUTRALocation OPTIONAL,
nRLocation [2] NRLocation OPTIONAL,
- n3GALocation [3] N3GALocation OPTIONAL
+ n3GALocation [3] N3GALocation OPTIONAL,
+ uTRALocation [4] UTRALocation OPTIONAL,
+ gERALocation [5] GERALocation OPTIONAL
}
-- TS 29.571 [17], clause 5.4.4.8
@@ -3103,13 +6026,15 @@ EUTRALocation ::= SEQUENCE
{
tAI [1] TAI,
eCGI [2] ECGI,
- ageOfLocationInfo [3] INTEGER OPTIONAL,
+ ageOfLocationInfo [3] AgeOfLocation OPTIONAL,
uELocationTimestamp [4] Timestamp OPTIONAL,
geographicalInformation [5] UTF8String OPTIONAL,
geodeticInformation [6] UTF8String OPTIONAL,
globalNGENbID [7] GlobalRANNodeID OPTIONAL,
cellSiteInformation [8] CellSiteInformation OPTIONAL,
- globalENbID [9] GlobalRANNodeID OPTIONAL
+ globalENbID [9] GlobalRANNodeID OPTIONAL,
+ ignoreTAI [10] BOOLEAN OPTIONAL,
+ ignoreECGI [11] BOOLEAN OPTIONAL
}
-- TS 29.571 [17], clause 5.4.4.9
@@ -3117,12 +6042,13 @@ NRLocation ::= SEQUENCE
{
tAI [1] TAI,
nCGI [2] NCGI,
- ageOfLocationInfo [3] INTEGER OPTIONAL,
+ ageOfLocationInfo [3] AgeOfLocation OPTIONAL,
uELocationTimestamp [4] Timestamp OPTIONAL,
geographicalInformation [5] UTF8String OPTIONAL,
geodeticInformation [6] UTF8String OPTIONAL,
globalGNbID [7] GlobalRANNodeID OPTIONAL,
- cellSiteInformation [8] CellSiteInformation OPTIONAL
+ cellSiteInformation [8] CellSiteInformation OPTIONAL,
+ ignoreNCGI [9] BOOLEAN OPTIONAL
}
-- TS 29.571 [17], clause 5.4.4.10
@@ -3137,7 +6063,48 @@ N3GALocation ::= SEQUENCE
hFCNodeID [7] HFCNodeID OPTIONAL,
gLI [8] GLI OPTIONAL,
w5GBANLineType [9] W5GBANLineType OPTIONAL,
- gCI [10] GCI OPTIONAL
+ gCI [10] GCI OPTIONAL,
+ ageOfLocationInfo [11] AgeOfLocation OPTIONAL,
+ uELocationTimestamp [12] Timestamp OPTIONAL,
+ protocol [13] TransportProtocol OPTIONAL
+}
+
+-- TS 29.571 [17], clause 5.4.4.52
+UTRALocation ::= SEQUENCE
+{
+ cGI [1] CGI OPTIONAL,
+ sAI [2] SAI OPTIONAL,
+ lAI [3] LAI OPTIONAL,
+ rAI [4] RAI OPTIONAL,
+ ageOfLocationInfo [5] INTEGER OPTIONAL,
+ uELocationTimestamp [6] Timestamp OPTIONAL,
+ geographicalInformation [7] UTF8String OPTIONAL,
+ geodeticInformation [8] UTF8String OPTIONAL,
+ cellSiteInformation [9] CellSiteInformation OPTIONAL
+}
+
+-- TS 29.571 [17], clause 5.4.4.53
+GERALocation ::= SEQUENCE
+{
+ locationNumber [1] E164Number OPTIONAL,
+ cGI [2] CGI OPTIONAL,
+ rAI [3] RAI OPTIONAL,
+ sAI [4] SAI OPTIONAL,
+ lAI [5] LAI OPTIONAL,
+ vLRNumber [6] UTF8String OPTIONAL,
+ mSCNumber [7] UTF8String OPTIONAL,
+ ageOfLocationInfo [8] INTEGER OPTIONAL,
+ uELocationTimestamp [9] Timestamp OPTIONAL,
+ geographicalInformation [10] UTF8String OPTIONAL,
+ geodeticInformation [11] UTF8String OPTIONAL,
+ cellSiteInformation [12] CellSiteInformation OPTIONAL
+}
+
+IMSLocation ::= SEQUENCE
+{
+ pANIHeaderInfo [1] SEQUENCE OF PANIHeaderInfo OPTIONAL,
+ geolocationHeaderInfo [2] SEQUENCE OF SIPGeolocationHeaderInfo OPTIONAL,
+ cNIHeaderInfo [3] SEQUENCE OF SIPCNIHeaderInfo OPTIONAL
}
-- TS 38.413 [23], clause 9.3.2.4
@@ -3201,12 +6168,21 @@ SAI ::= SEQUENCE
SAC ::= OCTET STRING (SIZE(2))
+RAI ::= SEQUENCE
+{
+ pLMNID [1] PLMNID,
+ lAC [2] LAC,
+ rAC [3] RAC
+}
+
+RAC ::= OCTET STRING (SIZE(2))
+
-- TS 29.571 [17], clause 5.4.4.5
ECGI ::= SEQUENCE
{
pLMNID [1] PLMNID,
eUTRACellID [2] EUTRACellID,
- nID [3] NID OPTIONAL
+ nID [3] NID OPTIONAL
}
TAIList ::= SEQUENCE OF TAI
@@ -3222,16 +6198,27 @@ NCGI ::= SEQUENCE
RANCGI ::= CHOICE
{
eCGI [1] ECGI,
- nCGI [2] NCGI
+ nCGI [2] NCGI,
+ cGI [3] CGI
}
CellInformation ::= SEQUENCE
{
rANCGI [1] RANCGI,
cellSiteinformation [2] CellSiteInformation OPTIONAL,
- timeOfLocation [3] Timestamp OPTIONAL
+ timeOfLocation [3] Timestamp OPTIONAL,
+ cellRadioRelatedInformation [4] CellRadioRelatedInformation OPTIONAL,
+ band [5] RFBand OPTIONAL
}
+CellRadioRelatedInformation ::= CHOICE
+{
+ nGInformation [1] NGInformation,
+ f1Information [2] F1Information
+}
+
+RFBand ::= UTF8String
+
-- TS 38.413 [23], clause 9.3.1.57
N3IWFIDNGAP ::= BIT STRING (SIZE(16))
@@ -3276,6 +6263,13 @@ GLI ::= OCTET STRING (SIZE(0..150))
-- TS 29.571 [17], clause 5.4.4.10 and table 5.4.2-1
GCI ::= UTF8String
+-- TS 29.571 [17], clause 5.4.4.10 and table 5.4.3.38
+TransportProtocol ::= ENUMERATED
+{
+ uDP(1),
+ tCP(2)
+}
+
-- TS 29.571 [17], clause 5.4.4.10 and clause 5.4.3.33
W5GBANLineType ::= ENUMERATED
{
@@ -3335,7 +6329,7 @@ LocationData ::= SEQUENCE
{
locationEstimate [1] GeographicArea,
accuracyFulfilmentIndicator [2] AccuracyFulfilmentIndicator OPTIONAL,
- ageOfLocationEstimate [3] AgeOfLocationEstimate OPTIONAL,
+ ageOfLocationEstimate [3] AgeOfLocation OPTIONAL,
velocityEstimate [4] VelocityEstimate OPTIONAL,
civicAddress [5] CivicAddress OPTIONAL,
positioningDataList [6] SET OF PositioningMethodAndUsage OPTIONAL,
@@ -3346,15 +6340,116 @@ LocationData ::= SEQUENCE
barometricPressure [11] BarometricPressure OPTIONAL
}
+-- TS 29.172 [53], clause 7.4.29
+GERANPositioningInfo ::= SEQUENCE
+{
+ gERANPositioningData [1] GERANPositioningData OPTIONAL,
+ gERANGANSSPositioningData [2] GERANGANSSPositioningData OPTIONAL
+}
+
+-- TS 29.172 [53], clause 7.4.30
+GERANPositioningData ::= OCTET STRING
+
+-- TS 29.172 [53], clause 7.4.31
+GERANGANSSPositioningData ::= OCTET STRING
+
+-- TS 29.172 [53], clause 7.4.32
+UTRANPositioningInfo ::= SEQUENCE
+{
+ uTRANPositioningData [1] UTRANPositioningData OPTIONAL,
+ uTRANGANSSPositioningData [2] UTRANGANSSPositioningData OPTIONAL,
+ uTRANAdditionalPositioningData [3] UTRANAdditionalPositioningData
+}
+
+-- TS 29.172 [53], clause 7.4.33
+UTRANPositioningData ::= OCTET STRING
+
+-- TS 29.172 [53], clause 7.4.34
+UTRANGANSSPositioningData ::= OCTET STRING
+
+-- TS 29.172 [53], clause 7.4.63
+UTRANAdditionalPositioningData ::= OCTET STRING
+
-- TS 29.172 [53], table 6.2.2-2
-EPSLocationInfo ::= SEQUENCE
+FourGPositioningInfo ::= SEQUENCE
+{
+ locationData [1] LocationData,
+ cGI [2] CGI OPTIONAL,
+ sAI [3] SAI OPTIONAL,
+ eSMLCCellInfo [4] ESMLCCellInfo OPTIONAL,
+ gERANPositioningInfo [5] GERANPositioningInfo OPTIONAL,
+ uTRANPositioningInfo [6] UTRANPositioningInfo OPTIONAL,
+ rawMLPResponse [7] RawMLPResponse OPTIONAL
+}
+
+FourGLocationInfo ::= CHOICE
+{
+ ePSLocationInformation [1] EPSLocationInformation,
+ ePSUserLocationInformation [2] EPSUserLocationInformation
+}
+
+-- TS 29.272 [106], clause 7.3.111
+EPSLocationInformation ::= SEQUENCE
+{
+ mMELocationInformation [1] MMELocationInformation OPTIONAL,
+ sGSNLocationInformation [2] SGSNLocationInformation OPTIONAL
+}
+
+-- TS 29.274 [87], clause 8.21
+EPSUserLocationInformation ::= OCTET STRING
+
+-- TS 29.272 [106], clause 7.3.115
+MMELocationInformation ::= SEQUENCE
+{
+ eCGI [1] ECGI OPTIONAL,
+ tAI [2] TAI OPTIONAL,
+ geographicalInformation [3] GeographicalInformationOctet OPTIONAL,
+ geodeticInformation [4] GeodeticInformationOctet OPTIONAL,
+ currentLocationRetrieved [5] BOOLEAN OPTIONAL,
+ ageOfLocationInformation [6] INTEGER OPTIONAL,
+ userCSGInformation [7] UserCSGInformation OPTIONAL,
+ eNbID [8] ENbID OPTIONAL,
+ additionalCellIDs [9] SEQUENCE OF CellInformation OPTIONAL
+}
+
+-- TS 32.299 [111], clause 7.3.240A
+UserCSGInformation ::= SEQUENCE
{
- locationData [1] LocationData,
- cGI [2] CGI OPTIONAL,
- sAI [3] SAI OPTIONAL,
- eSMLCCellInfo [4] ESMLCCellInfo OPTIONAL
+ cSGID [1] CSGID,
+ cSGAccessMode [2] CSGAccessMode,
+ cSGMembershipIndication [3] CSGMembershipIndication
}
+-- TS 29.272 [106], clause 7.3.79
+CSGID ::= INTEGER
+
+-- TS 32.299 [111], clause 7.2.46A
+CSGAccessMode ::= ENUMERATED
+{
+ closedMode(1),
+ hybridMode(2)
+}
+
+-- TS 32.299 [111], clause 7.2.46B
+CSGMembershipIndication ::= ENUMERATED
+{
+ notCSGMember(1),
+ cSGMember(2)
+}
+
+-- TS 29.272 [106], clause 7.3.116
+SGSNLocationInformation ::= SEQUENCE
+{
+ cGI [1] CGI OPTIONAL,
+ lAI [2] LAI OPTIONAL,
+ sAI [3] SAI OPTIONAL,
+ rAI [4] RAI OPTIONAL,
+ geographicalInformation [5] GeographicalInformationOctet OPTIONAL,
+ geodeticInformation [6] GeodeticInformationOctet OPTIONAL,
+ currentLocationRetrieved [7] BOOLEAN OPTIONAL,
+ ageOfLocationInformation [8] INTEGER OPTIONAL,
+ userCSGInformation [9] UserCSGInformation OPTIONAL
+}
-- TS 29.172 [53], clause 7.4.57
ESMLCCellInfo ::= SEQUENCE
{
@@ -3469,6 +6564,12 @@ GeographicArea ::= CHOICE
ellipsoidArc [7] EllipsoidArc
}
+-- TS 29.002 [47], clause 17.7.1, type GeographicalInformation
+GeographicalInformationOctet ::= OCTET STRING (SIZE (8))
+
+-- TS 29.002 [47], clause 17.7.1, type GeodeticInformation
+GeodeticInformationOctet ::= OCTET STRING (SIZE (10))
+
-- TS 29.572 [24], clause 6.1.6.3.12
AccuracyFulfilmentIndicator ::= ENUMERATED
{
@@ -3552,7 +6653,10 @@ Point ::= SEQUENCE
PointUncertaintyCircle ::= SEQUENCE
{
geographicalCoordinates [1] GeographicalCoordinates,
- uncertainty [2] Uncertainty
+-- The uncertainty parameter has been deprecated and shall be set to 0.
+-- The uncertaintySBI parameter shall be used instead.
+ uncertainty [2] Uncertainty,
+ uncertaintySBI [3] UncertaintySBI OPTIONAL
}
-- TS 29.572 [24], clause 6.1.6.2.8
@@ -3582,8 +6686,11 @@ PointAltitudeUncertainty ::= SEQUENCE
point [1] GeographicalCoordinates,
altitude [2] Altitude,
uncertaintyEllipse [3] UncertaintyEllipse,
+-- The uncertaintyAltitude parameter has been deprecated and shall be set to 0.
+-- The uncertaintyAltitudeSBI parameter shall be used instead.
uncertaintyAltitude [4] Uncertainty,
- confidence [5] Confidence
+ confidence [5] Confidence,
+ uncertaintyAltitudeSBI [6] UncertaintySBI OPTIONAL
}
-- TS 29.572 [24], clause 6.1.6.2.12
@@ -3591,10 +6698,13 @@ EllipsoidArc ::= SEQUENCE
{
point [1] GeographicalCoordinates,
innerRadius [2] InnerRadius,
+-- The uncertaintyRadius parameter has been deprecated and shall be set to 0.
+-- The uncertaintyRadiusSBI parameter shall be used instead.
uncertaintyRadius [3] Uncertainty,
offsetAngle [4] Angle,
includedAngle [5] Angle,
- confidence [6] Confidence
+ confidence [6] Confidence,
+ uncertaintyRadiusSBI [7] UncertaintySBI OPTIONAL
}
-- TS 29.572 [24], clause 6.1.6.2.4
@@ -3608,9 +6718,15 @@ GeographicalCoordinates ::= SEQUENCE
-- TS 29.572 [24], clause 6.1.6.2.22
UncertaintyEllipse ::= SEQUENCE
{
+-- The semiMajor parameter has been deprecated and shall be set to 0.
+-- The semiMajorSBI parameter shall be used instead.
semiMajor [1] Uncertainty,
+-- The semiMinor parameter has been deprecated and shall be set to 0.
+-- The semiMinorSBI parameter shall be used instead.
semiMinor [2] Uncertainty,
- orientationMajor [3] Orientation
+ orientationMajor [3] Orientation,
+ semiMajorSBI [4] UncertaintySBI OPTIONAL,
+ semiMinorSBI [5] UncertaintySBI OPTIONAL
}
-- TS 29.572 [24], clause 6.1.6.2.18
@@ -3651,15 +6767,17 @@ HorizontalWithVerticalVelocityAndUncertainty ::= SEQUENCE
-- The following types are described in TS 29.572 [24], table 6.1.6.3.2-1
Altitude ::= UTF8String
Angle ::= INTEGER (0..360)
-Uncertainty ::= INTEGER (0..127)
+UncertaintySBI ::= UTF8String
Orientation ::= INTEGER (0..180)
Confidence ::= INTEGER (0..100)
-InnerRadius ::= INTEGER (0..65535)
-AgeOfLocationEstimate ::= INTEGER (0..32767)
+InnerRadius ::= INTEGER (0..327675)
+AgeOfLocation ::= INTEGER (0..32767)
HorizontalSpeed ::= UTF8String
VerticalSpeed ::= UTF8String
SpeedUncertainty ::= UTF8String
-BarometricPressure ::= INTEGER (30000..155000)
+BarometricPressure ::= INTEGER (30000..115000)
+
+Uncertainty ::= INTEGER (0..127)
-- TS 29.572 [24], clause 6.1.6.3.13
VerticalDirection ::= ENUMERATED
@@ -3728,4 +6846,213 @@ OGCURN ::= UTF8String
-- TS 29.572 [24], clause 6.1.6.2.15
MethodCode ::= INTEGER (16..31)
+PANIHeaderInfo ::= SEQUENCE
+{
+ accessNetworkInformation [1] SIPAccessNetworkInformation,
+ accessInfo [2] SEQUENCE OF SIPAccessInfo OPTIONAL,
+ pANILocation [3] SEQUENCE OF SIPLocationInfo OPTIONAL
+}
+
+SIPGeolocationHeaderInfo ::= SEQUENCE
+{
+ locationValue [1] UTF8String,
+ cidInfo [2] UTF8String OPTIONAL
+}
+
+SIPAccessInfo ::= UTF8String
+
+SIPCellularAccessInfo ::= SEQUENCE
+{
+ accessInfo [1] SIPAccessInfo,
+ cellInfoAge [2] SIPCNICellInfoAge
+}
+
+SIPCNICellInfoAge ::= INTEGER(0..999999999)
+
+SIPLocationInfo ::= SEQUENCE
+{
+ locationInfo [1] LocationInfo OPTIONAL,
+ cellInformation [2] CellInformation OPTIONAL
+}
+
+SIPAccessNetworkInformation ::= SEQUENCE
+{
+ accessNetworkInfo [1] UTF8String,
+ servingPLMN [2] PLMNID OPTIONAL
+}
+
+SIPCNIHeaderInfo ::= SEQUENCE
+{
+ cellularNetworkInformation [1] SIPCellularNetworkInformation,
+ cellularAccessInfo [2] SEQUENCE OF SIPCellularAccessInfo OPTIONAL,
+ cNILocation [3] SEQUENCE OF SIPLocationInfo OPTIONAL
+}
+
+SIPCellularNetworkInformation ::= SEQUENCE
+{
+ cellularNetworkInfo [1] UTF8String,
+ servingPLMN [2] PLMNID OPTIONAL
+}
+
+-- ==================================================
+-- Structures to allow reuse of encapsulated payloads
+-- ==================================================
+
+RCSPayload ::= CHOICE
+{
+ fullPayload [1] EncapsulatedRCSPayload,
+ modifiedPayload [2] ModifiedRCSPayload
+}
+
+EncapsulatedRCSPayload ::= CHOICE
+{
+ mIME [1] MIMEEntity,
+ mSRP [2] MSRPMessage,
+ sIP [3] SIPMessage
+}
+
+ModifiedRCSPayload ::= SEQUENCE
+{
+ modifiedRCSPayload [1] EncapsulatedRCSPayload,
+ modifications [2] PayloadModifications
+}
+
+PayloadModifications ::= SEQUENCE
+{
+ modificationList [1] SEQUENCE OF PayloadModification
+}
+
+PayloadModification ::= CHOICE
+{
+ predefinedModification [1] PredefinedPayloadModification,
+ describedModification [2] PayloadModificationDescription
+}
+
+PredefinedPayloadModification ::= ENUMERATED
+{
+ pANILocationRemoval(1),
+ cNILocationRemoval(2),
+ sIPGeolocationInfoRemoval(3),
+ presenceInformationLocationRemoval(4),
+ tS33128SMSTPDURedaction(5),
+ tS33128TruncatedSMSTPDU(6),
+ iMSTextContentRemoval(7),
+ iMSSubjectContentRemoval(8)
+}
+
+PayloadModificationDescription ::= SEQUENCE
+{
+ modificationLocation [1] ModificationLocation,
+ modificationType [2] ModificationType
+}
+
+ModificationLocation ::= CHOICE
+{
+ jSONPointer [1] UTF8String,
+ xPath [2] UTF8String,
+ sIPHeader [3] UTF8String,
+ sIPBody [4] NULL,
+ mIMEHeader [5] UTF8String,
+ mIMEBody [6] MIMEBody,
+ uTF8Location [7] IndexRange,
+ octetLocation [8] IndexRange,
+ aBNFRule [9] ABNFRuleLocation
+}
+
+ABNFRuleLocation ::= UTF8String
+
+ModificationType ::= CHOICE
+{
+ removed [1] PayloadInformationRemoved,
+ replacedWithCharacters [2] PayloadInformationReplacedWithCharacters,
+ replacedWithOctets [3] OCTET STRING,
+ replacedWithBits [4] BIT STRING
+}
+
+PayloadInformationRemoved ::= CHOICE
+{
+ charactersRemoved [1] INTEGER,
+ octetsRemoved [2] INTEGER,
+ bitsRemoved [3] INTEGER
+}
+
+PayloadInformationReplacedWithCharacters ::= SEQUENCE
+{
+ characters [1] UTF8String
+}
+
+IndexRange ::= SEQUENCE
+{
+ start [1] INTEGER,
+ end [2] INTEGER
+}
+
+-- ===============================================
+-- Externally Defined Structures - MSRP Parameters
+-- ===============================================
+
+EncapsulatedMSRP ::= UTF8String
+
+MSRPMessage ::= SEQUENCE
+{
+ encapsulatedMSRP [1] EncapsulatedMSRP
+}
+
+-- ==================================================
+-- Externally Defined Structures - SBIType Parameters
+-- ==================================================
+
+-- Details for the encoding and use of this parameter may be found in the clause
+-- that defines the xIRI that carries it. This parameter provides a generic
+-- mechanism to convey service based interface structures defined in Stage 3 working groups.
+
+SBIType ::= SEQUENCE
+{
+ sBIReference [1] SBIReference,
+ sBIValue [2] SBIValue
+}
+
+SBIReference ::= UTF8String
+
+SBIValue ::= UTF8String
+
+-- ==================================================
+-- Externally Defined Structures - XMLType Parameters
+-- ==================================================
+
+XMLType ::= SEQUENCE
+{
+ xMLNamespace [1] XMLNamespace,
+ xMLValue [2] XMLValue
+}
+
+XMLNamespace ::= UTF8String
+
+XMLValue ::= UTF8String
+
+-- ======================================================
+-- Externally Defined Structures - MIME Entity Parameters
+-- ======================================================
+
+EncapsulatedMIMEEntity ::= UTF8String
+
+MIMEContentType ::= UTF8String
+
+MIMEEntity ::= SEQUENCE
+{
+ contentType [1] MIMEContentType,
+ encapsulatedMIMEEntity [2] EncapsulatedMIMEEntity
+}
+
+MIMEPartIdentifier ::= CHOICE
+{
+ index [1] INTEGER
+}
+
+MIMEBody ::= CHOICE
+{
+ fullBody [1] NULL,
+ bodyPart [2] MIMEPartIdentifier
+}
+
END
diff --git a/epan/dissectors/asn1/lix2/lix2.cnf b/epan/dissectors/asn1/lix2/lix2.cnf
index f6fa565418..d7e1bbb3fd 100755..100644
--- a/epan/dissectors/asn1/lix2/lix2.cnf
+++ b/epan/dissectors/asn1/lix2/lix2.cnf
@@ -5,6 +5,16 @@
#.MODULE_IMPORT
+#.OMIT_ASSIGNMENT
+HeaderOnlyIndication
+KAFParams
+AreaScopeOfMDT
+MDTActivation
+MDTConfigurationEUTRA
+MDTConfigurationNR
+MDTMode
+RCSServerURI
+
#.EXPORTS
#.PDU
diff --git a/epan/dissectors/asn1/lix2/packet-lix2-template.c b/epan/dissectors/asn1/lix2/packet-lix2-template.c
index 1d1e0aa7e1..d12b3282e3 100755..100644
--- a/epan/dissectors/asn1/lix2/packet-lix2-template.c
+++ b/epan/dissectors/asn1/lix2/packet-lix2-template.c
@@ -1,7 +1,7 @@
/* packet-lix2-template.c
* Routines for Lawful Interception X2 xIRI event dissection
*
- * See 3GPP TS33.128.
+ * See 3GPP TS33.128 V18.5.0
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -10,9 +10,7 @@
* SPDX-License-Identifier: GPL-2.0-or-later
*/
-#ifdef HAVE_CONFIG_H
#include "config.h"
-#endif
#include <epan/packet.h>
#include <epan/conversation.h>
@@ -28,7 +26,7 @@ void proto_reg_handoff_lix2(void);
void proto_register_lix2(void);
/* Initialize the protocol and registered fields */
-static int proto_lix2 = -1;
+static int proto_lix2;
static dissector_handle_t lix2_handle = NULL;
diff --git a/epan/dissectors/asn1/lnpdqp/packet-lnpdqp-template.c b/epan/dissectors/asn1/lnpdqp/packet-lnpdqp-template.c
index cde4f9b17e..e90529e2eb 100644
--- a/epan/dissectors/asn1/lnpdqp/packet-lnpdqp-template.c
+++ b/epan/dissectors/asn1/lnpdqp/packet-lnpdqp-template.c
@@ -28,37 +28,37 @@
* Operation Family = ProvideInstruction, Reply Required (131) 0x83
* Operation Specifier = Start (1)
*/
-/* Exluding H bit */
+/* Excluding H bit */
#define LNPDQP_ANSI_TCAP_OPCODE_PI 0x0301
void proto_reg_handoff_lnpdqp(void);
void proto_register_lnpdqp(void);
/* Initialize the protocol and registered fields */
-static int proto_lnpdqp = -1;
+static int proto_lnpdqp;
-static int hf_lnpdqp_type_of_digits = -1;
-static int hf_lnpdqp_nature_of_number = -1;
-static int hf_lnpdqp_digits_enc = -1;
-static int hf_lnpdqp_np = -1;
-static int hf_lnpdqp_nr_digits = -1;
-static int hf_lnpdqp_bcd_digits = -1;
-static int hf_lnpdqp_ia5_digits = -1;
+static int hf_lnpdqp_type_of_digits;
+static int hf_lnpdqp_nature_of_number;
+static int hf_lnpdqp_digits_enc;
+static int hf_lnpdqp_np;
+static int hf_lnpdqp_nr_digits;
+static int hf_lnpdqp_bcd_digits;
+static int hf_lnpdqp_ia5_digits;
/* asn2wrs/the ber dissector does not handle the same tag used multiple times
* in asn1 description, do some magic to handle.
*/
-static int hf_lnpdqp_networkRoutingNumber = -1; /* Digits */
-static int hf_lnpdqp_callingPartyANI = -1; /* Digits */
-static int hf_lnpdqp_originatingLATA = -1; /* Digits */
-static int hf_lnpdqp_carrierID = -1; /* Digits */
+static int hf_lnpdqp_networkRoutingNumber; /* Digits */
+static int hf_lnpdqp_callingPartyANI; /* Digits */
+static int hf_lnpdqp_originatingLATA; /* Digits */
+static int hf_lnpdqp_carrierID; /* Digits */
#include "packet-lnpdqp-hf.c"
-static int ett_lnpdqp = -1;
-static int ett_lnpdqp_digitstype = -1;
-static int ett_lnpdqp_digits = -1;
+static int ett_lnpdqp;
+static int ett_lnpdqp_digitstype;
+static int ett_lnpdqp_digits;
#include "packet-lnpdqp-ett.c"
@@ -192,7 +192,7 @@ dissect_lnpdqp_digits_type(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tr
if(no_of_digits == 0)
return;
offset++;
- proto_tree_add_item_ret_display_string(subtree, hf_lnpdqp_bcd_digits, tvb, offset, -1, ENC_KEYPAD_BC_TBCD, pinfo->pool, &digit_str);
+ proto_tree_add_item_ret_display_string(subtree, hf_lnpdqp_bcd_digits, tvb, offset, -1, ENC_KEYPAD_BC_TBCD|ENC_LITTLE_ENDIAN, pinfo->pool, &digit_str);
proto_item_append_text(actx->created_item, " - %s", digit_str);
break;
case 2:
@@ -202,7 +202,7 @@ dissect_lnpdqp_digits_type(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tr
if(no_of_digits == 0)
return;
offset++;
- proto_tree_add_item(subtree, hf_lnpdqp_ia5_digits, tvb, offset, -1, ENC_ASCII|ENC_NA);
+ proto_tree_add_item(subtree, hf_lnpdqp_ia5_digits, tvb, offset, -1, ENC_ASCII);
proto_item_append_text(actx->created_item, " - %s", tvb_get_string_enc(pinfo->pool,tvb,offset,tvb_reported_length_remaining(tvb,offset), ENC_ASCII | ENC_NA));
break;
default:
diff --git a/epan/dissectors/asn1/logotypecertextn/packet-logotypecertextn-template.c b/epan/dissectors/asn1/logotypecertextn/packet-logotypecertextn-template.c
index a212905050..4564baf9bb 100644
--- a/epan/dissectors/asn1/logotypecertextn/packet-logotypecertextn-template.c
+++ b/epan/dissectors/asn1/logotypecertextn/packet-logotypecertextn-template.c
@@ -25,7 +25,7 @@ void proto_register_logotypecertextn(void);
void proto_reg_handoff_logotypecertextn(void);
/* Initialize the protocol and registered fields */
-static int proto_logotypecertextn = -1;
+static int proto_logotypecertextn;
#include "packet-logotypecertextn-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn b/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn
index 5790a66635..26b726d41b 100644
--- a/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn
+++ b/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 37.355 V16.6.0 (2021-09)
+-- 3GPP TS 37.355 V17.7.0 (2023-12)
LPP-Broadcast-Definitions
@@ -11,22 +11,22 @@ IMPORTS
OTDOA-NeighbourCellInfoList,
NR-TRP-LocationInfo-r16,
NR-DL-PRS-BeamInfo-r16,
- NR-RTD-Info-r16
+ NR-RTD-Info-r16
FROM LPP-PDU-Definitions;
AssistanceDataSIBelement-r15 ::= SEQUENCE {
valueTag-r15 INTEGER (0..63) OPTIONAL, -- Need OP
expirationTime-r15 UTCTime OPTIONAL, -- Need OP
- cipheringKeyData-r15 CipheringKeyData-r15 OPTIONAL, -- Need OP
+ cipheringKeyData-r15 CipheringKeyData-r15 OPTIONAL, -- Need OP
segmentationInfo-r15 SegmentationInfo-r15 OPTIONAL, -- Need OP
assistanceDataElement-r15 OCTET STRING,
...
}
CipheringKeyData-r15 ::= SEQUENCE {
- cipherSetID-r15 INTEGER (0..65535),
- d0-r15 BIT STRING (SIZE (1..128)),
+ cipherSetID-r15 INTEGER (0..65535),
+ d0-r15 BIT STRING (SIZE (1..128)),
...
}
@@ -46,7 +46,7 @@ OTDOA-UE-Assisted-r15 ::= SEQUENCE {
NR-UEB-TRP-LocationData-r16 ::= SEQUENCE {
- nr-trp-LocationInfo-r16 NR-TRP-LocationInfo-r16,
+ nr-trp-LocationInfo-r16 NR-TRP-LocationInfo-r16,
nr-dl-prs-BeamInfo-r16 NR-DL-PRS-BeamInfo-r16 OPTIONAL, -- Need ON
...
}
diff --git a/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn b/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn
index 7df273cf07..7d912d6068 100644
--- a/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn
+++ b/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn
@@ -1,9 +1,6 @@
--- 3GPP TS 37.355 V16.6.0 (2021-09)
-
-LPP-PDU-Definitions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
-eps-Access (21) modules (3) lpp (7) version1 (1) lpp-PDU-Definitions (1) }
+-- 3GPP TS 37.355 V17.7.0 (2023-12)
+LPP-PDU-Definitions
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -81,9 +78,9 @@ RequestCapabilities-r9-IEs ::= SEQUENCE {
]],
[[ nr-ECID-RequestCapabilities-r16 NR-ECID-RequestCapabilities-r16 OPTIONAL, -- Need ON
nr-Multi-RTT-RequestCapabilities-r16
- NR-Multi-RTT-RequestCapabilities-r16
+ NR-Multi-RTT-RequestCapabilities-r16
OPTIONAL, -- Need ON
- nr-DL-AoD-RequestCapabilities-r16
+ nr-DL-AoD-RequestCapabilities-r16
NR-DL-AoD-RequestCapabilities-r16 OPTIONAL, -- Need ON
nr-DL-TDOA-RequestCapabilities-r16
NR-DL-TDOA-RequestCapabilities-r16 OPTIONAL, -- Need ON
@@ -115,7 +112,7 @@ ProvideCapabilities-r9-IEs ::= SEQUENCE {
bt-ProvideCapabilities-r13 BT-ProvideCapabilities-r13 OPTIONAL
]],
[[ nr-ECID-ProvideCapabilities-r16 NR-ECID-ProvideCapabilities-r16 OPTIONAL,
- nr-Multi-RTT-ProvideCapabilities-r16
+ nr-Multi-RTT-ProvideCapabilities-r16
NR-Multi-RTT-ProvideCapabilities-r16 OPTIONAL,
nr-DL-AoD-ProvideCapabilities-r16
NR-DL-AoD-ProvideCapabilities-r16 OPTIONAL,
@@ -259,7 +256,7 @@ ProvideLocationInformation-r9-IEs ::= SEQUENCE {
NR-ECID-ProvideLocationInformation-r16 OPTIONAL,
nr-Multi-RTT-ProvideLocationInformation-r16
NR-Multi-RTT-ProvideLocationInformation-r16 OPTIONAL,
- nr-DL-AoD-ProvideLocationInformation-r16
+ nr-DL-AoD-ProvideLocationInformation-r16
NR-DL-AoD-ProvideLocationInformation-r16 OPTIONAL,
nr-DL-TDOA-ProvideLocationInformation-r16
NR-DL-TDOA-ProvideLocationInformation-r16 OPTIONAL
@@ -448,6 +445,32 @@ EPDU-Body ::= OCTET STRING
FreqBandIndicatorNR-r16 ::= INTEGER (1..1024)
+HA-EllipsoidPointWithAltitudeAndScalableUncertaintyEllipsoid-r16 ::= SEQUENCE {
+ degreesLatitude-r16 INTEGER(-2147483648..2147483647),
+ degreesLongitude-r16 INTEGER(-2147483648..2147483647),
+ altitude-r16 INTEGER(-64000..1280000),
+ uncertaintySemiMajor-r16 INTEGER (0..255),
+ uncertaintySemiMinor-r16 INTEGER (0..255),
+ orientationMajorAxis-r16 INTEGER (0..179),
+ horizontalConfidence-r16 INTEGER (0..100),
+ uncertaintyAltitude-r16 INTEGER (0..255),
+ verticalConfidence-r16 INTEGER (0..100),
+ ha-HorizontalExtendedRangeUsed-r16 BOOLEAN,
+ ha-VerticalExtendedRangeUsed-r16 BOOLEAN
+}
+
+
+HA-EllipsoidPointWithScalableUncertaintyEllipse-r16 ::= SEQUENCE {
+ degreesLatitude-r16 INTEGER(-2147483648..2147483647),
+ degreesLongitude-r16 INTEGER(-2147483648..2147483647),
+ uncertaintySemiMajor-r16 INTEGER (0..255),
+ uncertaintySemiMinor-r16 INTEGER (0..255),
+ orientationMajorAxis-r16 INTEGER (0..179),
+ confidence-r16 INTEGER (0..100),
+ ha-ExtendedUncertaintyRangeUsed-r16 BOOLEAN
+}
+
+
HighAccuracyEllipsoidPointWithUncertaintyEllipse-r15 ::= SEQUENCE {
degreesLatitude-r15 INTEGER(-2147483648..2147483647),
degreesLongitude-r15 INTEGER(-2147483648..2147483647),
@@ -516,13 +539,19 @@ LocationCoordinateTypes ::= SEQUENCE {
BOOLEAN OPTIONAL, -- Need ON
highAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid-r15
BOOLEAN OPTIONAL -- Need ON
+ ]],
+ [[
+ ha-EllipsoidPointWithScalableUncertaintyEllipse-r16
+ BOOLEAN OPTIONAL, -- Need ON
+ ha-EllipsoidPointWithAltitudeAndScalableUncertaintyEllipsoid-r16
+ BOOLEAN OPTIONAL -- Need ON
]]
}
NCGI-r15 ::= SEQUENCE {
- mcc-r15 SEQUENCE (SIZE (3)) OF INTEGER (0..9),
- mnc-r15 SEQUENCE (SIZE (2..3)) OF INTEGER (0..9),
+ mcc-r15 SEQUENCE (SIZE (3)) OF INTEGER (0..9),
+ mnc-r15 SEQUENCE (SIZE (2..3)) OF INTEGER (0..9),
nr-cellidentity-r15 BIT STRING (SIZE (36))
}
@@ -565,6 +594,29 @@ PositioningModes ::= SEQUENCE {
}
+ScheduledLocationTimeSupport-r17 ::= SEQUENCE {
+ utcTime-r17 ENUMERATED { supported } OPTIONAL,
+ gnssTime-r17 GNSS-ID-Bitmap OPTIONAL,
+ e-utraTime-r17 ENUMERATED { supported } OPTIONAL,
+ nrTime-r17 ENUMERATED { supported } OPTIONAL,
+ relativeTime-r17 ENUMERATED { supported } OPTIONAL,
+ ...
+}
+
+
+ScheduledLocationTimeSupportPerMode-r17 ::= SEQUENCE {
+ utcTime-r17 PositioningModes OPTIONAL,
+ gnssTime-r17 SEQUENCE {
+ posModes-r17 PositioningModes,
+ gnss-TimeIDs-r17 GNSS-ID-Bitmap
+ } OPTIONAL,
+ e-utraTime-r17 PositioningModes OPTIONAL,
+ nrTime-r17 PositioningModes OPTIONAL,
+ relativeTime-r17 PositioningModes OPTIONAL,
+ ...
+}
+
+
SegmentationInfo-r14 ::= ENUMERATED { noMoreMessages, moreMessagesOnTheWay }
@@ -638,6 +690,12 @@ CommonIEsRequestLocationInformation ::= SEQUENCE {
]],
[[
segmentationInfo-r14 SegmentationInfo-r14 OPTIONAL -- Need ON
+ ]],
+ [[
+ scheduledLocationTime-r17
+ ScheduledLocationTime-r17 OPTIONAL, -- Need ON
+ targetIntegrityRisk-r17
+ TargetIntegrityRisk-r17 OPTIONAL -- Need ON
]]
}
@@ -670,7 +728,7 @@ ReportingDuration ::= INTEGER (0..255)
AdditionalInformation ::= ENUMERATED {
onlyReturnInformationRequested,
- mayReturnAditionalInformation,
+ mayReturnAdditionalInformation,
...
}
@@ -679,7 +737,7 @@ QoS ::= SEQUENCE {
verticalCoordinateRequest BOOLEAN,
verticalAccuracy VerticalAccuracy OPTIONAL, -- Need ON
responseTime ResponseTime OPTIONAL, -- Need ON
- velocityRequest BOOLEAN,
+ velocityRequest BOOLEAN,
...,
[[ responseTimeNB-r14 ResponseTimeNB-r14 OPTIONAL -- Need ON
]],
@@ -714,10 +772,11 @@ VerticalAccuracyExt-r15 ::= SEQUENCE {
ResponseTime ::= SEQUENCE {
time INTEGER (1..128),
- ...,
+ ...,
[[ responseTimeEarlyFix-r12 INTEGER (1..128) OPTIONAL -- Need ON
]],
- [[ unit-r15 ENUMERATED { ten-seconds, ... } OPTIONAL -- Need ON
+ [[ unit-r15 ENUMERATED { ten-seconds, ... , ten-milli-seconds-v1700 }
+ OPTIONAL -- Need ON
]]
}
@@ -741,6 +800,39 @@ MessageSizeLimitNB-r14 ::= SEQUENCE {
...
}
+ScheduledLocationTime-r17 ::= SEQUENCE {
+ utcTime-r17 UTCTime OPTIONAL, -- Need ON
+ gnssTime-r17 SEQUENCE {
+ gnss-TOD-msec-r17 INTEGER (0..3599999),
+ gnss-TimeID-r17 GNSS-ID
+ } OPTIONAL, -- Need ON
+ networkTime-r17 CHOICE {
+ e-utraTime-r17 SEQUENCE {
+ lte-PhysCellId-r17 INTEGER (0..503),
+ lte-ArfcnEUTRA-r17 ARFCN-ValueEUTRA,
+ lte-CellGlobalId-r17 CellGlobalIdEUTRA-AndUTRA
+ OPTIONAL, -- Need ON
+ lte-SystemFrameNumber-r17 INTEGER (0..1023)
+ },
+ nrTime-r17 SEQUENCE {
+ nr-PhysCellID-r17 NR-PhysCellID-r16,
+ nr-ARFCN-r17 ARFCN-ValueNR-r15,
+ nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON
+ nr-SFN-r17 INTEGER (0..1023),
+ nr-Slot-r17 CHOICE {
+ scs15-r17 INTEGER (0..9),
+ scs30-r17 INTEGER (0..19),
+ scs60-r17 INTEGER (0..39),
+ scs120-r17 INTEGER (0..79)
+ } OPTIONAL -- Need ON
+ },
+ ...
+ } OPTIONAL, -- Need ON
+ relativeTime-r17 INTEGER (1..1024) OPTIONAL -- Need ON
+}
+
+TargetIntegrityRisk-r17 ::= INTEGER (10..90)
+
CommonIEsProvideLocationInformation ::= SEQUENCE {
locationEstimate LocationCoordinates OPTIONAL,
@@ -754,6 +846,9 @@ CommonIEsProvideLocationInformation ::= SEQUENCE {
]],
[[
segmentationInfo-r14 SegmentationInfo-r14 OPTIONAL -- Cond Segmentation
+ ]],
+ [[
+ integrityInfo-r17 IntegrityInfo-r17 OPTIONAL
]]
}
@@ -770,7 +865,10 @@ LocationCoordinates ::= CHOICE {
highAccuracyEllipsoidPointWithUncertaintyEllipse-v1510
HighAccuracyEllipsoidPointWithUncertaintyEllipse-r15,
highAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid-v1510
- HighAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid-r15
+ HighAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid-r15,
+ ha-EllipsoidPointWithScalableUncertaintyEllipse-v1680 HA-EllipsoidPointWithScalableUncertaintyEllipse-r16,
+ ha-EllipsoidPointWithAltitudeAndScalableUncertaintyEllipsoid-v1680
+ HA-EllipsoidPointWithAltitudeAndScalableUncertaintyEllipsoid-r16
}
Velocity ::= CHOICE {
@@ -807,9 +905,16 @@ LocationSource-r13 ::= BIT STRING { a-gnss (0),
sensor (4),
ha-gnss-v1510 (5),
motion-sensor-v1550 (6),
- dl-tdoa-r16 (7),
+ dl-tdoa-r16 (7),
dl-aod-r16 (8) } (SIZE(1..16))
+IntegrityInfo-r17 ::= SEQUENCE {
+ horizontalProtectionLevel-r17 INTEGER (0..50000),
+ verticalProtectionLevel-r17 INTEGER (0..50000) OPTIONAL,
+ achievableTargetIntegrityRisk-r17 INTEGER (10..90) OPTIONAL,
+ ...
+}
+
CommonIEsAbort ::= SEQUENCE {
abortCause ENUMERATED {
@@ -836,6 +941,16 @@ CommonIEsError ::= SEQUENCE {
}
+AreaID-CellList-r17 ::= SEQUENCE (SIZE(1..maxCellIDsPerArea-r17)) OF NR-Cell-IDs-r17
+
+NR-Cell-IDs-r17 ::= SEQUENCE {
+ nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON
+ nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON
+ nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON
+ ...
+}
+
+
DL-PRS-ID-Info-r16 ::= SEQUENCE {
dl-PRS-ID-r16 INTEGER (0..255),
nr-DL-PRS-ResourceID-List-r16 SEQUENCE (SIZE (1..nrMaxResourceIDs-r16)) OF
@@ -846,8 +961,42 @@ DL-PRS-ID-Info-r16 ::= SEQUENCE {
}
+LCS-GCS-TranslationParameter-r16 ::= SEQUENCE {
+ alpha-r16 INTEGER (0..359),
+ alpha-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine
+ beta-r16 INTEGER (0..359),
+ beta-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine
+ gamma-r16 INTEGER (0..359),
+ gamma-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine
+ ...
+}
+
+
+LOS-NLOS-Indicator-r17 ::= SEQUENCE {
+ indicator-r17 CHOICE {
+ soft-r17 INTEGER (0..10),
+ hard-r17 BOOLEAN
+ },
+ ...
+}
+
+
+LOS-NLOS-IndicatorGranularity1-r17 ::= ENUMERATED { trpspecific, resourcespecific }
+
+
+LOS-NLOS-IndicatorGranularity2-r17 ::= ENUMERATED { trpspecific, resourcespecific, both }
+
+
+LOS-NLOS-IndicatorType1-r17 ::= ENUMERATED { hardvalue, softvalue }
+
+
+LOS-NLOS-IndicatorType2-r17 ::= ENUMERATED { hardvalue, hardAndsoftvalue }
+
+
NR-AdditionalPathList-r16 ::= SEQUENCE (SIZE(1..2)) OF NR-AdditionalPath-r16
+NR-AdditionalPathListExt-r17 ::= SEQUENCE (SIZE(1..8)) OF NR-AdditionalPath-r16
+
NR-AdditionalPath-r16 ::= SEQUENCE {
nr-RelativeTimeDifference-r16 CHOICE {
k0-r16 INTEGER(0..16351),
@@ -859,12 +1008,15 @@ NR-AdditionalPath-r16 ::= SEQUENCE {
...
},
nr-PathQuality-r16 NR-TimingQuality-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-DL-PRS-RSRPP-r17 INTEGER (0..126) OPTIONAL
+ ]]
}
NR-DL-PRS-AssistanceData-r16 ::= SEQUENCE {
- nr-DL-PRS-ReferenceInfo-r16 DL-PRS-ID-Info-r16,
+ nr-DL-PRS-ReferenceInfo-r16 DL-PRS-ID-Info-r16,
nr-DL-PRS-AssistanceDataList-r16 SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
NR-DL-PRS-AssistanceDataPerFreq-r16,
nr-SSB-Config-r16 SEQUENCE (SIZE (1..nrMaxTRPs-r16)) OF
@@ -873,7 +1025,7 @@ NR-DL-PRS-AssistanceData-r16 ::= SEQUENCE {
}
NR-DL-PRS-AssistanceDataPerFreq-r16 ::= SEQUENCE {
- nr-DL-PRS-PositioningFrequencyLayer-r16
+ nr-DL-PRS-PositioningFrequencyLayer-r16
NR-DL-PRS-PositioningFrequencyLayer-r16,
nr-DL-PRS-AssistanceDataPerFreq-r16 SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
NR-DL-PRS-AssistanceDataPerTRP-r16,
@@ -892,7 +1044,11 @@ NR-DL-PRS-AssistanceDataPerTRP-r16 ::= SEQUENCE {
nr-DL-PRS-Info-r16 NR-DL-PRS-Info-r16,
...,
[[
- prs-OnlyTP-r16 ENUMERATED { true } OPTIONAL -- Need ON
+ prs-OnlyTP-r16 ENUMERATED { true } OPTIONAL -- Need ON
+ ]],
+ [[
+ nr-DL-PRS-ExpectedAoD-or-AoA-r17
+ NR-DL-PRS-ExpectedAoD-or-AoA-r17 OPTIONAL -- Need ON
]]
}
@@ -909,7 +1065,23 @@ NR-DL-PRS-PositioningFrequencyLayer-r16 ::= SEQUENCE {
NR-DL-PRS-SFN0-Offset-r16 ::= SEQUENCE {
sfn-Offset-r16 INTEGER (0..1023),
integerSubframeOffset-r16 INTEGER (0..9),
- ...}
+ ...
+}
+
+NR-DL-PRS-ExpectedAoD-or-AoA-r17 ::= CHOICE {
+ expectedAoD-r17 SEQUENCE {
+ expectedDL-AzimuthAoD-r17 INTEGER (0..359),
+ expectedDL-AzimuthAoD-Unc-r17 INTEGER (0..60) OPTIONAL, -- Need OP
+ expectedDL-ZenithAoD-r17 INTEGER (0..180),
+ expectedDL-ZenithAoD-Unc-r17 INTEGER (0..30) OPTIONAL -- Need OP
+ },
+ expectedAoA-r17 SEQUENCE {
+ expectedDL-AzimuthAoA-r17 INTEGER (0..359),
+ expectedDL-AzimuthAoA-Unc-r17 INTEGER (0..60) OPTIONAL, -- Need OP
+ expectedDL-ZenithAoA-r17 INTEGER (0..180),
+ expectedDL-ZenithAoA-Unc-r17 INTEGER (0..30) OPTIONAL -- Need OP
+ }
+}
NR-DL-PRS-BeamInfo-r16 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
@@ -924,7 +1096,7 @@ NR-DL-PRS-BeamInfoPerTRP-r16 ::= SEQUENCE {
nr-CellGlobalID-r16 NCGI-r15 OPTIONAL, -- Need ON
nr-ARFCN-r16 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON
associated-DL-PRS-ID-r16 INTEGER (0..255) OPTIONAL, -- Need OP
- lcs-GCS-TranslationParameter-r16 LCS-GCS-TranslationParameter-r16
+ lcs-GCS-TranslationParameter-r16 LCS-GCS-TranslationParameter-r16
OPTIONAL, -- Need OP
dl-PRS-BeamInfoSet-r16 DL-PRS-BeamInfoSet-r16 OPTIONAL, -- Need OP
...
@@ -944,16 +1116,30 @@ DL-PRS-BeamInfoElement-r16 ::= SEQUENCE {
...
}
-LCS-GCS-TranslationParameter-r16 ::= SEQUENCE {
- alpha-r16 INTEGER (0..359),
- alpha-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine
- beta-r16 INTEGER (0..359),
- beta-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine
- gamma-r16 INTEGER (0..359),
- gamma-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine
+
+NR-DL-PRS-ExpectedLOS-NLOS-Assistance-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
+ NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerFreqLayer-r17
+
+NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerFreqLayer-r17 ::=
+ SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
+ NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerTRP-r17
+
+NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerTRP-r17 ::= SEQUENCE {
+ dl-PRS-ID-r17 INTEGER (0..255),
+ nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON
+ nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON
+ nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON
+ nr-los-nlos-indicator-r17 CHOICE {
+ perTrp-r17 LOS-NLOS-Indicator-r17,
+ perResource-r17 SEQUENCE (SIZE (1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF
+ NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerResource-r17 },
...
}
+NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerResource-r17 ::=
+ SEQUENCE (SIZE (1..nrMaxResourcesPerSet-r16)) OF
+ LOS-NLOS-Indicator-r17
+
NR-DL-PRS-Info-r16 ::= SEQUENCE {
nr-DL-PRS-ResourceSetList-r16 SEQUENCE (SIZE (1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF
@@ -968,11 +1154,11 @@ NR-DL-PRS-ResourceSet-r16 ::= SEQUENCE {
dl-PRS-ResourceRepetitionFactor-r16 ENUMERATED {n2, n4, n6, n8, n16, n32, ...}
OPTIONAL, -- Need OP
dl-PRS-ResourceTimeGap-r16 ENUMERATED {s1, s2, s4, s8, s16, s32, ...}
- OPTIONAL, -- Cond Rep
+ OPTIONAL, -- Cond Rep
dl-PRS-NumSymbols-r16 ENUMERATED {n2, n4, n6, n12, ...},
dl-PRS-MutingOption1-r16 DL-PRS-MutingOption1-r16 OPTIONAL, -- Need OP
dl-PRS-MutingOption2-r16 DL-PRS-MutingOption2-r16 OPTIONAL, -- Need OP
- dl-PRS-ResourcePower-r16 INTEGER (-60..50),
+ dl-PRS-ResourcePower-r16 INTEGER (-60..50),
dl-PRS-ResourceList-r16 SEQUENCE (SIZE (1..nrMaxResourcesPerSet-r16)) OF
NR-DL-PRS-Resource-r16,
...
@@ -1012,8 +1198,11 @@ NR-DL-PRS-Resource-r16 ::= SEQUENCE {
},
dl-PRS-ResourceSlotOffset-r16 INTEGER (0..nrMaxResourceOffsetValue-1-r16),
dl-PRS-ResourceSymbolOffset-r16 INTEGER (0..12),
- dl-PRS-QCL-Info-r16 DL-PRS-QCL-Info-r16 OPTIONAL, --Need ON
- ...
+ dl-PRS-QCL-Info-r16 DL-PRS-QCL-Info-r16 OPTIONAL, --Need ON
+ ...,
+ [[
+ dl-PRS-ResourcePrioritySubset-r17 DL-PRS-ResourcePrioritySubset-r17 OPTIONAL -- Need ON
+ ]]
}
DL-PRS-QCL-Info-r16 ::= CHOICE {
@@ -1112,13 +1301,25 @@ NR-DL-PRS-Periodicity-and-ResourceSetSlotOffset-r16 ::= CHOICE {
...
}
+DL-PRS-ResourcePrioritySubset-r17 ::= SEQUENCE (SIZE (1..maxNumPrioResources-r17)) OF
+ NR-DL-PRSResourcePriorityItem-r17
+
+NR-DL-PRSResourcePriorityItem-r17 ::= SEQUENCE {
+ nr-DL-PRS-PrioResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, -- Cond NotSame
+ nr-DL-PRS-PrioResourceID-r17 NR-DL-PRS-ResourceID-r16,
+ ...
+}
+
NR-DL-PRS-ProcessingCapability-r16 ::= SEQUENCE {
prs-ProcessingCapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
PRS-ProcessingCapabilityPerBand-r16,
maxSupportedFreqLayers-r16 INTEGER (1..4),
- simulLTE-NR-PRS-r16 ENUMERATED { supported} OPTIONAL,
- ...
+ simulLTE-NR-PRS-r16 ENUMERATED { supported } OPTIONAL,
+ ...,
+ [[
+ dummy ENUMERATED { m1, m2, ... } OPTIONAL
+ ]]
}
PRS-ProcessingCapabilityPerBand-r16 ::= SEQUENCE {
@@ -1129,12 +1330,12 @@ PRS-ProcessingCapabilityPerBand-r16 ::= SEQUENCE {
fr2 ENUMERATED {mhz50, mhz100, mhz200, mhz400},
...
},
- dl-PRS-BufferType-r16 ENUMERATED {type1, type2, ...},
+ dl-PRS-BufferType-r16 ENUMERATED {type1, type2, ...},
durationOfPRS-Processing-r16 SEQUENCE {
durationOfPRS-ProcessingSymbols-r16 ENUMERATED {nDot125, nDot25, nDot5, n1,
n2, n4, n6, n8, n12, n16, n20, n25,
n30, n32, n35, n40, n45, n50},
- durationOfPRS-ProcessingSymbolsInEveryTms-r16
+ durationOfPRS-ProcessingSymbolsInEveryTms-r16
ENUMERATED {n8, n16, n20, n30, n40, n80,
n160,n320, n640, n1280},
...
@@ -1148,9 +1349,98 @@ PRS-ProcessingCapabilityPerBand-r16 ::= SEQUENCE {
n48, n64} OPTIONAL,
scs120-r16 ENUMERATED {n1, n2, n4, n8, n16, n24, n32,
n48, n64} OPTIONAL,
+ ...,
+ [[
+ scs15-v1690 ENUMERATED {n6, n12} OPTIONAL,
+ scs30-v1690 ENUMERATED {n6, n12} OPTIONAL,
+ scs60-v1690 ENUMERATED {n6, n12} OPTIONAL,
+ scs120-v1690 ENUMERATED {n6, n12} OPTIONAL
+ ]]
+ },
+ ...,
+ [[
+ supportedDL-PRS-ProcessingSamples-RRC-CONNECTED-r17 ENUMERATED { supported } OPTIONAL,
+ prs-ProcessingWindowType1A-r17 ENUMERATED { option1, option2, option3} OPTIONAL,
+ prs-ProcessingWindowType1B-r17 ENUMERATED { option1, option2, option3} OPTIONAL,
+ prs-ProcessingWindowType2-r17 ENUMERATED { option1, option2, option3} OPTIONAL,
+ prs-ProcessingCapabilityOutsideMGinPPW-r17
+ SEQUENCE (SIZE(1..3)) OF
+ PRS-ProcessingCapabilityOutsideMGinPPWperType-r17
+ OPTIONAL,
+ dl-PRS-BufferType-RRC-Inactive-r17 ENUMERATED { type1, type2, ... } OPTIONAL,
+ durationOfPRS-Processing-RRC-Inactive-r17 SEQUENCE {
+ durationOfPRS-ProcessingSymbols-r17 ENUMERATED {nDot125, nDot25, nDot5, n1,
+ n2, n4, n6, n8, n12, n16, n20, n25,
+ n30, n32, n35, n40, n45, n50},
+ durationOfPRS-ProcessingSymbolsInEveryTms-r17
+ ENUMERATED {n8, n16, n20, n30, n40, n80,
+ n160,n320, n640, n1280},
+ ...
+ } OPTIONAL,
+ maxNumOfDL-PRS-ResProcessedPerSlot-RRC-Inactive-r17 SEQUENCE {
+ scs15-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24,
+ n32, n48, n64} OPTIONAL,
+ scs30-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24,
+ n32, n48, n64} OPTIONAL,
+ scs60-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24,
+ n32, n48, n64} OPTIONAL,
+ scs120-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24,
+ n32, n48, n64} OPTIONAL,
+ ...
+ } OPTIONAL,
+ supportedLowerRxBeamSweepingFactor-FR2-r17 ENUMERATED { n1, n2, n4, n6 } OPTIONAL
+ ]],
+ [[
+ supportedDL-PRS-ProcessingSamples-RRC-Inactive-r17 ENUMERATED { supported } OPTIONAL
+ ]],
+ [[
+ prs-MeasurementWithoutMG-r17 ENUMERATED {cp, symbolDot25, symbolDot5,
+ slotDot5} OPTIONAL
+ ]]
+}
+
+PRS-ProcessingCapabilityOutsideMGinPPWperType-r17 ::= SEQUENCE {
+ prsProcessingType-r17 ENUMERATED { type1A, type1B, type2 },
+ ppw-dl-PRS-BufferType-r17 ENUMERATED { type1, type2, ... },
+ ppw-durationOfPRS-Processing1-r17 SEQUENCE {
+ ppw-durationOfPRS-ProcessingSymbolsN-r17
+ ENUMERATED { msDot125, msDot25, msDot5, ms1, ms2, ms4,
+ ms6, ms8, ms12, ms16, ms20, ms25, ms30, ms32, ms35,
+ ms40, ms45, ms50 },
+ ppw-durationOfPRS-ProcessingSymbolsT-r17
+ ENUMERATED { ms1, ms2, ms4, ms8, ms16, ms20, ms30, ms40, ms80,
+ ms160, ms320, ms640, ms1280 }
+ } OPTIONAL,
+ ppw-durationOfPRS-Processing2-r17 SEQUENCE {
+ ppw-durationOfPRS-ProcessingSymbolsN2-r17
+ ENUMERATED { msDot125, msDot25, msDot5, ms1, ms2, ms3, ms4, ms5,
+ ms6, ms8, ms12 },
+ ppw-durationOfPRS-ProcessingSymbolsT2-r17
+ ENUMERATED { ms4, ms5, ms6, ms8 }
+ } OPTIONAL,
+ ppw-maxNumOfDL-PRS-ResProcessedPerSlot-r17 SEQUENCE {
+ scs15-r17 ENUMERATED {n1, n2, n4, n6, n8, n12,
+ n16, n24, n32, n48, n64 }
+ OPTIONAL,
+ scs30-r17 ENUMERATED {n1, n2, n4, n6, n8, n12,
+ n16, n24, n32, n48, n64 }
+ OPTIONAL,
+ scs60-r17 ENUMERATED {n1, n2, n4, n6, n8, n12,
+ n16, n24, n32, n48, n64 }
+ OPTIONAL,
+ scs120-r17 ENUMERATED {n1, n2, n4, n6, n8, n12,
+ n16, n24, n32, n48, n64 }
+ OPTIONAL,
...
},
- ...
+ ...,
+ [[
+ ppw-maxNumOfDL-Bandwidth-r17 CHOICE {
+ fr1 ENUMERATED {mhz5, mhz10, mhz20, mhz40,
+ mhz50, mhz80, mhz100},
+ fr2 ENUMERATED {mhz50, mhz100, mhz200, mhz400}
+ } OPTIONAL
+ ]]
}
@@ -1172,10 +1462,10 @@ NR-DL-PRS-ResourceID-r16 ::= INTEGER (0..nrMaxNumDL-PRS-ResourcesPerSet-1-r16)
NR-DL-PRS-ResourcesCapability-r16 ::= SEQUENCE {
- maxNrOfDL-PRS-ResourceSetPerTrpPerFrequencyLayer-r16
+ maxNrOfDL-PRS-ResourceSetPerTrpPerFrequencyLayer-r16
INTEGER (1..2),
maxNrOfTRP-AcrossFreqs-r16 ENUMERATED { n4, n6, n12, n16, n32,
- n64, n128, n256, ...},
+ n64, n128, n256, ..., n24-v1690},
maxNrOfPosLayer-r16 INTEGER (1..4),
dl-PRS-ResourcesCapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
DL-PRS-ResourcesCapabilityPerBand-r16,
@@ -1186,7 +1476,7 @@ NR-DL-PRS-ResourcesCapability-r16 ::= SEQUENCE {
DL-PRS-ResourcesCapabilityPerBand-r16 ::= SEQUENCE {
freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16,
maxNrOfDL-PRS-ResourcesPerResourceSet-r16 ENUMERATED { n1, n2, n4, n8, n16, n32, n64, ...},
- maxNrOfDL-PRS-ResourcesPerPositioningFrequencylayer-r16
+ maxNrOfDL-PRS-ResourcesPerPositioningFrequencylayer-r16
ENUMERATED { n6, n24, n32, n64, n96, n128,
n256, n512, n1024, ...},
...
@@ -1198,7 +1488,7 @@ DL-PRS-ResourcesBandCombinationList-r16 ::= SEQUENCE (SIZE (1..maxBandComb-r16))
DL-PRS-ResourcesBandCombination-r16 ::= SEQUENCE {
bandList-r16 SEQUENCE (SIZE (1..maxSimultaneousBands-r16)) OF
FreqBandIndicatorNR-r16,
- maxNrOfDL-PRS-ResourcesAcrossAllFL-TRP-ResourceSet-r16
+ maxNrOfDL-PRS-ResourcesAcrossAllFL-TRP-ResourceSet-r16
CHOICE {
fr1-Only-r16 ENUMERATED {n6, n24, n64, n128, n192,
n256, n512, n1024, n2048},
@@ -1220,11 +1510,142 @@ DL-PRS-ResourcesBandCombination-r16 ::= SEQUENCE {
NR-DL-PRS-ResourceSetID-r16 ::= INTEGER (0..nrMaxNumDL-PRS-ResourceSetsPerTRP-1-r16)
+NR-DL-PRS-TRP-TEG-Info-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
+ NR-DL-PRS-TRP-TEG-InfoPerFreqLayer-r17
+
+NR-DL-PRS-TRP-TEG-InfoPerFreqLayer-r17 ::= SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
+ NR-DL-PRS-TRP-TEG-InfoPerTRP-r17
+
+NR-DL-PRS-TRP-TEG-InfoPerTRP-r17 ::= SEQUENCE {
+ dl-PRS-ID-r17 INTEGER (0..255),
+ nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON
+ nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON
+ nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON
+ dl-PRS-TEG-InfoSet-r17 SEQUENCE (SIZE(1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF
+ DL-PRS-TEG-InfoPerResourceSet-r17,
+ ...,
+ [[
+ nr-TRP-TxTEG-TimingErrorMargin-r17 TEG-TimingErrorMargin-r17 OPTIONAL -- Need ON
+ ]]
+}
+
+DL-PRS-TEG-InfoPerResourceSet-r17 ::= SEQUENCE (SIZE(1..nrMaxResourcesPerSet-r16)) OF
+ DL-PRS-TEG-InfoElement-r17
+
+DL-PRS-TEG-InfoElement-r17 ::= SEQUENCE {
+ dl-prs-trp-Tx-TEG-ID-r17 INTEGER (0..maxNumOfTRP-TxTEGs-1-r17),
+ ...
+}
+
+
+NR-On-Demand-DL-PRS-Configurations-r17 ::= SEQUENCE {
+ on-demand-dl-prs-configuration-list-r17 SEQUENCE (SIZE (1..maxOD-DL-PRS-Configs-r17)) OF
+ On-Demand-DL-PRS-Configuration-r17,
+ ...
+}
+
+On-Demand-DL-PRS-Configuration-r17 ::= SEQUENCE {
+ dl-prs-configuration-id-r17 DL-PRS-Configuration-ID-r17,
+ nr-DL-PRS-PositioningFrequencyLayer-r17 NR-DL-PRS-PositioningFrequencyLayer-r16,
+ nr-DL-PRS-Info-r17 NR-DL-PRS-Info-r16,
+ ...
+}
+
+DL-PRS-Configuration-ID-r17 ::= SEQUENCE {
+ nr-dl-prs-configuration-id-r17 INTEGER (1..maxOD-DL-PRS-Configs-r17),
+ ...
+}
+
+
+NR-On-Demand-DL-PRS-Information-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
+ NR-On-Demand-DL-PRS-PerFreqLayer-r17
+
+NR-On-Demand-DL-PRS-PerFreqLayer-r17 ::= SEQUENCE {
+ dl-prs-FrequencyRangeReq-r17 ENUMERATED { fr1, fr2, ...},
+ dl-prs-ResourceSetPeriodicityReq-r17 ENUMERATED { p4, p5, p8, p10, p16, p20, p32, p40,
+ p64, p80, p160, p320, p640, p1280, p2560,
+ p5120, p10240, p20480, p40960, p81920, ...,
+ p128-v1760, p256-v1760, p512-v1760}
+ OPTIONAL,
+ dl-prs-ResourceBandwidthReq-r17 INTEGER (1..63) OPTIONAL,
+ dl-prs-ResourceRepetitionFactorReq-r17 ENUMERATED {n2, n4, n6, n8, n16, n32, ...}
+ OPTIONAL,
+ dl-prs-NumSymbolsReq-r17 ENUMERATED {n2, n4, n6, n12, ...} OPTIONAL,
+ dl-prs-CombSizeN-Req-r17 ENUMERATED {n2, n4, n6, n12, ...} OPTIONAL,
+ dl-prs-QCL-InformationReqTRPlist-r17 DL-PRS-QCL-InformationReqTRPlist-r17 OPTIONAL,
+ ...
+}
+
+DL-PRS-QCL-InformationReqTRPlist-r17 ::= SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
+ DL-PRS-QCL-InformationReqPerTRP-r17
+
+DL-PRS-QCL-InformationReqPerTRP-r17 ::= SEQUENCE {
+ dl-PRS-ID-r17 INTEGER (0..255),
+ nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL,
+ nr-CellGlobalID-r17 NCGI-r15 OPTIONAL,
+ nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL,
+ dl-prs-QCL-InformationReqSet-r17 SEQUENCE (SIZE (1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF
+ DL-PRS-QCL-InfoReq-r17,
+ ...
+}
+
+DL-PRS-QCL-InfoReq-r17 ::= SEQUENCE {
+ nr-DL-PRS-ResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16,
+ dl-prs-QCL-InformationReq-r17 CHOICE {
+ dl-prs-QCL-InfoRecPerResourceSet-r17 DL-PRS-QCL-Info-r16,
+ dl-prs-QCL-Info-requested-r17 NULL
+ },
+ ...,
+ [[
+ dl-prs-QCL-InfoRecPerResource-r17 SEQUENCE (SIZE (1..nrMaxResourcesPerSet-r16)) OF
+ DL-PRS-QCL-Info-r16 OPTIONAL
+ ]]
+}
+
+
+NR-On-Demand-DL-PRS-Request-r17 ::= SEQUENCE {
+ dl-prs-StartTime-and-Duration-r17 DL-PRS-StartTime-and-Duration-r17 OPTIONAL,
+ nr-on-demand-DL-PRS-Information-r17 NR-On-Demand-DL-PRS-Information-r17 OPTIONAL,
+ dl-prs-configuration-id-PrefList-r17 SEQUENCE (SIZE (1..maxOD-DL-PRS-Configs-r17)) OF
+ DL-PRS-Configuration-ID-r17 OPTIONAL,
+ ...
+}
+
+DL-PRS-StartTime-and-Duration-r17 ::= SEQUENCE {
+ dl-prs-start-time-r17 INTEGER (1..1024) OPTIONAL,
+ dl-prs-duration-r17 SEQUENCE {
+ seconds-r17 INTEGER (0..59) OPTIONAL,
+ minutes-r17 INTEGER (0..59) OPTIONAL,
+ hours-r17 INTEGER (0..23) OPTIONAL,
+ ...
+ } OPTIONAL,
+ ...
+}
+
+
+NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 ::=
+ SEQUENCE (SIZE (1..maxOD-DL-PRS-Configs-r17)) OF
+ DL-PRS-Configuration-ID-r17
+
+
+NR-On-Demand-DL-PRS-Support-r17 ::= SEQUENCE {
+ nr-on-demand-DL-PRS-InformationSup-r17 ENUMERATED { supported } OPTIONAL,
+ nr-on-demand-DL-PRS-ConfigurationsSup-r17 ENUMERATED { supported } OPTIONAL,
+ ...
+}
+
NR-PositionCalculationAssistance-r16 ::= SEQUENCE {
- nr-TRP-LocationInfo-r16 NR-TRP-LocationInfo-r16 OPTIONAL, -- Need ON
+ nr-TRP-LocationInfo-r16 NR-TRP-LocationInfo-r16 OPTIONAL, -- Need ON
nr-DL-PRS-BeamInfo-r16 NR-DL-PRS-BeamInfo-r16 OPTIONAL, -- Need ON
nr-RTD-Info-r16 NR-RTD-Info-r16 OPTIONAL, -- Need ON
- ...
+ ...,
+ [[
+ nr-TRP-BeamAntennaInfo-r17 NR-TRP-BeamAntennaInfo-r17 OPTIONAL, -- Need ON
+ nr-DL-PRS-Expected-LOS-NLOS-Assistance-r17
+ NR-DL-PRS-ExpectedLOS-NLOS-Assistance-r17
+ OPTIONAL, -- Need ON
+ nr-DL-PRS-TRP-TEG-Info-r17 NR-DL-PRS-TRP-TEG-Info-r17 OPTIONAL -- Need ON
+ ]]
}
NR-RTD-Info-r16 ::= SEQUENCE {
@@ -1267,7 +1688,7 @@ NR-SelectedDL-PRS-IndexList-r16 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
NR-SelectedDL-PRS-PerFreq-r16 ::= SEQUENCE {
nr-SelectedDL-PRS-FrequencyLayerIndex-r16 INTEGER (0..nrMaxFreqLayers-1-r16),
- nr-SelectedDL-PRS-IndexListPerFreq-r16 SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
+ nr-SelectedDL-PRS-IndexListPerFreq-r16 SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
NR-SelectedDL-PRS-IndexPerTRP-r16
OPTIONAL, --Need OP
...
@@ -1317,7 +1738,7 @@ NR-TimeStamp-r16 ::= SEQUENCE {
nr-CellGlobalID-r16 NCGI-r15 OPTIONAL, -- Need ON
nr-ARFCN-r16 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON
nr-SFN-r16 INTEGER (0..1023),
- nr-Slot-r16 CHOICE {
+ nr-Slot-r16 CHOICE {
scs15-r16 INTEGER (0..9),
scs30-r16 INTEGER (0..19),
scs60-r16 INTEGER (0..39),
@@ -1334,6 +1755,50 @@ NR-TimingQuality-r16 ::= SEQUENCE {
}
+NR-TRP-BeamAntennaInfo-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
+ NR-TRP-BeamAntennaInfoPerFreqLayer-r17
+
+NR-TRP-BeamAntennaInfoPerFreqLayer-r17 ::= SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF
+ NR-TRP-BeamAntennaInfoPerTRP-r17
+
+NR-TRP-BeamAntennaInfoPerTRP-r17 ::= SEQUENCE {
+ dl-PRS-ID-r17 INTEGER (0..255),
+ nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON
+ nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON
+ nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON
+ associated-DL-PRS-ID-r17 INTEGER (0..255) OPTIONAL, -- Need OP
+ lcs-GCS-TranslationParameter-r17 LCS-GCS-TranslationParameter-r16 OPTIONAL, -- Need OP
+ nr-TRP-BeamAntennaAngles-r17 NR-TRP-BeamAntennaAngles-r17 OPTIONAL, -- Need OP
+ ...
+}
+
+NR-TRP-BeamAntennaAngles-r17 ::= SEQUENCE (SIZE(1..3600)) OF
+ NR-TRP-BeamAntennaInfoAzimuthElevation-r17
+
+NR-TRP-BeamAntennaInfoAzimuthElevation-r17 ::= SEQUENCE {
+ azimuth-r17 INTEGER (0..359) OPTIONAL, -- Cond Az
+ azimuth-fine-r17 INTEGER (0..9) OPTIONAL, -- Cond AzOpt
+ elevationList-r17 SEQUENCE (SIZE(1..1801)) OF ElevationElement-R17,
+ ...
+}
+
+ElevationElement-R17 ::= SEQUENCE {
+ elevation-r17 INTEGER (0..180) OPTIONAL, -- Cond El
+ elevation-fine-r17 INTEGER (0..9) OPTIONAL, -- Cond ElOpt
+ beamPowerList-r17 SEQUENCE (SIZE (2..maxNumResourcesPerAngle-r17)) OF
+ BeamPowerElement-r17,
+ ...
+}
+
+BeamPowerElement-r17 ::= SEQUENCE {
+ nr-dl-prs-ResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, -- Need OP
+ nr-dl-prs-ResourceID-r17 NR-DL-PRS-ResourceID-r16,
+ nr-dl-prs-RelativePower-r17 INTEGER (0..30),
+ nr-dl-prs-RelativePowerFine-r17 INTEGER (0..9) OPTIONAL, -- Need ON
+ ...
+}
+
+
NR-TRP-LocationInfo-r16 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF
NR-TRP-LocationInfoPerFreqLayer-r16
@@ -1369,14 +1834,34 @@ DL-PRS-Resource-ARP-Element-r16 ::= SEQUENCE {
}
+NR-UE-TEG-Capability-r17 ::= SEQUENCE {
+ nr-UE-TEG-ID-CapabilityBandList-r17 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
+ NR-UE-TEG-ID-CapabilityPerBand-r17 OPTIONAL,
+ ...
+}
+
+NR-UE-TEG-ID-CapabilityPerBand-r17 ::= SEQUENCE {
+ freqBandIndicatorNR-r17 FreqBandIndicatorNR-r16,
+ nr-UE-RxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL,
+ nr-UE-TxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL,
+ nr-UE-RxTxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16,
+ n24, n32, n36, n48, n64} OPTIONAL,
+ measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17
+ ENUMERATED {n2, n3, n4, n6, n8} OPTIONAL,
+ measureSameDL-PRS-ResourceWithDifferentRxTEGsSimul-r17
+ ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL,
+ ...
+}
+
+
NR-UL-SRS-Capability-r16 ::= SEQUENCE {
srs-CapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
SRS-CapabilityPerBand-r16,
srs-PosResourceConfigCA-BandList-r16 SEQUENCE (SIZE (1..nrMaxConfiguredBands-r16)) OF
SRS-PosResourcesPerBand-r16 OPTIONAL,
- maxNumberSRS-PosPathLossEstimateAllServingCells-r16
+ maxNumberSRS-PosPathLossEstimateAllServingCells-r16
ENUMERATED {n1, n4, n8, n16} OPTIONAL,
- maxNumberSRS-PosSpatialRelationsAllServingCells-r16
+ maxNumberSRS-PosSpatialRelationsAllServingCells-r16
ENUMERATED {n0, n1, n2, n4, n8, n16} OPTIONAL,
...
}
@@ -1385,12 +1870,24 @@ SRS-CapabilityPerBand-r16 ::= SEQUENCE {
freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16,
olpc-SRS-Pos-r16 OLPC-SRS-Pos-r16 OPTIONAL,
spatialRelationsSRS-Pos-r16 SpatialRelationsSRS-Pos-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ posSRS-RRC-Inactive-InInitialUL-BWP-r17 PosSRS-RRC-Inactive-InInitialUL-BWP-r17 OPTIONAL,
+ posSRS-RRC-Inactive-OutsideInitialUL-BWP-r17
+ PosSRS-RRC-Inactive-OutsideInitialUL-BWP-r17
+ OPTIONAL,
+ olpc-SRS-PosRRC-Inactive-r17 OLPC-SRS-Pos-r16 OPTIONAL,
+ spatialRelationsSRS-PosRRC-Inactive-r17 SpatialRelationsSRS-Pos-r16 OPTIONAL
+ ]],
+ [[
+ posSRS-SP-RRC-Inactive-InInitialUL-BWP-r17 PosSRS-SP-RRC-Inactive-InInitialUL-BWP-r17
+ OPTIONAL
+ ]]
}
OLPC-SRS-Pos-r16 ::= SEQUENCE {
olpc-SRS-PosBasedOnPRS-Serving-r16 ENUMERATED {supported} OPTIONAL,
- olpc-SRS-PosBasedOnSSB-Neigh-r16 ENUMERATED {supported} OPTIONAL,
+ olpc-SRS-PosBasedOnSSB-Neigh-r16 ENUMERATED {supported} OPTIONAL,
olpc-SRS-PosBasedOnPRS-Neigh-r16 ENUMERATED {supported} OPTIONAL,
maxNumberPathLossEstimatePerServing-r16 ENUMERATED {n1, n4, n8, n16} OPTIONAL,
...
@@ -1418,11 +1915,75 @@ SRS-PosResourcesPerBand-r16 ::= SEQUENCE {
...
}
+PosSRS-RRC-Inactive-InInitialUL-BWP-r17 ::= SEQUENCE {
+ maxNumOfSRSposResourceSets-r17 ENUMERATED {n1, n2, n4, n8, n12, n16 } OPTIONAL,
+ maxNumOfPeriodicAndSemiPersistentSRSposResources-r17
+ ENUMERATED {n1, n2, n4, n8, n16, n32, n64 }
+ OPTIONAL,
+ maxNumOfPeriodicAndSemiPersistentSRSposResourcesPerSlot-r17
+ ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14}
+ OPTIONAL,
+ maxNumOfPeriodicSRSposResources-r17
+ ENUMERATED {n1, n2, n4, n8, n16, n32, n64 }
+ OPTIONAL,
+ maxNumOfPeriodicSRSposResourcesPerSlot-r17
+ ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14}
+ OPTIONAL,
+ dummy1 ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL,
+ dummy2 ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10, n12, n14 }
+ OPTIONAL,
+ ...
+}
+
+PosSRS-RRC-Inactive-OutsideInitialUL-BWP-r17 ::= SEQUENCE {
+ maxSRSposBandwidthForEachSCS-withinCC-FR1-r17
+ ENUMERATED { mhz5, mhz10, mhz15, mhz20, mhz25, mhz30,
+ mhz35, mhz40, mhz45, mhz50, mhz60, mhz70,
+ mhz80, mhz90, mhz100 } OPTIONAL,
+ maxSRSposBandwidthForEachSCS-withinCC-FR2-r17
+ ENUMERATED {mhz50, mhz100, mhz200, mhz400} OPTIONAL,
+ maxNumOfSRSposResourceSets-r17 ENUMERATED { n1, n2, n4, n8, n12, n16 } OPTIONAL,
+ maxNumOfPeriodicSRSposResources-r17 ENUMERATED { n1, n2, n4, n8, n16, n32, n64 }
+ OPTIONAL,
+ maxNumOfPeriodicSRSposResourcesPerSlot-r17
+ ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10, n12, n14 }
+ OPTIONAL,
+ differentNumerologyBetweenSRSposAndInitialBWP-r17
+ ENUMERATED { supported } OPTIONAL,
+ srsPosWithoutRestrictionOnBWP-r17
+ ENUMERATED { supported } OPTIONAL,
+ maxNumOfPeriodicAndSemiPersistentSRSposResources-r17
+ ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL,
+ maxNumOfPeriodicAndSemiPersistentSRSposResourcesPerSlot-r17
+ ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10,
+ n12, n14 } OPTIONAL,
+ differentCenterFreqBetweenSRSposAndInitialBWP-r17
+ ENUMERATED { supported } OPTIONAL,
+ maxNumOfSemiPersistentSRSposResources-r17
+ ENUMERATED { n1, n2, n4, n8, n16, n32, n64 }
+ OPTIONAL,
+ maxNumOfSemiPersistentSRSposResourcesPerSlot-r17
+ ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10,
+ n12, n14 } OPTIONAL,
+ switchingTimeSRS-TX-OtherTX-r17 ENUMERATED { us100, us140, us200, us300, us500 }
+ OPTIONAL,
+ ...
+}
+
+PosSRS-SP-RRC-Inactive-InInitialUL-BWP-r17 ::= SEQUENCE {
+ maxNumOfSemiPersistentSRSposResources-r17
+ ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL,
+ maxNumOfSemiPersistentSRSposResourcesPerSlot-r17
+ ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14}
+ OPTIONAL,
+ ...
+}
+
ReferencePoint-r16 ::= SEQUENCE {
- referencePointGeographicLocation-r16 CHOICE {
- location3D-r16 EllipsoidPointWithAltitudeAndUncertaintyEllipsoid,
- ha-location3D-r16 HighAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid-r15,
+ referencePointGeographicLocation-r16 CHOICE {
+ location3D-r16 EllipsoidPointWithAltitudeAndUncertaintyEllipsoid,
+ ha-location3D-r16 HighAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid-r15,
...
},
...
@@ -1430,7 +1991,7 @@ ReferencePoint-r16 ::= SEQUENCE {
RelativeLocation-r16 ::= SEQUENCE {
- milli-arc-second-units-r16 ENUMERATED { mas0-03, mas0-3, mas3, mas30, ...},
+ milli-arc-second-units-r16 ENUMERATED { mas0-03, mas0-3, mas3, mas30, ...},
height-units-r16 ENUMERATED {mm, cm, m, ...},
delta-latitude-r16 Delta-Latitude-r16,
delta-longitude-r16 Delta-Longitude-r16,
@@ -1465,14 +2026,22 @@ LocationUncertainty-r16 ::= SEQUENCE {
}
+TEG-TimingErrorMargin-r17 ::= ENUMERATED { tc0, tc2, tc4, tc6, tc8, tc12, tc16, tc20, tc24,
+ tc32, tc40, tc48, tc56, tc64, tc72, tc80 }
+
+
+RxTxTEG-TimingErrorMargin-r17 ::= ENUMERATED { tc0-5, tc1, tc2, tc4, tc8, tc12, tc16, tc20,
+ tc24, tc32, tc40, tc48, tc64, tc80, tc96, tc128 }
+
+
OTDOA-ProvideAssistanceData ::= SEQUENCE {
otdoa-ReferenceCellInfo OTDOA-ReferenceCellInfo OPTIONAL, -- Need ON
otdoa-NeighbourCellInfo OTDOA-NeighbourCellInfoList OPTIONAL, -- Need ON
otdoa-Error OTDOA-Error OPTIONAL, -- Need ON
...,
[[
- otdoa-ReferenceCellInfoNB-r14 OTDOA-ReferenceCellInfoNB-r14 OPTIONAL, -- Need ON
- otdoa-NeighbourCellInfoNB-r14 OTDOA-NeighbourCellInfoListNB-r14 OPTIONAL -- Need ON
+ otdoa-ReferenceCellInfoNB-r14 OTDOA-ReferenceCellInfoNB-r14 OPTIONAL, -- Need ON
+ otdoa-NeighbourCellInfoNB-r14 OTDOA-NeighbourCellInfoListNB-r14 OPTIONAL -- Need ON
]]
}
@@ -1489,13 +2058,13 @@ OTDOA-ReferenceCellInfo ::= SEQUENCE {
[[ earfcnRef-v9a0 ARFCN-ValueEUTRA-v9a0 OPTIONAL -- Cond NotSameAsServ2
]],
[[ tpId-r14 INTEGER (0..4095) OPTIONAL, -- Need ON
- cpLengthCRS-r14 ENUMERATED { normal, extended, ... }
+ cpLengthCRS-r14 ENUMERATED { normal, extended, ... }
OPTIONAL, -- Cond CRS
sameMBSFNconfigRef-r14 BOOLEAN OPTIONAL, -- Need ON
dlBandwidth-r14 ENUMERATED {n6, n15, n25, n50, n75, n100}
OPTIONAL, -- Cond NotSameAsServ3
addPRSconfigRef-r14 SEQUENCE (SIZE (1..maxAddPRSconfig-r14)) OF PRS-Info
- OPTIONAL -- Need ON
+ OPTIONAL -- Need ON
]],
[[
nr-LTE-SFN-Offset-r15 INTEGER (0..1023) OPTIONAL -- Cond NR
@@ -1559,7 +2128,7 @@ OTDOA-NeighbourCellInfoElement ::= SEQUENCE {
OPTIONAL, -- Cond NotSameAsRef1
prsInfo PRS-Info OPTIONAL, -- Cond NotSameAsRef2
antennaPortConfig ENUMERATED {ports-1-or-2, ports-4, ...}
- OPTIONAL, -- Cond NotsameAsRef3
+ OPTIONAL, -- Cond NotsameAsRef3
slotNumberOffset INTEGER (0..19) OPTIONAL, -- Cond NotSameAsRef4
prs-SubframeOffset INTEGER (0..1279) OPTIONAL, -- Cond InterFreq
expectedRSTD INTEGER (0..16383),
@@ -1569,7 +2138,7 @@ OTDOA-NeighbourCellInfoElement ::= SEQUENCE {
]],
[[ tpId-r14 INTEGER (0..4095) OPTIONAL, -- Need ON
prs-only-tp-r14 ENUMERATED { true } OPTIONAL, -- Cond TBS
- cpLengthCRS-r14 ENUMERATED { normal, extended, ... }
+ cpLengthCRS-r14 ENUMERATED { normal, extended, ... }
OPTIONAL, -- Cond CRS
sameMBSFNconfigNeighbour-r14 BOOLEAN OPTIONAL, -- Need ON
dlBandwidth-r14 ENUMERATED {n6, n15, n25, n50, n75, n100}
@@ -1619,7 +2188,7 @@ NPRS-Info-r14 ::= SEQUENCE {
partA-r14 SEQUENCE {
nprsBitmap-r14 CHOICE {
subframePattern10-r14 BIT STRING (SIZE (10)),
- subframePattern40-r14 BIT STRING (SIZE (40))
+ subframePattern40-r14 BIT STRING (SIZE (40))
},
nprs-MutingInfoA-r14 CHOICE {
po2-r14 BIT STRING (SIZE(2)),
@@ -1653,8 +2222,8 @@ NPRS-Info-r14 ::= SEQUENCE {
partA-TDD-r15 SEQUENCE {
nprsBitmap-r15 CHOICE {
subframePattern10-TDD-r15 BIT STRING (SIZE (8)),
- subframePattern40-TDD-r15 BIT STRING (SIZE (32)),
- ...
+ subframePattern40-TDD-r15 BIT STRING (SIZE (32)),
+ ...
},
nprs-MutingInfoA-r15 CHOICE {
po2-r15 BIT STRING (SIZE(2)),
@@ -1680,8 +2249,8 @@ OTDOA-NeighbourCellInfoNB-r14 ::= SEQUENCE {
carrierFreq-r14 CarrierFreq-NB-r14 OPTIONAL, -- Cond NotSameAsRef1
earfcn-r14 ARFCN-ValueEUTRA-r14 OPTIONAL, -- Cond Inband
eutra-NumCRS-Ports-r14 ENUMERATED {ports-1-or-2, ports-4, ...}
- OPTIONAL, -- Cond NotsameAsRef2
- otdoa-SIB1-NB-repetitions-r14 ENUMERATED { r4, r8, r16 }
+ OPTIONAL, -- Cond NotsameAsRef2
+ otdoa-SIB1-NB-repetitions-r14 ENUMERATED { r4, r8, r16 }
OPTIONAL, -- Cond NotSameAsRef3
nprsInfo-r14 PRS-Info-NB-r14 OPTIONAL, -- Cond NotsameAsRef4
nprs-slotNumberOffset-r14 INTEGER (0..19) OPTIONAL, -- Cond NotsameAsRef5
@@ -1705,7 +2274,7 @@ OTDOA-RequestAssistanceData ::= SEQUENCE {
physCellId INTEGER (0..503),
...,
[[
- adType-r14 BIT STRING { prs (0), nprs (1) } (SIZE (1..8)) OPTIONAL
+ adType-r14 BIT STRING { prs (0), nprs (1) } (SIZE (1..8)) OPTIONAL
]],
[[
nrPhysCellId-r15 INTEGER (0..1007) OPTIONAL
@@ -1736,7 +2305,7 @@ OTDOA-SignalMeasurementInformation ::= SEQUENCE {
]],
[[ tpIdRef-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer0
prsIdRef-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer1
- additionalPathsRef-r14
+ additionalPathsRef-r14
AdditionalPathList-r14 OPTIONAL,
nprsIdRef-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer2
carrierFreqOffsetNB-Ref-r14
@@ -1762,7 +2331,7 @@ NeighbourMeasurementElement ::= SEQUENCE {
[[ tpIdNeighbour-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer0
prsIdNeighbour-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer1
delta-rstd-r14 INTEGER (0..5) OPTIONAL,
- additionalPathsNeighbour-r14
+ additionalPathsNeighbour-r14
AdditionalPathList-r14 OPTIONAL,
nprsIdNeighbour-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer2
carrierFreqOffsetNB-Neighbour-r14
@@ -1810,7 +2379,7 @@ NeighbourMeasurementElement-NB-r14 ::= SEQUENCE {
tpIdNeighbour-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer0
prsIdNeighbour-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer1
delta-rstd-r14 INTEGER (0..5) OPTIONAL,
- additionalPathsNeighbour-r14
+ additionalPathsNeighbour-r14
AdditionalPathList-r14 OPTIONAL,
nprsIdNeighbour-r14 INTEGER (0..4095) OPTIONAL, -- Cond ProvidedByServer2
carrierFreqOffsetNB-Neighbour-r14
@@ -1872,7 +2441,8 @@ OTDOA-ProvideCapabilities ::= SEQUENCE {
idleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL,
numberOfRXantennas-r14 ENUMERATED { rx1, ... } OPTIONAL,
motionMeasurements-r15 ENUMERATED { supported } OPTIONAL,
- interRAT-RSTDmeasurement-r15 ENUMERATED { supported } OPTIONAL
+ interRAT-RSTDmeasurement-r15 ENUMERATED { supported } OPTIONAL,
+ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupport-r17 OPTIONAL
}
maxBands INTEGER ::= 64
@@ -1944,7 +2514,7 @@ GNSS-CommonAssistData ::= SEQUENCE {
[[
gnss-RTK-ReferenceStationInfo-r15
GNSS-RTK-ReferenceStationInfo-r15 OPTIONAL, -- Need ON
- gnss-RTK-CommonObservationInfo-r15
+ gnss-RTK-CommonObservationInfo-r15
GNSS-RTK-CommonObservationInfo-r15 OPTIONAL, -- Cond RTK
gnss-RTK-AuxiliaryStationData-r15
GNSS-RTK-AuxiliaryStationData-r15 OPTIONAL -- Need ON
@@ -1952,6 +2522,12 @@ GNSS-CommonAssistData ::= SEQUENCE {
[[
gnss-SSR-CorrectionPoints-r16
GNSS-SSR-CorrectionPoints-r16 OPTIONAL -- Need ON
+ ]],
+ [[
+ gnss-Integrity-ServiceParameters-r17
+ GNSS-Integrity-ServiceParameters-r17 OPTIONAL, -- Need ON
+ gnss-Integrity-ServiceAlert-r17
+ GNSS-Integrity-ServiceAlert-r17 OPTIONAL -- Need OR
]]
}
@@ -1960,7 +2536,7 @@ GNSS-GenericAssistData ::= SEQUENCE (SIZE (1..16)) OF GNSS-GenericAssistDataElem
GNSS-GenericAssistDataElement ::= SEQUENCE {
gnss-ID GNSS-ID,
- sbas-ID SBAS-ID OPTIONAL, -- Cond GNSS-ID-SBAS
+ sbas-ID SBAS-ID OPTIONAL, -- Cond GNSS-ID-SBAS
gnss-TimeModels GNSS-TimeModelList OPTIONAL, -- Need ON
gnss-DifferentialCorrections GNSS-DifferentialCorrections OPTIONAL, -- Need ON
gnss-NavigationModel GNSS-NavigationModel OPTIONAL, -- Need ON
@@ -1972,7 +2548,7 @@ GNSS-GenericAssistDataElement ::= SEQUENCE {
gnss-AuxiliaryInformation GNSS-AuxiliaryInformation OPTIONAL, -- Need ON
...,
[[
- bds-DifferentialCorrections-r12
+ bds-DifferentialCorrections-r12
BDS-DifferentialCorrections-r12 OPTIONAL, -- Cond GNSS-ID-BDS
bds-GridModel-r12 BDS-GridModelParameter-r12 OPTIONAL -- Cond GNSS-ID-BDS
]],
@@ -1993,14 +2569,21 @@ GNSS-GenericAssistDataElement ::= SEQUENCE {
[[
gnss-SSR-URA-r16 GNSS-SSR-URA-r16 OPTIONAL, -- Need ON
gnss-SSR-PhaseBias-r16 GNSS-SSR-PhaseBias-r16 OPTIONAL, -- Need ON
- gnss-SSR-STEC-Correction-r16 GNSS-SSR-STEC-Correction-r16
+ gnss-SSR-STEC-Correction-r16 GNSS-SSR-STEC-Correction-r16
OPTIONAL, -- Need ON
- gnss-SSR-GriddedCorrection-r16 GNSS-SSR-GriddedCorrection-r16
+ gnss-SSR-GriddedCorrection-r16 GNSS-SSR-GriddedCorrection-r16
OPTIONAL, -- Need ON
navic-DifferentialCorrections-r16 NavIC-DifferentialCorrections-r16
OPTIONAL, -- Cond GNSS-ID-NavIC
navic-GridModel-r16 NavIC-GridModelParameter-r16
OPTIONAL -- Cond GNSS-ID-NavIC
+ ]],
+ [[
+ gnss-SSR-OrbitCorrectionsSet2-r17
+ GNSS-SSR-OrbitCorrectionsSet2-r17 OPTIONAL, -- Need ON
+ gnss-SSR-ClockCorrectionsSet2-r17
+ GNSS-SSR-ClockCorrectionsSet2-r17 OPTIONAL, -- Need ON
+ gnss-SSR-URA-Set2-r17 GNSS-SSR-URA-Set2-r17 OPTIONAL -- Need ON
]]
}
@@ -2013,16 +2596,26 @@ GNSS-PeriodicAssistData-r15 ::= SEQUENCE {
gnss-RTK-PeriodicResiduals-r15 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
gnss-RTK-FKP-PeriodicGradients-r15 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
gnss-SSR-PeriodicOrbitCorrections-r15
- GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
gnss-SSR-PeriodicClockCorrections-r15
- GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
- gnss-SSR-PeriodicCodeBias-r15 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ gnss-SSR-PeriodicCodeBias-r15 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
...,
[[
gnss-SSR-PeriodicURA-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
- gnss-SSR-PeriodicPhaseBias-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
- gnss-SSR-PeriodicSTEC-Correction-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
- gnss-SSR-PeriodicGriddedCorrection-r16 GNSS-PeriodicControlParam-r15 OPTIONAL -- Need ON
+ gnss-SSR-PeriodicPhaseBias-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ gnss-SSR-PeriodicSTEC-Correction-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ gnss-SSR-PeriodicGriddedCorrection-r16 GNSS-PeriodicControlParam-r15 OPTIONAL -- Need ON
+ ]],
+ [[
+ gnss-Integrity-PeriodicServiceAlert-r17 GNSS-PeriodicControlParam-r15 OPTIONAL -- Need ON
+ ]],
+ [[
+ gnss-SSR-PeriodicOrbitCorrectionsSet2-r17
+ GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ gnss-SSR-PeriodicClockCorrectionsSet2-r17
+ GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON
+ gnss-SSR-PeriodicURA-Set2-r17 GNSS-PeriodicControlParam-r15 OPTIONAL -- Need ON
]]
}
@@ -2035,7 +2628,7 @@ GNSS-ReferenceTime ::= SEQUENCE {
...
}
-GNSS-ReferenceTimeForOneCell ::= SEQUENCE {
+GNSS-ReferenceTimeForOneCell ::= SEQUENCE {
networkTime NetworkTime,
referenceTimeUnc INTEGER (0..127),
bsAlign ENUMERATED {true} OPTIONAL,
@@ -2308,6 +2901,20 @@ GNSS-SSR-ArrayOfCorrectionPoints-r16 ::=SEQUENCE {
}
+GNSS-Integrity-ServiceParameters-r17 ::= SEQUENCE {
+ irMinimum-r17 INTEGER (0..255),
+ irMaximum-r17 INTEGER (0..255),
+ ...
+}
+
+
+GNSS-Integrity-ServiceAlert-r17 ::= SEQUENCE {
+ ionosphereDoNotUse-r17 BOOLEAN,
+ troposphereDoNotUse-r17 BOOLEAN,
+ ...
+}
+
+
GNSS-TimeModelList ::= SEQUENCE (SIZE (1..15)) OF GNSS-TimeModelElement
GNSS-TimeModelElement ::= SEQUENCE {
@@ -2342,11 +2949,11 @@ DGNSS-SatList ::= SEQUENCE (SIZE (1..64)) OF DGNSS-CorrectionsElement
DGNSS-CorrectionsElement ::= SEQUENCE {
svID SV-ID,
iod BIT STRING (SIZE(11)),
- udre INTEGER (0..3),
+ udre INTEGER (0..3),
pseudoRangeCor INTEGER (-2047..2047),
rangeRateCor INTEGER (-127..127),
udreGrowthRate INTEGER (0..7) OPTIONAL, -- Need ON
- udreValidityTime INTEGER (0..7) OPTIONAL, -- Need ON
+ udreValidityTime INTEGER (0..7) OPTIONAL, -- Need ON
...
}
@@ -2361,8 +2968,8 @@ GNSS-NavModelSatelliteList ::= SEQUENCE (SIZE(1..64)) OF GNSS-NavModelSatelliteE
GNSS-NavModelSatelliteElement ::= SEQUENCE {
svID SV-ID,
- svHealth BIT STRING (SIZE(8)),
- iod BIT STRING (SIZE(11)),
+ svHealth BIT STRING (SIZE(8)),
+ iod BIT STRING (SIZE(11)),
gnss-ClockModel GNSS-ClockModel,
gnss-OrbitModel GNSS-OrbitModel,
...,
@@ -2462,9 +3069,12 @@ BDS-ClockModel-r12 ::= SEQUENCE {
bdsA1-r12 INTEGER (-2097152..2097151),
bdsA2-r12 INTEGER (-1024..1023),
bdsTgd1-r12 INTEGER (-512..511),
- ...
+ ...,
+ [[ bdsTgd2-r16 INTEGER (-512..511) OPTIONAL -- Need ON
+ ]]
}
+
BDS-ClockModel2-r16 ::= SEQUENCE {
bdsToc-r16 INTEGER (0..2047),
bdsA0-r16 INTEGER (-16777216..16777215),
@@ -2472,7 +3082,10 @@ BDS-ClockModel2-r16 ::= SEQUENCE {
bdsA2-r16 INTEGER (-1024..1023),
bdsTgdB1Cp-r16 INTEGER (-2048..2047),
bdsIscB1Cd-r16 INTEGER (-2048..2047),
- ...
+ ...,
+ [[ bdsTgdB2ap-r17 INTEGER (-2048..2047) OPTIONAL, -- Need ON
+ bdsIscB2ad-r17 INTEGER (-2048..2047) OPTIONAL -- Need ON
+ ]]
}
@@ -2634,7 +3247,7 @@ NavModel-BDS-KeplerianSet2-r16 ::= SEQUENCE {
bdsOmega-r16 INTEGER (-4294967296..4294967295),
bdsOmega0-r16 INTEGER (-4294967296..4294967295),
bdsI0-r16 INTEGER (-4294967296..4294967295),
- bdsOmegaDot-r16 INTEGER (-262144..262143),
+ bdsOmegaDot-r16 INTEGER (-262144..262143),
bdsI0Dot-r16 INTEGER (-16384..16383),
bdsCuc-r16 INTEGER (-1048576..1048575),
bdsCus-r16 INTEGER (-1048576..1048575),
@@ -2655,7 +3268,7 @@ NavModel-NavIC-KeplerianSet-r16 ::= SEQUENCE {
navic-OmegaDot-r16 INTEGER (-2147483648..2147483647),
navic-E-r16 INTEGER (0..4294967295),
navic-IDot-r16 INTEGER (-8192..8191),
- navic-APowerHalf-r16 INTEGER (0.. 4294967295),
+ navic-APowerHalf-r16 INTEGER (0.. 4294967295),
navic-I0-r16 INTEGER (-2147483648..2147483647),
navic-Omega0-r16 INTEGER (-2147483648..2147483647),
navic-Crs-r16 INTEGER (-32768..32767),
@@ -2676,7 +3289,7 @@ GNSS-RealTimeIntegrity ::= SEQUENCE {
GNSS-BadSignalList ::= SEQUENCE (SIZE(1..64)) OF BadSignalElement
BadSignalElement ::= SEQUENCE {
- badSVID SV-ID,
+ badSVID SV-ID,
badSignalID GNSS-SignalIDs OPTIONAL, -- Need OP
...
}
@@ -2724,7 +3337,7 @@ GNSS-AcquisitionAssistElement ::= SEQUENCE {
intCodePhase INTEGER (0..127),
codePhaseSearchWindow INTEGER (0..31),
azimuth INTEGER (0..511),
- elevation INTEGER (0..127),
+ elevation INTEGER (0..127),
...,
codePhase1023 BOOLEAN OPTIONAL, -- Need OP
dopplerUncertaintyExt-r10 ENUMERATED { d60,
@@ -2881,7 +3494,7 @@ AlmanacBDS-AlmanacSet-r12 ::= SEQUENCE {
AlmanacNavIC-AlmanacSet-r16 ::= SEQUENCE {
svID-r16 SV-ID,
- navic-AlmToa-r16 INTEGER (0..65535) OPTIONAL, -- Cond NotSameForAllSV
+ navic-AlmToa-r16 INTEGER (0..65535) OPTIONAL, -- Cond NotSameForAllSV
navic-AlmE-r16 INTEGER (0..65535),
navic-AlmOMEGADOT-r16 INTEGER (-32768..32767),
navic-AlmSqrtA-r16 INTEGER (0..16777215),
@@ -2992,7 +3605,7 @@ GNSS-ID-GLONASS-SatElement ::= SEQUENCE {
signalsAvailable GNSS-SignalIDs,
channelNumber INTEGER (-7..13) OPTIONAL, -- Cond FDMA
...
-}
+}
GNSS-ID-BDS-r16 ::= SEQUENCE (SIZE(1..64)) OF GNSS-ID-BDS-SatElement-r16
@@ -3081,9 +3694,9 @@ GLO-RTK-BiasInformation-r15 ::= SEQUENCE{
referenceStationID-r15 GNSS-ReferenceStationID-r15,
cpbIndicator-r15 BIT STRING (SIZE(1)),
l1-ca-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
- l1-p-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
- l2-ca-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
- l2-p-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
+ l1-p-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
+ l2-ca-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
+ l2-p-cpBias-r15 INTEGER (-32768..32767) OPTIONAL, -- Need ON
...
}
@@ -3104,7 +3717,7 @@ RTK-CorrectionDifferencesList-r15 ::= SEQUENCE (SIZE (1..32)) OF
RTK-CorrectionDifferencesElement-r15 ::= SEQUENCE {
epochTime-r15 GNSS-SystemTime,
auxiliary-referenceStationID-r15 GNSS-ReferenceStationID-r15,
- geometric-ionospheric-corrections-differences-r15
+ geometric-ionospheric-corrections-differences-r15
Geometric-Ionospheric-Corrections-Differences-r15,
...
}
@@ -3174,7 +3787,10 @@ GNSS-SSR-OrbitCorrections-r15 ::= SEQUENCE {
satelliteReferenceDatum-r15 ENUMERATED { itrf, regional, ... },
iod-ssr-r15 INTEGER (0..15),
ssr-OrbitCorrectionList-r15 SSR-OrbitCorrectionList-r15,
- ...
+ ...,
+ [[
+ orbit-IntegrityParameters-r17 ORBIT-IntegrityParameters-r17 OPTIONAL -- Need OR
+ ]]
}
SSR-OrbitCorrectionList-r15 ::= SEQUENCE (SIZE(1..64)) OF SSR-OrbitCorrectionSatelliteElement-r15
@@ -3186,18 +3802,48 @@ SSR-OrbitCorrectionSatelliteElement-r15 ::= SEQUENCE {
delta-AlongTrack-r15 INTEGER (-524288..524287),
delta-CrossTrack-r15 INTEGER (-524288..524287),
dot-delta-radial-r15 INTEGER (-1048576..1048575) OPTIONAL, -- Need ON
- dot-delta-AlongTrack-r15 INTEGER (-262144..262143) OPTIONAL, -- Need ON
- dot-delta-CrossTrack-r15 INTEGER (-262144..262143) OPTIONAL, -- Need ON
+ dot-delta-AlongTrack-r15 INTEGER (-262144..262143) OPTIONAL, -- Need ON
+ dot-delta-CrossTrack-r15 INTEGER (-262144..262143) OPTIONAL, -- Need ON
+ ...,
+ [[
+ ssr-IntegrityOrbitBounds-r17 SSR-IntegrityOrbitBounds-r17 OPTIONAL -- Cond Integrity1
+ ]]
+}
+
+ORBIT-IntegrityParameters-r17 ::= SEQUENCE {
+ probOnsetConstFault-r17 INTEGER (0..255),
+ meanConstFaultDuration-r17 INTEGER (1..3600),
+ probOnsetSatFault-r17 INTEGER (0..255),
+ meanSatFaultDuration-r17 INTEGER (1..3600),
+ orbitRangeErrorCorrelationTime-r17 INTEGER (0..255) OPTIONAL, -- Need OR
+ orbitRangeRateErrorCorrelationTime-r17 INTEGER (0..255) OPTIONAL, -- Cond Integrity2
+ ...
+}
+
+SSR-IntegrityOrbitBounds-r17 ::= SEQUENCE {
+ meanOrbitError-r17 RAC-OrbitalErrorComponents-r17,
+ stdDevOrbitError-r17 RAC-OrbitalErrorComponents-r17,
+ meanOrbitRateError-r17 RAC-OrbitalErrorComponents-r17,
+ stdDevOrbitRateError-r17 RAC-OrbitalErrorComponents-r17,
...
}
+RAC-OrbitalErrorComponents-r17 ::= SEQUENCE {
+ radial-r17 INTEGER (0..255),
+ alongTrack-r17 INTEGER (0..255),
+ crossTrack-r17 INTEGER (0..255)
+}
+
GNSS-SSR-ClockCorrections-r15 ::= SEQUENCE {
epochTime-r15 GNSS-SystemTime,
ssrUpdateInterval-r15 INTEGER (0..15),
iod-ssr-r15 INTEGER (0..15),
ssr-ClockCorrectionList-r15 SSR-ClockCorrectionList-r15,
- ...
+ ...,
+ [[
+ clock-IntegrityParameters-r17 CLOCK-IntegrityParameters-r17 OPTIONAL -- Need OR
+ ]]
}
SSR-ClockCorrectionList-r15 ::= SEQUENCE (SIZE(1..64)) OF SSR-ClockCorrectionSatelliteElement-r15
@@ -3207,6 +3853,23 @@ SSR-ClockCorrectionSatelliteElement-r15 ::= SEQUENCE {
delta-Clock-C0-r15 INTEGER (-2097152..2097151),
delta-Clock-C1-r15 INTEGER (-1048576..1048575) OPTIONAL, -- Need ON
delta-Clock-C2-r15 INTEGER (-67108864..67108863) OPTIONAL, -- Need ON
+ ...,
+ [[
+ ssr-IntegrityClockBounds-r17 SSR-IntegrityClockBounds-r17 OPTIONAL -- Need OR
+ ]]
+}
+
+CLOCK-IntegrityParameters-r17 ::= SEQUENCE {
+ clockRangeErrorCorrelationTime-r17 INTEGER (0..255),
+ clockRangeRateErrorCorrelationTime-r17 INTEGER (0..255),
+ ...
+}
+
+SSR-IntegrityClockBounds-r17 ::= SEQUENCE {
+ meanClock-r17 INTEGER (0..255),
+ stdDevClock-r17 INTEGER (0..255),
+ meanClockRate-r17 INTEGER (0..255),
+ stdDevClockRate-r17 INTEGER (0..255),
...
}
@@ -3232,6 +3895,17 @@ SSR-CodeBiasSignalList-r15 ::= SEQUENCE (SIZE(1..16)) OF SSR-CodeBiasSignalEleme
SSR-CodeBiasSignalElement-r15 ::= SEQUENCE {
signal-and-tracking-mode-ID-r15 GNSS-SignalID,
codeBias-r15 INTEGER (-8192..8191),
+ ...,
+ [[
+ ssr-IntegrityCodeBiasBounds-r17 SSR-IntegrityCodeBiasBounds-r17 OPTIONAL -- Need OR
+ ]]
+}
+
+SSR-IntegrityCodeBiasBounds-r17 ::= SEQUENCE {
+ meanCodeBias-r17 INTEGER (0..255),
+ stdDevCodeBias-r17 INTEGER (0..255),
+ meanCodeBiasRate-r17 INTEGER (0..255),
+ stdDevCodeBiasRate-r17 INTEGER (0..255),
...
}
@@ -3276,6 +3950,17 @@ SSR-PhaseBiasSignalElement-r16 ::= SEQUENCE {
phaseBias-r16 INTEGER (-16384..16383),
phaseDiscontinuityIndicator-r16 INTEGER (0..3),
phaseBiasIntegerIndicator-r16 INTEGER (0..3) OPTIONAL, -- Need OP
+ ...,
+ [[
+ ssr-IntegrityPhaseBiasBounds-r17 SSR-IntegrityPhaseBiasBounds-r17 OPTIONAL -- Need OR
+ ]]
+}
+
+SSR-IntegrityPhaseBiasBounds-r17 ::= SEQUENCE {
+ meanPhaseBias-r17 INTEGER (0..255),
+ stdDevPhaseBias-r17 INTEGER (0..255),
+ meanPhaseBiasRate-r17 INTEGER (0..255),
+ stdDevPhaseBiasRate-r17 INTEGER (0..255),
...
}
@@ -3286,7 +3971,10 @@ GNSS-SSR-STEC-Correction-r16 ::= SEQUENCE {
iod-ssr-r16 INTEGER (0..15),
correctionPointSetID-r16 INTEGER (0..16383),
stec-SatList-r16 STEC-SatList-r16,
- ...
+ ...,
+ [[
+ stec-IntegrityParameters-r17 STEC-IntegrityParameters-r17 OPTIONAL -- Need OR
+ ]]
}
STEC-SatList-r16 ::= SEQUENCE (SIZE(1..64)) OF STEC-SatElement-r16
@@ -3298,6 +3986,25 @@ STEC-SatElement-r16 ::= SEQUENCE {
stec-C01-r16 INTEGER (-2048..2047) OPTIONAL, -- Need ON
stec-C10-r16 INTEGER (-2048..2047) OPTIONAL, -- Need ON
stec-C11-r16 INTEGER (-512..511) OPTIONAL, -- Need ON
+ ...,
+ [[
+ stec-IntegrityErrorBounds-r17 STEC-IntegrityErrorBounds-r17 OPTIONAL -- Cond Integrity1
+ ]]
+}
+
+STEC-IntegrityParameters-r17 ::= SEQUENCE {
+ probOnsetIonoFault-r17 INTEGER (0..255),
+ meanIonoFaultDuration-r17 INTEGER (1..256),
+ ionoRangeErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Need OR
+ ionoRangeRateErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Cond Integrity2
+ ...
+}
+
+STEC-IntegrityErrorBounds-r17 ::= SEQUENCE {
+ meanIonosphere-r17 INTEGER (0..255),
+ stdDevIonosphere-r17 INTEGER (0..255),
+ meanIonosphereRate-r17 INTEGER (0..255),
+ stdDevIonosphereRate-r17 INTEGER (0..255),
...
}
@@ -3309,7 +4016,12 @@ GNSS-SSR-GriddedCorrection-r16 ::= SEQUENCE {
troposphericDelayQualityIndicator-r16 BIT STRING (SIZE(6)) OPTIONAL, -- Cond Tropo
correctionPointSetID-r16 INTEGER (0..16383),
gridList-r16 GridList-r16,
- ...
+ ...,
+ [[
+ ssr-GriddedCorrectionIntegrityParameters-r17
+ SSR-GriddedCorrectionIntegrityParameters-r17
+ OPTIONAL -- Need OR
+ ]]
}
GridList-r16 ::= SEQUENCE (SIZE(1..64)) OF GridElement-r16
@@ -3323,7 +4035,11 @@ GridElement-r16 ::= SEQUENCE {
TropospericDelayCorrection-r16 ::= SEQUENCE {
tropoHydroStaticVerticalDelay-r16 INTEGER (-256..255),
tropoWetVerticalDelay-r16 INTEGER (-128..127),
- ...
+ ...,
+ [[
+ tropoDelayIntegrityErrorBounds-r17 TropoDelayIntegrityErrorBounds-r17
+ OPTIONAL -- Cond Integrity1
+ ]]
}
STEC-ResidualSatList-r16 ::= SEQUENCE (SIZE(1..64)) OF STEC-ResidualSatElement-r16
@@ -3337,6 +4053,26 @@ STEC-ResidualSatElement-r16 ::= SEQUENCE {
...
}
+SSR-GriddedCorrectionIntegrityParameters-r17 ::= SEQUENCE {
+ probOnsetTroposphereFault-r17 INTEGER (0..255),
+ meanTroposphereFaultDuration-r17 INTEGER (1..256),
+ troposphereRangeErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Need OR
+ troposphereRangeRateErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Cond Integrity2
+ ...
+}
+
+TropoDelayIntegrityErrorBounds-r17 ::= SEQUENCE {
+ meanTroposphereVerticalHydroStaticDelay-r17 INTEGER (0..255),
+ stdDevTroposphereVerticalHydroStaticDelay-r17 INTEGER (0..255),
+ meanTroposphereVerticalWetDelay-r17 INTEGER (0..255),
+ stdDevTroposphereVerticalWetDelay-r17 INTEGER (0..255),
+ meanTroposphereVerticalHydroStaticDelayRate-r17 INTEGER (0..255),
+ stdDevTroposphereVerticalHydroStaticDelayRate-r17 INTEGER (0..255),
+ meanTroposphereVerticalWetDelayRate-r17 INTEGER (0..255),
+ stdDevTroposphereVerticalWetDelayRate-r17 INTEGER (0..255),
+ ...
+}
+
NavIC-DifferentialCorrections-r16 ::= SEQUENCE {
navic-RefTOWC-r16 INTEGER (0..50400),
@@ -3419,6 +4155,27 @@ RegionIgpElement-r16 ::= SEQUENCE {
}
+GNSS-SSR-OrbitCorrectionsSet2-r17 ::= SEQUENCE {
+ refEph-r17 ENUMERATED { b1c,...},
+ gnss-SSR-OrbitCorrections-r17 GNSS-SSR-OrbitCorrections-r15,
+ ...
+}
+
+
+GNSS-SSR-ClockCorrectionsSet2-r17 ::= SEQUENCE {
+ refEph-r17 ENUMERATED { b1c,...},
+ gnss-SSR-ClockCorrections-r17 GNSS-SSR-ClockCorrections-r15,
+ ...
+}
+
+
+GNSS-SSR-URA-Set2-r17 ::= SEQUENCE {
+ refEph-r17 ENUMERATED { b1c,...},
+ gnss-SSR-URA-r17 GNSS-SSR-URA-r16,
+ ...
+}
+
+
A-GNSS-RequestAssistanceData ::= SEQUENCE {
gnss-CommonAssistDataReq GNSS-CommonAssistDataReq OPTIONAL, -- Cond CommonADReq
gnss-GenericAssistDataReq GNSS-GenericAssistDataReq OPTIONAL, -- Cond GenADReq
@@ -3431,17 +4188,17 @@ A-GNSS-RequestAssistanceData ::= SEQUENCE {
GNSS-CommonAssistDataReq ::= SEQUENCE {
- gnss-ReferenceTimeReq GNSS-ReferenceTimeReq
+ gnss-ReferenceTimeReq GNSS-ReferenceTimeReq
OPTIONAL, -- Cond RefTimeReq
- gnss-ReferenceLocationReq GNSS-ReferenceLocationReq
+ gnss-ReferenceLocationReq GNSS-ReferenceLocationReq
OPTIONAL, -- Cond RefLocReq
- gnss-IonosphericModelReq GNSS-IonosphericModelReq
+ gnss-IonosphericModelReq GNSS-IonosphericModelReq
OPTIONAL, -- Cond IonoModReq
- gnss-EarthOrientationParametersReq GNSS-EarthOrientationParametersReq
+ gnss-EarthOrientationParametersReq GNSS-EarthOrientationParametersReq
OPTIONAL, -- Cond EOPReq
...,
[[
- gnss-RTK-ReferenceStationInfoReq-r15
+ gnss-RTK-ReferenceStationInfoReq-r15
GNSS-RTK-ReferenceStationInfoReq-r15
OPTIONAL, -- Cond ARPReq
gnss-RTK-AuxiliaryStationDataReq-r15
@@ -3452,6 +4209,14 @@ GNSS-CommonAssistDataReq ::= SEQUENCE {
gnss-SSR-CorrectionPointsReq-r16
GNSS-SSR-CorrectionPointsReq-r16
OPTIONAL -- Cond PointsReq
+ ]],
+ [[
+ gnss-Integrity-ServiceParametersReq-r17
+ GNSS-Integrity-ServiceParametersReq-r17
+ OPTIONAL, -- Cond IntServiceReq
+ gnss-Integrity-ServiceAlertReq-r17
+ GNSS-Integrity-ServiceAlertReq-r17
+ OPTIONAL -- Cond IntAlertReq
]]
}
@@ -3472,7 +4237,7 @@ GNSS-GenericAssistDataReqElement ::= SEQUENCE {
gnss-AuxiliaryInformationReq GNSS-AuxiliaryInformationReq OPTIONAL, -- Cond AuxInfoReq
...,
[[
- bds-DifferentialCorrectionsReq-r12
+ bds-DifferentialCorrectionsReq-r12
BDS-DifferentialCorrectionsReq-r12
OPTIONAL, -- Cond DBDS-Req
bds-GridModelReq-r12 BDS-GridModelReq-r12 OPTIONAL -- Cond BDS-GridModReq
@@ -3480,7 +4245,7 @@ GNSS-GenericAssistDataReqElement ::= SEQUENCE {
[[
gnss-RTK-ObservationsReq-r15
GNSS-RTK-ObservationsReq-r15 OPTIONAL, -- Cond RTK-OSR-Req
- glo-RTK-BiasInformationReq-r15
+ glo-RTK-BiasInformationReq-r15
GLO-RTK-BiasInformationReq-r15 OPTIONAL, -- Cond GLO-CPB-Req
gnss-RTK-MAC-CorrectionDifferencesReq-r15
GNSS-RTK-MAC-CorrectionDifferencesReq-r15
@@ -3490,11 +4255,11 @@ GNSS-GenericAssistDataReqElement ::= SEQUENCE {
GNSS-RTK-FKP-GradientsReq-r15 OPTIONAL, -- Cond FKP-Req
gnss-SSR-OrbitCorrectionsReq-r15
GNSS-SSR-OrbitCorrectionsReq-r15
- OPTIONAL, -- Cond OC-Req
+ OPTIONAL, -- Cond OC-Req
gnss-SSR-ClockCorrectionsReq-r15
GNSS-SSR-ClockCorrectionsReq-r15
- OPTIONAL, -- Cond CC-Req
- gnss-SSR-CodeBiasReq-r15 GNSS-SSR-CodeBiasReq-r15 OPTIONAL -- Cond CB-Req
+ OPTIONAL, -- Cond CC-Req
+ gnss-SSR-CodeBiasReq-r15 GNSS-SSR-CodeBiasReq-r15 OPTIONAL -- Cond CB-Req
]],
[[
gnss-SSR-URA-Req-r16 GNSS-SSR-URA-Req-r16 OPTIONAL, -- Cond URA-Req
@@ -3503,10 +4268,19 @@ GNSS-GenericAssistDataReqElement ::= SEQUENCE {
GNSS-SSR-STEC-CorrectionReq-r16 OPTIONAL, -- Cond STEC-Req
gnss-SSR-GriddedCorrectionReq-r16 GNSS-SSR-GriddedCorrectionReq-r16
OPTIONAL, -- Cond Grid-Req
- navic-DifferentialCorrectionsReq-r16
+ navic-DifferentialCorrectionsReq-r16
NavIC-DifferentialCorrectionsReq-r16
OPTIONAL, -- Cond DNavIC-Req
navic-GridModelReq-r16 NavIC-GridModelReq-r16 OPTIONAL -- Cond NavIC-GridModReq
+ ]],
+ [[
+ gnss-SSR-OrbitCorrectionsSet2Req-r17
+ GNSS-SSR-OrbitCorrectionsSet2Req-r17
+ OPTIONAL, -- Cond OC2-Req
+ gnss-SSR-ClockCorrectionsSet2Req-r17
+ GNSS-SSR-ClockCorrectionsSet2Req-r17
+ OPTIONAL, -- Cond CC2-Req
+ gnss-SSR-URA-Set2Req-r17 GNSS-SSR-URA-Set2Req-r17 OPTIONAL -- Cond URA2-Req
]]
}
@@ -3528,14 +4302,26 @@ GNSS-PeriodicAssistDataReq-r15 ::= SEQUENCE {
gnss-SSR-PeriodicURA-Req-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Cond pURA
gnss-SSR-PeriodicPhaseBiasReq-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Cond pPB
gnss-SSR-PeriodicSTEC-CorrectionReq-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Cond pSTEC
- gnss-SSR-PeriodicGriddedCorrectionReq-r16
+ gnss-SSR-PeriodicGriddedCorrectionReq-r16
GNSS-PeriodicControlParam-r15 OPTIONAL -- Cond pGrid
+ ]],
+ [[
+ gnss-Integrity-PeriodicServiceAlertReq-r17
+ GNSS-PeriodicControlParam-r15 OPTIONAL -- Cond pDNU
+ ]],
+ [[
+ gnss-SSR-PeriodicOrbitCorrectionsSet2Req-r17
+ GNSS-PeriodicControlParam-r15 OPTIONAL, -- Cond pOC2
+ gnss-SSR-PeriodicClockCorrectionsSet2Req-r17
+ GNSS-PeriodicControlParam-r15 OPTIONAL, -- Cond pCC2
+ gnss-SSR-PeriodicURA-Set2Req-r17
+ GNSS-PeriodicControlParam-r15 OPTIONAL -- Cond pURA2
]]
}
GNSS-ReferenceTimeReq ::= SEQUENCE {
- gnss-TimeReqPrefList SEQUENCE (SIZE (1..8)) OF GNSS-ID,
+ gnss-TimeReqPrefList SEQUENCE (SIZE (1..8)) OF GNSS-ID,
gps-TOW-assistReq BOOLEAN OPTIONAL, -- Cond gps
notOfLeapSecReq BOOLEAN OPTIONAL, -- Cond glonass
...
@@ -3551,7 +4337,7 @@ GNSS-IonosphericModelReq ::= SEQUENCE {
klobucharModelReq BIT STRING (SIZE(2)) OPTIONAL, -- Cond klobuchar
neQuickModelReq NULL OPTIONAL, -- Cond nequick
...,
- [[ klobucharModel2Req-r16 NULL OPTIONAL -- Cond klobuchar2
+ [[ klobucharModel2Req-r16 NULL OPTIONAL -- Cond klobuchar2
]]
}
@@ -3583,6 +4369,16 @@ GNSS-SSR-CorrectionPointsReq-r16 ::= SEQUENCE {
}
+GNSS-Integrity-ServiceParametersReq-r17 ::= SEQUENCE {
+ ...
+}
+
+
+GNSS-Integrity-ServiceAlertReq-r17 ::= SEQUENCE {
+ ...
+}
+
+
GNSS-TimeModelListReq ::= SEQUENCE (SIZE(1..15)) OF GNSS-TimeModelElementReq
GNSS-TimeModelElementReq ::= SEQUENCE {
@@ -3620,14 +4416,14 @@ SatListRelatedDataElement ::= SEQUENCE {
svID SV-ID,
iod BIT STRING (SIZE(11)),
clockModelID INTEGER (1..8) OPTIONAL,
-orbitModelID INTEGER (1..8) OPTIONAL,
+orbitModelID INTEGER (1..8) OPTIONAL,
...
}
ReqNavListInfo ::= SEQUENCE {
svReqList BIT STRING (SIZE (64)),
clockModelID-PrefList SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) OPTIONAL,
- orbitModelID-PrefList SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) OPTIONAL,
+ orbitModelID-PrefList SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) OPTIONAL,
addNavparamReq BOOLEAN OPTIONAL, -- Cond orbitModelID-2
...
}
@@ -3690,7 +4486,7 @@ BDS-GridModelReq-r12 ::= SEQUENCE {
}
-GNSS-RTK-ObservationsReq-r15::= SEQUENCE {
+GNSS-RTK-ObservationsReq-r15::= SEQUENCE {
gnss-RTK-SignalsReq-r15 GNSS-SignalIDs,
gnss-RTK-Integer-ms-Req-r15 BOOLEAN,
gnss-RTK-PhaseRangeRateReq-r15 BOOLEAN,
@@ -3700,13 +4496,13 @@ GNSS-RTK-ObservationsReq-r15::= SEQUENCE {
}
-GLO-RTK-BiasInformationReq-r15 ::= SEQUENCE {
+GLO-RTK-BiasInformationReq-r15 ::= SEQUENCE {
stationID-r15 GNSS-ReferenceStationID-r15 OPTIONAL,
...
}
-GNSS-RTK-MAC-CorrectionDifferencesReq-r15 ::= SEQUENCE {
+GNSS-RTK-MAC-CorrectionDifferencesReq-r15 ::= SEQUENCE {
master-ReferenceStationID-r15 GNSS-ReferenceStationID-r15 OPTIONAL,
aux-ReferenceStationList-r15 AUX-ReferenceStationList-r15 OPTIONAL,
linkCombinations-PrefList-r15 GNSS-Link-CombinationsList-r15 OPTIONAL,
@@ -3721,14 +4517,14 @@ AUX-ReferenceStationID-Element-r15 ::= SEQUENCE {
}
-GNSS-RTK-ResidualsReq-r15 ::= SEQUENCE {
+GNSS-RTK-ResidualsReq-r15 ::= SEQUENCE {
stationID-r15 GNSS-ReferenceStationID-r15 OPTIONAL,
linkCombinations-PrefList-r15 GNSS-Link-CombinationsList-r15 OPTIONAL,
...
}
-GNSS-RTK-FKP-GradientsReq-r15 ::= SEQUENCE {
+GNSS-RTK-FKP-GradientsReq-r15 ::= SEQUENCE {
stationID-r15 GNSS-ReferenceStationID-r15 OPTIONAL,
linkCombinations-PrefList-r15 GNSS-Link-CombinationsList-r15 OPTIONAL,
...
@@ -3737,20 +4533,31 @@ GNSS-RTK-FKP-GradientsReq-r15 ::= SEQUENCE {
GNSS-SSR-OrbitCorrectionsReq-r15 ::= SEQUENCE {
storedNavList-r15 GNSS-NavListInfo-r15 OPTIONAL,
- ...
+ ...,
+ [[
+ orbit-IntegrityReq-r17 BIT STRING { correlationTimeReq (0)
+ } (SIZE(1..8)) OPTIONAL
+ ]]
}
GNSS-SSR-ClockCorrectionsReq-r15 ::= SEQUENCE {
storedNavList-r15 GNSS-NavListInfo-r15 OPTIONAL,
- ...
+ ...,
+ [[
+ clock-IntegrityParametersReq-r17 ENUMERATED { true } OPTIONAL,
+ ssr-IntegrityClockBoundsReq-r17 ENUMERATED { true } OPTIONAL
+ ]]
}
GNSS-SSR-CodeBiasReq-r15 ::= SEQUENCE {
signal-and-tracking-mode-ID-Map-r15 GNSS-SignalIDs,
storedNavList-r15 GNSS-NavListInfo-r15 OPTIONAL,
- ...
+ ...,
+ [[
+ ssr-IntegrityCodeBiasBoundsReq-r17 ENUMERATED { requested } OPTIONAL
+ ]]
}
@@ -3762,17 +4569,27 @@ GNSS-SSR-URA-Req-r16 ::= SEQUENCE {
GNSS-SSR-PhaseBiasReq-r16 ::= SEQUENCE {
signal-and-tracking-mode-ID-Map-r16 GNSS-SignalIDs,
storedNavList-r16 GNSS-NavListInfo-r15 OPTIONAL,
- ...
+ ...,
+ [[
+ ssr-IntegrityPhaseBiasBoundsReq-r17 ENUMERATED { requested } OPTIONAL
+ ]]
}
GNSS-SSR-STEC-CorrectionReq-r16 ::= SEQUENCE {
- ...
+ ...,
+ [[
+ stec-IntegrityReq-r17 BIT STRING { correlationTimeReq (0)
+ } (SIZE(1..8)) OPTIONAL
+ ]]
}
GNSS-SSR-GriddedCorrectionReq-r16 ::= SEQUENCE {
- ...
+ ...,
+ [[
+ griddedCorrectionIntegrityReq-r17 ENUMERATED { requested } OPTIONAL
+ ]]
}
@@ -3787,6 +4604,28 @@ NavIC-GridModelReq-r16 ::= SEQUENCE {
}
+GNSS-SSR-OrbitCorrectionsSet2Req-r17 ::= SEQUENCE {
+ refEphReq-r17 ENUMERATED { b1c,...},
+ gnss-SSR-OrbitCorrectionsSet2Req-r17
+ GNSS-SSR-OrbitCorrectionsReq-r15 OPTIONAL, -- Cond OC2-Req
+ ...
+}
+
+
+GNSS-SSR-ClockCorrectionsSet2Req-r17 ::= SEQUENCE {
+ refEphReq-r17 ENUMERATED { b1c,...},
+ gnss-SSR-ClockCorrectionsSet2Req-r17
+ GNSS-SSR-ClockCorrectionsReq-r15 OPTIONAL, -- Cond CC2-Req
+ ...
+}
+
+
+GNSS-SSR-URA-Set2Req-r17 ::= SEQUENCE {
+ refEphReq-r17 ENUMERATED { b1c,...},
+ ...
+}
+
+
A-GNSS-ProvideLocationInformation ::= SEQUENCE {
gnss-SignalMeasurementInformation GNSS-SignalMeasurementInformation OPTIONAL,
gnss-LocationInformation GNSS-LocationInformation OPTIONAL,
@@ -3804,8 +4643,8 @@ GNSS-SignalMeasurementInformation ::= SEQUENCE {
MeasurementReferenceTime ::= SEQUENCE {
gnss-TOD-msec INTEGER (0..3599999),
- gnss-TOD-frac INTEGER (0..3999) OPTIONAL,
- gnss-TOD-unc INTEGER (0..127) OPTIONAL,
+ gnss-TOD-frac INTEGER (0..3999) OPTIONAL,
+ gnss-TOD-unc INTEGER (0..127) OPTIONAL,
gnss-TimeID GNSS-ID,
networkTime CHOICE {
eUTRA SEQUENCE {
@@ -3857,7 +4696,7 @@ MeasurementReferenceTime ::= SEQUENCE {
nr-sfn-r15 BIT STRING (SIZE (10)),
...
}
- } OPTIONAL,
+ } OPTIONAL,
...
}
@@ -3885,10 +4724,10 @@ GNSS-SatMeasElement ::= SEQUENCE {
svID SV-ID,
cNo INTEGER (0..63),
mpathDet ENUMERATED {notMeasured (0), low (1), medium (2), high (3), ...},
- carrierQualityInd INTEGER (0..3) OPTIONAL,
+ carrierQualityInd INTEGER (0..3) OPTIONAL,
codePhase INTEGER (0..2097151),
integerCodePhase INTEGER (0..127) OPTIONAL,
- codePhaseRMSError INTEGER (0..63),
+ codePhaseRMSError INTEGER (0..63),
doppler INTEGER (-32768..32767) OPTIONAL,
adr INTEGER (0..33554431) OPTIONAL,
...,
@@ -3903,7 +4742,21 @@ GNSS-SatMeasElement ::= SEQUENCE {
GNSS-LocationInformation ::= SEQUENCE {
measurementReferenceTime MeasurementReferenceTime,
- agnss-List GNSS-ID-Bitmap,
+ agnss-List GNSS-ID-Bitmap,
+ ...,
+ [[
+ ha-GNSS-Metrics-r17 HA-GNSS-Metrics-r17 OPTIONAL
+ ]]
+}
+
+
+HA-GNSS-Metrics-r17 ::= SEQUENCE {
+ nrOfUsedSatellites-r17 INTEGER (0..64),
+ hdopi-r17 INTEGER (1..256) OPTIONAL,
+ pdopi-r17 INTEGER (1..256) OPTIONAL,
+ age-r17 INTEGER (0..99) OPTIONAL,
+ fixType-r17 ENUMERATED {carrier-phase-float,
+ carrier-phase-fix, ...} OPTIONAL,
...
}
@@ -3915,7 +4768,7 @@ A-GNSS-RequestLocationInformation ::= SEQUENCE {
GNSS-PositioningInstructions ::= SEQUENCE {
- gnss-Methods GNSS-ID-Bitmap,
+ gnss-Methods GNSS-ID-Bitmap,
fineTimeAssistanceMeasReq BOOLEAN,
adrMeasReq BOOLEAN,
multiFreqMeasReq BOOLEAN,
@@ -3923,6 +4776,9 @@ GNSS-PositioningInstructions ::= SEQUENCE {
...,
[[
ha-GNSS-Req-r15 ENUMERATED { true } OPTIONAL -- Cond UEB
+ ]],
+ [[
+ ha-GNSS-MetricsReq-r17 ENUMERATED { true } OPTIONAL -- Cond UEB
]]
}
@@ -3935,12 +4791,15 @@ A-GNSS-ProvideCapabilities ::= SEQUENCE {
...,
[[ periodicalReportingNotSupported-r14
PositioningModes OPTIONAL,
- idleStateForMeasurements-r14
+ idleStateForMeasurements-r14
ENUMERATED { required } OPTIONAL
]],
[[ periodicAssistanceData-r15
- BIT STRING { solicited (0),
+ BIT STRING { solicited (0),
unsolicited (1) } (SIZE (1..8)) OPTIONAL
+ ]],
+ [[ scheduledLocationRequestSupported-r17
+ ScheduledLocationTimeSupportPerMode-r17 OPTIONAL
]]
}
@@ -3962,6 +4821,9 @@ GNSS-SupportElement ::= SEQUENCE {
[[
adrEnhancementsSupport-r15 ENUMERATED { true } OPTIONAL,
ha-gnss-Modes-r15 PositioningModes OPTIONAL
+ ]],
+ [[
+ ha-gnss-MetricsSupport-r17 ENUMERATED { true } OPTIONAL
]]
}
@@ -3974,22 +4836,30 @@ AssistanceDataSupportList ::= SEQUENCE {
GNSS-CommonAssistanceDataSupport ::= SEQUENCE {
- gnss-ReferenceTimeSupport GNSS-ReferenceTimeSupport
+ gnss-ReferenceTimeSupport GNSS-ReferenceTimeSupport
OPTIONAL, -- Cond RefTimeSup
- gnss-ReferenceLocationSupport GNSS-ReferenceLocationSupport
+ gnss-ReferenceLocationSupport GNSS-ReferenceLocationSupport
OPTIONAL, -- Cond RefLocSup
- gnss-IonosphericModelSupport GNSS-IonosphericModelSupport
+ gnss-IonosphericModelSupport GNSS-IonosphericModelSupport
OPTIONAL, -- Cond IonoModSup
- gnss-EarthOrientationParametersSupport GNSS-EarthOrientationParametersSupport
+ gnss-EarthOrientationParametersSupport GNSS-EarthOrientationParametersSupport
OPTIONAL, -- Cond EOPSup
...,
[[
- gnss-RTK-ReferenceStationInfoSupport-r15
+ gnss-RTK-ReferenceStationInfoSupport-r15
GNSS-RTK-ReferenceStationInfoSupport-r15
OPTIONAL, -- Cond ARPSup
gnss-RTK-AuxiliaryStationDataSupport-r15
GNSS-RTK-AuxiliaryStationDataSupport-r15
OPTIONAL -- Cond AuxARPSup
+ ]],
+ [[
+ gnss-Integrity-ServiceParametersSupport-r17
+ GNSS-Integrity-ServiceParametersSupport-r17
+ OPTIONAL, -- Cond IntServiceSup
+ gnss-Integrity-ServiceAlertSupport-r17
+ GNSS-Integrity-ServiceAlertSupport-r17
+ OPTIONAL -- Cond IntAlertSup
]]
}
@@ -4019,12 +4889,22 @@ GNSS-EarthOrientationParametersSupport ::= SEQUENCE {
}
-GNSS-RTK-ReferenceStationInfoSupport-r15 ::= SEQUENCE {
+GNSS-RTK-ReferenceStationInfoSupport-r15 ::= SEQUENCE {
+ ...
+}
+
+
+GNSS-RTK-AuxiliaryStationDataSupport-r15 ::= SEQUENCE {
+ ...
+}
+
+
+GNSS-Integrity-ServiceParametersSupport-r17 ::= SEQUENCE {
...
}
-GNSS-RTK-AuxiliaryStationDataSupport-r15 ::= SEQUENCE {
+GNSS-Integrity-ServiceAlertSupport-r17 ::= SEQUENCE {
...
}
@@ -4065,8 +4945,8 @@ GNSS-GenericAssistDataSupportElement ::= SEQUENCE {
gnss-RTK-ObservationsSupport-r15
GNSS-RTK-ObservationsSupport-r15
OPTIONAL, -- Cond RTK-OSR-Sup
- glo-RTK-BiasInformationSupport-r15
- GLO-RTK-BiasInformationSupport-r15
+ glo-RTK-BiasInformationSupport-r15
+ GLO-RTK-BiasInformationSupport-r15
OPTIONAL, -- Cond GLO-CPB-Sup
gnss-RTK-MAC-CorrectionDifferencesSupport-r15
GNSS-RTK-MAC-CorrectionDifferencesSupport-r15
@@ -4078,16 +4958,16 @@ GNSS-GenericAssistDataSupportElement ::= SEQUENCE {
OPTIONAL, -- Cond FKP-Sup
gnss-SSR-OrbitCorrectionsSupport-r15
GNSS-SSR-OrbitCorrectionsSupport-r15
- OPTIONAL, -- Cond OC-Sup
+ OPTIONAL, -- Cond OC-Sup
gnss-SSR-ClockCorrectionsSupport-r15
GNSS-SSR-ClockCorrectionsSupport-r15
- OPTIONAL, -- Cond CC-Sup
+ OPTIONAL, -- Cond CC-Sup
gnss-SSR-CodeBiasSupport-r15 GNSS-SSR-CodeBiasSupport-r15
- OPTIONAL -- Cond CB-Sup
+ OPTIONAL -- Cond CB-Sup
]],
[[
gnss-SSR-URA-Support-r16 GNSS-SSR-URA-Support-r16 OPTIONAL, -- Cond URA-Sup
- gnss-SSR-PhaseBiasSupport-r16 GNSS-SSR-PhaseBiasSupport-r16
+ gnss-SSR-PhaseBiasSupport-r16 GNSS-SSR-PhaseBiasSupport-r16
OPTIONAL, -- Cond PB-Sup
gnss-SSR-STEC-CorrectionSupport-r16
GNSS-SSR-STEC-CorrectionSupport-r16
@@ -4100,6 +4980,16 @@ GNSS-GenericAssistDataSupportElement ::= SEQUENCE {
OPTIONAL, -- Cond DNavIC-Sup
navic-GridModelSupport-r16 NavIC-GridModelSupport-r16
OPTIONAL -- Cond NavIC-GridModSup
+ ]],
+ [[
+ gnss-SSR-OrbitCorrectionsSet2Support-r17
+ GNSS-SSR-OrbitCorrectionsSet2Support-r17
+ OPTIONAL, -- Cond OC2-Sup
+ gnss-SSR-ClockCorrectionsSet2Support-r17
+ GNSS-SSR-ClockCorrectionsSet2Support-r17
+ OPTIONAL, -- Cond CC2-Sup
+ gnss-SSR-URA-Set2Support-r17 GNSS-SSR-URA-Set2Support-r17
+ OPTIONAL -- Cond URA2-Sup
]]
}
@@ -4192,48 +5082,59 @@ BDS-GridModelSupport-r12 ::= SEQUENCE {
}
-GNSS-RTK-ObservationsSupport-r15 ::= SEQUENCE {
+GNSS-RTK-ObservationsSupport-r15 ::= SEQUENCE {
gnssSignalIDs-r15 GNSS-SignalIDs,
...
}
-GLO-RTK-BiasInformationSupport-r15 ::= SEQUENCE {
+GLO-RTK-BiasInformationSupport-r15 ::= SEQUENCE {
...
}
-GNSS-RTK-MAC-CorrectionDifferencesSupport-r15 ::= SEQUENCE {
+GNSS-RTK-MAC-CorrectionDifferencesSupport-r15 ::= SEQUENCE {
link-combinations-support-r15 GNSS-Link-CombinationsList-r15,
...
}
-GNSS-RTK-ResidualsSupport-r15 ::= SEQUENCE {
+GNSS-RTK-ResidualsSupport-r15 ::= SEQUENCE {
link-combinations-support-r15 GNSS-Link-CombinationsList-r15,
...
}
-GNSS-RTK-FKP-GradientsSupport-r15 ::= SEQUENCE {
+GNSS-RTK-FKP-GradientsSupport-r15 ::= SEQUENCE {
link-combinations-support-r15 GNSS-Link-CombinationsList-r15,
...
}
-GNSS-SSR-OrbitCorrectionsSupport-r15 ::= SEQUENCE {
- ...
+GNSS-SSR-OrbitCorrectionsSupport-r15 ::= SEQUENCE {
+ ...,
+ [[
+ orbit-IntegritySup-r17 BIT STRING { correlationTimeSup (0)
+ } (SIZE(1..8)) OPTIONAL
+ ]]
}
-GNSS-SSR-ClockCorrectionsSupport-r15 ::= SEQUENCE {
- ...
+GNSS-SSR-ClockCorrectionsSupport-r15 ::= SEQUENCE {
+ ...,
+ [[
+ clock-IntegrityParameterSupport-r17 ENUMERATED { supported } OPTIONAL,
+ ssr-IntegrityClockBoundsSupport-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
GNSS-SSR-CodeBiasSupport-r15 ::= SEQUENCE {
signal-and-tracking-mode-ID-Sup-r15 GNSS-SignalIDs,
- ...
+ ...,
+ [[
+ ssr-IntegrityCodeBiasBoundsSup-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
@@ -4244,17 +5145,27 @@ GNSS-SSR-URA-Support-r16 ::= SEQUENCE {
GNSS-SSR-PhaseBiasSupport-r16 ::= SEQUENCE {
signal-and-tracking-mode-ID-Sup-r16 GNSS-SignalIDs,
- ...
+ ...,
+ [[
+ ssr-IntegrityPhaseBiasBoundsSup-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
-GNSS-SSR-STEC-CorrectionSupport-r16 ::= SEQUENCE {
- ...
+GNSS-SSR-STEC-CorrectionSupport-r16 ::= SEQUENCE {
+ ...,
+ [[
+ stec-IntegritySup-r17 BIT STRING { correlationTimeSup (0)
+ } (SIZE(1..8)) OPTIONAL
+ ]]
}
-GNSS-SSR-GriddedCorrectionSupport-r16 ::= SEQUENCE {
- ...
+GNSS-SSR-GriddedCorrectionSupport-r16 ::= SEQUENCE {
+ ...,
+ [[
+ griddedCorrectionIntegritySup-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
@@ -4269,6 +5180,21 @@ NavIC-GridModelSupport-r16 ::= SEQUENCE {
}
+GNSS-SSR-OrbitCorrectionsSet2Support-r17 ::= SEQUENCE {
+ ...
+}
+
+
+GNSS-SSR-ClockCorrectionsSet2Support-r17 ::= SEQUENCE {
+ ...
+}
+
+
+GNSS-SSR-URA-Set2Support-r17 ::= SEQUENCE {
+ ...
+}
+
+
A-GNSS-RequestCapabilities ::= SEQUENCE {
gnss-SupportListReq BOOLEAN,
assistanceDataSupportListReq BOOLEAN,
@@ -4285,7 +5211,7 @@ A-GNSS-Error ::= CHOICE {
GNSS-LocationServerErrorCauses ::= SEQUENCE {
- cause ENUMERATED {
+ cause ENUMERATED {
undefined,
undeliveredAssistanceDataIsNotSupportedByServer,
undeliveredAssistanceDataIsSupportedButCurrentlyNotAvailableByServer, undeliveredAssistanceDataIsPartlyNotSupportedAndPartlyNotAvailableByServer,
@@ -4326,7 +5252,7 @@ GNSS-ID ::= SEQUENCE {
GNSS-ID-Bitmap ::= SEQUENCE {
- gnss-ids BIT STRING { gps (0),
+ gnss-ids BIT STRING { gps (0),
sbas (1),
qzss (2),
galileo (3),
@@ -4406,7 +5332,7 @@ SBAS-ID ::= SEQUENCE {
SBAS-IDs ::= SEQUENCE {
- sbas-IDs BIT STRING { waas (0),
+ sbas-IDs BIT STRING { waas (0),
egnos (1),
msas (2),
gagan (3) } (SIZE (1..8)),
@@ -4480,6 +5406,8 @@ ECID-ProvideCapabilities ::= SEQUENCE {
[[ periodicalReporting-r14 ENUMERATED { supported } OPTIONAL,
triggeredReporting-r14 ENUMERATED { supported } OPTIONAL,
idleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL
+ ]],
+ [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupport-r17 OPTIONAL
]]
}
@@ -4497,7 +5425,7 @@ ECID-Error ::= CHOICE {
ECID-LocationServerErrorCauses ::= SEQUENCE {
- cause ENUMERATED { undefined,
+ cause ENUMERATED { undefined,
...
},
...
@@ -4515,8 +5443,8 @@ ECID-TargetDeviceErrorCauses ::= SEQUENCE {
ueRxTxMeasurementNotPossible NULL OPTIONAL,
...,
[[
- nrsrpMeasurementNotPossible-r14 NULL OPTIONAL,
- nrsrqMeasurementNotPossible-r14 NULL OPTIONAL
+ nrsrpMeasurementNotPossible-r14 NULL OPTIONAL,
+ nrsrqMeasurementNotPossible-r14 NULL OPTIONAL
]]
}
@@ -4569,6 +5497,8 @@ TBS-ProvideCapabilities-r13 ::= SEQUENCE {
tb3 (2),
tb4 (3)} (SIZE (1..8)) OPTIONAL,
mbs-IdleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL
+ ]],
+ [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL
]]
}
@@ -4679,7 +5609,7 @@ Sensor-MeasurementInformation-r13 ::= SEQUENCE {
confidence-r14 INTEGER (1..100)
} OPTIONAL
]],
- [[ adjustment-r16 INTEGER (-5000..5000) OPTIONAL
+ [[ adjustment-r16 INTEGER (-5000..5000) OPTIONAL
]]
}
@@ -4763,6 +5693,8 @@ Sensor-ProvideCapabilities-r13 ::= SEQUENCE {
[[ sensor-MotionInformationSup-r15 ENUMERATED { true } OPTIONAL
]],
[[ adjustmentSupported-r16 ENUMERATED { true } OPTIONAL
+ ]],
+ [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL
]]
}
@@ -4896,7 +5828,7 @@ WLAN-RTT-r13 ::= SEQUENCE {
WLAN-RequestLocationInformation-r13 ::= SEQUENCE {
- requestedMeasurements-r13 BIT STRING {
+ requestedMeasurements-r13 BIT STRING {
rssi (0),
rtt (1)} (SIZE(1..8)),
...,
@@ -4909,17 +5841,19 @@ WLAN-ProvideCapabilities-r13 ::= SEQUENCE {
wlan-Modes-r13 BIT STRING { standalone (0),
ue-assisted (1),
ue-based (2)} (SIZE (1..8)),
- wlan-MeasSupported-r13 BIT STRING {
+ wlan-MeasSupported-r13 BIT STRING {
rssi-r13 (0),
rtt-r13 (1)} (SIZE(1..8)),
... ,
- [[ wlan-AP-AD-Supported-r14
+ [[ wlan-AP-AD-Supported-r14
BIT STRING { ap-identifier (0),
ap-location (1)} (SIZE (1..8))
OPTIONAL,
periodicalReportingSupported-r14 PositioningModes OPTIONAL,
idleStateForMeasurements-r14
ENUMERATED { required } OPTIONAL
+ ]],
+ [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL
]]
}
@@ -4937,7 +5871,7 @@ WLAN-Error-r13 ::= CHOICE {
WLAN-LocationServerErrorCauses-r13 ::= SEQUENCE {
- cause-r13 ENUMERATED {undefined,
+ cause-r13 ENUMERATED {undefined,
...,
requestedADNotAvailable-v1420,
notAllrequestedADAvailable-v1420
@@ -5047,7 +5981,7 @@ WLAN-RequestAssistanceData-r14 ::= SEQUENCE {
BT-ProvideLocationInformation-r13 ::= SEQUENCE {
bt-MeasurementInformation-r13 BT-MeasurementInformation-r13 OPTIONAL,
bt-Error-r13 BT-Error-r13 OPTIONAL,
- ...
+ ...
}
@@ -5068,7 +6002,7 @@ BT-MeasurementElement-r13 ::= SEQUENCE {
BT-RequestLocationInformation-r13 ::= SEQUENCE {
- requestedMeasurements-r13 BIT STRING {
+ requestedMeasurements-r13 BIT STRING {
rssi (0)} (SIZE(1..8)),
...
}
@@ -5082,8 +6016,10 @@ BT-ProvideCapabilities-r13 ::= SEQUENCE {
[[
idleStateForMeasurements-r14
ENUMERATED { required } OPTIONAL,
- periodicalReportingSupported-r14
+ periodicalReportingSupported-r14
PositioningModes OPTIONAL
+ ]],
+ [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL
]]
}
@@ -5119,7 +6055,10 @@ BT-TargetDeviceErrorCauses-r13 ::= SEQUENCE {
NR-UL-ProvideCapabilities-r16 ::= SEQUENCE {
nr-UL-SRS-Capability-r16 NR-UL-SRS-Capability-r16,
- ...
+ ...,
+ [[
+ nr-UE-TEG-Capability-r17 NR-UE-TEG-Capability-r17 OPTIONAL
+ ]]
}
@@ -5129,7 +6068,7 @@ NR-UL-RequestCapabilities-r16 ::= SEQUENCE {
NR-ECID-ProvideLocationInformation-r16 ::= SEQUENCE {
nr-ECID-SignalMeasurementInformation-r16 NR-ECID-SignalMeasurementInformation-r16 OPTIONAL,
- nr-ECID-Error-r16 NR-ECID-Error-r16 OPTIONAL,
+ nr-ECID-Error-r16 NR-ECID-Error-r16 OPTIONAL,
...
}
@@ -5179,7 +6118,7 @@ ResultsPerCSI-RS-Index-r16 ::= SEQUENCE {
NR-ECID-RequestLocationInformation-r16 ::= SEQUENCE {
requestedMeasurements-r16 BIT STRING { ssrsrpReq (0),
ssrsrqReq (1),
- csirsrpReq (2),
+ csirsrpReq (2),
csirsrqReq (3)} (SIZE(1..8)),
...
}
@@ -5192,7 +6131,12 @@ NR-ECID-ProvideCapabilities-r16 ::= SEQUENCE {
csirsrqSup (3)} (SIZE(1..8)),
periodicalReporting-r16 ENUMERATED { supported } OPTIONAL,
triggeredReporting-r16 ENUMERATED { supported } OPTIONAL,
- ...
+ ...,
+ [[
+ ten-ms-unit-ResponseTime-r17 ENUMERATED { supported } OPTIONAL,
+ scheduledLocationRequestSupported-r17
+ ScheduledLocationTimeSupport-r17 OPTIONAL
+ ]]
}
@@ -5232,38 +6176,72 @@ NR-ECID-TargetDeviceErrorCauses-r16 ::= SEQUENCE {
NR-DL-TDOA-ProvideAssistanceData-r16 ::= SEQUENCE {
nr-DL-PRS-AssistanceData-r16 NR-DL-PRS-AssistanceData-r16 OPTIONAL, -- Need ON
- nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON
+ nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON
nr-PositionCalculationAssistance-r16
NR-PositionCalculationAssistance-r16
- OPTIONAL, -- Cond UEB
+ OPTIONAL, -- Cond UEB
nr-DL-TDOA-Error-r16 NR-DL-TDOA-Error-r16 OPTIONAL, -- Need ON
- ...
+ ...,
+ [[
+ nr-On-Demand-DL-PRS-Configurations-r17
+ NR-On-Demand-DL-PRS-Configurations-r17
+ OPTIONAL, -- Need ON
+ nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17
+ NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 OPTIONAL, -- Need ON
+ assistanceDataValidityArea-r17 AreaID-CellList-r17 OPTIONAL -- Need ON
+ ]]
}
NR-DL-TDOA-RequestAssistanceData-r16 ::= SEQUENCE {
nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL,
- nr-AdType-r16 BIT STRING { dl-prs (0),
+ nr-AdType-r16 BIT STRING { dl-prs (0),
posCalc (1) } (SIZE (1..8)),
- ...
+ ...,
+ [[
+ nr-PosCalcAssistanceRequest-r17 BIT STRING { trpLoc (0),
+ beamInfo (1),
+ rtdInfo (2),
+ losNlosInfo (3),
+ trpTEG-Info (4)
+ } (SIZE (1..8)) OPTIONAL,
+ nr-on-demand-DL-PRS-Request-r17 NR-On-Demand-DL-PRS-Request-r17 OPTIONAL,
+ nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17
+ ENUMERATED { eAoD, eAoA } OPTIONAL,
+ pre-configured-AssistanceDataRequest-r17
+ ENUMERATED { true } OPTIONAL
+ ]]
}
NR-DL-TDOA-ProvideLocationInformation-r16 ::= SEQUENCE {
- nr-DL-TDOA-SignalMeasurementInformation-r16
+ nr-DL-TDOA-SignalMeasurementInformation-r16
NR-DL-TDOA-SignalMeasurementInformation-r16
OPTIONAL,
nr-dl-tdoa-LocationInformation-r16 NR-DL-TDOA-LocationInformation-r16
OPTIONAL,
nr-DL-TDOA-Error-r16 NR-DL-TDOA-Error-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-DL-TDOA-SignalMeasurementInstances-r17
+ SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF
+ NR-DL-TDOA-SignalMeasurementInformation-r16
+ OPTIONAL, -- Cond batchUEA
+ nr-DL-TDOA-LocationInformationInstances-r17
+ SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF
+ NR-DL-TDOA-LocationInformation-r16
+ OPTIONAL -- Cond batchUEB
+ ]]
}
NR-DL-TDOA-SignalMeasurementInformation-r16 ::= SEQUENCE {
dl-PRS-ReferenceInfo-r16 DL-PRS-ID-Info-r16,
nr-DL-TDOA-MeasList-r16 NR-DL-TDOA-MeasList-r16,
- ...
+ ...,
+ [[
+ nr-UE-RxTEG-TimingErrorMargin-r17 TEG-TimingErrorMargin-r17 OPTIONAL -- Cond UERxTEG
+ ]]
}
NR-DL-TDOA-MeasList-r16 ::= SEQUENCE (SIZE(1..nrMaxTRPs-r16)) OF NR-DL-TDOA-MeasElement-r16
@@ -5273,7 +6251,7 @@ NR-DL-TDOA-MeasElement-r16 ::= SEQUENCE {
nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL,
nr-CellGlobalID-r16 NCGI-r15 OPTIONAL,
nr-ARFCN-r16 ARFCN-ValueNR-r15 OPTIONAL,
- nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
nr-TimeStamp-r16 NR-TimeStamp-r16,
nr-RSTD-r16 CHOICE {
@@ -5290,15 +6268,29 @@ NR-DL-TDOA-MeasElement-r16 ::= SEQUENCE {
nr-DL-PRS-RSRP-Result-r16 INTEGER (0..126) OPTIONAL,
nr-DL-TDOA-AdditionalMeasurements-r16
NR-DL-TDOA-AdditionalMeasurements-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-UE-Rx-TEG-ID-r17 INTEGER (0..maxNumOfRxTEGs-1-r17) OPTIONAL,
+ nr-DL-PRS-FirstPathRSRP-Result-r17 INTEGER (0..126) OPTIONAL,
+ nr-los-nlos-Indicator-r17 CHOICE {
+ perTRP-r17 LOS-NLOS-Indicator-r17,
+ perResource-r17 LOS-NLOS-Indicator-r17
+ } OPTIONAL,
+ nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL,
+ nr-DL-TDOA-AdditionalMeasurementsExt-r17
+ NR-DL-TDOA-AdditionalMeasurementsExt-r17 OPTIONAL
+ ]]
}
NR-DL-TDOA-AdditionalMeasurements-r16 ::= SEQUENCE (SIZE (1..3)) OF
NR-DL-TDOA-AdditionalMeasurementElement-r16
+NR-DL-TDOA-AdditionalMeasurementsExt-r17 ::= SEQUENCE (SIZE (1..maxAddMeasTDOA-r17)) OF
+ NR-DL-TDOA-AdditionalMeasurementElement-r16
+
NR-DL-TDOA-AdditionalMeasurementElement-r16 ::= SEQUENCE {
- nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
- nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
nr-TimeStamp-r16 NR-TimeStamp-r16,
nr-RSTD-ResultDiff-r16 CHOICE {
k0-r16 INTEGER (0..8191),
@@ -5312,7 +6304,15 @@ NR-DL-TDOA-AdditionalMeasurementElement-r16 ::= SEQUENCE {
nr-TimingQuality-r16 NR-TimingQuality-r16,
nr-DL-PRS-RSRP-ResultDiff-r16 INTEGER (0..61) OPTIONAL,
nr-AdditionalPathList-r16 NR-AdditionalPathList-r16 OPTIONAL,
-...
+ ...,
+ [[
+ nr-UE-Rx-TEG-ID-r17 INTEGER (0..maxNumOfRxTEGs-1-r17) OPTIONAL,
+ nr-DL-PRS-FirstPathRSRP-ResultDiff-r17
+ INTEGER (0..61) OPTIONAL,
+ nr-los-nlos-IndicatorPerResource-r17
+ LOS-NLOS-Indicator-r17 OPTIONAL,
+ nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL
+ ]]
}
@@ -5322,23 +6322,48 @@ NR-DL-TDOA-LocationInformation-r16 ::= SEQUENCE {
utc-time-r16 UTCTime,
...
} OPTIONAL,
- ...
+ ...,
+ [[
+ locationCoordinates-r17 LocationCoordinates OPTIONAL, -- Cond batch1
+ locationSource-r17 LocationSource-r13 OPTIONAL -- Cond batch2
+ ]]
}
NR-DL-TDOA-RequestLocationInformation-r16 ::= SEQUENCE {
nr-DL-PRS-RstdMeasurementInfoRequest-r16 ENUMERATED { true } OPTIONAL,-- Need ON
- nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq (0) } (SIZE(1..8)),
+ nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq (0),
+ firstPathRsrpReq-r17 (1)
+ } (SIZE(1..8)),
nr-AssistanceAvailability-r16 BOOLEAN,
nr-DL-TDOA-ReportConfig-r16 NR-DL-TDOA-ReportConfig-r16 OPTIONAL, -- Need ON
additionalPaths-r16 ENUMERATED { requested } OPTIONAL, -- Need ON
- ...
+ ...,
+ [[
+ nr-UE-RxTEG-Request-r17 ENUMERATED { requested } OPTIONAL, -- Need ON
+ nr-los-nlos-IndicatorRequest-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType1-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity1-r17,
+ ...
+ } OPTIONAL, -- Need ON
+ additionalPathsExt-r17 ENUMERATED { requested } OPTIONAL, -- Need ON
+ additionalPathsDL-PRS-RSRP-Request-r17 ENUMERATED { requested } OPTIONAL, -- Need ON
+ multiMeasInSameReport-r17 ENUMERATED { requested } OPTIONAL -- Need ON
+
+ ]]
}
NR-DL-TDOA-ReportConfig-r16 ::= SEQUENCE {
- maxDL-PRS-RSTD-MeasurementsPerTRPPair-r16 INTEGER (1..4) OPTIONAL, -- Need ON
- timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL, -- Need ON
- ...
+ maxDL-PRS-RSTD-MeasurementsPerTRP-Pair-r16 INTEGER (1..4) OPTIONAL, -- Need ON
+ timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL, -- Need ON
+ ...,
+ [[
+ measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17
+ ENUMERATED { n0, n2, n3, n4, n6, n8, ... }
+ OPTIONAL, -- Need ON
+ reducedDL-PRS-ProcessingSamples-r17 ENUMERATED { requested, ... } OPTIONAL, -- Need ON
+ lowerRxBeamSweepingFactor-FR2-r17 ENUMERATED { requested } OPTIONAL -- Need ON
+ ]]
}
@@ -5350,7 +6375,42 @@ NR-DL-TDOA-ProvideCapabilities-r16 ::= SEQUENCE {
nr-DL-PRS-ProcessingCapability-r16 NR-DL-PRS-ProcessingCapability-r16,
additionalPathsReport-r16 ENUMERATED { supported } OPTIONAL,
periodicalReporting-r16 PositioningModes OPTIONAL,
- ...
+ ...,
+ [[
+ ten-ms-unit-ResponseTime-r17 PositioningModes OPTIONAL,
+ nr-PosCalcAssistanceSupport-r17 BIT STRING { trpLocSup (0),
+ beamInfoSup (1),
+ rtdInfoSup (2),
+ trpTEG-InfoSup (3)
+ } (SIZE (1..8)) OPTIONAL,
+ nr-los-nlos-AssistanceDataSupport-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType2-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity2-r17,
+ ...
+ } OPTIONAL,
+ nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17 BIT STRING { eAoD (0),
+ eAoA (1)
+ } (SIZE (1..8)) OPTIONAL,
+ nr-DL-TDOA-On-Demand-DL-PRS-Support-r17 NR-On-Demand-DL-PRS-Support-r17 OPTIONAL,
+ nr-los-nlos-IndicatorSupport-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType2-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity2-r17,
+ ...
+ } OPTIONAL,
+ additionalPathsExtSupport-r17 ENUMERATED { n4, n6, n8 } OPTIONAL,
+ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL,
+ nr-dl-prs-AssistanceDataValidity-r17 SEQUENCE {
+ area-validity-r17 INTEGER (1..maxNrOfAreas-r17) OPTIONAL, ...
+ } OPTIONAL,
+ multiMeasInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL,
+ mg-ActivationRequest-r17 ENUMERATED { supported } OPTIONAL
+ ]],
+ [[
+ posMeasGapSupport-r17 ENUMERATED { supported } OPTIONAL
+ ]],
+ [[
+ multiLocationEstimateInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
@@ -5359,9 +6419,22 @@ NR-DL-TDOA-MeasurementCapability-r16 ::= SEQUENCE {
dl-RSTD-MeasurementPerPairOfTRP-FR2-r16 INTEGER (1..4),
supportOfDL-PRS-RSRP-MeasFR1-r16 ENUMERATED { supported} OPTIONAL,
supportOfDL-PRS-RSRP-MeasFR2-r16 ENUMERATED { supported} OPTIONAL,
+ ...,
+ [[
+ nr-UE-TEG-Capability-r17 NR-UE-TEG-Capability-r17 OPTIONAL,
+ dl-tdoa-MeasCapabilityBandList-r17 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
+ DL-TDOA-MeasCapabilityPerBand-r17 OPTIONAL
+ ]]
+}
+
+DL-TDOA-MeasCapabilityPerBand-r17 ::= SEQUENCE {
+ freqBandIndicatorNR-r17 FreqBandIndicatorNR-r16,
+ supportOfDL-PRS-FirstPathRSRP-r17 ENUMERATED { supported } OPTIONAL,
+ dl-PRS-MeasRRC-Inactive-r17 ENUMERATED { supported } OPTIONAL,
...
}
+
NR-DL-TDOA-RequestCapabilities-r16 ::= SEQUENCE {
...
}
@@ -5379,7 +6452,9 @@ NR-DL-TDOA-LocationServerErrorCauses-r16 ::= SEQUENCE {
assistanceDataNotSupportedByServer,
assistanceDataSupportedButCurrentlyNotAvailableByServer,
notProvidedAssistanceDataNotSupportedByServer,
- ...
+ ...,
+ on-demand-dl-prs-NotSupportedByServer-v1700,
+ on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700
},
...
}
@@ -5403,17 +6478,39 @@ NR-DL-AoD-ProvideAssistanceData-r16 ::= SEQUENCE {
nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON
nr-PositionCalculationAssistance-r16
NR-PositionCalculationAssistance-r16
- OPTIONAL, -- Cond UEB
+ OPTIONAL, -- Cond UEB
nr-DL-AoD-Error-r16 NR-DL-AoD-Error-r16 OPTIONAL, -- Need ON
- ...
+ ...,
+ [[
+ nr-DL-PRS-BeamInfo-r17 NR-DL-PRS-BeamInfo-r16 OPTIONAL, -- Cond UEA
+ nr-On-Demand-DL-PRS-Configurations-r17
+ NR-On-Demand-DL-PRS-Configurations-r17
+ OPTIONAL, -- Need ON
+ nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17
+ NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17
+ OPTIONAL, -- Need ON
+ assistanceDataValidityArea-r17 AreaID-CellList-r17 OPTIONAL -- Need ON
+ ]]
}
NR-DL-AoD-RequestAssistanceData-r16 ::= SEQUENCE {
nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL,
- nr-AdType-r16 BIT STRING { dl-prs (0),
+ nr-AdType-r16 BIT STRING { dl-prs (0),
posCalc (1) } (SIZE (1..8)),
- ...
+ ...,
+ [[
+ nr-PosCalcAssistanceRequest-r17 BIT STRING { trpLoc (0),
+ beamInfo (1),
+ rtdInfo (2),
+ beamAntInfo (3),
+ losNlosInfo (4)
+ } (SIZE (1..8)) OPTIONAL,
+ nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17 ENUMERATED { eAoD, eAoA } OPTIONAL,
+ nr-DL-PRS-BeamInfoRequest-r17 ENUMERATED { requested } OPTIONAL,
+ nr-on-demand-DL-PRS-Request-r17 NR-On-Demand-DL-PRS-Request-r17 OPTIONAL,
+ pre-configured-AssistanceDataRequest-r17 ENUMERATED { true } OPTIONAL
+ ]]
}
@@ -5424,7 +6521,13 @@ NR-DL-AoD-ProvideLocationInformation-r16 ::= SEQUENCE {
nr-dl-AoD-LocationInformation-r16 NR-DL-AoD-LocationInformation-r16
OPTIONAL,
nr-DL-AoD-Error-r16 NR-DL-AoD-Error-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-DL-AoD-SignalMeasurementInstances-r17 SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF
+ NR-DL-AoD-SignalMeasurementInformation-r16 OPTIONAL, -- Cond batchUEA
+ nr-DL-AoD-LocationInformationInstances-r17 SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF
+ NR-DL-AoD-LocationInformation-r16 OPTIONAL -- Cond batchUEB
+ ]]
}
@@ -5440,48 +6543,92 @@ NR-DL-AoD-MeasElement-r16 ::= SEQUENCE {
nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL,
nr-CellGlobalID-r16 NCGI-r15 OPTIONAL,
nr-ARFCN-r16 ARFCN-ValueNR-r15 OPTIONAL,
- nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
- nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
nr-TimeStamp-r16 NR-TimeStamp-r16,
nr-DL-PRS-RSRP-Result-r16 INTEGER (0..126),
nr-DL-PRS-RxBeamIndex-r16 INTEGER (1..8) OPTIONAL,
nr-DL-AoD-AdditionalMeasurements-r16
NR-DL-AoD-AdditionalMeasurements-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-DL-PRS-FirstPathRSRP-Result-r17
+ INTEGER (0..126) OPTIONAL,
+ nr-los-nlos-Indicator-r17 CHOICE {
+ perTRP-r17 LOS-NLOS-Indicator-r17,
+ perResource-r17 LOS-NLOS-Indicator-r17
+ } OPTIONAL,
+ nr-DL-AoD-AdditionalMeasurementsExt-r17
+ NR-DL-AoD-AdditionalMeasurementsExt-r17 OPTIONAL
+ ]]
}
NR-DL-AoD-AdditionalMeasurements-r16 ::= SEQUENCE (SIZE (1..7)) OF
NR-DL-AoD-AdditionalMeasurementElement-r16
+NR-DL-AoD-AdditionalMeasurementsExt-r17 ::= SEQUENCE (SIZE (1..maxAddMeasAoD-r17)) OF
+ NR-DL-AoD-AdditionalMeasurementElement-r17
+
NR-DL-AoD-AdditionalMeasurementElement-r16 ::= SEQUENCE {
- nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
- nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
nr-TimeStamp-r16 NR-TimeStamp-r16,
nr-DL-PRS-RSRP-ResultDiff-r16 INTEGER (0..30),
nr-DL-PRS-RxBeamIndex-r16 INTEGER (1..8) OPTIONAL,
...
}
+NR-DL-AoD-AdditionalMeasurementElement-r17 ::= SEQUENCE {
+ nr-DL-PRS-ResourceID-r17 NR-DL-PRS-ResourceID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
+ nr-TimeStamp-r17 NR-TimeStamp-r16,
+ nr-DL-PRS-RSRP-ResultDiff-r17 INTEGER (0..30) OPTIONAL, -- Cond rsrp
+ nr-DL-PRS-RxBeamIndex-r17 INTEGER (1..8) OPTIONAL,
+ nr-DL-PRS-FirstPathRSRP-ResultDiff-r17 INTEGER (0..61) OPTIONAL, -- Cond rsrpp
+ nr-los-nlos-IndicatorPerResource-r17 LOS-NLOS-Indicator-r17 OPTIONAL,
+ ...
+}
+
NR-DL-AoD-LocationInformation-r16 ::= SEQUENCE {
- measurementReferenceTime-r16 CHOICE {
+ measurementReferenceTime-r16 CHOICE {
sfn-time-r16 NR-TimeStamp-r16,
utc-time-r16 UTCTime,
...
} OPTIONAL,
- ...
+ ...,
+ [[
+ locationCoordinates-r17 LocationCoordinates OPTIONAL, -- Cond batch1
+ locationSource-r17 LocationSource-r13 OPTIONAL -- Cond batch2
+ ]]
}
NR-DL-AoD-RequestLocationInformation-r16 ::= SEQUENCE {
nr-AssistanceAvailability-r16 BOOLEAN,
nr-DL-AoD-ReportConfig-r16 NR-DL-AoD-ReportConfig-r16,
- ...
+ ...,
+ [[
+ multiMeasInSameReport-r17 ENUMERATED { requested } OPTIONAL -- Need ON
+ ]]
}
NR-DL-AoD-ReportConfig-r16 ::= SEQUENCE {
- maxDL-PRS-RSRP-MeasurementsPerTRP-r16 INTEGER (1..8) OPTIONAL, -- Need ON
- ...
+ maxDL-PRS-RSRP-MeasurementsPerTRP-r16 INTEGER (1..8) OPTIONAL, -- Need ON
+ ...,
+ [[
+ maxDL-PRS-RSRP-MeasurementsPerTRP-r17 INTEGER (9..24) OPTIONAL, -- Need ON
+ maxDL-PRS-RSRPP-MeasurementsPerTRP-r17 INTEGER (1..24) OPTIONAL, -- Need ON
+ nr-los-nlos-IndicatorRequest-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType1-r17,
+ granularity-r17
+ LOS-NLOS-IndicatorGranularity1-r17,
+ ...
+ } OPTIONAL, -- Need ON
+ reducedDL-PRS-ProcessingSamples-r17 ENUMERATED { requested, ... }
+ OPTIONAL, -- Need ON
+ lowerRxBeamSweepingFactor-FR2-r17 ENUMERATED { requested } OPTIONAL -- Need ON
+ ]]
}
@@ -5491,8 +6638,47 @@ NR-DL-AoD-ProvideCapabilities-r16 ::= SEQUENCE {
nr-DL-AoD-MeasurementCapability-r16 NR-DL-AoD-MeasurementCapability-r16,
nr-DL-PRS-QCL-ProcessingCapability-r16 NR-DL-PRS-QCL-ProcessingCapability-r16,
nr-DL-PRS-ProcessingCapability-r16 NR-DL-PRS-ProcessingCapability-r16,
- periodicalReporting-r16 PositioningModes OPTIONAL,
- ...
+ periodicalReporting-r16 PositioningModes OPTIONAL,
+ ...,
+ [[
+ ten-ms-unit-ResponseTime-r17 PositioningModes OPTIONAL,
+ nr-PosCalcAssistanceSupport-r17 BIT STRING { trpLocSup (0),
+ beamInfoSup (1),
+ rtdInfoSup (2),
+ beamAntInfoSup (3)
+ } (SIZE (1..8)) OPTIONAL,
+ nr-los-nlos-AssistanceDataSupport-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType2-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity2-r17,
+ ...
+ } OPTIONAL,
+ nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17 BIT STRING { eAoD (0),
+ eAoA (1)
+ } (SIZE (1..8)) OPTIONAL,
+ dl-PRS-ResourcePrioritySubset-Sup-r17 ENUMERATED { sameSet, differentSet, sameOrDifferentSet }
+ OPTIONAL,
+ nr-DL-PRS-BeamInfoSup-r17 ENUMERATED { supported } OPTIONAL,
+ nr-DL-AoD-On-Demand-DL-PRS-Support-r17 NR-On-Demand-DL-PRS-Support-r17 OPTIONAL,
+ nr-los-nlos-IndicatorSupport-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType2-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity2-r17,
+ ...
+ } OPTIONAL,
+ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17
+ OPTIONAL,
+ nr-dl-prs-AssistanceDataValidity-r17 SEQUENCE {
+ area-validity-r17 INTEGER (1..maxNrOfAreas-r17) OPTIONAL,
+ ...
+ } OPTIONAL,
+ multiMeasInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL,
+ mg-ActivationRequest-r17 ENUMERATED { supported } OPTIONAL
+ ]],
+ [[
+ posMeasGapSupport-r17 ENUMERATED { supported } OPTIONAL
+ ]],
+ [[
+ multiLocationEstimateInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
@@ -5501,14 +6687,22 @@ NR-DL-AoD-MeasurementCapability-r16 ::= SEQUENCE {
maxDL-PRS-RSRP-MeasurementFR2-r16 INTEGER (1..8),
dl-AoD-MeasCapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
DL-AoD-MeasCapabilityPerBand-r16,
- ...
+ ...,
+ [[
+ maxDL-PRS-RSRP-MeasurementFR1-v1730 ENUMERATED { n16, n24 } OPTIONAL,
+ maxDL-PRS-RSRP-MeasurementFR2-v1730 ENUMERATED { n16, n24 } OPTIONAL
+ ]]
}
DL-AoD-MeasCapabilityPerBand-r16 ::= SEQUENCE {
- freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16,
- simul-NR-DL-AoD-DL-TDOA-r16 ENUMERATED { supported} OPTIONAL,
- simul-NR-DL-AoD-Multi-RTT-r16 ENUMERATED { supported} OPTIONAL,
- ...
+ freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16,
+ simul-NR-DL-AoD-DL-TDOA-r16 ENUMERATED { supported} OPTIONAL,
+ simul-NR-DL-AoD-Multi-RTT-r16 ENUMERATED { supported} OPTIONAL,
+ ...,
+ [[
+ maxDL-PRS-FirstPathRSRP-MeasPerTRP-r17 ENUMERATED { n1, n2, n4, n8, n16, n24 } OPTIONAL,
+ dl-PRS-MeasRRC-Inactive-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
@@ -5529,7 +6723,9 @@ NR-DL-AoD-LocationServerErrorCauses-r16 ::= SEQUENCE {
assistanceDataNotSupportedByServer,
assistanceDataSupportedButCurrentlyNotAvailableByServer,
notProvidedAssistanceDataNotSupportedByServer,
- ...
+ ...,
+ on-demand-dl-prs-NotSupportedByServer-v1700,
+ on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700
},
...
}
@@ -5549,18 +6745,31 @@ NR-DL-AoD-TargetDeviceErrorCauses-r16 ::= SEQUENCE {
NR-Multi-RTT-ProvideAssistanceData-r16 ::= SEQUENCE {
- nr-DL-PRS-AssistanceData-r16 NR-DL-PRS-AssistanceData-r16 OPTIONAL, -- Need ON
- nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON
- nr-Multi-RTT-Error-r16 NR-Multi-RTT-Error-r16 OPTIONAL, -- Need ON
- ...
+ nr-DL-PRS-AssistanceData-r16 NR-DL-PRS-AssistanceData-r16 OPTIONAL, -- Need ON
+ nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON
+ nr-Multi-RTT-Error-r16 NR-Multi-RTT-Error-r16 OPTIONAL, -- Need ON
+ ...,
+ [[
+ nr-On-Demand-DL-PRS-Configurations-r17 NR-On-Demand-DL-PRS-Configurations-r17
+ OPTIONAL, -- Need ON
+ nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17
+ NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17
+ OPTIONAL, -- Need ON
+ assistanceDataValidityArea-r17 AreaID-CellList-r17 OPTIONAL -- Need ON
+ ]]
}
NR-Multi-RTT-RequestAssistanceData-r16 ::= SEQUENCE {
nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL,
- nr-AdType-r16 BIT STRING { dl-prs (0),
+ nr-AdType-r16 BIT STRING { dl-prs (0),
ul-srs (1) } (SIZE (1..8)),
- ...
+ ...,
+ [[
+ nr-on-demand-DL-PRS-Request-r17 NR-On-Demand-DL-PRS-Request-r17 OPTIONAL,
+ nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17 ENUMERATED { eAoD, eAoA } OPTIONAL,
+ pre-configured-AssistanceDataRequest-r17 ENUMERATED { true } OPTIONAL
+ ]]
}
@@ -5569,14 +6778,30 @@ NR-Multi-RTT-ProvideLocationInformation-r16 ::= SEQUENCE {
NR-Multi-RTT-SignalMeasurementInformation-r16
OPTIONAL,
nr-Multi-RTT-Error-r16 NR-Multi-RTT-Error-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-Multi-RTT-SignalMeasurementInstances-r17
+ SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF
+ NR-Multi-RTT-SignalMeasurementInformation-r16
+ OPTIONAL --Cond batchUEA
+ ]]
}
NR-Multi-RTT-SignalMeasurementInformation-r16 ::= SEQUENCE {
nr-Multi-RTT-MeasList-r16 NR-Multi-RTT-MeasList-r16,
nr-NTA-Offset-r16 ENUMERATED { nTA1, nTA2, nTA3, nTA4, ... } OPTIONAL,
- ...
+ ...,
+ [[
+ nr-SRS-TxTEG-Set-r17 SEQUENCE (SIZE(1..maxTxTEG-Sets-r17)) OF
+ NR-SRS-TxTEG-Element-r17 OPTIONAL
+ -- Cond Case2-3
+ ]],
+ [[
+ nr-UE-RxTEG-TimingErrorMargin-r17 TEG-TimingErrorMargin-r17 OPTIONAL,-- Cond TEGCase3
+ nr-UE-TxTEG-TimingErrorMargin-r17 TEG-TimingErrorMargin-r17 OPTIONAL,-- Cond TEGCase2-3
+ nr-UE-RxTxTEG-TimingErrorMargin-r17 RxTxTEG-TimingErrorMargin-r17 OPTIONAL -- Cond TEGCase1-2
+ ]]
}
NR-Multi-RTT-MeasList-r16 ::= SEQUENCE (SIZE(1..nrMaxTRPs-r16)) OF NR-Multi-RTT-MeasElement-r16
@@ -5587,7 +6812,7 @@ NR-Multi-RTT-MeasElement-r16 ::= SEQUENCE {
nr-CellGlobalID-r16 NCGI-r15 OPTIONAL,
nr-ARFCN-r16 ARFCN-ValueNR-r15 OPTIONAL,
nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
- nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
nr-UE-RxTxTimeDiff-r16 CHOICE {
k0-r16 INTEGER (0..1970049),
k1-r16 INTEGER (0..985025),
@@ -5603,15 +6828,29 @@ NR-Multi-RTT-MeasElement-r16 ::= SEQUENCE {
nr-DL-PRS-RSRP-Result-r16 INTEGER (0..126) OPTIONAL,
nr-Multi-RTT-AdditionalMeasurements-r16
NR-Multi-RTT-AdditionalMeasurements-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ nr-UE-RxTx-TEG-Info-r17 NR-UE-RxTx-TEG-Info-r17 OPTIONAL,
+ nr-DL-PRS-FirstPathRSRP-Result-r17 INTEGER (0..126) OPTIONAL,
+ nr-los-nlos-Indicator-r17 CHOICE {
+ perTRP-r17 LOS-NLOS-Indicator-r17,
+ perResource-r17 LOS-NLOS-Indicator-r17
+ } OPTIONAL,
+ nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL,
+ nr-Multi-RTT-AdditionalMeasurementsExt-r17
+ NR-Multi-RTT-AdditionalMeasurementsExt-r17 OPTIONAL
+ ]]
}
NR-Multi-RTT-AdditionalMeasurements-r16 ::= SEQUENCE (SIZE (1..3)) OF
NR-Multi-RTT-AdditionalMeasurementElement-r16
+NR-Multi-RTT-AdditionalMeasurementsExt-r17 ::= SEQUENCE (SIZE (1..maxAddMeasRTT-r17)) OF
+ NR-Multi-RTT-AdditionalMeasurementElement-r16
+
NR-Multi-RTT-AdditionalMeasurementElement-r16 ::= SEQUENCE {
nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL,
- nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
+ nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL,
nr-DL-PRS-RSRP-ResultDiff-r16 INTEGER (0..61) OPTIONAL,
nr-UE-RxTxTimeDiffAdditional-r16 CHOICE {
k0-r16 INTEGER (0..8191),
@@ -5625,6 +6864,39 @@ NR-Multi-RTT-AdditionalMeasurementElement-r16 ::= SEQUENCE {
nr-TimingQuality-r16 NR-TimingQuality-r16,
nr-AdditionalPathList-r16 NR-AdditionalPathList-r16 OPTIONAL,
nr-TimeStamp-r16 NR-TimeStamp-r16,
+ ...,
+ [[
+ nr-UE-RxTx-TEG-Info-r17 NR-UE-RxTx-TEG-Info-r17 OPTIONAL,
+ nr-DL-PRS-FirstPathRSRP-ResultDiff-r17 INTEGER (0..61) OPTIONAL,
+ nr-los-nlos-IndicatorPerResource-r17 LOS-NLOS-Indicator-r17 OPTIONAL,
+ nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL
+ ]]
+}
+
+NR-SRS-TxTEG-Element-r17 ::= SEQUENCE {
+ nr-TimeStamp-r17 NR-TimeStamp-r16 OPTIONAL, -- Need OP
+ nr-UE-Tx-TEG-ID-r17 INTEGER (0..maxNumOfTxTEGs-1-r17),
+ carrierFreq-r17 SEQUENCE {
+ absoluteFrequencyPointA-r17 ARFCN-ValueNR-r15,
+ offsetToPointA-r17 INTEGER (0..2199)
+ } OPTIONAL,
+ srs-PosResourceList-r17 SEQUENCE (SIZE (1..maxNumOfSRS-PosResources-r17)) OF
+ INTEGER (0..maxNumOfSRS-PosResources-1-r17),
+ ...
+}
+
+NR-UE-RxTx-TEG-Info-r17 ::= CHOICE {
+ case1-r17 SEQUENCE {
+ nr-UE-RxTx-TEG-ID-r17 INTEGER (0..maxNumOfRxTxTEGs-1-r17)
+ },
+ case2-r17 SEQUENCE {
+ nr-UE-RxTx-TEG-ID-r17 INTEGER (0..maxNumOfRxTxTEGs-1-r17),
+ nr-UE-Tx-TEG-Index-r17 INTEGER (1..maxTxTEG-Sets-r17)
+ },
+ case3-r17 SEQUENCE {
+ nr-UE-Rx-TEG-ID-r17 INTEGER (0..maxNumOfRxTEGs-1-r17),
+ nr-UE-Tx-TEG-Index-r17 INTEGER (1..maxTxTEG-Sets-r17)
+ },
...
}
@@ -5632,16 +6904,39 @@ NR-Multi-RTT-AdditionalMeasurementElement-r16 ::= SEQUENCE {
NR-Multi-RTT-RequestLocationInformation-r16 ::= SEQUENCE {
nr-UE-RxTxTimeDiffMeasurementInfoRequest-r16
ENUMERATED { true } OPTIONAL, -- Need ON
- nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq(0)} (SIZE(1..8)),
+ nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq (0),
+ firstPathRsrpReq-r17 (1) } (SIZE(1..8)),
nr-AssistanceAvailability-r16 BOOLEAN,
nr-Multi-RTT-ReportConfig-r16 NR-Multi-RTT-ReportConfig-r16,
additionalPaths-r16 ENUMERATED { requested } OPTIONAL, -- Need ON
- ...
+ ...,
+ [[
+ nr-UE-RxTxTEG-Request-r17 ENUMERATED { case1, case2, case3, ... }
+ OPTIONAL, -- Need ON
+ measureSameDL-PRS-ResourceWithDifferentRxTxTEGs-r17
+ ENUMERATED { n0, n2, n3, n4, n6, n8, ... }
+ OPTIONAL, -- Need ON
+ measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17
+ ENUMERATED { n0, n2, n3, n4, n6, n8, ... }
+ OPTIONAL, -- Need ON
+ reducedDL-PRS-ProcessingSamples-r17
+ ENUMERATED { requested, ... } OPTIONAL, -- Need ON
+ nr-los-nlos-IndicatorRequest-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType1-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity1-r17,
+ ...
+ } OPTIONAL, -- Need ON
+ additionalPathsExt-r17 ENUMERATED { requested } OPTIONAL, -- Need ON
+ additionalPathsDL-PRS-RSRP-Request-r17
+ ENUMERATED { requested } OPTIONAL, -- Need ON
+ multiMeasInSameReport-r17 ENUMERATED { requested } OPTIONAL, -- Need ON
+ lowerRxBeamSweepingFactor-FR2-r17 ENUMERATED { requested } OPTIONAL -- Need ON
+ ]]
}
NR-Multi-RTT-ReportConfig-r16 ::= SEQUENCE {
- maxDL-PRS-RxTxTimeDiffMeasPerTRP-r16 INTEGER (1..4) OPTIONAL, -- Need ON
- timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL -- Need ON
+ maxDL-PRS-RxTxTimeDiffMeasPerTRP-r16 INTEGER (1..4) OPTIONAL, -- Need ON
+ timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL -- Need ON
}
@@ -5653,17 +6948,57 @@ NR-Multi-RTT-ProvideCapabilities-r16 ::= SEQUENCE {
nr-UL-SRS-Capability-r16 NR-UL-SRS-Capability-r16,
additionalPathsReport-r16 ENUMERATED { supported } OPTIONAL,
periodicalReporting-r16 ENUMERATED { supported } OPTIONAL,
- ...
+ ...,
+ [[
+ ten-ms-unit-ResponseTime-r17 ENUMERATED { supported } OPTIONAL,
+ nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17 BIT STRING { eAoD (0),
+ eAoA (1)
+ } (SIZE (1..8)) OPTIONAL, nr-Multi-RTT-On-Demand-DL-PRS-Support-r17
+ NR-On-Demand-DL-PRS-Support-r17 OPTIONAL,
+ nr-UE-RxTx-TEG-ID-ReportingSupport-r17 BIT STRING { case1 (0),
+ case2 (1),
+ case3 (2)
+ } (SIZE (1..8)) OPTIONAL,
+ nr-los-nlos-IndicatorSupport-r17 SEQUENCE {
+ type-r17 LOS-NLOS-IndicatorType2-r17,
+ granularity-r17 LOS-NLOS-IndicatorGranularity2-r17,
+ ...
+ } OPTIONAL,
+ additionalPathsExtSupport-r17 ENUMERATED { n4, n6, n8 } OPTIONAL,
+ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupport-r17 OPTIONAL,
+ nr-dl-prs-AssistanceDataValidity-r17 SEQUENCE {
+ area-validity-r17 INTEGER (1..maxNrOfAreas-r17) OPTIONAL,
+ ...
+ } OPTIONAL,
+ multiMeasInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL,
+ mg-ActivationRequest-r17 ENUMERATED { supported } OPTIONAL
+ ]],
+ [[
+ posMeasGapSupport-r17 ENUMERATED { supported } OPTIONAL
+ ]]
}
NR-Multi-RTT-MeasurementCapability-r16 ::= SEQUENCE {
- maxNrOfRx-TX-MeasFR1-r16 INTEGER (1..4) OPTIONAL,
- maxNrOfRx-TX-MeasFR2-r16 INTEGER (1..4) OPTIONAL,
- supportOfRSRP-MeasFR1-r16 ENUMERATED { supported} OPTIONAL,
- supportOfRSRP-MeasFR2-r16 ENUMERATED { supported} OPTIONAL,
- srs-AssocPRS-MultiLayersFR1-r16 ENUMERATED { supported} OPTIONAL,
- srs-AssocPRS-MultiLayersFR2-r16 ENUMERATED { supported} OPTIONAL,
+ maxNrOfRx-TX-MeasFR1-r16 INTEGER (1..4) OPTIONAL,
+ maxNrOfRx-TX-MeasFR2-r16 INTEGER (1..4) OPTIONAL,
+ supportOfRSRP-MeasFR1-r16 ENUMERATED { supported } OPTIONAL,
+ supportOfRSRP-MeasFR2-r16 ENUMERATED { supported } OPTIONAL,
+ srs-AssocPRS-MultiLayersFR1-r16 ENUMERATED { supported } OPTIONAL,
+ srs-AssocPRS-MultiLayersFR2-r16 ENUMERATED { supported } OPTIONAL,
+ ...,
+ [[
+ nr-UE-TEG-Capability-r17 NR-UE-TEG-Capability-r17 OPTIONAL,
+ multi-RTT-MeasCapabilityBandList-r17 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF
+ Multi-RTT-MeasCapabilityPerBand-r17
+ OPTIONAL
+ ]]
+}
+
+Multi-RTT-MeasCapabilityPerBand-r17 ::= SEQUENCE {
+ freqBandIndicatorNR-r17 FreqBandIndicatorNR-r16,
+ supportOfDL-PRS-FirstPathRSRP-r17 ENUMERATED { supported } OPTIONAL,
+ dl-PRS-MeasRRC-Inactive-r17 ENUMERATED { supported } OPTIONAL,
...
}
@@ -5684,7 +7019,9 @@ NR-Multi-RTT-LocationServerErrorCauses-r16 ::= SEQUENCE {
cause-r16 ENUMERATED { undefined,
assistanceDataNotSupportedByServer,
assistanceDataSupportedButCurrentlyNotAvailableByServer,
- ...
+ ...,
+ on-demand-dl-prs-NotSupportedByServer-v1700,
+ on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700
},
...
}
@@ -5720,10 +7057,10 @@ nrMaxBands-r16 INTEGER ::= 1024 -- Maximum number of supported bands in
-- UE capability.
nrMaxFreqLayers-r16 INTEGER ::= 4 -- Max freq layers
nrMaxFreqLayers-1-r16 INTEGER ::= 3
-nrMaxNumDL-PRS-ResourcesPerSet-1-r16 INTEGER ::= 63
+nrMaxNumDL-PRS-ResourcesPerSet-1-r16 INTEGER ::= 63
nrMaxNumDL-PRS-ResourceSetsPerTRP-1-r16 INTEGER ::= 7
nrMaxResourceIDs-r16 INTEGER ::= 64 -- Max Resource IDs
-nrMaxResourceOffsetValue-1-r16 INTEGER ::= 511
+nrMaxResourceOffsetValue-1-r16 INTEGER ::= 511
nrMaxResourcesPerSet-r16 INTEGER ::= 64 -- Maximum resources for one set
nrMaxSetsPerTrpPerFreqLayer-r16 INTEGER ::= 2 -- Maximum resource sets for one TRP
nrMaxSetsPerTrpPerFreqLayer-1-r16 INTEGER ::= 1
@@ -5735,5 +7072,27 @@ maxSimultaneousBands-r16 INTEGER ::= 4 -- Maximum number of simultaneously
maxBandComb-r16 INTEGER ::= 1024
nrMaxConfiguredBands-r16 INTEGER ::= 16
+maxNumOfRxTEGs-r17 INTEGER ::= 32
+maxNumOfRxTEGs-1-r17 INTEGER ::= 31
+maxNumOfTxTEGs-1-r17 INTEGER ::= 7
+maxTxTEG-Sets-r17 INTEGER ::= 256 -- Maximum applicable number is 64
+maxNumOfRxTxTEGs-1-r17 INTEGER ::= 255
+maxNumOfTRP-TxTEGs-1-r17 INTEGER ::= 7
+maxNumOfSRS-PosResources-r17 INTEGER ::= 64
+maxNumOfSRS-PosResources-1-r17 INTEGER ::= 63
+
+maxNumResourcesPerAngle-r17 INTEGER ::= 24
+maxNumPrioResources-r17 INTEGER ::= 24
+
+maxAddMeasTDOA-r17 INTEGER ::= 31
+maxAddMeasAoD-r17 INTEGER ::= 23
+maxAddMeasRTT-r17 INTEGER ::= 31
+
+maxOD-DL-PRS-Configs-r17 INTEGER ::= 8
+
+maxCellIDsPerArea-r17 INTEGER ::= 256
+maxNrOfAreas-r17 INTEGER ::= 16
+maxMeasInstances-r17 INTEGER ::= 32
+
END
diff --git a/epan/dissectors/asn1/lpp/lpp.cnf b/epan/dissectors/asn1/lpp/lpp.cnf
index c06096a484..fe62c2e010 100644
--- a/epan/dissectors/asn1/lpp/lpp.cnf
+++ b/epan/dissectors/asn1/lpp/lpp.cnf
@@ -1,6 +1,6 @@
# lpp.cnf
# lpp conformation file
-# Copyright 2011-2021 Pascal Quantin
+# Copyright 2011-2024 Pascal Quantin
#.OPT
PER
@@ -66,6 +66,8 @@ GNSS-Almanac
GNSS-DataBitAssistance
GNSS-DifferentialCorrections
GNSS-EarthOrientationParameters
+GNSS-Integrity-ServiceAlert-r17
+GNSS-Integrity-ServiceParameters-r17
GNSS-IonosphericModel
GNSS-NavigationModel
GNSS-RealTimeIntegrity
@@ -79,13 +81,16 @@ GNSS-RTK-Observations-r15
GNSS-RTK-ReferenceStationInfo-r15
GNSS-RTK-Residuals-r15
GNSS-SSR-ClockCorrections-r15
+GNSS-SSR-ClockCorrectionsSet2-r17
GNSS-SSR-CodeBias-r15
GNSS-SSR-CorrectionPoints-r16
GNSS-SSR-GriddedCorrection-r16
GNSS-SSR-OrbitCorrections-r15
+GNSS-SSR-OrbitCorrectionsSet2-r17
GNSS-SSR-PhaseBias-r16
GNSS-SSR-STEC-Correction-r16
GNSS-SSR-URA-r16
+GNSS-SSR-URA-Set2-r17
GNSS-TimeModelList
GNSS-UTC-Model
HorizontalVelocity
@@ -98,6 +103,9 @@ LPP-Message
NavIC-DifferentialCorrections-r16
NavIC-GridModelParameter-r16
NR-DL-PRS-AssistanceData-r16
+NR-DL-PRS-TRP-TEG-Info-r17
+NR-On-Demand-DL-PRS-Configurations-r17
+NR-TRP-BeamAntennaInfo-r17
NR-UEB-TRP-LocationData-r16
NR-UEB-TRP-RTD-Info-r16
OTDOA-UE-Assisted-r15
@@ -835,61 +843,61 @@ NavModelCNAV-KeplerianSet/cnavDeltaNo DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cn
NavModelCNAV-KeplerianSet/cnavDeltaNoDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaNoDot_fmt)
#.FN_BODY NavModelCNAV-KeplerianSet/cnavMo VAL_PTR=&cnavMo
- gint64 cnavMo;
+ int64_t cnavMo;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.FN_FTR NavModelCNAV-KeplerianSet/cnavMo
proto_item_set_hidden(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavMo, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavMo, "%g semi-circles (%"PRId64")",
(double)cnavMo*pow(2, -32), cnavMo);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavE VAL_PTR=&cnavE
- guint64 cnavE;
+ uint64_t cnavE;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.FN_FTR NavModelCNAV-KeplerianSet/cnavE
proto_item_set_hidden(actx->created_item);
actx->created_item = proto_tree_add_uint64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavE, "%g (%"G_GINT64_MODIFIER"u)",
+ cnavE, "%g (%"PRIu64")",
(double)cnavE*pow(2, -34), cnavE);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavOmega VAL_PTR=&cnavOmega
- gint64 cnavOmega;
+ int64_t cnavOmega;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.FN_FTR NavModelCNAV-KeplerianSet/cnavOmega
proto_item_set_hidden(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavOmega, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavOmega, "%g semi-circles (%"PRId64")",
(double)cnavOmega*pow(2, -32), cnavOmega);
#.FN_BODY NavModelCNAV-KeplerianSet/cnavOMEGA0 VAL_PTR=&cnavOMEGA0
- gint64 cnavOMEGA0;
+ int64_t cnavOMEGA0;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.FN_FTR NavModelCNAV-KeplerianSet/cnavOMEGA0
proto_item_set_hidden(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavOMEGA0, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavOMEGA0, "%g semi-circles (%"PRId64")",
(double)cnavOMEGA0*pow(2, -32), cnavOMEGA0);
#.TYPE_ATTR
NavModelCNAV-KeplerianSet/cnavDeltaOmegaDot DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lpp_cnavDeltaOmegaDot_IoDot_fmt)
#.FN_BODY NavModelCNAV-KeplerianSet/cnavIo VAL_PTR=&cnavIo
- gint64 cnavIo;
+ int64_t cnavIo;
int curr_offset = offset;
%(DEFAULT_BODY)s
#.FN_FTR NavModelCNAV-KeplerianSet/cnavIo
proto_item_set_hidden(actx->created_item);
actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3,
- cnavIo, "%g semi-circles (%"G_GINT64_MODIFIER"d)",
+ cnavIo, "%g semi-circles (%"PRId64")",
(double)cnavIo*pow(2, -32), cnavIo);
#.TYPE_ATTR
@@ -1773,7 +1781,7 @@ WLAN-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&
WLAN-AP-Identifier-r13/bssid-r13 TYPE=FT_ETHER
#.TYPE_ATTR
-WLAN-AP-Identifier-r13/ssid-r13 TYPE=FT_STRING DISPLAY=STR_ASCII
+WLAN-AP-Identifier-r13/ssid-r13 TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY WLAN-AP-Identifier-r13/ssid-r13 VAL_PTR=&ssid_tvb HF_INDEX=-1
tvbuff_t *ssid_tvb = NULL;
@@ -1833,6 +1841,12 @@ BT-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&un
case LPP_POS_SIB_TYPE_1_8:
dissect_GNSS_SSR_CorrectionPoints_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
+ case LPP_POS_SIB_TYPE_1_9:
+ dissect_GNSS_Integrity_ServiceParameters_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case LPP_POS_SIB_TYPE_1_10:
+ dissect_GNSS_Integrity_ServiceAlert_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
case LPP_POS_SIB_TYPE_2_1:
dissect_GNSS_TimeModelList_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
@@ -1884,15 +1898,24 @@ BT-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&un
case LPP_POS_SIB_TYPE_2_17:
dissect_GNSS_SSR_OrbitCorrections_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
+ case LPP_POS_SIB_TYPE_2_17a:
+ dissect_GNSS_SSR_OrbitCorrectionsSet2_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
case LPP_POS_SIB_TYPE_2_18:
dissect_GNSS_SSR_ClockCorrections_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
+ case LPP_POS_SIB_TYPE_2_18a:
+ dissect_GNSS_SSR_ClockCorrectionsSet2_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
case LPP_POS_SIB_TYPE_2_19:
dissect_GNSS_SSR_CodeBias_r15_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
case LPP_POS_SIB_TYPE_2_20:
dissect_GNSS_SSR_URA_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
+ case LPP_POS_SIB_TYPE_2_20a:
+ dissect_GNSS_SSR_URA_Set2_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
case LPP_POS_SIB_TYPE_2_21:
dissect_GNSS_SSR_PhaseBias_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
@@ -1926,6 +1949,15 @@ BT-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&un
case LPP_POS_SIB_TYPE_6_3:
dissect_NR_UEB_TRP_RTD_Info_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
break;
+ case LPP_POS_SIB_TYPE_6_4:
+ dissect_NR_TRP_BeamAntennaInfo_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case LPP_POS_SIB_TYPE_6_5:
+ dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case LPP_POS_SIB_TYPE_6_6:
+ dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL);
+ break;
default:
break;
}
diff --git a/epan/dissectors/asn1/lpp/packet-lpp-template.c b/epan/dissectors/asn1/lpp/packet-lpp-template.c
index 5308f5e2f0..bd5c75dbc9 100644
--- a/epan/dissectors/asn1/lpp/packet-lpp-template.c
+++ b/epan/dissectors/asn1/lpp/packet-lpp-template.c
@@ -1,6 +1,6 @@
/* packet-lpp.c
* Routines for 3GPP LTE Positioning Protocol (LPP) packet dissection
- * Copyright 2011-2021 Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2011-2024 Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -8,7 +8,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * Ref 3GPP TS 37.355 version 16.6.0 Release 16
+ * Ref 3GPP TS 37.355 version 17.7.0 Release 17
* http://www.3gpp.org
*/
@@ -32,31 +32,31 @@ void proto_register_lpp(void);
void proto_reg_handoff_lpp(void);
/* Initialize the protocol and registered fields */
-static int proto_lpp = -1;
+static int proto_lpp;
#include "packet-lpp-hf.c"
-static int hf_lpp_svHealthExt_v1240_e5bhs = -1;
-static int hf_lpp_svHealthExt_v1240_e1_bhs = -1;
-static int hf_lpp_kepSV_StatusINAV_e5bhs = -1;
-static int hf_lpp_kepSV_StatusINAV_e1_bhs = -1;
-static int hf_lpp_kepSV_StatusFNAV_e5ahs = -1;
-static int hf_lpp_bdsSvHealth_r12_sat_clock = -1;
-static int hf_lpp_bdsSvHealth_r12_b1i = -1;
-static int hf_lpp_bdsSvHealth_r12_b2i = -1;
-static int hf_lpp_bdsSvHealth_r12_nav = -1;
-static int hf_lpp_AssistanceDataSIBelement_r15_PDU = -1;
+static int hf_lpp_svHealthExt_v1240_e5bhs;
+static int hf_lpp_svHealthExt_v1240_e1_bhs;
+static int hf_lpp_kepSV_StatusINAV_e5bhs;
+static int hf_lpp_kepSV_StatusINAV_e1_bhs;
+static int hf_lpp_kepSV_StatusFNAV_e5ahs;
+static int hf_lpp_bdsSvHealth_r12_sat_clock;
+static int hf_lpp_bdsSvHealth_r12_b1i;
+static int hf_lpp_bdsSvHealth_r12_b2i;
+static int hf_lpp_bdsSvHealth_r12_nav;
+static int hf_lpp_AssistanceDataSIBelement_r15_PDU;
static dissector_handle_t lppe_handle = NULL;
static guint32 lpp_epdu_id = -1;
/* Initialize the subtree pointers */
-static gint ett_lpp = -1;
-static gint ett_lpp_svHealthExt_v1240 = -1;
-static gint ett_kepSV_StatusINAV = -1;
-static gint ett_kepSV_StatusFNAV = -1;
-static gint ett_lpp_bdsSvHealth_r12 = -1;
-static gint ett_lpp_assistanceDataElement_r15 = -1;
+static gint ett_lpp;
+static gint ett_lpp_svHealthExt_v1240;
+static gint ett_kepSV_StatusINAV;
+static gint ett_kepSV_StatusFNAV;
+static gint ett_lpp_bdsSvHealth_r12;
+static gint ett_lpp_assistanceDataElement_r15;
#include "packet-lpp-ett.c"
/* Include constants */
@@ -93,6 +93,8 @@ static int dissect_GNSS_RTK_ReferenceStationInfo_r15_PDU(tvbuff_t *tvb _U_, pack
static int dissect_GNSS_RTK_CommonObservationInfo_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_GNSS_RTK_AuxiliaryStationData_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_GNSS_SSR_CorrectionPoints_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_GNSS_Integrity_ServiceParameters_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_GNSS_Integrity_ServiceAlert_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_GNSS_TimeModelList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_GNSS_DifferentialCorrections_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_GNSS_NavigationModel_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
@@ -124,11 +126,17 @@ static int dissect_TBS_AssistanceDataList_r14_PDU(tvbuff_t *tvb _U_, packet_info
static int dissect_NR_DL_PRS_AssistanceData_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_NR_UEB_TRP_LocationData_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_NR_UEB_TRP_RTD_Info_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_NR_TRP_BeamAntennaInfo_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_GNSS_SSR_OrbitCorrectionsSet2_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_GNSS_SSR_ClockCorrectionsSet2_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_GNSS_SSR_URA_Set2_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static void
lpp_degreesLatitude_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%u)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%u)",
((float)v/8388607.0)*90, v);
}
@@ -137,7 +145,7 @@ lpp_degreesLongitude_fmt(gchar *s, guint32 v)
{
gint32 longitude = (gint32) v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%d)",
((float)longitude/8388608.0)*180, longitude);
}
@@ -147,25 +155,25 @@ lpp_uncertainty_fmt(gchar *s, guint32 v)
double uncertainty = 10*(pow(1.1, (double)v)-1);
if (uncertainty < 1000) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fkm (%u)", uncertainty/1000, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fkm (%u)", uncertainty/1000, v);
}
}
static void
lpp_angle_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u degrees (%u)", 2*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u degrees (%u)", 2*v, v);
}
static void
lpp_confidence_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "no information (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "no information (0)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u%%", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u%%", v);
}
}
@@ -174,7 +182,7 @@ lpp_1_10_degrees_fmt(gchar *s, guint32 v)
{
double val = (double)v/10;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", val, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", val, v);
}
static void
@@ -182,19 +190,19 @@ lpp_1_100_m_fmt(gchar *s, guint32 v)
{
double val = (double)v/100;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%u)", val, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%u)", val, v);
}
static void
lpp_measurementLimit_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u octets (%u)", 100*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u octets (%u)", 100*v, v);
}
static void
lpp_altitude_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%um", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%um", v);
}
static void
@@ -202,19 +210,19 @@ lpp_uncertaintyAltitude_fmt(gchar *s, guint32 v)
{
double uncertainty = 45*(pow(1.025, (double)v)-1);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
}
static void
lpp_radius_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%um (%u)", 5*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%um (%u)", 5*v, v);
}
static void
lpp_nr_LTE_fineTiming_Offset_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
}
static void
@@ -222,32 +230,32 @@ lpp_expectedRSTD_fmt(gchar *s, guint32 v)
{
gint32 rstd = 3*((gint32)v-8192);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dTs (%u)", rstd, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dTs (%u)", rstd, v);
}
static void
lpp_expectedRSTD_Uncertainty_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs (%u)", 3*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs (%u)", 3*v, v);
}
static void
lpp_rstd_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSTD < -15391Ts (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSTD < -15391Ts (0)");
} else if (v < 2260) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-%uTs <= RSTD < -%uTs (%u)", 15391-5*(v-1), 15391-5*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "-%uTs <= RSTD < -%uTs (%u)", 15391-5*(v-1), 15391-5*v, v);
} else if (v < 6355) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-%uTs <= RSTD < -%uTs (%u)", 6356-v, 6355-v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "-%uTs <= RSTD < -%uTs (%u)", 6356-v, 6355-v, v);
} else if (v == 6355) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-1Ts <= RSTD <= 0Ts (6355)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-1Ts <= RSTD <= 0Ts (6355)");
} else if (v < 10452) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs < RSTD <= %uTs (%u)", v-6356, v-6355, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs < RSTD <= %uTs (%u)", v-6356, v-6355, v);
} else if (v < 12711) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs < RSTD <= %uTs (%u)", 5*(v-1)-48159, 5*v-48159, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs < RSTD <= %uTs (%u)", 5*(v-1)-48159, 5*v-48159, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "15391Ts < RSTD (12711)");
+ snprintf(s, ITEM_LABEL_LENGTH, "15391Ts < RSTD (12711)");
}
}
@@ -313,7 +321,7 @@ lpp_relativeTimeDifference_fmt(gchar *s, guint32 v)
{
double rtd = (double)((gint32)v)*0.5;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f Ts (%d)", rtd, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f Ts (%d)", rtd, (gint32)v);
}
static void
@@ -321,7 +329,7 @@ lpp_referenceTimeUnc_fmt(gchar *s, guint32 v)
{
double referenceTimeUnc = 0.5*(pow(1.14, (double)v)-1);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fus (%u)", referenceTimeUnc, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fus (%u)", referenceTimeUnc, v);
}
static const value_string lpp_kp_vals[] = {
@@ -336,7 +344,7 @@ lpp_fractionalSecondsFromFrameStructureStart_fmt(gchar *s, guint32 v)
{
float frac = ((float)v)/4;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fus (%u)", frac, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fus (%u)", frac, v);
}
static void
@@ -344,7 +352,7 @@ lpp_frameDrift_fmt(gchar *s, guint32 v)
{
double drift = (double)((gint32)v)*pow(2, -30);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", drift, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", drift, (gint32)v);
}
static const value_string lpp_dataID_vals[] = {
@@ -359,7 +367,7 @@ lpp_alpha0_fmt(gchar *s, guint32 v)
{
double alpha = (double)((gint32)v)*pow(2, -30);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", alpha, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", alpha, (gint32)v);
}
static void
@@ -367,7 +375,7 @@ lpp_alpha1_fmt(gchar *s, guint32 v)
{
double alpha = (double)((gint32)v)*pow(2, -27);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", alpha, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", alpha, (gint32)v);
}
static void
@@ -375,7 +383,7 @@ lpp_alpha2_3_fmt(gchar *s, guint32 v)
{
double alpha = (double)((gint32)v)*pow(2, -24);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", alpha, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", alpha, (gint32)v);
}
static void
@@ -383,7 +391,7 @@ lpp_beta0_fmt(gchar *s, guint32 v)
{
double beta = (double)((gint32)v)*pow(2, 11);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", beta, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", beta, (gint32)v);
}
static void
@@ -391,7 +399,7 @@ lpp_beta1_fmt(gchar *s, guint32 v)
{
double beta = (double)((gint32)v)*pow(2, 14);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", beta, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", beta, (gint32)v);
}
static void
@@ -399,7 +407,7 @@ lpp_beta2_3_fmt(gchar *s, guint32 v)
{
double beta = (double)((gint32)v)*pow(2, 16);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", beta, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/semi-circle (%d)", beta, (gint32)v);
}
static void
@@ -407,7 +415,7 @@ lpp_ai0_fmt(gchar *s, guint32 v)
{
double ai = (double)v*pow(2, -2);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gsfu (%u)", ai, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gsfu (%u)", ai, v);
}
static void
@@ -415,7 +423,7 @@ lpp_ai1_fmt(gchar *s, guint32 v)
{
double ai = (double)v*pow(2, -8);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gsfu/degree (%u)", ai, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gsfu/degree (%u)", ai, v);
}
static void
@@ -423,13 +431,13 @@ lpp_ai2_fmt(gchar *s, guint32 v)
{
double ai = (double)v*pow(2, -15);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gsfu/degree2 (%u)", ai, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gsfu/degree2 (%u)", ai, v);
}
static void
lpp_teop_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
}
static void
@@ -437,7 +445,7 @@ lpp_pmX_Y_fmt(gchar *s, guint32 v)
{
double pm = (double)((gint32)v)*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g arc-seconds (%d)", pm, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g arc-seconds (%d)", pm, (gint32)v);
}
static void
@@ -445,7 +453,7 @@ lpp_pmX_Ydot_fmt(gchar *s, guint32 v)
{
double pmDot = (double)((gint32)v)*pow(2, -21);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g arc-seconds/day (%d)", pmDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g arc-seconds/day (%d)", pmDot, (gint32)v);
}
static void
@@ -453,7 +461,7 @@ lpp_deltaUT1_fmt(gchar *s, guint32 v)
{
double deltaUT1 = (double)((gint32)v)*pow(2, -24);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", deltaUT1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", deltaUT1, (gint32)v);
}
static void
@@ -461,19 +469,19 @@ lpp_deltaUT1dot_fmt(gchar *s, guint32 v)
{
double deltaUT1dot = (double)((gint32)v)*pow(2, -25);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/day (%d)", deltaUT1dot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/day (%d)", deltaUT1dot, (gint32)v);
}
static void
-lpp_1_1000m_64_fmt(gchar *s, guint64 v)
+lpp_1_1000m_64_fmt(gchar *s, uint64_t v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%" G_GINT64_MODIFIER "d)", (double)v/1000, (gint64)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%"PRId64")", (double)v/1000, (int64_t)v);
}
static void
lpp_1_1000m_32_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", (double)v/1000, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", (double)v/1000, (gint32)v);
}
static const value_string lpp_clockSteeringIndicator_vals[] = {
@@ -514,13 +522,13 @@ static void
lpp_aux_master_delta_fmt(gchar *s, guint32 v)
{
double delta = (double)((gint32)v)*25*pow(10, -6);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%u)", delta, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%u)", delta, (gint32)v);
}
static void
lpp_gnss_TimeModelRefTime_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", v*16, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", v*16, v);
}
static void
@@ -528,7 +536,7 @@ lpp_tA0_fmt(gchar *s, guint32 v)
{
double tA0 = (double)((gint32)v)*pow(2, -35);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", tA0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", tA0, (gint32)v);
}
static void
@@ -536,7 +544,7 @@ lpp_tA1_fmt(gchar *s, guint32 v)
{
double tA1 = (double)((gint32)v)*pow(2, -51);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", tA1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", tA1, (gint32)v);
}
static void
@@ -544,7 +552,7 @@ lpp_tA2_fmt(gchar *s, guint32 v)
{
double tA2 = (double)((gint32)v)*pow(2, -68);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", tA2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", tA2, (gint32)v);
}
static const value_string lpp_gnss_TO_ID_vals[] = {
@@ -580,7 +588,7 @@ lpp_pseudoRangeCor_fmt(gchar *s, guint32 v)
{
double pseudoRangeCor = ((double)(gint32)v)*0.32;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%d)", pseudoRangeCor, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%d)", pseudoRangeCor, (gint32)v);
}
static void
@@ -588,7 +596,7 @@ lpp_rangeRateCor_fmt(gchar *s, guint32 v)
{
double rangeRateCor = ((double)(gint32)v)*0.032;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", rangeRateCor, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", rangeRateCor, (gint32)v);
}
static const value_string lpp_udreGrowthRate_vals[] = {
@@ -625,7 +633,7 @@ static const value_string lpp_signal_health_status_vals[] = {
static void
lpp_stanClockToc_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%um/s (%u)", 60*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%um/s (%u)", 60*v, v);
}
static void
@@ -633,7 +641,7 @@ lpp_stanClockAF2_fmt(gchar *s, guint32 v)
{
double stanClockAF2 = (double)((gint32)v)*pow(2, -59);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", stanClockAF2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", stanClockAF2, (gint32)v);
}
static void
@@ -641,7 +649,7 @@ lpp_stanClockAF1_fmt(gchar *s, guint32 v)
{
double stanClockAF1 = (double)((gint32)v)*pow(2, -46);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", stanClockAF1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", stanClockAF1, (gint32)v);
}
static void
@@ -649,7 +657,7 @@ lpp_stanClockAF0_fmt(gchar *s, guint32 v)
{
double stanClockAF0 = (double)((gint32)v)*pow(2, -34);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", stanClockAF0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", stanClockAF0, (gint32)v);
}
static void
@@ -657,24 +665,24 @@ lpp_stanClockTgd_fmt(gchar *s, guint32 v)
{
double stanClockTgd = (double)((gint32)v)*pow(2, -32);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", stanClockTgd, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", stanClockTgd, (gint32)v);
}
static void
lpp_sisa_fmt(gchar *s, guint32 v)
{
if (v < 50) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", v, v);
} else if (v < 75) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", 50+((v-50)*2), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", 50+((v-50)*2), v);
} else if (v < 100) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", 100+((v-75)*4), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", 100+((v-75)*4), v);
} else if (v < 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", 200+((v-100)*16), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ucm (%u)", 200+((v-100)*16), v);
} else if (v < 255) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "No Accuracy Prediction Available (255)");
+ snprintf(s, ITEM_LABEL_LENGTH, "No Accuracy Prediction Available (255)");
}
}
@@ -687,7 +695,7 @@ static const value_string lpp_stanModelID_vals[] = {
static void
lpp_navToc_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
}
static void
@@ -695,7 +703,7 @@ lpp_navaf2_fmt(gchar *s, guint32 v)
{
double navaf2 = (double)((gint32)v)*pow(2, -55);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", navaf2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", navaf2, (gint32)v);
}
static void
@@ -703,7 +711,7 @@ lpp_navaf1_fmt(gchar *s, guint32 v)
{
double navaf1 = (double)((gint32)v)*pow(2, -43);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", navaf1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", navaf1, (gint32)v);
}
static void
@@ -711,13 +719,13 @@ lpp_navaf0_navTgd_fmt(gchar *s, guint32 v)
{
double navaf0_navTgd = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", navaf0_navTgd, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", navaf0_navTgd, (gint32)v);
}
static void
lpp_cnavToc_cnavTop_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 300*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 300*v, v);
}
static void
@@ -725,7 +733,7 @@ lpp_cnavAf2_fmt(gchar *s, guint32 v)
{
double cnavAf2 = (double)((gint32)v)*pow(2, -60);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", cnavAf2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", cnavAf2, (gint32)v);
}
static void
@@ -733,7 +741,7 @@ lpp_cnavAf1_fmt(gchar *s, guint32 v)
{
double cnavAf1 = (double)((gint32)v)*pow(2, -48);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", cnavAf1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", cnavAf1, (gint32)v);
}
static void
@@ -741,7 +749,7 @@ lpp_cnavX_fmt(gchar *s, guint32 v)
{
double cnavX = (double)((gint32)v)*pow(2, -35);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", cnavX, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", cnavX, (gint32)v);
}
static void
@@ -749,7 +757,7 @@ lpp_gloTau_gloDeltaTau_fmt(gchar *s, guint32 v)
{
double gloTau_gloDeltaTau = (double)((gint32)v)*pow(2, -30);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", gloTau_gloDeltaTau, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", gloTau_gloDeltaTau, (gint32)v);
}
static void
@@ -757,13 +765,13 @@ lpp_gloGamma_fmt(gchar *s, guint32 v)
{
double gloGamma = (double)((gint32)v)*pow(2, -40);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%d)", gloGamma, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%d)", gloGamma, (gint32)v);
}
static void
lpp_sbasTo_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
}
static void
@@ -771,7 +779,7 @@ lpp_sbasAgfo_fmt(gchar *s, guint32 v)
{
double sbasAgfo = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", sbasAgfo, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", sbasAgfo, (gint32)v);
}
static void
@@ -779,18 +787,18 @@ lpp_sbasAgf1_fmt(gchar *s, guint32 v)
{
double sbasAgf1 = (double)((gint32)v)*pow(2, -40);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", sbasAgf1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", sbasAgf1, (gint32)v);
}
static void
lpp_bdsAODC_AODE_r12_fmt(gchar *s, guint32 v)
{
if (v < 25) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Age of the satellite clock correction parameters is %u hours (%u)", v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Age of the satellite clock correction parameters is %u hours (%u)", v, v);
} else if (v < 31) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Age of the satellite clock correction parameters is %u days (%u)", v-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Age of the satellite clock correction parameters is %u days (%u)", v-23, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Age of the satellite clock correction parameters is over 7 days (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Age of the satellite clock correction parameters is over 7 days (%u)", v);
}
}
@@ -800,7 +808,7 @@ lpp_bdsToc_Toe_r12_fmt(gchar *s, guint32 v)
{
double bdsToc = (double)((gint32)v)*pow(2, 3);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", bdsToc, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", bdsToc, (gint32)v);
}
static void
@@ -808,7 +816,7 @@ lpp_bdsA0_r12_fmt(gchar *s, guint32 v)
{
double bdsA0 = (double)((gint32)v)*pow(2, -33);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", bdsA0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", bdsA0, (gint32)v);
}
static void
@@ -816,7 +824,7 @@ lpp_bdsA1_r12_fmt(gchar *s, guint32 v)
{
double bdsA1 = (double)((gint32)v)*pow(2, -50);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", bdsA1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", bdsA1, (gint32)v);
}
static void
@@ -824,19 +832,19 @@ lpp_bdsA2_r12_fmt(gchar *s, guint32 v)
{
double bdsA2 = (double)((gint32)v)*pow(2, -66);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", bdsA2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s2 (%d)", bdsA2, (gint32)v);
}
static void
lpp_bdsTgd1_r12_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gns (%d)", (float)((gint32)v)*0.1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gns (%d)", (float)((gint32)v)*0.1, (gint32)v);
}
static void
lpp_keplerToe_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 60*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 60*v, v);
}
static void
@@ -844,7 +852,7 @@ lpp_keplerW_M0_I0_Omega0_fmt(gchar *s, guint32 v)
{
double keplerW_M0_I0_Omega0 = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", keplerW_M0_I0_Omega0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", keplerW_M0_I0_Omega0, (gint32)v);
}
static void
@@ -852,7 +860,7 @@ lpp_keplerDeltaN_OmegaDot_IDot_fmt(gchar *s, guint32 v)
{
double keplerDeltaN_OmegaDot_IDot = (double)((gint32)v)*pow(2, -43);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", keplerDeltaN_OmegaDot_IDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", keplerDeltaN_OmegaDot_IDot, (gint32)v);
}
static void
@@ -860,7 +868,7 @@ lpp_keplerE_fmt(gchar *s, guint32 v)
{
double keplerE = (double)v*pow(2, -33);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", keplerE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", keplerE, v);
}
static void
@@ -868,7 +876,7 @@ lpp_keplerAPowerHalf_fmt(gchar *s, guint32 v)
{
double keplerAPowerHalf = (double)v*pow(2, -19);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", keplerAPowerHalf, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", keplerAPowerHalf, v);
}
static void
@@ -876,7 +884,7 @@ lpp_keplerCrs_Crc_fmt(gchar *s, guint32 v)
{
double keplerCrs_Crc = (double)((gint32)v)*pow(2, -5);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", keplerCrs_Crc, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", keplerCrs_Crc, (gint32)v);
}
static void
@@ -884,13 +892,13 @@ lpp_keplerCx_fmt(gchar *s, guint32 v)
{
double keplerCx = (double)((gint32)v)*pow(2, -29);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", keplerCx, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", keplerCx, (gint32)v);
}
static void
lpp_navToe_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", 16*v, v);
}
static void
@@ -898,7 +906,7 @@ lpp_navOmega_M0_I0_OmegaA0_fmt(gchar *s, guint32 v)
{
double navOmega_M0_I0_OmegaA0 = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", navOmega_M0_I0_OmegaA0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", navOmega_M0_I0_OmegaA0, (gint32)v);
}
static void
@@ -906,7 +914,7 @@ lpp_navDeltaN_OmegaADot_IDot_fmt(gchar *s, guint32 v)
{
double navDeltaN_OmegaADot_IDot = (double)((gint32)v)*pow(2, -43);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", navDeltaN_OmegaADot_IDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", navDeltaN_OmegaADot_IDot, (gint32)v);
}
static void
@@ -914,7 +922,7 @@ lpp_navE_fmt(gchar *s, guint32 v)
{
double navE = (double)v*pow(2, -33);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", navE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", navE, v);
}
static void
@@ -922,7 +930,7 @@ lpp_navAPowerHalf_fmt(gchar *s, guint32 v)
{
double navAPowerHalf = (double)v*pow(2, -19);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", navAPowerHalf, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", navAPowerHalf, v);
}
static void
@@ -930,7 +938,7 @@ lpp_navCrs_Crc_fmt(gchar *s, guint32 v)
{
double navCrs_Crc = (double)((gint32)v)*pow(2, -5);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", navCrs_Crc, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", navCrs_Crc, (gint32)v);
}
static void
@@ -938,7 +946,7 @@ lpp_navCx_fmt(gchar *s, guint32 v)
{
double navCx = (double)((gint32)v)*pow(2, -29);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", navCx, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", navCx, (gint32)v);
}
static void
@@ -946,7 +954,7 @@ lpp_cnavDeltaA_fmt(gchar *s, guint32 v)
{
double cnavDeltaA = (double)((gint32)v)*pow(2, -9);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", cnavDeltaA, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", cnavDeltaA, (gint32)v);
}
static void
@@ -954,7 +962,7 @@ lpp_cnavAdot_fmt(gchar *s, guint32 v)
{
double cnavAdot = (double)((gint32)v)*pow(2, -21);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", cnavAdot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", cnavAdot, (gint32)v);
}
static void
@@ -962,7 +970,7 @@ lpp_cnavDeltaNo_fmt(gchar *s, guint32 v)
{
double cnavDeltaNo = (double)((gint32)v)*pow(2, -44);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", cnavDeltaNo, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", cnavDeltaNo, (gint32)v);
}
static void
@@ -970,7 +978,7 @@ lpp_cnavDeltaNoDot_fmt(gchar *s, guint32 v)
{
double cnavDeltaNoDot = (double)((gint32)v)*pow(2, -57);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s2 (%d)", cnavDeltaNoDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s2 (%d)", cnavDeltaNoDot, (gint32)v);
}
static void
@@ -978,7 +986,7 @@ lpp_cnavDeltaOmegaDot_IoDot_fmt(gchar *s, guint32 v)
{
double cnavDeltaOmegaDot_IoDot = (double)((gint32)v)*pow(2, -44);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", cnavDeltaOmegaDot_IoDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", cnavDeltaOmegaDot_IoDot, (gint32)v);
}
static void
@@ -986,7 +994,7 @@ lpp_cnavCx_fmt(gchar *s, guint32 v)
{
double cnavCx = (double)((gint32)v)*pow(2, -30);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", cnavCx, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", cnavCx, (gint32)v);
}
static void
@@ -994,7 +1002,7 @@ lpp_cnavCrs_Crc_fmt(gchar *s, guint32 v)
{
double cnavCrs_Crc = (double)((gint32)v)*pow(2, -8);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", cnavCrs_Crc, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", cnavCrs_Crc, (gint32)v);
}
static void
@@ -1002,7 +1010,7 @@ lpp_gloX_Y_Z_fmt(gchar *s, guint32 v)
{
double gloX_Y_Z = (double)((gint32)v)*pow(2, -11);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gkm (%d)", gloX_Y_Z, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gkm (%d)", gloX_Y_Z, (gint32)v);
}
static void
@@ -1010,7 +1018,7 @@ lpp_gloXdot_Ydot_Zdot_fmt(gchar *s, guint32 v)
{
double gloXdot_Ydot_Zdot = (double)((gint32)v)*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gkm/s (%d)", gloXdot_Ydot_Zdot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gkm/s (%d)", gloXdot_Ydot_Zdot, (gint32)v);
}
static void
@@ -1018,7 +1026,7 @@ lpp_gloXdotdot_Ydotdot_Zdotdot_fmt(gchar *s, guint32 v)
{
double gloXdotdot_Ydotdot_Zdotdot = (double)((gint32)v)*pow(2, -30);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gkm/s2 (%d)", gloXdotdot_Ydotdot_Zdotdot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gkm/s2 (%d)", gloXdotdot_Ydotdot_Zdotdot, (gint32)v);
}
static void
@@ -1026,7 +1034,7 @@ lpp_sbasXg_Yg_fmt(gchar *s, guint32 v)
{
double sbasXg_Yg = (double)((gint32)v)*0.08;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%d)", sbasXg_Yg, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%d)", sbasXg_Yg, (gint32)v);
}
static void
@@ -1034,7 +1042,7 @@ lpp_sbasZg_fmt(gchar *s, guint32 v)
{
double sbasZg = (double)((gint32)v)*0.4;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%d)", sbasZg, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%d)", sbasZg, (gint32)v);
}
static void
@@ -1042,7 +1050,7 @@ lpp_sbasXgDot_YgDot_fmt(gchar *s, guint32 v)
{
double sbasXgDot_YgDot = (double)((gint32)v)*0.000625;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", sbasXgDot_YgDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", sbasXgDot_YgDot, (gint32)v);
}
static void
@@ -1050,7 +1058,7 @@ lpp_sbasZgDot_fmt(gchar *s, guint32 v)
{
double sbasZgDot = (double)((gint32)v)*0.004;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", sbasZgDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", sbasZgDot, (gint32)v);
}
static void
@@ -1058,7 +1066,7 @@ lpp_sbasXgDotDot_YgDotDot_fmt(gchar *s, guint32 v)
{
double sbasXgDotDot_YgDotDot = (double)((gint32)v)*0.0000125;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s2 (%d)", sbasXgDotDot_YgDotDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s2 (%d)", sbasXgDotDot_YgDotDot, (gint32)v);
}
static void
@@ -1066,7 +1074,7 @@ lpp_sbasZgDotDot_fmt(gchar *s, guint32 v)
{
double sbasZgDotDot = (double)((gint32)v)*0.0000625;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s2 (%d)", sbasZgDotDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s2 (%d)", sbasZgDotDot, (gint32)v);
}
static void
@@ -1074,7 +1082,7 @@ lpp_bdsAPowerHalf_r12_fmt(gchar *s, guint32 v)
{
double bdsAPowerHalf = (double)v*pow(2, -19);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", bdsAPowerHalf, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", bdsAPowerHalf, v);
}
static void
@@ -1082,7 +1090,7 @@ lpp_bdsE_r12_fmt(gchar *s, guint32 v)
{
double bdsE = (double)v*pow(2, -33);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", bdsE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", bdsE, v);
}
static void
@@ -1090,7 +1098,7 @@ lpp_bdsW_M0_Omega0_I0_r12_fmt(gchar *s, guint32 v)
{
double bdsW_M0_Omega0_I0 = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", bdsW_M0_Omega0_I0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", bdsW_M0_Omega0_I0, (gint32)v);
}
static void
@@ -1098,7 +1106,7 @@ lpp_bdsDeltaN_OmegaDot_IDot_r12_fmt(gchar *s, guint32 v)
{
double bdsDeltaN_OmegaDot_IDot = (double)((gint32)v)*pow(2, -43);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", bdsDeltaN_OmegaDot_IDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", bdsDeltaN_OmegaDot_IDot, (gint32)v);
}
static void
@@ -1106,7 +1114,7 @@ lpp_bdsCuc_Cus_Cic_Cis_r12_fmt(gchar *s, guint32 v)
{
double bdsCuc_Cus_Cic_Cis = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", bdsCuc_Cus_Cic_Cis, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", bdsCuc_Cus_Cic_Cis, (gint32)v);
}
static void
@@ -1114,7 +1122,7 @@ lpp_bdsCrc_Crs_r12_fmt(gchar *s, guint32 v)
{
double bdsCrc_Crs = (double)((gint32)v)*pow(2, -6);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", bdsCrc_Crs, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%grad (%d)", bdsCrc_Crs, (gint32)v);
}
static void
@@ -1122,7 +1130,7 @@ lpp_doppler0_fmt(gchar *s, guint32 v)
{
double doppler0 = (double)((gint32)v)*0.5;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", doppler0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", doppler0, (gint32)v);
}
static void
@@ -1130,7 +1138,7 @@ lpp_doppler1_fmt(gchar *s, guint32 v)
{
double doppler1 = (double)((gint32)(v-42))/210;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm/s2 (%u)", doppler1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm/s2 (%u)", doppler1, v);
}
static const value_string lpp_dopplerUncertainty_vals[] = {
@@ -1147,7 +1155,7 @@ lpp_codePhase_fmt(gchar *s, guint32 v)
{
double codePhase = (double)v*pow(2, -10);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
}
static const value_string lpp_codePhaseSearchWindow_vals[] = {
@@ -1190,7 +1198,7 @@ static value_string_ext lpp_codePhaseSearchWindow_vals_ext = VALUE_STRING_EXT_IN
static void
lpp_azimuth_elevation_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%u)", (float)v*0.703125, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%u)", (float)v*0.703125, v);
}
static void
@@ -1198,7 +1206,7 @@ lpp_kepAlmanacE_fmt(gchar *s, guint32 v)
{
double kepAlmanacE = (double)v*pow(2, -16);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", kepAlmanacE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", kepAlmanacE, v);
}
static void
@@ -1206,7 +1214,7 @@ lpp_kepAlmanacDeltaI_fmt(gchar *s, guint32 v)
{
double kepAlmanacDeltaI = (double)((gint32)v)*pow(2, -14);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", kepAlmanacDeltaI, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", kepAlmanacDeltaI, (gint32)v);
}
static void
@@ -1214,7 +1222,7 @@ lpp_kepAlmanacOmegaDot_fmt(gchar *s, guint32 v)
{
double kepAlmanacOmegaDot = (double)((gint32)v)*pow(2, -33);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", kepAlmanacOmegaDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", kepAlmanacOmegaDot, (gint32)v);
}
static void
@@ -1222,7 +1230,7 @@ lpp_kepAlmanacAPowerHalf_fmt(gchar *s, guint32 v)
{
double kepAlmanacAPowerHalf = (double)((gint32)v)*pow(2, -9);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%d)", kepAlmanacAPowerHalf, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%d)", kepAlmanacAPowerHalf, (gint32)v);
}
static void
@@ -1230,7 +1238,7 @@ lpp_kepAlmanacOmega0_W_M0_fmt(gchar *s, guint32 v)
{
double kepAlmanacOmega0_W_M0 = (double)((gint32)v)*pow(2, -15);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", kepAlmanacOmega0_W_M0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", kepAlmanacOmega0_W_M0, (gint32)v);
}
static void
@@ -1238,7 +1246,7 @@ lpp_kepAlmanacAF0_fmt(gchar *s, guint32 v)
{
double kepAlmanacAF0 = (double)((gint32)v)*pow(2, -19);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", kepAlmanacAF0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", kepAlmanacAF0, (gint32)v);
}
static void
@@ -1246,7 +1254,7 @@ lpp_kepAlmanacAF1_fmt(gchar *s, guint32 v)
{
double kepAlmanacAF1 = (double)((gint32)v)*pow(2, -38);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", kepAlmanacAF1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", kepAlmanacAF1, (gint32)v);
}
static void
@@ -1254,7 +1262,7 @@ lpp_navAlmE_fmt(gchar *s, guint32 v)
{
double navAlmE = (double)v*pow(2, -21);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", navAlmE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", navAlmE, v);
}
static void
@@ -1262,7 +1270,7 @@ lpp_navAlmDeltaI_fmt(gchar *s, guint32 v)
{
double navAlmDeltaI = (double)((gint32)v)*pow(2, -19);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", navAlmDeltaI, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", navAlmDeltaI, (gint32)v);
}
static void
@@ -1270,7 +1278,7 @@ lpp_navAlmOMEGADOT_fmt(gchar *s, guint32 v)
{
double navAlmOMEGADOT = (double)((gint32)v)*pow(2, -38);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", navAlmOMEGADOT, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", navAlmOMEGADOT, (gint32)v);
}
static void
@@ -1278,7 +1286,7 @@ lpp_navAlmSqrtA_fmt(gchar *s, guint32 v)
{
double navAlmSqrtA = (double)v*pow(2, -11);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", navAlmSqrtA, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", navAlmSqrtA, v);
}
static void
@@ -1286,7 +1294,7 @@ lpp_navAlmOMEGAo_Omega_Mo_fmt(gchar *s, guint32 v)
{
double navAlmOMEGAo_Omega_Mo = (double)((gint32)v)*pow(2, -23);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", navAlmOMEGAo_Omega_Mo, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", navAlmOMEGAo_Omega_Mo, (gint32)v);
}
static void
@@ -1294,7 +1302,7 @@ lpp_navAlmaf0_fmt(gchar *s, guint32 v)
{
double navAlmaf0 = (double)((gint32)v)*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", navAlmaf0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", navAlmaf0, (gint32)v);
}
static void
@@ -1302,13 +1310,13 @@ lpp_navAlmaf1_fmt(gchar *s, guint32 v)
{
double navAlmaf1 = (double)((gint32)v)*pow(2, -38);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", navAlmaf1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", navAlmaf1, (gint32)v);
}
static void
lpp_redAlmDeltaA_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dm (%d)", 512*(gint)v, (gint)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dm (%d)", 512*(gint)v, (gint)v);
}
static void
@@ -1316,7 +1324,7 @@ lpp_redAlmOmega0_Phi0_fmt(gchar *s, guint32 v)
{
double redAlmOmega0_Phi0 = (double)((gint32)v)*pow(2, -6);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", redAlmOmega0_Phi0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", redAlmOmega0_Phi0, (gint32)v);
}
static void
@@ -1324,7 +1332,7 @@ lpp_midiAlmE_fmt(gchar *s, guint32 v)
{
double midiAlmE = (double)v*pow(2, -16);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", midiAlmE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", midiAlmE, v);
}
static void
@@ -1332,7 +1340,7 @@ lpp_midiAlmDeltaI_fmt(gchar *s, guint32 v)
{
double midiAlmDeltaI = (double)((gint32)v)*pow(2, -14);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", midiAlmDeltaI, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", midiAlmDeltaI, (gint32)v);
}
static void
@@ -1340,13 +1348,13 @@ lpp_midiAlmOmegaDot_fmt(gchar *s, guint32 v)
{
double midiAlmOmegaDot = (double)((gint32)v)*pow(2, -33);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", midiAlmOmegaDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", midiAlmOmegaDot, (gint32)v);
}
static void
lpp_midiAlmSqrtA_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm1/2 (%u)", (float)v*0.0625, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm1/2 (%u)", (float)v*0.0625, v);
}
static void
@@ -1354,7 +1362,7 @@ lpp_midiAlmOmega0_Omega_Mo_fmt(gchar *s, guint32 v)
{
double midiAlmOmega0_Omega_Mo = (double)((gint32)v)*pow(2, -15);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", midiAlmOmega0_Omega_Mo, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", midiAlmOmega0_Omega_Mo, (gint32)v);
}
static void
@@ -1362,7 +1370,7 @@ lpp_midiAlmaf0_fmt(gchar *s, guint32 v)
{
double midiAlmaf0 = (double)((gint32)v)*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", midiAlmaf0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", midiAlmaf0, (gint32)v);
}
static void
@@ -1370,7 +1378,7 @@ lpp_midiAlmaf1_fmt(gchar *s, guint32 v)
{
double midiAlmaf1 = (double)((gint32)v)*pow(2, -37);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", midiAlmaf1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", midiAlmaf1, (gint32)v);
}
static void
@@ -1378,13 +1386,13 @@ lpp_gloAlmLambdaA_DeltaIa_fmt(gchar *s, guint32 v)
{
double gloAlmLambdaA_DeltaIa = (double)((gint32)v)*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", gloAlmLambdaA_DeltaIa, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", gloAlmLambdaA_DeltaIa, (gint32)v);
}
static void
lpp_gloAlmtlambdaA_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fs (%u)", (float)v*0.03125, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fs (%u)", (float)v*0.03125, v);
}
static void
@@ -1392,7 +1400,7 @@ lpp_gloAlmDeltaTA_fmt(gchar *s, guint32 v)
{
double gloAlmDeltaTA = (double)((gint32)v)*pow(2, -9);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/orbit period (%d)", gloAlmDeltaTA, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/orbit period (%d)", gloAlmDeltaTA, (gint32)v);
}
static void
@@ -1400,7 +1408,7 @@ lpp_gloAlmDeltaTdotA_fmt(gchar *s, guint32 v)
{
double gloAlmDeltaTdotA = (double)((gint32)v)*pow(2, -14);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/orbit period (%d)", gloAlmDeltaTdotA, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/orbit period (%d)", gloAlmDeltaTdotA, (gint32)v);
}
static void
@@ -1408,7 +1416,7 @@ lpp_gloAlmEpsilonA_fmt(gchar *s, guint32 v)
{
double gloAlmEpsilonA = (double)v*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", gloAlmEpsilonA, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", gloAlmEpsilonA, (gint32)v);
}
static void
@@ -1416,7 +1424,7 @@ lpp_gloAlmOmegaA_fmt(gchar *s, guint32 v)
{
double gloAlmOmegaA = (double)((gint32)v)*pow(2, -15);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", gloAlmOmegaA, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", gloAlmOmegaA, (gint32)v);
}
static void
@@ -1424,43 +1432,43 @@ lpp_gloAlmTauA_fmt(gchar *s, guint32 v)
{
double gloAlmTauA = (double)((gint32)v)*pow(2, -18);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", gloAlmTauA, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", gloAlmTauA, (gint32)v);
}
static void
lpp_sbasAlmXg_Yg_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fkm (%d)", (gint32)v*2.6, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fkm (%d)", (gint32)v*2.6, (gint32)v);
}
static void
lpp_sbasAlmZg_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dkm (%d)", (gint32)v*26, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dkm (%d)", (gint32)v*26, (gint32)v);
}
static void
lpp_sbasAlmXgdot_YgDot_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dm/s (%d)", (gint32)v*10, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dm/s (%d)", (gint32)v*10, (gint32)v);
}
static void
lpp_sbasAlmZgDot_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", (gint32)v*40.96, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm/s (%d)", (gint32)v*40.96, (gint32)v);
}
static void
lpp_sbasAlmTo_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%um/s (%u)", v*64, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%um/s (%u)", v*64, v);
}
static void
lpp_bdsAlmToa_r12_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", v*4096, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", v*4096, v);
}
static void
@@ -1468,7 +1476,7 @@ lpp_bdsAlmSqrtA_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmSqrtA = (double)v*pow(2, -11);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", bdsAlmSqrtA, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", bdsAlmSqrtA, v);
}
static void
@@ -1476,7 +1484,7 @@ lpp_bdsAlmE_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmE = (double)v*pow(2, -21);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", bdsAlmE, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm1/2 (%u)", bdsAlmE, v);
}
static void
@@ -1484,7 +1492,7 @@ lpp_bdsAlmW_M0_Omega0_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmW_M0_Omega0 = (double)((gint32)v)*pow(2, -23);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", bdsAlmW_M0_Omega0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", bdsAlmW_M0_Omega0, (gint32)v);
}
static void
@@ -1492,7 +1500,7 @@ lpp_bdsAlmOmegaDot_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmOmegaDot = (double)((gint32)v)*pow(2, -38);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", bdsAlmOmegaDot, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles/s (%d)", bdsAlmOmegaDot, (gint32)v);
}
static void
@@ -1500,7 +1508,7 @@ lpp_bdsAlmDeltaI_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmDeltaI = (double)((gint32)v)*pow(2, -19);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", bdsAlmDeltaI, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g semi-circles (%d)", bdsAlmDeltaI, (gint32)v);
}
static void
@@ -1508,7 +1516,7 @@ lpp_bdsAlmA0_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmA0 = (double)((gint32)v)*pow(2, -20);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", bdsAlmA0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", bdsAlmA0, (gint32)v);
}
static void
@@ -1516,7 +1524,7 @@ lpp_bdsAlmA1_r12_fmt(gchar *s, guint32 v)
{
double bdsAlmA1 = (double)((gint32)v)*pow(2, -38);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", bdsAlmA1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", bdsAlmA1, (gint32)v);
}
static const true_false_string lpp_bdsSvHealth_r12_b1i_b2i_value = {
@@ -1534,7 +1542,7 @@ lpp_gnss_Utc_A1_fmt(gchar *s, guint32 v)
{
double gnss_Utc_A1 = (double)((gint32)v)*pow(2, -50);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", gnss_Utc_A1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/s (%d)", gnss_Utc_A1, (gint32)v);
}
static void
@@ -1542,13 +1550,13 @@ lpp_gnss_Utc_A0_fmt(gchar *s, guint32 v)
{
double gnss_Utc_A0 = (double)((gint32)v)*pow(2, -30);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", gnss_Utc_A0, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", gnss_Utc_A0, (gint32)v);
}
static void
lpp_gnss_Utc_Tot_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", v*4096, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%us (%u)", v*4096, v);
}
static const value_string lpp_bds_UDREI_vals[] = {
@@ -1597,16 +1605,16 @@ static void
lpp_bds_ECC_DeltaT_r12_fmt(gchar *s, guint32 v)
{
if ((gint32)v == -4096) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Not available (%d)", (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Not available (%d)", (gint32)v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", (float)((gint32)v)*0.1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", (float)((gint32)v)*0.1, (gint32)v);
}
}
static void
lpp_bds_GridIonElement_dt_r12_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", (float)((gint32)v)*0.125, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", (float)((gint32)v)*0.125, (gint32)v);
}
static const value_string lpp_bds_givei_vals[] = {
@@ -1635,7 +1643,7 @@ lpp_fine_PseudoRange_r15_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)*pow(2, -29);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%d)", val, (gint32)v);
}
static void
@@ -1643,7 +1651,7 @@ lpp_fine_PhaseRange_r15_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%d)", val, (gint32)v);
}
static void
@@ -1651,7 +1659,7 @@ lpp_carrier_to_noise_ratio_r15_fmt(gchar *s, guint32 v)
{
double val = (double)v*pow(2, -4);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gdB-Hz (%d)", val, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gdB-Hz (%d)", val, v);
}
static void
@@ -1659,7 +1667,7 @@ lpp_fine_PhaseRangeRate_r15_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/1000;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%d)", val, (gint32)v);
}
static void
@@ -1667,7 +1675,7 @@ lpp_cpBias_r15_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/50;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
}
static const value_string lpp_ambiguityStatusFlag_r15_vals[] = {
@@ -1683,7 +1691,7 @@ lpp_1_2000m_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/2000;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
}
static void
@@ -1691,7 +1699,7 @@ lpp_1_100ppm_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/100;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gppm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gppm (%d)", val, (gint32)v);
}
static void
@@ -1699,7 +1707,7 @@ lpp_1_10ppm_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/10;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gppm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gppm (%d)", val, (gint32)v);
}
static const value_string lpp_ssrUpdateInterval_r15_vals[] = {
@@ -1727,7 +1735,7 @@ lpp_1_10000m_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/10000;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
}
static void
@@ -1735,7 +1743,7 @@ lpp_4_10000m_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/10000*4;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
}
static void
@@ -1743,7 +1751,7 @@ lpp_1_1000000m_s_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/1000000;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", val, (gint32)v);
}
static void
@@ -1751,7 +1759,7 @@ lpp_4_1000000m_s_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/1000000*4;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", val, (gint32)v);
}
static void
@@ -1759,7 +1767,7 @@ lpp_2_100000000m_s2_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/100000000*2;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s2 (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s2 (%d)", val, (gint32)v);
}
static void
@@ -1767,7 +1775,7 @@ lpp_1_100000m_fmt(gchar *s, guint32 v)
{
double val = (double)((gint32)v)/100000;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%d)", val, (gint32)v);
}
static void
@@ -1775,7 +1783,7 @@ lpp_tauC_fmt(gchar *s, guint32 v)
{
double tauC = (double)((gint32)v)*pow(2, -31);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", tauC, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", tauC, (gint32)v);
}
static void
@@ -1783,7 +1791,7 @@ lpp_b1_fmt(gchar *s, guint32 v)
{
double b1 = (double)((gint32)v)*pow(2, -10);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", b1, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%d)", b1, (gint32)v);
}
static void
@@ -1791,7 +1799,7 @@ lpp_b2_fmt(gchar *s, guint32 v)
{
double b2 = (double)((gint32)v)*pow(2, -16);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs/msd (%d)", b2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs/msd (%d)", b2, (gint32)v);
}
static const value_string lpp_utcStandardID_vals[] = {
@@ -1836,7 +1844,7 @@ lpp_GNSS_SatMeas_codePhase_fmt(gchar *s, guint32 v)
{
double codePhase = (double)v*pow(2, -21);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
}
static void
@@ -1848,12 +1856,12 @@ lpp_codePhaseRMSError_fmt(gchar *s, guint32 v)
guint8 exponent_1 = ((v - 1) & 0x38) >> 3;
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "P < 0.5 (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "P < 0.5 (0)");
} else if (v < 63) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%f <= P < %f (%u)", 0.5*(1+mantissa_1/8)*pow(2, exponent_1),
+ snprintf(s, ITEM_LABEL_LENGTH, "%f <= P < %f (%u)", 0.5*(1+mantissa_1/8)*pow(2, exponent_1),
0.5*(1+mantissa/8)*pow(2, exponent), v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "112 <= P (63)");
+ snprintf(s, ITEM_LABEL_LENGTH, "112 <= P (63)");
}
}
@@ -1862,7 +1870,7 @@ lpp_transmitterLatitude_fmt(gchar *s, guint32 v)
{
double lat = ((double)v*4.0/pow(2, 20))-90.0;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", lat, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", lat, v);
}
static void
@@ -1870,7 +1878,7 @@ lpp_transmitterLongitude_fmt(gchar *s, guint32 v)
{
double longitude = ((double)v*4.0/pow(2, 20))-180.0;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", longitude, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", longitude, v);
}
static void
@@ -1878,7 +1886,7 @@ lpp_transmitterAltitude_fmt(gchar *s, guint32 v)
{
double alt = ((double)v*0.29)-500.0;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%u)", alt, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%u)", alt, v);
}
static void
@@ -1886,7 +1894,7 @@ lpp_refPressure_fmt(gchar *s, guint32 v)
{
gint32 pressure = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dPa (%d)", 101325+pressure, pressure);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dPa (%d)", 101325+pressure, pressure);
}
static void
@@ -1894,7 +1902,7 @@ lpp_refTemperature_fmt(gchar *s, guint32 v)
{
gint32 temp = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dK (%d)", 273+temp, temp);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dK (%d)", 273+temp, temp);
}
static void
@@ -1902,19 +1910,19 @@ lpp_referencePressureRate_v1520_fmt(gchar *s, guint32 v)
{
gint32 rate = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%dPa/hour (%d)", 10*rate, rate);
+ snprintf(s, ITEM_LABEL_LENGTH, "%dPa/hour (%d)", 10*rate, rate);
}
static void
lpp_PressureValidityPeriod_v1520_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%umin (%u)", 15*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%umin (%u)", 15*v, v);
}
static void
lpp_doppler_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", (gint32)v*0.04, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm/s (%d)", (gint32)v*0.04, (gint32)v);
}
static void
@@ -1922,13 +1930,13 @@ lpp_adr_fmt(gchar *s, guint32 v)
{
double adr = (double)v*pow(2, -10);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gm (%u)", adr, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gm (%u)", adr, v);
}
static void
lpp_adrMSB_r15_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%um (%u)", v*32768, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%um (%u)", v*32768, v);
}
static void
@@ -1936,24 +1944,24 @@ lpp_GNSS_SatMeas_delta_codePhase_r15_fmt(gchar *s, guint32 v)
{
double codePhase = (double)v*pow(2, -24);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
}
static void
lpp_deliveryAmount_r15_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", pow(2, v), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g (%u)", pow(2, v), v);
}
static void
lpp_rsrp_Result_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
} else if (v < 97) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", v-141, v-140, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", v-141, v-140, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= RSRP (97)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= RSRP (97)");
}
}
@@ -1961,11 +1969,11 @@ static void
lpp_rsrq_Result_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
} else if (v < 34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", ((float)v/2)-20, (((float)v+1)/2)-20, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", ((float)v/2)-20, (((float)v+1)/2)-20, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
}
}
@@ -1973,11 +1981,11 @@ static void
lpp_nrsrp_Result_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "NRSRP < -156dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "NRSRP < -156dBm (0)");
} else if (v < 113) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= NRSRP < %ddBm (%u)", v-157, v-156, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= NRSRP < %ddBm (%u)", v-157, v-156, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= NRSRP (97)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= NRSRP (97)");
}
}
@@ -1985,11 +1993,11 @@ static void
lpp_nrsrq_Result_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -34dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -34dB (0)");
} else if (v < 74) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%u)", (((float)v-1)/2)-34, ((float)v/2)-34, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%u)", (((float)v-1)/2)-34, ((float)v/2)-34, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "2.5dB <= NRSRQ (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "2.5dB <= NRSRQ (%u)", v);
}
}
@@ -1999,9 +2007,9 @@ lpp_rsrp_Result_v1470_fmt(gchar *s, guint32 v)
gint32 d = (gint32)v;
if (d == -17) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -157dBm (-17)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -157dBm (-17)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%d)", d-141, d-140, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%d)", d-141, d-140, d);
}
}
@@ -2011,11 +2019,11 @@ lpp_rsrq_Result_v1470_fmt(gchar *s, guint32 v)
gint32 d = (gint32)v;
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -34.5dB (-30)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -34.5dB (-30)");
} else if (v < 46) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", ((float)d/2)-20, (((float)d+1)/2)-20, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", ((float)d/2)-20, (((float)d+1)/2)-20, d);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "3dB <= RSRQ (46)");
+ snprintf(s, ITEM_LABEL_LENGTH, "3dB <= RSRQ (46)");
}
}
@@ -2023,13 +2031,13 @@ static void
lpp_ue_RxTxTimeDiff_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "T < 2Ts (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "T < 2Ts (0)");
} else if (v < 2048) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", v*2, (v+1)*2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", v*2, (v+1)*2, v);
} else if (v < 4095) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", (v*8)-12288, ((v+1)*8)-12288, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", (v*8)-12288, ((v+1)*8)-12288, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "20472Ts <= T (4095)");
+ snprintf(s, ITEM_LABEL_LENGTH, "20472Ts <= T (4095)");
}
}
@@ -2038,11 +2046,10 @@ lpp_mbs_beaconMeasElt_codePhase_fmt(gchar *s, guint32 v)
{
double codePhase = (double)v*pow(2, -21);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gms (%u)", codePhase, v);
}
-const unit_name_string units_dbhz = { "dB-Hz", NULL };
-const unit_name_string units_pa = { "Pa", NULL };
+static const unit_name_string units_pa = { "Pa", NULL };
#include "packet-lpp-fn.c"
diff --git a/epan/dissectors/asn1/lpp/packet-lpp-template.h b/epan/dissectors/asn1/lpp/packet-lpp-template.h
index e72974d97c..8a5a029926 100644
--- a/epan/dissectors/asn1/lpp/packet-lpp-template.h
+++ b/epan/dissectors/asn1/lpp/packet-lpp-template.h
@@ -1,6 +1,6 @@
/* packet-lpp.h
* Routines for 3GPP LTE Positioning Protocol (LPP) packet dissection
- * Copyright 2011-2021 Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2011-2024 Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -23,6 +23,8 @@ typedef enum {
LPP_POS_SIB_TYPE_1_6,
LPP_POS_SIB_TYPE_1_7,
LPP_POS_SIB_TYPE_1_8,
+ LPP_POS_SIB_TYPE_1_9,
+ LPP_POS_SIB_TYPE_1_10,
LPP_POS_SIB_TYPE_2_1,
LPP_POS_SIB_TYPE_2_2,
LPP_POS_SIB_TYPE_2_3,
@@ -40,9 +42,12 @@ typedef enum {
LPP_POS_SIB_TYPE_2_15,
LPP_POS_SIB_TYPE_2_16,
LPP_POS_SIB_TYPE_2_17,
+ LPP_POS_SIB_TYPE_2_17a,
LPP_POS_SIB_TYPE_2_18,
+ LPP_POS_SIB_TYPE_2_18a,
LPP_POS_SIB_TYPE_2_19,
LPP_POS_SIB_TYPE_2_20,
+ LPP_POS_SIB_TYPE_2_20a,
LPP_POS_SIB_TYPE_2_21,
LPP_POS_SIB_TYPE_2_22,
LPP_POS_SIB_TYPE_2_23,
@@ -54,6 +59,9 @@ typedef enum {
LPP_POS_SIB_TYPE_6_1,
LPP_POS_SIB_TYPE_6_2,
LPP_POS_SIB_TYPE_6_3,
+ LPP_POS_SIB_TYPE_6_4,
+ LPP_POS_SIB_TYPE_6_5,
+ LPP_POS_SIB_TYPE_6_6,
} lpp_pos_sib_type_t;
int dissect_lpp_AssistanceDataSIBelement_r15_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, lpp_pos_sib_type_t pos_sib_type);
diff --git a/epan/dissectors/asn1/lppa/lppa.cnf b/epan/dissectors/asn1/lppa/lppa.cnf
index a0a4381c75..54b0d98e94 100644
--- a/epan/dissectors/asn1/lppa/lppa.cnf
+++ b/epan/dissectors/asn1/lppa/lppa.cnf
@@ -39,7 +39,8 @@ ProtocolExtensionField/id ext_id
#.FN_FTR ProtocolIE-ID
if (tree) {
- proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(lppa_data->protocol_ie_id, VALS(lppa_ProtocolIE_ID_vals), "unknown (%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
+ val_to_str(lppa_data->protocol_ie_id, VALS(lppa_ProtocolIE_ID_vals), "unknown (%d)"));
}
#.END
@@ -49,8 +50,8 @@ ProtocolExtensionField/id ext_id
%(DEFAULT_BODY)s
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%%s ",
- val_to_str(lppa_data->procedure_code, lppa_ProcedureCode_vals,
- "unknown message"));
+ val_to_str_const(lppa_data->procedure_code, lppa_ProcedureCode_vals,
+ "unknown message"));
#.END
#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
diff --git a/epan/dissectors/asn1/lppa/packet-lppa-template.c b/epan/dissectors/asn1/lppa/packet-lppa-template.c
index 56277499a2..174246f9b3 100644
--- a/epan/dissectors/asn1/lppa/packet-lppa-template.c
+++ b/epan/dissectors/asn1/lppa/packet-lppa-template.c
@@ -29,12 +29,12 @@ void proto_register_lppa(void);
void proto_reg_handoff_lppa(void);
/* Initialize the protocol and registered fields */
-static int proto_lppa = -1;
+static int proto_lppa;
#include "packet-lppa-hf.c"
/* Initialize the subtree pointers */
-static gint ett_lppa = -1;
+static gint ett_lppa;
#include "packet-lppa-ett.c"
enum {
diff --git a/epan/dissectors/asn1/lppe/packet-lppe-template.c b/epan/dissectors/asn1/lppe/packet-lppe-template.c
index 8d8c488d73..0bb5cbd9a6 100644
--- a/epan/dissectors/asn1/lppe/packet-lppe-template.c
+++ b/epan/dissectors/asn1/lppe/packet-lppe-template.c
@@ -33,15 +33,15 @@ void proto_register_lppe(void);
void proto_reg_handoff_lppe(void);
/* Initialize the protocol and registered fields */
-static int proto_lppe = -1;
+static int proto_lppe;
static dissector_handle_t xml_handle;
#include "packet-lppe-hf.c"
/* Initialize the subtree pointers */
-static gint ett_lppe = -1;
-static gint ett_lppe_civicLocation = -1;
+static gint ett_lppe;
+static gint ett_lppe_civicLocation;
#include "packet-lppe-ett.c"
/* Include constants */
diff --git a/epan/dissectors/asn1/lte-rrc/CMakeLists.txt b/epan/dissectors/asn1/lte-rrc/CMakeLists.txt
index 2d63accfa6..d4a56f2cd5 100644
--- a/epan/dissectors/asn1/lte-rrc/CMakeLists.txt
+++ b/epan/dissectors/asn1/lte-rrc/CMakeLists.txt
@@ -21,12 +21,9 @@ set( EXT_ASN_FILE_LIST
set( ASN_FILE_LIST
EUTRA-InterNodeDefinitions.asn
EUTRA-RRC-Definitions.asn
- EUTRA-Sidelink-Preconf.asn
- EUTRA-UE-Variables.asn
PC5-RRC-Definitions.asn
NBIOT-InterNodeDefinitions.asn
NBIOT-RRC-Definitions.asn
- NBIOT-UE-Variables.asn
)
set( EXTRA_DIST
@@ -41,6 +38,6 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -L )
+set( A2W_FLAGS )
ASN2WRS()
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn
index 1beb84d481..7f2aa4a974 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-InterNodeDefinitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
EUTRA-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -126,7 +126,7 @@ HandoverPreparationInformation-r8-IEs ::= SEQUENCE {
HandoverPreparationInformation-v920-IEs ::= SEQUENCE {
ue-ConfigRelease-r9 ENUMERATED {
rel9, rel10, rel11, rel12, v10j0, v11e0,
- v1280, rel13, ..., rel14, rel15, rel16} OPTIONAL, -- Cond HO2
+ v1280, rel13, ..., rel14, rel15, rel16, rel17} OPTIONAL, -- Cond HO2
nonCriticalExtension HandoverPreparationInformation-v9d0-IEs OPTIONAL
}
@@ -204,12 +204,17 @@ HandoverPreparationInformation-v1610-IEs ::= SEQUENCE {
}
HandoverPreparationInformation-v1620-IEs ::= SEQUENCE {
- as-Context-v1620 AS-Context-v1620 OPTIONAL, --Cond HO2
+ as-Context-v1620 AS-Context-v1620 OPTIONAL, --Cond HO2
nonCriticalExtension HandoverPreparationInformation-v1630-IEs OPTIONAL
}
HandoverPreparationInformation-v1630-IEs ::= SEQUENCE {
- as-Context-v1630 AS-Context-v1630 OPTIONAL, --Cond HO2
+ as-Context-v1630 AS-Context-v1630 OPTIONAL, --Cond HO2
+ nonCriticalExtension HandoverPreparationInformation-v1700-IEs OPTIONAL
+}
+
+HandoverPreparationInformation-v1700-IEs ::= SEQUENCE {
+ as-Config-v1700 AS-Config-v1700 OPTIONAL, --Cond HO5
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -238,7 +243,7 @@ SCG-Config-v12i0a-IEs ::= SEQUENCE {
}
SCG-Config-v12i0b-IEs ::= SEQUENCE {
- scg-RadioConfig-v12i0 SCG-ConfigPartSCG-v12f0 OPTIONAL, -- Need ON
+ scg-RadioConfig-v12i0 SCG-ConfigPartSCG-v12f0 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -522,6 +527,10 @@ AS-ConfigNR-v1620 ::= SEQUENCE {
tdm-PatternConfig2-r16 TDM-PatternConfig-r15
}
+AS-Config-v1700 ::= SEQUENCE {
+ scg-State-r17 ENUMERATED { deactivated } OPTIONAL
+}
+
AS-Context ::= SEQUENCE {
reestablishmentInfo ReestablishmentInfo OPTIONAL -- Cond HO
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn
index 2cc5f354b2..40a8f869f8 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
EUTRA-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -344,7 +344,7 @@ DLDedicatedMessageSegment-r16-IEs ::= SEQUENCE {
segmentNumber-r16 INTEGER (0..4),
rrc-MessageSegmentContainer-r16 OCTET STRING,
rrc-MessageSegmentType-r16 ENUMERATED {notLastSegment, lastSegment},
- lateNonCriticalExtensions OCTET STRING OPTIONAL,
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -377,9 +377,9 @@ DLInformationTransfer-v8a0-IEs ::= SEQUENCE {
DLInformationTransfer-r15-IEs ::= SEQUENCE {
dedicatedInfoType-r15 CHOICE {
- dedicatedInfoNAS-r15 DedicatedInfoNAS,
- dedicatedInfoCDMA2000-1XRTT-r15 DedicatedInfoCDMA2000,
- dedicatedInfoCDMA2000-HRPD-r15 DedicatedInfoCDMA2000
+ dedicatedInfoNAS DedicatedInfoNAS,
+ dedicatedInfoCDMA2000-1XRTT DedicatedInfoCDMA2000,
+ dedicatedInfoCDMA2000-HRPD DedicatedInfoCDMA2000
} OPTIONAL, -- Need ON
timeReferenceInfo-r15 TimeReferenceInfo-r15 OPTIONAL, -- Need ON
nonCriticalExtension DLInformationTransfer-v8a0-IEs OPTIONAL
@@ -684,6 +684,12 @@ LoggedMeasurementConfiguration-v1250-IEs ::= SEQUENCE {
LoggedMeasurementConfiguration-v1530-IEs ::= SEQUENCE {
bt-NameList-r15 BT-NameList-r15 OPTIONAL, --Need OR
wlan-NameList-r15 WLAN-NameList-r15 OPTIONAL, --Need OR
+ nonCriticalExtension LoggedMeasurementConfiguration-v1700-IEs OPTIONAL
+}
+
+LoggedMeasurementConfiguration-v1700-IEs ::= SEQUENCE {
+ loggedEventTriggerConfig-r17 LoggedEventTriggerConfig-r17 OPTIONAL, --Need OR
+ measUncomBarPre-r17 ENUMERATED {true} OPTIONAL, --Need OR
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -695,6 +701,20 @@ TargetMBSFN-Area-r12 ::= SEQUENCE {
...
}
+LoggedEventTriggerConfig-r17 ::= SEQUENCE {
+ eventType-r17 EventType-r17
+}
+
+EventType-r17 ::= CHOICE {
+ outOfCoverage NULL,
+ eventL1 SEQUENCE {
+ l1-Threshold-r17 ThresholdEUTRA,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger
+ },
+ ...
+}
+
MasterInformationBlock ::= SEQUENCE {
dl-Bandwidth ENUMERATED {
@@ -703,7 +723,11 @@ MasterInformationBlock ::= SEQUENCE {
systemFrameNumber BIT STRING (SIZE (8)),
schedulingInfoSIB1-BR-r13 INTEGER (0..31),
systemInfoUnchanged-BR-r15 BOOLEAN,
- spare BIT STRING (SIZE (4))
+ partEARFCN-r17 CHOICE {
+ spare BIT STRING (SIZE (2)),
+ earfcn-LSB BIT STRING (SIZE (2))
+ },
+ spare BIT STRING (SIZE (1))
}
@@ -779,7 +803,7 @@ MBMSInterestIndication-v1310-IEs ::= SEQUENCE {
nonCriticalExtension MBMSInterestIndication-v1540-IEs OPTIONAL
}
-MBMSInterestIndication-v1540-IEs ::= SEQUENCE {
+MBMSInterestIndication-v1540-IEs ::= SEQUENCE {
mbms-ROM-InfoList-r15 SEQUENCE (SIZE(1..maxMBMS-ServiceListPerUE-r13)) OF MBMS-ROM-Info-r15 OPTIONAL,
nonCriticalExtension MBMSInterestIndication-v1610-IEs OPTIONAL
}
@@ -858,7 +882,7 @@ FailureReportMCG-r16 ::= SEQUENCE {
measResultFreqListEUTRA-r16 MeasResultList3EUTRA-r15 OPTIONAL,
measResultFreqListNR-r16 MeasResultFreqListFailNR-r15 OPTIONAL,
measResultFreqListGERAN-r16 MeasResultList2GERAN-r10 OPTIONAL,
- measResultFreqListUTRA-r16 MeasResultList2UTRA-r9 OPTIONAL,
+ measResultFreqListUTRA-r16 MeasResultList2UTRA-r9 OPTIONAL,
measResultSCG-r16 OCTET STRING OPTIONAL,
...
}
@@ -1037,6 +1061,11 @@ Paging-v1530-IEs ::= SEQUENCE {
Paging-v1610-IEs ::= SEQUENCE {
pagingRecordList-v1610 PagingRecordList-v1610 OPTIONAL, -- Need ON
uac-ParamModification-r16 ENUMERATED {true} OPTIONAL, -- Need ON
+ nonCriticalExtension Paging-v1700-IEs OPTIONAL
+}
+
+Paging-v1700-IEs ::= SEQUENCE {
+ pagingRecordList-v1700 PagingRecordList-v1700 OPTIONAL, -- Need ON
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1044,6 +1073,8 @@ PagingRecordList ::= SEQUENCE (SIZE (1..maxPageRec)) OF PagingRecord
PagingRecordList-v1610 ::= SEQUENCE (SIZE (1..maxPageRec)) OF PagingRecord-v1610
+PagingRecordList-v1700 ::= SEQUENCE (SIZE (1..maxPageRec)) OF PagingRecord-v1700
+
PagingRecord ::= SEQUENCE {
ue-Identity PagingUE-Identity,
cn-Domain ENUMERATED {ps, cs},
@@ -1055,6 +1086,10 @@ PagingRecord-v1610 ::= SEQUENCE {
mt-EDT-r16 ENUMERATED {true} OPTIONAL -- Need ON
}
+PagingRecord-v1700 ::= SEQUENCE {
+ pagingCause-r17 ENUMERATED {voice} OPTIONAL -- Need ON
+}
+
PagingUE-Identity ::= CHOICE {
s-TMSI S-TMSI,
imsi IMSI,
@@ -1107,7 +1142,7 @@ PURConfigurationRequest-r16-IEs ::= SEQUENCE {
pur-ReleaseRequest NULL,
pur-SetupRequest SEQUENCE {
requestedNumOccasions-r16 ENUMERATED {one, infinite},
- requestedPeriodicityAndOffset-r16 PUR-PeriodicityAndOffset-r16 OPTIONAL,
+ requestedPeriodicityAndOffset-r16 PUR-PeriodicityAndOffset-r16 OPTIONAL,
requestedTBS-r16 ENUMERATED {b328, b344, b376, b392, b408,
b424, b440, b456, b472, b488, b504, b536,
b568, b584, b616, b648, b680, b712, b744,
@@ -1323,6 +1358,12 @@ RRCConnectionReconfiguration-v1610-IEs ::= SEQUENCE {
tdm-PatternConfig2-r16 TDM-PatternConfig-r15 OPTIONAL, -- Need ON
sl-ConfigDedicatedForNR-r16 OCTET STRING OPTIONAL, -- Need OR
sl-SSB-PriorityEUTRA-r16 INTEGER (1..8) OPTIONAL, -- Need OR
+ nonCriticalExtension RRCConnectionReconfiguration-v1700-IEs OPTIONAL
+}
+
+RRCConnectionReconfiguration-v1700-IEs ::= SEQUENCE {
+ systemInformationBlockType31Dedicated-r17 OCTET STRING (CONTAINING SystemInformationBlockType31-r17) OPTIONAL, -- Cond NTN
+ scg-State-r17 ENUMERATED{deactivated} OPTIONAL, -- Need OP
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1418,7 +1459,7 @@ SCellToAddMod-r16 ::= SEQUENCE {
radioResourceConfigDedicatedSCell-r16 RadioResourceConfigDedicatedSCell-r10 OPTIONAL, -- Cond SCellAdd2
antennaInfoDedicatedSCell-r16 AntennaInfoDedicated-v10i0 OPTIONAL, -- Need ON
srs-SwitchFromServCellIndex-r16 INTEGER (0.. 31) OPTIONAL, -- Need ON
- sCellState-r16 ENUMERATED {activated, dormant} OPTIONAL, -- Need ON
+ sCellState-r16 ENUMERATED {activated, dormant} OPTIONAL, -- Need ON
...
}
@@ -1547,17 +1588,17 @@ SecurityConfigHO ::= SEQUENCE {
SecurityConfigHO-v1530 ::= SEQUENCE {
handoverType-v1530 CHOICE {
- intra5GC-r15 SEQUENCE {
+ intra5GC SEQUENCE {
securityAlgorithmConfig-r15 SecurityAlgorithmConfig OPTIONAL, -- Cond HO-toEUTRA
keyChangeIndicator-r15 BOOLEAN,
nextHopChainingCount-r15 NextHopChainingCount,
nas-Container-r15 OCTET STRING OPTIONAL -- Need ON
},
- fivegc-ToEPC-r15 SEQUENCE {
+ fivegc-ToEPC SEQUENCE {
securityAlgorithmConfig-r15 SecurityAlgorithmConfig,
nextHopChainingCount-r15 NextHopChainingCount
},
- epc-To5GC-r15 SEQUENCE {
+ epc-To5GC SEQUENCE {
securityAlgorithmConfig-r15 SecurityAlgorithmConfig,
nas-Container-r15 OCTET STRING
}
@@ -1616,7 +1657,19 @@ RRCConnectionReconfigurationComplete-v1530-IEs ::= SEQUENCE {
logMeasAvailableBT-r15 ENUMERATED {true} OPTIONAL,
logMeasAvailableWLAN-r15 ENUMERATED {true} OPTIONAL,
flightPathInfoAvailable-r15 ENUMERATED {true} OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionReconfigurationComplete-v1700-IEs
+ OPTIONAL
+}
+
+RRCConnectionReconfigurationComplete-v1700-IEs ::= SEQUENCE {
+ selectedCondReconfigurationToApply-r17 CondReconfigurationId-r16 OPTIONAL,
+ nonCriticalExtension RRCConnectionReconfigurationComplete-v1710-IEs
+ OPTIONAL
+}
+
+RRCConnectionReconfigurationComplete-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1685,9 +1738,14 @@ RRCConnectionReestablishmentComplete-v1250-IEs ::= SEQUENCE {
RRCConnectionReestablishmentComplete-v1530-IEs ::= SEQUENCE {
logMeasAvailableBT-r15 ENUMERATED {true} OPTIONAL,
- logMeasAvailableWLAN-r15 ENUMERATED {true} OPTIONAL,
+ logMeasAvailableWLAN-r15 ENUMERATED {true} OPTIONAL,
flightPathInfoAvailable-r15 ENUMERATED {true} OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionReestablishmentComplete-v1710-IEs OPTIONAL
+}
+
+RRCConnectionReestablishmentComplete-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1847,7 +1905,7 @@ RRCConnectionRelease-v15b0-IEs ::= SEQUENCE {
RRCConnectionRelease-v1610-IEs ::= SEQUENCE {
fullI-RNTI-r16 I-RNTI-r15 OPTIONAL, -- Need OR
- shortI-RNTI-r16 ShortI-RNTI-r15 OPTIONAL, -- Need OR
+ shortI-RNTI-r16 ShortI-RNTI-r15 OPTIONAL, -- Need OR
pur-Config-r16 CHOICE {release NULL, setup PUR-Config-r16} OPTIONAL, -- Need ON
rrc-InactiveConfig-v1610 RRC-InactiveConfig-v1610 OPTIONAL, -- Cond BLCE-IDLEeDRX
releaseIdleMeasConfig-r16 ENUMERATED {true} OPTIONAL, -- Need ON
@@ -1875,7 +1933,8 @@ RedirectedCarrierInfo ::= CHOICE {
cdma2000-1xRTT CarrierFreqCDMA2000,
...,
utra-TDD-r10 CarrierFreqListUTRA-TDD-r10,
- nr-r15 CarrierInfoNR-r15
+ nr-r15 CarrierInfoNR-r15,
+ nr-r17 CarrierInfoNR-r17
}
RedirectedCarrierInfo-v9e0 ::= SEQUENCE {
@@ -1898,8 +1957,8 @@ RRC-InactiveConfig-v1610::= SEQUENCE {
}
RAN-NotificationAreaInfo-r15 ::= CHOICE {
- cellList-r15 PLMN-RAN-AreaCellList-r15,
- ran-AreaConfigList-r15 PLMN-RAN-AreaConfigList-r15
+ cellList PLMN-RAN-AreaCellList-r15,
+ ran-AreaConfigList PLMN-RAN-AreaConfigList-r15
}
PLMN-RAN-AreaCellList-r15 ::= SEQUENCE (SIZE (1..maxPLMN-r15)) OF PLMN-RAN-AreaCell-r15
@@ -2030,6 +2089,12 @@ CarrierInfoNR-r15 ::= SEQUENCE {
smtc-r15 MTC-SSB-NR-r15 OPTIONAL -- Need OP
}
+CarrierInfoNR-r17 ::= SEQUENCE {
+ carrierFreq-r17 ARFCN-ValueNR-r15,
+ subcarrierSpacingSSB-r17 ENUMERATED {kHz15, kHz30, kHz120, kHz240, kHz480, spare1},
+ smtc-r17 MTC-SSB-NR-r15 OPTIONAL -- Need OP
+}
+
CellInfoListUTRA-FDD-r9 ::= SEQUENCE (SIZE (1..maxCellInfoUTRA-r9)) OF CellInfoUTRA-FDD-r9
CellInfoUTRA-FDD-r9 ::= SEQUENCE {
@@ -2067,8 +2132,8 @@ RRCConnectionRequest-r8-IEs ::= SEQUENCE {
}
RRCConnectionRequest-5GC-r15-IEs ::= SEQUENCE {
- ue-Identity InitialUE-Identity-5GC,
- establishmentCause EstablishmentCause-5GC,
+ ue-Identity-r15 InitialUE-Identity-5GC-r15,
+ establishmentCause-r15 EstablishmentCause-5GC-r15,
spare BIT STRING (SIZE (1))
}
@@ -2077,7 +2142,7 @@ InitialUE-Identity ::= CHOICE {
randomValue BIT STRING (SIZE (40))
}
-InitialUE-Identity-5GC ::= CHOICE {
+InitialUE-Identity-5GC-r15 ::= CHOICE {
ng-5G-S-TMSI-Part1 BIT STRING (SIZE (40)),
randomValue BIT STRING (SIZE (40))
}
@@ -2087,7 +2152,7 @@ EstablishmentCause ::= ENUMERATED {
emergency, highPriorityAccess, mt-Access, mo-Signalling,
mo-Data, delayTolerantAccess-v1020, mo-VoiceCall-v1280, spare1}
-EstablishmentCause-5GC ::= ENUMERATED {
+EstablishmentCause-5GC-r15 ::= ENUMERATED {
emergency, highPriorityAccess, mt-Access, mo-Signalling,
mo-Data, mo-VoiceCall, spare2, spare1}
@@ -2134,17 +2199,22 @@ RRCConnectionResume-v1530-IEs ::= SEQUENCE {
RRCConnectionResume-v1610-IEs ::= SEQUENCE {
idleModeMeasurementReq-r16 ENUMERATED {true} OPTIONAL, -- Need ON
- restoreMCG-SCells ENUMERATED {true} OPTIONAL, -- Need ON
- restoreSCG ENUMERATED {true} OPTIONAL, -- Cond EarlySec
+ restoreMCG-SCells-r16 ENUMERATED {true} OPTIONAL, -- Need ON
+ restoreSCG-r16 ENUMERATED {true} OPTIONAL, -- Cond EarlySec
sCellToAddModList-r16 SCellToAddModList-r16 OPTIONAL, -- Cond EarlySec
sCellToReleaseList-r16 SCellToReleaseListExt-r13 OPTIONAL, -- Need ON
sCellGroupToReleaseList-r16 SCellGroupToReleaseList-r15 OPTIONAL, -- Need ON
sCellGroupToAddModList-r16 SCellGroupToAddModList-r15 OPTIONAL, -- Cond EarlySec
- nr-SecondaryCellGroupConfig OCTET STRING OPTIONAL, -- Cond RestoreSCG
+ nr-SecondaryCellGroupConfig-r16 OCTET STRING OPTIONAL, -- Cond RestoreSCG
p-MaxEUTRA-r16 P-Max OPTIONAL, -- Cond SCG
p-MaxUE-FR1-r16 P-Max OPTIONAL, -- Cond SCG
tdm-PatternConfig-r16 TDM-PatternConfig-r15 OPTIONAL, -- Cond FDD-PCell
tdm-PatternConfig2-r16 TDM-PatternConfig-r15 OPTIONAL, -- Need OR
+ nonCriticalExtension RRCConnectionResume-v1700-IEs OPTIONAL
+}
+
+RRCConnectionResume-v1700-IEs ::= SEQUENCE {
+ scg-State-r17 ENUMERATED {deactivated} OPTIONAL, -- Need OP
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -2183,6 +2253,11 @@ RRCConnectionResumeComplete-v1610-IEs ::= SEQUENCE {
measResultListExtIdle-r16 MeasResultListExtIdle-r16 OPTIONAL,
measResultListIdleNR-r16 MeasResultListIdleNR-r16 OPTIONAL,
scg-ConfigResponseNR-r16 OCTET STRING OPTIONAL,
+ nonCriticalExtension RRCConnectionResumeComplete-v1710-IEs OPTIONAL
+}
+
+RRCConnectionResumeComplete-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
@@ -2344,8 +2419,17 @@ RRCConnectionSetupComplete-v1610-IEs ::= SEQUENCE {
up-CIoT-5GS-Optimisation-r16 ENUMERATED {true} OPTIONAL,
pur-ConfigID-r16 PUR-ConfigID-r16 OPTIONAL,
lte-M-r16 ENUMERATED {true} OPTIONAL,
- iab-NodeIndication-r16 ENUMERATED {true} OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ iab-NodeIndication-r16 ENUMERATED {true} OPTIONAL,
+ nonCriticalExtension RRCConnectionSetupComplete-v1690-IEs OPTIONAL
+}
+
+RRCConnectionSetupComplete-v1690-IEs ::= SEQUENCE {
+ ul-RRC-Segmentation-r16 ENUMERATED {true} OPTIONAL,
+ nonCriticalExtension RRCConnectionSetupComplete-v1710-IEs OPTIONAL
+}
+
+RRCConnectionSetupComplete-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
}
RegisteredMME ::= SEQUENCE {
@@ -2382,12 +2466,12 @@ RRCEarlyDataComplete-v1590-IEs ::= SEQUENCE {
}
RedirectedCarrierInfo-r15-IEs ::= CHOICE {
- eutra-r15 ARFCN-ValueEUTRA-r9,
- geran-r15 CarrierFreqsGERAN,
- utra-FDD-r15 ARFCN-ValueUTRA,
- cdma2000-HRPD-r15 CarrierFreqCDMA2000,
- cdma2000-1xRTT-r15 CarrierFreqCDMA2000,
- utra-TDD-r15 CarrierFreqListUTRA-TDD-r10
+ eutra ARFCN-ValueEUTRA-r9,
+ geran CarrierFreqsGERAN,
+ utra-FDD ARFCN-ValueUTRA,
+ cdma2000-HRPD CarrierFreqCDMA2000,
+ cdma2000-1xRTT CarrierFreqCDMA2000,
+ utra-TDD CarrierFreqListUTRA-TDD-r10
}
@@ -2504,8 +2588,9 @@ FailureReportSCG-NR-r15 ::= SEQUENCE {
logMeasResultListBT-r16 LogMeasResultListBT-r15 OPTIONAL,
logMeasResultListWLAN-r16 LogMeasResultListWLAN-r15 OPTIONAL,
failureType-v1610 ENUMERATED {t312-Expiry, scg-lbtFailure,
- beamFailureRecoveryFailure, bh-RLF-r16, spare4,
- spare3, spare2, spare1} OPTIONAL
+ beamFailureRecoveryFailure, bh-RLF-r16,
+ beamFailure-r17,
+ spare3, spare2, spare1} OPTIONAL
]]
}
@@ -2542,7 +2627,7 @@ SCPTMConfiguration-BR-r14 ::= SEQUENCE {
SCPTMConfiguration-BR-v1610 ::= SEQUENCE {
sc-MTCH-InfoList-MultiTB-r16 SC-MTCH-InfoList-BR-r14,
multiTB-Gap-r16 ENUMERATED {sf2, sf4, sf8, sf16, sf32, sf64, sf128, spare}
- OPTIONAL, -- Need OR,
+ OPTIONAL, -- Need OR
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -2730,7 +2815,10 @@ SystemInformation-r8-IEs ::= SEQUENCE {
sib26a-v1610 SystemInformationBlockType26a-r16,
sib27-v1610 SystemInformationBlockType27-r16,
sib28-v1610 SystemInformationBlockType28-r16,
- sib29-v1610 SystemInformationBlockType29-r16
+ sib29-v1610 SystemInformationBlockType29-r16,
+ sib30-v1700 SystemInformationBlockType30-r17,
+ sib31-v1700 SystemInformationBlockType31-r17,
+ sib32-v1700 SystemInformationBlockType32-r17
},
nonCriticalExtension SystemInformation-v8a0-IEs OPTIONAL
}
@@ -2780,6 +2868,15 @@ PosSystemInformation-r15-IEs ::= SEQUENCE {
posSib2-25-v1610 SystemInformationBlockPos-r15,
posSib4-1-v1610 SystemInformationBlockPos-r15,
posSib5-1-v1610 SystemInformationBlockPos-r15
+ ]],
+ [[
+ posSib1-9-v1700 SystemInformationBlockPos-r15,
+ posSib1-10-v1700 SystemInformationBlockPos-r15
+ ]],
+ [[
+ posSib2-17a-v1770 SystemInformationBlockPos-r15,
+ posSib2-18a-v1770 SystemInformationBlockPos-r15,
+ posSib2-20a-v1770 SystemInformationBlockPos-r15
]]
},
lateNonCriticalExtension OCTET STRING OPTIONAL,
@@ -2852,7 +2949,14 @@ SystemInformationBlockType1-v10x0-IEs ::= SEQUENCE {
SystemInformationBlockType1-v12j0-IEs ::= SEQUENCE {
schedulingInfoList-v12j0 SchedulingInfoList-v12j0 OPTIONAL, -- Need OR
schedulingInfoListExt-r12 SchedulingInfoListExt-r12 OPTIONAL, -- Need OR
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension SystemInformationBlockType1-v15g0-IEs OPTIONAL
+}
+
+SystemInformationBlockType1-v15g0-IEs ::= SEQUENCE {
+ bandwidthReducedAccessRelatedInfo-v15g0 SEQUENCE {
+ posSchedulingInfoList-BR-r15 SchedulingInfoList-BR-r13
+ } OPTIONAL, -- Need OR
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- Regular non critical extensions
@@ -2971,6 +3075,14 @@ SystemInformationBlockType1-v1610-IEs ::= SEQUENCE {
transmissionInControlChRegion-r16 ENUMERATED {true} OPTIONAL, -- Cond BW-reduced
campingAllowedInCE-r16 ENUMERATED {true} OPTIONAL, -- Need OR
plmn-IdentityList-v1610 PLMN-IdentityList-v1610 OPTIONAL, -- Need OR
+ nonCriticalExtension SystemInformationBlockType1-v1700-IEs OPTIONAL
+}
+
+SystemInformationBlockType1-v1700-IEs ::= SEQUENCE {
+ cellAccessRelatedInfo-NTN-r17 SEQUENCE {
+ cellBarred-NTN-r17 ENUMERATED {barred, notBarred},
+ plmn-IdentityList-v1700 PLMN-IdentityList-v1700 OPTIONAL -- Need OR
+ } OPTIONAL, -- Need OR
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -2991,6 +3103,8 @@ PLMN-IdentityList-r15::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo
PLMN-IdentityList-v1610::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-v1610
+PLMN-IdentityList-v1700::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-v1700
+
PLMN-IdentityInfo-r15 ::= SEQUENCE {
plmn-Identity-5GC-r15 CHOICE{
plmn-Identity-r15 PLMN-Identity,
@@ -3006,6 +3120,10 @@ PLMN-IdentityInfo-v1610 ::= SEQUENCE {
iab-Support-r16 ENUMERATED {true} OPTIONAL -- Need OR
}
+PLMN-IdentityInfo-v1700 ::= SEQUENCE {
+ trackingAreaList-r17 TrackingAreaList-r17 OPTIONAL -- Need OP
+}
+
SchedulingInfoList ::= SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo
SchedulingInfoList-v12j0 ::= SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo-v12j0
@@ -3037,6 +3155,8 @@ SIB-MappingInfo ::= SEQUENCE (SIZE (0..maxSIB-1)) OF SIB-Type
SIB-MappingInfo-v12j0 ::= SEQUENCE (SIZE (1..maxSIB-1)) OF SIB-Type-v12j0
+-- Note: The IE SIB-Type (without suffix) will not be extended any further in this release of the specification. If needed, the IE SIB-Type-v12j0 will be used for new SIB(s).
+
SIB-Type ::= ENUMERATED {
sibType3, sibType4, sibType5, sibType6,
sibType7, sibType8, sibType9, sibType10,
@@ -3046,14 +3166,15 @@ SIB-Type ::= ENUMERATED {
..., sibType19-v1250, sibType20-v1310, sibType21-v1430,
sibType24-v1530, sibType25-v1530, sibType26-v1530,
sibType26a-v1610, sibType27-v1610, sibType28-v1610,
- sibType29-v1610}
+ sibType29-v1610
+}
SIB-Type-v12j0 ::= ENUMERATED {
sibType19-v1250, sibType20-v1310, sibType21-v1430,
sibType24-v1530, sibType25-v1530, sibType26-v1530,
sibType26a-v1610, sibType27-v1610, sibType28-v1610,
- sibType29-v1610, spare6, spare5,
- spare4, spare3, spare2, spare1, ...}
+ sibType29-v1610, sibType30-v1700, sibType31-v1700, sibType32-v1700,
+ spare3, spare2, spare1, ...}
SI-Periodicity-r12 ::= ENUMERATED {rf8, rf16, rf32, rf64, rf128, rf256, rf512}
@@ -3092,6 +3213,8 @@ CellIdentity-5GC-r15 ::= CHOICE{
cellId-Index-r15 INTEGER (1..maxPLMN-r11)
}
+TrackingAreaList-r17 ::= SEQUENCE (SIZE (1..maxTAC-r17)) OF TrackingAreaCode
+
PosSchedulingInfoList-r15 ::= SEQUENCE (SIZE (1..maxSI-Message)) OF PosSchedulingInfo-r15
PosSchedulingInfo-r15 ::= SEQUENCE {
@@ -3141,7 +3264,13 @@ PosSIB-Type-r15 ::= SEQUENCE {
posSibType2-24-v1610,
posSibType2-25-v1610,
posSibType4-1-v1610,
- posSibType5-1-v1610
+ posSibType5-1-v1610,
+ posSibType1-9-v1700,
+ posSibType1-10-v1700,
+ posSibType2-17a-v1770,
+ posSibType2-18a-v1770,
+ posSibType2-20a-v1770
+
},
...
}
@@ -3235,6 +3364,18 @@ UEAssistanceInformation-v1530-IEs ::= SEQUENCE {
UEAssistanceInformation-v1610-IEs ::= SEQUENCE {
overheatingAssistance-v1610 OverheatingAssistance-v1610 OPTIONAL,
+ nonCriticalExtension UEAssistanceInformation-v1700-IEs OPTIONAL
+}
+
+UEAssistanceInformation-v1700-IEs ::= SEQUENCE {
+ uplinkData-r17 ENUMERATED { true } OPTIONAL,
+ scg-DeactivationPreference-r17 ENUMERATED { scgDeactivationPreferred,
+ noPreference } OPTIONAL,
+ nonCriticalExtension UEAssistanceInformation-v1710-IEs OPTIONAL
+}
+
+UEAssistanceInformation-v1710-IEs ::= SEQUENCE {
+ overheatingAssistance-v1710 OverheatingAssistance-v1710 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -3286,7 +3427,11 @@ OverheatingAssistance-r14 ::= SEQUENCE {
}
OverheatingAssistance-v1610 ::= SEQUENCE {
- overheatingAssistanceForSCG-r16 OCTET STRING
+ overheatingAssistanceForSCG-r16 OCTET STRING
+}
+
+OverheatingAssistance-v1710 ::= SEQUENCE {
+ overheatingAssistanceForSCG-FR2-2-r17 OCTET STRING
}
@@ -3352,8 +3497,13 @@ UECapabilityEnquiry-v1560-IEs ::= SEQUENCE {
}
UECapabilityEnquiry-v1610-IEs ::= SEQUENCE {
- rrc-SegAllowed-r16 ENUMERATED {enabled} OPTIONAL, -- Need ON
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ rrc-SegAllowed-r16 ENUMERATED {enabled} OPTIONAL, -- Need ON
+ nonCriticalExtension UECapabilityEnquiry-v1710-IEs OPTIONAL
+}
+
+UECapabilityEnquiry-v1710-IEs ::= SEQUENCE {
+ sidelinkRequest-r17 ENUMERATED {true} OPTIONAL, -- Need ON
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
UE-CapabilityRequest ::= SEQUENCE (SIZE (1..maxRAT-Capabilities)) OF RAT-Type
@@ -3444,7 +3594,12 @@ UEInformationRequest-v1250-IEs ::= SEQUENCE {
UEInformationRequest-v1530-IEs ::= SEQUENCE {
idleModeMeasurementReq-r15 ENUMERATED {true} OPTIONAL, -- Need ON
flightPathInfoReq-r15 FlightPathInfoReportConfig-r15 OPTIONAL, -- Need ON
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UEInformationRequest-v1710-IEs OPTIONAL
+}
+
+UEInformationRequest-v1710-IEs ::= SEQUENCE {
+ coarseLocationReq-r17 ENUMERATED {true} OPTIONAL, -- Need ON
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -3502,7 +3657,11 @@ UEInformationResponse-v1610-IEs ::= SEQUENCE {
rach-Report-v1610 RACH-Report-v1610 OPTIONAL,
measResultListExtIdle-r16 MeasResultListExtIdle-r16 OPTIONAL,
measResultListIdleNR-r16 MeasResultListIdleNR-r16 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UEInformationResponse-v1710-IEs OPTIONAL
+}
+
+UEInformationResponse-v1710-IEs ::= SEQUENCE {
+ coarseLocationInfo-r17 OCTET STRING OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
}
RACH-Report-r16 ::= SEQUENCE {
@@ -3511,7 +3670,7 @@ RACH-Report-r16 ::= SEQUENCE {
}
RACH-Report-v1610 ::= SEQUENCE {
- initialCEL-r16 INTEGER (0..3),
+ initialCEL-r16 INTEGER (0..3),
edt-Fallback-r16 BOOLEAN
}
@@ -3584,15 +3743,15 @@ RLF-Report-r9 ::= SEQUENCE {
[[ measResultListNR-r16 MeasResultCellListNR-r15 OPTIONAL,
previousNR-PCellId-r16 CellGlobalIdNR-r16 OPTIONAL,
failedNR-PCellId-r16 CHOICE {
- cellGlobalId-r16 CellGlobalIdNR-r16,
- pci-arfcn-r16 SEQUENCE {
+ cellGlobalId CellGlobalIdNR-r16,
+ pci-arfcn SEQUENCE {
physCellId-r16 PhysCellIdNR-r15,
- carrierFreq-r16 ARFCN-ValueNR-r15
+ carrierFreq-r16 ARFCN-ValueNR-r15
}
} OPTIONAL,
reconnectCellId-r16 CHOICE {
- nrReconnectCellId-r16 CellGlobalIdNR-r16,
- eutraReconnectCellId-r16 SEQUENCE {
+ nrReconnectCellId CellGlobalIdNR-r16,
+ eutraReconnectCellId SEQUENCE {
cellGlobalId-r16 CellGlobalIdEUTRA,
trackingAreaCode-EPC-r16 TrackingAreaCode OPTIONAL,
trackingAreaCode-5GC-r16 TrackingAreaCode-5GC-r15 OPTIONAL
@@ -3696,6 +3855,8 @@ LogMeasInfo-r10 ::= SEQUENCE {
carrierFreqNR-r16 ARFCN-ValueNR-r15
} OPTIONAL,
measResultListExtNR-r16 MeasResultFreqListNR-r16 OPTIONAL
+ ]],
+ [[ uncomBarPreMeasResult-r17 OCTET STRING OPTIONAL
]]
}
@@ -3781,7 +3942,7 @@ MobilityHistoryReport-r12 ::= VisitedCellInfoList-r12
FlightPathInfoReport-r15 ::= SEQUENCE {
flightPath-r15 SEQUENCE (SIZE (1..maxWayPoint-r15)) OF WayPointLocation-r15 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ dummy SEQUENCE {} OPTIONAL
}
WayPointLocation-r15 ::= SEQUENCE {
@@ -4166,6 +4327,8 @@ SystemInformationBlockType3 ::= SEQUENCE {
crs-IntfMitigNeighCellsCE-r15 ENUMERATED {enabled} OPTIONAL -- Need OP
]],
[[ cellReselectionServingFreqInfo-v1610 CellReselectionServingFreqInfo-v1610 OPTIONAL -- Need OR
+ ]],
+ [[ t-Service-r17 TimeOffsetUTC-r17 OPTIONAL -- Need OR
]]
}
@@ -4210,7 +4373,7 @@ CellReselectionInfoHSDN-r15 ::= SEQUENCE {
SystemInformationBlockType4 ::= SEQUENCE {
intraFreqNeighCellList IntraFreqNeighCellList OPTIONAL, -- Need OR
- intraFreqBlackCellList IntraFreqBlackCellList OPTIONAL, -- Need OR
+ intraFreqExcludedCellList IntraFreqExcludedCellList OPTIONAL, -- Need OR
csg-PhysCellIdRange PhysCellIdRange OPTIONAL, -- Cond CSG
...,
lateNonCriticalExtension OCTET STRING OPTIONAL,
@@ -4237,7 +4400,7 @@ IntraFreqNeighCellInfo-v1610 ::= SEQUENCE {
rss-MeasPowerBias-r16 RSS-MeasPowerBias-r16
}
-IntraFreqBlackCellList ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PhysCellIdRange
+IntraFreqExcludedCellList ::= SEQUENCE (SIZE (1..maxExcludedCell)) OF PhysCellIdRange
SystemInformationBlockType5 ::= SEQUENCE {
@@ -4340,7 +4503,7 @@ InterFreqCarrierFreqInfo ::= SEQUENCE {
neighCellConfig NeighCellConfig,
q-OffsetFreq Q-OffsetRange DEFAULT dB0,
interFreqNeighCellList InterFreqNeighCellList OPTIONAL, -- Need OR
- interFreqBlackCellList InterFreqBlackCellList OPTIONAL, -- Need OR
+ interFreqExcludedCellList InterFreqExcludedCellList OPTIONAL, -- Need OR
...,
[[ q-QualMin-r9 Q-QualMin-r9 OPTIONAL, -- Need OP
threshX-Q-r9 SEQUENCE {
@@ -4390,7 +4553,7 @@ InterFreqCarrierFreqInfo-r12 ::= SEQUENCE {
neighCellConfig-r12 NeighCellConfig,
q-OffsetFreq-r12 Q-OffsetRange DEFAULT dB0,
interFreqNeighCellList-r12 InterFreqNeighCellList OPTIONAL, -- Need OR
- interFreqBlackCellList-r12 InterFreqBlackCellList OPTIONAL, -- Need OR
+ interFreqExcludedCellList-r12 InterFreqExcludedCellList OPTIONAL, -- Need OR
q-QualMin-r12 Q-QualMin-r9 OPTIONAL, -- Need OP
threshX-Q-r12 SEQUENCE {
threshX-HighQ-r12 ReselectionThresholdQ-r9,
@@ -4446,7 +4609,7 @@ InterFreqNeighCellInfo-v1610 ::= SEQUENCE {
rss-MeasPowerBias-r16 RSS-MeasPowerBias-r16
}
-InterFreqBlackCellList ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PhysCellIdRange
+InterFreqExcludedCellList ::= SEQUENCE (SIZE (1..maxExcludedCell)) OF PhysCellIdRange
RedistributionInterFreqInfo-r13 ::= SEQUENCE {
redistributionFactorFreq-r13 RedistributionFactor-r13 OPTIONAL, --Need OP
@@ -4776,6 +4939,9 @@ SystemInformationBlockType13-r9 ::= SEQUENCE {
]],
[[
mbsfn-AreaInfoList-r16 MBSFN-AreaInfoList-r16 OPTIONAL -- Need OR
+ ]],
+ [[
+ mbsfn-AreaInfoList-r17 MBSFN-AreaInfoList-r17 OPTIONAL -- Cond Ded15or25PRB
]]
}
@@ -5086,7 +5252,11 @@ SystemInformationBlockType24-r15 ::= SEQUENCE {
t-ReselectionNR-SF-r15 SpeedStateScaleFactors OPTIONAL, -- Need OR
lateNonCriticalExtension OCTET STRING OPTIONAL,
...,
- [[ carrierFreqListNR-v1610 CarrierFreqListNR-v1610 OPTIONAL -- Need OR
+ [[ carrierFreqListNR-v1610 CarrierFreqListNR-v1610 OPTIONAL -- Need OR
+ ]],
+ [[ carrierFreqListNR-v1700 CarrierFreqListNR-v1700 OPTIONAL -- Need OR
+ ]],
+ [[ carrierFreqListNR-v1720 CarrierFreqListNR-v1720 OPTIONAL -- Need OR
]]
}
@@ -5094,6 +5264,10 @@ CarrierFreqListNR-r15 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-r15
CarrierFreqListNR-v1610 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-v1610
+CarrierFreqListNR-v1700 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-v1700
+
+CarrierFreqListNR-v1720 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-v1720
+
CarrierFreqNR-r15 ::= SEQUENCE {
carrierFreq-r15 ARFCN-ValueNR-r15,
multiBandInfoList-r15 MultiFrequencyBandListNR-r15 OPTIONAL, -- Need OR
@@ -5121,21 +5295,40 @@ CarrierFreqNR-r15 ::= SEQUENCE {
[[ multiBandNsPmaxListNR-v1550 MultiBandNsPmaxListNR-1-v1550 OPTIONAL, -- Need OR
multiBandNsPmaxListNR-SUL-v1550 MultiBandNsPmaxListNR-v1550 OPTIONAL, -- Need OR
ssb-ToMeasure-r15 SSB-ToMeasure-r15 OPTIONAL -- Need OR
+ ]],
+ [[ ns-PmaxListNR-v1760 NS-PmaxListNR-v1760 OPTIONAL, -- Need OR
+ multiBandNsPmaxListNR-v1760 MultiBandNsPmaxListNR-1-v1760 OPTIONAL, -- Need OR
+ multiBandNsPmaxListNR-SUL-v1760 MultiBandNsPmaxListNR-v1760 OPTIONAL -- Need OR
]]
}
CarrierFreqNR-v1610 ::= SEQUENCE {
- smtc2-LP-r16 MTC-SSB2-LP-NR-r16 OPTIONAL, -- Need OR
- ssb-PositionQCL-CommonNR-r16 SSB-PositionQCL-RelationNR-r16 OPTIONAL, -- Cond SharedSpectrum2
- whiteCellListNR-r16 WhiteCellListNR-r16 OPTIONAL, -- Cond SharedSpectrum
- highSpeedCarrierNR-r16 ENUMERATED {true} OPTIONAL -- Need OR
+ smtc2-LP-r16 MTC-SSB2-LP-NR-r16 OPTIONAL, -- Need OR
+ ssb-PositionQCL-CommonNR-r16 SSB-PositionQCL-RelationNR-r16 OPTIONAL, -- Cond SharedSpectrum2
+ allowedCellListNR-r16 AllowedCellListNR-r16 OPTIONAL, -- Cond SharedSpectrum
+ highSpeedCarrierNR-r16 ENUMERATED {true} OPTIONAL -- Need OR
+}
+
+CarrierFreqNR-v1700 ::= SEQUENCE {
+ nr-FreqNeighHSDN-CellList-r17 NR-FreqNeighHSDN-CellList-r17 OPTIONAL -- Need OR
+}
+
+CarrierFreqNR-v1720 ::= SEQUENCE {
+ subcarrierSpacingSSB-r17 ENUMERATED {kHz480, spare1} OPTIONAL, -- Need OR
+ ssb-PositionQCL-CommonNR-r17 SSB-PositionQCL-RelationNR-r17 OPTIONAL -- Cond SharedSpectrum2
}
MultiBandNsPmaxListNR-1-v1550 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-1-r15)) OF NS-PmaxListNR-r15
MultiBandNsPmaxListNR-v1550 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-r15)) OF NS-PmaxListNR-r15
-WhiteCellListNR-r16 ::= SEQUENCE (SIZE (1..maxCellWhiteNR-r16)) OF PhysCellIdNR-r15
+MultiBandNsPmaxListNR-1-v1760 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-1-r15)) OF NS-PmaxListNR-v1760
+
+MultiBandNsPmaxListNR-v1760 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-r15)) OF NS-PmaxListNR-v1760
+
+AllowedCellListNR-r16 ::= SEQUENCE (SIZE (1..maxCellAllowedNR-r16)) OF PhysCellIdNR-r15
+
+NR-FreqNeighHSDN-CellList-r17 ::= SEQUENCE (SIZE (1..maxCellNR-r17)) OF PhysCellIdRangeNR-r16
SystemInformationBlockType25-r15 ::= SEQUENCE {
@@ -5152,6 +5345,9 @@ SystemInformationBlockType25-r15 ::= SEQUENCE {
]],
[[
uac-AC1-SelectAssistInfo-r16 SEQUENCE (SIZE (2..maxPLMN-r11)) OF UAC-AC1-SelectAssistInfo-r16 OPTIONAL -- Need OR
+ ]],
+ [[
+ uac-BarringInfoSetList-v1700 UAC-BarringInfoSetList-v1700 OPTIONAL -- Cond MINT
]]
}
@@ -5175,6 +5371,7 @@ UAC-BarringPerCat-r15 ::= SEQUENCE {
UAC-BarringInfoSetIndex-r15 ::= INTEGER (1..maxBarringInfoSet-r15)
UAC-BarringInfoSetList-r15 ::= SEQUENCE (SIZE (1..maxBarringInfoSet-r15)) OF UAC-BarringInfoSet-r15
+UAC-BarringInfoSetList-v1700 ::= SEQUENCE (SIZE(1..maxBarringInfoSet-r15)) OF UAC-BarringInfoSet-v1700
UAC-BarringInfoSet-r15 ::= SEQUENCE {
uac-BarringFactor-r15 ENUMERATED {
@@ -5184,6 +5381,11 @@ UAC-BarringInfoSet-r15 ::= SEQUENCE {
uac-BarringForAccessIdentity-r15 BIT STRING (SIZE(7))
}
+UAC-BarringInfoSet-v1700 ::= SEQUENCE {
+ uac-BarringFactorForAI3-r17 ENUMERATED {p00, p05, p10, p15, p20, p25, p30, p40,
+ p50, p60, p70, p75, p80, p85, p90, p95} OPTIONAL -- Need OP
+}
+
UAC-AC1-SelectAssistInfo-r15::= ENUMERATED {a, b, c}
UAC-AC1-SelectAssistInfo-r16::= ENUMERATED {a, b, c, notConfigured}
@@ -5252,6 +5454,77 @@ SystemInformationBlockType29-r16 ::= SEQUENCE {
}
+SystemInformationBlockType30-r17 ::= SEQUENCE {
+ commonPLMNsWithDisasterCondition-r17 SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-Identity OPTIONAL, -- Need OR
+ applicableDisasterInfoList-r17 SEQUENCE (SIZE (1..maxPLMN-r11)) OF ApplicableDisasterInfo-r17 OPTIONAL, -- Need OR
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+ApplicableDisasterInfo-r17 ::= CHOICE {
+ noDisasterRoaming-r17 NULL,
+ disasterRelatedIndication-r17 NULL,
+ commonPLMNs-r17 NULL,
+ dedicatedPLMNs-r17 SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-Identity
+}
+
+
+SystemInformationBlockType31-r17 ::= SEQUENCE {
+ servingSatelliteInfo-r17 ServingSatelliteInfo-r17,
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+ServingSatelliteInfo-r17 ::= SEQUENCE {
+ ephemerisInfo-r17 CHOICE {
+ stateVectors EphemerisStateVectors-r17,
+ orbitalParameters EphemerisOrbitalParameters-r17
+ },
+ nta-CommonParameters-r17 SEQUENCE {
+ nta-Common-r17 INTEGER (0..8316827) OPTIONAL, -- Need OP
+ nta-CommonDrift-r17 INTEGER (-261935..261935) OPTIONAL, -- Need OP
+ nta-CommonDriftVariation-r17 INTEGER (0..29479) OPTIONAL -- Need OP
+ },
+ ul-SyncValidityDuration-r17 ENUMERATED {s5, s10, s15, s20, s25, s30, s35, s40,
+ s45, s50, s55, s60, s120, s180, s240, s900},
+ epochTime-r17 SEQUENCE {
+ startSFN-r17 INTEGER (0..1023),
+ startSubFrame-r17 INTEGER (0..9)
+ } OPTIONAL, -- Need OP
+ k-Offset-r17 INTEGER (0..1023),
+ k-Mac-r17 INTEGER (1..512) OPTIONAL, -- Need OP
+ ...
+}
+
+
+SystemInformationBlockType32-r17 ::= SEQUENCE {
+ satelliteInfoList-r17 SatelliteInfoList-r17 OPTIONAL, -- Need OR
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+SatelliteInfoList-r17 ::= SEQUENCE (SIZE (1..maxSat-r17)) OF SatelliteInfo-r17
+
+SatelliteInfo-r17 ::= SEQUENCE {
+ satelliteId-r17 INTEGER (0..255),
+ serviceInfo-r17 SEQUENCE {
+ tle-EphemerisParameters-r17 TLE-EphemerisParameters-r17 OPTIONAL, -- Need OR
+ t-ServiceStart-r17 TimeOffsetUTC-r17 OPTIONAL -- Need OR
+ },
+ footprintInfo-r17 SEQUENCE {
+ referencePoint-r17 SEQUENCE {
+ longitude-r17 INTEGER (-131072..131071),
+ latitude-r17 INTEGER (-131072..131071)
+ } OPTIONAL, -- Need OR
+ elevationAngles-r17 SEQUENCE {
+ elevationAngleRight-r17 INTEGER (-14..14),
+ elevationAngleLeft-r17 INTEGER (-14..14) OPTIONAL -- Need OP
+ } OPTIONAL, -- Need OR
+ radius-r17 INTEGER (1..256) OPTIONAL -- Need OR
+ }
+}
+
+
Alpha-r12 ::= ENUMERATED {al0, al04, al05, al06, al07, al08, al09, al1}
@@ -5315,7 +5588,7 @@ AntennaInfoDedicatedSTTI-r15 ::= CHOICE {
setup SEQUENCE {
transmissionModeDL-MBSFN-r15 ENUMERATED {tm9, tm10} OPTIONAL, -- Need OR
transmissionModeDL-nonMBSFN-r15 ENUMERATED {tm1, tm2, tm3, tm4, tm6, tm8, tm9,
- tm10} OPTIONAL, --_Need OR
+ tm10} OPTIONAL, -- Need OR
codebookSubsetRestriction CHOICE {
n2TxAntenna-tm3-r15 BIT STRING (SIZE (2)),
n4TxAntenna-tm3-r15 BIT STRING (SIZE (4)),
@@ -5728,6 +6001,11 @@ CQI-ShortConfigSCell-r15 ::= CHOICE {
}
}
+CQI-ReportPeriodicSCell-v1730 ::= SEQUENCE {
+ cqi-pmi-ConfigIndex2Dormant-r17 INTEGER (0..1023),
+ ri-ConfigIndex2Dormant-r17 INTEGER (0..1023) OPTIONAL -- Need OR
+}
+
CRI-ReportConfig-r13 ::= CHOICE {
release NULL,
setup SEQUENCE {
@@ -6227,7 +6505,7 @@ GWUS-Config-r16 ::= SEQUENCE {
resourceConfigDRX-r16 GWUS-ResourceConfig-r16,
resourceConfig-eDRX-Short-r16 GWUS-ResourceConfig-r16 OPTIONAL, -- Need OP
resourceConfig-eDRX-Long-r16 GWUS-ResourceConfig-r16 OPTIONAL, -- Cond TimeOffset
- probThreshList-r16 GWUS-ProbThreshList-r16 OPTIONAL, -- Cond ProbabilityBased
+ probThreshList-r16 GWUS-ProbThreshList-r16 OPTIONAL, -- Cond ProbabilityBased
groupNarrowBandList-r16 GWUS-GroupNarrowBandList-r16 OPTIONAL -- Need OR
}
@@ -6255,7 +6533,7 @@ GWUS-GroupsForServiceList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-r16)
GWUS-GroupNarrowBandList-r16 ::= SEQUENCE (SIZE (1..maxAvailNarrowBands-r13)) OF BOOLEAN
-GWUS-NumGroupsList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-Resources-r16)) OF GWUS-NumGroups-r16
+GWUS-NumGroupsList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-Resources-r16)) OF GWUS-NumGroups-r16
GWUS-ProbThreshList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-r16)) OF GWUS-PagingProbThresh-r16
@@ -6448,9 +6726,14 @@ MAC-MainConfig ::= SEQUENCE {
rf128, rf320, rf640, rf1280, rf2560,
rf5120, rf10240, spare3, spare2, spare1} OPTIONAL -- Need OR
}
- } OPTIONAL -- Need ON
+ } OPTIONAL -- Need ON
]],
[[ ce-ETWS-CMAS-RxInConn-r16 ENUMERATED {true} OPTIONAL -- Need OR
+ ]],
+ [[ offsetThresholdTA-r17 CHOICE {release NULL, setup OffsetThresholdTA-r17}
+ OPTIONAL, -- Need ON
+ sr-ProhibitTimerOffset-r17 CHOICE {release NULL, setup SR-ProhibitTimerOffset-r17}
+ OPTIONAL -- Need ON
]]
}
@@ -6553,6 +6836,16 @@ RetxBSR-Timer-r12 ::= ENUMERATED {
sf320, sf640, sf1280, sf2560, sf5120,
sf10240, spare2, spare1}
+OffsetThresholdTA-r17 ::= ENUMERATED {
+ ms0dot5, ms1, ms2, ms3, ms4, ms5, ms6 ,ms7,
+ ms8, ms9, ms10, ms11, ms12, ms13, ms14, ms15
+}
+
+SR-ProhibitTimerOffset-r17 ::= ENUMERATED {
+ ms90, ms180, ms270, ms360,
+ ms450, ms540, ms1080, spare
+}
+
STAG-ToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxSTAG-r11)) OF STAG-Id-r11
STAG-ToAddModList-r11 ::= SEQUENCE (SIZE (1..maxSTAG-r11)) OF STAG-ToAddMod-r11
@@ -6749,6 +7042,8 @@ PDCP-Config ::= SEQUENCE {
]],
[[
ethernetHeaderCompression-r16 CHOICE {release NULL, setup EthernetHeaderCompression-r16} OPTIONAL -- Need ON
+ ]],
+ [[ discardTimerExt-r17 CHOICE {release NULL, setup DiscardTimerExt-r17} OPTIONAL -- Need ON
]]
}
@@ -6766,6 +7061,8 @@ EthernetHeaderCompression-r16 ::= SEQUENCE {
...
}
+DiscardTimerExt-r17 ::= ENUMERATED {ms2000, spare}
+
PDSCH-ConfigCommon ::= SEQUENCE {
referenceSignalPower INTEGER (-60..50),
@@ -6822,6 +7119,11 @@ PDSCH-ConfigDedicated-v1610 ::= SEQUENCE {
ce-PDSCH-MultiTB-Config-r16 CHOICE {release NULL, setup CE-PDSCH-MultiTB-Config-r16}
}
+PDSCH-ConfigDedicated-v1700 ::= SEQUENCE {
+ ce-PDSCH-14HARQ-Config-r17 CHOICE {release NULL, setup CE-PDSCH-14HARQ-Config-r17} OPTIONAL, -- Need ON
+ ce-PDSCH-maxTBS-r17 ENUMERATED {enabled} OPTIONAL -- Need OR
+}
+
PDSCH-ConfigDedicatedSCell-v1430 ::= SEQUENCE {
tbsIndexAlt2-r14 ENUMERATED {b33} OPTIONAL -- Need OR
}
@@ -6831,6 +7133,10 @@ CE-PDSCH-MultiTB-Config-r16 ::= SEQUENCE {
harq-AckBundling-r16 ENUMERATED {on} OPTIONAL -- Need OR
}
+CE-PDSCH-14HARQ-Config-r17 ::= SEQUENCE {
+ ce-HARQ-AckDelay-r17 ENUMERATED {alt-1, alt-2e}
+}
+
RE-MappingQCLConfigToAddModList-r11 ::= SEQUENCE (SIZE (1..maxRE-MapQCL-r11)) OF PDSCH-RE-MappingQCL-Config-r11
RE-MappingQCLConfigToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxRE-MapQCL-r11)) OF PDSCH-RE-MappingQCL-ConfigId-r11
@@ -7059,6 +7365,15 @@ PhysicalConfigDedicated ::= SEQUENCE {
uplinkPowerControlAddSRS-r16 CHOICE {release NULL, setup UplinkPowerControlAddSRS-r16} OPTIONAL, -- Need ON
soundingRS-VirtualCellID-r16 CHOICE {release NULL, setup SoundingRS-VirtualCellID-r16} OPTIONAL, -- Need ON
widebandPRG-r16 CHOICE {release NULL, setup WidebandPRG-r16} OPTIONAL -- Need ON
+ ]],
+ [[ pdsch-ConfigDedicated-v1700 PDSCH-ConfigDedicated-v1700 OPTIONAL, -- Need ON
+ ntn-ConfigDedicated-r17 SEQUENCE {
+ pucch-TxDuration-r17 CHOICE {release NULL, setup PUCCH-TxDuration-r17} OPTIONAL, -- Need ON
+ pusch-TxDuration-r17 CHOICE {release NULL, setup PUSCH-TxDuration-r17} OPTIONAL -- Need ON
+ } OPTIONAL --Cond NTN
+ ]],
+ [[
+ uplinkSegmentedPrecompensationGap-r17 ENUMERATED {sym1,sl1,sf1} OPTIONAL -- Need OR
]]
}
@@ -7250,6 +7565,10 @@ PhysicalConfigDedicatedSCell-v13c0 ::= SEQUENCE {
}
}
+PhysicalConfigDedicatedSCell-v1730 ::= SEQUENCE {
+ cqi-ReportPeriodicSCell-v1730 CHOICE {release NULL, setup CQI-ReportPeriodicSCell-v1730}
+}
+
CFI-Config-r15 ::= SEQUENCE {
cfi-SubframeNonMBSFN-r15 INTEGER (1..4) OPTIONAL, -- Need ON
cfi-SlotSubslotNonMBSFN-r15 INTEGER (1..3) OPTIONAL, -- Need ON
@@ -7471,6 +7790,10 @@ EDT-PRACH-ParametersCE-r15 ::= SEQUENCE {
RSRP-ThresholdsPrachInfoList-r13 ::= SEQUENCE (SIZE(1..3)) OF RSRP-Range
+PRACH-TxDuration-r17::= SEQUENCE {
+ prach-TxDuration-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64, n128}
+}
+
PresenceAntennaPort1 ::= BOOLEAN
@@ -7672,12 +7995,14 @@ Format5-resource-r13 ::= SEQUENCE {
cdm-index-format5-r13 INTEGER (0..1)
}
-
-
N1PUCCH-AN-CS-r10 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..2047)
N1PUCCH-AN-InfoList-r13 ::= SEQUENCE (SIZE(1..maxCE-Level-r13)) OF INTEGER (0..2047)
+PUCCH-TxDuration-r17 ::= SEQUENCE {
+ pucch-TxDuration-r17 ENUMERATED {sf2, sf4, sf8, sf16, sf32, sf64, sf128}
+}
+
PUR-Config-r16 ::= SEQUENCE {
pur-ConfigID-r16 PUR-ConfigID-r16 OPTIONAL, -- Need OR
@@ -7697,7 +8022,9 @@ PUR-Config-r16 ::= SEQUENCE {
pur-PDSCH-FreqHopping-r16 BOOLEAN,
pur-PUCCH-Config-r16 PUR-PUCCH-Config-r16 OPTIONAL, -- Need ON
pur-PUSCH-Config-r16 PUR-PUSCH-Config-r16 OPTIONAL, -- Need ON
- ...
+ ...,
+ [[ pur-PDSCH-maxTBS-r17 BOOLEAN OPTIONAL -- Need ON
+ ]]
}
PUR-MPDCCH-Config-r16 ::= SEQUENCE {
@@ -7934,6 +8261,10 @@ CE-PUSCH-MultiTB-Config-r16 ::= SEQUENCE {
interleaving-r16 ENUMERATED {on} OPTIONAL -- Need OR
}
+PUSCH-TxDuration-r17 ::= SEQUENCE {
+ pusch-TxDuration-r17 ENUMERATED {n2, n4, n8, n16, n32, n64, n128, n256}
+}
+
Enable256QAM-r14 ::= CHOICE {
release NULL,
setup CHOICE {
@@ -8117,6 +8448,18 @@ RadioResourceConfigCommonSIB ::= SEQUENCE {
rss-MeasNonNCL-r16 ENUMERATED {enabled} OPTIONAL, -- Need OR
puncturedSubcarriersDL-r16 BIT STRING (SIZE (2)) OPTIONAL, -- Need OR
highSpeedInterRAT-NR-r16 BOOLEAN OPTIONAL -- Need OR
+ ]],
+ [[
+ pcch-Config-v1700 PCCH-Config-v1700 OPTIONAL, -- Need OR
+ ntn-ConfigCommon-r17 SEQUENCE {
+ ta-Report-r17 ENUMERATED {enabled} OPTIONAL, -- Need OR
+ t318-r17 ENUMERATED {
+ ms0, ms50, ms100, ms200,
+ ms500, ms1000, ms2000, ms4000},
+ prach-TxDuration-r17 PRACH-TxDuration-r17 OPTIONAL, -- Need OR
+ pucch-TxDuration-r17 PUCCH-TxDuration-r17 OPTIONAL, -- Need OR
+ pusch-TxDuration-r17 PUSCH-TxDuration-r17 OPTIONAL -- Need OR
+ } OPTIONAL -- Cond NTN
]]
}
@@ -8163,6 +8506,16 @@ RadioResourceConfigCommon ::= SEQUENCE {
highSpeedConfig-v1610 HighSpeedConfig-v1610 OPTIONAL, -- Need OR
uplinkPowerControlCommon-v1610 UplinkPowerControlCommon-v1610 OPTIONAL, -- Need OR
highSpeedInterRAT-NR-r16 BOOLEAN OPTIONAL -- Need ON
+ ]],
+ [[ ntn-ConfigCommon-r17 SEQUENCE {
+ ta-Report-r17 ENUMERATED {enabled} OPTIONAL, -- Need OR
+ t318-r17 ENUMERATED {
+ ms0, ms50, ms100, ms200, ms500,
+ ms1000, ms2000, ms4000, ms6000},
+ prach-TxDuration-r17 PRACH-TxDuration-r17 OPTIONAL, -- Need OR
+ pucch-TxDuration-r17 PUCCH-TxDuration-r17 OPTIONAL, -- Need OR
+ pusch-TxDuration-r17 PUSCH-TxDuration-r17 OPTIONAL -- Need OR
+ } OPTIONAL -- Cond NTN
]]
}
@@ -8259,7 +8612,7 @@ RadioResourceConfigCommonSCell-r10 ::= SEQUENCE {
[[ uplinkPowerControlCommonSCell-v1530 UplinkPowerControlCommon-v1530 OPTIONAL -- Need ON
]],
[[ highSpeedEnhMeasFlagSCell-r16 BOOLEAN OPTIONAL -- Need ON
- ]]
+ ]]
}
RadioResourceConfigCommonSCell-v10l0 ::= SEQUENCE {
@@ -8321,6 +8674,10 @@ PCCH-Config-v1310 ::= SEQUENCE {
OPTIONAL -- Need OR
}
+PCCH-Config-v1700 ::= SEQUENCE {
+ ranPagingInIdlePO-r17 ENUMERATED {true}
+}
+
UL-CyclicPrefixLength ::= ENUMERATED {len1, len2}
HighSpeedConfig-r14 ::= SEQUENCE {
@@ -8457,6 +8814,8 @@ RadioResourceConfigDedicatedSCell-r10 ::= SEQUENCE {
[[ crs-IntfMitigEnabled-r15 BOOLEAN OPTIONAL, -- Need ON
neighCellsCRS-Info-r15 NeighCellsCRS-Info-r15 OPTIONAL, -- Need ON
sps-Config-v1530 SPS-Config-v1530 OPTIONAL -- Need ON
+ ]],
+ [[ physicalConfigDedicatedSCell-v1730 PhysicalConfigDedicatedSCell-v1730 OPTIONAL -- Cond CQI-ReportPeriodicSCell
]]
}
@@ -8485,6 +8844,8 @@ SRB-ToAddMod ::= SEQUENCE {
srb-Identity-v1530 INTEGER (4) OPTIONAL -- Need ON
]],
[[ rlc-Config-v1560 RLC-Config-v1510 OPTIONAL -- Need ON
+ ]],
+ [[ rlc-Config-v1700 RLC-Config-v1700 OPTIONAL -- Need ON
]]
}
@@ -8522,6 +8883,8 @@ DRB-ToAddMod ::= SEQUENCE {
logicalChannelIdentity-r15 INTEGER (32..38) OPTIONAL -- Need ON
]],
[[ daps-HO-r16 ENUMERATED {true} OPTIONAL -- Cond DAPS
+ ]],
+ [[ rlc-Config-v1700 RLC-Config-v1700 OPTIONAL -- Need ON
]]
}
@@ -8747,6 +9110,10 @@ RLC-Config-v1530 ::= CHOICE {
}
}
+RLC-Config-v1700 ::= SEQUENCE {
+ t-ReorderingExt-r17 CHOICE {release NULL, setup T-ReorderingExt-r17}
+}
+
RLC-Config-r15 ::= SEQUENCE {
mode-r15 CHOICE {
am-r15 SEQUENCE {
@@ -8858,6 +9225,8 @@ T-Reordering ::= ENUMERATED {
ms120, ms130, ms140, ms150, ms160, ms170,
ms180, ms190, ms200, ms1600-v1310}
+T-ReorderingExt-r17 ::= ENUMERATED {ms2200, ms3200}
+
T-StatusProhibit ::= ENUMERATED {
ms0, ms5, ms10, ms15, ms20, ms25, ms30, ms35,
ms40, ms45, ms50, ms55, ms60, ms65, ms70,
@@ -9876,6 +10245,8 @@ AdditionalSpectrumEmission-v10l0 ::= INTEGER (33..288)
AdditionalSpectrumEmissionNR-r15 ::= INTEGER (0..7)
+AdditionalSpectrumEmissionNR-v1760 ::= INTEGER (8..39)
+
ARFCN-ValueCDMA2000 ::= INTEGER (0..2047)
@@ -10058,16 +10429,43 @@ CondReconfigurationToAddModList-r16 ::= SEQUENCE (SIZE (1.. maxCondConfig-r16))
CondReconfigurationAddMod-r16 ::= SEQUENCE {
condReconfigurationId-r16 CondReconfigurationId-r16,
triggerCondition-r16 SEQUENCE (SIZE (1..2)) OF MeasId
- OPTIONAL, -- Cond CondReconfigurationAdd
+ OPTIONAL, -- Need ON
condReconfigurationToApply-r16 OCTET STRING (CONTAINING RRCConnectionReconfiguration)
OPTIONAL,-- Cond CondReconfigurationAdd
- ...
+ ...,
+ [[
+ triggerConditionSN-r17 OCTET STRING OPTIONAL -- Need ON
+ ]]
}
CSG-Identity ::= BIT STRING (SIZE (27))
+EphemerisOrbitalParameters-r17 ::= SEQUENCE {
+ semiMajorAxis-r17 INTEGER (0..8589934591),
+ eccentricity-r17 INTEGER (0..1048575),
+ periapsis-r17 INTEGER (0..268435455),
+ longitude-r17 INTEGER (0..268435455),
+ inclination-r17 INTEGER (-67108864..67108863),
+ anomaly-r17 INTEGER (0..268435455)
+}
+
+
+EphemerisStateVectors-r17 ::= SEQUENCE {
+ positionX-r17 PositionStateVector-r17,
+ positionY-r17 PositionStateVector-r17,
+ positionZ-r17 PositionStateVector-r17,
+ velocityVX-r17 VelocityStateVector-r17,
+ velocityVY-r17 VelocityStateVector-r17,
+ velocityVZ-r17 VelocityStateVector-r17
+}
+
+PositionStateVector-r17 ::= INTEGER (-33554432..33554431)
+
+VelocityStateVector-r17 ::= INTEGER (-131072..131071)
+
+
FreqBandIndicator ::= INTEGER (1..maxFBI)
FreqBandIndicator-v9e0 ::= INTEGER (maxFBI-Plus1..maxFBI2)
@@ -10116,7 +10514,7 @@ MobilityControlInfoSCG-r12 ::= SEQUENCE {
t307-r12 ENUMERATED {
ms50, ms100, ms150, ms200, ms500, ms1000,
ms2000, spare1},
- ue-IdentitySCG-r12 C-RNTI OPTIONAL, -- Cond SCGEst,
+ ue-IdentitySCG-r12 C-RNTI OPTIONAL, -- Cond SCGEst
rach-ConfigDedicated-r12 RACH-ConfigDedicated OPTIONAL, -- Need OP
cipheringAlgorithmSCG-r12 CipheringAlgorithm-r12 OPTIONAL, -- Need ON
...,
@@ -10233,6 +10631,12 @@ NS-PmaxValueNR-r15 ::= SEQUENCE {
additionalSpectrumEmissionNR-r15 AdditionalSpectrumEmissionNR-r15
}
+NS-PmaxListNR-v1760 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValueNR-v1760
+
+NS-PmaxValueNR-v1760 ::= SEQUENCE {
+ additionalSpectrumEmissionNR-v1760 AdditionalSpectrumEmissionNR-v1760 OPTIONAL -- Need OR
+}
+
PhysCellId ::= INTEGER (0..503)
@@ -10384,6 +10788,18 @@ ThresholdListNR-r15 ::= SEQUENCE{
}
+TLE-EphemerisParameters-r17 ::= SEQUENCE {
+ inclination-r17 INTEGER (0..2097151),
+ argumentPerigee-r17 INTEGER (0..4194303),
+ rightAscension-r17 INTEGER (0..4194303),
+ meanAnomaly-r17 INTEGER (0..4194303),
+ eccentricity-r17 INTEGER (0..16777215),
+ meanMotion-r17 INTEGER (0..17179869183),
+ bStarDecimal-r17 INTEGER (-99999..99999),
+ bStarExponent-r17 INTEGER (-9..9),
+ epochStar-r17 INTEGER (-1048575..1048575)
+}
+
TrackingAreaCode ::= BIT STRING (SIZE (16))
TrackingAreaCode-5GC-r15 ::= BIT STRING (SIZE (24))
@@ -10720,7 +11136,10 @@ MeasIdleCarrierNR-r16 ::= SEQUENCE {
ss-RSSI-Measurement-r16 SS-RSSI-Measurement-r15 OPTIONAL -- Need OP
} OPTIONAL, -- Need OP
beamMeasConfigIdle-r16 BeamMeasConfigIdleNR-r16 OPTIONAL, -- Need OR
- ...
+ ...,
+ [[
+ subcarrierSpacingSSB-r17 ENUMERATED {kHz480, spare1} OPTIONAL -- Need OR
+ ]]
}
CellList-r15 ::= SEQUENCE (SIZE (1..maxCellMeasIdle-r15)) OF PhysCellIdRange
@@ -10786,9 +11205,9 @@ MeasObjectEUTRA ::= SEQUENCE {
-- Cell list
cellsToRemoveList CellIndexList OPTIONAL, -- Need ON
cellsToAddModList CellsToAddModList OPTIONAL, -- Need ON
- -- Black list
- blackCellsToRemoveList CellIndexList OPTIONAL, -- Need ON
- blackCellsToAddModList BlackCellsToAddModList OPTIONAL, -- Need ON
+ -- Excluded list
+ excludedCellsToRemoveList CellIndexList OPTIONAL, -- Need ON
+ excludedCellsToAddModList ExcludedCellsToAddModList OPTIONAL, -- Need ON
cellForWhichToReportCGI PhysCellId OPTIONAL, -- Need ON
...,
[[measCycleSCell-r10 MeasCycleSCell-r10 OPTIONAL, -- Need ON
@@ -10807,8 +11226,8 @@ MeasObjectEUTRA ::= SEQUENCE {
measDS-Config-r12 MeasDS-Config-r12 OPTIONAL -- Need ON
]],
[[
- whiteCellsToRemoveList-r13 CellIndexList OPTIONAL, -- Need ON
- whiteCellsToAddModList-r13 WhiteCellsToAddModList-r13 OPTIONAL, -- Need ON
+ allowedCellsToRemoveList-r13 CellIndexList OPTIONAL, -- Need ON
+ allowedCellsToAddModList-r13 AllowedCellsToAddModList-r13 OPTIONAL, -- Need ON
rmtc-Config-r13 RMTC-Config-r13 OPTIONAL, -- Need ON
carrierFreq-r13 ARFCN-ValueEUTRA-v9e0 OPTIONAL -- Need ON
]],
@@ -10844,14 +11263,14 @@ CellsToAddMod ::= SEQUENCE {
cellIndividualOffset Q-OffsetRange
}
-CellsToAddMod-v1610 ::= SEQUENCE {
+CellsToAddMod-v1610 ::= SEQUENCE {
rss-MeasPowerBias-r16 RSS-MeasPowerBias-r16
}
-BlackCellsToAddModList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF BlackCellsToAddMod
+ExcludedCellsToAddModList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF ExcludedCellsToAddMod
-BlackCellsToAddMod ::= SEQUENCE {
+ExcludedCellsToAddMod ::= SEQUENCE {
cellIndex INTEGER (1..maxCellMeas),
physCellIdRange PhysCellIdRange
}
@@ -10876,9 +11295,9 @@ AltTTT-CellsToAddMod-r12 ::= SEQUENCE {
physCellIdRange-r12 PhysCellIdRange
}
-WhiteCellsToAddModList-r13 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF WhiteCellsToAddMod-r13
+AllowedCellsToAddModList-r13 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF AllowedCellsToAddMod-r13
-WhiteCellsToAddMod-r13 ::= SEQUENCE {
+AllowedCellsToAddMod-r13 ::= SEQUENCE {
cellIndex-r13 INTEGER (1..maxCellMeas),
physCellIdRange-r13 PhysCellIdRange
}
@@ -10918,8 +11337,8 @@ MeasObjectNR-r15 ::= SEQUENCE {
threshRS-Index-r15 ThresholdListNR-r15 OPTIONAL, -- Need OR
maxRS-IndexCellQual-r15 MaxRS-IndexCellQualNR-r15 OPTIONAL, -- Need OR
offsetFreq-r15 Q-OffsetRangeInterRAT DEFAULT 0,
- blackCellsToRemoveList-r15 CellIndexList OPTIONAL, -- Need ON
- blackCellsToAddModList-r15 CellsToAddModListNR-r15 OPTIONAL, -- Need ON
+ excludedCellsToRemoveList-r15 CellIndexList OPTIONAL, -- Need ON
+ excludedCellsToAddModList-r15 CellsToAddModListNR-r15 OPTIONAL, -- Need ON
quantityConfigSet-r15 INTEGER (1.. maxQuantSetsNR-r15),
cellsForWhichToReportSFTD-r15 SEQUENCE (SIZE (1..maxCellSFTD)) OF PhysCellIdNR-r15 OPTIONAL, -- Need OR
...,
@@ -10933,6 +11352,10 @@ MeasObjectNR-r15 ::= SEQUENCE {
]],
[[
rmtc-ConfigNR-r16 CHOICE {release NULL, setup RMTC-ConfigNR-r16} OPTIONAL -- Cond SharedSpectrum
+ ]],
+ [[
+ cellsToRemoveList-r16 CellIndexList OPTIONAL, -- Need ON
+ cellsToAddModList-r16 CellsToAddModListNR-r16 OPTIONAL -- Need ON
]]
}
@@ -10949,16 +11372,30 @@ RS-ConfigSSB-NR-r15 ::= SEQUENCE {
ssb-PositionQCL-CommonNR-r16 SSB-PositionQCL-RelationNR-r16 OPTIONAL, -- Cond SharedSpectrum2
ssb-PositionQCL-CellsToAddModListNR-r16 SSB-PositionQCL-CellsToAddModListNR-r16 OPTIONAL, -- Cond SharedSpectrum
ssb-PositionQCL-CellsToRemoveListNR-r16 SEQUENCE (SIZE (1..maxCellMeas)) OF PhysCellIdNR-r15 OPTIONAL -- Cond SharedSpectrum
+ ]],
+ [[
+ subcarrierSpacingSSB-r17 ENUMERATED {kHz480, kHz960} OPTIONAL, -- Need OR
+ ssb-PositionQCL-CommonNR-r17 SSB-PositionQCL-RelationNR-r17 OPTIONAL, -- Cond SharedSpectrum2
+ ssb-PositionQCL-CellsToAddModListNR-r17 SSB-PositionQCL-CellsToAddModListNR-r17 OPTIONAL, -- Cond SharedSpectrum
+ ssb-PositionQCL-CellsToRemoveListNR-r17 SEQUENCE (SIZE (1..maxCellMeas)) OF PhysCellIdNR-r15 OPTIONAL -- Cond SharedSpectrum
]]
}
CellsToAddModListNR-r15 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddModNR-r15
+CellsToAddModListNR-r16 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddModNR-r16
+
CellsToAddModNR-r15 ::= SEQUENCE {
cellIndex-r15 INTEGER (1..maxCellMeas),
physCellId-r15 PhysCellIdNR-r15
}
+CellsToAddModNR-r16 ::= SEQUENCE {
+ cellIndex-r16 INTEGER (1..maxCellMeas),
+ physCellId-r16 PhysCellIdNR-r15,
+ cellIndividualOffset-r16 Q-OffsetRange
+}
+
SSB-PositionQCL-CellsToAddModListNR-r16 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF SSB-PositionQCL-CellsToAddNR-r16
@@ -10973,7 +11410,19 @@ RMTC-ConfigNR-r16 ::= SEQUENCE {
measDurationNR-r16 ENUMERATED {sym1, sym14or12, sym28or24, sym42or36, sym70or60},
rmtc-FrequencyNR-r16 ARFCN-ValueNR-r15,
refSCS-CP-NR-r16 ENUMERATED {kHz15, kHz30, kHz60-NCP, kHz60-ECP},
- ...
+ ...,
+ [[
+ rmtc-BandwidthNR-r17 ENUMERATED {mhz100, mhz400, mhz800, mhz1600, mhz2000} OPTIONAL, -- Need OR
+ measDurationNR-r17 ENUMERATED {sym140, sym560, sym1120} OPTIONAL, -- Need OR
+ refSCS-CP-NR-r17 ENUMERATED {kHz120, kHz480, kHz960} OPTIONAL -- Need OR
+ ]]
+}
+
+SSB-PositionQCL-CellsToAddModListNR-r17 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF SSB-PositionQCL-CellsToAddNR-r17
+
+SSB-PositionQCL-CellsToAddNR-r17 ::= SEQUENCE {
+ physCellIdNR-r17 PhysCellIdNR-r15,
+ ssb-PositionQCL-NR-r17 SSB-PositionQCL-RelationNR-r17
}
@@ -11112,6 +11561,9 @@ MeasResults ::= SEQUENCE {
]],
[[ ul-PDCP-DelayValueResultList-r16 UL-PDCP-DelayValueResultList-r16 OPTIONAL,
measResultForRSSI-NR-r16 MeasResultForRSSI-NR-r16 OPTIONAL
+ ]],
+ [[ uncomBarPreMeasResult-r17 OCTET STRING OPTIONAL,
+ coarseLocationInfo-r17 OCTET STRING OPTIONAL
]]
}
@@ -11429,12 +11881,15 @@ UL-PDCP-DelayValueResult-r16 ::= SEQUENCE {
CGI-InfoNR-r15 ::= SEQUENCE {
plmn-IdentityInfoList-r15 PLMN-IdentityInfoListNR-r15 OPTIONAL,
- frequencyBandList-r15 MultiFrequencyBandListNR-r15 OPTIONAL,
+ frequencyBandList-r15 MultiFrequencyBandListNR-r15 OPTIONAL,
noSIB1-r15 SEQUENCE {
ssb-SubcarrierOffset-r15 INTEGER (0..15),
pdcch-ConfigSIB1-r15 INTEGER (0..255)
- } OPTIONAL,
- ...
+ } OPTIONAL,
+ ...,
+ [[
+ plmn-IdentityInfoList-v1710 PLMN-IdentityInfoListNR-v1710 OPTIONAL
+ ]]
}
CellIdentityNR-r15 ::= BIT STRING (SIZE (36))
@@ -11443,13 +11898,19 @@ PLMN-IdentityListNR-r15 ::= SEQUENCE (SIZE (1.. maxPLMN-NR-r15)) OF PLMN-Ident
PLMN-IdentityInfoListNR-r15 ::= SEQUENCE (SIZE (1..maxPLMN-NR-r15)) OF PLMN-IdentityInfoNR-r15
-PLMN-IdentityInfoNR-r15 ::= SEQUENCE {
+PLMN-IdentityInfoListNR-v1710 ::= SEQUENCE (SIZE (1..maxPLMN-NR-r15)) OF PLMN-IdentityInfoNR-v1710
+
+PLMN-IdentityInfoNR-r15 ::= SEQUENCE {
plmn-IdentityList-r15 PLMN-IdentityListNR-r15,
trackingAreaCode-r15 TrackingAreaCodeNR-r15 OPTIONAL,
- ran-AreaCode-r15 RAN-AreaCode-r15 OPTIONAL,
+ ran-AreaCode-r15 RAN-AreaCode-r15 OPTIONAL,
cellIdentity-r15 CellIdentityNR-r15
}
+PLMN-IdentityInfoNR-v1710 ::= SEQUENCE {
+ gNB-ID-Length-r17 INTEGER (22..32) OPTIONAL
+}
+
TrackingAreaCodeNR-r15 ::= BIT STRING (SIZE (24))
@@ -11681,7 +12142,7 @@ ReportConfigEUTRA ::= SEQUENCE {
reportQuantity-v1310 ENUMERATED {rsrpANDsinr, rsrqANDsinr, all}
}
} OPTIONAL, -- Need ON
- useWhiteCellList-r13 BOOLEAN OPTIONAL, -- Need ON
+ useAllowedCellList-r13 BOOLEAN OPTIONAL, -- Need ON
measRSSI-ReportConfig-r13 MeasRSSI-ReportConfig-r13 OPTIONAL, -- Need ON
includeMultiBandInfo-r13 ENUMERATED {true} OPTIONAL, -- Cond reportCGI
ul-DelayConfig-r13 UL-DelayConfig-r13 OPTIONAL -- Need ON
@@ -11704,6 +12165,9 @@ ReportConfigEUTRA ::= SEQUENCE {
[[ condReconfigurationTriggerEUTRA-r16 CondReconfigurationTriggerEUTRA-r16 OPTIONAL,
-- Need ON
ul-DelayValueConfig-r16 UL-DelayValueConfig-r16 OPTIONAL -- Need ON
+ ]],
+ [[ includeUncomBarPreMeas-r17 BOOLEAN OPTIONAL, -- Need ON
+ coarseLocationReq-r17 ENUMERATED {true} OPTIONAL -- Need OR
]]
}
@@ -11822,9 +12286,22 @@ ReportConfigInterRAT ::= SEQUENCE {
[[
useAutonomousGapsNR-r16 ENUMERATED {setup} OPTIONAL, -- Cond reportCGI-NR
measRSSI-ReportConfigNR-r16 MeasRSSI-ReportConfig-r13 OPTIONAL -- Need ON
+ ]],
+ [[condReconfigurationTriggerNR-r17 CondReconfigurationTriggerNR-r17 OPTIONAL-- Need ON
]]
}
+CondReconfigurationTriggerNR-r17 ::= SEQUENCE {
+ condEventId-r17 CHOICE {
+ condEventB1-NR-r17 SEQUENCE {
+ b1-ThresholdNR-r17 ThresholdNR-r15,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger
+ },
+ ...
+ }
+}
+
ThresholdUTRA ::= CHOICE{
utra-RSCP INTEGER (-5..91),
utra-EcN0 INTEGER (0..49)
@@ -11921,6 +12398,8 @@ SS-RSSI-Measurement-r15 ::= SEQUENCE {
SSB-PositionQCL-RelationNR-r16 ::= ENUMERATED {n1, n2, n4, n8}
+SSB-PositionQCL-RelationNR-r17 ::= ENUMERATED {n32, n64}
+
SSB-ToMeasure-r15 ::= CHOICE {
shortBitmap-r15 BIT STRING (SIZE (4)),
@@ -12069,6 +12548,11 @@ GNSS-ID-r15 ::= SEQUENCE {
}
+GNSS-ValidityDuration-r17 ::= ENUMERATED{
+ s10, s20, s30, s40, s50, s60, min5, min10,
+ min15, min20, min25, min30, min50, min90, min120, infinity}
+
+
I-RNTI-r15 ::= BIT STRING (SIZE(40))
@@ -12151,6 +12635,9 @@ OtherConfig-r9 ::= SEQUENCE {
wlan-NameListConfig-r15 WLAN-NameListConfig-r15 OPTIONAL --Need ON
]],
[[ overheatingAssistanceConfigForSCG-r16 BOOLEAN OPTIONAL -- Cond overheating
+ ]],
+ [[ measUncomBarPre-r17 BOOLEAN OPTIONAL, --Need ON
+ scg-DeactivationPreferenceConfig-r17 CHOICE {release NULL, setup SCG-DeactivationPreferenceConfig-r17} OPTIONAL -- Need ON
]]
}
@@ -12195,6 +12682,12 @@ ReportProximityConfig-r9 ::= SEQUENCE {
CandidateServingFreqListNR-r15 ::= SEQUENCE (SIZE (1..maxFreqIDC-r11)) OF ARFCN-ValueNR-r15
+SCG-DeactivationPreferenceConfig-r17 ::= SEQUENCE {
+ scg-DeactivationPreferenceProhibitTimer-r17
+ ENUMERATED {s0, s1, s2, s4, s8, s10, s20, s30,
+ s60, s120, s180, s240, s300, s600, s900, s1800}
+}
+
RAN-AreaCode-r15 ::= INTEGER (0..255)
@@ -12234,6 +12727,9 @@ S-TMSI ::= SEQUENCE {
}
+TimeOffsetUTC-r17 ::= INTEGER (0..1048575)
+
+
TraceReference-r10 ::= SEQUENCE {
plmn-Identity-r10 PLMN-Identity,
traceId-r10 OCTET STRING (SIZE (3))
@@ -12383,13 +12879,31 @@ UE-EUTRA-Capability-v1470-IEs ::= SEQUENCE {
UE-EUTRA-Capability-v14a0-IEs ::= SEQUENCE {
phyLayerParameters-v14a0 PhyLayerParameters-v14a0,
- -- Following field is only to be used for late REL-14 extensions
nonCriticalExtension UE-EUTRA-Capability-v14b0-IEs OPTIONAL
}
UE-EUTRA-Capability-v14b0-IEs ::= SEQUENCE {
rf-Parameters-v14b0 RF-Parameters-v14b0 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UE-EUTRA-Capability-v14x0-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v14x0-IEs ::= SEQUENCE {
+ -- Following field is only to be used for late REL-14 extensions
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UE-EUTRA-Capability-v15x0-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v15x0-IEs ::= SEQUENCE {
+ -- Following field is only to be used for late REL-15 extensions
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UE-EUTRA-Capability-v16c0-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v16c0-IEs ::= SEQUENCE {
+ measParameters-v16c0 MeasParameters-v16c0,
+ -- Following field is only to be used for late REL-16 extensions
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- Regular non critical extensions
@@ -12685,7 +13199,7 @@ UE-EUTRA-Capability-v1610-IEs ::= SEQUENCE {
pdcp-Parameters-v1610 PDCP-Parameters-v1610 OPTIONAL,
mac-Parameters-v1610 MAC-Parameters-v1610 OPTIONAL,
phyLayerParameters-v1610 PhyLayerParameters-v1610 OPTIONAL,
- measParameters-v1610 MeasParameters-v1610 OPTIONAL,
+ measParameters-v1610 MeasParameters-v1610 OPTIONAL,
pur-Parameters-r16 PUR-Parameters-r16 OPTIONAL,
eutra-5GC-Parameters-v1610 EUTRA-5GC-Parameters-v1610 OPTIONAL,
otherParameters-v1610 Other-Parameters-v1610 OPTIONAL,
@@ -12719,7 +13233,45 @@ UE-EUTRA-Capability-v1650-IEs ::= SEQUENCE {
UE-EUTRA-Capability-v1660-IEs ::= SEQUENCE {
irat-ParametersNR-v1660 IRAT-ParametersNR-v1660,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UE-EUTRA-Capability-v1690-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1690-IEs ::= SEQUENCE {
+ other-Parameters-v1690 Other-Parameters-v1690,
+ nonCriticalExtension UE-EUTRA-Capability-v1700-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1700-IEs ::= SEQUENCE {
+ measParameters-v1700 MeasParameters-v1700 OPTIONAL,
+ ue-BasedNetwPerfMeasParameters-v1700 UE-BasedNetwPerfMeasParameters-v1700 OPTIONAL,
+ phyLayerParameters-v1700 PhyLayerParameters-v1700,
+ ntn-Parameters-r17 NTN-Parameters-r17 OPTIONAL,
+ irat-ParametersNR-v1700 IRAT-ParametersNR-v1700 OPTIONAL,
+ mbms-Parameters-v1700 MBMS-Parameters-v1700,
+ nonCriticalExtension UE-EUTRA-Capability-v1710-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1710-IEs ::= SEQUENCE {
+ irat-ParametersNR-v1710 IRAT-ParametersNR-v1710,
+ neighCellSI-AcquisitionParameters-v1710 NeighCellSI-AcquisitionParameters-v1710 OPTIONAL,
+ sl-Parameters-v1710 SL-Parameters-v1710 OPTIONAL,
+ sidelinkRequested-r17 ENUMERATED {true} OPTIONAL,
+ nonCriticalExtension UE-EUTRA-Capability-v1720-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1720-IEs ::= SEQUENCE {
+ ntn-Parameters-v1720 NTN-Parameters-v1720,
+ nonCriticalExtension UE-EUTRA-Capability-v1730-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1730-IEs ::= SEQUENCE {
+ phyLayerParameters-v1730 PhyLayerParameters-v1730,
+ nonCriticalExtension UE-EUTRA-Capability-v1770-IEs OPTIONAL
+}
+
+UE-EUTRA-Capability-v1770-IEs ::= SEQUENCE {
+ measParameters-v1770 MeasParameters-v1770,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
UE-EUTRA-CapabilityAddXDD-Mode-r9 ::= SEQUENCE {
@@ -12827,7 +13379,7 @@ UE-EUTRA-CapabilityAddXDD-Mode-v1630 ::= SEQUENCE {
AccessStratumRelease ::= ENUMERATED {
rel8, rel9, rel10, rel11, rel12, rel13,
- rel14, rel15, ..., rel16}
+ rel14, rel15, ..., rel16, rel17}
FeatureSetsEUTRA-r15 ::= SEQUENCE {
featureSetsDL-r15 SEQUENCE (SIZE (1..maxFeatureSets-r15)) OF FeatureSetDL-r15 OPTIONAL,
@@ -12911,6 +13463,18 @@ MAC-Parameters-v1630 ::= SEQUENCE {
directSCG-SCellActivationNEDC-r16 ENUMERATED {supported} OPTIONAL
}
+NTN-Parameters-r17 ::= SEQUENCE {
+ ntn-Connectivity-EPC-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-TA-Report-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-PUR-TimerDelay-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-OffsetTimingEnh-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-ScenarioSupport-r17 ENUMERATED {ngso,gso} OPTIONAL
+}
+
+NTN-Parameters-v1720 ::= SEQUENCE {
+ ntn-SegmentedPrecompensationGaps-r17 ENUMERATED {sym1,sl1,sf1} OPTIONAL
+}
+
ProcessingTimelineSet-r15 ::= ENUMERATED {set1, set2}
RLC-Parameters-r12 ::= SEQUENCE {
@@ -12968,7 +13532,7 @@ PDCP-Parameters-v1610 ::= SEQUENCE {
pdcp-VersionChangeWithoutHO-r16 ENUMERATED {supported} OPTIONAL,
ehc-r16 ENUMERATED {supported} OPTIONAL,
continueEHC-Context-r16 ENUMERATED {supported} OPTIONAL,
- maxNumberEHC-Contexts-r16 ENUMERATED {cs2, cs4, cs8, cs16, cs32, cs64, cs128, cs256,
+ maxNumberEHC-Contexts-r16 ENUMERATED {cs2, cs4, cs8, cs16, cs32, cs64, cs128, cs256,
cs512, cs1024, cs2048, cs4096, cs8192, cs16384,
cs32768, cs65536} OPTIONAL,
jointEHC-ROHC-Config-r16 ENUMERATED {supported} OPTIONAL
@@ -13213,7 +13777,7 @@ PhyLayerParameters-v1610 ::= SEQUENCE {
mpdcch-InLteControlRegionCE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
pdsch-InLteControlRegionCE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
pdsch-InLteControlRegionCE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
- multiTB-Parameters-r16 CE-MultiTB-Parameters-r16 OPTIONAL,
+ multiTB-Parameters-r16 CE-MultiTB-Parameters-r16 OPTIONAL,
resourceResvParameters-r16 CE-ResourceResvParameters-r16 OPTIONAL
} OPTIONAL,
widebandPRG-Slot-r16 ENUMERATED {supported} OPTIONAL,
@@ -13228,6 +13792,18 @@ PhyLayerParameters-v1610 ::= SEQUENCE {
virtualCellID-AddSRS-r16 ENUMERATED {supported} OPTIONAL
}
+PhyLayerParameters-v1700 ::= SEQUENCE {
+ ce-Capabilities-v1700 SEQUENCE {
+ ce-PDSCH-14HARQProcesses-r17 ENUMERATED {supported} OPTIONAL,
+ ce-PDSCH-14HARQProcesses-Alt2-r17 ENUMERATED {supported} OPTIONAL,
+ ce-PDSCH-MaxTBS-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL
+}
+
+PhyLayerParameters-v1730 ::= SEQUENCE {
+ csi-SubframeSet2ForDormantSCell-r17 ENUMERATED {supported} OPTIONAL
+}
+
MIMO-UE-Parameters-r13 ::= SEQUENCE {
parametersTM9-r13 MIMO-UE-ParametersPerTM-r13 OPTIONAL,
parametersTM10-r13 MIMO-UE-ParametersPerTM-r13 OPTIONAL,
@@ -13745,8 +14321,8 @@ BandCombinationParameters-v1530 ::= SEQUENCE {
-- it shall be defined in the IE CA-ParametersEUTRA in TS 38.331 [82].
BandCombinationParameters-v1610 ::= SEQUENCE {
- measGapInfoNR MeasGapInfoNR OPTIONAL,
- bandParameterList-v1610 SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF BandParameters-v1610 OPTIONAL,
+ measGapInfoNR-r16 MeasGapInfoNR-r16 OPTIONAL,
+ bandParameterList-v1610 SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF BandParameters-v1610 OPTIONAL,
interFreqDAPS-r16 SEQUENCE {
interFreqAsyncDAPS-r16 ENUMERATED {supported} OPTIONAL,
interFreqMultiUL-TransmissionDAPS-r16 ENUMERATED {supported} OPTIONAL
@@ -13842,7 +14418,7 @@ BandParameters-v1530 ::= SEQUENCE {
stti-SPT-BandParameters-r15 STTI-SPT-BandParameters-r15 OPTIONAL
}
-BandParameters-v1610 ::= SEQUENCE {
+BandParameters-v1610 ::= SEQUENCE {
intraFreqDAPS-r16 SEQUENCE {
intraFreqAsyncDAPS-r16 ENUMERATED {supported} OPTIONAL,
dummy ENUMERATED {supported} OPTIONAL,
@@ -14042,7 +14618,7 @@ MeasParameters-v1250 ::= SEQUENCE {
MeasParameters-v1310 ::= SEQUENCE {
rs-SINR-Meas-r13 ENUMERATED {supported} OPTIONAL,
- whiteCellList-r13 ENUMERATED {supported} OPTIONAL,
+ allowedCellList-r13 ENUMERATED {supported} OPTIONAL,
extendedMaxObjectId-r13 ENUMERATED {supported} OPTIONAL,
ul-PDCP-Delay-r13 ENUMERATED {supported} OPTIONAL,
extendedFreqPriorities-r13 ENUMERATED {supported} OPTIONAL,
@@ -14071,8 +14647,8 @@ MeasParameters-v1530 ::= SEQUENCE {
multipleCellsMeasExtension-r15 ENUMERATED {supported} OPTIONAL
}
-MeasParameters-v1610 ::= SEQUENCE {
- bandInfoNR-v1610 SEQUENCE (SIZE (1..maxBands)) OF MeasGapInfoNR OPTIONAL,
+MeasParameters-v1610 ::= SEQUENCE {
+ bandInfoNR-v1610 SEQUENCE (SIZE (1..maxBands)) OF MeasGapInfoNR-r16 OPTIONAL,
altFreqPriority-r16 ENUMERATED {supported} OPTIONAL,
ce-DL-ChannelQualityReporting-r16 ENUMERATED {supported} OPTIONAL,
ce-MeasRSS-Dedicated-r16 ENUMERATED {supported} OPTIONAL,
@@ -14084,15 +14660,32 @@ MeasParameters-v1610 ::= SEQUENCE {
measGapPatterns-NRonly-ENDC-r16 ENUMERATED {supported} OPTIONAL
}
-MeasParameters-v1630 ::= SEQUENCE {
+MeasParameters-v1630 ::= SEQUENCE {
nr-IdleInactiveBeamMeasFR1-r16 ENUMERATED {supported} OPTIONAL,
nr-IdleInactiveBeamMeasFR2-r16 ENUMERATED {supported} OPTIONAL,
ce-MeasRSS-DedicatedSameRBs-r16 ENUMERATED {supported} OPTIONAL
}
-MeasGapInfoNR ::= SEQUENCE {
- interRAT-BandListNR-EN-DC InterRAT-BandListNR OPTIONAL,
- interRAT-BandListNR-SA InterRAT-BandListNR OPTIONAL
+MeasParameters-v16c0 ::= SEQUENCE {
+ nr-CellIndividualOffset-r16 ENUMERATED {supported} OPTIONAL
+}
+
+MeasParameters-v1700 ::= SEQUENCE {
+ sharedSpectrumMeasNR-EN-DC-r17 SEQUENCE (SIZE (1..maxBandsNR-r15)) OF SharedSpectrumMeasNR-r17 OPTIONAL,
+ sharedSpectrumMeasNR-SA-r17 SEQUENCE (SIZE (1..maxBandsNR-r15)) OF SharedSpectrumMeasNR-r17 OPTIONAL
+}
+
+MeasParameters-v1770 ::= SEQUENCE {
+ gaplessMeas-FR2-maxCC-r17 INTEGER (1..32) OPTIONAL
+}
+
+SharedSpectrumMeasNR-r17 ::= SEQUENCE {
+ nr-RSSI-ChannelOccupancyReporting-r17 BOOLEAN
+}
+
+MeasGapInfoNR-r16 ::= SEQUENCE {
+ interRAT-BandListNR-EN-DC-r16 InterRAT-BandListNR-r16 OPTIONAL,
+ interRAT-BandListNR-SA-r16 InterRAT-BandListNR-r16 OPTIONAL
}
BandListEUTRA ::= SEQUENCE (SIZE (1..maxBands)) OF BandInfoEUTRA
@@ -14112,14 +14705,14 @@ InterFreqBandInfo ::= SEQUENCE {
InterRAT-BandList ::= SEQUENCE (SIZE (1..maxBands)) OF InterRAT-BandInfo
-InterRAT-BandListNR ::= SEQUENCE (SIZE (1..maxBandsNR-r15)) OF InterRAT-BandInfoNR
+InterRAT-BandListNR-r16 ::= SEQUENCE (SIZE (1..maxBandsNR-r15)) OF InterRAT-BandInfoNR-r16
InterRAT-BandInfo ::= SEQUENCE {
interRAT-NeedForGaps BOOLEAN
}
-InterRAT-BandInfoNR ::= SEQUENCE {
- interRAT-NeedForGapsNR BOOLEAN
+InterRAT-BandInfoNR-r16 ::= SEQUENCE {
+ interRAT-NeedForGapsNR-r16 BOOLEAN
}
IRAT-ParametersNR-r15 ::= SEQUENCE {
@@ -14164,6 +14757,17 @@ IRAT-ParametersNR-v1660 ::= SEQUENCE {
extendedBand-n77-r16 ENUMERATED {supported} OPTIONAL
}
+IRAT-ParametersNR-v1700 ::= SEQUENCE {
+ eutra-5GC-HO-ToNR-TDD-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ eutra-EPC-HO-ToNR-TDD-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ ce-EUTRA-5GC-HO-ToNR-TDD-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ ims-VoiceOverNR-FR2-2-r17 ENUMERATED {supported} OPTIONAL
+}
+
+IRAT-ParametersNR-v1710 ::= SEQUENCE {
+ extendedBand-n77-2-r17 ENUMERATED {supported} OPTIONAL
+}
+
EUTRA-5GC-Parameters-r15 ::= SEQUENCE {
eutra-5GC-r15 ENUMERATED {supported} OPTIONAL,
eutra-EPC-HO-EUTRA-5GC-r15 ENUMERATED {supported} OPTIONAL,
@@ -14367,6 +14971,11 @@ NeighCellSI-AcquisitionParameters-v1610 ::= SEQUENCE {
nr-AutonomousGaps-FR2-r16 ENUMERATED {supported} OPTIONAL
}
+NeighCellSI-AcquisitionParameters-v1710 ::= SEQUENCE {
+ gNB-ID-Length-Reporting-NR-EN-DC-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-ID-Length-Reporting-NR-NoEN-DC-r17 ENUMERATED {supported} OPTIONAL
+}
+
SON-Parameters-r9 ::= SEQUENCE {
rach-Report-r9 ENUMERATED {supported} OPTIONAL
}
@@ -14412,6 +15021,13 @@ UE-BasedNetwPerfMeasParameters-v1610 ::= SEQUENCE {
ul-PDCP-AvgDelay-r16 ENUMERATED {supported} OPTIONAL
}
+UE-BasedNetwPerfMeasParameters-v1700 ::= SEQUENCE {
+ loggedMeasIdleEventL1-r17 ENUMERATED {supported} OPTIONAL,
+ loggedMeasIdleEventOutOfCoverage-r17 ENUMERATED {supported} OPTIONAL,
+ loggedMeasUncomBarPre-r17 ENUMERATED {supported} OPTIONAL,
+ immMeasUncomBarPre-r17 ENUMERATED {supported} OPTIONAL
+}
+
OTDOA-PositioningCapabilities-r10 ::= SEQUENCE {
otdoa-UE-Assisted-r10 ENUMERATED {supported},
interFreqRSTD-Measurement-r10 ENUMERATED {supported} OPTIONAL
@@ -14467,6 +15083,10 @@ Other-Parameters-v1650 ::= SEQUENCE {
mpsPriorityIndication-r16 ENUMERATED {supported} OPTIONAL
}
+Other-Parameters-v1690 ::= SEQUENCE {
+ ul-RRC-Segmentation-r16 ENUMERATED {supported} OPTIONAL
+}
+
MBMS-Parameters-r11 ::= SEQUENCE {
mbms-SCell-r11 ENUMERATED {supported} OPTIONAL,
mbms-NonServingCell-r11 ENUMERATED {supported} OPTIONAL
@@ -14498,6 +15118,10 @@ MBMS-Parameters-v1610 ::= SEQUENCE {
mbms-SupportedBandInfoList-r16 SEQUENCE (SIZE (1..maxBands)) OF MBMS-SupportedBandInfo-r16
}
+MBMS-Parameters-v1700 ::= SEQUENCE {
+ mbms-SupportedBandInfoList-v1700 SEQUENCE (SIZE (1..maxBands)) OF MBMS-SupportedBandInfo-v1700 OPTIONAL
+}
+
MBMS-SupportedBandInfo-r16 ::= SEQUENCE {
subcarrierSpacingMBMS-khz2dot5-r16 ENUMERATED {supported} OPTIONAL,
subcarrierSpacingMBMS-khz0dot37-r16 SEQUENCE {
@@ -14506,6 +15130,12 @@ MBMS-SupportedBandInfo-r16 ::= SEQUENCE {
} OPTIONAL
}
+MBMS-SupportedBandInfo-v1700 ::= SEQUENCE {
+ pmch-Bandwidth-n40-r17 ENUMERATED {supported} OPTIONAL,
+ pmch-Bandwidth-n35-r17 ENUMERATED {supported} OPTIONAL,
+ pmch-Bandwidth-n30-r17 ENUMERATED {supported} OPTIONAL
+}
+
FeMBMS-Unicast-Parameters-r14 ::= SEQUENCE {
unicast-fembmsMixedSCell-r14 ENUMERATED {supported} OPTIONAL,
emptyUnicastRegion-r14 ENUMERATED {supported} OPTIONAL
@@ -14552,25 +15182,25 @@ CE-MultiTB-Parameters-r16 ::= SEQUENCE {
pdsch-MultiTB-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
pusch-MultiTB-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
pusch-MultiTB-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
- ce-MultiTB-64QAM-r16 ENUMERATED {supported} OPTIONAL,
- ce-MultiTB-EarlyTermination-r16 ENUMERATED {supported} OPTIONAL,
+ ce-MultiTB-64QAM-r16 ENUMERATED {supported} OPTIONAL,
+ ce-MultiTB-EarlyTermination-r16 ENUMERATED {supported} OPTIONAL,
ce-MultiTB-FrequencyHopping-r16 ENUMERATED {supported} OPTIONAL,
ce-MultiTB-HARQ-AckBundling-r16 ENUMERATED {supported} OPTIONAL,
ce-MultiTB-Interleaving-r16 ENUMERATED {supported} OPTIONAL,
- ce-MultiTB-SubPRB-r16 ENUMERATED {supported} OPTIONAL
+ ce-MultiTB-SubPRB-r16 ENUMERATED {supported} OPTIONAL
}
CE-ResourceResvParameters-r16 ::= SEQUENCE {
- subframeResourceResvDL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
- subframeResourceResvDL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
- subframeResourceResvUL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
- subframeResourceResvUL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
- slotSymbolResourceResvDL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
- slotSymbolResourceResvDL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
- slotSymbolResourceResvUL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
- slotSymbolResourceResvUL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
- subcarrierPuncturingCE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
- subcarrierPuncturingCE-ModeB-r16 ENUMERATED {supported} OPTIONAL
+ subframeResourceResvDL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
+ subframeResourceResvDL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
+ subframeResourceResvUL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
+ subframeResourceResvUL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
+ slotSymbolResourceResvDL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
+ slotSymbolResourceResvDL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
+ slotSymbolResourceResvUL-CE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
+ slotSymbolResourceResvUL-CE-ModeB-r16 ENUMERATED {supported} OPTIONAL,
+ subcarrierPuncturingCE-ModeA-r16 ENUMERATED {supported} OPTIONAL,
+ subcarrierPuncturingCE-ModeB-r16 ENUMERATED {supported} OPTIONAL
}
LAA-Parameters-r13 ::= SEQUENCE {
@@ -14701,6 +15331,10 @@ SL-Parameters-v1630 ::= SEQUENCE {
v2x-SupportedBandCombinationListEUTRA-NR-r16 V2X-SupportedBandCombinationEUTRA-NR-v1630 OPTIONAL
}
+SL-Parameters-v1710 ::= SEQUENCE {
+ v2x-SupportedBandCombinationListEUTRA-NR-v1710 V2X-SupportedBandCombinationEUTRA-NR-v1710 OPTIONAL
+}
+
UE-CategorySL-r15 ::= SEQUENCE {
ue-CategorySL-C-TX-r15 INTEGER(1..5),
ue-CategorySL-C-RX-r15 INTEGER(1..4)
@@ -14718,11 +15352,15 @@ V2X-SupportedBandCombinationEUTRA-NR-r16 ::= SEQUENCE (SIZE (1..maxBandCombSidel
V2X-SupportedBandCombinationEUTRA-NR-v1630 ::= SEQUENCE (SIZE (1..maxBandCombSidelinkNR-r16)) OF V2X-BandCombinationParametersEUTRA-NR-v1630
+V2X-SupportedBandCombinationEUTRA-NR-v1710 ::= SEQUENCE (SIZE (1..maxBandCombSidelinkNR-r16)) OF V2X-BandCombinationParametersEUTRA-NR-v1710
+
V2X-BandCombinationParametersEUTRA-NR-v1630 ::= SEQUENCE {
bandListSidelinkEUTRA-NR-r16 SEQUENCE (SIZE (1.. maxSimultaneousBands-r10)) OF V2X-BandParametersEUTRA-NR-r16,
bandListSidelinkEUTRA-NR-v1630 SEQUENCE (SIZE (1.. maxSimultaneousBands-r10)) OF V2X-BandParametersEUTRA-NR-v1630
}
+V2X-BandCombinationParametersEUTRA-NR-v1710 ::= SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF V2X-BandParametersEUTRA-NR-v1710
+
V2X-BandParametersEUTRA-NR-r16 ::= CHOICE {
eutra SEQUENCE {
v2x-BandParameters1-r16 V2X-BandParameters-r14 OPTIONAL,
@@ -14736,11 +15374,15 @@ V2X-BandParametersEUTRA-NR-r16 ::= CHOICE {
V2X-BandParametersEUTRA-NR-v1630 ::= CHOICE {
eutra NULL,
nr SEQUENCE {
- tx-Sidelink-r16 ENUMERATED {supported} OPTIONAL,
+ tx-Sidelink-r16 ENUMERATED {supported} OPTIONAL,
rx-Sidelink-r16 ENUMERATED {supported} OPTIONAL
}
}
+V2X-BandParametersEUTRA-NR-v1710 ::= SEQUENCE {
+ v2x-BandParametersEUTRA-NR-v1710 OCTET STRING OPTIONAL
+}
+
SupportedBandInfoList-r12 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandInfo-r12
SupportedBandInfo-r12 ::= SEQUENCE {
@@ -14811,6 +15453,9 @@ UE-RadioPagingInfo-r12 ::= SEQUENCE {
groupWakeUpSignalTDD-r16 ENUMERATED {true} OPTIONAL,
groupWakeUpSignalAlternation-r16 ENUMERATED {true} OPTIONAL,
groupWakeUpSignalAlternationTDD-r16 ENUMERATED {true} OPTIONAL
+ ]],
+ [[
+ inactiveStatePO-Determination-r17 ENUMERATED {true} OPTIONAL
]]
}
@@ -14974,11 +15619,19 @@ MBSFN-AreaInfo-r16 ::= SEQUENCE {
signallingMCS-r16 ENUMERATED {n2, n7, n13, n19}
},
subcarrierSpacingMBMS-r16 ENUMERATED {kHz7dot5, kHz2dot5, kHz1dot25, kHz0dot37,
- spare4, spare3, spare2, spare1},
+ kHz15-v1710, spare3, spare2, spare1},
timeSeparation-r16 ENUMERATED {sl2, sl4} OPTIONAL, -- Need OR
...
}
+MBSFN-AreaInfoList-r17 ::= SEQUENCE (SIZE(1..maxMBSFN-Area)) OF MBSFN-AreaInfo-r17
+
+MBSFN-AreaInfo-r17 ::= SEQUENCE {
+ mbsfn-AreaInfo-r17 MBSFN-AreaInfo-r16,
+ pmch-Bandwidth-r17 ENUMERATED {n40, n35, n30, spare1},
+ ...
+}
+
MBSFN-SubframeConfig ::= SEQUENCE {
radioframeAllocationPeriod ENUMERATED {n1, n2, n4, n8, n16, n32},
@@ -16032,7 +16685,7 @@ maxCBR-Level-1-r14 INTEGER ::= 15
maxCBR-Report-r14 INTEGER ::= 72 -- Maximum number of CBR results in a report
maxCDMA-BandClass INTEGER ::= 32 -- Maximum value of the CDMA band classes
maxCE-Level-r13 INTEGER ::= 4 -- Maximum number of CE levels
-maxCellBlack INTEGER ::= 16 -- Maximum number of blacklisted physical cell identity
+maxExcludedCell INTEGER ::= 16 -- Maximum number of exclude-listed physical cell identity
-- ranges listed in SIB type 4 and 5
maxCellHistory-r12 INTEGER ::= 16 -- Maximum number of visited EUTRA cells reported
maxCellInfoGERAN-r9 INTEGER ::= 32 -- Maximum number of GERAN cells for which system in-
@@ -16042,6 +16695,7 @@ maxCellInfoUTRA-r9 INTEGER ::= 16 -- Maximum number of UTRA cells for which sy
-- assistance
maxCellMeasIdle-r15 INTEGER ::= 8 -- Maximum number of neighbouring inter-frequency
-- cells per carrier measured in RRC_IDLE and RRC_INACTIVE
+maxCellNR-r17 INTEGER ::= 8 -- Maximum number of NR cells
maxCombIDC-r11 INTEGER ::= 128 -- Maximum number of reported UL CA or
-- MR-DC combinations
maxCSI-IM-r11 INTEGER ::= 3 -- Maximum number of CSI-IM configurations
@@ -16084,7 +16738,7 @@ maxCellMeas INTEGER ::= 32 -- Maximum number of entries in each of the
-- cell lists in a measurement object
maxCellReport INTEGER ::= 8 -- Maximum number of reported cells/CSI-RS resources
maxCellSFTD INTEGER ::= 3 -- Maximum number of cells for SFTD reporting
-maxCellWhiteNR-r16 INTEGER ::= 16 -- Maximum number of whitelisted NR cells in SIB24
+maxCellAllowedNR-r16 INTEGER ::= 16 -- Maximum number of allowlisted NR cells in SIB24
maxCondConfig-r16 INTEGER ::= 8 -- Maximum number of conditional configurations
maxConfigSPS-r14 INTEGER ::= 8 -- Maximum number of simultaneous SPS configurations
maxConfigSPS-r15 INTEGER ::= 6 -- Maximum number of simultaneous SPS configurations
@@ -16198,6 +16852,7 @@ maxRSTD-Freq-r10 INTEGER ::= 3 -- Maximum number of frequency layers for RSTD
-- measurement
maxSAI-MBMS-r11 INTEGER ::= 64 -- Maximum number of MBMS service area identities
-- broadcast per carrier frequency
+maxSat-r17 INTEGER ::= 4 -- Maximum number of satellites
maxSCell-r10 INTEGER ::= 4 -- Maximum number of SCells
maxSCell-r13 INTEGER ::= 31 -- Highest value of extended number range of SCells
maxSCellGroups-r15 INTEGER ::= 4 -- Maximum number of SCell common parameter groups
@@ -16279,6 +16934,8 @@ maxSimultaneousBands-r10 INTEGER ::= 64 -- Maximum number of simultaneously aggr
maxSubframePatternIDC-r11 INTEGER ::= 8 -- Maximum number of subframe reservation patterns
-- that the UE can simultaneously recommend to the
-- E-UTRAN for use.
+maxTAC-r17 INTEGER ::= 12 -- Maximum number of Tracking Area Codes
+ -- broadcast in a cell
maxTrafficPattern-r14 INTEGER ::= 8 -- Maximum number of periodical traffic patterns
-- that the UE can simultaneously report to the
-- E-UTRAN.
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn
index edfa0a14d4..f52e85976a 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-Sidelink-Preconf.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
EUTRA-Sidelink-Preconf DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn b/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn
index c2dac9d9a5..58ea8e9ccc 100644
--- a/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn
+++ b/epan/dissectors/asn1/lte-rrc/EUTRA-UE-Variables.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
EUTRA-UE-Variables DEFINITIONS AUTOMATIC TAGS ::=
@@ -18,6 +18,7 @@ IMPORTS
EUTRA-CarrierList-r15,
SpeedStateScaleFactors,
C-RNTI,
+ LoggedEventTriggerConfig-r17,
LoggingDuration-r10,
LoggingInterval-r10,
LogMeasInfo-r10,
@@ -73,7 +74,7 @@ FROM EUTRA-RRC-Definitions;
VarConditionalReconfiguration ::= SEQUENCE {
- -- Conditional reconfigurations list
+ -- Conditional reconfigurations list
condReconfigurationList-r16 CondReconfigurationToAddModList-r16
OPTIONAL
}
@@ -116,6 +117,18 @@ VarLogMeasConfig-r15 ::= SEQUENCE {
wlan-NameList-r15 WLAN-NameList-r15 OPTIONAL
}
+VarLogMeasConfig-r17 ::= SEQUENCE {
+ areaConfiguration-r10 AreaConfiguration-r10 OPTIONAL,
+ areaConfiguration-v1130 AreaConfiguration-v1130 OPTIONAL,
+ loggingDuration-r10 LoggingDuration-r10,
+ loggingInterval-r10 LoggingInterval-r10,
+ targetMBSFN-AreaList-r12 TargetMBSFN-AreaList-r12 OPTIONAL,
+ bt-NameList-r15 BT-NameList-r15 OPTIONAL,
+ wlan-NameList-r15 WLAN-NameList-r15 OPTIONAL,
+ loggedEventTriggerConfig-r17 LoggedEventTriggerConfig-r17 OPTIONAL,
+ measUncomBarPre-r17 ENUMERATED {true} OPTIONAL
+}
+
VarLogMeasReport-r10 ::= SEQUENCE {
traceReference-r10 TraceReference-r10,
diff --git a/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn b/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn
index 7140aa2edb..ba656bd192 100644
--- a/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/NBIOT-InterNodeDefinitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
NBIOT-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -66,7 +66,12 @@ UEPagingCoverageInformation-NB ::= SEQUENCE {
UEPagingCoverageInformation-NB-IEs ::= SEQUENCE {
-- the possible value(s) can differ from those sent on Uu
npdcch-NumRepetitionPaging-r13 INTEGER (1..2048) OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UEPagingCoverageInformation-NB-v1700-IEs OPTIONAL
+}
+
+UEPagingCoverageInformation-NB-v1700-IEs ::= SEQUENCE {
+ cbp-Index-r17 INTEGER (1..2) OPTIONAL, -- Cond CBP
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
diff --git a/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn b/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn
index eeab394798..a1c3676400 100644
--- a/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/NBIOT-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
NBIOT-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -17,14 +17,15 @@ IMPORTS
C-RNTI,
DedicatedInfoNAS,
DRB-Identity,
+ GNSS-ValidityDuration-r17,
InitialUE-Identity,
- IntraFreqBlackCellList,
+ IntraFreqExcludedCellList,
IntraFreqNeighCellList,
I-RNTI-r15,
LocationInfo-r10,
maxAccessCat-1-r15,
maxBands,
- maxCellBlack,
+ maxExcludedCell,
maxCellInter,
maxCellIntra,
maxFBI2,
@@ -58,15 +59,19 @@ IMPORTS
ResumeIdentity-r13,
RRC-TransactionIdentifier,
RSRP-Range,
- SetupRelease,
- ShortMAC-I,
S-NSSAI-r15,
S-TMSI,
+ SatelliteInfoList-r17,
+ ServingSatelliteInfo-r17,
+ SetupRelease,
+ ShortMAC-I,
SystemInformationBlockType16-r11,
SystemInfoValueTagSI-r13,
T-Reordering,
+ T-ReorderingExt-r17,
TimeAlignmentTimer,
TimeSinceFailure-r11,
+ TimeOffsetUTC-r17,
TMGI-r9,
TrackingAreaCode,
TrackingAreaCode-5GC-r15,
@@ -238,7 +243,11 @@ MasterInformationBlock-NB ::= SEQUENCE {
},
additionalTransmissionSIB1-r15 BOOLEAN,
ab-Enabled-5GC-r16 BOOLEAN,
- spare BIT STRING (SIZE (9))
+ partEARFCN-r17 CHOICE {
+ spare BIT STRING (SIZE (2)),
+ earfcn-LSB BIT STRING (SIZE (2))
+ },
+ spare BIT STRING (SIZE (6))
}
Guardband-NB-r13 ::= SEQUENCE {
@@ -332,7 +341,7 @@ Paging-NB ::= SEQUENCE {
Paging-NB-v1610-IEs ::= SEQUENCE {
pagingRecordList-v1610 PagingRecordList-NB-v1610 OPTIONAL, -- Need ON
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
PagingRecordList-NB-r13 ::= SEQUENCE (SIZE (1..maxPageRec)) OF PagingRecord-NB-r13
@@ -458,6 +467,11 @@ RRCConnectionReestablishmentComplete-NB-v1470-IEs ::= SEQUENCE {
RRCConnectionReestablishmentComplete-NB-v1610-IEs ::= SEQUENCE {
rlf-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
anr-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
+ nonCriticalExtension RRCConnectionReestablishmentComplete-NB-v1710-IEs OPTIONAL
+}
+
+RRCConnectionReestablishmentComplete-NB-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -573,7 +587,7 @@ RRCConnectionRelease-NB-v1550-IEs ::= SEQUENCE {
}
RRCConnectionRelease-NB-v15b0-IEs ::= SEQUENCE {
- noLastCellUpdate-r15 ENUMERATED {true} OPTIONAL, -- Need OP
+ noLastCellUpdate-r15 ENUMERATED {true} OPTIONAL, -- Need OP
nonCriticalExtension RRCConnectionRelease-NB-v1610-IEs OPTIONAL
}
@@ -582,7 +596,12 @@ RRCConnectionRelease-NB-v1610-IEs ::= SEQUENCE {
anr-MeasConfig-r16 ANR-MeasConfig-NB-r16 OPTIONAL, -- Need OP
pur-Config-r16 CHOICE {release NULL, setup PUR-Config-NB-r16}
OPTIONAL, -- Need ON
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionRelease-NB-v1700-IEs OPTIONAL
+}
+
+RRCConnectionRelease-NB-v1700-IEs ::= SEQUENCE {
+ cbp-Index-r17 INTEGER (1..2) OPTIONAL, -- Need OR
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
ReleaseCause-NB-r13 ::= ENUMERATED {loadBalancingTAUrequired, other,
@@ -684,7 +703,11 @@ RRCConnectionResumeComplete-NB-v1470-IEs ::= SEQUENCE {
RRCConnectionResumeComplete-NB-v1610-IEs ::= SEQUENCE {
rlf-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
anr-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCConnectionResumeComplete-NB-v1710-IEs OPTIONAL
+}
+
+RRCConnectionResumeComplete-NB-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -781,8 +804,12 @@ RRCConnectionSetupComplete-NB-v1610-IEs ::= SEQUENCE {
up-CIoT-5GS-Optimisation-r16 ENUMERATED {true} OPTIONAL,
rlf-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
anr-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
- pur-ConfigID-r16 PUR-ConfigID-NB-r16 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ pur-ConfigID-r16 PUR-ConfigID-NB-r16 OPTIONAL,
+ nonCriticalExtension RRCConnectionSetupComplete-NB-v1710-IEs OPTIONAL
+}
+
+RRCConnectionSetupComplete-NB-v1710-IEs ::= SEQUENCE {
+ gnss-ValidityDuration-r17 GNSS-ValidityDuration-r17 OPTIONAL, nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -803,7 +830,12 @@ RRCEarlyDataComplete-NB-r15-IEs ::= SEQUENCE {
RRCEarlyDataComplete-NB-v1590-IEs ::= SEQUENCE {
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCEarlyDataComplete-NB-v1700-IEs OPTIONAL
+}
+
+RRCEarlyDataComplete-NB-v1700-IEs ::= SEQUENCE {
+ cbp-Index-r17 INTEGER (1..2) OPTIONAL, -- Need OR
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -873,7 +905,9 @@ SystemInformation-NB-r13-IEs ::= SEQUENCE {
sib20-v1430 SystemInformationBlockType20-NB-r14,
sib22-v1430 SystemInformationBlockType22-NB-r14,
sib23-v1530 SystemInformationBlockType23-NB-r15,
- sib27-v1610 SystemInformationBlockType27-NB-r16
+ sib27-v1610 SystemInformationBlockType27-NB-r16,
+ sib31-v1700 SystemInformationBlockType31-NB-r17,
+ sib32-v1700 SystemInformationBlockType32-NB-r17
},
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
@@ -951,13 +985,23 @@ SystemInformationBlockType1-NB-v1610 ::= SEQUENCE {
cellIdentity-r16 CellIdentity OPTIONAL, -- Need OP
cellBarred-5GC-r16 ENUMERATED {barred, notBarred}
} OPTIONAL, -- Need OR
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension SystemInformationBlockType1-NB-v1700 OPTIONAL
+}
+
+SystemInformationBlockType1-NB-v1700 ::= SEQUENCE {
+ cellAccessRelatedInfo-NTN-r17 SEQUENCE {
+ cellBarred-NTN-r17 ENUMERATED {barred, notBarred},
+ plmn-IdentityList-v1700 PLMN-IdentityList-NB-v1700 OPTIONAL -- Need OR
+ } OPTIONAL, -- Need OR
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
PLMN-IdentityList-NB-r13 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-NB-r13
PLMN-IdentityList-5GC-NB-r16 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-5GC-NB-r16
+PLMN-IdentityList-NB-v1700::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-NB-v1700
+
PLMN-IdentityInfo-NB-r13 ::= SEQUENCE {
plmn-Identity-r13 PLMN-Identity,
cellReservedForOperatorUse-r13 ENUMERATED {reserved, notReserved},
@@ -974,6 +1018,12 @@ PLMN-IdentityInfo-5GC-NB-r16 ::= SEQUENCE {
up-CIoT-5GS-Optimisation-r16 ENUMERATED {true} OPTIONAL -- Need OR
}
+PLMN-IdentityInfo-NB-v1700 ::= SEQUENCE {
+ trackingAreaList-r17 TrackingAreaList-NB-r17 OPTIONAL -- Need OP
+}
+
+TrackingAreaList-NB-r17 ::= SEQUENCE (SIZE (1..maxTAC-NB-r17)) OF TrackingAreaCode
+
SchedulingInfoList-NB-r13 ::= SEQUENCE (SIZE (1..maxSI-Message-NB-r13)) OF SchedulingInfo-NB-r13
SchedulingInfoList-NB-v1530 ::= SEQUENCE (SIZE (1..maxSI-Message-NB-r13)) OF SchedulingInfo-NB-v1530
@@ -1003,8 +1053,8 @@ SIB-Type-NB-r13 ::= ENUMERATED {
sibType20-NB-r14, sibType22-NB-r14}
SIB-Type-NB-v1530 ::= ENUMERATED {
- sibType23-NB-r15, sibType27-NB-r16, spare6, spare5,
- spare4, spare3, spare2, spare1}
+ sibType23-NB-r15, sibType27-NB-r16, sibType31-NB-r17,
+ sibType32-NB-r17, spare4, spare3, spare2, spare1}
CellSelectionInfo-NB-v1350 ::= SEQUENCE {
delta-RxLevMin-v1350 INTEGER (-8..-1)
@@ -1187,6 +1237,9 @@ SystemInformationBlockType3-NB-r13 ::= SEQUENCE {
]],
[[ nsss-RRM-Config-r15 NSSS-RRM-Config-NB-r15 OPTIONAL, -- Need OR
npbch-RRM-Config-r15 ENUMERATED {enabled} OPTIONAL -- Need OR
+ ]],
+ [[ connMeasConfig-r17 ConnMeasConfig-NB-r17 OPTIONAL, -- Need OR
+ t-Service-r17 TimeOffsetUTC-r17 OPTIONAL -- Need OR
]]
}
@@ -1207,10 +1260,19 @@ CellReselectionInfoCommon-NB-v1450 ::= SEQUENCE {
s-SearchDeltaP-r14 ENUMERATED {dB6, dB9, dB12, dB15}
}
+ConnMeasConfig-NB-r17 ::= SEQUENCE {
+ s-MeasureIntra-r17 NRSRP-Range-NB-r14,
+ s-MeasureInter-r17 NRSRP-Range-NB-r14 OPTIONAL, -- Need OP
+ neighCellMeasCriteria-r17 SEQUENCE {
+ s-MeasureDeltaP-r17 ENUMERATED {dB6, dB9, dB12, dB15},
+ t-MeasureDeltaP-r17 ENUMERATED {s15, s30, s45, s60}
+ } OPTIONAL -- Need OR
+}
+
SystemInformationBlockType4-NB-r13 ::= SEQUENCE {
intraFreqNeighCellList-r13 IntraFreqNeighCellList OPTIONAL, -- Need OR
- intraFreqBlackCellList-r13 IntraFreqBlackCellList OPTIONAL, -- Need OR
+ intraFreqExcludedCellList-r13 IntraFreqExcludedCellList OPTIONAL, -- Need OR
lateNonCriticalExtension OCTET STRING OPTIONAL,
...,
[[ nsss-RRM-Config-r15 NSSS-RRM-Config-NB-r15 OPTIONAL, -- Need OR
@@ -1245,7 +1307,7 @@ InterFreqCarrierFreqInfo-NB-r13 ::= SEQUENCE {
p-Max-r13 P-Max OPTIONAL, -- Need OP
q-OffsetFreq-r13 Q-OffsetRange DEFAULT dB0,
interFreqNeighCellList-r13 InterFreqNeighCellList-NB-r13 OPTIONAL, -- Need OR
- interFreqBlackCellList-r13 InterFreqBlackCellList-NB-r13 OPTIONAL, -- Need OR
+ interFreqExcludedCellList-r13 InterFreqExcludedCellList-NB-r13 OPTIONAL, -- Need OR
multiBandInfoList-r13 MultiBandInfoList-NB-r13 OPTIONAL, -- Need OR
...,
[[ delta-RxLevMin-v1350 INTEGER (-8..-1) OPTIONAL -- Cond Qrxlevmin
@@ -1269,7 +1331,7 @@ InterFreqNeighCellInfo-NB-v1530 ::= SEQUENCE {
nsss-RRM-Config-r15 NSSS-RRM-Config-NB-r15 OPTIONAL -- Cond NSSS-RRM
}
-InterFreqBlackCellList-NB-r13 ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PhysCellId
+InterFreqExcludedCellList-NB-r13 ::= SEQUENCE (SIZE (1..maxExcludedCell)) OF PhysCellId
SystemInformationBlockType14-NB-r13 ::= SEQUENCE {
@@ -1408,6 +1470,8 @@ SystemInformationBlockType22-NB-r14 ::= SEQUENCE {
nprach-Distribution-r15 ENUMERATED {true} OPTIONAL -- Need OR
} OPTIONAL, -- Need OR
ul-ConfigList-r15 UL-ConfigCommonListTDD-NB-r15 OPTIONAL -- Cond TDD
+ ]],
+ [[ coverageBasedPagingConfig-r17 CoverageBasedPagingConfig-NB-r17 OPTIONAL -- Need OR
]]
}
@@ -1420,6 +1484,19 @@ UL-ConfigCommonList-NB-r14 ::= SEQUENCE (SIZE (1.. maxNonAnchorCarriers-NB-r14)
UL-ConfigCommonListTDD-NB-r15 ::= SEQUENCE (SIZE (1.. maxNonAnchorCarriers-NB-r14)) OF
UL-ConfigCommonTDD-NB-r15
+CoverageBasedPagingConfig-NB-r17 ::= SEQUENCE {
+ cbp-HystTimer-r17 ENUMERATED {ms2560, ms7680, ms12800, ms17920, ms23040, ms28160, ms33280, ms40960},
+ cbp-ConfigList-r17 SEQUENCE (SIZE (1.. 2)) OF CBP-Config-NB-r17
+}
+
+CBP-Config-NB-r17 ::= SEQUENCE {
+ nrsrpMin-r17 RSRP-Range,
+ nB-r17 ENUMERATED {fourT, twoT, oneT, halfT, quarterT, one8thT, one16thT, one32ndT,
+ one64thT, one128thT, one256thT, one512thT, one1024thT, spare3,
+ spare2, spare1} OPTIONAL, -- Need OP
+ ue-SpecificDRX-CycleMin-r17 ENUMERATED {rf32, rf64, rf128, rf256} OPTIONAL -- Need OR
+}
+
DL-ConfigCommon-NB-r14 ::= SEQUENCE {
dl-CarrierConfig-r14 DL-CarrierConfigCommon-NB-r14,
pcch-Config-r14 PCCH-Config-NB-r14 OPTIONAL, -- Need OR
@@ -1427,6 +1504,8 @@ DL-ConfigCommon-NB-r14 ::= SEQUENCE {
[[ wus-Config-r15 WUS-ConfigPerCarrier-NB-r15 OPTIONAL -- Cond WUS
]],
[[ gwus-Config-r16 WUS-ConfigPerCarrier-NB-r15 OPTIONAL -- Cond GWUS
+ ]],
+ [[ pcch-Config-r17 PCCH-Config-NB-r17 OPTIONAL -- Cond pcch-config2
]]
}
@@ -1439,6 +1518,13 @@ PCCH-Config-NB-r14 ::= SEQUENCE {
...
}
+PCCH-Config-NB-r17 ::= SEQUENCE {
+ cbp-Index-r17 INTEGER (1..2),
+ npdcch-NumRepetitionPaging-r17 ENUMERATED {r1, r2, r4, r8, r16, r32, r64, r128},
+ pagingWeight-r17 PagingWeight-NB-r14 DEFAULT w1,
+ ...
+}
+
PagingWeight-NB-r14 ::= ENUMERATED {w1, w2, w3, w4, w5, w6, w7, w8,
w9, w10, w11, w12, w13, w14, w15, w16}
@@ -1447,6 +1533,8 @@ UL-ConfigCommon-NB-r14 ::= SEQUENCE {
nprach-ParametersList-r14 NPRACH-ParametersList-NB-r14 OPTIONAL, -- Need OR
...,
[[ nprach-ParametersListEDT-r15 NPRACH-ParametersList-NB-r14 OPTIONAL -- Cond EDT
+ ]],
+ [[ rsrp-ThresholdsPrachInfoList-r16 RSRP-ThresholdsNPRACH-InfoList-NB-r13 OPTIONAL -- Need OR
]]
}
@@ -1516,6 +1604,20 @@ CarrierFreqsGERAN-NB-r16 ::= SEQUENCE {
+SystemInformationBlockType31-NB-r17 ::= SEQUENCE {
+ servingSatelliteInfo-r17 ServingSatelliteInfo-r17,
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+
+SystemInformationBlockType32-NB-r17 ::= SEQUENCE {
+ satelliteInfoList-r17 SatelliteInfoList-r17 OPTIONAL, -- Need OR
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+
CarrierConfigDedicated-NB-r13 ::= SEQUENCE {
dl-CarrierConfig-r13 DL-CarrierConfigDedicated-NB-r13,
ul-CarrierConfig-r13 UL-CarrierConfigDedicated-NB-r13
@@ -1569,7 +1671,7 @@ CarrierFreq-NB-r13 ::= SEQUENCE {
carrierFreq-r13 ARFCN-ValueEUTRA-r9,
carrierFreqOffset-r13 ENUMERATED {
v-10, v-9, v-8, v-7, v-6, v-5, v-4, v-3, v-2, v-1, v-0dot5,
- v0, v1, v2, v3, v4, v5, v6, v7, v8, v9
+ v0, v1, v2, v3, v4, v5, v6, v7, v8, v9
} OPTIONAL -- Need ON
}
@@ -1632,7 +1734,7 @@ DL-GapConfig-NB-v1530 ::= SEQUENCE {
}
-GWUS-Config-NB-r16 ::= SEQUENCE {
+GWUS-Config-NB-r16 ::= SEQUENCE {
groupAlternation-r16 ENUMERATED {true} OPTIONAL, -- Need OR
commonSequence-r16 ENUMERATED {g0, g126} OPTIONAL, -- Need OR
timeParameters-r16 WUS-Config-NB-r15 OPTIONAL, -- Cond noWUSr15
@@ -1643,22 +1745,22 @@ GWUS-Config-NB-r16 ::= SEQUENCE {
...
}
-GWUS-ResourceConfig-NB-r16 ::= SEQUENCE {
+GWUS-ResourceConfig-NB-r16 ::= SEQUENCE {
resourcePosition-r16 ENUMERATED {primary, secondary},
- numGroupsList-r16 GWUS-NumGroupsList-NB-r16 OPTIONAL, -- Need OP
+ numGroupsList-r16 GWUS-NumGroupsList-NB-r16 OPTIONAL, -- Need OP
groupsForServiceList-r16 GWUS-GroupsForServiceList-NB-r16
- OPTIONAL -- Cond probabilityBased
+ OPTIONAL -- Cond probabilityBased
}
-GWUS-ProbThreshList-NB-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-NB-r16)) OF
+GWUS-ProbThreshList-NB-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-NB-r16)) OF
GWUS-Paging-ProbThresh-NB-r16
-GWUS-Paging-ProbThresh-NB-r16 ::= ENUMERATED {p20, p30, p40, p50, p60, p70, p80, p90}
+GWUS-Paging-ProbThresh-NB-r16 ::= ENUMERATED {p20, p30, p40, p50, p60, p70, p80, p90}
-GWUS-NumGroupsList-NB-r16 ::= SEQUENCE (SIZE (1..maxGWUS-Resources-NB-r16)) OF
+GWUS-NumGroupsList-NB-r16 ::= SEQUENCE (SIZE (1..maxGWUS-Resources-NB-r16)) OF
GWUS-NumGroups-NB-r16
-GWUS-NumGroups-NB-r16 ::= ENUMERATED {n1, n2, n4, n8}
+GWUS-NumGroups-NB-r16 ::= ENUMERATED {n1, n2, n4, n8}
GWUS-GroupsForServiceList-NB-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-NB-r16)) OF
INTEGER (1..maxGWUS-Groups-1-NB-r16)
@@ -1699,6 +1801,9 @@ MAC-MainConfig-NB-r13 ::= SEQUENCE {
sf1280, sf2560, sf5120, sf10240} OPTIONAL -- Need ON
]],
[[ ra-CFRA-Config-r14 ENUMERATED {true} OPTIONAL -- Need ON
+ ]],
+ [[ offsetThresholdTA-r17 CHOICE {release NULL, setup OffsetThresholdTA-NB-r17}
+ OPTIONAL -- Need ON
]]
}
@@ -1731,6 +1836,9 @@ DRX-Config-NB-r13 ::= CHOICE {
}
}
+OffsetThresholdTA-NB-r17 ::= ENUMERATED {
+ ms0dot5, ms1, ms2, ms3, ms4, ms5, ms6 ,ms7,
+ ms8, ms9, ms10, ms11, ms12, ms13, ms14, ms15}
NPDCCH-ConfigDedicated-NB-r13 ::= SEQUENCE {
@@ -1752,7 +1860,7 @@ NPDSCH-ConfigCommon-NB-r13 ::= SEQUENCE {
}
NPDSCH-ConfigDedicated-NB-r16 ::= SEQUENCE {
- npdsch-MultiTB-Config-r16 NPDSCH-MultiTB-Config-NB-r16 OPTIONAL -- Cond twoHARQ
+ npdsch-MultiTB-Config-r16 NPDSCH-MultiTB-Config-NB-r16 OPTIONAL -- Cond twoHARQ
}
NPDSCH-MultiTB-Config-NB-r16 ::= SEQUENCE {
@@ -1760,6 +1868,15 @@ NPDSCH-MultiTB-Config-NB-r16 ::= SEQUENCE {
harq-AckBundling-r16 ENUMERATED {true} OPTIONAL -- Cond interleaved
}
+NPDSCH-ConfigDedicated-NB-v1710 ::= SEQUENCE {
+ npdsch-16QAM-Config-r17 CHOICE {release NULL, setup NPDSCH-16QAM-Config-NB-r17}
+}
+
+NPDSCH-16QAM-Config-NB-r17 ::=SEQUENCE{
+ nrs-PowerRatio-r17 ENUMERATED {dB-6, dB-4dot77, dB-3, dB-1dot77, dB0, dB1, dB2, dB3} OPTIONAL, -- Need OR
+ nrs-PowerRatioWithCRS-r17 ENUMERATED {dB-6, dB-4dot77, dB-3, dB-1dot77, dB0, dB1, dB2, dB3} OPTIONAL -- Cond InBand
+}
+
NPRACH-ConfigSIB-NB-r13 ::= SEQUENCE {
nprach-CP-Length-r13 ENUMERATED {us66dot7, us266dot7},
@@ -1901,7 +2018,7 @@ NPRACH-ParametersListTDD-NB-v1550 ::= SEQUENCE (SIZE (1.. maxNPRACH-Resources-NB
NPRACH-ParametersTDD-NB-v1550 ::= SEQUENCE {
maxNumPreambleAttemptCE-v1550 ENUMERATED {n3, n4, n5, n6, n7, n8, n10, spare1},
numRepetitionsPerPreambleAttempt-v1550 ENUMERATED {n1, n2, n4, n8, n16, n32, n64, n128,
- n256, n512, n1024}
+ n256, n512, n1024}
}
NPRACH-ParametersListFmt2-NB-r15 ::= SEQUENCE (SIZE (1.. maxNPRACH-Resources-NB-r13)) OF NPRACH-ParametersFmt2-NB-r15
@@ -1939,6 +2056,14 @@ NPRACH-ParametersFmt2-NB-r15 ::= SEQUENCE {
} OPTIONAL -- Need OR
}
+NPRACH-TxDurationFmt01-NB-r17 ::= SEQUENCE {
+ nprach-TxDurationFmt01-r17 ENUMERATED {n2, n4, n8, n16, n32, n64}
+}
+
+NPRACH-TxDurationFmt2-NB-r17 ::= SEQUENCE {
+ nprach-TxDurationFmt2-r17 ENUMERATED {n1, n2, n4, n8, n16}
+}
+
RSRP-ThresholdsNPRACH-InfoList-NB-r13 ::= SEQUENCE (SIZE(1..2)) OF RSRP-Range
EDT-TBS-InfoList-NB-r15 ::= SEQUENCE (SIZE (1.. maxNPRACH-Resources-NB-r13)) OF EDT-TBS-NB-r15
@@ -1981,6 +2106,14 @@ NPUSCH-ConfigDedicated-NB-v1610 ::= SEQUENCE {
npusch-MultiTB-Config-r16 ENUMERATED {interleaved, nonInterleaved}
}
+NPUSCH-ConfigDedicated-NB-v1700 ::= SEQUENCE {
+ npusch-16QAM-Config-r17 ENUMERATED {true} OPTIONAL -- Need OR
+}
+
+NPUSCH-TxDuration-NB-r17 ::= SEQUENCE {
+ npusch-TxDuration-r17 ENUMERATED {ms2, ms4, ms8, ms16, ms32, ms64, ms128, ms256}
+}
+
ACK-NACK-NumRepetitions-NB-r13 ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, r128}
@@ -2029,11 +2162,22 @@ PhysicalConfigDedicated-NB-r13 ::= SEQUENCE {
[[ npusch-ConfigDedicated-v1610 NPUSCH-ConfigDedicated-NB-v1610
OPTIONAL, -- Cond twoHARQ
npdsch-ConfigDedicated-r16 NPDSCH-ConfigDedicated-NB-r16
- OPTIONAL,
+ OPTIONAL, -- Need ON
resourceReservationConfigDL-r16 CHOICE {release NULL, setup ResourceReservationConfig-NB-r16}
OPTIONAL, -- Cond dl-NonAnchor
resourceReservationConfigUL-r16 CHOICE {release NULL, setup ResourceReservationConfig-NB-r16}
OPTIONAL -- Cond ul-NonAnchor
+ ]],
+ [[ ntn-ConfigDedicated-r17 SEQUENCE {
+ npusch-TxDuration-r17 CHOICE {release NULL, setup NPUSCH-TxDuration-NB-r17}
+ } OPTIONAL, -- Cond NTN
+ npdsch-ConfigDedicated-v1700 NPDSCH-ConfigDedicated-NB-v1710 OPTIONAL, -- Need ON
+ uplinkPowerControlDedicated-v1700 UplinkPowerControlDedicated-NB-v1700 OPTIONAL -- Cond npusch-16QAM
+ ]],
+ [[
+ uplinkSegmentedPrecompensationGap-r17 ENUMERATED {sym1,sl1,sl2} OPTIONAL -- Need OR
+ ]],
+ [[ npusch-ConfigDedicated-v1740 NPUSCH-ConfigDedicated-NB-v1700 OPTIONAL -- Need ON
]]
}
@@ -2041,7 +2185,7 @@ PhysicalConfigDedicated-NB-r13 ::= SEQUENCE {
PUR-Config-NB-r16 ::= SEQUENCE {
pur-ConfigID-r16 PUR-ConfigID-NB-r16 OPTIONAL, --Need OR
pur-TimeAlignmentTimer-r16 INTEGER (1..8) OPTIONAL, --Need OR
- pur-NRSRP-ChangeThreshold-r16 CHOICE {release NULL, setup PUR-NRSRP-ChangeThreshold-r16}
+ pur-NRSRP-ChangeThreshold-r16 CHOICE {release NULL, setup PUR-NRSRP-ChangeThreshold-NB-r16}
OPTIONAL, --Need ON
pur-ImplicitReleaseAfter-r16 ENUMERATED {n2, n4, n8, spare} OPTIONAL, --Need OR
pur-RNTI-r16 C-RNTI OPTIONAL, --Need ON
@@ -2077,21 +2221,31 @@ PUR-Config-NB-r16 ::= SEQUENCE {
pur-PhysicalConfig-v1650 SEQUENCE {
ack-NACK-NumRepetitions-r16 ACK-NACK-NumRepetitions-NB-r13
} OPTIONAL --Need ON
+ ]],
+ [[
+ pur-PhysicalConfig-v1700 SEQUENCE {
+ pur-UL-16QAM-Config-r17 CHOICE {release NULL, setup PUR-UL-16QAM-Config-NB-r17} OPTIONAL, -- Need ON
+ pur-DL-16QAM-Config-r17 CHOICE {release NULL, setup NPDSCH-16QAM-Config-NB-r17} OPTIONAL -- Need ON
+ } OPTIONAL -- Need ON
]]
}
-PUR-NRSRP-ChangeThreshold-r16 ::= SEQUENCE {
+PUR-NRSRP-ChangeThreshold-NB-r16 ::= SEQUENCE {
increaseThresh-r16 NRSRP-ChangeThresh-NB-r16,
decreaseThresh-r16 NRSRP-ChangeThresh-NB-r16 OPTIONAL --Need OP
}
+PUR-UL-16QAM-Config-NB-r17 ::= SEQUENCE {
+ uplinkPowerControlDedicated-r17 UplinkPowerControlDedicated-NB-v1700
+}
+
NRSRP-ChangeThresh-NB-r16 ::= ENUMERATED {dB4, dB6, dB8, dB10, dB14, dB18, dB22, dB26, dB30, dB34, spare6, spare5, spare4, spare3, spare2, spare1}
PUR-ConfigID-NB-r16 ::= BIT STRING (SIZE(20))
-PUR-PeriodicityAndOffset-NB-r16 ::= CHOICE {
+PUR-PeriodicityAndOffset-NB-r16 ::= CHOICE {
periodicity8 INTEGER (1..7),
periodicity16 INTEGER (1..15),
periodicity32 INTEGER (1..31),
@@ -2176,6 +2330,15 @@ RadioResourceConfigCommonSIB-NB-r13 ::= SEQUENCE {
nrs-NonAnchorConfig-r16 ENUMERATED {true} OPTIONAL, -- Need OR
ue-SpecificDRX-CycleMin-r16 ENUMERATED {rf32, rf64, rf128, rf256, rf512,
rf1024} OPTIONAL -- Need OR
+ ]],
+ [[ ntn-ConfigCommon-r17 SEQUENCE {
+ ta-Report-r17 ENUMERATED {enabled} OPTIONAL, -- Need OR
+ t318-r17 ENUMERATED {
+ ms0, ms200, ms500, ms1000, ms2000, ms4000, ms8000},
+ nprach-TxDurationFmt01-r17 NPRACH-TxDurationFmt01-NB-r17 OPTIONAL, -- Need OR
+ nprach-TxDurationFmt2-r17 NPRACH-TxDurationFmt2-NB-r17 OPTIONAL, -- Need OR
+ npusch-TxDuration-r17 NPUSCH-TxDuration-NB-r17 OPTIONAL -- Need OR
+ } OPTIONAL -- Cond NTN
]]
}
@@ -2227,6 +2390,8 @@ SRB-ToAddMod-NB-r13 ::= SEQUENCE {
} OPTIONAL, -- Cond Setup
...,
[[ rlc-Config-v1430 RLC-Config-NB-v1430 OPTIONAL -- Need ON
+ ]],
+ [[ rlc-Config-v1700 RLC-Config-NB-v1700 OPTIONAL -- Need ON
]]
}
@@ -2243,6 +2408,8 @@ DRB-ToAddMod-NB-r13 ::= SEQUENCE {
[[ rlc-Config-v1430 RLC-Config-NB-v1430 OPTIONAL -- Need ON
]],
[[ pdu-Session-r16 PDU-SessionID-NB-r16 OPTIONAL -- Cond DRB-Setup-5GC
+ ]],
+ [[ rlc-Config-v1700 RLC-Config-NB-v1700 OPTIONAL -- Need ON
]]
}
@@ -2295,6 +2462,10 @@ RLC-Config-NB-v1430 ::= SEQUENCE {
t-Reordering-r14 T-Reordering OPTIONAL -- Cond twoHARQ
}
+RLC-Config-NB-v1700 ::= SEQUENCE {
+ t-ReorderingExt-r17 CHOICE {release NULL, setup T-ReorderingExt-r17}
+}
+
UL-AM-RLC-NB-r13 ::= SEQUENCE {
t-PollRetransmit-r13 T-PollRetransmit-NB-r13,
maxRetxThreshold-r13 ENUMERATED {t1, t2, t3, t4, t6, t8, t16, t32}
@@ -2347,7 +2518,9 @@ SchedulingRequestConfig-NB-r15 ::= SEQUENCE {
sr-WithHARQ-ACK-Config-r15 ENUMERATED {true} OPTIONAL,
sr-WithoutHARQ-ACK-Config-r15 SR-WithoutHARQ-ACK-Config-NB-r15 OPTIONAL, -- Need ON
sr-SPS-BSR-Config-r15 SR-SPS-BSR-Config-NB-r15 OPTIONAL, -- Need ON
- ...
+ ...,
+ [[ sr-WithoutHARQ-ACK-Config-v1700 SR-WithoutHARQ-ACK-Config-NB-v1700 OPTIONAL -- Need ON
+ ]]
}
SR-WithoutHARQ-ACK-Config-NB-r15 ::= CHOICE {
@@ -2358,6 +2531,10 @@ SR-WithoutHARQ-ACK-Config-NB-r15 ::= CHOICE {
}
}
+SR-WithoutHARQ-ACK-Config-NB-v1700 ::= SEQUENCE {
+ sr-ProhibitTimerOffset-r17 CHOICE {release NULL, setup SR-ProhibitTimerOffset-NB-r17} OPTIONAL -- Need ON
+}
+
SR-NPRACH-Resource-NB-r15 ::= SEQUENCE {
nprach-CarrierIndex-r15 INTEGER (0..maxNonAnchorCarriers-NB-r14),
nprach-ResourceIndex-r15 INTEGER (1..maxNPRACH-Resources-NB-r13),
@@ -2377,6 +2554,9 @@ SR-SPS-BSR-Config-NB-r15 ::= CHOICE {
}
}
+SR-ProhibitTimerOffset-NB-r17 ::= ENUMERATED {
+ ms90, ms180, ms270, ms360, ms450, ms540, ms1080, spare}
+
TDD-Config-NB-r15 ::= SEQUENCE {
subframeAssignment-r15 ENUMERATED {
@@ -2401,6 +2581,10 @@ UplinkPowerControlDedicated-NB-r13 ::= SEQUENCE {
p0-UE-NPUSCH-r13 INTEGER (-8..7)
}
+UplinkPowerControlDedicated-NB-v1700 ::= SEQUENCE {
+ deltaMCS-Enabled-r17 ENUMERATED {en0, en1}
+}
+
WUS-Config-NB-r15 ::= SEQUENCE {
maxDurationFactor-r15 WUS-MaxDurationFactor-NB-r15,
@@ -2457,11 +2641,11 @@ ANR-CarrierList-NB-r16 ::= SEQUENCE (SIZE (1..maxFreqANR-NB-r16)) OF ANR-Carrie
ANR-Carrier-NB-r16::= SEQUENCE {
carrierFreqIndex-r16 INTEGER (1..maxFreq),
- blackCellList-r16 ANR-BlackCellList-NB-r16 OPTIONAL, -- Need OP
+ excludedCellList-r16 ANR-ExcludedCellList-NB-r16 OPTIONAL, -- Need OP
...
}
-ANR-BlackCellList-NB-r16 ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PhysCellId
+ANR-ExcludedCellList-NB-r16 ::= SEQUENCE (SIZE (1..maxExcludedCell)) OF PhysCellId
ANR-MeasReport-NB-r16 ::= SEQUENCE {
@@ -2568,9 +2752,34 @@ UE-Capability-NB-v1610-IEs ::= SEQUENCE {
mac-Parameters-v1610 MAC-Parameters-NB-v1610,
phyLayerParameters-v1610 PhyLayerParameters-NB-v1610 OPTIONAL,
son-Parameters-r16 SON-Parameters-NB-r16 OPTIONAL,
- meas-Parameters-r16 Meas-Parameters-NB-r16,
+ measParameters-r16 MeasParameters-NB-r16,
tdd-UE-Capability-v1610 TDD-UE-Capability-NB-v1610 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UE-Capability-NB-v16x0-IEs OPTIONAL
+}
+
+UE-Capability-NB-v16x0-IEs ::= SEQUENCE {
+-- Following field is only to be used for late REL-16 extensions
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UE-Capability-NB-v1700-IEs OPTIONAL
+}
+
+UE-Capability-NB-v1700-IEs ::= SEQUENCE {
+ coverageBasedPaging-r17 ENUMERATED {supported} OPTIONAL,
+ phyLayerParameters-v1700 PhyLayerParameters-NB-v1700,
+ ntn-Parameters-r17 NTN-Parameters-NB-r17 OPTIONAL,
+ nonCriticalExtension UE-Capability-NB-v1710-IEs OPTIONAL
+}
+
+UE-Capability-NB-v1710-IEs ::= SEQUENCE {
+ measParameters-v1710 MeasParameters-NB-v1710 OPTIONAL,
+ rf-Parameters-v1710 RF-Parameters-NB-v1710,
+ tdd-UE-Capability-v1710 TDD-UE-Capability-NB-v1710,
+ nonCriticalExtension UE-Capability-NB-v1720-IEs OPTIONAL
+}
+
+UE-Capability-NB-v1720-IEs ::= SEQUENCE {
+ ntn-Parameters-v1720 NTN-Parameters-NB-v1720,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
TDD-UE-Capability-NB-r15 ::= SEQUENCE {
@@ -2588,7 +2797,11 @@ TDD-UE-Capability-NB-v1610 ::= SEQUENCE {
subframeResourceResvUL-r16 ENUMERATED {supported} OPTIONAL
}
-AccessStratumRelease-NB-r13 ::= ENUMERATED {rel13, rel14, rel15, rel16, spare4, spare3, spare2, spare1, ...}
+TDD-UE-Capability-NB-v1710 ::= SEQUENCE {
+ phyLayerParameters-v1710 PhyLayerParameters-NB-v1700 OPTIONAL
+}
+
+AccessStratumRelease-NB-r13 ::= ENUMERATED {rel13, rel14, rel15, rel16, rel17, spare3, spare2, spare1, ...}
PDCP-Parameters-NB-r13 ::= SEQUENCE {
supportedROHC-Profiles-r13 SEQUENCE {
@@ -2621,10 +2834,27 @@ MAC-Parameters-NB-v1610 ::= SEQUENCE {
rai-SupportEnh-r16 ENUMERATED {supported} OPTIONAL
}
-Meas-Parameters-NB-r16 ::= SEQUENCE {
+NTN-Parameters-NB-r17 ::= SEQUENCE {
+ ntn-Connectivity-EPC-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-TA-Report-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-PUR-TimerDelay-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-OffsetTimingEnh-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-ScenarioSupport-r17 ENUMERATED {ngso,gso} OPTIONAL
+}
+
+NTN-Parameters-NB-v1720 ::= SEQUENCE {
+ ntn-SegmentedPrecompensationGaps-r17 ENUMERATED {sym1,sl1,sl2} OPTIONAL
+}
+
+MeasParameters-NB-r16 ::= SEQUENCE {
dl-ChannelQualityReporting-r16 ENUMERATED {supported} OPTIONAL
}
+MeasParameters-NB-v1710 ::= SEQUENCE {
+ connModeMeasIntraFreq-r17 ENUMERATED {supported} OPTIONAL,
+ connModeMeasInterFreq-r17 ENUMERATED {supported} OPTIONAL
+}
+
PhyLayerParameters-NB-r13 ::= SEQUENCE {
multiTone-r13 ENUMERATED {supported} OPTIONAL,
multiCarrier-r13 ENUMERATED {supported} OPTIONAL
@@ -2669,6 +2899,10 @@ PUR-Parameters-NB-r16 ::= SEQUENCE {
pur-CP-L1Ack-r16 ENUMERATED {supported} OPTIONAL
}
+PhyLayerParameters-NB-v1700 ::= SEQUENCE {
+ npdsch-16QAM-r17 ENUMERATED {supported} OPTIONAL
+}
+
RF-Parameters-NB-r13 ::= SEQUENCE {
supportedBandList-r13 SupportedBandList-NB-r13,
multiNS-Pmax-r13 ENUMERATED {supported} OPTIONAL
@@ -2678,13 +2912,23 @@ RF-Parameters-NB-v1430 ::= SEQUENCE {
powerClassNB-14dBm-r14 ENUMERATED {supported} OPTIONAL
}
+RF-Parameters-NB-v1710 ::= SEQUENCE {
+ supportedBandList-v1710 SupportedBandList-NB-v1710 OPTIONAL
+}
+
SupportedBandList-NB-r13 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBand-NB-r13
+SupportedBandList-NB-v1710 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBand-NB-v1710
+
SupportedBand-NB-r13 ::= SEQUENCE {
band-r13 FreqBandIndicator-NB-r13,
powerClassNB-20dBm-r13 ENUMERATED {supported} OPTIONAL
}
+SupportedBand-NB-v1710 ::= SEQUENCE {
+ npusch-16QAM-r17 ENUMERATED {supported} OPTIONAL
+}
+
SON-Parameters-NB-r16 ::= SEQUENCE {
anr-Report-r16 ENUMERATED {supported} OPTIONAL,
rach-Report-r16 ENUMERATED {supported} OPTIONAL
@@ -2822,6 +3066,8 @@ maxNeighCell-SCPTM-NB-r14 INTEGER ::= 8 -- Maximum number of SCPTM neighbour cel
maxNS-Pmax-NB-r13 INTEGER ::= 4 -- Maximum number of NS and P-Max values per band
maxSC-MTCH-NB-r14 INTEGER ::= 64 -- Maximum number of SC-MTCHs in one cell for NB-IoT
maxSI-Message-NB-r13 INTEGER ::= 8 -- Maximum number of SI messages for NB-IoT
+maxTAC-NB-r17 INTEGER ::= 12 -- Maximum number of Tracking Area Codes
+ -- broadcast in a cell
END
diff --git a/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn b/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn
index 013a7c8860..f28940b119 100644
--- a/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn
+++ b/epan/dissectors/asn1/lte-rrc/NBIOT-UE-Variables.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
NBIOT-UE-Variables DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn b/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn
index 9a9a3d3214..8afb8c01f2 100644
--- a/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/lte-rrc/PC5-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.331 V16.6.0 (2021-09)
+-- 3GPP TS 36.331 V17.7.0 (2023-12)
PC5-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
diff --git a/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf b/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf
index 6a4d42717e..0c1810b101 100644
--- a/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf
+++ b/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf
@@ -1,6 +1,6 @@
# lte-rrc.cnf
# lte-rrc conformation file
-# Copyright 2008 Vincent Helfre, 2009-2021 Pascal Quantin
+# Copyright 2008 Vincent Helfre, 2009-2024 Pascal Quantin
#.OPT
PER
@@ -63,7 +63,6 @@ CQI-ShortConfigSCell-r15/setup cQI-Shor
CRI-ReportConfig-r13/setup cRI-ReportConfig-r13_setup
CSI-Process-r11/eag_1/csi-IM-ConfigIdList-r12/setup cSI-Process-r11_eag_1_csi-IM-ConfigIdList-r12_setup
CSI-Process-r11/eag_1/cqi-ReportAperiodicProc2-r12/setup cSI-Process-r11_eag_1_cqi-ReportAperiodicProc2-r12_setup
-CSI-Process-r11/eag_1/cqi-ReportAperiodicProc2-r12/setup cSI-Process-r11_eag_1_cqi-ReportAperiodicProc2-r12_setup
CSI-Process-r11/eag_2/cqi-ReportAperiodicProc2-v1310/setup cSI-Process-r11_eag_2_cqi-ReportAperiodicProc2-v1310_setup
CSI-RS-Config-r10/csi-RS-r10/setup cSI-RS-Config-r10_csi-RS-r10_setup
CSI-RS-Config-v1250/ds-ZeroTxPowerCSI-RS-r12/setup cSI-RS-Config-v1250_ds-ZeroTxPowerCSI-RS-r12_setup
@@ -370,7 +369,6 @@ CQI-ShortConfigSCell-r15/setup ABBREV=c
CRI-ReportConfig-r13/setup ABBREV=cRI_ReportConfig_r13.setup
CSI-Process-r11/eag_1/csi-IM-ConfigIdList-r12/setup ABBREV=cSI_Process_r11.eag_1.csi_IM_ConfigIdList_r12.setup
CSI-Process-r11/eag_1/cqi-ReportAperiodicProc2-r12/setup ABBREV=cSI_Process_r11.eag_1.cqi_ReportAperiodicProc2_r12.setup
-CSI-Process-r11/eag_1/cqi-ReportAperiodicProc2-r12/setup ABBREV=cSI_Process_r11.eag_1.cqi_ReportAperiodicProc2_r12.setup
CSI-Process-r11/eag_2/cqi-ReportAperiodicProc2-v1310/setup ABBREV=cSI_Process_r11.eag_2.cqi_ReportAperiodicProc2_v1310.setup
CSI-RS-Config-r10/csi-RS-r10/setup ABBREV=cSI_RS_Config_r10.csi_RS_r10.setup
CSI-RS-Config-v1250/ds-ZeroTxPowerCSI-RS-r12/setup ABBREV=cSI_RS_Config_v1250.ds_ZeroTxPowerCSI_RS_r12.setup
@@ -779,68 +777,7 @@ BCCH-DL-SCH-Message-MBMS @bcch.dl.sch.mbms
#.OMIT_ASSIGNMENT
# Get rid of unused code warnings
-CellsTriggeredList
-CSI-RS-TriggeredList-r12
-LogMeasInfoList2-r10
RSRP-RangeSL3-r12
-SL-CBR-PPPP-TxPreconfigList-r14
-SL-CBR-PPPP-TxPreconfigList-v1530
-SL-CBR-PreconfigTxConfigList-r14
-SL-PPPP-TxPreconfigIndex-r14
-SL-PPPP-TxPreconfigIndex-v1530
-SL-PreconfigCommPool-r12
-SL-PreconfigCommPoolList4-r12
-SL-PreconfigCommRxPoolList-r13
-SL-PreconfigCommTxPoolList-r13
-SL-PreconfigDiscPool-r13
-SL-PreconfigDiscRxPoolList-r13
-SL-PreconfigDiscTxPoolList-r13
-SL-PreconfigGeneral-r12
-SL-PreconfigRelay-r13
-SL-PreconfigSync-r12
-SL-PreconfigV2X-Sync-r14
-SL-PreconfigV2X-RxPoolList-r14
-SL-PreconfigV2X-TxPoolList-r14
-SL-Preconfiguration-r12
-SL-V2X-PreconfigCommPool-r14
-SL-V2X-PreconfigFreqInfo-r14
-SL-V2X-PreconfigFreqList-r14
-SL-V2X-Preconfiguration-r14
-SL-V2X-SyncOffsetIndicators-r14
-SL-V2X-TxProfile-r15
-SL-V2X-TxProfileList-r15
-SSB-IndexList-r15
-Tx-PreconfigIndex-r14
-VarANR-MeasConfig-NB-r16
-VarANR-MeasReport-NB-r16
-VarConditionalReconfiguration
-VarConnEstFailReport-r11
-VarLogMeasConfig-r10
-VarLogMeasConfig-r11
-VarLogMeasConfig-r12
-VarLogMeasConfig-r15
-VarLogMeasReport-r10
-VarLogMeasReport-r11
-VarMeasConfig
-VarMeasIdleConfig-r15
-VarMeasIdleConfig-r16
-VarMeasIdleReport-r15
-VarMeasIdleReport-r16
-VarMeasReportList
-VarMeasReportList-r12
-VarMeasReport
-VarMobilityHistoryReport-r12
-VarPendingRnaUpdate-r15
-VarRLF-Report-NB-r16
-VarRLF-Report-r10
-VarRLF-Report-r11
-VarShortINACTIVE-MAC-Input-r15
-VarShortMAC-Input
-VarShortMAC-Input-NB-r13
-VarShortResumeMAC-Input-NB-r13
-VarShortResumeMAC-Input-r13
-VarWLAN-MobilityConfig
-VarWLAN-Status-r13
#.NO_EMIT ONLY_VALS
EAB-Config-r11/eab-Category-r11
@@ -1248,7 +1185,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
}
-#.FN_BODY SecurityConfigHO-v1530/handoverType-v1530/intra5GC-r15/nas-Container-r15 VAL_PTR = &nas_cont_tvb
+#.FN_BODY SecurityConfigHO-v1530/handoverType-v1530/intra5GC/nas-Container-r15 VAL_PTR = &nas_cont_tvb
tvbuff_t *nas_cont_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1257,7 +1194,7 @@ MasterInformationBlock/schedulingInfoSIB1-BR-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC
de_nas_5gs_intra_n1_mode_nas_transparent_cont(nas_cont_tvb, subtree, actx->pinfo);
}
-#.FN_BODY SecurityConfigHO-v1530/handoverType-v1530/epc-To5GC-r15/nas-Container-r15 VAL_PTR = &nas_cont_tvb
+#.FN_BODY SecurityConfigHO-v1530/handoverType-v1530/epc-To5GC/nas-Container-r15 VAL_PTR = &nas_cont_tvb
tvbuff_t *nas_cont_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1502,7 +1439,7 @@ LogMeasResultBT-r15/rssi-BT-r15 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units
CarrierFreqUTRA-FDD-Ext-r12/multiBandInfoList-r12 FreqBandIndicator_UTRA_FDD_r12
#.TYPE_ATTR
-SystemInformationBlockType9/hnb-Name TYPE=FT_STRING DISPLAY=STR_UNICODE
+SystemInformationBlockType9/hnb-Name TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY SystemInformationBlockType9/hnb-Name VAL_PTR=&hnb_name_tvb HF_INDEX=-1
tvbuff_t *hnb_name_tvb = NULL;
@@ -1738,7 +1675,7 @@ SystemInformationBlockType16-r11/timeInfo-r11/localTimeOffset-r11 DISPLAY=BASE_C
SystemInformationBlockType26-r15/threshS-RSSI-CBR-r14 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_rrc_threshS_RSSI_CBR_r14_fmt)
#.TYPE_ATTR
-WLAN-Identifiers-r12/ssid-r12 TYPE=FT_STRING DISPLAY=STR_ASCII
+WLAN-Identifiers-r12/ssid-r12 TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY WLAN-Identifiers-r12/ssid-r12 VAL_PTR=&ssid_tvb HF_INDEX=-1
tvbuff_t *ssid_tvb = NULL;
@@ -1799,6 +1736,20 @@ RLF-Report-r9/eag_1/timeConnFailure-r10 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(lte_
#.TYPE_ATTR
LogMeasInfo-r10/relativeTimeStamp-r10 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+#.FN_BODY LogMeasInfo-r10/eag_9/uncomBarPreMeasResult-r17 VAL_PTR = &sensor_meas_info_tvb
+ tvbuff_t *sensor_meas_info_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (sensor_meas_info_tvb) {
+ dissect_lpp_Sensor_MeasurementInformation_r13_PDU(sensor_meas_info_tvb, actx->pinfo, tree, NULL);
+ }
+
+#.FN_BODY MeasResults/eag_10/uncomBarPreMeasResult-r17 VAL_PTR = &sensor_meas_info_tvb
+ tvbuff_t *sensor_meas_info_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (sensor_meas_info_tvb) {
+ dissect_lpp_Sensor_MeasurementInformation_r13_PDU(sensor_meas_info_tvb, actx->pinfo, tree, NULL);
+ }
+
#.FN_BODY BLER-Result-r12/blocksReceived-r12/n-r12 VAL_PTR = &n_r12_tvb HF_INDEX = -1
tvbuff_t *n_r12_tvb = NULL;
%(DEFAULT_BODY)s
@@ -2373,6 +2324,18 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB29");
+#.FN_HDR SystemInformationBlockType30-r17
+
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB30");
+
+#.FN_HDR SystemInformationBlockType31-r17
+
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB31");
+
+#.FN_HDR SystemInformationBlockType32-r17
+
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB32");
+
#.FN_HDR SystemInformationBlockPos-r15
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIBPos");
@@ -3234,7 +3197,7 @@ DRX-Config/setup/shortDRX/drxShortCycleTimer DISPLAY=BASE_DEC|BASE_UNIT_STRING S
guint32 value;
%(DEFAULT_BODY)s
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [cause=%%s]",
- val_to_str(value, lte_rrc_ReleaseCause_vals, "Unknown"));
+ val_to_str_const(value, lte_rrc_ReleaseCause_vals, "Unknown"));
#.TYPE_ATTR
LWA-Parameters-r13/wlan-MAC-Address-r13 TYPE=FT_ETHER
@@ -3387,7 +3350,7 @@ P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL);
}
-#.FN_BODY RRCConnectionResume-v1610-IEs/nr-SecondaryCellGroupConfig VAL_PTR = &rrc_reconfiguration_tvb
+#.FN_BODY RRCConnectionResume-v1610-IEs/nr-SecondaryCellGroupConfig-r16 VAL_PTR = &rrc_reconfiguration_tvb
tvbuff_t *rrc_reconfiguration_tvb = NULL;
%(DEFAULT_BODY)s
@@ -3689,6 +3652,21 @@ P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib5-1-v1610
private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_5_1);
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib1-9-v1700
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_1_9);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib1-10-v1700
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_1_10);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-17a-v1770
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_17a);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-18a-v1770
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_18a);
+
+#.FN_HDR PosSystemInformation-r15-IEs/posSIB-TypeAndInfo-r15/_item/posSib2-20a-v1770
+ private_data_set_pos_sib_type(actx, LPP_POS_SIB_TYPE_2_20a);
+
#.FN_BODY SystemInformationBlockPos-r15/assistanceDataSIB-Element-r15 VAL_PTR = &assist_data_sib_elem_tvb
tvbuff_t *assist_data_sib_elem_tvb = NULL;
@@ -3701,6 +3679,47 @@ P0-SL-r12 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
subtree, private_data_get_pos_sib_type(actx));
}
+#.FN_BODY UEInformationResponse-v1710-IEs/coarseLocationInfo-r17 VAL_PTR = &ellipsoid_point_tvb
+ tvbuff_t *ellipsoid_point_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ellipsoid_point_tvb) {
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree, NULL);
+ }
+
+#.FN_BODY MeasResults/eag_10/coarseLocationInfo-r17 VAL_PTR = &ellipsoid_point_tvb
+ tvbuff_t *ellipsoid_point_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ellipsoid_point_tvb) {
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree, NULL);
+ }
+
+#.TYPE_ATTR
+TimeOffsetUTC-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.FN_BODY OverheatingAssistance-v1610/overheatingAssistanceForSCG-r16 VAL_PTR = &overheating_assist_for_scg_tvb
+ tvbuff_t *overheating_assist_for_scg_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (overheating_assist_for_scg_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_overheatingAssistanceForSCG_r16);
+ dissect_nr_rrc_OverheatingAssistance_PDU(overheating_assist_for_scg_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY OverheatingAssistance-v1710/overheatingAssistanceForSCG-FR2-2-r17 VAL_PTR = &overheating_assist_for_scg_tvb
+ tvbuff_t *overheating_assist_for_scg_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (overheating_assist_for_scg_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_overheatingAssistanceForSCG_FR2_2_r17);
+ dissect_nr_rrc_OverheatingAssistance_r17_PDU(overheating_assist_for_scg_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY CondReconfigurationAddMod-r16/eag_1/triggerConditionSN-r17 VAL_PTR = &cond_reconfig_exec_cond_scg_tvb
+ tvbuff_t *cond_reconfig_exec_cond_scg_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (cond_reconfig_exec_cond_scg_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_triggerConditionSN_r17);
+ dissect_nr_rrc_CondReconfigExecCondSCG_r17_PDU(cond_reconfig_exec_cond_scg_tvb, actx->pinfo, subtree, NULL);
+ }
+
#
# EUTRA-Sidelink-Preconf
#
@@ -3852,6 +3871,12 @@ SL-V2X-PreconfigCommPool-r14/threshS-RSSI-CBR-r14 DISPLAY=BASE_CUSTOM STRINGS=CF
#.FN_HDR SystemInformationBlockType27-NB-r16
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB27");
+#.FN_HDR SystemInformationBlockType31-NB-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB31");
+
+#.FN_HDR SystemInformationBlockType32-NB-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB32");
+
#.TYPE_ATTR
MasterInformationBlock-NB/schedulingInfoSIB1-r13 TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_EXT_STRING STRINGS=&lte_rrc_schedulingInfoSIB1_NB_r13_vals_ext
diff --git a/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c b/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c
index 4810689f1a..b16d37b431 100644
--- a/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c
+++ b/epan/dissectors/asn1/lte-rrc/packet-lte-rrc-template.c
@@ -1,9 +1,9 @@
/* packet-lte-rrc-template.c
* Routines for Evolved Universal Terrestrial Radio Access (E-UTRA);
* Radio Resource Control (RRC) protocol specification
- * (3GPP TS 36.331 V16.6.0 Release 16) packet dissection
+ * (3GPP TS 36.331 V17.7.0 Release 17) packet dissection
* Copyright 2008, Vincent Helfre
- * Copyright 2009-2021, Pascal Quantin
+ * Copyright 2009-2024, Pascal Quantin
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -76,266 +76,269 @@ extern int proto_pdcp_lte;
#include "packet-lte-rrc-val.h"
/* Initialize the protocol and registered fields */
-static int proto_lte_rrc = -1;
+static int proto_lte_rrc;
#include "packet-lte-rrc-hf.c"
-static int hf_lte_rrc_eutra_cap_feat_group_ind_1 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_2 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_3 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_4 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_5 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_6 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_7 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_8 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_9 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_10 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_11 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_12 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_13 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_14 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_15 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_16 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_17 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_18 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_19 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_20 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_21 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_22 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_23 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_24 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_25 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_26 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_27 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_28 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_29 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_30 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_31 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_32 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_33 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_34 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_35 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_36 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_37 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_38 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_39 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_40 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_41 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_42 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_43 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_44 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_45 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_46 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_47 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_48 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_49 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_50 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_51 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_52 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_53 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_54 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_55 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_56 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_57 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_58 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_59 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_60 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_61 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_62 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_63 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_64 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_101 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_102 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_103 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_104 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_105 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_106 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_107 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_108 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_109 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_110 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_111 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_112 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_113 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_114 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_115 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_116 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_117 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_118 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_119 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_120 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_121 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_122 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_123 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_124 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_125 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_126 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_127 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_128 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_129 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_130 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_131 = -1;
-static int hf_lte_rrc_eutra_cap_feat_group_ind_132 = -1;
-static int hf_lte_rrc_serialNumber_gs = -1;
-static int hf_lte_rrc_serialNumber_msg_code = -1;
-static int hf_lte_rrc_serialNumber_upd_nb = -1;
-static int hf_lte_rrc_warningType_value = -1;
-static int hf_lte_rrc_warningType_emergency_user_alert = -1;
-static int hf_lte_rrc_warningType_popup = -1;
-static int hf_lte_rrc_warningMessageSegment_nb_pages = -1;
-static int hf_lte_rrc_warningMessageSegment_decoded_page = -1;
-static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1 = -1;
-static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2 = -1;
-static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1 = -1;
-static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2 = -1;
-static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit1 = -1;
-static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit2 = -1;
-static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit1 = -1;
-static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit2 = -1;
-static int hf_lte_rrc_sr_config_periodicity = -1;
-static int hf_lte_rrc_sr_config_subframe_offset = -1;
-static int hf_lte_rrc_cdma_time = -1;
-static int hf_lte_rrc_utc_time = -1;
-static int hf_lte_rrc_local_time = -1;
-static int hf_lte_rrc_absolute_time = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm1 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm2 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm3 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm4 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm6 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm8 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm9 = -1;
-static int hf_lte_rrc_transmissionModeList_r12_tm10 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_0 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_1 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_2 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_3 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_4 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_5 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_6 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_7 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_8 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_9 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_10 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_11 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_12 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_13 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_14 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_15 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_16 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_17 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_18 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_19 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_20 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_21 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_22 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_23 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_24 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_25 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_26 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_27 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_28 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_29 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_30 = -1;
-static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_31 = -1;
-static int hf_lte_rrc_sib11_fragments = -1;
-static int hf_lte_rrc_sib11_fragment = -1;
-static int hf_lte_rrc_sib11_fragment_overlap = -1;
-static int hf_lte_rrc_sib11_fragment_overlap_conflict = -1;
-static int hf_lte_rrc_sib11_fragment_multiple_tails = -1;
-static int hf_lte_rrc_sib11_fragment_too_long_fragment = -1;
-static int hf_lte_rrc_sib11_fragment_error = -1;
-static int hf_lte_rrc_sib11_fragment_count = -1;
-static int hf_lte_rrc_sib11_reassembled_in = -1;
-static int hf_lte_rrc_sib11_reassembled_length = -1;
-static int hf_lte_rrc_sib11_reassembled_data = -1;
-static int hf_lte_rrc_sib12_fragments = -1;
-static int hf_lte_rrc_sib12_fragment = -1;
-static int hf_lte_rrc_sib12_fragment_overlap = -1;
-static int hf_lte_rrc_sib12_fragment_overlap_conflict = -1;
-static int hf_lte_rrc_sib12_fragment_multiple_tails = -1;
-static int hf_lte_rrc_sib12_fragment_too_long_fragment = -1;
-static int hf_lte_rrc_sib12_fragment_error = -1;
-static int hf_lte_rrc_sib12_fragment_count = -1;
-static int hf_lte_rrc_sib12_reassembled_in = -1;
-static int hf_lte_rrc_sib12_reassembled_length = -1;
-static int hf_lte_rrc_sib12_reassembled_data = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit1 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit2 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit3 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit4 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit5 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit6 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit7 = -1;
-static int hf_lte_rrc_measGapPatterns_r15_bit8 = -1;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_1;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_2;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_3;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_4;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_5;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_6;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_7;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_8;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_9;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_10;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_11;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_12;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_13;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_14;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_15;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_16;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_17;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_18;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_19;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_20;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_21;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_22;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_23;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_24;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_25;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_26;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_27;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_28;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_29;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_30;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_31;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_32;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_33;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_34;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_35;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_36;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_37;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_38;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_39;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_40;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_41;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_42;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_43;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_44;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_45;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_46;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_47;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_48;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_49;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_50;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_51;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_52;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_53;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_54;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_55;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_56;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_57;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_58;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_59;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_60;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_61;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_62;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_63;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_64;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_101;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_102;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_103;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_104;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_105;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_106;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_107;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_108;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_109;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_110;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_111;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_112;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_113;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_114;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_115;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_116;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_117;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_118;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_119;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_120;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_121;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_122;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_123;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_124;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_125;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_126;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_127;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_128;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_129;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_130;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_131;
+static int hf_lte_rrc_eutra_cap_feat_group_ind_132;
+static int hf_lte_rrc_serialNumber_gs;
+static int hf_lte_rrc_serialNumber_msg_code;
+static int hf_lte_rrc_serialNumber_upd_nb;
+static int hf_lte_rrc_warningType_value;
+static int hf_lte_rrc_warningType_emergency_user_alert;
+static int hf_lte_rrc_warningType_popup;
+static int hf_lte_rrc_warningMessageSegment_nb_pages;
+static int hf_lte_rrc_warningMessageSegment_decoded_page;
+static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1;
+static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2;
+static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1;
+static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2;
+static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit1;
+static int hf_lte_rrc_aperiodicCSI_Reporting_r13_bit2;
+static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit1;
+static int hf_lte_rrc_codebook_HARQ_ACK_r13_bit2;
+static int hf_lte_rrc_sr_config_periodicity;
+static int hf_lte_rrc_sr_config_subframe_offset;
+static int hf_lte_rrc_cdma_time;
+static int hf_lte_rrc_utc_time;
+static int hf_lte_rrc_local_time;
+static int hf_lte_rrc_absolute_time;
+static int hf_lte_rrc_transmissionModeList_r12_tm1;
+static int hf_lte_rrc_transmissionModeList_r12_tm2;
+static int hf_lte_rrc_transmissionModeList_r12_tm3;
+static int hf_lte_rrc_transmissionModeList_r12_tm4;
+static int hf_lte_rrc_transmissionModeList_r12_tm6;
+static int hf_lte_rrc_transmissionModeList_r12_tm8;
+static int hf_lte_rrc_transmissionModeList_r12_tm9;
+static int hf_lte_rrc_transmissionModeList_r12_tm10;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_0;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_1;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_2;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_3;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_4;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_5;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_6;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_7;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_8;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_9;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_10;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_11;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_12;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_13;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_14;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_15;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_16;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_17;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_18;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_19;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_20;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_21;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_22;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_23;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_24;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_25;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_26;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_27;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_28;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_29;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_30;
+static int hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_31;
+static int hf_lte_rrc_sib11_fragments;
+static int hf_lte_rrc_sib11_fragment;
+static int hf_lte_rrc_sib11_fragment_overlap;
+static int hf_lte_rrc_sib11_fragment_overlap_conflict;
+static int hf_lte_rrc_sib11_fragment_multiple_tails;
+static int hf_lte_rrc_sib11_fragment_too_long_fragment;
+static int hf_lte_rrc_sib11_fragment_error;
+static int hf_lte_rrc_sib11_fragment_count;
+static int hf_lte_rrc_sib11_reassembled_in;
+static int hf_lte_rrc_sib11_reassembled_length;
+static int hf_lte_rrc_sib11_reassembled_data;
+static int hf_lte_rrc_sib12_fragments;
+static int hf_lte_rrc_sib12_fragment;
+static int hf_lte_rrc_sib12_fragment_overlap;
+static int hf_lte_rrc_sib12_fragment_overlap_conflict;
+static int hf_lte_rrc_sib12_fragment_multiple_tails;
+static int hf_lte_rrc_sib12_fragment_too_long_fragment;
+static int hf_lte_rrc_sib12_fragment_error;
+static int hf_lte_rrc_sib12_fragment_count;
+static int hf_lte_rrc_sib12_reassembled_in;
+static int hf_lte_rrc_sib12_reassembled_length;
+static int hf_lte_rrc_sib12_reassembled_data;
+static int hf_lte_rrc_measGapPatterns_r15_bit1;
+static int hf_lte_rrc_measGapPatterns_r15_bit2;
+static int hf_lte_rrc_measGapPatterns_r15_bit3;
+static int hf_lte_rrc_measGapPatterns_r15_bit4;
+static int hf_lte_rrc_measGapPatterns_r15_bit5;
+static int hf_lte_rrc_measGapPatterns_r15_bit6;
+static int hf_lte_rrc_measGapPatterns_r15_bit7;
+static int hf_lte_rrc_measGapPatterns_r15_bit8;
/* Initialize the subtree pointers */
-static int ett_lte_rrc = -1;
+static int ett_lte_rrc;
#include "packet-lte-rrc-ett.c"
-static gint ett_lte_rrc_featureGroupIndicators = -1;
-static gint ett_lte_rrc_featureGroupIndRel9Add = -1;
-static gint ett_lte_rrc_featureGroupIndRel10 = -1;
-static gint ett_lte_rrc_absTimeInfo = -1;
-static gint ett_lte_rrc_nas_SecurityParam = -1;
-static gint ett_lte_rrc_targetRAT_MessageContainer = -1;
-static gint ett_lte_rrc_siPsiSibContainer = -1;
-static gint ett_lte_rrc_dedicatedInfoNAS = -1;
-static gint ett_lte_rrc_timeInfo = -1;
-static gint ett_lte_rrc_serialNumber = -1;
-static gint ett_lte_rrc_warningType = -1;
-static gint ett_lte_rrc_dataCodingScheme = -1;
-static gint ett_lte_rrc_warningMessageSegment = -1;
-static gint ett_lte_rrc_interBandTDD_CA_WithDifferentConfig = -1;
-static gint ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12 = -1;
-static gint ett_lte_rrc_aperiodicCSI_Reporting_r13 = -1;
-static gint ett_lte_rrc_codebook_HARQ_ACK_r13 = -1;
-static gint ett_lte_rrc_sr_ConfigIndex = -1;
-static gint ett_lte_rrc_transmissionModeList_r12 = -1;
-static gint ett_lte_rrc_modifiedMPR_Behavior_r10 = -1;
-static gint ett_lte_rrc_sib11_fragment = -1;
-static gint ett_lte_rrc_sib11_fragments = -1;
-static gint ett_lte_rrc_sib12_fragment = -1;
-static gint ett_lte_rrc_sib12_fragments = -1;
-static gint ett_lte_rrc_nr_SecondaryCellGroupConfig_r15 = -1;
-static gint ett_lte_rrc_nr_RadioBearerConfig_r15 = -1;
-static gint ett_lte_rrc_nr_RadioBearerConfigS_r15 = -1;
-static gint ett_lte_rrc_sl_ConfigDedicatedForNR_r16 = -1;
-static gint ett_lte_rrc_nr_SecondaryCellGroupConfig = -1;
-static gint ett_lte_rrc_scg_ConfigResponseNR_r15 = -1;
-static gint ett_lte_rrc_scg_ConfigResponseNR_r16 = -1;
-static gint ett_lte_rrc_measResultSCG_r15 = -1;
-static gint ett_lte_rrc_measResultSCG_r16 = -1;
-static gint ett_lte_rrc_ul_DCCH_MessageNR_r15 = -1;
-static gint ett_lte_rrc_ul_DCCH_MessageNR_r16 = -1;
-static gint ett_lte_rrc_sourceRB_ConfigNR_r15 = -1;
-static gint ett_lte_rrc_sourceRB_ConfigSN_NR_r15 = -1;
-static gint ett_lte_rrc_sourceOtherConfigSN_NR_r15 = -1;
-static gint ett_lte_rrc_sourceContextEN_DC_r15 = -1;
-static gint ett_lte_rrc_requestedFreqBandsNR_MRDC_r15 = -1;
-static gint ett_lte_rrc_measGapPatterns_r15 = -1;
-static gint ett_lte_rrc_nas_Container_r15 = -1;
-static gint ett_lte_rrc_sourceRB_ConfigIntra5GC_r15 = -1;
-static gint ett_lte_rrc_selectedbandCombinationInfoEN_DC_v1540 = -1;
-static gint ett_lte_rrc_requestedCapabilityCommon_r15 = -1;
-static gint ett_lte_rrc_sidelinkUEInformationNR_r16 = -1;
-static gint ett_lte_rrc_ueAssistanceInformationNR_r16 = -1;
-static gint ett_lte_rrc_sl_ParameterNR_r16 = -1;
-static gint ett_lte_rrc_v2x_BandParametersNR_r16 = -1;
-static gint ett_lte_rrc_ueAssistanceInformationNR_SCG_r16 = -1;
-static gint ett_lte_rrc_assistanceDataSIB_Element_r15 = -1;
-
-static expert_field ei_lte_rrc_number_pages_le15 = EI_INIT;
-static expert_field ei_lte_rrc_si_info_value_changed = EI_INIT;
-static expert_field ei_lte_rrc_sibs_changing = EI_INIT;
-static expert_field ei_lte_rrc_sibs_changing_edrx = EI_INIT;
-static expert_field ei_lte_rrc_earthquake_warning_sys = EI_INIT;
-static expert_field ei_lte_rrc_commercial_mobile_alert_sys = EI_INIT;
-static expert_field ei_lte_rrc_unexpected_type_value = EI_INIT;
-static expert_field ei_lte_rrc_unexpected_length_value = EI_INIT;
-static expert_field ei_lte_rrc_too_many_group_a_rapids = EI_INIT;
-static expert_field ei_lte_rrc_invalid_drx_config = EI_INIT;
+static gint ett_lte_rrc_featureGroupIndicators;
+static gint ett_lte_rrc_featureGroupIndRel9Add;
+static gint ett_lte_rrc_featureGroupIndRel10;
+static gint ett_lte_rrc_absTimeInfo;
+static gint ett_lte_rrc_nas_SecurityParam;
+static gint ett_lte_rrc_targetRAT_MessageContainer;
+static gint ett_lte_rrc_siPsiSibContainer;
+static gint ett_lte_rrc_dedicatedInfoNAS;
+static gint ett_lte_rrc_timeInfo;
+static gint ett_lte_rrc_serialNumber;
+static gint ett_lte_rrc_warningType;
+static gint ett_lte_rrc_dataCodingScheme;
+static gint ett_lte_rrc_warningMessageSegment;
+static gint ett_lte_rrc_interBandTDD_CA_WithDifferentConfig;
+static gint ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12;
+static gint ett_lte_rrc_aperiodicCSI_Reporting_r13;
+static gint ett_lte_rrc_codebook_HARQ_ACK_r13;
+static gint ett_lte_rrc_sr_ConfigIndex;
+static gint ett_lte_rrc_transmissionModeList_r12;
+static gint ett_lte_rrc_modifiedMPR_Behavior_r10;
+static gint ett_lte_rrc_sib11_fragment;
+static gint ett_lte_rrc_sib11_fragments;
+static gint ett_lte_rrc_sib12_fragment;
+static gint ett_lte_rrc_sib12_fragments;
+static gint ett_lte_rrc_nr_SecondaryCellGroupConfig_r15;
+static gint ett_lte_rrc_nr_RadioBearerConfig_r15;
+static gint ett_lte_rrc_nr_RadioBearerConfigS_r15;
+static gint ett_lte_rrc_sl_ConfigDedicatedForNR_r16;
+static gint ett_lte_rrc_nr_SecondaryCellGroupConfig;
+static gint ett_lte_rrc_scg_ConfigResponseNR_r15;
+static gint ett_lte_rrc_scg_ConfigResponseNR_r16;
+static gint ett_lte_rrc_measResultSCG_r15;
+static gint ett_lte_rrc_measResultSCG_r16;
+static gint ett_lte_rrc_ul_DCCH_MessageNR_r15;
+static gint ett_lte_rrc_ul_DCCH_MessageNR_r16;
+static gint ett_lte_rrc_sourceRB_ConfigNR_r15;
+static gint ett_lte_rrc_sourceRB_ConfigSN_NR_r15;
+static gint ett_lte_rrc_sourceOtherConfigSN_NR_r15;
+static gint ett_lte_rrc_sourceContextEN_DC_r15;
+static gint ett_lte_rrc_requestedFreqBandsNR_MRDC_r15;
+static gint ett_lte_rrc_measGapPatterns_r15;
+static gint ett_lte_rrc_nas_Container_r15;
+static gint ett_lte_rrc_sourceRB_ConfigIntra5GC_r15;
+static gint ett_lte_rrc_selectedbandCombinationInfoEN_DC_v1540;
+static gint ett_lte_rrc_requestedCapabilityCommon_r15;
+static gint ett_lte_rrc_sidelinkUEInformationNR_r16;
+static gint ett_lte_rrc_ueAssistanceInformationNR_r16;
+static gint ett_lte_rrc_sl_ParameterNR_r16;
+static gint ett_lte_rrc_v2x_BandParametersNR_r16;
+static gint ett_lte_rrc_ueAssistanceInformationNR_SCG_r16;
+static gint ett_lte_rrc_assistanceDataSIB_Element_r15;
+static gint ett_lte_rrc_overheatingAssistanceForSCG_r16;
+static gint ett_lte_rrc_overheatingAssistanceForSCG_FR2_2_r17;
+static gint ett_lte_rrc_triggerConditionSN_r17;
+
+static expert_field ei_lte_rrc_number_pages_le15;
+static expert_field ei_lte_rrc_si_info_value_changed;
+static expert_field ei_lte_rrc_sibs_changing;
+static expert_field ei_lte_rrc_sibs_changing_edrx;
+static expert_field ei_lte_rrc_earthquake_warning_sys;
+static expert_field ei_lte_rrc_commercial_mobile_alert_sys;
+static expert_field ei_lte_rrc_unexpected_type_value;
+static expert_field ei_lte_rrc_unexpected_length_value;
+static expert_field ei_lte_rrc_too_many_group_a_rapids;
+static expert_field ei_lte_rrc_invalid_drx_config;
static const unit_name_string units_sr_periods = { " SR period", " SR periods" };
static const unit_name_string units_short_drx_cycles = { " shortDRX-Cycle", " shortDRX-Cycles" };
@@ -941,7 +944,7 @@ static value_string_ext lte_rrc_messageSize_r14_vals_ext = VALUE_STRING_EXT_INIT
static void
lte_rrc_timeConnFailure_r10_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ums (%u)", 100*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ums (%u)", 100*v, v);
}
static const value_string lte_rrc_n_r12_vals[] = {
@@ -960,9 +963,9 @@ static void
lte_rrc_m_r12_fmt(gchar *s, guint32 v)
{
if (v == 255) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "255 <= f(Nr) (255)");
+ snprintf(s, ITEM_LABEL_LENGTH, "255 <= f(Nr) (255)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u <= f(Nr) < %u (%u)", v, v+1, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u <= f(Nr) < %u (%u)", v, v+1, v);
}
}
@@ -2168,13 +2171,13 @@ static void
lte_rrc_RSRP_RangeNR_r15_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRP < -156dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRP < -156dBm (0)");
} else if (v == 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-31dBm <= SS-RSRP (126)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-31dBm <= SS-RSRP (126)");
} else if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Infinity (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "Infinity (127)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SS-RSRP < %ddBm (%u)", -157+v, -156+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SS-RSRP < %ddBm (%u)", -157+v, -156+v, v);
}
}
@@ -2268,11 +2271,11 @@ static void
lte_rrc_RSRQ_RangeNR_r15_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRQ < -43dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRQ < -43dB (0)");
} else if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "20dB < SS-RSRQ (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "20dB < SS-RSRQ (127)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-RSRQ < %.1fdB (%u)", (((float)v-1)/2)-43, ((float)v/2)-43, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-RSRQ < %.1fdB (%u)", (((float)v-1)/2)-43, ((float)v/2)-43, v);
}
}
@@ -2316,20 +2319,20 @@ static value_string_ext lte_rrc_MBSFN_RSRQ_Range_vals_ext = VALUE_STRING_EXT_INI
static void
lte_rrc_availableAdmissionCapacityWLAN_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uus/s (%u)", 32*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uus/s (%u)", 32*v, v);
}
static void
lte_rrc_ue_RxTxTimeDiffResult_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "T < 2Ts (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "T < 2Ts (0)");
} else if (v < 2048) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", v*2, (v+1)*2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", v*2, (v+1)*2, v);
} else if (v < 4095) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", (v*8)-12288, ((v+1)*8)-12288, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs <= T < %uTs (%u)", (v*8)-12288, ((v+1)*8)-12288, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "20472Ts <= T (4095)");
+ snprintf(s, ITEM_LABEL_LENGTH, "20472Ts <= T (4095)");
}
}
@@ -2534,18 +2537,18 @@ static value_string_ext lte_rrc_excessDelay_r13_vals_ext = VALUE_STRING_EXT_INIT
static void
lte_rrc_averageDelay_r16_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/10, v);
}
static void
lte_rrc_subframeBoundaryOffsetResult_r13_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "abs(deltaZ) < 700Ts (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "abs(deltaZ) < 700Ts (0)");
} else if (v == 63) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "1320Ts < abs(deltaZ) (63)");
+ snprintf(s, ITEM_LABEL_LENGTH, "1320Ts < abs(deltaZ) (63)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs < abs(deltaZ) <= %uTs (%u)", 700+(v-1)*10, 700+v*10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs < abs(deltaZ) <= %uTs (%u)", 700+(v-1)*10, 700+v*10, v);
}
}
@@ -2553,11 +2556,11 @@ static void
lte_rrc_RS_SINR_Range_r13_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RS-SINR < -23dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RS-SINR < -23dB (0)");
} else if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "40dB <= RS-SINR (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "40dB <= RS-SINR (127)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
}
}
@@ -2565,11 +2568,11 @@ static void
lte_rrc_RS_SINR_RangeNR_r15_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SS-SINR < -23dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SS-SINR < -23dB (0)");
} else if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "40dB < SS-SINR (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "40dB < SS-SINR (127)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
}
}
@@ -2577,47 +2580,47 @@ static void
lte_rrc_RSSI_Range_r13_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
} else if (v == 76) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-25dBm <= RSSI (76)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-25dBm <= RSSI (76)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSSI < %ddBm (%u)", -100+(v-1), -100+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSSI < %ddBm (%u)", -100+(v-1), -100+v, v);
}
}
static void
lte_rrc_scptm_FreqOffset_r14_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%udB (%u)", 2*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%udB (%u)", 2*v, v);
}
static void
lte_rrc_offsetDFN_r14_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "0ms (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "0ms (0)");
} else if (v < 1000) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.3fms (%u)", ((float)v)/1000, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.3fms (%u)", ((float)v)/1000, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "1ms (1000)");
+ snprintf(s, ITEM_LABEL_LENGTH, "1ms (1000)");
}
}
static void
lte_rrc_thresholdWLAN_RSSI_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", -128+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", -128+v, v);
}
static void
lte_rrc_cr_Limit_r14_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "0 (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "0 (0)");
} else if (v < 10000) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.4f (%u)", ((float)v)/10000, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.4f (%u)", ((float)v)/10000, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "1 (10000)");
+ snprintf(s, ITEM_LABEL_LENGTH, "1 (10000)");
}
}
@@ -2625,18 +2628,18 @@ static void
lte_rrc_SL_CBR_r14_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "0 (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "0 (0)");
} else if (v < 100) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2f (%u)", ((float)v)/100, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2f (%u)", ((float)v)/100, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "1 (100)");
+ snprintf(s, ITEM_LABEL_LENGTH, "1 (100)");
}
}
static void
lte_rrc_threshS_RSSI_CBR_r14_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", -112+(2*v), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", -112+(2*v), v);
}
static const value_string lte_rrc_schedulingInfoSIB1_NB_r13_vals[] = {
@@ -2660,11 +2663,11 @@ static void
lte_rrc_NRSRP_Range_NB_r14_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "NRSRP < -156dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "NRSRP < -156dBm (0)");
} else if (v < 113) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= NRSRP < %ddBm (%u)", v-157, v-156, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= NRSRP < %ddBm (%u)", v-157, v-156, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= NRSRP (97)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= NRSRP (97)");
}
}
@@ -2673,32 +2676,32 @@ lte_rrc_NRSRQ_Range_NB_r14_fmt(gchar *s, guint32 v)
{
gint32 rsrq = (guint32)v;
if (rsrq == -30) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -34dB (-30)");
+ snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -34dB (-30)");
} else if (rsrq < 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%d)", (((float)rsrq-1)/2)-19, ((float)rsrq/2)-19, rsrq);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%d)", (((float)rsrq-1)/2)-19, ((float)rsrq/2)-19, rsrq);
} else if (rsrq == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -19.5dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "NRSRQ < -19.5dB (0)");
} else if (rsrq < 34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%d)", (((float)rsrq-1)/2)-19.5, ((float)rsrq/2)-19.5, rsrq);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%d)", (((float)rsrq-1)/2)-19.5, ((float)rsrq/2)-19.5, rsrq);
} else if (rsrq == 34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-3 <= NRSRQ (34)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-3 <= NRSRQ (34)");
} else if (rsrq < 46) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%d)", (((float)rsrq-1)/2)-20, ((float)rsrq/2)-20, rsrq);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= NRSRQ < %.1fdB (%d)", (((float)rsrq-1)/2)-20, ((float)rsrq/2)-20, rsrq);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "2.5dB <= NRSRQ (46)");
+ snprintf(s, ITEM_LABEL_LENGTH, "2.5dB <= NRSRQ (46)");
}
}
static void
lte_rrc_mbms_MaxBW_r14_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u MHz (%u)", 40*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u MHz (%u)", 40*v, v);
}
static void
lte_rrc_dl_1024QAM_TotalWeightedLayers_r15_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u (%u)", 10+(2*v), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u (%u)", 10+(2*v), v);
}
static void
@@ -2953,7 +2956,7 @@ lte_rrc_localTimeOffset_fmt(gchar *s, guint32 v)
{
gint32 time_offset = (gint32) v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "UTC time %c %dhr %dmin (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "UTC time %c %dhr %dmin (%d)",
(time_offset < 0) ? '-':'+', abs(time_offset) >> 2,
(abs(time_offset) & 0x03) * 15, time_offset);
}
@@ -3643,6 +3646,22 @@ dissect_lte_rrc_ueradioaccesscapabilityinformation_msg(tvbuff_t* tvb, packet_inf
return tvb_captured_length(tvb);
}
+static int
+dissect_lte_rrc_dissect_SystemInformationBlockType1_v890_IEs(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* lte_rrc_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "LTE RRC SystemInformationBlockType1-v890-IEs");
+ col_set_str(pinfo->cinfo, COL_INFO, "LTE RRC SystemInformationBlockType1-v890-IEs");
+
+ ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
+ lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
+ dissect_SystemInformationBlockType1_v890_IEs_PDU(tvb, pinfo, lte_rrc_tree, NULL);
+ return tvb_captured_length(tvb);
+}
+
+
/*--- proto_register_rrc -------------------------------------------*/
void proto_register_lte_rrc(void) {
@@ -4066,7 +4085,7 @@ void proto_register_lte_rrc(void) {
NULL, HFILL }},
{ &hf_lte_rrc_warningMessageSegment_decoded_page,
{ "Decoded Page", "lte-rrc.warningMessageSegment.decoded_page",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1,
{ "Bit 1", "lte-rrc.interBandTDD_CA_WithDifferentConfig.bit1",
@@ -4461,7 +4480,10 @@ void proto_register_lte_rrc(void) {
&ett_lte_rrc_sl_ParameterNR_r16,
&ett_lte_rrc_v2x_BandParametersNR_r16,
&ett_lte_rrc_ueAssistanceInformationNR_SCG_r16,
- &ett_lte_rrc_assistanceDataSIB_Element_r15
+ &ett_lte_rrc_assistanceDataSIB_Element_r15,
+ &ett_lte_rrc_overheatingAssistanceForSCG_r16,
+ &ett_lte_rrc_overheatingAssistanceForSCG_FR2_2_r17,
+ &ett_lte_rrc_triggerConditionSN_r17
};
static ei_register_info ei[] = {
@@ -4510,7 +4532,7 @@ void proto_register_lte_rrc(void) {
register_dissector("lte_rrc.bcch_dl_sch.mbms", dissect_lte_rrc_BCCH_DL_SCH_MBMS, proto_lte_rrc);
register_dissector("lte-rrc.ue_eutra_cap.msg", dissect_lte_rrc_ue_eutra_capability_msg, proto_lte_rrc);
register_dissector("lte-rrc.ue_radio_access_cap_info.msg", dissect_lte_rrc_ueradioaccesscapabilityinformation_msg, proto_lte_rrc);
-
+ register_dissector("lte-rrc.systeminformationblocktype1_v890_ies", dissect_lte_rrc_dissect_SystemInformationBlockType1_v890_IEs, proto_lte_rrc);
/* Register fields and subtrees */
proto_register_field_array(proto_lte_rrc, hf, array_length(hf));
diff --git a/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn b/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn
index a8ccf4e640..25f239bc59 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Common definitions
@@ -6,10 +6,10 @@
-- **************************************************************
M2AP-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-CommonDataTypes (3) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/m2ap/M2AP-Constants.asn b/epan/dissectors/asn1/m2ap/M2AP-Constants.asn
index a38cb9df89..a13990cccc 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-Constants.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Constant definitions
@@ -6,10 +6,10 @@
-- **************************************************************
M2AP-Constants {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-Constants (4) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -44,11 +44,11 @@ id-mbmsOverloadNotification ProcedureCode ::= 12
--
-- **************************************************************
-maxnoofMBSFNareas INTEGER ::= 256
+maxnoofMBSFNareas INTEGER ::= 256
maxnoofMBSFN-Allocations INTEGER ::= 8
maxnoofPMCHsperMBSFNarea INTEGER ::= 15
maxnoofCells INTEGER ::= 256
-maxnoofMBMSServiceAreasPerCell INTEGER ::= 256
+maxnoofMBMSServiceAreasPerCell INTEGER ::= 256
maxnoofSessionsPerPMCH INTEGER ::= 29
maxnooferrors INTEGER ::= 256
maxNrOfIndividualM2ConnectionsToReset INTEGER ::= 256
@@ -110,5 +110,9 @@ id-Repetition-PeriodExtended ProtocolIE-ID ::= 47
id-MCH-Scheduling-PeriodExtended2 ProtocolIE-ID ::= 48
id-Subcarrier-SpacingMBMS ProtocolIE-ID ::= 49
id-SubframeAllocationExtended ProtocolIE-ID ::= 50
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item ProtocolIE-ID ::= 51
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea ProtocolIE-ID ::= 52
+id-SubframeAllocationFurtherExtension ProtocolIE-ID ::= 53
+id-AdditionalConfigParameters ProtocolIE-ID ::= 54
END
diff --git a/epan/dissectors/asn1/m2ap/M2AP-Containers.asn b/epan/dissectors/asn1/m2ap/M2AP-Containers.asn
index 7c7740654a..1be565830e 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-Containers.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Container definitions
diff --git a/epan/dissectors/asn1/m2ap/M2AP-IEs.asn b/epan/dissectors/asn1/m2ap/M2AP-IEs.asn
index 85f25047c3..0996c14f8b 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-IEs.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Information Element Definitions
@@ -21,6 +21,8 @@ IMPORTS
id-Repetition-PeriodExtended,
id-Subcarrier-SpacingMBMS,
id-SubframeAllocationExtended,
+ id-SubframeAllocationFurtherExtension,
+ id-AdditionalConfigParameters,
maxnoofMBSFNareas,
maxnoofPMCHsperMBSFNarea,
maxnoofCells,
@@ -45,6 +47,16 @@ FROM M2AP-Containers;
-- A
+AdditionalConfigParameters ::= SEQUENCE {
+ pmch-Bandwidth PMCH-Bandwidth,
+ iE-Extensions ProtocolExtensionContainer { {AdditionalConfigParameters-ExtIEs} } OPTIONAL
+}
+
+AdditionalConfigParameters-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
AllocatedSubframesEnd ::= INTEGER (0..1535)
AllocationAndRetentionPriority ::= SEQUENCE {
@@ -323,7 +335,8 @@ MBSFN-Subframe-Configuration ::= SEQUENCE {
}
MBSFN-Subframe-Configuration-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
- {ID id-SubframeAllocationExtended CRITICALITY reject EXTENSION SubframeAllocationExtended PRESENCE optional},
+ {ID id-SubframeAllocationExtended CRITICALITY reject EXTENSION SubframeAllocationExtended PRESENCE optional}|
+ {ID id-SubframeAllocationFurtherExtension CRITICALITY reject EXTENSION SubframeAllocationFurtherExtension PRESENCE optional},
...
}
@@ -351,6 +364,26 @@ MCCHrelatedBCCH-ConfigPerMBSFNArea-Item-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
...
}
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item ::= SEQUENCE {
+ mbsfnArea MBSFN-Area-ID,
+ repetitionPeriodExpanded ENUMERATED {rf1, rf2, rf4, rf8, rf16, rf32, rf64, rf128, rf256, ...},
+ offset INTEGER (0..10),
+ modificationPeriodExpanded ENUMERATED {rf1, rf2, rf4, rf8, rf16, rf32, rf64, rf128, rf256, rf512, rf1024, ...},
+ subframeAllocationInfoExpanded BIT STRING (SIZE(10)),
+ modulationAndCodingScheme ENUMERATED {n2, n7, n13, n19},
+ subcarrier-SpacingMBMSExpanded ENUMERATED {khz-7dot5, khz-2dot5, khz-1dot25, khz-0dot37, ..., kHz-15},
+ timeSeparation ENUMERATED {sl2, sl4, ...} OPTIONAL,
+ cellInformationList Cell-Information-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item-ExtIEs M2AP-PROTOCOL-EXTENSION ::= {
+ -- Extension for Rel-17 to support PMCH Bandwidth values –-
+ {ID id-AdditionalConfigParameters CRITICALITY reject EXTENSION AdditionalConfigParameters PRESENCE optional},
+ ...
+}
+
MCE-ID ::= OCTET STRING (SIZE(2))
MCE-MBMS-M2AP-ID ::= INTEGER (0.. 16777215)
@@ -375,6 +408,8 @@ Modification-PeriodExtended ::= ENUMERATED {rf1, rf2, rf4, rf8, rf16, rf32, rf64
PLMN-Identity ::= OCTET STRING (SIZE(3))
+PMCH-Bandwidth ::= ENUMERATED {n40, n35, n30, ...}
+
PMCH-Configuration ::= SEQUENCE {
allocatedSubframesEnd AllocatedSubframesEnd,
dataMCS INTEGER (0..28),
@@ -444,6 +479,19 @@ SubframeAllocationExtended ::= CHOICE {
SubframeAllocationExtended-ExtIEs M2AP-PROTOCOL-IES ::= { ...
}
+SubframeAllocationFurtherExtension ::= CHOICE {
+ oneFrameFurtherExtension BIT STRING (SIZE(2)),
+ fourFrameFurtherExtension BIT STRING (SIZE(8)),
+ choice-extension ProtocolIE-Single-Container { { SubframeAllocationFurtherExtension-ExtIEs} },
+
+ ...
+}
+
+
+SubframeAllocationFurtherExtension-ExtIEs M2AP-PROTOCOL-IES ::= { ...
+}
+
+
-- T
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
diff --git a/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn b/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn
index 7884b01034..05b5598797 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- PDU definitions for M2AP.
@@ -37,6 +37,7 @@ IMPORTS
MBSFN-Subframe-Configuration,
MCCH-Update-Time,
MCCHrelatedBCCH-ConfigPerMBSFNArea-Item,
+ MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item,
MCE-MBMS-M2AP-ID,
MCEname,
PMCH-Configuration,
@@ -87,6 +88,8 @@ FROM M2AP-Containers
id-MCEname,
id-MCCHrelatedBCCH-ConfigPerMBSFNArea,
id-MCCHrelatedBCCH-ConfigPerMBSFNArea-Item,
+ id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea,
+ id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item,
id-TimeToWait,
id-ENB-MBMS-Configuration-data-List-ConfigUpdate,
id-ENB-MBMS-Configuration-data-ConfigUpdate-Item,
@@ -398,7 +401,8 @@ M2SetupResponse-Ies M2AP-PROTOCOL-IES ::= {
{ ID id-GlobalMCE-ID CRITICALITY reject TYPE GlobalMCE-ID PRESENCE mandatory }|
{ ID id-MCEname CRITICALITY ignore TYPE MCEname PRESENCE optional }|
{ ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea PRESENCE optional },
...
}
@@ -409,6 +413,13 @@ MCCHrelatedBCCH-ConfigPerMBSFNArea-ItemIEs M2AP-PROTOCOL-IES ::= {
...
}
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea ::= SEQUENCE (SIZE(1.. maxnoofMBSFNareas)) OF ProtocolIE-Single-Container { { MCCHrelatedBCCH-ExtConfigPerMBSFNArea-ItemIEs } }
+
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-ItemIEs M2AP-PROTOCOL-IES ::= {
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item PRESENCE mandatory },
+ ...
+}
+
-- **************************************************************
--
-- M2 SETUP FAILURE
@@ -465,7 +476,8 @@ ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
ENBConfigurationUpdateAcknowledge-Ies M2AP-PROTOCOL-IES ::= {
{ ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea PRESENCE optional },
...
}
@@ -504,7 +516,8 @@ MCEConfigurationUpdate ::= SEQUENCE {
MCEConfigurationUpdate-Ies M2AP-PROTOCOL-IES ::= {
{ ID id-GlobalMCE-ID CRITICALITY reject TYPE GlobalMCE-ID PRESENCE optional }|
{ ID id-MCEname CRITICALITY ignore TYPE MCEname PRESENCE optional }|
- { ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE optional },
+ { ID id-MCCHrelatedBCCH-ConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ConfigPerMBSFNArea PRESENCE optional }|
+ { ID id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea CRITICALITY reject TYPE MCCHrelatedBCCH-ExtConfigPerMBSFNArea PRESENCE optional },
...
}
diff --git a/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn b/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn
index f6c623caec..4cc9a50801 100644
--- a/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/m2ap/M2AP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.443 V15.0.0 (2018-09)
+-- 3GPP TS 36.443 V17.0.1 (2022-04)
-- **************************************************************
--
-- Elementary Procedure definitions
@@ -6,10 +6,10 @@
-- **************************************************************
M2AP-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-PDU-Descriptions (0) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -29,7 +29,7 @@ FROM M2AP-CommonDataTypes
SessionStartResponse,
SessionStartFailure,
SessionStopRequest,
- SessionStopResponse,
+ SessionStopResponse,
SessionUpdateRequest,
SessionUpdateResponse,
SessionUpdateFailure,
@@ -56,7 +56,7 @@ FROM M2AP-CommonDataTypes
FROM M2AP-PDU-Contents
id-sessionStart,
- id-sessionStop,
+ id-sessionStop,
id-sessionUpdate,
id-mbmsServiceCounting,
id-mbmsServiceCountingResultsReport,
diff --git a/epan/dissectors/asn1/m2ap/m2ap.cnf b/epan/dissectors/asn1/m2ap/m2ap.cnf
index 76cc88dd16..f95a13576d 100644
--- a/epan/dissectors/asn1/m2ap/m2ap.cnf
+++ b/epan/dissectors/asn1/m2ap/m2ap.cnf
@@ -229,6 +229,10 @@ id-Repetition-PeriodExtended ProtocolIE-ID
id-MCH-Scheduling-PeriodExtended2 ProtocolIE-ID
id-Subcarrier-SpacingMBMS ProtocolIE-ID
id-SubframeAllocationExtended ProtocolIE-ID
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item ProtocolIE-ID
+id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea ProtocolIE-ID
+id-SubframeAllocationFurtherExtension ProtocolIE-ID
+id-AdditionalConfigParameters ProtocolIE-ID
#.REGISTER
@@ -274,6 +278,8 @@ Active-MBMS-Session-List N m2ap.ies id-Active-MBMS-
MBMS-Suspension-Notification-List N m2ap.ies id-MBMS-Suspension-Notification-List
MBMS-Suspension-Notification-Item N m2ap.ies id-MBMS-Suspension-Notification-Item
SC-PTM-Information N m2ap.ies id-SC-PTM-Information
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item N m2ap.ies id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea-Item
+MCCHrelatedBCCH-ExtConfigPerMBSFNArea N m2ap.ies id-MCCHrelatedBCCH-ExtConfigPerMBSFNArea
#M2AP-PROTOCOL-EXTENSION
Modulation-Coding-Scheme2 N m2ap.extension id-Modulation-Coding-Scheme2
@@ -283,6 +289,8 @@ Modification-PeriodExtended N m2ap.extension id-Modifi
MCH-Scheduling-PeriodExtended2 N m2ap.extension id-MCH-Scheduling-PeriodExtended2
SubframeAllocationExtended N m2ap.extension id-SubframeAllocationExtended
Subcarrier-SpacingMBMS N m2ap.extension id-Subcarrier-SpacingMBMS
+SubframeAllocationFurtherExtension N m2ap.extension id-SubframeAllocationFurtherExtension
+AdditionalConfigParameters N m2ap.extension id-AdditionalConfigParameters
#M2AP-ELEMENTARY-PROCEDURE
SessionStartRequest N m2ap.proc.imsg id-sessionStart
diff --git a/epan/dissectors/asn1/m2ap/packet-m2ap-template.c b/epan/dissectors/asn1/m2ap/packet-m2ap-template.c
index bad77e2534..82cf49e2d1 100644
--- a/epan/dissectors/asn1/m2ap/packet-m2ap-template.c
+++ b/epan/dissectors/asn1/m2ap/packet-m2ap-template.c
@@ -1,6 +1,6 @@
/* packet-m2ap.c
* Routines for M2 Application Protocol packet dissection
- * Copyright 2016, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2016-2023, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -8,7 +8,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * Reference: 3GPP TS 36.443 v15.0.0
+ * Reference: 3GPP TS 36.443 v17.0.1
*/
#include "config.h"
@@ -35,19 +35,19 @@ void proto_reg_handoff_m2ap(void);
#include "packet-m2ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_m2ap = -1;
+static int proto_m2ap;
-static int hf_m2ap_IPAddress_v4 = -1;
-static int hf_m2ap_IPAddress_v6 = -1;
+static int hf_m2ap_IPAddress_v4;
+static int hf_m2ap_IPAddress_v6;
#include "packet-m2ap-hf.c"
/* Initialize the subtree pointers */
-static int ett_m2ap = -1;
-static int ett_m2ap_PLMN_Identity = -1;
-static int ett_m2ap_IPAddress = -1;
+static int ett_m2ap;
+static int ett_m2ap_PLMN_Identity;
+static int ett_m2ap_IPAddress;
#include "packet-m2ap-ett.c"
-static expert_field ei_m2ap_invalid_ip_address_len = EI_INIT;
+static expert_field ei_m2ap_invalid_ip_address_len;
struct m2ap_private_data {
e212_number_type_t number_type;
diff --git a/epan/dissectors/asn1/m3ap/packet-m3ap-template.c b/epan/dissectors/asn1/m3ap/packet-m3ap-template.c
index d2c2c38951..5718898825 100644
--- a/epan/dissectors/asn1/m3ap/packet-m3ap-template.c
+++ b/epan/dissectors/asn1/m3ap/packet-m3ap-template.c
@@ -39,20 +39,20 @@ static dissector_handle_t m3ap_handle=NULL;
#include "packet-m3ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_m3ap = -1;
+static int proto_m3ap;
-static int hf_m3ap_Absolute_Time_ofMBMS_Data_value = -1;
-static int hf_m3ap_IPAddress_v4 = -1;
-static int hf_m3ap_IPAddress_v6 = -1;
+static int hf_m3ap_Absolute_Time_ofMBMS_Data_value;
+static int hf_m3ap_IPAddress_v4;
+static int hf_m3ap_IPAddress_v6;
#include "packet-m3ap-hf.c"
/* Initialize the subtree pointers */
-static int ett_m3ap = -1;
-static int ett_m3ap_IPAddress = -1;
+static int ett_m3ap;
+static int ett_m3ap_IPAddress;
#include "packet-m3ap-ett.c"
-static expert_field ei_m3ap_invalid_ip_address_len = EI_INIT;
+static expert_field ei_m3ap_invalid_ip_address_len;
struct m3ap_private_data {
e212_number_type_t number_type;
diff --git a/epan/dissectors/asn1/mms/mms.cnf b/epan/dissectors/asn1/mms/mms.cnf
index 060654cb43..30adfa666b 100644
--- a/epan/dissectors/asn1/mms/mms.cnf
+++ b/epan/dissectors/asn1/mms/mms.cnf
@@ -111,7 +111,7 @@ AlterEventEnrollment-Response/currentState/state ABBREV=alterEventEnrollment-
milliseconds = tvb_get_ntohl(tvb, offset);
ptime = signed_time_msecs_to_str(actx->pinfo->pool, milliseconds);
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
}
@@ -130,7 +130,7 @@ AlterEventEnrollment-Response/currentState/state ABBREV=alterEventEnrollment-
ts.nsecs = (milliseconds %% 1000) * 1000000U;
ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, TRUE);
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
}
@@ -140,12 +140,10 @@ AlterEventEnrollment-Response/currentState/state ABBREV=alterEventEnrollment-
proto_tree_add_expert_format(tree, actx->pinfo, &ei_mms_mal_timeofday_encoding,
tvb, offset, len, "BER Error: malformed TimeOfDay encoding, length must be 4 or 6 bytes");
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
}
- return offset;
-
#.FN_BODY UtcTime
@@ -162,7 +160,7 @@ AlterEventEnrollment-Response/currentState/state ABBREV=alterEventEnrollment-
{
proto_tree_add_expert_format(tree, actx->pinfo, &ei_mms_mal_utctime_encoding,
tvb, offset, len, "BER Error: malformed IEC61850 UTCTime encoding, length must be 8 bytes");
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
}
@@ -178,12 +176,11 @@ AlterEventEnrollment-Response/currentState/state ABBREV=alterEventEnrollment-
ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, TRUE);
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
}
- return offset;
#.FN_BODY Unsigned32 VAL_PTR=&val
guint32 val;
@@ -201,4 +198,4 @@ AlterEventEnrollment-Response/currentState/state ABBREV=alterEventEnrollment-
if ((hf_index == hf_mms_domainId) || (hf_index == hf_mms_itemId)) {
if (tvb_get_guint8(tvb, offset_id) == 0x1a)
private_data_add_moreCinfo_id(actx,tvb);
- } \ No newline at end of file
+ }
diff --git a/epan/dissectors/asn1/mms/packet-mms-template.c b/epan/dissectors/asn1/mms/packet-mms-template.c
index d5d004d700..b1f790248d 100644
--- a/epan/dissectors/asn1/mms/packet-mms-template.c
+++ b/epan/dissectors/asn1/mms/packet-mms-template.c
@@ -29,17 +29,17 @@ void proto_register_mms(void);
void proto_reg_handoff_mms(void);
/* Initialize the protocol and registered fields */
-static int proto_mms = -1;
+static int proto_mms;
#include "packet-mms-hf.c"
/* Initialize the subtree pointers */
-static gint ett_mms = -1;
+static gint ett_mms;
#include "packet-mms-ett.c"
-static expert_field ei_mms_mal_timeofday_encoding = EI_INIT;
-static expert_field ei_mms_mal_utctime_encoding = EI_INIT;
-static expert_field ei_mms_zero_pdu = EI_INIT;
+static expert_field ei_mms_mal_timeofday_encoding;
+static expert_field ei_mms_mal_utctime_encoding;
+static expert_field ei_mms_zero_pdu;
/*****************************************************************************/
/* Packet private data */
@@ -84,7 +84,7 @@ static void
private_data_add_preCinfo(asn1_ctx_t *actx, guint32 val)
{
mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
- g_snprintf(private_data->preCinfo, BUFFER_SIZE_PRE, "%02d ", val);
+ snprintf(private_data->preCinfo, BUFFER_SIZE_PRE, "%02d ", val);
}
static char*
@@ -107,7 +107,7 @@ static void
private_data_add_moreCinfo_float(asn1_ctx_t *actx, tvbuff_t *tvb)
{
mms_private_data_t *private_data = (mms_private_data_t*)mms_get_private_data(actx);
- g_snprintf(private_data->moreCinfo, BUFFER_SIZE_MORE,
+ snprintf(private_data->moreCinfo, BUFFER_SIZE_MORE,
" %f", tvb_get_ieee_float(tvb, 1, ENC_BIG_ENDIAN));
}
@@ -200,7 +200,7 @@ dissect_mms_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, voi
gint idx = 0 ;
gint8 tmp_class;
- gboolean tmp_pc;
+ bool tmp_pc;
gint32 tmp_tag;
/* first, check do we have at least 2 bytes (pdu) */
diff --git a/epan/dissectors/asn1/mpeg-audio/packet-mpeg-audio-template.c b/epan/dissectors/asn1/mpeg-audio/packet-mpeg-audio-template.c
index a75f5e8b14..2e7e1be970 100644
--- a/epan/dissectors/asn1/mpeg-audio/packet-mpeg-audio-template.c
+++ b/epan/dissectors/asn1/mpeg-audio/packet-mpeg-audio-template.c
@@ -24,14 +24,58 @@
void proto_register_mpeg_audio(void);
void proto_reg_handoff_mpeg_audio(void);
-static int proto_mpeg_audio = -1;
+dissector_handle_t mpeg_audio_handle;
-static int hf_mpeg_audio_data = -1;
-static int hf_mpeg_audio_padbytes = -1;
-static int hf_id3v1 = -1;
-static int hf_id3v2 = -1;
+static int proto_mpeg_audio;
+static dissector_handle_t id3v2_handle;
+
+static int hf_mpeg_audio_header;
+static int hf_mpeg_audio_data;
+static int hf_mpeg_audio_padbytes;
+static int hf_id3v1;
+
+static int ett_mpeg_audio;
static gboolean
+test_mpeg_audio(tvbuff_t *tvb, int offset)
+{
+ guint32 hdr;
+ struct mpa mpa;
+
+ if (!tvb_bytes_exist(tvb, offset, 4))
+ return FALSE;
+ if (tvb_strneql(tvb, offset, "TAG", 3) == 0)
+ return TRUE;
+ if (tvb_strneql(tvb, offset, "ID3", 3) == 0)
+ return TRUE;
+
+ hdr = tvb_get_guint32(tvb, offset, ENC_BIG_ENDIAN);
+ MPA_UNMARSHAL(&mpa, hdr);
+ return MPA_VALID(&mpa);
+}
+
+static int
+mpeg_resync(tvbuff_t *tvb, int offset)
+{
+ guint32 hdr;
+ struct mpa mpa;
+
+ /* This only looks to resync on another frame; it doesn't
+ * look for an ID3 tag.
+ */
+ offset = tvb_find_guint8(tvb, offset, -1, '\xff');
+ while (offset != -1 && tvb_bytes_exist(tvb, offset, 4)) {
+ hdr = tvb_get_guint32(tvb, offset, ENC_BIG_ENDIAN);
+ MPA_UNMARSHAL(&mpa, hdr);
+ if (MPA_VALID(&mpa)) {
+ return offset;
+ }
+ offset = tvb_find_guint8(tvb, offset + 1, -1, '\xff');
+ }
+ return tvb_reported_length(tvb);
+}
+
+static int
dissect_mpeg_audio_frame(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
guint32 h;
@@ -42,16 +86,13 @@ dissect_mpeg_audio_frame(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static const char *version_names[] = { "1", "2", "2.5" };
if (!tvb_bytes_exist(tvb, 0, 4))
- return FALSE; /* not enough data for an MPEG audio frame */
+ return 0;
h = tvb_get_ntohl(tvb, 0);
MPA_UNMARSHAL(&mpa, h);
- if (!MPA_SYNC_VALID(&mpa))
- return FALSE;
- if (!MPA_VERSION_VALID(&mpa))
- return FALSE;
- if (!MPA_LAYER_VALID(&mpa))
- return FALSE;
+ if (!MPA_SYNC_VALID(&mpa) || !MPA_VERSION_VALID(&mpa) || !MPA_LAYER_VALID(&mpa)) {
+ return 0;
+ }
col_add_fstr(pinfo->cinfo, COL_PROTOCOL,
"MPEG-%s", version_names[mpa_version(&mpa)]);
@@ -65,12 +106,9 @@ dissect_mpeg_audio_frame(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
mpa_frequency(&mpa) / (float)1000);
}
- if (tree == NULL)
- return TRUE;
-
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_mpeg_audio_Audio(tvb, offset, &asn1_ctx,
- tree, proto_mpeg_audio);
+ tree, hf_mpeg_audio_header);
if (data_size > 0) {
unsigned int padding;
@@ -81,52 +119,65 @@ dissect_mpeg_audio_frame(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (padding > 0) {
proto_tree_add_item(tree, hf_mpeg_audio_padbytes, tvb,
offset / 8, padding, ENC_NA);
+ offset += padding * 8;
}
}
- return TRUE;
+ return offset / 8;
}
-static void
+static int
dissect_id3v1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
asn1_ctx_t asn1_ctx;
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ID3v1");
col_clear(pinfo->cinfo, COL_INFO);
- if (tree == NULL)
- return;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
- dissect_mpeg_audio_ID3v1(tvb, 0, &asn1_ctx,
+ return dissect_mpeg_audio_ID3v1(tvb, 0, &asn1_ctx,
tree, hf_id3v1);
}
-static void
-dissect_id3v2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int
+dissect_mpeg_audio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- col_set_str(pinfo->cinfo, COL_PROTOCOL, "ID3v2");
- col_clear(pinfo->cinfo, COL_INFO);
- proto_tree_add_item(tree, hf_id3v2, tvb,
- 0, -1, ENC_NA);
+ proto_item *ti;
+ proto_tree *mpeg_audio_tree;
+
+ int magic, offset = 0;
+ guint32 frame_len;
+ tvbuff_t *next_tvb;
+
+ ti = proto_tree_add_item(tree, proto_mpeg_audio, tvb, offset, -1, ENC_NA);
+ mpeg_audio_tree = proto_item_add_subtree(ti, ett_mpeg_audio);
+ while (tvb_reported_length_remaining(tvb, offset) >= 4) {
+ next_tvb = tvb_new_subset_remaining(tvb, offset);
+ magic = tvb_get_ntoh24(next_tvb, 0);
+ switch (magic) {
+ case 0x544147: /* TAG */
+ offset += dissect_id3v1(next_tvb, pinfo, mpeg_audio_tree);
+ break;
+ case 0x494433: /* ID3 */
+ offset += call_dissector(id3v2_handle, tvb, pinfo, mpeg_audio_tree);
+ break;
+ default:
+ frame_len = dissect_mpeg_audio_frame(next_tvb, pinfo, mpeg_audio_tree);
+ if (frame_len == 0) {
+ frame_len = mpeg_resync(next_tvb, 0);
+ }
+ offset += frame_len;
+ }
+ }
+ return tvb_reported_length(tvb);
}
static gboolean
-dissect_mpeg_audio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+dissect_mpeg_audio_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
{
- int magic;
-
- if (!tvb_bytes_exist(tvb, 0, 3))
- return FALSE; /* not enough data for an ID tag or audio frame */
- magic = tvb_get_ntoh24(tvb, 0);
- switch (magic) {
- case 0x544147: /* TAG */
- dissect_id3v1(tvb, pinfo, tree);
- return TRUE;
- case 0x494433: /* ID3 */
- dissect_id3v2(tvb, pinfo, tree);
- return TRUE;
- default:
- return dissect_mpeg_audio_frame(tvb, pinfo, tree);
+ if (!test_mpeg_audio(tvb, 0)) {
+ return FALSE;
}
+ dissect_mpeg_audio(tvb, pinfo, tree, data);
+ return TRUE;
}
void
@@ -134,6 +185,9 @@ proto_register_mpeg_audio(void)
{
static hf_register_info hf[] = {
#include "packet-mpeg-audio-hfarr.c"
+ { &hf_mpeg_audio_header,
+ { "Frame Header", "mpeg-audio.header",
+ FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_mpeg_audio_data,
{ "Data", "mpeg-audio.data",
FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
@@ -144,23 +198,29 @@ proto_register_mpeg_audio(void)
{ &hf_id3v1,
{ "ID3v1", "mpeg-audio.id3v1",
FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
- { &hf_id3v2,
- { "ID3v2", "mpeg-audio.id3v2",
- FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
};
static gint *ett[] = {
+ &ett_mpeg_audio,
#include "packet-mpeg-audio-ettarr.c"
};
- proto_mpeg_audio = proto_register_protocol(
- "Moving Picture Experts Group Audio", "MPEG Audio", "mpeg-audio");
+ proto_mpeg_audio = proto_register_protocol("Moving Picture Experts Group Audio", "MPEG Audio", "mpeg-audio");
proto_register_field_array(proto_mpeg_audio, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+
+ mpeg_audio_handle = register_dissector("mpeg-audio", dissect_mpeg_audio, proto_mpeg_audio);
}
void
proto_reg_handoff_mpeg_audio(void)
{
- heur_dissector_add("mpeg", dissect_mpeg_audio, "MPEG Audio", "mpeg_audio", proto_mpeg_audio, HEURISTIC_ENABLE);
+ dissector_add_string("media_type", "audio/mpeg", mpeg_audio_handle);
+ /* "audio/mp3" used by Chrome before 2020 */
+ /* https://chromium.googlesource.com/chromium/src/+/842f46a95f49e24534ad35c7a71e5c425d426550 */
+ dissector_add_string("media_type", "audio/mp3", mpeg_audio_handle);
+
+ heur_dissector_add("mpeg", dissect_mpeg_audio_heur, "MPEG Audio", "mpeg_audio", proto_mpeg_audio, HEURISTIC_ENABLE);
+
+ id3v2_handle = find_dissector("id3v2");
}
diff --git a/epan/dissectors/asn1/mpeg-pes/mpeg-pes.cnf b/epan/dissectors/asn1/mpeg-pes/mpeg-pes.cnf
index db05b98e6e..9b8eec85f6 100644
--- a/epan/dissectors/asn1/mpeg-pes/mpeg-pes.cnf
+++ b/epan/dissectors/asn1/mpeg-pes/mpeg-pes.cnf
@@ -11,4 +11,5 @@ Stream/must-be-zero ABBREV=stream.must-be-zero
PES/stream TYPE=FT_UINT8 DISPLAY=BASE_HEX
Pack/program-mux-rate TYPE=FT_UINT32 DISPLAY=BASE_DEC
Stream/length TYPE=FT_UINT16 DISPLAY=BASE_DEC
+Stream/scrambling-control TYPE=FT_UINT8 BITMASK=0x30
#.END
diff --git a/epan/dissectors/asn1/mpeg-pes/packet-mpeg-pes-template.c b/epan/dissectors/asn1/mpeg-pes/packet-mpeg-pes-template.c
index d809702af5..302af2ca63 100644
--- a/epan/dissectors/asn1/mpeg-pes/packet-mpeg-pes-template.c
+++ b/epan/dissectors/asn1/mpeg-pes/packet-mpeg-pes-template.c
@@ -25,55 +25,91 @@
void proto_register_mpeg_pes(void);
void proto_reg_handoff_mpeg_pes(void);
-static int proto_mpeg = -1;
-static int proto_mpeg_pes = -1;
-
-static int ett_mpeg_pes_pack_header = -1;
-static int ett_mpeg_pes_header_data = -1;
-static int ett_mpeg_pes_trick_mode = -1;
-
-static int hf_mpeg_pes_pack_header = -1;
-static int hf_mpeg_pes_scr = -1;
-static int hf_mpeg_pes_program_mux_rate = -1;
-static int hf_mpeg_pes_stuffing_length = -1;
-static int hf_mpeg_pes_stuffing = -1;
-static int hf_mpeg_pes_extension = -1;
-static int hf_mpeg_pes_header_data = -1;
-static int hf_mpeg_pes_pts = -1;
-static int hf_mpeg_pes_dts = -1;
-static int hf_mpeg_pes_escr = -1;
-static int hf_mpeg_pes_es_rate = -1;
-static int hf_mpeg_pes_dsm_trick_mode = -1;
-static int hf_mpeg_pes_dsm_trick_mode_control = -1;
-static int hf_mpeg_pes_dsm_trick_mode_field_id = -1;
-static int hf_mpeg_pes_dsm_trick_mode_intra_slice_refresh = -1;
-static int hf_mpeg_pes_dsm_trick_mode_frequency_truncation = -1;
-static int hf_mpeg_pes_dsm_trick_mode_rep_cntrl = -1;
-static int hf_mpeg_pes_copy_info = -1;
-static int hf_mpeg_pes_crc = -1;
-static int hf_mpeg_pes_extension_flags = -1;
-static int hf_mpeg_pes_private_data = -1;
-static int hf_mpeg_pes_pack_length = -1;
-static int hf_mpeg_pes_sequence = -1;
-static int hf_mpeg_pes_pstd_buffer = -1;
-static int hf_mpeg_pes_extension2 = -1;
-static int hf_mpeg_pes_padding = -1;
-static int hf_mpeg_pes_data = -1;
-
-static int hf_mpeg_video_sequence_header = -1;
-static int hf_mpeg_video_sequence_extension = -1;
-static int hf_mpeg_video_group_of_pictures = -1;
-static int hf_mpeg_video_picture = -1;
-static int hf_mpeg_video_quantization_matrix = -1;
-static int hf_mpeg_video_data = -1;
+static int proto_mpeg;
+static int proto_mpeg_pes;
+
+static int ett_mpeg_pes_pack_header;
+static int ett_mpeg_pes_header_data;
+static int ett_mpeg_pes_trick_mode;
+
+static int hf_mpeg_pes_pack_header;
+static int hf_mpeg_pes_scr;
+static int hf_mpeg_pes_program_mux_rate;
+static int hf_mpeg_pes_stuffing_length;
+static int hf_mpeg_pes_stuffing;
+static int hf_mpeg_pes_extension;
+static int hf_mpeg_pes_header_data;
+static int hf_mpeg_pes_pts;
+static int hf_mpeg_pes_dts;
+static int hf_mpeg_pes_escr;
+static int hf_mpeg_pes_es_rate;
+static int hf_mpeg_pes_dsm_trick_mode;
+static int hf_mpeg_pes_dsm_trick_mode_control;
+static int hf_mpeg_pes_dsm_trick_mode_field_id;
+static int hf_mpeg_pes_dsm_trick_mode_intra_slice_refresh;
+static int hf_mpeg_pes_dsm_trick_mode_frequency_truncation;
+static int hf_mpeg_pes_dsm_trick_mode_rep_cntrl;
+static int hf_mpeg_pes_copy_info;
+static int hf_mpeg_pes_crc;
+static int hf_mpeg_pes_extension_flags;
+static int hf_mpeg_pes_private_data;
+static int hf_mpeg_pes_pack_length;
+static int hf_mpeg_pes_sequence;
+static int hf_mpeg_pes_pstd_buffer;
+static int hf_mpeg_pes_extension2;
+static int hf_mpeg_pes_padding;
+static int hf_mpeg_pes_data;
+
+static int hf_mpeg_video_sequence_header;
+static int hf_mpeg_video_sequence_extension;
+static int hf_mpeg_video_group_of_pictures;
+static int hf_mpeg_video_picture;
+static int hf_mpeg_video_quantization_matrix;
+static int hf_mpeg_video_data;
static dissector_handle_t mpeg_handle;
+
+static dissector_table_t stream_type_table;
+
enum { PES_PREFIX = 1 };
/*
- * XXX - some of these aren't documented in ISO/IEC 13818-1:2007;
- * Table 2-22 "Stream_id assignments" starts with 0xbc, and also
- * lists some types not given here. Where are the others described?
+ * MPEG uses 32-bit start codes that all begin with the three byte sequence
+ * 00 00 01 (the start code prefix) for bit and byte alignment, among other
+ * purposes.
+ *
+ * The values from 0xb9 through 0xff are "system start codes" and described in
+ * ISO/IEC 13818-1:2019 / ITU-T H.222.0. The bulk of them, 0xbc through 0xff,
+ * are stream_id values and documented in Table 2-22 "Stream_id assignments".
+ * The remaining three are used by Program Streams and found as follows:
+ * 0xb9, the MPEG_program_end_code, in 2.5.3.2 "Semantic definition of fields
+ * in program stream"
+ * 0xba, the pack_start_code, in 2.5.3.4 "Semantic definition of fields in
+ * program stream pack"
+ * 0xbb, the system_header_start_code, in 2.5.3.6 "Semantic definition of fields
+ * in system header"
+ *
+ * The remaining 185 values from 0x00 to 0xb8 are used by MPEG-2 video
+ * (backwards compatible with MPEG-1 video) and documented in ISO/IEC 13818-2 /
+ * ITU-T H.262 (2000), in Table 6-1 "Start code values". These are not stream
+ * id values and do not mark PES packets, but rather demarcate elements in the
+ * coded MPEG-1/2 video bitstream, at a different hierarchical level than the
+ * PES packets. The sets of values used for video start codes and for stream
+ * ids are disjoint to avoid any ambiguity when resynchronizing. Note the
+ * dissector currently conflates MPEG video with MPEG PES.
+ *
+ * Care is taken to ensure that the start code prefix 0x000001 does not occur
+ * elsewhere in the structure (avoiding "emulation of start codes").
+ *
+ * The video can have other formats, given by the stream type, carried on
+ * TS in the PMT and in PS from the similar Program Stream Map. AVC/H.264 and
+ * HEVC/H.265 carried in PES also use the start code prefix, before each NAL,
+ * and escape the raw byte sequence with bytes that prevent internal start code
+ * prefixes. The byte following the prefix (the first byte of the NAL header)
+ * has high bit zero, so the values of the NAL header are in the range used by
+ * the MPEG-2 video bitstream, not the range used by stream ids, allowing for
+ * synchronization in the same way. See Annex B "Byte Stream Format" of H.264
+ * and H.265.
*/
enum {
STREAM_PICTURE = 0x00,
@@ -363,12 +399,13 @@ static int
dissect_mpeg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data);
static gboolean
-dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
{
int prefix;
int stream;
asn1_ctx_t asn1_ctx;
gint offset = 0;
+ guint8 stream_type;
if (!tvb_bytes_exist(tvb, 0, 3))
return FALSE; /* not enough bytes for a PES prefix */
@@ -382,6 +419,13 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data
stream = tvb_get_guint8(tvb, 3);
col_add_fstr(pinfo->cinfo, COL_INFO, "%s ", val_to_str(stream, mpeg_pes_T_stream_vals, "Unknown stream: %d"));
+ /* Were we called from MP2T providing a stream type from a PMT? */
+ stream_type = GPOINTER_TO_UINT(data);
+ /* Luckily, stream_type 0 is reserved, so a null value is fine.
+ * XXX: Implement Program Stream Map for Program Stream (similar
+ * to PMT but maps stream_ids to stream_types instead of PIDs.)
+ */
+
#if 0
if (tree == NULL)
return TRUE;
@@ -525,18 +569,22 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data
/* length may be zero for Video stream */
if(length==0){
- proto_tree_add_item(tree, hf_mpeg_pes_data, tvb, (offset>>3),-1, ENC_NA);
- return TRUE;
+ es = tvb_new_subset_remaining(tvb, offset / 8);
+ } else {
+ es = tvb_new_subset_length_caplen(tvb, offset / 8, -1, length);
+ }
+ if (!dissector_try_uint_new(stream_type_table, stream_type, es, pinfo, tree, TRUE, NULL)) {
+ /* If we didn't get a stream type, then assume
+ * MPEG-1/2 Audio or Video.
+ */
+ if (tvb_get_ntoh24(es, 0) == PES_PREFIX)
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
+ else if (tvb_get_guint8(es, 0) == 0xff)
+ dissect_mpeg(es, pinfo, tree, NULL);
+ else
+ proto_tree_add_item(tree, hf_mpeg_pes_data, es,
+ 0, -1, ENC_NA);
}
-
- es = tvb_new_subset_length_caplen(tvb, offset / 8, -1, length);
- if (tvb_get_ntoh24(es, 0) == PES_PREFIX)
- dissect_mpeg_pes(es, pinfo, tree, NULL);
- else if (tvb_get_guint8(es, 0) == 0xff)
- dissect_mpeg(es, pinfo, tree, data);
- else
- proto_tree_add_item(tree, hf_mpeg_pes_data, es,
- 0, -1, ENC_NA);
} else {
unsigned int data_length = tvb_get_ntohs(tvb, offset / 8);
proto_tree_add_item(tree, hf_mpeg_pes_length, tvb,
@@ -546,7 +594,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data
proto_tree_add_item(tree, hf_mpeg_pes_data, tvb,
offset / 8, data_length, ENC_NA);
}
- } else {
+ } else if (stream != STREAM_END) {
proto_tree_add_item(tree, hf_mpeg_pes_data, tvb,
offset / 8, -1, ENC_NA);
}
@@ -686,16 +734,16 @@ proto_register_mpeg_pes(void)
&ett_mpeg_pes_trick_mode
};
- proto_mpeg = proto_register_protocol(
- "Moving Picture Experts Group", "MPEG", "mpeg");
+ proto_mpeg = proto_register_protocol("Moving Picture Experts Group", "MPEG", "mpeg");
mpeg_handle = register_dissector("mpeg", dissect_mpeg, proto_mpeg);
- heur_subdissector_list = register_heur_dissector_list("mpeg", proto_mpeg);
+ heur_subdissector_list = register_heur_dissector_list_with_description("mpeg", "MPEG payload", proto_mpeg);
- proto_mpeg_pes = proto_register_protocol(
- "Packetized Elementary Stream", "MPEG PES", "mpeg-pes");
+ proto_mpeg_pes = proto_register_protocol("Packetized Elementary Stream", "MPEG PES", "mpeg-pes");
proto_register_field_array(proto_mpeg_pes, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
register_dissector("mpeg-pes", dissect_mpeg_pes, proto_mpeg_pes);
+
+ stream_type_table = register_dissector_table("mpeg-pes.stream", "MPEG PES stream type", proto_mpeg_pes, FT_UINT8, BASE_HEX);
}
void
@@ -703,4 +751,7 @@ proto_reg_handoff_mpeg_pes(void)
{
dissector_add_uint("wtap_encap", WTAP_ENCAP_MPEG, mpeg_handle);
heur_dissector_add("mpeg", dissect_mpeg_pes, "MPEG PES", "mpeg_pes", proto_mpeg_pes, HEURISTIC_ENABLE);
+
+ dissector_add_uint("mpeg-pes.stream", 0x1B, find_dissector_add_dependency("h264_bytestream", proto_mpeg_pes));
+ dissector_add_uint("mpeg-pes.stream", 0x24, find_dissector_add_dependency("h265_bytestream", proto_mpeg_pes));
}
diff --git a/epan/dissectors/asn1/mudurl/packet-mudurl-template.c b/epan/dissectors/asn1/mudurl/packet-mudurl-template.c
index 1861a39c61..98e6a6bda3 100644
--- a/epan/dissectors/asn1/mudurl/packet-mudurl-template.c
+++ b/epan/dissectors/asn1/mudurl/packet-mudurl-template.c
@@ -27,7 +27,7 @@ void proto_reg_handoff_mudurl(void);
/* Initialize the protocol and registered fields */
-static int proto_mudurl = -1;
+static int proto_mudurl;
#include "packet-mudurl-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/nbap/nbap.cnf b/epan/dissectors/asn1/nbap/nbap.cnf
index 96b71b2d27..22e03a9c4f 100644
--- a/epan/dissectors/asn1/nbap/nbap.cnf
+++ b/epan/dissectors/asn1/nbap/nbap.cnf
@@ -85,7 +85,8 @@ ProtocolIE-ContainerPairList
%(DEFAULT_BODY)s
nbap_get_private_data(actx->pinfo)->protocol_ie_id = protocol_ie_id; /* To carry around the packet */
if (tree) {
- proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %%s", val_to_str_ext(protocol_ie_id, &nbap_ProtocolIE_ID_vals_ext, "unknown (%%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %%s",
+ val_to_str_ext(protocol_ie_id, &nbap_ProtocolIE_ID_vals_ext, "unknown (%%d)"));
}
#.END
@@ -98,8 +99,8 @@ ProtocolIE-ContainerPairList
%(DEFAULT_BODY)s
nbap_get_private_data(actx->pinfo)->procedure_code = procedure_code;
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%%s ",
- val_to_str(procedure_code, nbap_ProcedureCode_vals,
- "unknown message"));
+ val_to_str_const(procedure_code, nbap_ProcedureCode_vals,
+ "unknown message"));
#.FN_PARS ProcedureID/ddMode VAL_PTR = &nbap_get_private_data(actx->pinfo)->dd_mode
@@ -1019,7 +1020,7 @@ nbap_private_data->transport_format_set_type = NBAP_CPCH;
set_address(&dst_addr, AT_IPv4, 4, &transportLayerAddress_ipv4);
- conversation = conversation_new(actx->pinfo->num, &dst_addr, &null_addr, ENDPOINT_UDP, bindingID, 0, NO_ADDR2|NO_PORT2);
+ conversation = conversation_new(actx->pinfo->num, &dst_addr, &null_addr, CONVERSATION_UDP, bindingID, 0, NO_ADDR2|NO_PORT2);
conversation_set_dissector(conversation, fp_handle);
@@ -1119,7 +1120,7 @@ nbap_private_data->num_items = 1;
set_address(&dst_addr, AT_IPv4, 4, &transportLayerAddress_ipv4);
- conversation = conversation_new(actx->pinfo->num, &dst_addr, &null_addr, ENDPOINT_UDP, bindingID, 0, NO_ADDR2|NO_PORT2);
+ conversation = conversation_new(actx->pinfo->num, &dst_addr, &null_addr, CONVERSATION_UDP, bindingID, 0, NO_ADDR2|NO_PORT2);
/* Set dissector */
conversation_set_dissector(conversation, fp_handle);
@@ -1229,7 +1230,7 @@ nbap_private_data->transport_format_set_type = NBAP_CPCH;
set_address(&dst_addr, AT_IPv4, 4, &transportLayerAddress_ipv4);
- conversation = conversation_new(actx->pinfo->num, &dst_addr, &null_addr, ENDPOINT_UDP, bindingID, 0, NO_ADDR2|NO_PORT2);
+ conversation = conversation_new(actx->pinfo->num, &dst_addr, &null_addr, CONVERSATION_UDP, bindingID, 0, NO_ADDR2|NO_PORT2);
/* Set dissector */
conversation_set_dissector(conversation, fp_handle);
@@ -1484,13 +1485,13 @@ nbap_private_data->dch_id = 0xFFFFFFFF;
set_address(&dst_addr, AT_IPv4, 4, &transportLayerAddress_ipv4);
conversation = find_conversation(actx->pinfo->num, &dst_addr,
- &null_addr, ENDPOINT_UDP, nbap_private_data->binding_id_port,
+ &null_addr, CONVERSATION_UDP, nbap_private_data->binding_id_port,
0, NO_ADDR_B|NO_PORT_B);
if (conversation == NULL) {
/* It's not part of any conversation - create a new one. */
conversation = conversation_new(actx->pinfo->num, &dst_addr,
- &null_addr, ENDPOINT_UDP, nbap_private_data->binding_id_port,
+ &null_addr, CONVERSATION_UDP, nbap_private_data->binding_id_port,
0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -1593,7 +1594,7 @@ nbap_private_data->binding_id_port = 0;
set_address(&dst_addr, AT_IPv4, 4, &transportLayerAddress_ipv4);
conversation = find_conversation(actx->pinfo->num, &dst_addr,
- &null_addr, ENDPOINT_UDP, bindingID,
+ &null_addr, CONVERSATION_UDP, bindingID,
0, NO_ADDR_B|NO_PORT_B);
if (conversation) {
umts_fp_conversation_info = (umts_fp_conversation_info_t*)conversation_get_proto_data(conversation, proto_fp);
@@ -1606,7 +1607,7 @@ nbap_private_data->binding_id_port = 0;
/* It's not part of any conversation - create a new one. */
conversation = conversation_new(actx->pinfo->num, &dst_addr,
- &null_addr, ENDPOINT_UDP, bindingID,
+ &null_addr, CONVERSATION_UDP, bindingID,
0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -1632,7 +1633,7 @@ nbap_private_data->binding_id_port = 0;
expert_add_info(actx->pinfo, NULL, &ei_nbap_no_set_comm_context_id);
}
- /* Check if we allready have this context */
+ /* Check if we already have this context */
e_dch_macdflow_id = nbap_private_data->e_dch_macdflow_id;
if( (old_info = (nbap_edch_port_info_t *)wmem_tree_lookup32(edch_flow_port_map,nbap_private_data->com_context_id)) == NULL ){
nbap_edch_port_info_t * nbap_edch_port_info;
@@ -1693,7 +1694,7 @@ nbap_edch_channel_info = nbap_private_data->nbap_edch_channel_info;
e_dch_macdflow_id = nbap_private_data->e_dch_macdflow_id;
clear_address(&null_addr);
p_conv = find_conversation(actx->pinfo->num, &nbap_edch_channel_info[e_dch_macdflow_id].crnc_address, &null_addr,
- ENDPOINT_UDP, nbap_edch_channel_info[e_dch_macdflow_id].crnc_port, 0, NO_ADDR_B);
+ CONVERSATION_UDP, nbap_edch_channel_info[e_dch_macdflow_id].crnc_port, 0, NO_ADDR_B);
if(!p_conv)
return offset;
@@ -1722,7 +1723,7 @@ nbap_edch_channel_info = nbap_private_data->nbap_edch_channel_info;
* MAC-i/is => Type 2
* The specifications isn't very clear about the indicator for what entity
* should be used. For now, it seems like the presence of the "Maximum MAC-d PDU Size Extended IE"
- * indicates MAC-i/is and it's absense means MAC-e/es
+ * indicates MAC-i/is and it's absence means MAC-e/es
*/
if(nbap_private_data->max_mac_d_pdu_size_ext_ie_present){
fp_edch_channel_info->edch_type = 1; /* 1 means Type 2 */
@@ -1767,7 +1768,7 @@ nbap_private_data->binding_id_port = 0;
set_address(&dst_addr, AT_IPv4, 4, &transportLayerAddress_ipv4);
old_conversation = find_conversation(actx->pinfo->num, &dst_addr,
- &null_addr, ENDPOINT_UDP, bindingID,
+ &null_addr, CONVERSATION_UDP, bindingID,
0, NO_ADDR_B|NO_PORT_B);
if(old_conversation){
@@ -1782,7 +1783,7 @@ nbap_private_data->binding_id_port = 0;
/* It's not part of any conversation - create a new one. */
conversation = conversation_new(actx->pinfo->num, &dst_addr,
- &null_addr, ENDPOINT_UDP, bindingID,
+ &null_addr, CONVERSATION_UDP, bindingID,
0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -1876,7 +1877,7 @@ nbap_private_data->num_items = 1;
/* Check if we have conversation info */
clear_address(&null_addr);
p_conv = find_conversation(actx->pinfo->num, &nbap_edch_channel_info[e_dch_macdflow_id].crnc_address, &null_addr,
- ENDPOINT_UDP, nbap_edch_channel_info[e_dch_macdflow_id].crnc_port, 0, NO_ADDR_B);
+ CONVERSATION_UDP, nbap_edch_channel_info[e_dch_macdflow_id].crnc_port, 0, NO_ADDR_B);
if(!p_conv)
return offset;
@@ -1905,7 +1906,7 @@ nbap_private_data->num_items = 1;
* MAC-i/is => Type 2
* The specifications isn't very clear about the indicator for what entity
* should be used. For now, it seems like the presence of the "Maximum MAC-d PDU Size Extended IE"
- * indicates MAC-i/is and it's absense means MAC-e/es
+ * indicates MAC-i/is and it's absence means MAC-e/es
*/
if(nbap_private_data->max_mac_d_pdu_size_ext_ie_present){
fp_edch_channel_info->edch_type = 1; /* 1 means Type 2 */
@@ -2134,13 +2135,13 @@ nbap_hsdsch_channel_info = nbap_get_private_data(actx->pinfo)->nbap_hsdsch_chann
address_to_str (actx->pinfo->pool, &(nbap_hsdsch_channel_info[i].crnc_address)),
nbap_hsdsch_channel_info[i].crnc_port);
conversation = find_conversation(actx->pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr,
- ENDPOINT_UDP, nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
+ CONVERSATION_UDP, nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
if (conversation == NULL) {
/* It's not part of any conversation - create a new one. */
nbap_debug("Frame %%u HSDSCH-MACdFlows-Information: Set up conv on Port %%u", actx->pinfo->num, nbap_hsdsch_channel_info[i].crnc_port);
conversation = conversation_new(actx->pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address),
- &null_addr, ENDPOINT_UDP, nbap_hsdsch_channel_info[i].crnc_port,
+ &null_addr, CONVERSATION_UDP, nbap_hsdsch_channel_info[i].crnc_port,
0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -2259,14 +2260,14 @@ nbap_hsdsch_channel_info = nbap_get_private_data(actx->pinfo)->nbap_hsdsch_chann
address_to_str (actx->pinfo->pool, &(nbap_hsdsch_channel_info[i].crnc_address)),
nbap_hsdsch_channel_info[i].crnc_port);
conversation = find_conversation(actx->pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr,
- ENDPOINT_UDP, nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
+ CONVERSATION_UDP, nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
if (conversation == NULL) {
/* It's not part of any conversation - create a new one. */
nbap_debug(" Set up conv on Port %%u", nbap_hsdsch_channel_info[i].crnc_port);
conversation = conversation_new(actx->pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address),
- &null_addr, ENDPOINT_UDP, nbap_hsdsch_channel_info[i].crnc_port,
+ &null_addr, CONVERSATION_UDP, nbap_hsdsch_channel_info[i].crnc_port,
0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -2397,11 +2398,11 @@ int i;
if (nbap_common_channel_info[i].crnc_port != 0){
conversation = find_conversation(actx->pinfo->num, &(nbap_common_channel_info[i].crnc_address), &null_addr,
- ENDPOINT_UDP, nbap_common_channel_info[i].crnc_port, 0, NO_ADDR_B);
+ CONVERSATION_UDP, nbap_common_channel_info[i].crnc_port, 0, NO_ADDR_B);
if (conversation == NULL) {
conversation = conversation_new(actx->pinfo->num, &(nbap_common_channel_info[i].crnc_address),
- &null_addr, ENDPOINT_UDP, nbap_common_channel_info[i].crnc_port,
+ &null_addr, CONVERSATION_UDP, nbap_common_channel_info[i].crnc_port,
0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -2502,12 +2503,12 @@ nbap_hsdsch_channel_info = nbap_private_data->nbap_hsdsch_channel_info;
return offset;
}
- /*Find the conversations assoicated with the HS-DSCH flows in this packet and set proper H-RNTI*/
+ /*Find the conversations associated with the HS-DSCH flows in this packet and set proper H-RNTI*/
clear_address(&null_addr);
for (i = 0; i < maxNrOfMACdFlows; i++) {
if (nbap_hsdsch_channel_info[i].crnc_port != 0){
conversation = find_conversation(actx->pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr,
- ENDPOINT_UDP, nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
+ CONVERSATION_UDP, nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
if(conversation != NULL){
umts_fp_conversation_info = (umts_fp_conversation_info_t *)conversation_get_proto_data(conversation, proto_fp);
DISSECTOR_ASSERT(umts_fp_conversation_info != NULL);
diff --git a/epan/dissectors/asn1/nbap/packet-nbap-template.c b/epan/dissectors/asn1/nbap/packet-nbap-template.c
index f744fcc3cf..9865e4b516 100644
--- a/epan/dissectors/asn1/nbap/packet-nbap-template.c
+++ b/epan/dissectors/asn1/nbap/packet-nbap-template.c
@@ -60,25 +60,25 @@ static dissector_handle_t fp_handle;
#include "packet-nbap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_nbap = -1;
-static int hf_nbap_transportLayerAddress_ipv4 = -1;
-static int hf_nbap_transportLayerAddress_ipv6 = -1;
-static int hf_nbap_transportLayerAddress_nsap = -1;
-static int hf_nbap_reassembled_information_block = -1;
+static int proto_nbap;
+static int hf_nbap_transportLayerAddress_ipv4;
+static int hf_nbap_transportLayerAddress_ipv6;
+static int hf_nbap_transportLayerAddress_nsap;
+static int hf_nbap_reassembled_information_block;
#include "packet-nbap-hf.c"
/* Initialize the subtree pointers */
-static int ett_nbap = -1;
-static int ett_nbap_TransportLayerAddress = -1;
-static int ett_nbap_TransportLayerAddress_nsap = -1;
-static int ett_nbap_ib_sg_data = -1;
+static int ett_nbap;
+static int ett_nbap_TransportLayerAddress;
+static int ett_nbap_TransportLayerAddress_nsap;
+static int ett_nbap_ib_sg_data;
#include "packet-nbap-ett.c"
-static expert_field ei_nbap_no_find_port_info = EI_INIT;
-static expert_field ei_nbap_no_set_comm_context_id = EI_INIT;
-static expert_field ei_nbap_hsdsch_entity_not_specified = EI_INIT;
+static expert_field ei_nbap_no_find_port_info;
+static expert_field ei_nbap_no_set_comm_context_id;
+static expert_field ei_nbap_hsdsch_entity_not_specified;
extern int proto_fp;
@@ -471,23 +471,25 @@ static void add_hsdsch_bind(packet_info *pinfo){
umts_fp_conversation_info_t *umts_fp_conversation_info;
fp_hsdsch_channel_info_t* fp_hsdsch_channel_info = NULL;
guint32 i;
+ nbap_private_data_t* nbap_private_data;
nbap_hsdsch_channel_info_t* nbap_hsdsch_channel_info;
if (PINFO_FD_VISITED(pinfo)){
return;
}
- nbap_hsdsch_channel_info = nbap_get_private_data(pinfo)->nbap_hsdsch_channel_info;
+ nbap_private_data = nbap_get_private_data(pinfo);
+ nbap_hsdsch_channel_info = nbap_private_data->nbap_hsdsch_channel_info;
/* Set port to zero use that as an indication of whether we have data or not */
clear_address(&null_addr);
for (i = 0; i < maxNrOfMACdFlows; i++) {
if (nbap_hsdsch_channel_info[i].crnc_port != 0){
- conversation = find_conversation(pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr, ENDPOINT_UDP,
+ conversation = find_conversation(pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr, CONVERSATION_UDP,
nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR_B);
if (conversation == NULL) {
/* It's not part of any conversation - create a new one. */
- conversation = conversation_new(pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr, ENDPOINT_UDP,
+ conversation = conversation_new(pinfo->num, &(nbap_hsdsch_channel_info[i].crnc_address), &null_addr, CONVERSATION_UDP,
nbap_hsdsch_channel_info[i].crnc_port, 0, NO_ADDR2|NO_PORT2);
/* Set dissector */
@@ -509,6 +511,15 @@ static void add_hsdsch_bind(packet_info *pinfo){
/*Added june 3, normally just the iterator variable*/
fp_hsdsch_channel_info->hsdsch_macdflow_id = i ; /*hsdsch_macdflow_ids[i];*/ /* hsdsch_macdflow_id;*/
+ if (nbap_private_data->crnc_context_present) {
+ umts_fp_conversation_info->com_context_id = nbap_private_data->com_context_id;
+ } else {
+ /* XXX: This expert info doesn't get added in subsequent passes,
+ * but probably should.
+ */
+ expert_add_info(pinfo, NULL, &ei_nbap_no_set_comm_context_id);
+ }
+
/* Cheat and use the DCH entries */
umts_fp_conversation_info->num_dch_in_flow++;
umts_fp_conversation_info->dch_ids_in_flow_list[umts_fp_conversation_info->num_dch_in_flow -1] = i;
@@ -787,9 +798,9 @@ void proto_register_nbap(void)
/* Register dissector tables */
nbap_ies_dissector_table = register_dissector_table("nbap.ies", "NBAP-PROTOCOL-IES", proto_nbap, FT_UINT32, BASE_DEC);
nbap_extension_dissector_table = register_dissector_table("nbap.extension", "NBAP-PROTOCOL-EXTENSION", proto_nbap, FT_UINT32, BASE_DEC);
- nbap_proc_imsg_dissector_table = register_dissector_table("nbap.proc.imsg", "NBAP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_nbap, FT_STRING, BASE_NONE);
- nbap_proc_sout_dissector_table = register_dissector_table("nbap.proc.sout", "NBAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_nbap, FT_STRING, BASE_NONE);
- nbap_proc_uout_dissector_table = register_dissector_table("nbap.proc.uout", "NBAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_nbap, FT_STRING, BASE_NONE);
+ nbap_proc_imsg_dissector_table = register_dissector_table("nbap.proc.imsg", "NBAP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_nbap, FT_STRING, STRING_CASE_SENSITIVE);
+ nbap_proc_sout_dissector_table = register_dissector_table("nbap.proc.sout", "NBAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_nbap, FT_STRING, STRING_CASE_SENSITIVE);
+ nbap_proc_uout_dissector_table = register_dissector_table("nbap.proc.uout", "NBAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_nbap, FT_STRING, STRING_CASE_SENSITIVE);
register_init_routine(nbap_init);
}
diff --git a/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn b/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn
index a543b6f125..01c38f3f38 100644
--- a/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/ngap/NGAP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.413 V16.7.0 (2021-10)
+-- 3GPP TS 38.413 V17.7.0 (2023-12)
-- 9.4.6 Common Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
NGAP-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-CommonDataTypes (3) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -29,6 +29,6 @@ ProtocolExtensionID ::= INTEGER (0..65535)
ProtocolIE-ID ::= INTEGER (0..65535)
-TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessfull-outcome }
+TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome }
END
diff --git a/epan/dissectors/asn1/ngap/NGAP-Constants.asn b/epan/dissectors/asn1/ngap/NGAP-Constants.asn
index 25fa8655ef..864bef796c 100644
--- a/epan/dissectors/asn1/ngap/NGAP-Constants.asn
+++ b/epan/dissectors/asn1/ngap/NGAP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.413 V16.7.0 (2021-10)
+-- 3GPP TS 38.413 V17.7.0 (2023-12)
-- 9.4.7 Constant Definitions
-- **************************************************************
--
@@ -6,11 +6,11 @@
--
-- **************************************************************
-NGAP-Constants {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
-ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-Constants (4) }
+NGAP-Constants {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-Constants (4) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -99,6 +99,16 @@ id-UplinkRANEarlyStatusTransfer ProcedureCode ::= 62
id-DownlinkRANEarlyStatusTransfer ProcedureCode ::= 63
id-AMFCPRelocationIndication ProcedureCode ::= 64
id-ConnectionEstablishmentIndication ProcedureCode ::= 65
+id-BroadcastSessionModification ProcedureCode ::= 66
+id-BroadcastSessionRelease ProcedureCode ::= 67
+id-BroadcastSessionSetup ProcedureCode ::= 68
+id-DistributionSetup ProcedureCode ::= 69
+id-DistributionRelease ProcedureCode ::= 70
+id-MulticastSessionActivation ProcedureCode ::= 71
+id-MulticastSessionDeactivation ProcedureCode ::= 72
+id-MulticastSessionUpdate ProcedureCode ::= 73
+id-MulticastGroupPaging ProcedureCode ::= 74
+id-BroadcastSessionReleaseRequired ProcedureCode ::= 75
-- **************************************************************
--
@@ -116,64 +126,89 @@ maxProtocolIEs INTEGER ::= 65535
--
-- **************************************************************
- maxnoofAllowedAreas INTEGER ::= 16
- maxnoofAllowedCAGsperPLMN INTEGER ::= 256
- maxnoofAllowedS-NSSAIs INTEGER ::= 8
- maxnoofBluetoothName INTEGER ::= 4
- maxnoofBPLMNs INTEGER ::= 12
- maxnoofCAGSperCell INTEGER ::= 64
- maxnoofCellIDforMDT INTEGER ::= 32
- maxnoofCellIDforWarning INTEGER ::= 65535
- maxnoofCellinAoI INTEGER ::= 256
- maxnoofCellinEAI INTEGER ::= 65535
- maxnoofCellinTAI INTEGER ::= 65535
- maxnoofCellsingNB INTEGER ::= 16384
- maxnoofCellsinngeNB INTEGER ::= 256
- maxnoofCellsinUEHistoryInfo INTEGER ::= 16
- maxnoofCellsUEMovingTrajectory INTEGER ::= 16
- maxnoofDRBs INTEGER ::= 32
- maxnoofEmergencyAreaID INTEGER ::= 65535
- maxnoofEAIforRestart INTEGER ::= 256
- maxnoofEPLMNs INTEGER ::= 15
- maxnoofEPLMNsPlusOne INTEGER ::= 16
- maxnoofE-RABs INTEGER ::= 256
- maxnoofErrors INTEGER ::= 256
- maxnoofExtSliceItems INTEGER ::= 65535
- maxnoofForbTACs INTEGER ::= 4096
- maxnoofFreqforMDT INTEGER ::= 8
- maxnoofMDTPLMNs INTEGER ::= 16
- maxnoofMultiConnectivity INTEGER ::= 4
- maxnoofMultiConnectivityMinusOne INTEGER ::= 3
- maxnoofNeighPCIforMDT INTEGER ::= 32
- maxnoofNGConnectionsToReset INTEGER ::= 65536
- maxnoofNRCellBands INTEGER ::= 32
- maxnoofPC5QoSFlows INTEGER ::= 2048
- maxnoofPDUSessions INTEGER ::= 256
- maxnoofPLMNs INTEGER ::= 12
- maxnoofQosFlows INTEGER ::= 64
- maxnoofQosParaSets INTEGER ::= 8
- maxnoofRANNodeinAoI INTEGER ::= 64
- maxnoofRecommendedCells INTEGER ::= 16
- maxnoofRecommendedRANNodes INTEGER ::= 16
- maxnoofAoI INTEGER ::= 64
- maxnoofSensorName INTEGER ::= 3
- maxnoofServedGUAMIs INTEGER ::= 256
- maxnoofSliceItems INTEGER ::= 1024
- maxnoofTACs INTEGER ::= 256
- maxnoofTAforMDT INTEGER ::= 8
- maxnoofTAIforInactive INTEGER ::= 16
- maxnoofTAIforPaging INTEGER ::= 16
- maxnoofTAIforRestart INTEGER ::= 2048
- maxnoofTAIforWarning INTEGER ::= 65535
- maxnoofTAIinAoI INTEGER ::= 16
- maxnoofTimePeriods INTEGER ::= 2
- maxnoofTNLAssociations INTEGER ::= 32
- maxnoofWLANName INTEGER ::= 4
- maxnoofXnExtTLAs INTEGER ::= 16
- maxnoofXnGTP-TLAs INTEGER ::= 16
- maxnoofXnTLAs INTEGER ::= 2
- maxnoofCandidateCells INTEGER ::= 32
- maxNRARFCN INTEGER ::= 3279165
+ maxnoofAllowedAreas INTEGER ::= 16
+ maxnoofAllowedCAGsperPLMN INTEGER ::= 256
+ maxnoofAllowedS-NSSAIs INTEGER ::= 8
+ maxnoofBluetoothName INTEGER ::= 4
+ maxnoofBPLMNs INTEGER ::= 12
+ maxnoofCAGSperCell INTEGER ::= 64
+ maxnoofCellIDforMDT INTEGER ::= 32
+ maxnoofCellIDforWarning INTEGER ::= 65535
+ maxnoofCellinAoI INTEGER ::= 256
+ maxnoofCellinEAI INTEGER ::= 65535
+ maxnoofCellinTAI INTEGER ::= 65535
+ maxnoofCellsforMBS INTEGER ::= 8192
+ maxnoofCellsingNB INTEGER ::= 16384
+ maxnoofCellsinngeNB INTEGER ::= 256
+ maxnoofCellsinNGRANNode INTEGER ::= 16384
+ maxnoofCellsinUEHistoryInfo INTEGER ::= 16
+ maxnoofCellsUEMovingTrajectory INTEGER ::= 16
+ maxnoofDRBs INTEGER ::= 32
+ maxnoofEmergencyAreaID INTEGER ::= 65535
+ maxnoofEAIforRestart INTEGER ::= 256
+ maxnoofEPLMNs INTEGER ::= 15
+ maxnoofEPLMNsPlusOne INTEGER ::= 16
+ maxnoofE-RABs INTEGER ::= 256
+ maxnoofErrors INTEGER ::= 256
+ maxnoofExtSliceItems INTEGER ::= 65535
+ maxnoofForbTACs INTEGER ::= 4096
+ maxnoofFreqforMDT INTEGER ::= 8
+ maxnoofMBSAreaSessionIDs INTEGER ::= 256
+ maxnoofMBSFSAs INTEGER ::= 64
+ maxnoofMBSQoSFlows INTEGER ::= 64
+ maxnoofMBSSessions INTEGER ::= 32
+ maxnoofMBSSessionsofUE INTEGER ::= 256
+ maxnoofMBSServiceAreaInformation INTEGER ::= 256
+ maxnoofMDTPLMNs INTEGER ::= 16
+ maxnoofMRBs INTEGER ::= 32
+ maxnoofMultiConnectivity INTEGER ::= 4
+ maxnoofMultiConnectivityMinusOne INTEGER ::= 3
+ maxnoofNeighPCIforMDT INTEGER ::= 32
+ maxnoofNGAPIESupportInfo INTEGER ::= 32
+ maxnoofNGConnectionsToReset INTEGER ::= 65536
+ maxnoofNRCellBands INTEGER ::= 32
+ maxnoofNSAGs INTEGER ::= 256
+ maxnoofPagingAreas INTEGER ::= 64
+ maxnoofPC5QoSFlows INTEGER ::= 2048
+ maxnoofPDUSessions INTEGER ::= 256
+ maxnoofPLMNs INTEGER ::= 12
+ maxnoofPSCellsPerPrimaryCellinUEHistoryInfo INTEGER ::= 8
+ maxnoofQosFlows INTEGER ::= 64
+ maxnoofQosParaSets INTEGER ::= 8
+ maxnoofRANNodeinAoI INTEGER ::= 64
+ maxnoofRecommendedCells INTEGER ::= 16
+ maxnoofRecommendedRANNodes INTEGER ::= 16
+ maxnoofAoI INTEGER ::= 64
+ maxnoofReportedCells INTEGER ::= 256
+ maxnoofSensorName INTEGER ::= 3
+ maxnoofServedGUAMIs INTEGER ::= 256
+ maxnoofSliceItems INTEGER ::= 1024
+ maxnoofSuccessfulHOReports INTEGER ::= 64
+ maxnoofTACs INTEGER ::= 256
+ maxnoofTACsinNTN INTEGER ::= 12
+ maxnoofTAforMDT INTEGER ::= 8
+ maxnoofTAIforInactive INTEGER ::= 16
+ maxnoofTAIforMBS INTEGER ::= 1024
+ maxnoofTAIforPaging INTEGER ::= 16
+ maxnoofTAIforRestart INTEGER ::= 2048
+ maxnoofTAIforWarning INTEGER ::= 65535
+ maxnoofTAIinAoI INTEGER ::= 16
+ maxnoofTimePeriods INTEGER ::= 2
+ maxnoofTNLAssociations INTEGER ::= 32
+ maxnoofUEsforPaging INTEGER ::= 4096
+ maxnoofWLANName INTEGER ::= 4
+ maxnoofXnExtTLAs INTEGER ::= 16
+ maxnoofXnGTP-TLAs INTEGER ::= 16
+ maxnoofXnTLAs INTEGER ::= 2
+ maxnoofCandidateCells INTEGER ::= 32
+ maxnoofTargetS-NSSAIs INTEGER ::= 8
+ maxNRARFCN INTEGER ::= 3279165
+ maxnoofCellIDforQMC INTEGER ::= 32
+ maxnoofPLMNforQMC INTEGER ::= 16
+ maxnoofUEAppLayerMeas INTEGER ::= 16
+ maxnoofSNSSAIforQMC INTEGER ::= 16
+ maxnoofTAforQMC INTEGER ::= 8
+ maxnoofThresholdsForExcessPacketDelay INTEGER ::= 255
-- **************************************************************
--
@@ -405,7 +440,7 @@ maxProtocolIEs INTEGER ::= 65535
id-AlternativeQoSParaSetList ProtocolIE-ID ::= 220
id-CurrentQoSParaSetIndex ProtocolIE-ID ::= 221
id-CEmodeBrestricted ProtocolIE-ID ::= 222
- id-PagingeDRXInformation ProtocolIE-ID ::= 223
+ id-EUTRA-PagingeDRXInformation ProtocolIE-ID ::= 223
id-CEmodeBSupport-Indicator ProtocolIE-ID ::= 224
id-LTEM-Indication ProtocolIE-ID ::= 225
id-EndIndication ProtocolIE-ID ::= 226
@@ -451,7 +486,7 @@ maxProtocolIEs INTEGER ::= 65535
id-DAPSRequestInfo ProtocolIE-ID ::= 266
id-DAPSResponseInfoList ProtocolIE-ID ::= 267
id-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID ::= 268
- id-NotifySourceNGRANNode ProtocolIE-ID ::= 269
+ id-NotifySourceNGRANNode ProtocolIE-ID ::= 269
id-ExtendedSliceSupportList ProtocolIE-ID ::= 270
id-ExtendedTAISliceSupportList ProtocolIE-ID ::= 271
id-ConfiguredTACIndication ProtocolIE-ID ::= 272
@@ -459,12 +494,99 @@ maxProtocolIEs INTEGER ::= 65535
id-Extended-AMFName ProtocolIE-ID ::= 274
id-GlobalCable-ID ProtocolIE-ID ::= 275
id-QosMonitoringReportingFrequency ProtocolIE-ID ::= 276
- id-QosFlowParametersList ProtocolIE-ID ::= 277
+ id-QosFlowParametersList ProtocolIE-ID ::= 277
id-QosFlowFeedbackList ProtocolIE-ID ::= 278
id-BurstArrivalTimeDownlink ProtocolIE-ID ::= 279
id-ExtendedUEIdentityIndexValue ProtocolIE-ID ::= 280
- id-PduSessionExpectedUEActivityBehaviour ProtocolIE-ID ::= 281
+ id-PduSessionExpectedUEActivityBehaviour ProtocolIE-ID ::= 281
id-MicoAllPLMN ProtocolIE-ID ::= 282
id-QosFlowFailedToSetupList ProtocolIE-ID ::= 283
+ id-SourceTNLAddrInfo ProtocolIE-ID ::= 284
+ id-ExtendedReportIntervalMDT ProtocolIE-ID ::= 285
+ id-SourceNodeID ProtocolIE-ID ::= 286
+ id-NRNTNTAIInformation ProtocolIE-ID ::= 287
+ id-UEContextReferenceAtSource ProtocolIE-ID ::= 288
+ id-LastVisitedPSCellList ProtocolIE-ID ::= 289
+ id-IntersystemSONInformationRequest ProtocolIE-ID ::= 290
+ id-IntersystemSONInformationReply ProtocolIE-ID ::= 291
+ id-EnergySavingIndication ProtocolIE-ID ::= 292
+ id-IntersystemResourceStatusUpdate ProtocolIE-ID ::= 293
+ id-SuccessfulHandoverReportList ProtocolIE-ID ::= 294
+ id-MBS-AreaSessionID ProtocolIE-ID ::= 295
+ id-MBS-QoSFlowsToBeSetupList ProtocolIE-ID ::= 296
+ id-MBS-QoSFlowsToBeSetupModList ProtocolIE-ID ::= 297
+ id-MBS-ServiceArea ProtocolIE-ID ::= 298
+ id-MBS-SessionID ProtocolIE-ID ::= 299
+ id-MBS-DistributionReleaseRequestTransfer ProtocolIE-ID ::= 300
+ id-MBS-DistributionSetupRequestTransfer ProtocolIE-ID ::= 301
+ id-MBS-DistributionSetupResponseTransfer ProtocolIE-ID ::= 302
+ id-MBS-DistributionSetupUnsuccessfulTransfer ProtocolIE-ID ::= 303
+ id-MulticastSessionActivationRequestTransfer ProtocolIE-ID ::= 304
+ id-MulticastSessionDeactivationRequestTransfer ProtocolIE-ID ::= 305
+ id-MulticastSessionUpdateRequestTransfer ProtocolIE-ID ::= 306
+ id-MulticastGroupPagingAreaList ProtocolIE-ID ::= 307
+ --WS extension
+ id-Unknown-308 ProtocolIE-ID ::= 308
+ id-MBS-SupportIndicator ProtocolIE-ID ::= 309
+ id-MBSSessionFailedtoSetupList ProtocolIE-ID ::= 310
+ id-MBSSessionFailedtoSetuporModifyList ProtocolIE-ID ::= 311
+ id-MBSSessionSetupResponseList ProtocolIE-ID ::= 312
+ id-MBSSessionSetuporModifyResponseList ProtocolIE-ID ::= 313
+ id-MBSSessionSetupFailureTransfer ProtocolIE-ID ::= 314
+ id-MBSSessionSetupRequestTransfer ProtocolIE-ID ::= 315
+ id-MBSSessionSetupResponseTransfer ProtocolIE-ID ::= 316
+ id-MBSSessionToReleaseList ProtocolIE-ID ::= 317
+ id-MBSSessionSetupRequestList ProtocolIE-ID ::= 318
+ id-MBSSessionSetuporModifyRequestList ProtocolIE-ID ::= 319
+ --WS extension
+ id-Unknown-320 ProtocolIE-ID ::= 320
+ id-Unknown-321 ProtocolIE-ID ::= 321
+ id-Unknown-322 ProtocolIE-ID ::= 322
+ id-MBS-ActiveSessionInformation-SourcetoTargetList ProtocolIE-ID ::= 323
+ id-MBS-ActiveSessionInformation-TargettoSourceList ProtocolIE-ID ::= 324
+ id-OnboardingSupport ProtocolIE-ID ::= 325
+ id-TimeSyncAssistanceInfo ProtocolIE-ID ::= 326
+ id-SurvivalTime ProtocolIE-ID ::= 327
+ id-QMCConfigInfo ProtocolIE-ID ::= 328
+ id-QMCDeactivation ProtocolIE-ID ::= 329
+ --WS extension
+ id-Unknown-330 ProtocolIE-ID ::= 330
+ id-PDUSessionPairID ProtocolIE-ID ::= 331
+ id-NR-PagingeDRXInformation ProtocolIE-ID ::= 332
+ id-RedCapIndication ProtocolIE-ID ::= 333
+ id-TargetNSSAIInformation ProtocolIE-ID ::= 334
+ id-UESliceMaximumBitRateList ProtocolIE-ID ::= 335
+ id-M4ReportAmount ProtocolIE-ID ::= 336
+ id-M5ReportAmount ProtocolIE-ID ::= 337
+ id-M6ReportAmount ProtocolIE-ID ::= 338
+ id-M7ReportAmount ProtocolIE-ID ::= 339
+ id-IncludeBeamMeasurementsIndication ProtocolIE-ID ::= 340
+ id-ExcessPacketDelayThresholdConfiguration ProtocolIE-ID ::= 341
+ id-PagingCause ProtocolIE-ID ::= 342
+ id-PagingCauseIndicationForVoiceService ProtocolIE-ID ::= 343
+ id-PEIPSassistanceInformation ProtocolIE-ID ::= 344
+ id-FiveG-ProSeAuthorized ProtocolIE-ID ::= 345
+ id-FiveG-ProSeUEPC5AggregateMaximumBitRate ProtocolIE-ID ::= 346
+ id-FiveG-ProSePC5QoSParameters ProtocolIE-ID ::= 347
+ id-MBSSessionModificationFailureTransfer ProtocolIE-ID ::= 348
+ id-MBSSessionModificationRequestTransfer ProtocolIE-ID ::= 349
+ id-MBSSessionModificationResponseTransfer ProtocolIE-ID ::= 350
+ id-MBS-QoSFlowToReleaseList ProtocolIE-ID ::= 351
+ id-MBS-SessionTNLInfo5GC ProtocolIE-ID ::= 352
+ id-TAINSAGSupportList ProtocolIE-ID ::= 353
+ id-SourceNodeTNLAddrInfo ProtocolIE-ID ::= 354
+ id-NGAPIESupportInformationRequestList ProtocolIE-ID ::= 355
+ id-NGAPIESupportInformationResponseList ProtocolIE-ID ::= 356
+ id-MBS-SessionFSAIDList ProtocolIE-ID ::= 357
+ id-MBSSessionReleaseResponseTransfer ProtocolIE-ID ::= 358
+ id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID ::= 359
+ id-EarlyMeasurement ProtocolIE-ID ::= 360
+ id-BeamMeasurementsReportConfiguration ProtocolIE-ID ::= 361
+ id-HFCNode-ID-new ProtocolIE-ID ::= 362
+ id-GlobalCable-ID-new ProtocolIE-ID ::= 363
+ id-TargetHomeENB-ID ProtocolIE-ID ::= 364
+ id-HashedUEIdentityIndexValue ProtocolIE-ID ::= 365
+ id-ExtendedMobilityInformation ProtocolIE-ID ::= 366
+
END
diff --git a/epan/dissectors/asn1/ngap/NGAP-Containers.asn b/epan/dissectors/asn1/ngap/NGAP-Containers.asn
index 960d761e83..4d8b58696b 100644
--- a/epan/dissectors/asn1/ngap/NGAP-Containers.asn
+++ b/epan/dissectors/asn1/ngap/NGAP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.413 V16.7.0 (2021-10)
+-- 3GPP TS 38.413 V17.7.0 (2023-12)
-- 9.4.8 Container Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
NGAP-Containers {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-Containers (5) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -120,11 +120,11 @@ WITH SYNTAX {
--
-- **************************************************************
-ProtocolIE-Container {NGAP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Container {NGAP-PROTOCOL-IES : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IEsSetParam}}
-ProtocolIE-SingleContainer {NGAP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-SingleContainer {NGAP-PROTOCOL-IES : IEsSetParam} ::=
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field {NGAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
@@ -139,7 +139,7 @@ ProtocolIE-Field {NGAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
--
-- **************************************************************
-ProtocolIE-ContainerPair {NGAP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ProtocolIE-ContainerPair {NGAP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-FieldPair {{IEsSetParam}}
@@ -171,7 +171,7 @@ ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, NGAP-P
--
-- **************************************************************
-ProtocolExtensionContainer {NGAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ProtocolExtensionContainer {NGAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
@@ -187,7 +187,7 @@ ProtocolExtensionField {NGAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENC
--
-- **************************************************************
-PrivateIE-Container {NGAP-PRIVATE-IES : IEsSetParam } ::=
+PrivateIE-Container {NGAP-PRIVATE-IES : IEsSetParam } ::=
SEQUENCE (SIZE (1..maxPrivateIEs)) OF
PrivateIE-Field {{IEsSetParam}}
diff --git a/epan/dissectors/asn1/ngap/NGAP-IEs.asn b/epan/dissectors/asn1/ngap/NGAP-IEs.asn
index 7c48356fb4..defa811c35 100644
--- a/epan/dissectors/asn1/ngap/NGAP-IEs.asn
+++ b/epan/dissectors/asn1/ngap/NGAP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.413 V16.7.0 (2021-10)
+-- 3GPP TS 38.413 V17.7.0 (2023-12)
-- 9.4.5 Information Element Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
NGAP-IEs {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-IEs (2) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -43,36 +43,78 @@ IMPORTS
id-DirectForwardingPathAvailability,
id-DL-NGU-UP-TNLInformation,
id-EndpointIPAddressAndPort,
+ id-EnergySavingIndication,
+ id-ExtendedMobilityInformation,
id-ExtendedPacketDelayBudget,
id-ExtendedRATRestrictionInformation,
+ id-ExtendedReportIntervalMDT,
id-ExtendedSliceSupportList,
id-ExtendedTAISliceSupportList,
id-ExtendedUEIdentityIndexValue,
+ id-EUTRA-PagingeDRXInformation,
id-GlobalCable-ID,
id-GlobalRANNodeID,
id-GlobalTNGF-ID,
id-GlobalTWIF-ID,
id-GlobalW-AGF-ID,
id-GUAMIType,
+ id-HashedUEIdentityIndexValue,
+ id-IncludeBeamMeasurementsIndication,
+ id-IntersystemSONInformationRequest,
+ id-IntersystemSONInformationReply,
+ id-IntersystemResourceStatusUpdate,
id-LastEUTRAN-PLMNIdentity,
+ id-LastVisitedPSCellList,
id-LocationReportingAdditionalInfo,
+ id-M4ReportAmount,
+ id-M5ReportAmount,
+ id-M6ReportAmount,
+ id-ExcessPacketDelayThresholdConfiguration,
+ id-M7ReportAmount,
id-MaximumIntegrityProtectedDataRate-DL,
+ id-MBS-AreaSessionID,
+ id-MBS-QoSFlowsToBeSetupList,
+ id-MBS-QoSFlowsToBeSetupModList,
+ id-MBS-QoSFlowToReleaseList,
+ id-MBS-ServiceArea,
+ id-MBS-SessionFSAIDList,
+ id-MBS-SessionID,
+ id-MBS-ActiveSessionInformation-SourcetoTargetList,
+ id-MBS-ActiveSessionInformation-TargettoSourceList,
+ id-MBS-SessionTNLInfo5GC,
+ id-MBS-SupportIndicator,
+ id-MBSSessionFailedtoSetupList,
+ id-MBSSessionFailedtoSetuporModifyList,
+ id-MBSSessionSetupResponseList,
+ id-MBSSessionSetuporModifyResponseList,
+ id-MBSSessionToReleaseList,
+ id-MBSSessionSetupRequestList,
+ id-MBSSessionSetuporModifyRequestList,
id-MDTConfiguration,
id-MicoAllPLMN,
id-NetworkInstance,
+ id-NGAPIESupportInformationRequestList,
+ id-NGAPIESupportInformationResponseList,
id-NID,
+ id-NR-CGI,
+ id-NRNTNTAIInformation,
id-NPN-MobilityInformation,
id-NPN-PagingAssistanceInformation,
id-NPN-Support,
+ id-NR-PagingeDRXInformation,
id-OldAssociatedQosFlowList-ULendmarkerexpected,
+ id-OnboardingSupport,
id-PagingAssisDataforCEcapabUE,
- id-PagingeDRXInformation,
+ id-PagingCauseIndicationForVoiceService,
id-PDUSessionAggregateMaximumBitRate,
id-PduSessionExpectedUEActivityBehaviour,
+ id-PDUSessionPairID,
id-PDUSessionResourceFailedToSetupListCxtFail,
id-PDUSessionResourceReleaseResponseTransfer,
id-PDUSessionType,
+ id-PEIPSassistanceInformation,
id-PSCellInformation,
+ id-QMCConfigInfo,
id-QosFlowAddOrModifyRequestList,
id-QosFlowFailedToSetupList,
id-QosFlowFeedbackList,
@@ -81,6 +123,8 @@ IMPORTS
id-QosFlowToReleaseList,
id-QosMonitoringRequest,
id-QosMonitoringReportingFrequency,
+ id-SuccessfulHandoverReportList,
+ id-UEContextReferenceAtSource,
id-RAT-Information,
id-RedundantCommonNetworkInstance,
id-RedundantDL-NGU-TNLInformationReused,
@@ -96,7 +140,13 @@ IMPORTS
id-SgNB-UE-X2AP-ID,
id-S-NSSAI,
id-SONInformationReport,
+ id-SourceNodeID,
+ id-SourceNodeTNLAddrInfo,
+ id-SourceTNLAddrInfo,
+ id-SurvivalTime,
id-TNLAssociationTransportLayerAddressNGRAN,
+ id-TAINSAGSupportList,
+ id-TargetHomeENB-ID,
id-TargetRNC-ID,
id-TraceCollectionEntityURI,
id-TSCTrafficCharacteristics,
@@ -111,6 +161,11 @@ IMPORTS
id-UserLocationInformationTNGF,
id-UserLocationInformationTWIF,
id-UserLocationInformationW-AGF,
+ id-EarlyMeasurement,
+ id-BeamMeasurementsReportConfiguration,
+ id-TAI,
+ id-HFCNode-ID-new,
+ id-GlobalCable-ID-new,
maxnoofAllowedAreas,
maxnoofAllowedCAGsperPLMN,
maxnoofAllowedS-NSSAIs,
@@ -119,11 +174,14 @@ IMPORTS
maxnoofCAGSperCell,
maxnoofCandidateCells,
maxnoofCellIDforMDT,
+ maxnoofCellIDforQMC,
maxnoofCellIDforWarning,
maxnoofCellinAoI,
maxnoofCellinEAI,
+ maxnoofCellsforMBS,
maxnoofCellsingNB,
maxnoofCellsinngeNB,
+ maxnoofCellsinNGRANNode,
maxnoofCellinTAI,
maxnoofCellsinUEHistoryInfo,
maxnoofCellsUEMovingTrajectory,
@@ -137,38 +195,60 @@ IMPORTS
maxnoofExtSliceItems,
maxnoofForbTACs,
maxnoofFreqforMDT,
+ maxnoofMBSFSAs,
+ maxnoofMBSQoSFlows,
+ maxnoofMBSServiceAreaInformation,
+ maxnoofMBSAreaSessionIDs,
+ maxnoofMBSSessions,
+ maxnoofMBSSessionsofUE,
maxnoofMDTPLMNs,
+ maxnoofMRBs,
maxnoofMultiConnectivity,
maxnoofMultiConnectivityMinusOne,
maxnoofNeighPCIforMDT,
+ maxnoofNGAPIESupportInfo,
maxnoofNGConnectionsToReset,
maxNRARFCN,
maxnoofNRCellBands,
+ maxnoofNSAGs,
+ maxnoofPagingAreas,
maxnoofPC5QoSFlows,
maxnoofPDUSessions,
maxnoofPLMNs,
+ maxnoofPLMNforQMC,
maxnoofQosFlows,
maxnoofQosParaSets,
maxnoofRANNodeinAoI,
maxnoofRecommendedCells,
maxnoofRecommendedRANNodes,
maxnoofAoI,
+ maxnoofPSCellsPerPrimaryCellinUEHistoryInfo,
+ maxnoofReportedCells,
maxnoofSensorName,
maxnoofServedGUAMIs,
maxnoofSliceItems,
+ maxnoofSNSSAIforQMC,
+ maxnoofSuccessfulHOReports,
maxnoofTACs,
+ maxnoofTACsinNTN,
maxnoofTAforMDT,
+ maxnoofTAforQMC,
maxnoofTAIforInactive,
+ maxnoofTAIforMBS,
maxnoofTAIforPaging,
maxnoofTAIforRestart,
maxnoofTAIforWarning,
maxnoofTAIinAoI,
+ maxnoofTargetS-NSSAIs,
maxnoofTimePeriods,
maxnoofTNLAssociations,
+ maxnoofUEAppLayerMeas,
+ maxnoofUEsforPaging,
maxnoofWLANName,
maxnoofXnExtTLAs,
maxnoofXnGTP-TLAs,
- maxnoofXnTLAs
+ maxnoofXnTLAs,
+ maxnoofThresholdsForExcessPacketDelay
FROM NGAP-Constants
@@ -421,7 +501,7 @@ AssistanceDataForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
}
AssistanceDataForRecommendedCells ::= SEQUENCE {
- recommendedCellsForPaging RecommendedCellsForPaging,
+ recommendedCellsForPaging RecommendedCellsForPaging,
iE-Extensions ProtocolExtensionContainer { {AssistanceDataForRecommendedCells-ExtIEs} } OPTIONAL,
...
}
@@ -430,6 +510,32 @@ AssistanceDataForRecommendedCells-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+AssociatedMBSQosFlowSetupRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF AssociatedMBSQosFlowSetupRequestItem
+
+AssociatedMBSQosFlowSetupRequestItem ::= SEQUENCE {
+ mBS-QosFlowIdentifier QosFlowIdentifier,
+ associatedUnicastQosFlowIdentifier QosFlowIdentifier,
+ iE-Extensions ProtocolExtensionContainer { { AssociatedMBSQosFlowSetupRequestItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AssociatedMBSQosFlowSetupRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AssociatedMBSQosFlowSetuporModifyRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF AssociatedMBSQosFlowSetuporModifyRequestItem
+
+AssociatedMBSQosFlowSetuporModifyRequestItem ::= SEQUENCE {
+ mBS-QosFlowIdentifier QosFlowIdentifier,
+ associatedUnicastQosFlowIdentifier QosFlowIdentifier,
+ iE-Extensions ProtocolExtensionContainer { { AssociatedMBSQosFlowSetuporModifyRequestItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AssociatedMBSQosFlowSetuporModifyRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
AssociatedQosFlowList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF AssociatedQosFlowItem
AssociatedQosFlowItem ::= SEQUENCE {
@@ -448,7 +554,7 @@ AuthenticatedIndication ::= ENUMERATED {true, ...}
AveragingWindow ::= INTEGER (0..4095, ...)
-AreaScopeOfMDT-NR ::= CHOICE {
+AreaScopeOfMDT-NR ::= CHOICE {
cellBased CellBasedMDT-NR,
tABased TABasedMDT,
pLMNWide NULL,
@@ -460,7 +566,7 @@ AreaScopeOfMDT-NR-ExtIEs NGAP-PROTOCOL-IES ::= {
...
}
-AreaScopeOfMDT-EUTRA ::= CHOICE {
+AreaScopeOfMDT-EUTRA ::= CHOICE {
cellBased CellBasedMDT-EUTRA,
tABased TABasedMDT,
pLMNWide NULL,
@@ -484,9 +590,56 @@ AreaScopeOfNeighCellsItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+AreaScopeOfQMC ::= CHOICE {
+ cellBased CellBasedQMC,
+ tABased TABasedQMC,
+ tAIBased TAIBasedQMC,
+ pLMNAreaBased PLMNAreaBasedQMC,
+ choice-Extensions ProtocolIE-SingleContainer { { AreaScopeOfQMC-ExtIEs} }
+}
+
+AreaScopeOfQMC-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+AvailableRANVisibleQoEMetrics ::= SEQUENCE {
+ applicationLayerBufferLevelList ENUMERATED {true, ...} OPTIONAL,
+ playoutDelayForMediaStartup ENUMERATED {true, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { AvailableRANVisibleQoEMetrics-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AvailableRANVisibleQoEMetrics-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
-- B
-BitRate ::= INTEGER (0..4000000000000, ...)
+BeamMeasurementsReportConfiguration ::= SEQUENCE {
+ beamMeasurementsReportQuantity BeamMeasurementsReportQuantity OPTIONAL,
+ maxNrofRS-IndexesToReport MaxNrofRS-IndexesToReport OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BeamMeasurementsReportConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BeamMeasurementsReportConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BeamMeasurementsReportQuantity ::= SEQUENCE {
+ rSRP ENUMERATED {true, ...},
+ rSRQ ENUMERATED {true, ...},
+ sINR ENUMERATED {true, ...},
+ iE-Extensions ProtocolExtensionContainer { { BeamMeasurementsReportQuantity-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BeamMeasurementsReportQuantity-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BitRate ::= INTEGER (0..4000000000000, ...)
BroadcastCancelledAreaList ::= CHOICE {
cellIDCancelledEUTRA CellIDCancelledEUTRA,
@@ -526,15 +679,16 @@ BroadcastPLMNItem ::= SEQUENCE {
}
BroadcastPLMNItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- {ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional}|
- {ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional},
+ {ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional}|
+ {ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional}|
+ {ID id-TAINSAGSupportList CRITICALITY ignore EXTENSION TAINSAGSupportList PRESENCE optional},
...
}
BluetoothMeasurementConfiguration ::= SEQUENCE {
- bluetoothMeasConfig BluetoothMeasConfig,
- bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL,
- bt-rssi ENUMERATED {true, ...} OPTIONAL,
+ bluetoothMeasConfig BluetoothMeasConfig,
+ bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL,
+ bt-rssi ENUMERATED {true, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { BluetoothMeasurementConfiguration-ExtIEs } } OPTIONAL,
...
}
@@ -657,7 +811,7 @@ CandidateCellID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
CandidatePCI::= SEQUENCE {
candidatePCI INTEGER (0..1007, ...),
- candidateNRARFCN INTEGER (0..3279165),
+ candidateNRARFCN INTEGER (0..maxNRARFCN),
iE-Extensions ProtocolExtensionContainer { { CandidatePCI-ExtIEs} } OPTIONAL,
...
}
@@ -694,7 +848,8 @@ CauseNas ::= ENUMERATED {
authentication-failure,
deregister,
unspecified,
- ...
+ ...,
+ uE-not-in-PLMN-serving-area
}
CauseProtocol ::= ENUMERATED {
@@ -714,8 +869,8 @@ CauseRadioNetwork ::= ENUMERATED {
successful-handover,
release-due-to-ngran-generated-reason,
release-due-to-5gc-generated-reason,
- handover-cancelled,
- partial-handover,
+ handover-cancelled,
+ partial-handover,
ho-failure-in-target-5GC-ngran-node-or-target-system,
ho-target-not-allowed,
tngrelocoverall-expiry,
@@ -761,7 +916,12 @@ CauseRadioNetwork ::= ENUMERATED {
rsn-not-available-for-the-up,
npn-access-denied,
cag-only-access-denied,
- insufficient-ue-capabilities
+ insufficient-ue-capabilities,
+ redcap-ue-not-supported,
+ unknown-MBS-Session-ID,
+ indicated-MBS-session-area-information-not-served-by-the-gNB,
+ inconsistent-slice-info-for-the-session,
+ misaligned-association-for-multicast-unicast
}
CauseTransport ::= ENUMERATED {
@@ -876,6 +1036,8 @@ CNAssistedRANTuning-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+CNsubgroupID ::= INTEGER (0..7, ...)
+
CNTypeRestrictionsForEquivalent ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF CNTypeRestrictionsForEquivalentItem
CNTypeRestrictionsForEquivalentItem ::= SEQUENCE {
@@ -979,10 +1141,14 @@ CoreNetworkAssistanceInformationForInactive ::= SEQUENCE {
}
CoreNetworkAssistanceInformationForInactive-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- { ID id-PagingeDRXInformation CRITICALITY ignore EXTENSION PagingeDRXInformation PRESENCE optional }|
- { ID id-ExtendedUEIdentityIndexValue CRITICALITY ignore EXTENSION ExtendedUEIdentityIndexValue PRESENCE optional }|
- { ID id-UERadioCapabilityForPaging CRITICALITY ignore EXTENSION UERadioCapabilityForPaging PRESENCE optional }|
- { ID id-MicoAllPLMN CRITICALITY ignore EXTENSION MicoAllPLMN PRESENCE optional },
+ { ID id-EUTRA-PagingeDRXInformation CRITICALITY ignore EXTENSION EUTRA-PagingeDRXInformation PRESENCE optional }|
+ { ID id-ExtendedUEIdentityIndexValue CRITICALITY ignore EXTENSION ExtendedUEIdentityIndexValue PRESENCE optional }|
+ { ID id-UERadioCapabilityForPaging CRITICALITY ignore EXTENSION UERadioCapabilityForPaging PRESENCE optional }|
+ { ID id-MicoAllPLMN CRITICALITY ignore EXTENSION MicoAllPLMN PRESENCE optional }|
+ { ID id-NR-PagingeDRXInformation CRITICALITY ignore EXTENSION NR-PagingeDRXInformation PRESENCE optional }|
+ { ID id-PagingCauseIndicationForVoiceService CRITICALITY ignore EXTENSION PagingCauseIndicationForVoiceService PRESENCE optional }|
+ { ID id-PEIPSassistanceInformation CRITICALITY ignore EXTENSION PEIPSassistanceInformation PRESENCE optional }|
+ { ID id-HashedUEIdentityIndexValue CRITICALITY ignore EXTENSION HashedUEIdentityIndexValue PRESENCE optional },
...
}
@@ -1070,6 +1236,18 @@ CellBasedMDT-EUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+CellBasedQMC ::= SEQUENCE {
+ cellIdListforQMC CellIdListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {CellBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellBasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellIdListforQMC ::= SEQUENCE (SIZE(1..maxnoofCellIDforQMC)) OF NGRAN-CGI
+
CellIdListforMDT-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF EUTRA-CGI
@@ -1297,6 +1475,8 @@ Dynamic5QIDescriptor-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
-- E
+EarlyMeasurement ::= ENUMERATED {true, ...}
+
EarlyStatusTransfer-TransparentContainer ::= SEQUENCE {
procedureStage ProcedureStageChoice,
iE-Extensions ProtocolExtensionContainer { {EarlyStatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL,
@@ -1488,6 +1668,8 @@ E-RABInformationItem ::= SEQUENCE {
}
E-RABInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ {ID id-SourceTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ {ID id-SourceNodeTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1508,6 +1690,31 @@ EUTRA-CGIList ::= SEQUENCE (SIZE(1..maxnoofCellsinngeNB)) OF EUTRA-CGI
EUTRA-CGIListForWarning ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF EUTRA-CGI
+EUTRA-PagingeDRXInformation ::= SEQUENCE {
+ eUTRA-paging-eDRX-Cycle EUTRA-Paging-eDRX-Cycle,
+ eUTRA-paging-Time-Window EUTRA-Paging-Time-Window OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {EUTRA-PagingeDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRA-PagingeDRXInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EUTRA-Paging-eDRX-Cycle ::= ENUMERATED {
+ hfhalf, hf1, hf2, hf4, hf6,
+ hf8, hf10, hf12, hf14, hf16,
+ hf32, hf64, hf128, hf256,
+ ...
+}
+
+EUTRA-Paging-Time-Window ::= ENUMERATED {
+ s1, s2, s3, s4, s5,
+ s6, s7, s8, s9, s10,
+ s11, s12, s13, s14, s15, s16,
+ ...
+}
+
EUTRAencryptionAlgorithms ::= BIT STRING (SIZE(16, ...))
EUTRAintegrityProtectionAlgorithms ::= BIT STRING (SIZE(16, ...))
@@ -1522,6 +1729,24 @@ EventType ::= ENUMERATED {
...
}
+ExcessPacketDelayThresholdConfiguration ::= SEQUENCE (SIZE(1..maxnoofThresholdsForExcessPacketDelay)) OF ExcessPacketDelayThresholdItem
+
+ExcessPacketDelayThresholdItem ::= SEQUENCE {
+ fiveQi FiveQI,
+ excessPacketDelayThresholdValue ExcessPacketDelayThresholdValue,
+ iE-Extensions ProtocolExtensionContainer { { ExcessPacketDelayThresholdItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ExcessPacketDelayThresholdItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ExcessPacketDelayThresholdValue ::= ENUMERATED {
+ms0dot25, ms0dot5, ms1, ms2, ms4, ms5, ms10, ms20, ms30, ms40, ms50, ms60, ms70, ms80, ms90, ms100, ms150, ms300, ms500,
+ ...
+}
+
ExpectedActivityPeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181, ...)
ExpectedHOInterval ::= ENUMERATED {
@@ -1577,7 +1802,7 @@ ExpectedUEMovingTrajectoryItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
Extended-AMFName ::= SEQUENCE {
aMFNameVisibleString AMFNameVisibleString OPTIONAL,
- aMFNameUTF8String AMFNameUTF8String OPTIONAL,
+ aMFNameUTF8String AMFNameUTF8String OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { Extended-AMFName-ExtIEs } } OPTIONAL,
...
}
@@ -1586,12 +1811,12 @@ Extended-AMFName-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
-ExtendedPacketDelayBudget ::= INTEGER (1..65535, ...)
+ExtendedPacketDelayBudget ::= INTEGER (1..65535, ..., 65536..109999)
Extended-RANNodeName ::= SEQUENCE {
rANNodeNameVisibleString RANNodeNameVisibleString OPTIONAL,
- rANNodeNameUTF8String RANNodeNameUTF8String OPTIONAL,
+ rANNodeNameUTF8String RANNodeNameUTF8String OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { Extended-RANNodeName-ExtIEs } } OPTIONAL, ...
}
@@ -1660,6 +1885,89 @@ FailureIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+FiveG-ProSeAuthorized ::= SEQUENCE {
+ fiveGProSeDirectDiscovery FiveGProSeDirectDiscovery OPTIONAL,
+ fiveGProSeDirectCommunication FiveGProSeDirectCommunication OPTIONAL,
+ fiveGProSeLayer2UEtoNetworkRelay FiveGProSeLayer2UEtoNetworkRelay OPTIONAL,
+ fiveGProSeLayer3UEtoNetworkRelay FiveGProSeLayer3UEtoNetworkRelay OPTIONAL,
+ fiveGProSeLayer2RemoteUE FiveGProSeLayer2RemoteUE OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {FiveG-ProSeAuthorized-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveG-ProSeAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveGProSeDirectDiscovery ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeDirectCommunication ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeLayer2UEtoNetworkRelay ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeLayer3UEtoNetworkRelay ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeLayer2RemoteUE ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+
+
+FiveG-ProSePC5QoSParameters ::= SEQUENCE {
+ fiveGProSepc5QoSFlowList FiveGProSePC5QoSFlowList,
+ fiveGProSepc5LinkAggregateBitRates BitRate OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { FiveG-ProSePC5QoSParameters-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveG-ProSePC5QoSParameters-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveGProSePC5QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF FiveGProSePC5QoSFlowItem
+
+FiveGProSePC5QoSFlowItem ::= SEQUENCE {
+ fiveGproSepQI FiveQI,
+ fiveGproSepc5FlowBitRates FiveGProSePC5FlowBitRates OPTIONAL,
+ fiveGproSerange Range OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5QoSFlowItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGProSePC5QoSFlowItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveGProSePC5FlowBitRates ::= SEQUENCE {
+ fiveGproSeguaranteedFlowBitRate BitRate,
+ fiveGproSemaximumFlowBitRate BitRate,
+ iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5FlowBitRates-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGProSePC5FlowBitRates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
FiveG-S-TMSI ::= SEQUENCE {
aMFSetID AMFSetID,
aMFPointer AMFPointer,
@@ -1732,6 +2040,17 @@ GBR-QosInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
GlobalCable-ID ::= OCTET STRING
+GlobalCable-ID-new ::= SEQUENCE {
+ globalCable-ID GlobalCable-ID,
+ tAI TAI,
+ iE-Extensions ProtocolExtensionContainer { { GlobalCable-ID-new-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GlobalCable-ID-new-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
GlobalENB-ID ::= SEQUENCE {
pLMNidentity PLMNIdentity,
eNB-ID ENB-ID,
@@ -1774,6 +2093,7 @@ GlobalLine-ID ::= SEQUENCE {
}
GlobalLine-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional },
...
}
@@ -1798,7 +2118,7 @@ GlobalRANNodeID ::= CHOICE {
}
GlobalRANNodeID-ExtIEs NGAP-PROTOCOL-IES ::= {
- { ID id-GlobalTNGF-ID CRITICALITY reject TYPE GlobalTNGF-ID PRESENCE mandatory }|
+ { ID id-GlobalTNGF-ID CRITICALITY reject TYPE GlobalTNGF-ID PRESENCE mandatory }|
{ ID id-GlobalTWIF-ID CRITICALITY reject TYPE GlobalTWIF-ID PRESENCE mandatory }|
{ ID id-GlobalW-AGF-ID CRITICALITY reject TYPE GlobalW-AGF-ID PRESENCE mandatory },
...
@@ -1928,7 +2248,8 @@ HandoverRequestAcknowledgeTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
{ ID id-DataForwardingResponseERABList CRITICALITY ignore EXTENSION DataForwardingResponseERABList PRESENCE optional }|
{ ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }|
{ ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }|
- { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional },
+ { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }|
+ { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional },
...
}
@@ -1961,8 +2282,22 @@ HandoverType ::= ENUMERATED {
fivegs-to-utran
}
+HashedUEIdentityIndexValue ::= BIT STRING (SIZE(13, ...))
+
+
HFCNode-ID ::= OCTET STRING
+HFCNode-ID-new ::= SEQUENCE {
+ hFCNode-ID HFCNode-ID,
+ tAI TAI,
+ iE-Extensions ProtocolExtensionContainer { { HFCNode-ID-new-ExtIEs} } OPTIONAL,
+ ...
+}
+
+HFCNode-ID-new-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
HOReport::= SEQUENCE {
handoverReportType ENUMERATED {ho-too-early, ho-to-wrong-cell, intersystem-ping-pong, ...},
handoverCause Cause,
@@ -1980,6 +2315,7 @@ HOReport::= SEQUENCE {
}
HOReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-ExtendedMobilityInformation CRITICALITY ignore EXTENSION ExtendedMobilityInformation PRESENCE optional },
...
}
@@ -2041,11 +2377,11 @@ IntendedNumberOfPagingAttempts ::= INTEGER (1..16, ...)
InterfacesToTrace ::= BIT STRING (SIZE(8))
-ImmediateMDTNr ::= SEQUENCE {
+ImmediateMDTNr ::= SEQUENCE {
measurementsToActivate MeasurementsToActivate,
- m1Configuration M1Configuration OPTIONAL,
+ m1Configuration M1Configuration OPTIONAL,
-- The above IE shall be present if the Measurements to Activate IE has the first bit set to “1”
- m4Configuration M4Configuration OPTIONAL,
+ m4Configuration M4Configuration OPTIONAL,
-- The above IE shall be present if the Measurements to Activate IE has the third bit set to “1”
m5Configuration M5Configuration OPTIONAL,
-- The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1”
@@ -2123,9 +2459,206 @@ IntersystemSONInformation ::= CHOICE {
}
IntersystemSONInformation-ExtIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-IntersystemSONInformationRequest CRITICALITY ignore TYPE IntersystemSONInformationRequest PRESENCE mandatory }|
+ { ID id-IntersystemSONInformationReply CRITICALITY ignore TYPE IntersystemSONInformationReply PRESENCE mandatory },
+ ...
+}
+
+-- --------------------------------------------------------------------
+-- INTER SYSTEM SON INFORMATION REQUEST
+-- --------------------------------------------------------------------
+
+IntersystemSONInformationRequest ::= CHOICE {
+ nGRAN-CellActivation IntersystemCellActivationRequest,
+ resourceStatus IntersystemResourceStatusRequest,
+ choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformationRequest-ExtIEs} }
+}
+
+IntersystemSONInformationRequest-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+IntersystemCellActivationRequest ::= SEQUENCE {
+ activationID INTEGER (0..16384, ...),
+ cellsToActivateList CellsToActivateList,
+ iE-Extensions ProtocolExtensionContainer { { IntersystemCellActivationRequest-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IntersystemCellActivationRequest-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellsToActivateList ::= SEQUENCE (SIZE(1..maxnoofCellsinNGRANNode)) OF NGRAN-CGI
+
+
+-- --------------------------------------------------------------------
+-- Inter System Resource Status Request
+-- --------------------------------------------------------------------
+
+IntersystemResourceStatusRequest ::= SEQUENCE {
+ reportingSystem ReportingSystem,
+ reportCharacteristics ReportCharacteristics,
+ reportType ReportType,
+ iE-Extensions ProtocolExtensionContainer { { IntersystemResourceStatusRequest-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IntersystemResourceStatusRequest-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ReportingSystem ::= CHOICE {
+ eUTRAN EUTRAN-ReportingSystemIEs,
+ nGRAN NGRAN-ReportingSystemIEs,
+ noReporting NULL,
+ choice-Extensions ProtocolIE-SingleContainer { { ReportingSystem-ExtIEs}}
+}
+
+ReportingSystem-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+EUTRAN-ReportingSystemIEs::= SEQUENCE {
+ eUTRAN-CellToReportList EUTRAN-CellToReportList,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAN-ReportingSystemIEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAN-ReportingSystemIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NGRAN-ReportingSystemIEs ::= SEQUENCE {
+ nGRAN-CellToReportList NGRAN-CellToReportList,
+ iE-Extensions ProtocolExtensionContainer { {NGRAN-ReportingSystemIEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGRAN-ReportingSystemIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EUTRAN-CellToReportList ::= SEQUENCE (SIZE(1..maxnoofReportedCells)) OF EUTRAN-CellToReportItem
+
+EUTRAN-CellToReportItem::= SEQUENCE {
+ eCGI EUTRA-CGI,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAN-CellToReportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAN-CellToReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+NGRAN-CellToReportList ::= SEQUENCE (SIZE(1.. maxnoofReportedCells)) OF NGRAN-CellToReportItem
+
+NGRAN-CellToReportItem::= SEQUENCE {
+ nGRAN-CGI NGRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {NGRAN-CellToReportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGRAN-CellToReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ReportCharacteristics ::= BIT STRING(SIZE(32))
+
+ReportType ::= CHOICE {
+ eventBasedReporting EventBasedReportingIEs,
+ periodicReporting PeriodicReportingIEs,
+ choice-Extensions ProtocolIE-SingleContainer { { ReportType-ExtIEs}}
+}
+
+ReportType-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+EventBasedReportingIEs ::= SEQUENCE {
+ intersystemResourceThresholdLow IntersystemResourceThreshold,
+ intersystemResourceThresholdHigh IntersystemResourceThreshold,
+ numberOfMeasurementReportingLevels NumberOfMeasurementReportingLevels,
+ iE-Extensions ProtocolExtensionContainer { {EventBasedReportingIEs-ExtIEs} } OPTIONAL,
+ ...
+}
+EventBasedReportingIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IntersystemResourceThreshold ::= INTEGER(0..100)
+
+NumberOfMeasurementReportingLevels ::= ENUMERATED {n2, n3, n4, n5, n10, ..., n0}
+
+PeriodicReportingIEs ::= SEQUENCE {
+ reportingPeriodicity ReportingPeriodicity,
+ iE-Extensions ProtocolExtensionContainer { {PeriodicReportingIEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PeriodicReportingIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ReportingPeriodicity ::= ENUMERATED {
+ stop,
+ single,
+ ms1000,
+ ms2000,
+ ms5000,
+ ms10000,
...
}
+
+-- --------------------------------------------------------------------
+-- INTER SYSTEM SON INFORMATION REPLY
+-- --------------------------------------------------------------------
+
+IntersystemSONInformationReply ::= CHOICE {
+ nGRAN-CellActivation IntersystemCellActivationReply,
+ resourceStatus IntersystemResourceStatusReply,
+ choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformationReply-ExtIEs} }
+}
+
+IntersystemSONInformationReply-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+IntersystemCellActivationReply ::= SEQUENCE {
+ activatedCellList ActivatedCellList,
+ activation-ID INTEGER(0..16384, ...),
+ iE-Extensions ProtocolExtensionContainer { { IntersystemCellActivationReply-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IntersystemCellActivationReply-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ActivatedCellList ::= SEQUENCE (SIZE(1..maxnoofCellsinNGRANNode)) OF NGRAN-CGI
+
+
+-- --------------------------------------------------------------------
+-- Inter System Resource Status Reply
+-- --------------------------------------------------------------------
+
+IntersystemResourceStatusReply ::= SEQUENCE {
+ reportingsystem ReportingSystem,
+ iE-Extensions ProtocolExtensionContainer { { IntersystemResourceStatusReply-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IntersystemResourceStatusReply-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- --------------------------------------------------------------------
+-- INTER SYSTEM SON INFORMATION REPORT
+-- --------------------------------------------------------------------
+
IntersystemSONInformationReport::= CHOICE {
hOReportInformation InterSystemHOReport,
failureIndicationInformation InterSystemFailureIndication,
@@ -2133,6 +2666,169 @@ IntersystemSONInformationReport::= CHOICE {
}
IntersystemSONInformationReport-ExtIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-EnergySavingIndication CRITICALITY ignore TYPE IntersystemCellStateIndication PRESENCE mandatory }|
+ { ID id-IntersystemResourceStatusUpdate CRITICALITY ignore TYPE IntersystemResourceStatusReport PRESENCE mandatory },
+ ...
+}
+
+IntersystemCellStateIndication ::= SEQUENCE {
+ notificationCellList NotificationCellList,
+ iE-Extensions ProtocolExtensionContainer { { IntersystemCellStateIndication-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IntersystemCellStateIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NotificationCellList ::= SEQUENCE (SIZE(1.. maxnoofCellsinNGRANNode)) OF NotificationCell-Item
+
+NotificationCell-Item ::= SEQUENCE {
+ nGRAN-CGI NGRAN-CGI,
+ notifyFlag ENUMERATED {activated, deactivated, ...},
+ iE-Extensions ProtocolExtensionContainer { { NotificationCell-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NotificationCell-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- --------------------------------------------------------------------
+-- Inter System Resource Status Report
+-- --------------------------------------------------------------------
+
+IntersystemResourceStatusReport ::= SEQUENCE {
+ reportingSystem ResourceStatusReportingSystem,
+ iE-Extensions ProtocolExtensionContainer { { IntersystemResourceStatusReport-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IntersystemResourceStatusReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ResourceStatusReportingSystem ::= CHOICE {
+ eUTRAN-ReportingStatus EUTRAN-ReportingStatusIEs,
+ nGRAN-ReportingStatus NGRAN-ReportingStatusIEs,
+ choice-Extensions ProtocolIE-SingleContainer { { ResourceStatusReportingSystem-ExtIEs}}
+}
+
+ResourceStatusReportingSystem-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+EUTRAN-ReportingStatusIEs::= SEQUENCE {
+ eUTRAN-CellReportList EUTRAN-CellReportList,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAN-ReportingStatusIEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAN-ReportingStatusIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EUTRAN-CellReportList ::= SEQUENCE (SIZE(1..maxnoofReportedCells)) OF EUTRAN-CellReportItem
+
+EUTRAN-CellReportItem ::= SEQUENCE {
+ eCGI EUTRA-CGI,
+ eUTRAN-CompositeAvailableCapacityGroup EUTRAN-CompositeAvailableCapacityGroup,
+ eUTRAN-NumberOfActiveUEs EUTRAN-NumberOfActiveUEs OPTIONAL,
+ eUTRAN-NoofRRCConnections NGRAN-NoofRRCConnections OPTIONAL,
+ eUTRAN-RadioResourceStatus EUTRAN-RadioResourceStatus OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAN-CellReportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAN-CellReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+EUTRAN-CompositeAvailableCapacityGroup ::= SEQUENCE {
+ dL-CompositeAvailableCapacity CompositeAvailableCapacity,
+ uL-CompositeAvailableCapacity CompositeAvailableCapacity,
+ iE-Extensions ProtocolExtensionContainer { { EUTRAN-CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAN-CompositeAvailableCapacityGroup-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CompositeAvailableCapacity ::= SEQUENCE {
+ cellCapacityClassValue INTEGER (1..100, ...) OPTIONAL,
+ capacityValue INTEGER (0..100),
+ iE-Extensions ProtocolExtensionContainer { {CompositeAvailableCapacity-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompositeAvailableCapacity-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EUTRAN-NumberOfActiveUEs ::= INTEGER (0..16777215, ...)
+
+EUTRAN-RadioResourceStatus ::= SEQUENCE {
+ dL-GBR-PRB-usage INTEGER (0..100),
+ uL-GBR-PRB-usage INTEGER (0..100),
+ dL-non-GBR-PRB-usage INTEGER (0..100),
+ uL-non-GBR-PRB-usage INTEGER (0..100),
+ dL-Total-PRB-usage INTEGER (0..100),
+ uL-Total-PRB-usage INTEGER (0..100),
+ dL-scheduling-PDCCH-CCE-usage INTEGER (0..100) OPTIONAL,
+ uL-scheduling-PDCCH-CCE-usage INTEGER (0..100) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAN-RadioResourceStatus-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAN-RadioResourceStatus-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NGRAN-ReportingStatusIEs ::= SEQUENCE {
+ nGRAN-CellReportList NGRAN-CellReportList,
+ iE-Extensions ProtocolExtensionContainer { {NGRAN-ReportingStatusIEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGRAN-ReportingStatusIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NGRAN-CellReportList ::= SEQUENCE (SIZE(1..maxnoofReportedCells)) OF NGRAN-CellReportItem
+
+NGRAN-CellReportItem ::= SEQUENCE {
+ nGRAN-CGI NGRAN-CGI,
+ nGRAN-CompositeAvailableCapacityGroup EUTRAN-CompositeAvailableCapacityGroup,
+ nGRAN-NumberOfActiveUEs NGRAN-NumberOfActiveUEs OPTIONAL,
+ nGRAN-NoofRRCConnections NGRAN-NoofRRCConnections OPTIONAL,
+ nGRAN-RadioResourceStatus NGRAN-RadioResourceStatus OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {NGRAN-CellReportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGRAN-CellReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+NGRAN-NumberOfActiveUEs ::= INTEGER (0..16777215, ...)
+
+NGRAN-NoofRRCConnections ::= INTEGER (1..65536, ...)
+
+NGRAN-RadioResourceStatus ::= SEQUENCE {
+ dL-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ uL-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ dL-non-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ uL-non-GBR-PRB-usage-for-MIMO INTEGER (0..100),
+ dL-Total-PRB-usage-for-MIMO INTEGER (0..100),
+ uL-Total-PRB-usage-for-MIMO INTEGER (0..100),
+ iE-Extensions ProtocolExtensionContainer { { NGRAN-RadioResourceStatus-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGRAN-RadioResourceStatus-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -2223,6 +2919,20 @@ LastVisitedNGRANCellInformation::= SEQUENCE {
}
LastVisitedNGRANCellInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-LastVisitedPSCellList CRITICALITY ignore EXTENSION LastVisitedPSCellList PRESENCE optional },
+ ...
+}
+
+LastVisitedPSCellList ::= SEQUENCE (SIZE(1..maxnoofPSCellsPerPrimaryCellinUEHistoryInfo)) OF LastVisitedPSCellInformation
+
+LastVisitedPSCellInformation ::= SEQUENCE {
+ pSCellID NGRAN-CGI OPTIONAL,
+ timeStay INTEGER (0..40950),
+ iE-Extensions ProtocolExtensionContainer { {LastVisitedPSCellInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LastVisitedPSCellInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -2260,7 +2970,7 @@ LocationReportingRequestType-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
LoggedMDTNr ::= SEQUENCE {
loggingInterval LoggingInterval,
loggingDuration LoggingDuration,
- loggedMDTTrigger LoggedMDTTrigger,
+ loggedMDTTrigger LoggedMDTTrigger,
bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL,
wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL,
sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL,
@@ -2270,10 +2980,11 @@ LoggedMDTNr ::= SEQUENCE {
}
LoggedMDTNr-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-EarlyMeasurement CRITICALITY ignore EXTENSION EarlyMeasurement PRESENCE optional },
...
}
-LoggingInterval ::= ENUMERATED {
+LoggingInterval ::= ENUMERATED {
ms320, ms640, ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440,
infinity,
...
@@ -2282,9 +2993,9 @@ LoggingInterval ::= ENUMERATED {
LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120, ...}
Links-to-log ::= ENUMERATED {
- uplink,
- downlink,
- both-uplink-and-downlink,
+ uplink,
+ downlink,
+ both-uplink-and-downlink,
...
}
@@ -2337,6 +3048,370 @@ MaximumIntegrityProtectedDataRate ::= ENUMERATED {
...
}
+
+MBS-AreaSessionID ::= INTEGER (0..65535, ...)
+
+MBS-DataForwardingResponseMRBList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MBS-DataForwardingResponseMRBItem
+
+MBS-DataForwardingResponseMRBItem ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ dL-Forwarding-UPTNLInformation UPTransportLayerInformation,
+ mRB-ProgressInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-DataForwardingResponseMRBItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DataForwardingResponseMRBItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-MappingandDataForwardingRequestList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MBS-MappingandDataForwardingRequestItem
+
+MBS-MappingandDataForwardingRequestItem ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mBS-QoSFlowList MBS-QoSFlowList,
+ mRB-ProgressInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-MappingandDataForwardingRequestItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-MappingandDataForwardingRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF QosFlowIdentifier
+
+MRB-ProgressInformation ::= CHOICE {
+ pDCP-SN-Length12 INTEGER (0..4095),
+ pDCP-SN-Length18 INTEGER (0..262143),
+ choice-Extensions ProtocolIE-SingleContainer { { MRB-ProgressInformation-ExtIEs} }
+}
+
+MRB-ProgressInformation-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBS-QoSFlowsToBeSetupList ::= SEQUENCE (SIZE(1.. maxnoofMBSQoSFlows)) OF MBS-QoSFlowsToBeSetupItem
+
+MBS-QoSFlowsToBeSetupItem ::= SEQUENCE {
+ mBSqosFlowIdentifier QosFlowIdentifier,
+ mBSqosFlowLevelQosParameters QosFlowLevelQosParameters,
+ iE-Extensions ProtocolExtensionContainer { {MBS-QoSFlowsToBeSetupItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-QoSFlowsToBeSetupItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBS-ServiceArea ::= CHOICE {
+ locationindependent MBS-ServiceAreaInformation,
+ locationdependent MBS-ServiceAreaInformationList,
+ choice-Extensions ProtocolIE-SingleContainer { {MBS-ServiceArea-ExtIEs} }
+}
+
+MBS-ServiceArea-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBS-ServiceAreaInformationList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-ServiceAreaInformationItem
+
+
+MBS-ServiceAreaInformationItem ::= SEQUENCE {
+ mBS-AreaSessionID MBS-AreaSessionID,
+ mBS-ServiceAreaInformation MBS-ServiceAreaInformation,
+ iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaInformationItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ServiceAreaInformation ::= SEQUENCE {
+ mBS-ServiceAreaCellList MBS-ServiceAreaCellList OPTIONAL,
+ mBS-ServiceAreaTAIList MBS-ServiceAreaTAIList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ServiceAreaCellList ::= SEQUENCE (SIZE(1.. maxnoofCellsforMBS)) OF NR-CGI
+
+MBS-ServiceAreaTAIList ::= SEQUENCE (SIZE(1.. maxnoofTAIforMBS)) OF TAI
+
+MBS-SessionID ::= SEQUENCE {
+ tMGI TMGI,
+ nID NID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-SessionID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-SessionID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionFailedtoSetupList ::= SEQUENCE (SIZE(1.. maxnoofMBSSessions)) OF MBSSessionFailedtoSetupItem
+
+MBSSessionFailedtoSetupItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { MBSSessionFailedtoSetupItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionFailedtoSetupItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ActiveSessionInformation-SourcetoTargetList ::= SEQUENCE (SIZE(1..maxnoofMBSSessionsofUE)) OF MBS-ActiveSessionInformation-SourcetoTargetItem
+
+MBS-ActiveSessionInformation-SourcetoTargetItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ mBS-ServiceArea MBS-ServiceArea OPTIONAL,
+ mBS-QoSFlowsToBeSetupList MBS-QoSFlowsToBeSetupList,
+ mBS-MappingandDataForwardingRequestList MBS-MappingandDataForwardingRequestList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-ActiveSessionInformation-SourcetoTargetItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ActiveSessionInformation-SourcetoTargetItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ActiveSessionInformation-TargettoSourceList ::= SEQUENCE (SIZE(1..maxnoofMBSSessionsofUE)) OF MBS-ActiveSessionInformation-TargettoSourceItem
+
+MBS-ActiveSessionInformation-TargettoSourceItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-DataForwardingResponseMRBList MBS-DataForwardingResponseMRBList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-ActiveSessionInformation-TargettoSourceItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ActiveSessionInformation-TargettoSourceItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionSetupOrModFailureTransfer ::= SEQUENCE {
+ cause Cause,
+ criticalityDiagnostics CriticalityDiagnostics OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBSSessionSetupOrModFailureTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionSetupOrModFailureTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionSetupResponseList ::= SEQUENCE (SIZE(1.. maxnoofMBSSessions)) OF MBSSessionSetupResponseItem
+
+MBSSessionSetupResponseItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBSSessionSetupResponseItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionSetupResponseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionSetupOrModRequestTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MBSSessionSetupOrModRequestTransferIEs} },
+ ...
+}
+
+MBSSessionSetupOrModRequestTransferIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionTNLInfo5GC CRITICALITY reject TYPE MBS-SessionTNLInfo5GC PRESENCE optional }|
+ { ID id-MBS-QoSFlowsToBeSetupModList CRITICALITY reject TYPE MBS-QoSFlowsToBeSetupList PRESENCE mandatory }|
+ { ID id-MBS-SessionFSAIDList CRITICALITY ignore TYPE MBS-SessionFSAIDList PRESENCE optional },
+ ...
+}
+
+MBS-SessionFSAIDList ::= SEQUENCE (SIZE(1.. maxnoofMBSFSAs)) OF MBS-SessionFSAID
+
+MBS-SessionFSAID ::= OCTET STRING (SIZE(3))
+
+MBSSessionReleaseResponseTransfer ::= SEQUENCE {
+ mBS-SessionTNLInfoNGRAN MBS-SessionTNLInfoNGRAN OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBSSessionReleaseResponseTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionReleaseResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionSetupOrModResponseTransfer ::= SEQUENCE {
+ mBS-SessionTNLInfoNGRAN MBS-SessionTNLInfoNGRAN OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBSSessionSetupOrModResponseTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionSetupOrModResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-SupportIndicator ::= ENUMERATED {
+ true,
+ ...
+}
+
+MBS-SessionTNLInfo5GC ::= CHOICE {
+ locationindependent SharedNGU-MulticastTNLInformation,
+ locationdependent MBS-SessionTNLInfo5GCList,
+ choice-Extensions ProtocolIE-SingleContainer { {MBS-SessionTNLInfo5GC-ExtIEs} }
+}
+
+MBS-SessionTNLInfo5GC-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBS-SessionTNLInfo5GCList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-SessionTNLInfo5GCItem
+
+MBS-SessionTNLInfo5GCItem ::= SEQUENCE {
+ mBS-AreaSessionID MBS-AreaSessionID,
+ sharedNGU-MulticastTNLInformation SharedNGU-MulticastTNLInformation,
+ iE-Extensions ProtocolExtensionContainer { {MBS-SessionTNLInfo5GCItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-SessionTNLInfo5GCItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-SessionTNLInfoNGRAN ::= CHOICE {
+ locationindependent UPTransportLayerInformation,
+ locationdependent MBS-SessionTNLInfoNGRANList,
+ choice-Extensions ProtocolIE-SingleContainer { {MBS-SessionTNLInfoNGRAN-ExtIEs} }
+}
+
+MBS-SessionTNLInfoNGRAN-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBS-SessionTNLInfoNGRANList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-SessionTNLInfoNGRANItem
+
+MBS-SessionTNLInfoNGRANItem ::= SEQUENCE {
+ mBS-AreaSessionID MBS-AreaSessionID,
+ sharedNGU-UnicastTNLInformation UPTransportLayerInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-SessionTNLInfoNGRANItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-SessionTNLInfoNGRANItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-DistributionReleaseRequestTransfer ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ sharedNGU-UnicastTNLInformation UPTransportLayerInformation OPTIONAL,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { MBS-DistributionReleaseRequesTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DistributionReleaseRequesTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-DistributionSetupRequestTransfer ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ sharedNGU-UnicastTNLInformation UPTransportLayerInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-DistributionSetupRequestTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DistributionSetupRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-DistributionSetupResponseTransfer ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ sharedNGU-MulticastTNLInformation SharedNGU-MulticastTNLInformation OPTIONAL,
+ mBS-QoSFlowsToBeSetupList MBS-QoSFlowsToBeSetupList,
+ mBSSessionStatus MBSSessionStatus,
+ mBS-ServiceArea MBS-ServiceArea OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-DistributionSetupResponseTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DistributionSetupResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBS-DistributionSetupUnsuccessfulTransfer ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ cause Cause,
+ criticalityDiagnostics CriticalityDiagnostics OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-DistributionSetupUnsuccessfulTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DistributionSetupUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionSetupRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBSSessionSetupRequestItem
+
+MBSSessionSetupRequestItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ associatedMBSQosFlowSetupRequestList AssociatedMBSQosFlowSetupRequestList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBSSessionSetupRequestItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionSetupRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionSetuporModifyRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBSSessionSetuporModifyRequestItem
+
+MBSSessionSetuporModifyRequestItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ mBS-AreaSessionID MBS-AreaSessionID OPTIONAL,
+ associatedMBSQosFlowSetuporModifyRequestList AssociatedMBSQosFlowSetuporModifyRequestList OPTIONAL,
+ mBS-QosFlowToReleaseList QosFlowListWithCause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{MBSSessionSetuporModifyRequestItem-ExtIEs}} OPTIONAL,
+ ...
+}
+
+MBSSessionSetuporModifyRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBSSessionToReleaseList ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBSSessionToReleaseItem
+
+MBSSessionToReleaseItem ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { MBSSessionToReleaseItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSSessionToReleaseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSSessionStatus ::= ENUMERATED {
+ activated,
+ deactivated,
+ ...
+}
+
MicoAllPLMN ::= ENUMERATED {
true,
...
@@ -2350,12 +3425,14 @@ MICOModeIndication ::= ENUMERATED {
MobilityInformation ::= BIT STRING (SIZE(16))
+ExtendedMobilityInformation ::= BIT STRING (SIZE(32))
+
MobilityRestrictionList ::= SEQUENCE {
servingPLMN PLMNIdentity,
equivalentPLMNs EquivalentPLMNs OPTIONAL,
rATRestrictions RATRestrictions OPTIONAL,
- forbiddenAreaInformation ForbiddenAreaInformation OPTIONAL,
- serviceAreaInformation ServiceAreaInformation OPTIONAL,
+ forbiddenAreaInformation ForbiddenAreaInformation OPTIONAL,
+ serviceAreaInformation ServiceAreaInformation OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {MobilityRestrictionList-ExtIEs} } OPTIONAL,
...
}
@@ -2368,8 +3445,19 @@ MobilityRestrictionList-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+MDT-AlignmentInfo ::= CHOICE {
+ s-basedMDT NGRANTraceID,
+ choice-Extensions ProtocolIE-SingleContainer { { MDT-AlignmentInfo-ExtIEs} }
+}
+
+MDT-AlignmentInfo-ExtIEs NGAP-PROTOCOL-IES ::= {
+ ...
+}
+
MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMNIdentity
+MDTPLMNModificationList ::= SEQUENCE (SIZE(0..maxnoofMDTPLMNs)) OF PLMNIdentity
+
MDT-Configuration ::= SEQUENCE {
mdt-Config-NR MDT-Configuration-NR OPTIONAL,
mdt-Config-EUTRA MDT-Configuration-EUTRA OPTIONAL,
@@ -2407,7 +3495,7 @@ MDT-Configuration-EUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
-MDT-Activation ::= ENUMERATED {
+MDT-Activation ::= ENUMERATED {
immediate-MDT-only,
logged-MDT-only,
immediate-MDT-and-Trace,
@@ -2428,6 +3516,81 @@ MDTModeEutra ::= OCTET STRING
MeasurementsToActivate ::= BIT STRING(SIZE(8))
+MRB-ID ::= INTEGER (1..512, ...)
+
+MulticastSessionActivationRequestTransfer ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastSessionActivationRequestTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastSessionActivationRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastSessionDeactivationRequestTransfer ::= SEQUENCE {
+ mBS-SessionID MBS-SessionID,
+ iE-Extensions ProtocolExtensionContainer { { MulticastSessionDeactivationRequestTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastSessionDeactivationRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MulticastSessionUpdateRequestTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionUpdateRequestTransferIEs} },
+ ...
+}
+
+MulticastSessionUpdateRequestTransferIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }|
+ { ID id-MBS-QoSFlowsToBeSetupModList CRITICALITY reject TYPE MBS-QoSFlowsToBeSetupList PRESENCE optional }|
+ { ID id-MBS-QoSFlowToReleaseList CRITICALITY reject TYPE QosFlowListWithCause PRESENCE optional }|
+ { ID id-MBS-SessionTNLInfo5GC CRITICALITY reject TYPE MBS-SessionTNLInfo5GC PRESENCE optional },
+ ...
+}
+
+
+MulticastGroupPagingAreaList ::= SEQUENCE (SIZE(1..maxnoofPagingAreas)) OF MulticastGroupPagingAreaItem
+
+MulticastGroupPagingAreaItem ::= SEQUENCE {
+ multicastGroupPagingArea MulticastGroupPagingArea,
+ uE-PagingList UE-PagingList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MulticastGroupPagingAreaItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastGroupPagingAreaItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-AreaTAIList ::= SEQUENCE (SIZE(1..maxnoofTAIforPaging)) OF TAI
+
+MulticastGroupPagingArea ::= SEQUENCE {
+ mBS-AreaTAIList MBS-AreaTAIList,
+ iE-Extensions ProtocolExtensionContainer { { MulticastGroupPagingArea-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MulticastGroupPagingArea-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-PagingList ::= SEQUENCE (SIZE(1..maxnoofUEsforPaging)) OF UE-PagingItem
+
+UE-PagingItem ::= SEQUENCE {
+ uEIdentityIndexValue UEIdentityIndexValue,
+ pagingDRX PagingDRX OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-PagingItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UE-PagingItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
M1Configuration ::= SEQUENCE {
m1reportingTrigger M1ReportingTrigger,
m1thresholdEventA2 M1ThresholdEventA2 OPTIONAL,
@@ -2439,17 +3602,27 @@ M1Configuration ::= SEQUENCE {
}
M1Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-IncludeBeamMeasurementsIndication CRITICALITY ignore EXTENSION IncludeBeamMeasurementsIndication PRESENCE optional }|
+ { ID id-BeamMeasurementsReportConfiguration CRITICALITY ignore EXTENSION BeamMeasurementsReportConfiguration PRESENCE conditional },
+-- The above IE shall be present if the IncludeBeamMeasurementsIndication IE is set to “true”
+ ...
+}
+
+IncludeBeamMeasurementsIndication ::= ENUMERATED {
+ true,
...
}
-M1ReportingTrigger ::= ENUMERATED{
+MaxNrofRS-IndexesToReport ::= INTEGER (1..64, ...)
+
+M1ReportingTrigger ::= ENUMERATED {
periodic,
a2eventtriggered,
a2eventtriggered-periodic,
...
}
-M1ThresholdEventA2 ::= SEQUENCE {
+M1ThresholdEventA2 ::= SEQUENCE {
m1ThresholdType M1ThresholdType,
iE-Extensions ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL,
...
@@ -2459,7 +3632,7 @@ M1ThresholdEventA2-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
-M1ThresholdType ::= CHOICE {
+M1ThresholdType ::= CHOICE {
threshold-RSRP Threshold-RSRP,
threshold-RSRQ Threshold-RSRQ,
threshold-SINR Threshold-SINR,
@@ -2470,7 +3643,7 @@ M1ThresholdType-ExtIEs NGAP-PROTOCOL-IES ::= {
...
}
-M1PeriodicReporting ::= SEQUENCE {
+M1PeriodicReporting ::= SEQUENCE {
reportInterval ReportIntervalMDT,
reportAmount ReportAmountMDT,
iE-Extensions ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL,
@@ -2478,6 +3651,7 @@ M1PeriodicReporting ::= SEQUENCE {
}
M1PeriodicReporting-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ {ID id-ExtendedReportIntervalMDT CRITICALITY ignore EXTENSION ExtendedReportIntervalMDT PRESENCE optional},
...
}
@@ -2489,10 +3663,13 @@ M4Configuration ::= SEQUENCE {
}
M4Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M4ReportAmount CRITICALITY ignore EXTENSION M4ReportAmountMDT PRESENCE optional },
...
}
-M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
+M4ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
+M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
M5Configuration ::= SEQUENCE {
m5period M5period,
@@ -2502,10 +3679,14 @@ M5Configuration ::= SEQUENCE {
}
M5Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M5ReportAmount CRITICALITY ignore EXTENSION M5ReportAmountMDT PRESENCE optional },
...
}
-M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
+M5ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
+
+M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
M6Configuration ::= SEQUENCE {
m6report-Interval M6report-Interval,
@@ -2515,10 +3696,15 @@ M6Configuration ::= SEQUENCE {
}
M6Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M6ReportAmount CRITICALITY ignore EXTENSION M6ReportAmountMDT PRESENCE optional }|
+ { ID id-ExcessPacketDelayThresholdConfiguration CRITICALITY ignore EXTENSION ExcessPacketDelayThresholdConfiguration PRESENCE optional },
...
}
-M6report-Interval ::= ENUMERATED {
+
+M6ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
+M6report-Interval ::= ENUMERATED {
ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, ms20480, ms40960, min1, min6, min12, min30,
...
}
@@ -2532,9 +3718,12 @@ M7Configuration ::= SEQUENCE {
}
M7Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M7ReportAmount CRITICALITY ignore EXTENSION M7ReportAmountMDT PRESENCE optional },
...
}
+M7ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
M7period ::= INTEGER(1..60, ...)
MDT-Location-Info ::= SEQUENCE {
@@ -2565,23 +3754,23 @@ NAS-PDU ::= OCTET STRING
NASSecurityParametersFromNGRAN ::= OCTET STRING
NB-IoT-DefaultPagingDRX ::= ENUMERATED {
- rf128, rf256, rf512, rf1024,
- ...
+ rf128, rf256, rf512, rf1024,
+ ...
}
NB-IoT-PagingDRX ::= ENUMERATED {
- rf32, rf64, rf128, rf256, rf512, rf1024,
- ...
+ rf32, rf64, rf128, rf256, rf512, rf1024,
+ ...
}
NB-IoT-Paging-eDRXCycle ::= ENUMERATED {
- hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, hf512, hf1024,
+ hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, hf512, hf1024,
...
}
NB-IoT-Paging-TimeWindow ::= ENUMERATED {
- s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16,
- ...
+ s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16,
+ ...
}
NB-IoT-Paging-eDRXInfo ::= SEQUENCE {
@@ -2612,6 +3801,32 @@ NextPagingAreaScope ::= ENUMERATED {
...
}
+NGAPIESupportInformationRequestList ::= SEQUENCE (SIZE(1.. maxnoofNGAPIESupportInfo)) OF NGAPIESupportInformationRequestItem
+
+NGAPIESupportInformationRequestItem ::= SEQUENCE {
+ ngap-ProtocolIE-Id ProtocolIE-ID,
+ iE-Extensions ProtocolExtensionContainer { { NGAPIESupportInformationRequestItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGAPIESupportInformationRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NGAPIESupportInformationResponseList ::= SEQUENCE (SIZE(1.. maxnoofNGAPIESupportInfo)) OF NGAPIESupportInformationResponseItem
+
+NGAPIESupportInformationResponseItem ::= SEQUENCE {
+ ngap-ProtocolIE-Id ProtocolIE-ID,
+ ngap-ProtocolIESupportInfo ENUMERATED {supported, not-supported, ...},
+ ngap-ProtocolIEPresenceInfo ENUMERATED {present, not-present, ...},
+ iE-Extensions ProtocolExtensionContainer { { NGAPIESupportInformationResponseItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NGAPIESupportInformationResponseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
NgENB-ID ::= CHOICE {
macroNgENB-ID BIT STRING (SIZE(20)),
shortMacroNgENB-ID BIT STRING (SIZE(18)),
@@ -2737,6 +3952,32 @@ NR-CGIList ::= SEQUENCE (SIZE(1..maxnoofCellsingNB)) OF NR-CGI
NR-CGIListForWarning ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF NR-CGI
+NR-PagingeDRXInformation ::= SEQUENCE {
+ nR-paging-eDRX-Cycle NR-Paging-eDRX-Cycle,
+ nR-paging-Time-Window NR-Paging-Time-Window OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {NR-PagingeDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NR-PagingeDRXInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NR-Paging-eDRX-Cycle ::= ENUMERATED {
+ hfquarter, hfhalf, hf1, hf2, hf4, hf8, hf16,
+ hf32, hf64, hf128, hf256, hf512, hf1024,
+ ...
+}
+
+NR-Paging-Time-Window ::= ENUMERATED {
+ s1, s2, s3, s4, s5,
+ s6, s7, s8, s9, s10,
+ s11, s12, s13, s14, s15, s16,
+ ...,
+ s17, s18, s19, s20, s21, s22, s23, s24,
+ s25, s26, s27, s28, s29, s30, s31, s32
+}
+
NRencryptionAlgorithms ::= BIT STRING (SIZE(16, ...))
NRintegrityProtectionAlgorithms ::= BIT STRING (SIZE(16, ...))
@@ -2747,6 +3988,19 @@ NRPPa-PDU ::= OCTET STRING
NRUERLFReportContainer ::= OCTET STRING
+NRNTNTAIInformation ::= SEQUENCE {
+ servingPLMN PLMNIdentity,
+ tACListInNRNTN TACListInNRNTN,
+ uELocationDerivedTACInNRNTN TAC OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { NRNTNTAIInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRNTNTAIInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
NumberOfBroadcasts ::= INTEGER (0..65535)
NumberOfBroadcastsRequested ::= INTEGER (0..65535)
@@ -2791,13 +4045,13 @@ NRV2XServicesAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
-VehicleUE ::= ENUMERATED {
+VehicleUE ::= ENUMERATED {
authorized,
not-authorized,
...
}
-PedestrianUE ::= ENUMERATED {
+PedestrianUE ::= ENUMERATED {
authorized,
not-authorized,
...
@@ -2813,8 +4067,15 @@ NRUESidelinkAggregateMaximumBitrate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+NSAG-ID ::= INTEGER (0..255, ...)
+
-- O
+OnboardingSupport ::= ENUMERATED {
+ true,
+ ...
+}
+
OverloadAction ::= ENUMERATED {
reject-non-emergency-mo-dt,
reject-rrc-cr-signalling,
@@ -2836,7 +4097,7 @@ OverloadStartNSSAIList ::= SEQUENCE (SIZE (1..maxnoofSliceItems)) OF OverloadSta
OverloadStartNSSAIItem ::= SEQUENCE {
sliceOverloadList SliceOverloadList,
- sliceOverloadResponse OverloadResponse OPTIONAL,
+ sliceOverloadResponse OverloadResponse OPTIONAL,
sliceTrafficLoadReductionIndication TrafficLoadReductionIndication OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {OverloadStartNSSAIItem-ExtIEs} } OPTIONAL,
...
@@ -2865,7 +4126,7 @@ PacketLossRate ::= INTEGER (0..1000, ...)
PagingAssisDataforCEcapabUE ::= SEQUENCE {
eUTRA-CGI EUTRA-CGI,
- coverageEnhancementLevel CoverageEnhancementLevel,
+ coverageEnhancementLevel CoverageEnhancementLevel,
iE-Extensions ProtocolExtensionContainer { { PagingAssisDataforCEcapabUE-ExtIEs} } OPTIONAL,
...
}
@@ -2888,6 +4149,16 @@ PagingAttemptInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
PagingAttemptCount ::= INTEGER (1..16, ...)
+PagingCause ::= ENUMERATED {
+ voice,
+ ...
+}
+
+PagingCauseIndicationForVoiceService ::= ENUMERATED {
+ supported,
+ ...
+}
+
PagingDRX ::= ENUMERATED {
v32,
v64,
@@ -2913,34 +4184,8 @@ PagingPriority ::= ENUMERATED {
...
}
-PagingeDRXInformation ::= SEQUENCE {
- paging-eDRX-Cycle Paging-eDRX-Cycle,
- paging-Time-Window Paging-Time-Window OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {PagingeDRXInformation-ExtIEs} } OPTIONAL,
- ...
-}
-
-PagingeDRXInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- ...
-}
-
-Paging-eDRX-Cycle ::= ENUMERATED {
- hfhalf, hf1, hf2, hf4, hf6,
- hf8, hf10, hf12, hf14, hf16,
- hf32, hf64, hf128, hf256,
- ...
-}
-
-
-Paging-Time-Window ::= ENUMERATED {
- s1, s2, s3, s4, s5,
- s6, s7, s8, s9, s10,
- s11, s12, s13, s14, s15, s16,
- ...
-}
-
PagingProbabilityInformation ::= ENUMERATED {
- p00, p05, p10, p15, p20, p25, p30, p35, p40, p45, p50, p55, p60, p65, p70, p75, p80, p85, p90, p95, p100,
+ p00, p05, p10, p15, p20, p25, p30, p35, p40, p45, p50, p55, p60, p65, p70, p75, p80, p85, p90, p95, p100,
...
}
@@ -2984,7 +4229,8 @@ PathSwitchRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
{ ID id-RedundantDL-NGU-TNLInformationReused CRITICALITY ignore EXTENSION DL-NGU-TNLInformationReused PRESENCE optional }|
{ ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }|
{ ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }|
- { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional },
+ { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }|
+ { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional },
...
}
@@ -3038,8 +4284,8 @@ PC5FlowBitRates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
PCIListForMDT ::= SEQUENCE (SIZE(1.. maxnoofNeighPCIforMDT)) OF NR-PCI
PrivacyIndicator ::= ENUMERATED {
- immediate-MDT,
- logged-MDT,
+ immediate-MDT,
+ logged-MDT,
...
}
@@ -3056,6 +4302,8 @@ PDUSessionAggregateMaximumBitRate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
PDUSessionID ::= INTEGER (0..255)
+PDUSessionPairID ::= INTEGER (0..255, ...)
+
PDUSessionResourceAdmittedList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceAdmittedItem
PDUSessionResourceAdmittedItem ::= SEQUENCE {
@@ -3298,9 +4546,11 @@ PDUSessionResourceModifyRequestTransferIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AdditionalRedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformationList PRESENCE optional }|
{ ID id-RedundantCommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }|
{ ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformation PRESENCE optional }|
- { ID id-SecurityIndication CRITICALITY ignore TYPE SecurityIndication PRESENCE optional },
+ { ID id-SecurityIndication CRITICALITY ignore TYPE SecurityIndication PRESENCE optional }|
+ { ID id-MBSSessionSetuporModifyRequestList CRITICALITY ignore TYPE MBSSessionSetuporModifyRequestList PRESENCE optional }|
+ { ID id-MBSSessionToReleaseList CRITICALITY ignore TYPE MBSSessionToReleaseList PRESENCE optional },
...
-}
+}
PDUSessionResourceModifyResponseTransfer ::= SEQUENCE {
dL-NGU-UP-TNLInformation UPTransportLayerInformation OPTIONAL,
@@ -3317,7 +4567,11 @@ PDUSessionResourceModifyResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
{ ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }|
{ ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }|
{ ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }|
- { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional },
+ { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }|
+ { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }|
+ { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional }|
+ { ID id-MBSSessionSetuporModifyResponseList CRITICALITY ignore EXTENSION MBSSessionSetupResponseList PRESENCE optional }|
+ { ID id-MBSSessionFailedtoSetuporModifyList CRITICALITY ignore EXTENSION MBSSessionFailedtoSetupList PRESENCE optional },
...
}
@@ -3422,7 +4676,7 @@ PDUSessionResourceNotifyReleasedTransfer ::= SEQUENCE {
...
}
-PDUSessionResourceNotifyReleasedTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+PDUSessionResourceNotifyReleasedTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
{ ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional },
...
}
@@ -3643,7 +4897,8 @@ PDUSessionResourceSetupRequestTransferIEs NGAP-PROTOCOL-IES ::= {
{ ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformation PRESENCE optional }|
{ ID id-AdditionalRedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformationList PRESENCE optional }|
{ ID id-RedundantCommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }|
- { ID id-RedundantPDUSessionInformation CRITICALITY ignore TYPE RedundantPDUSessionInformation PRESENCE optional },
+ { ID id-RedundantPDUSessionInformation CRITICALITY ignore TYPE RedundantPDUSessionInformation PRESENCE optional }|
+ { ID id-MBSSessionSetupRequestList CRITICALITY ignore TYPE MBSSessionSetupRequestList PRESENCE optional },
...
}
@@ -3660,7 +4915,10 @@ PDUSessionResourceSetupResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
{ ID id-RedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformation PRESENCE optional }|
{ ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }|
{ ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }|
- { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional },
+ { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }|
+ { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional }|
+ { ID id-MBSSessionSetupResponseList CRITICALITY ignore EXTENSION MBSSessionSetupResponseList PRESENCE optional }|
+ { ID id-MBSSessionFailedtoSetupList CRITICALITY ignore EXTENSION MBSSessionFailedtoSetupList PRESENCE optional },
...
}
@@ -3740,6 +4998,7 @@ PDUSessionResourceToReleaseItemRelCmd ::= SEQUENCE {
PDUSessionResourceToReleaseItemRelCmd-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+
PDUSessionType ::= ENUMERATED {
ipv4,
ipv6,
@@ -3760,11 +5019,33 @@ PDUSessionUsageReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+PEIPSassistanceInformation ::= SEQUENCE {
+ cNsubgroupID CNsubgroupID,
+ iE-Extensions ProtocolExtensionContainer { {PEIPSassistanceInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PEIPSassistanceInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
Periodicity ::= INTEGER (0..640000, ...)
PeriodicRegistrationUpdateTimer ::= BIT STRING (SIZE(8))
-PLMNIdentity ::= OCTET STRING (SIZE(3))
+PLMNIdentity ::= OCTET STRING (SIZE(3))
+
+PLMNAreaBasedQMC ::= SEQUENCE {
+ plmnListforQMC PLMNListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {PLMNAreaBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PLMNAreaBasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PLMNListforQMC ::= SEQUENCE (SIZE(1..maxnoofPLMNforQMC)) OF PLMNIdentity
PLMNSupportList ::= SEQUENCE (SIZE(1..maxnoofPLMNs)) OF PLMNSupportItem
@@ -3777,7 +5058,8 @@ PLMNSupportItem ::= SEQUENCE {
PLMNSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
{ ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional }|
- { ID id-ExtendedSliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional },
+ { ID id-ExtendedSliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional }|
+ { ID id-OnboardingSupport CRITICALITY ignore EXTENSION OnboardingSupport PRESENCE optional },
...
}
@@ -3821,6 +5103,30 @@ PWSFailedCellIDList-ExtIEs NGAP-PROTOCOL-IES ::= {
-- Q
+QMCConfigInfo ::= SEQUENCE {
+ uEAppLayerMeasInfoList UEAppLayerMeasInfoList,
+ iE-Extensions ProtocolExtensionContainer { { QMCConfigInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+QMCConfigInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+QMCDeactivation ::= SEQUENCE {
+ qoEReferenceList QoEReferenceList,
+ iE-Extensions ProtocolExtensionContainer { { QMCDeactivation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+QMCDeactivation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+QoEReferenceList ::= SEQUENCE (SIZE(1..maxnoofUEAppLayerMeas)) OF QoEReference
+
+QoEReference ::= OCTET STRING (SIZE(6))
+
QosCharacteristics ::= CHOICE {
nonDynamic5QI NonDynamic5QIDescriptor,
dynamic5QI Dynamic5QIDescriptor,
@@ -3900,7 +5206,9 @@ QosFlowInformationItem ::= SEQUENCE {
}
QosFlowInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- {ID id-ULForwarding CRITICALITY ignore EXTENSION ULForwarding PRESENCE optional},
+ {ID id-ULForwarding CRITICALITY ignore EXTENSION ULForwarding PRESENCE optional}|
+ {ID id-SourceTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ {ID id-SourceNodeTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -3925,6 +5233,8 @@ QosMonitoringRequest ::= ENUMERATED {ul, dl, both, ..., stop}
QosMonitoringReportingFrequency ::= INTEGER (1..1800, ...)
+QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowIdentifier
+
QosFlowListWithCause ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowWithCauseItem
QosFlowWithCauseItem ::= SEQUENCE {
@@ -3967,7 +5277,7 @@ QosFlowParametersList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowParamete
QosFlowParametersItem ::= SEQUENCE {
qosFlowIdentifier QosFlowIdentifier,
- alternativeQoSParaSetList AlternativeQoSParaSetList OPTIONAL,
+ alternativeQoSParaSetList AlternativeQoSParaSetList OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {QosFlowParametersItem-ExtIEs} } OPTIONAL,
...
}
@@ -4085,7 +5395,11 @@ RAN-UE-NGAP-ID ::= INTEGER (0..4294967295)
RAT-Information ::= ENUMERATED {
unlicensed,
nb-IoT,
- ...
+ ...,
+ nR-LEO,
+ nR-MEO,
+ nR-GEO,
+ nR-OTHERSAT
}
RATRestrictions ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF RATRestrictions-Item
@@ -4149,6 +5463,11 @@ RecommendedRANNodeItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+RedCapIndication ::= ENUMERATED {
+ redcap,
+ ...
+}
+
RedirectionVoiceFallback ::= ENUMERATED {
possible,
not-possible,
@@ -4162,6 +5481,7 @@ RedundantPDUSessionInformation ::= SEQUENCE {
}
RedundantPDUSessionInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-PDUSessionPairID CRITICALITY ignore EXTENSION PDUSessionPairID PRESENCE optional },
...
}
@@ -4192,7 +5512,11 @@ ReportAmountMDT ::= ENUMERATED {
ReportIntervalMDT ::= ENUMERATED {
ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60
-}
+}
+
+ExtendedReportIntervalMDT ::= ENUMERATED {
+ ms20480, ms40960, ...
+}
ResetType ::= CHOICE {
nG-Interface ResetAll,
@@ -4244,7 +5568,7 @@ RRCState ::= ENUMERATED {
RSN ::= ENUMERATED {v1, v2, ...}
RIMInformationTransfer ::= SEQUENCE {
- targetRANNodeID TargetRANNodeID,
+ targetRANNodeID-RIM TargetRANNodeID-RIM,
sourceRANNodeID SourceRANNodeID,
rIMInformation RIMInformation,
iE-Extensions ProtocolExtensionContainer { {RIMInformationTransfer-ExtIEs} } OPTIONAL,
@@ -4322,7 +5646,7 @@ SecurityContext-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
SecurityIndication ::= SEQUENCE {
integrityProtectionIndication IntegrityProtectionIndication,
confidentialityProtectionIndication ConfidentialityProtectionIndication,
- maximumIntegrityProtectedDataRate-UL MaximumIntegrityProtectedDataRate OPTIONAL,
+ maximumIntegrityProtectedDataRate-UL MaximumIntegrityProtectedDataRate OPTIONAL,
-- The above IE shall be present if integrity protection is required or preferred
iE-Extensions ProtocolExtensionContainer { {SecurityIndication-ExtIEs} } OPTIONAL,
...
@@ -4348,7 +5672,7 @@ SecurityResult-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
SensorMeasurementConfiguration ::= SEQUENCE {
sensorMeasConfig SensorMeasConfig,
- sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL,
+ sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {SensorMeasurementConfiguration-ExtIEs} } OPTIONAL,
...
}
@@ -4412,8 +5736,22 @@ ServiceAreaInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+ServiceType ::= ENUMERATED {streaming, mTSI, vR, ...}
+
SgNB-UE-X2AP-ID ::= INTEGER (0..4294967295)
+SharedNGU-MulticastTNLInformation ::= SEQUENCE {
+ iP-MulticastAddress TransportLayerAddress,
+ iP-SourceAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { {SharedNGU-MulticastTNLInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SharedNGU-MulticastTNLInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SliceOverloadList ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SliceOverloadItem
SliceOverloadItem ::= SEQUENCE {
@@ -4438,6 +5776,18 @@ SliceSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+SliceSupportListQMC ::= SEQUENCE (SIZE(1..maxnoofSNSSAIforQMC)) OF SliceSupportQMC-Item
+
+SliceSupportQMC-Item ::= SEQUENCE {
+ s-NSSAI S-NSSAI,
+ iE-Extensions ProtocolExtensionContainer { {SliceSupportQMC-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SliceSupportQMC-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SNPN-MobilityInformation ::= SEQUENCE {
serving-NID NID,
iE-Extensions ProtocolExtensionContainer { {SNPN-MobilityInformation-ExtIEs} } OPTIONAL,
@@ -4460,7 +5810,7 @@ S-NSSAI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
}
SONConfigurationTransfer ::= SEQUENCE {
- targetRANNodeID TargetRANNodeID,
+ targetRANNodeID-SON TargetRANNodeID-SON,
sourceRANNodeID SourceRANNodeID,
sONInformation SONInformation,
xnTNLConfigurationInfo XnTNLConfigurationInfo OPTIONAL,
@@ -4501,10 +5851,27 @@ SONInformationReport::= CHOICE {
}
SONInformationReport-ExtIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-SuccessfulHandoverReportList CRITICALITY ignore TYPE SuccessfulHandoverReportList PRESENCE mandatory },
+ ...
+}
+
+-- --------------------------------------------------------------------
+-- SON Information Report
+-- --------------------------------------------------------------------
+
+SuccessfulHandoverReportList ::= SEQUENCE (SIZE(1..maxnoofSuccessfulHOReports)) OF SuccessfulHandoverReport-Item
+
+SuccessfulHandoverReport-Item ::= SEQUENCE {
+ successfulHOReportContainer OCTET STRING,
+ iE-Extensions ProtocolExtensionContainer { { SuccessfulHandoverReport-Item-ExtIEs} } OPTIONAL,
...
}
-SONInformationRequest ::= ENUMERATED {
+SuccessfulHandoverReport-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SONInformationRequest ::= ENUMERATED {
xn-TNL-configuration-info,
...
}
@@ -4521,8 +5888,22 @@ SourceNGRANNode-ToTargetNGRANNode-TransparentContainer ::= SEQUENCE {
}
SourceNGRANNode-ToTargetNGRANNode-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- { ID id-SgNB-UE-X2AP-ID CRITICALITY ignore EXTENSION SgNB-UE-X2AP-ID PRESENCE optional }|
- { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore EXTENSION UEHistoryInformationFromTheUE PRESENCE optional },
+ { ID id-SgNB-UE-X2AP-ID CRITICALITY ignore EXTENSION SgNB-UE-X2AP-ID PRESENCE optional }|
+ { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore EXTENSION UEHistoryInformationFromTheUE PRESENCE optional }|
+ { ID id-SourceNodeID CRITICALITY ignore EXTENSION SourceNodeID PRESENCE optional }|
+ { ID id-UEContextReferenceAtSource CRITICALITY ignore EXTENSION RAN-UE-NGAP-ID PRESENCE optional }|
+ { ID id-MBS-ActiveSessionInformation-SourcetoTargetList CRITICALITY ignore EXTENSION MBS-ActiveSessionInformation-SourcetoTargetList PRESENCE optional }|
+ { ID id-QMCConfigInfo CRITICALITY ignore EXTENSION QMCConfigInfo PRESENCE optional }|
+ { ID id-NGAPIESupportInformationRequestList CRITICALITY ignore EXTENSION NGAPIESupportInformationRequestList PRESENCE optional },
+ ...
+}
+
+SourceNodeID ::= CHOICE {
+ sourceengNB-ID GlobalGNB-ID,
+ choice-Extensions ProtocolIE-SingleContainer { { SourceNodeID-ExtIEs} }
+}
+
+SourceNodeID-ExtIEs NGAP-PROTOCOL-IES ::= {
...
}
@@ -4544,7 +5925,7 @@ SourceRANNodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
}
SourceToTarget-TransparentContainer ::= OCTET STRING
--- This IE includes a transparent container from the source RAN node to the target RAN node.
+-- This IE includes a transparent container from the source RAN node to the target RAN node.
-- The octets of the OCTET STRING are encoded according to the specifications of the target system.
SourceToTarget-AMFInformationReroute ::= SEQUENCE {
@@ -4559,11 +5940,11 @@ SourceToTarget-AMFInformationReroute-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
--- This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF.
+-- This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF.
-- The octets of the OCTET STRING are encoded according to the specifications of the Core network.
SRVCCOperationPossible ::= ENUMERATED {
- possible,
+ possible,
notPossible,
...
}
@@ -4579,7 +5960,7 @@ SST ::= OCTET STRING (SIZE(1))
SupportedTAList ::= SEQUENCE (SIZE(1..maxnoofTACs)) OF SupportedTAItem
SupportedTAItem ::= SEQUENCE {
- tAC TAC,
+ tAC TAC,
broadcastPLMNList BroadcastPLMNList,
iE-Extensions ProtocolExtensionContainer { {SupportedTAItem-ExtIEs} } OPTIONAL,
...
@@ -4606,10 +5987,15 @@ Suspend-Response-Indication ::= ENUMERATED {
...
}
+SurvivalTime ::= INTEGER (0..1920000, ...)
+
+
-- T
TAC ::= OCTET STRING (SIZE(3))
+TACListInNRNTN ::= SEQUENCE (SIZE(1..maxnoofTACsinNTN)) OF TAC
+
TAI ::= SEQUENCE {
pLMNIdentity PLMNIdentity,
tAC TAC,
@@ -4701,6 +6087,19 @@ TAIListForRestart ::= SEQUENCE (SIZE(1..maxnoofTAIforRestart)) OF TAI
TAIListForWarning ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI
+TAINSAGSupportList ::= SEQUENCE (SIZE(1..maxnoofNSAGs)) OF TAINSAGSupportItem
+
+TAINSAGSupportItem ::= SEQUENCE {
+ nSAG-ID NSAG-ID,
+ nSAGSliceSupportList ExtendedSliceSupportList,
+ iE-Extensions ProtocolExtensionContainer { {TAINSAGSupportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAINSAGSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TargeteNB-ID ::= SEQUENCE {
globalENB-ID GlobalNgENB-ID,
selected-EPS-TAI EPS-TAI,
@@ -4712,6 +6111,18 @@ TargeteNB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+TargetHomeENB-ID ::= SEQUENCE {
+ pLMNidentity PLMNIdentity,
+ homeENB-ID BIT STRING (SIZE(28)),
+ selected-EPS-TAI EPS-TAI,
+ iE-Extensions ProtocolExtensionContainer { {TargetHomeENB-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargetHomeENB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TargetID ::= CHOICE {
targetRANNodeID TargetRANNodeID,
targeteNB-ID TargeteNB-ID,
@@ -4719,7 +6130,8 @@ TargetID ::= CHOICE {
}
TargetID-ExtIEs NGAP-PROTOCOL-IES ::= {
- {ID id-TargetRNC-ID CRITICALITY reject TYPE TargetRNC-ID PRESENCE mandatory },
+ {ID id-TargetRNC-ID CRITICALITY reject TYPE TargetRNC-ID PRESENCE mandatory }|
+ {ID id-TargetHomeENB-ID CRITICALITY reject TYPE TargetHomeENB-ID PRESENCE mandatory },
...
}
@@ -4730,7 +6142,10 @@ TargetNGRANNode-ToSourceNGRANNode-TransparentContainer ::= SEQUENCE {
}
TargetNGRANNode-ToSourceNGRANNode-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- { ID id-DAPSResponseInfoList CRITICALITY ignore EXTENSION DAPSResponseInfoList PRESENCE optional },
+ { ID id-DAPSResponseInfoList CRITICALITY ignore EXTENSION DAPSResponseInfoList PRESENCE optional }|
+ { ID id-DirectForwardingPathAvailability CRITICALITY ignore EXTENSION DirectForwardingPathAvailability PRESENCE optional }|
+ { ID id-MBS-ActiveSessionInformation-TargettoSourceList CRITICALITY ignore EXTENSION MBS-ActiveSessionInformation-TargettoSourceList PRESENCE optional }|
+ { ID id-NGAPIESupportInformationResponseList CRITICALITY ignore EXTENSION NGAPIESupportInformationResponseList PRESENCE optional },
...
}
@@ -4741,6 +6156,30 @@ TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer ::= SEQUENCE {
}
TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-NGAPIESupportInformationResponseList CRITICALITY ignore EXTENSION NGAPIESupportInformationResponseList PRESENCE optional },
+ ...
+}
+
+TargetNSSAI ::= SEQUENCE (SIZE(1..maxnoofTargetS-NSSAIs)) OF TargetNSSAI-Item
+
+TargetNSSAI-Item ::= SEQUENCE {
+ s-NSSAI S-NSSAI,
+ iE-Extensions ProtocolExtensionContainer { {TargetNSSAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargetNSSAI-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TargetNSSAIInformation ::= SEQUENCE {
+ targetNSSAI TargetNSSAI,
+ indexToRFSP IndexToRFSP,
+ iE-Extensions ProtocolExtensionContainer { {TargetNSSAIInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargetNSSAIInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -4755,6 +6194,29 @@ TargetRANNodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+TargetRANNodeID-RIM ::= SEQUENCE {
+ globalRANNodeID GlobalRANNodeID,
+ selectedTAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {TargetRANNodeID-RIM-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargetRANNodeID-RIM-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TargetRANNodeID-SON ::= SEQUENCE {
+ globalRANNodeID GlobalRANNodeID,
+ selectedTAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {TargetRANNodeID-SON-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargetRANNodeID-SON-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ {ID id-NR-CGI CRITICALITY ignore EXTENSION NR-CGI PRESENCE optional },
+ ...
+}
+
TargetRNC-ID ::= SEQUENCE {
lAI LAI,
rNC-ID RNC-ID,
@@ -4768,27 +6230,41 @@ TargetRNC-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
}
TargetToSource-TransparentContainer ::= OCTET STRING
--- This IE includes a transparent container from the target RAN node to the source RAN node.
+-- This IE includes a transparent container from the target RAN node to the source RAN node.
-- The octets of the OCTET STRING are encoded according to the specifications of the target system.
TargettoSource-Failure-TransparentContainer ::= OCTET STRING
--- This IE includes a transparent container from the target RAN node to the source RAN node.
+-- This IE includes a transparent container from the target RAN node to the source RAN node.
-- The octets of the OCTET STRING are encoded according to the specifications of the target system (if applicable).
-TimerApproachForGUAMIRemoval ::= ENUMERATED {
+TimerApproachForGUAMIRemoval ::= ENUMERATED {
apply-timer,
...
}
TimeStamp ::= OCTET STRING (SIZE(4))
+TimeSyncAssistanceInfo ::= SEQUENCE {
+ timeDistributionIndication ENUMERATED {enabled, disabled, ...},
+ uUTimeSyncErrorBudget INTEGER (1..1000000, ...) OPTIONAL,
+ -- The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled”
+ iE-Extensions ProtocolExtensionContainer { {TimeSyncAssistanceInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TimeSyncAssistanceInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
TimeUEStayedInCell ::= INTEGER (0..4095)
TimeUEStayedInCellEnhancedGranularity ::= INTEGER (0..40950)
-TNAP-ID ::= OCTET STRING
+TMGI ::= OCTET STRING (SIZE(6))
+
+TNAP-ID ::= OCTET STRING
TNGF-ID ::= CHOICE {
tNGF-ID BIT STRING (SIZE(32, ...)),
@@ -4814,7 +6290,7 @@ TNLAssociationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
-TNLAssociationUsage ::= ENUMERATED {
+TNLAssociationUsage ::= ENUMERATED {
ue,
non-ue,
both,
@@ -4836,8 +6312,8 @@ TooearlyIntersystemHO-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
TraceActivation ::= SEQUENCE {
nGRANTraceID NGRANTraceID,
interfacesToTrace InterfacesToTrace,
- traceDepth TraceDepth,
- traceCollectionEntityIPAddress TransportLayerAddress,
+ traceDepth TraceDepth,
+ traceCollectionEntityIPAddress TransportLayerAddress,
iE-Extensions ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL,
...
}
@@ -4848,7 +6324,7 @@ TraceActivation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
-TraceDepth ::= ENUMERATED {
+TraceDepth ::= ENUMERATED {
minimum,
medium,
maximum,
@@ -4880,6 +6356,30 @@ TAIBasedMDT-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI
+TAIBasedQMC ::= SEQUENCE {
+ tAIListforQMC TAIListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {TAIBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAIBasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAIListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAI
+
+TABasedQMC ::= SEQUENCE {
+ tAListforQMC TAListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {TABasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TABasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAC
+
TABasedMDT ::= SEQUENCE {
tAListforMDT TAListforMDT,
@@ -4921,6 +6421,7 @@ TSCAssistanceInformation ::= SEQUENCE {
}
TSCAssistanceInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-SurvivalTime CRITICALITY ignore EXTENSION SurvivalTime PRESENCE optional},
...
}
@@ -4948,6 +6449,37 @@ UEAggregateMaximumBitRate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+UEAppLayerMeasInfoList ::= SEQUENCE (SIZE(1..maxnoofUEAppLayerMeas)) OF UEAppLayerMeasInfoItem
+
+UEAppLayerMeasInfoItem ::= SEQUENCE {
+ uEAppLayerMeasConfigInfo UEAppLayerMeasConfigInfo,
+ iE-Extensions ProtocolExtensionContainer { { UEAppLayerMeasInfoItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAppLayerMeasInfoItem-ExtIEs NGAP-PROTOCOL-EXTENSION::= {
+ ...
+}
+
+UEAppLayerMeasConfigInfo ::= SEQUENCE {
+ qoEReference QoEReference,
+ serviceType ServiceType,
+ areaScopeOfQMC AreaScopeOfQMC OPTIONAL,
+ measCollEntityIPAddress TransportLayerAddress,
+ qoEMeasurementStatus ENUMERATED {ongoing,...} OPTIONAL,
+ containerForAppLayerMeasConfig OCTET STRING (SIZE(1..8000)) OPTIONAL,
+ measConfigAppLayerID INTEGER (0..15, ...) OPTIONAL,
+ sliceSupportListQMC SliceSupportListQMC OPTIONAL,
+ mDT-AlignmentInfo MDT-AlignmentInfo OPTIONAL,
+ availableRANVisibleQoEMetrics AvailableRANVisibleQoEMetrics OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UEAppLayerMeasConfigInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAppLayerMeasConfigInfo-ExtIEs NGAP-PROTOCOL-EXTENSION::= {
+ ...
+}
+
UE-associatedLogicalNG-connectionList ::= SEQUENCE (SIZE(1..maxnoofNGConnectionsToReset)) OF UE-associatedLogicalNG-connectionItem
UE-associatedLogicalNG-connectionItem ::= SEQUENCE {
@@ -5000,10 +6532,10 @@ UEContextSuspendRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
}
UE-DifferentiationInfo ::= SEQUENCE {
- periodicCommunicationIndicator ENUMERATED {periodically, ondemand, ... } OPTIONAL,
- periodicTime INTEGER (1..3600, ...) OPTIONAL,
- scheduledCommunicationTime ScheduledCommunicationTime OPTIONAL,
- stationaryIndication ENUMERATED {stationary, mobile, ...} OPTIONAL,
+ periodicCommunicationIndicator ENUMERATED {periodically, ondemand, ... } OPTIONAL,
+ periodicTime INTEGER (1..3600, ...) OPTIONAL,
+ scheduledCommunicationTime ScheduledCommunicationTime OPTIONAL,
+ stationaryIndication ENUMERATED {stationary, mobile, ...} OPTIONAL,
trafficProfile ENUMERATED {single-packet, dual-packets, multiple-packets, ...} OPTIONAL,
batteryIndication ENUMERATED {battery-powered, battery-powered-not-rechargeable-or-replaceable, not-battery-powered, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { UE-DifferentiationInfo-ExtIEs} } OPTIONAL,
@@ -5129,6 +6661,21 @@ UESecurityCapabilities-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
...
}
+UESliceMaximumBitRateList ::= SEQUENCE (SIZE(1..maxnoofAllowedS-NSSAIs)) OF UESliceMaximumBitRateItem
+
+UESliceMaximumBitRateItem ::= SEQUENCE {
+ s-NSSAI S-NSSAI,
+ uESliceMaximumBitRateDL BitRate,
+ uESliceMaximumBitRateUL BitRate,
+ iE-Extensions ProtocolExtensionContainer { { UESliceMaximumBitRateItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UESliceMaximumBitRateItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
UE-UP-CIoT-Support ::= ENUMERATED {supported, ...}
UL-CP-SecurityInformation ::= SEQUENCE {
@@ -5255,6 +6802,7 @@ UserLocationInformationN3IWF ::= SEQUENCE {
}
UserLocationInformationN3IWF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional },
...
}
@@ -5267,6 +6815,7 @@ UserLocationInformationTNGF ::= SEQUENCE {
}
UserLocationInformationTNGF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional },
...
}
@@ -5279,6 +6828,7 @@ UserLocationInformationTWIF ::= SEQUENCE {
}
UserLocationInformationTWIF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
+ { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional },
...
}
@@ -5289,7 +6839,9 @@ UserLocationInformationW-AGF ::= CHOICE {
}
UserLocationInformationW-AGF-ExtIEs NGAP-PROTOCOL-IES ::= {
- { ID id-GlobalCable-ID CRITICALITY ignore TYPE GlobalCable-ID PRESENCE mandatory },
+ { ID id-GlobalCable-ID CRITICALITY ignore TYPE GlobalCable-ID PRESENCE mandatory }|
+ { ID id-HFCNode-ID-new CRITICALITY ignore TYPE HFCNode-ID-new PRESENCE mandatory }|
+ { ID id-GlobalCable-ID-new CRITICALITY ignore TYPE GlobalCable-ID-new PRESENCE mandatory },
...
}
@@ -5302,8 +6854,9 @@ UserLocationInformationNR ::= SEQUENCE {
}
UserLocationInformationNR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
- { ID id-PSCellInformation CRITICALITY ignore EXTENSION NGRAN-CGI PRESENCE optional }|
- { ID id-NID CRITICALITY reject EXTENSION NID PRESENCE optional },
+ { ID id-PSCellInformation CRITICALITY ignore EXTENSION NGRAN-CGI PRESENCE optional }|
+ { ID id-NID CRITICALITY reject EXTENSION NID PRESENCE optional }|
+ { ID id-NRNTNTAIInformation CRITICALITY ignore EXTENSION NRNTNTAIInformation PRESENCE optional },
...
}
@@ -5393,7 +6946,7 @@ WLANMeasConfigNameItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= {
WLANMeasConfig::= ENUMERATED {setup,...}
-WLANName ::= OCTET STRING (SIZE (1..32))
+WLANName ::= OCTET STRING (SIZE (1..32))
WUS-Assistance-Information ::= SEQUENCE {
pagingProbabilityInformation PagingProbabilityInformation,
diff --git a/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn b/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn
index 47b603ba9b..e21e518f2d 100644
--- a/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/ngap/NGAP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.413 V16.7.0 (2021-10)
+-- 3GPP TS 38.413 V17.7.0 (2023-12)
-- 9.4.4 PDU Definitions
-- **************************************************************
--
@@ -6,11 +6,11 @@
--
-- **************************************************************
-NGAP-PDU-Contents {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+NGAP-PDU-Contents {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-PDU-Contents (1) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -55,9 +55,12 @@ IMPORTS
EndIndication,
Enhanced-CoverageRestriction,
EUTRA-CGI,
+ EUTRA-PagingeDRXInformation,
Extended-AMFName,
Extended-ConnectedTime,
Extended-RANNodeName,
+ FiveG-ProSeAuthorized,
+ FiveG-ProSePC5QoSParameters,
FiveG-S-TMSI,
GlobalRANNodeID,
GUAMI,
@@ -76,9 +79,25 @@ IMPORTS
LTEUESidelinkAggregateMaximumBitrate,
LTEV2XServicesAuthorized,
MaskedIMEISV,
+ MBS-AreaSessionID,
+ MBS-ServiceArea,
+ MBS-SessionID,
+ MBS-DistributionReleaseRequestTransfer,
+ MBS-DistributionSetupRequestTransfer,
+ MBS-DistributionSetupResponseTransfer,
+ MBS-DistributionSetupUnsuccessfulTransfer,
+ MBSSessionReleaseResponseTransfer,
+ MBSSessionSetupOrModFailureTransfer,
+ MBSSessionSetupOrModRequestTransfer,
+ MBSSessionSetupOrModResponseTransfer,
MessageIdentifier,
MDTPLMNList,
+ MDTPLMNModificationList,
MobilityRestrictionList,
+ MulticastSessionActivationRequestTransfer,
+ MulticastSessionDeactivationRequestTransfer,
+ MulticastSessionUpdateRequestTransfer,
+ MulticastGroupPagingAreaList,
NAS-PDU,
NASSecurityParametersFromNGRAN,
NB-IoT-DefaultPagingDRX,
@@ -92,6 +111,7 @@ IMPORTS
NotifySourceNGRANNode,
NPN-AccessInformation,
NR-CGI,
+ NR-PagingeDRXInformation,
NRPPa-PDU,
NumberOfBroadcastsRequested,
NRUESidelinkAggregateMaximumBitrate,
@@ -99,10 +119,10 @@ IMPORTS
OverloadResponse,
OverloadStartNSSAIList,
PagingAssisDataforCEcapabUE,
+ PagingCause,
PagingDRX,
PagingOrigin,
PagingPriority,
- PagingeDRXInformation,
PDUSessionAggregateMaximumBitRate,
PDUSessionResourceAdmittedList,
PDUSessionResourceFailedToModifyListModCfm,
@@ -140,15 +160,19 @@ IMPORTS
PDUSessionResourceToBeSwitchedDLList,
PDUSessionResourceToReleaseListHOCmd,
PDUSessionResourceToReleaseListRelCmd,
+ PEIPSassistanceInformation,
PLMNIdentity,
PLMNSupportList,
PrivacyIndicator,
PWSFailedCellIDList,
PC5QoSParameters,
+ QMCConfigInfo,
+ QMCDeactivation,
RANNodeName,
RANPagingPriority,
RANStatusTransfer-TransparentContainer,
RAN-UE-NGAP-ID,
+ RedCapIndication,
RedirectionVoiceFallback,
RelativeAMFCapacity,
RepetitionPeriod,
@@ -175,8 +199,10 @@ IMPORTS
TAIListForPaging,
TAIListForRestart,
TargetID,
+ TargetNSSAIInformation,
TargetToSource-TransparentContainer,
TargettoSource-Failure-TransparentContainer,
+ TimeSyncAssistanceInfo,
TimeToWait,
TNLAssociationList,
TraceActivation,
@@ -195,6 +221,7 @@ IMPORTS
UERadioCapabilityID,
UERetentionInformation,
UESecurityCapabilities,
+ UESliceMaximumBitRateList,
UE-UP-CIoT-Support,
UL-CP-SecurityInformation,
UnavailableGUAMIList,
@@ -259,9 +286,13 @@ FROM NGAP-Containers
id-EndIndication,
id-Enhanced-CoverageRestriction,
id-EUTRA-CGI,
+ id-EUTRA-PagingeDRXInformation,
id-Extended-AMFName,
id-Extended-ConnectedTime,
id-Extended-RANNodeName,
+ id-FiveG-ProSeAuthorized,
+ id-FiveG-ProSeUEPC5AggregateMaximumBitRate,
+ id-FiveG-ProSePC5QoSParameters,
id-FiveG-S-TMSI,
id-GlobalRANNodeID,
id-GUAMI,
@@ -280,9 +311,28 @@ FROM NGAP-Containers
id-LTEV2XServicesAuthorized,
id-LTEUESidelinkAggregateMaximumBitrate,
id-ManagementBasedMDTPLMNList,
+ id-ManagementBasedMDTPLMNModificationList,
id-MaskedIMEISV,
+ id-MBS-AreaSessionID,
+ id-MBS-ServiceArea,
+ id-MBS-SessionID,
+ id-MBS-DistributionReleaseRequestTransfer,
+ id-MBS-DistributionSetupRequestTransfer,
+ id-MBS-DistributionSetupResponseTransfer,
+ id-MBS-DistributionSetupUnsuccessfulTransfer,
+ id-MBSSessionModificationFailureTransfer,
+ id-MBSSessionModificationRequestTransfer,
+ id-MBSSessionModificationResponseTransfer,
+ id-MBSSessionReleaseResponseTransfer,
+ id-MBSSessionSetupFailureTransfer,
+ id-MBSSessionSetupRequestTransfer,
+ id-MBSSessionSetupResponseTransfer,
id-MessageIdentifier,
id-MobilityRestrictionList,
+ id-MulticastSessionActivationRequestTransfer,
+ id-MulticastSessionDeactivationRequestTransfer,
+ id-MulticastSessionUpdateRequestTransfer,
+ id-MulticastGroupPagingAreaList,
id-NAS-PDU,
id-NASC,
id-NASSecurityParametersFromNGRAN,
@@ -299,7 +349,7 @@ FROM NGAP-Containers
id-NGRANTraceID,
id-NotifySourceNGRANNode,
id-NPN-AccessInformation,
- id-NR-CGI,
+ id-NR-PagingeDRXInformation,
id-NRPPa-PDU,
id-NRV2XServicesAuthorized,
id-NRUESidelinkAggregateMaximumBitrate,
@@ -307,8 +357,8 @@ FROM NGAP-Containers
id-OldAMF,
id-OverloadStartNSSAIList,
id-PagingAssisDataforCEcapabUE,
+ id-PagingCause,
id-PagingDRX,
- id-PagingeDRXInformation,
id-PagingOrigin,
id-PagingPriority,
id-PDUSessionResourceAdmittedList,
@@ -347,14 +397,18 @@ FROM NGAP-Containers
id-PDUSessionResourceToBeSwitchedDLList,
id-PDUSessionResourceToReleaseListHOCmd,
id-PDUSessionResourceToReleaseListRelCmd,
+ id-PEIPSassistanceInformation,
id-PLMNSupportList,
id-PrivacyIndicator,
id-PWSFailedCellIDList,
id-PC5QoSParameters,
+ id-QMCConfigInfo,
+ id-QMCDeactivation,
id-RANNodeName,
id-RANPagingPriority,
id-RANStatusTransfer-TransparentContainer,
- id-RAN-UE-NGAP-ID,
+ id-RAN-UE-NGAP-ID,
+ id-RedCapIndication,
id-RedirectionVoiceFallback,
id-RelativeAMFCapacity,
id-RepetitionPeriod,
@@ -385,8 +439,10 @@ FROM NGAP-Containers
id-TAIListForPaging,
id-TAIListForRestart,
id-TargetID,
+ id-TargetNSSAIInformation,
id-TargetToSource-TransparentContainer,
id-TargettoSource-Failure-TransparentContainer,
+ id-TimeSyncAssistanceInfo,
id-TimeToWait,
id-TNGFIdentityInformation,
id-TraceActivation,
@@ -407,6 +463,7 @@ FROM NGAP-Containers
id-UERadioCapability-EUTRA-Format,
id-UERetentionInformation,
id-UESecurityCapabilities,
+ id-UESliceMaximumBitRateList,
id-UE-UP-CIoT-Support,
id-UL-CP-SecurityInformation,
id-UnavailableGUAMIList,
@@ -451,7 +508,8 @@ PDUSessionResourceSetupRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }|
{ ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE optional }|
{ ID id-PDUSessionResourceSetupListSUReq CRITICALITY reject TYPE PDUSessionResourceSetupListSUReq PRESENCE mandatory }|
- { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional },
+ { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional },
...
}
@@ -471,8 +529,9 @@ PDUSessionResourceSetupResponseIEs NGAP-PROTOCOL-IES ::= {
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-PDUSessionResourceSetupListSURes CRITICALITY ignore TYPE PDUSessionResourceSetupListSURes PRESENCE optional }|
{ ID id-PDUSessionResourceFailedToSetupListSURes CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListSURes PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
- ...
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional },
+ ...
}
@@ -692,16 +751,23 @@ InitialContextSetupRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }|
{ ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }|
{ ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }|
- { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
- { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }|
- { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
- { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
+ { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }|
+ { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }|
{ ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
{ ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }|
{ ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }|
{ ID id-RGLevelWirelineAccessCharacteristics CRITICALITY ignore TYPE RGLevelWirelineAccessCharacteristics PRESENCE optional }|
{ ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional },
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
+ { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }|
+ { ID id-QMCConfigInfo CRITICALITY ignore TYPE QMCConfigInfo PRESENCE optional }|
+ { ID id-TargetNSSAIInformation CRITICALITY ignore TYPE TargetNSSAIInformation PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }|
+ { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional },
...
}
@@ -841,7 +907,7 @@ UEContextResumeRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-PDUSessionResourceFailedToResumeListRESReq CRITICALITY reject TYPE PDUSessionResourceFailedToResumeListRESReq PRESENCE optional }|
{ ID id-Suspend-Request-Indication CRITICALITY ignore TYPE Suspend-Request-Indication PRESENCE optional }|
{ ID id-InfoOnRecommendedCellsAndRANNodesForPaging CRITICALITY ignore TYPE InfoOnRecommendedCellsAndRANNodesForPaging PRESENCE optional }|
- { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional },
+ { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional },
...
}
@@ -879,7 +945,7 @@ UEContextResumeFailure ::= SEQUENCE {
...
}
-UEContextResumeFailureIEs NGAP-PROTOCOL-IES ::= {
+UEContextResumeFailureIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
@@ -943,7 +1009,7 @@ UEContextSuspendFailure ::= SEQUENCE {
...
}
-UEContextSuspendFailureIEs NGAP-PROTOCOL-IES ::= {
+UEContextSuspendFailureIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
@@ -990,7 +1056,15 @@ UEContextModificationRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }|
{ ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
{ ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
- { ID id-RGLevelWirelineAccessCharacteristics CRITICALITY ignore TYPE RGLevelWirelineAccessCharacteristics PRESENCE optional },
+ { ID id-RGLevelWirelineAccessCharacteristics CRITICALITY ignore TYPE RGLevelWirelineAccessCharacteristics PRESENCE optional }|
+ { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }|
+ { ID id-QMCConfigInfo CRITICALITY ignore TYPE QMCConfigInfo PRESENCE optional }|
+ { ID id-QMCDeactivation CRITICALITY ignore TYPE QMCDeactivation PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional }|
+ { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }|
+ { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional },
...
}
@@ -1005,7 +1079,7 @@ UEContextModificationResponse ::= SEQUENCE {
...
}
-UEContextModificationResponseIEs NGAP-PROTOCOL-IES ::= {
+UEContextModificationResponseIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RRCState CRITICALITY ignore TYPE RRCState PRESENCE optional }|
@@ -1025,7 +1099,7 @@ UEContextModificationFailure ::= SEQUENCE {
...
}
-UEContextModificationFailureIEs NGAP-PROTOCOL-IES ::= {
+UEContextModificationFailureIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
@@ -1054,7 +1128,7 @@ RRCInactiveTransitionReportIEs NGAP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- Retrieve UE Information
+-- Retrieve UE Information
--
-- **************************************************************
@@ -1086,7 +1160,8 @@ UEInformationTransferIEs NGAP-PROTOCOL-IES ::= {
{ ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }|
{ ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }|
{ ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }|
- { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional },
+ { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }|
+ { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional },
...
}
@@ -1133,7 +1208,7 @@ HandoverRequired ::= SEQUENCE {
...
}
-HandoverRequiredIEs NGAP-PROTOCOL-IES ::= {
+HandoverRequiredIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }|
@@ -1156,7 +1231,7 @@ HandoverCommand ::= SEQUENCE {
...
}
-HandoverCommandIEs NGAP-PROTOCOL-IES ::= {
+HandoverCommandIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }|
@@ -1181,7 +1256,7 @@ HandoverPreparationFailure ::= SEQUENCE {
...
}
-HandoverPreparationFailureIEs NGAP-PROTOCOL-IES ::= {
+HandoverPreparationFailureIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
@@ -1241,7 +1316,12 @@ HandoverRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }|
{ ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
{ ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
- { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional },
+ { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }|
+ { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }|
+ { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional },
...
}
@@ -1262,7 +1342,9 @@ HandoverRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= {
{ ID id-PDUSessionResourceAdmittedList CRITICALITY ignore TYPE PDUSessionResourceAdmittedList PRESENCE mandatory }|
{ ID id-PDUSessionResourceFailedToSetupListHOAck CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListHOAck PRESENCE optional }|
{ ID id-TargetToSource-TransparentContainer CRITICALITY reject TYPE TargetToSource-TransparentContainer PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-NPN-AccessInformation CRITICALITY reject TYPE NPN-AccessInformation PRESENCE optional }|
+ { ID id-RedCapIndication CRITICALITY ignore TYPE RedCapIndication PRESENCE optional },
...
}
@@ -1278,7 +1360,7 @@ HandoverFailure ::= SEQUENCE {
...
}
-HandoverFailureIEs NGAP-PROTOCOL-IES ::= {
+HandoverFailureIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
@@ -1303,7 +1385,7 @@ HandoverNotify ::= SEQUENCE {
...
}
-HandoverNotifyIEs NGAP-PROTOCOL-IES ::= {
+HandoverNotifyIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }|
@@ -1328,14 +1410,15 @@ PathSwitchRequest ::= SEQUENCE {
...
}
-PathSwitchRequestIEs NGAP-PROTOCOL-IES ::= {
+PathSwitchRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-SourceAMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }|
{ ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory }|
{ ID id-PDUSessionResourceToBeSwitchedDLList CRITICALITY reject TYPE PDUSessionResourceToBeSwitchedDLList PRESENCE mandatory }|
{ ID id-PDUSessionResourceFailedToSetupListPSReq CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListPSReq PRESENCE optional }|
- { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE optional },
+ { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE optional }|
+ { ID id-RedCapIndication CRITICALITY ignore TYPE RedCapIndication PRESENCE optional },
...
}
@@ -1351,7 +1434,7 @@ PathSwitchRequestAcknowledge ::= SEQUENCE {
...
}
-PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= {
+PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE optional }|
@@ -1376,7 +1459,14 @@ PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= {
{ ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
{ ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }|
{ ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional },
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
+ { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }|
+ { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }|
+ { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional }|
+ { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized PRESENCE optional },
...
}
@@ -1392,7 +1482,7 @@ PathSwitchRequestFailure ::= SEQUENCE {
...
}
-PathSwitchRequestFailureIEs NGAP-PROTOCOL-IES ::= {
+PathSwitchRequestFailureIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-PDUSessionResourceReleasedListPSFail CRITICALITY ignore TYPE PDUSessionResourceReleasedListPSFail PRESENCE mandatory }|
@@ -1417,7 +1507,7 @@ HandoverCancel ::= SEQUENCE {
...
}
-HandoverCancelIEs NGAP-PROTOCOL-IES ::= {
+HandoverCancelIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
@@ -1435,7 +1525,7 @@ HandoverCancelAcknowledge ::= SEQUENCE {
...
}
-HandoverCancelAcknowledgeIEs NGAP-PROTOCOL-IES ::= {
+HandoverCancelAcknowledgeIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
@@ -1459,7 +1549,7 @@ HandoverSuccess ::= SEQUENCE {
...
}
-HandoverSuccessIEs NGAP-PROTOCOL-IES ::= {
+HandoverSuccessIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory },
...
@@ -1483,9 +1573,9 @@ UplinkRANEarlyStatusTransfer ::= SEQUENCE {
}
UplinkRANEarlyStatusTransferIEs NGAP-PROTOCOL-IES ::= {
- { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory}|
- { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory}|
- { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory},
+ { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory },
...
}
@@ -1507,9 +1597,9 @@ DownlinkRANEarlyStatusTransfer ::= SEQUENCE {
}
DownlinkRANEarlyStatusTransferIEs NGAP-PROTOCOL-IES ::= {
- { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory}|
- { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory}|
- { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory},
+ { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory },
...
}
@@ -1532,8 +1622,8 @@ UplinkRANStatusTransfer ::= SEQUENCE {
}
UplinkRANStatusTransferIEs NGAP-PROTOCOL-IES ::= {
- { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
- { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RANStatusTransfer-TransparentContainer CRITICALITY reject TYPE RANStatusTransfer-TransparentContainer PRESENCE mandatory },
...
}
@@ -1556,8 +1646,8 @@ DownlinkRANStatusTransfer ::= SEQUENCE {
}
DownlinkRANStatusTransferIEs NGAP-PROTOCOL-IES ::= {
- { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
- { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
+ { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RANStatusTransfer-TransparentContainer CRITICALITY reject TYPE RANStatusTransfer-TransparentContainer PRESENCE mandatory },
...
}
@@ -1580,19 +1670,22 @@ Paging ::= SEQUENCE {
}
PagingIEs NGAP-PROTOCOL-IES ::= {
- { ID id-UEPagingIdentity CRITICALITY ignore TYPE UEPagingIdentity PRESENCE mandatory }|
- { ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }|
- { ID id-TAIListForPaging CRITICALITY ignore TYPE TAIListForPaging PRESENCE mandatory }|
- { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }|
- { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }|
- { ID id-PagingOrigin CRITICALITY ignore TYPE PagingOrigin PRESENCE optional }|
- { ID id-AssistanceDataForPaging CRITICALITY ignore TYPE AssistanceDataForPaging PRESENCE optional }|
- { ID id-NB-IoT-Paging-eDRXInfo CRITICALITY ignore TYPE NB-IoT-Paging-eDRXInfo PRESENCE optional }|
- { ID id-NB-IoT-PagingDRX CRITICALITY ignore TYPE NB-IoT-PagingDRX PRESENCE optional }|
- { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }|
- { ID id-WUS-Assistance-Information CRITICALITY ignore TYPE WUS-Assistance-Information PRESENCE optional }|
- { ID id-PagingeDRXInformation CRITICALITY ignore TYPE PagingeDRXInformation PRESENCE optional }|
- { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional },
+ { ID id-UEPagingIdentity CRITICALITY ignore TYPE UEPagingIdentity PRESENCE mandatory }|
+ { ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }|
+ { ID id-TAIListForPaging CRITICALITY ignore TYPE TAIListForPaging PRESENCE mandatory }|
+ { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }|
+ { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }|
+ { ID id-PagingOrigin CRITICALITY ignore TYPE PagingOrigin PRESENCE optional }|
+ { ID id-AssistanceDataForPaging CRITICALITY ignore TYPE AssistanceDataForPaging PRESENCE optional }|
+ { ID id-NB-IoT-Paging-eDRXInfo CRITICALITY ignore TYPE NB-IoT-Paging-eDRXInfo PRESENCE optional }|
+ { ID id-NB-IoT-PagingDRX CRITICALITY ignore TYPE NB-IoT-PagingDRX PRESENCE optional }|
+ { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }|
+ { ID id-WUS-Assistance-Information CRITICALITY ignore TYPE WUS-Assistance-Information PRESENCE optional }|
+ { ID id-EUTRA-PagingeDRXInformation CRITICALITY ignore TYPE EUTRA-PagingeDRXInformation PRESENCE optional }|
+ { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }|
+ { ID id-NR-PagingeDRXInformation CRITICALITY ignore TYPE NR-PagingeDRXInformation PRESENCE optional }|
+ { ID id-PagingCause CRITICALITY ignore TYPE PagingCause PRESENCE optional }|
+ { ID id-PEIPSassistanceInformation CRITICALITY ignore TYPE PEIPSassistanceInformation PRESENCE optional },
...
}
@@ -1629,7 +1722,8 @@ InitialUEMessage-IEs NGAP-PROTOCOL-IES ::= {
{ ID id-LTEM-Indication CRITICALITY ignore TYPE LTEM-Indication PRESENCE optional }|
{ ID id-EDT-Session CRITICALITY ignore TYPE EDT-Session PRESENCE optional }|
{ ID id-AuthenticatedIndication CRITICALITY ignore TYPE AuthenticatedIndication PRESENCE optional }|
- { ID id-NPN-AccessInformation CRITICALITY reject TYPE NPN-AccessInformation PRESENCE optional },
+ { ID id-NPN-AccessInformation CRITICALITY reject TYPE NPN-AccessInformation PRESENCE optional }|
+ { ID id-RedCapIndication CRITICALITY ignore TYPE RedCapIndication PRESENCE optional },
...
}
@@ -1662,7 +1756,9 @@ DownlinkNASTransport-IEs NGAP-PROTOCOL-IES ::= {
{ ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }|
{ ID id-UECapabilityInfoRequest CRITICALITY ignore TYPE UECapabilityInfoRequest PRESENCE optional }|
{ ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional },
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
+ { ID id-TargetNSSAIInformation CRITICALITY ignore TYPE TargetNSSAIInformation PRESENCE optional }|
+ { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional },
...
}
@@ -1825,7 +1921,7 @@ NGSetupFailureIEs NGAP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- RAN CONFIGURATION UPDATE
+-- RAN CONFIGURATION UPDATE
--
-- **************************************************************
@@ -1887,7 +1983,7 @@ RANConfigurationUpdateFailureIEs NGAP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- AMF CONFIGURATION UPDATE
+-- AMF CONFIGURATION UPDATE
--
-- **************************************************************
@@ -2043,7 +2139,7 @@ OverloadStart ::= SEQUENCE {
...
}
-OverloadStartIEs NGAP-PROTOCOL-IES ::= {
+OverloadStartIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMFOverloadResponse CRITICALITY reject TYPE OverloadResponse PRESENCE optional }|
{ ID id-AMFTrafficLoadReductionIndication CRITICALITY ignore TYPE TrafficLoadReductionIndication PRESENCE optional }|
{ ID id-OverloadStartNSSAIList CRITICALITY ignore TYPE OverloadStartNSSAIList PRESENCE optional },
@@ -2061,7 +2157,7 @@ OverloadStop ::= SEQUENCE {
...
}
-OverloadStopIEs NGAP-PROTOCOL-IES ::= {
+OverloadStopIEs NGAP-PROTOCOL-IES ::= {
...
}
@@ -2109,7 +2205,7 @@ DownlinkRANConfigurationTransferIEs NGAP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- WARNING MESSAGE TRANSMISSION ELEMENTARY PROCEDURES
+-- WARNING MESSAGE TRANSMISSION ELEMENTARY PROCEDURES
--
-- **************************************************************
@@ -2130,7 +2226,7 @@ WriteReplaceWarningRequest ::= SEQUENCE {
...
}
-WriteReplaceWarningRequestIEs NGAP-PROTOCOL-IES ::= {
+WriteReplaceWarningRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }|
{ ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }|
{ ID id-WarningAreaList CRITICALITY ignore TYPE WarningAreaList PRESENCE optional }|
@@ -2181,7 +2277,7 @@ PWSCancelRequest ::= SEQUENCE {
...
}
-PWSCancelRequestIEs NGAP-PROTOCOL-IES ::= {
+PWSCancelRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }|
{ ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }|
{ ID id-WarningAreaList CRITICALITY ignore TYPE WarningAreaList PRESENCE optional }|
@@ -2545,7 +2641,7 @@ UERadioCapabilityCheckRequest ::= SEQUENCE {
...
}
-UERadioCapabilityCheckRequestIEs NGAP-PROTOCOL-IES ::= {
+UERadioCapabilityCheckRequestIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }|
@@ -2564,7 +2660,7 @@ UERadioCapabilityCheckResponse ::= SEQUENCE {
...
}
-UERadioCapabilityCheckResponseIEs NGAP-PROTOCOL-IES ::= {
+UERadioCapabilityCheckResponseIEs NGAP-PROTOCOL-IES ::= {
{ ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }|
{ ID id-IMSVoiceSupportIndicator CRITICALITY reject TYPE IMSVoiceSupportIndicator PRESENCE mandatory }|
@@ -2641,6 +2737,7 @@ UplinkRIMInformationTransferIEs NGAP-PROTOCOL-IES ::= {
{ ID id-RIMInformationTransfer CRITICALITY ignore TYPE RIMInformationTransfer PRESENCE optional },
...
}
+
-- **************************************************************
--
-- DOWNLINK RIM INFORMATION TRANSFER
@@ -2654,7 +2751,6 @@ DownlinkRIMInformationTransfer ::= SEQUENCE {
DownlinkRIMInformationTransferIEs NGAP-PROTOCOL-IES ::= {
{ ID id-RIMInformationTransfer CRITICALITY ignore TYPE RIMInformationTransfer PRESENCE optional },
-
...
}
@@ -2681,7 +2777,9 @@ ConnectionEstablishmentIndicationIEs NGAP-PROTOCOL-IES ::= {
{ ID id-NB-IoT-UEPriority CRITICALITY ignore TYPE NB-IoT-UEPriority PRESENCE optional }|
{ ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }|
{ ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional },
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
+ { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }|
+ { ID id-OldAMF CRITICALITY reject TYPE AMFName PRESENCE optional },
...
}
@@ -2745,4 +2843,547 @@ AMFCPRelocationIndicationIEs NGAP-PROTOCOL-IES ::= {
...
}
+-- **************************************************************
+--
+-- MBS SESSION MANAGEMENT ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Broadcast Session Setup Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST SESSION SETUP REQUEST
+--
+-- **************************************************************
+
+BroadcastSessionSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionSetupRequestIEs} },
+ ...
+}
+-- WS modification: define a dedicated type
+MBSSessionSetupOrModRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionSetupOrModRequestTransfer)
+
+BroadcastSessionSetupRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-S-NSSAI CRITICALITY reject TYPE S-NSSAI PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionSetupRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModRequestTransfer) PRESENCE mandatory },
+ { ID id-MBSSessionSetupRequestTransfer CRITICALITY reject TYPE MBSSessionSetupOrModRequestTransfer-OCTET-STRING PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST SESSION SETUP RESPONSE
+--
+-- **************************************************************
+
+BroadcastSessionSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionSetupResponseIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MBSSessionSetupOrModResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionSetupOrModResponseTransfer)
+
+BroadcastSessionSetupResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionSetupResponseTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModResponseTransfer) PRESENCE optional }|
+ { ID id-MBSSessionSetupResponseTransfer CRITICALITY reject TYPE MBSSessionSetupOrModResponseTransfer-OCTET-STRING PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST SESSION SETUP FAILURE
+--
+-- **************************************************************
+
+BroadcastSessionSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionSetupFailureIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MBSSessionSetupOrModFailureTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionSetupOrModFailureTransfer)
+
+BroadcastSessionSetupFailureIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionSetupFailureTransfer CRITICALITY ignore TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModFailureTransfer ) PRESENCE optional }|
+ { ID id-MBSSessionSetupFailureTransfer CRITICALITY ignore TYPE MBSSessionSetupOrModFailureTransfer-OCTET-STRING PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Broadcast Session Modification Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST SESSION MODIFICATION REQUEST
+--
+-- **************************************************************
+
+BroadcastSessionModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionModificationRequestIEs} },
+ ...
+}
+
+BroadcastSessionModificationRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionModificationRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModRequestTransfer) PRESENCE optional },
+ { ID id-MBSSessionModificationRequestTransfer CRITICALITY reject TYPE MBSSessionSetupOrModRequestTransfer-OCTET-STRING PRESENCE optional }, ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST SESSION MODIFICATION RESPONSE
+--
+-- **************************************************************
+
+BroadcastSessionModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionModificationResponseIEs} },
+ ...
+}
+
+BroadcastSessionModificationResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionModificationResponseTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModResponseTransfer) PRESENCE optional }|
+ { ID id-MBSSessionModificationResponseTransfer CRITICALITY reject TYPE MBSSessionSetupOrModResponseTransfer-OCTET-STRING PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST SESSION MODIFICATION FAILURE
+--
+-- **************************************************************
+
+BroadcastSessionModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionModificationFailureIEs} },
+ ...
+}
+
+BroadcastSessionModificationFailureIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionModificationFailureTransfer CRITICALITY ignore TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModFailureTransfer) PRESENCE optional }|
+ { ID id-MBSSessionModificationFailureTransfer CRITICALITY ignore TYPE MBSSessionSetupOrModFailureTransfer-OCTET-STRING PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Broadcast Session Release Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST SESSION RELEASE REQUEST
+--
+-- **************************************************************
+
+BroadcastSessionReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionReleaseRequestIEs} },
+ ...
+}
+
+BroadcastSessionReleaseRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- Broadcast Session Release Required Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- BROADCAST SESSION RELEASE REQUIRED
+--
+-- **************************************************************
+
+BroadcastSessionReleaseRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionReleaseRequiredIEs} },
+ ...
+}
+
+BroadcastSessionReleaseRequiredIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- BROADCAST SESSION RELEASE RESPONSE
+--
+-- **************************************************************
+
+BroadcastSessionReleaseResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {BroadcastSessionReleaseResponseIEs} },
+ ...
+}
+
+-- WS modification: defien a dedicated type
+MBSSessionReleaseResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionReleaseResponseTransfer)
+
+BroadcastSessionReleaseResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MBSSessionReleaseResponseTransfer CRITICALITY ignore TYPE OCTET STRING (CONTAINING MBSSessionReleaseResponseTransfer) PRESENCE optional }|
+ { ID id-MBSSessionReleaseResponseTransfer CRITICALITY ignore TYPE MBSSessionReleaseResponseTransfer-OCTET-STRING PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Distribution Setup Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- DISTRIBUTION SETUP REQUEST
+--
+-- **************************************************************
+
+DistributionSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {DistributionSetupRequestIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MBS-DistributionSetupRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionSetupRequestTransfer)
+
+DistributionSetupRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MBS-DistributionSetupRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBS-DistributionSetupRequestTransfer) PRESENCE mandatory },
+ { ID id-MBS-DistributionSetupRequestTransfer CRITICALITY reject TYPE MBS-DistributionSetupRequestTransfer-OCTET-STRING PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- DISTRIBUTION SETUP RESPONSE
+--
+-- **************************************************************
+
+DistributionSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {DistributionSetupResponseIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MBS-DistributionSetupResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionSetupResponseTransfer)
+
+DistributionSetupResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MBS-DistributionSetupResponseTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBS-DistributionSetupResponseTransfer) PRESENCE mandatory }|
+ { ID id-MBS-DistributionSetupResponseTransfer CRITICALITY reject TYPE MBS-DistributionSetupResponseTransfer-OCTET-STRING PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- DISTRIBUTION SETUP FAILURE
+--
+-- **************************************************************
+
+DistributionSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {DistributionSetupFailureIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MBS-DistributionSetupUnsuccessfulTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionSetupUnsuccessfulTransfer)
+
+DistributionSetupFailureIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MBS-DistributionSetupUnsuccessfulTransfer CRITICALITY ignore TYPE OCTET STRING (CONTAINING MBS-DistributionSetupUnsuccessfulTransfer) PRESENCE mandatory }|
+ { ID id-MBS-DistributionSetupUnsuccessfulTransfer CRITICALITY ignore TYPE MBS-DistributionSetupUnsuccessfulTransfer-OCTET-STRING PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Distribution Release Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- DISTRIBUTION RELEASE REQUEST
+--
+-- **************************************************************
+
+DistributionReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {DistributionReleaseRequestIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MBS-DistributionReleaseRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionReleaseRequestTransfer)
+
+DistributionReleaseRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MBS-DistributionReleaseRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBS-DistributionReleaseRequestTransfer) PRESENCE mandatory }|
+ { ID id-MBS-DistributionReleaseRequestTransfer CRITICALITY reject TYPE MBS-DistributionReleaseRequestTransfer-OCTET-STRING PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- DISTRIBUTION RELEASE RESPONSE
+--
+-- **************************************************************
+
+DistributionReleaseResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {DistributionReleaseResponseIEs} },
+ ...
+}
+
+DistributionReleaseResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Multicast Session Activation Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MULTICAST SESSION ACTIVATION REQUEST
+--
+-- **************************************************************
+
+MulticastSessionActivationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionActivationRequestIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MulticastSessionActivationRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MulticastSessionActivationRequestTransfer)
+
+MulticastSessionActivationRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MulticastSessionActivationRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MulticastSessionActivationRequestTransfer) PRESENCE mandatory },
+ { ID id-MulticastSessionActivationRequestTransfer CRITICALITY reject TYPE MulticastSessionActivationRequestTransfer-OCTET-STRING PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MULTICAST SESSION ACTIVATION RESPONSE
+--
+-- **************************************************************
+
+MulticastSessionActivationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionActivationResponseIEs} },
+ ...
+}
+
+MulticastSessionActivationResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MULTICAST SESSION ACTIVATION FAILURE
+--
+-- **************************************************************
+
+MulticastSessionActivationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionActivationFailureIEs} },
+ ...
+}
+
+MulticastSessionActivationFailureIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Multicast Session Deactivation Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MULTICAST SESSION DEACTIVATION REQUEST
+--
+-- **************************************************************
+
+MulticastSessionDeactivationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionDeactivationRequestIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MulticastSessionDeactivationRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MulticastSessionDeactivationRequestTransfer)
+
+MulticastSessionDeactivationRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+-- WS modification: define a dedicated type
+-- { ID id-MulticastSessionDeactivationRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MulticastSessionDeactivationRequestTransfer) PRESENCE mandatory },
+ { ID id-MulticastSessionDeactivationRequestTransfer CRITICALITY reject TYPE MulticastSessionDeactivationRequestTransfer-OCTET-STRING PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MULTICAST SESSION DEACTIVATION RESPONSE
+--
+-- **************************************************************
+
+MulticastSessionDeactivationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionDeactivationResponseIEs} },
+ ...
+}
+
+MulticastSessionDeactivationResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Multicast Session Update Elementary Procedure
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MULTICAST SESSION UPDATE REQUEST
+--
+-- **************************************************************
+
+MulticastSessionUpdateRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionUpdateRequestIEs} },
+ ...
+}
+
+-- WS modification: define a dedicated type
+MulticastSessionUpdateRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MulticastSessionUpdateRequestTransfer)
+
+MulticastSessionUpdateRequestIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MulticastSessionUpdateRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MulticastSessionUpdateRequestTransfer) PRESENCE mandatory },
+ { ID id-MulticastSessionUpdateRequestTransfer CRITICALITY reject TYPE MulticastSessionUpdateRequestTransfer-OCTET-STRING PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MULTICAST SESSION UPDATE RESPONSE
+--
+-- **************************************************************
+
+MulticastSessionUpdateResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionUpdateResponseIEs} },
+ ...
+}
+
+MulticastSessionUpdateResponseIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MULTICAST SESSION UPDATE FAILURE
+--
+-- **************************************************************
+
+MulticastSessionUpdateFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastSessionUpdateFailureIEs} },
+ ...
+}
+
+MulticastSessionUpdateFailureIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MULTICAST GROUP PAGING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MULTICAST GROUP PAGING
+--
+-- **************************************************************
+
+MulticastGroupPaging ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MulticastGroupPagingIEs} },
+ ...
+}
+
+MulticastGroupPagingIEs NGAP-PROTOCOL-IES ::= {
+ { ID id-MBS-SessionID CRITICALITY ignore TYPE MBS-SessionID PRESENCE mandatory }|
+ { ID id-MBS-ServiceArea CRITICALITY ignore TYPE MBS-ServiceArea PRESENCE optional }|
+ { ID id-MulticastGroupPagingAreaList CRITICALITY ignore TYPE MulticastGroupPagingAreaList PRESENCE mandatory },
+ ...
+}
+
+
END
diff --git a/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn b/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn
index c3119a35fa..1e49880815 100644
--- a/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/ngap/NGAP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.413 V16.7.0 (2021-10)
+-- 3GPP TS 38.413 V17.6.0 (2023-09)
-- 9.4.3 Elementary Procedure Definitions
-- **************************************************************
--
@@ -6,11 +6,11 @@
--
-- **************************************************************
-NGAP-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+NGAP-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-PDU-Descriptions (0)}
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -31,9 +31,23 @@ FROM NGAP-CommonDataTypes
AMFConfigurationUpdateFailure,
AMFCPRelocationIndication,
AMFStatusIndication,
+ BroadcastSessionModificationFailure,
+ BroadcastSessionModificationRequest,
+ BroadcastSessionModificationResponse,
+ BroadcastSessionReleaseRequest,
+ BroadcastSessionReleaseRequired,
+ BroadcastSessionReleaseResponse,
+ BroadcastSessionSetupFailure,
+ BroadcastSessionSetupRequest,
+ BroadcastSessionSetupResponse,
CellTrafficTrace,
ConnectionEstablishmentIndication,
DeactivateTrace,
+ DistributionReleaseRequest,
+ DistributionReleaseResponse,
+ DistributionSetupFailure,
+ DistributionSetupRequest,
+ DistributionSetupResponse,
DownlinkNASTransport,
DownlinkNonUEAssociatedNRPPaTransport,
DownlinkRANConfigurationTransfer,
@@ -58,6 +72,15 @@ FROM NGAP-CommonDataTypes
LocationReport,
LocationReportingControl,
LocationReportingFailureIndication,
+ MulticastSessionActivationFailure,
+ MulticastSessionActivationRequest,
+ MulticastSessionActivationResponse,
+ MulticastSessionDeactivationRequest,
+ MulticastSessionDeactivationResponse,
+ MulticastSessionUpdateFailure,
+ MulticastSessionUpdateRequest,
+ MulticastSessionUpdateResponse,
+ MulticastGroupPaging,
NASNonDeliveryIndication,
NGReset,
NGResetAcknowledge,
@@ -69,7 +92,7 @@ FROM NGAP-CommonDataTypes
Paging,
PathSwitchRequest,
PathSwitchRequestAcknowledge,
- PathSwitchRequestFailure,
+ PathSwitchRequestFailure,
PDUSessionResourceModifyConfirm,
PDUSessionResourceModifyIndication,
PDUSessionResourceModifyRequest,
@@ -129,9 +152,15 @@ FROM NGAP-PDU-Contents
id-AMFConfigurationUpdate,
id-AMFCPRelocationIndication,
id-AMFStatusIndication,
+ id-BroadcastSessionModification,
+ id-BroadcastSessionRelease,
+ id-BroadcastSessionReleaseRequired,
+ id-BroadcastSessionSetup,
id-CellTrafficTrace,
id-ConnectionEstablishmentIndication,
id-DeactivateTrace,
+ id-DistributionSetup,
+ id-DistributionRelease,
id-DownlinkNASTransport,
id-DownlinkNonUEAssociatedNRPPaTransport,
id-DownlinkRANConfigurationTransfer,
@@ -149,6 +178,10 @@ FROM NGAP-PDU-Contents
id-LocationReport,
id-LocationReportingControl,
id-LocationReportingFailureIndication,
+ id-MulticastSessionActivation,
+ id-MulticastSessionDeactivation,
+ id-MulticastSessionUpdate,
+ id-MulticastGroupPaging,
id-NASNonDeliveryIndication,
id-NGReset,
id-NGSetup,
@@ -256,16 +289,24 @@ UnsuccessfulOutcome ::= SEQUENCE {
NGAP-ELEMENTARY-PROCEDURES NGAP-ELEMENTARY-PROCEDURE ::= {
NGAP-ELEMENTARY-PROCEDURES-CLASS-1 |
- NGAP-ELEMENTARY-PROCEDURES-CLASS-2,
+ NGAP-ELEMENTARY-PROCEDURES-CLASS-2,
...
}
NGAP-ELEMENTARY-PROCEDURES-CLASS-1 NGAP-ELEMENTARY-PROCEDURE ::= {
aMFConfigurationUpdate |
+ broadcastSessionModification |
+ broadcastSessionRelease |
+ broadcastSessionSetup |
+ distributionSetup |
+ distributionRelease |
handoverCancel |
handoverPreparation |
handoverResourceAllocation |
initialContextSetup |
+ multicastSessionActivation |
+ multicastSessionDeactivation |
+ multicastSessionUpdate |
nGReset |
nGSetup |
pathSwitchRequest |
@@ -285,26 +326,28 @@ NGAP-ELEMENTARY-PROCEDURES-CLASS-1 NGAP-ELEMENTARY-PROCEDURE ::= {
...
}
-NGAP-ELEMENTARY-PROCEDURES-CLASS-2 NGAP-ELEMENTARY-PROCEDURE ::= {
+NGAP-ELEMENTARY-PROCEDURES-CLASS-2 NGAP-ELEMENTARY-PROCEDURE ::= {
aMFCPRelocationIndication |
aMFStatusIndication |
+ broadcastSessionReleaseRequired |
cellTrafficTrace |
connectionEstablishmentIndication |
deactivateTrace |
- downlinkNASTransport |
- downlinkNonUEAssociatedNRPPaTransport |
+ downlinkNASTransport |
+ downlinkNonUEAssociatedNRPPaTransport |
downlinkRANConfigurationTransfer |
downlinkRANEarlyStatusTransfer |
downlinkRANStatusTransfer |
- downlinkRIMInformationTransfer |
- downlinkUEAssociatedNRPPaTransport |
+ downlinkRIMInformationTransfer |
+ downlinkUEAssociatedNRPPaTransport |
errorIndication |
handoverNotification |
handoverSuccess |
- initialUEMessage |
+ initialUEMessage |
locationReport |
locationReportingControl |
locationReportingFailureIndication |
+ multicastGroupPaging |
nASNonDeliveryIndication |
overloadStart |
overloadStop |
@@ -361,6 +404,35 @@ aMFStatusIndication NGAP-ELEMENTARY-PROCEDURE ::={
CRITICALITY ignore
}
+broadcastSessionModification NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastSessionModificationRequest
+ SUCCESSFUL OUTCOME BroadcastSessionModificationResponse
+ UNSUCCESSFUL OUTCOME BroadcastSessionModificationFailure
+ PROCEDURE CODE id-BroadcastSessionModification
+ CRITICALITY reject
+}
+
+broadcastSessionRelease NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastSessionReleaseRequest
+ SUCCESSFUL OUTCOME BroadcastSessionReleaseResponse
+ PROCEDURE CODE id-BroadcastSessionRelease
+ CRITICALITY reject
+}
+
+broadcastSessionReleaseRequired NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastSessionReleaseRequired
+ PROCEDURE CODE id-BroadcastSessionReleaseRequired
+ CRITICALITY reject
+}
+
+broadcastSessionSetup NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE BroadcastSessionSetupRequest
+ SUCCESSFUL OUTCOME BroadcastSessionSetupResponse
+ UNSUCCESSFUL OUTCOME BroadcastSessionSetupFailure
+ PROCEDURE CODE id-BroadcastSessionSetup
+ CRITICALITY reject
+}
+
cellTrafficTrace NGAP-ELEMENTARY-PROCEDURE ::={
INITIATING MESSAGE CellTrafficTrace
PROCEDURE CODE id-CellTrafficTrace
@@ -379,6 +451,21 @@ deactivateTrace NGAP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY ignore
}
+distributionSetup NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DistributionSetupRequest
+ SUCCESSFUL OUTCOME DistributionSetupResponse
+ UNSUCCESSFUL OUTCOME DistributionSetupFailure
+ PROCEDURE CODE id-DistributionSetup
+ CRITICALITY reject
+}
+
+distributionRelease NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DistributionReleaseRequest
+ SUCCESSFUL OUTCOME DistributionReleaseResponse
+ PROCEDURE CODE id-DistributionRelease
+ CRITICALITY reject
+}
+
downlinkNASTransport NGAP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE DownlinkNASTransport
PROCEDURE CODE id-DownlinkNASTransport
@@ -488,6 +575,35 @@ locationReportingFailureIndication NGAP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY ignore
}
+multicastSessionActivation NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastSessionActivationRequest
+ SUCCESSFUL OUTCOME MulticastSessionActivationResponse
+ UNSUCCESSFUL OUTCOME MulticastSessionActivationFailure
+ PROCEDURE CODE id-MulticastSessionActivation
+ CRITICALITY reject
+}
+
+multicastSessionDeactivation NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastSessionDeactivationRequest
+ SUCCESSFUL OUTCOME MulticastSessionDeactivationResponse
+ PROCEDURE CODE id-MulticastSessionDeactivation
+ CRITICALITY reject
+}
+
+multicastSessionUpdate NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastSessionUpdateRequest
+ SUCCESSFUL OUTCOME MulticastSessionUpdateResponse
+ UNSUCCESSFUL OUTCOME MulticastSessionUpdateFailure
+ PROCEDURE CODE id-MulticastSessionUpdate
+ CRITICALITY reject
+}
+
+multicastGroupPaging NGAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MulticastGroupPaging
+ PROCEDURE CODE id-MulticastGroupPaging
+ CRITICALITY ignore
+}
+
nASNonDeliveryIndication NGAP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE NASNonDeliveryIndication
PROCEDURE CODE id-NASNonDeliveryIndication
diff --git a/epan/dissectors/asn1/ngap/ngap.cnf b/epan/dissectors/asn1/ngap/ngap.cnf
index 66f5ffd30f..8657a5690a 100644
--- a/epan/dissectors/asn1/ngap/ngap.cnf
+++ b/epan/dissectors/asn1/ngap/ngap.cnf
@@ -15,9 +15,11 @@ ProtocolIE-ID
#.EXPORTS
LastVisitedNGRANCellInformation_PDU
+LastVisitedPSCellInformation_PDU
MDT-Configuration_PDU
MobilityRestrictionList_PDU
NGRAN-CGI_PDU
+SecondaryRATDataUsageReportTransfer
SONConfigurationTransfer_PDU
SourceNGRANNode-ToTargetNGRANNode-TransparentContainer_PDU
TargetNGRANNode-ToSourceNGRANNode-TransparentContainer_PDU
@@ -28,6 +30,7 @@ HandoverPreparationUnsuccessfulTransfer
HandoverRequestAcknowledgeTransfer
HandoverResourceAllocationUnsuccessfulTransfer
LastVisitedNGRANCellInformation
+LastVisitedPSCellInformation
MDT-Configuration
MobilityRestrictionList
NGAP-PDU
@@ -55,12 +58,12 @@ RAT-Information
#.OMIT_ASSIGNMENT
# Get rid of unused code warnings
-AlternativeQoSParaSetNotifyIndex
ProtocolIE-FieldPair
ProtocolIE-ContainerList
ProtocolIE-ContainerPair
ProtocolIE-ContainerPairList
Presence
+QoSFlowList
#.END
@@ -223,6 +226,18 @@ UE-NGAP-IDs/aMF-UE-NGAP-ID ABBREV=AMF_UE_NGAP_ID
# %(DEFAULT_BODY)s
# }
+#.FN_HDR QosFlowNotifyItem
+ struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo);
+ ngap_data->is_qos_flow_notify = TRUE;
+#.FN_FTR QosFlowNotifyItem
+ ngap_data->is_qos_flow_notify = FALSE;
+
+#.FN_HDR AlternativeQoSParaSetIndex
+ struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo);
+ if (ngap_data->is_qos_flow_notify) {
+ return dissect_ngap_AlternativeQoSParaSetNotifyIndex(tvb, offset, actx, tree, hf_index);
+ }
+
#.FN_BODY RAN-UE-NGAP-ID VAL_PTR = &ran_ue_ngap_id
guint32 ran_ue_ngap_id;
struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo);
@@ -250,6 +265,7 @@ UE-NGAP-IDs/aMF-UE-NGAP-ID ABBREV=AMF_UE_NGAP_ID
} else {
if (nas_5gs_handle) {
proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ngap_NAS_PDU);
+ volatile int saved_offset = offset;
TRY {
call_dissector(nas_5gs_handle, parameter_tvb, actx->pinfo, subtree);
}
@@ -257,6 +273,7 @@ UE-NGAP-IDs/aMF-UE-NGAP-ID ABBREV=AMF_UE_NGAP_ID
show_exception(tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
+ offset = saved_offset;
}
}
}
@@ -281,19 +298,60 @@ UE-NGAP-IDs/aMF-UE-NGAP-ID ABBREV=AMF_UE_NGAP_ID
struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo);
%(DEFAULT_BODY)s
+# Whenever a Cause appears, look up the reason and show it in the Info column
+
+#.FN_BODY CauseRadioNetwork VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Cause: RadioNetwork=%%s]", val_to_str_const(value, ngap_CauseRadioNetwork_vals, "Unknown"));
+
+#.FN_BODY CauseTransport VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Cause: Transport=%%s]", val_to_str_const(value, ngap_CauseTransport_vals, "Unknown"));
+
+#.FN_BODY CauseNas VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Cause: Nas=%%s]", val_to_str_const(value, ngap_CauseNas_vals, "Unknown"));
+
+#.FN_BODY CauseProtocol VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Cause: Protocol=%%s]", val_to_str_const(value, ngap_CauseProtocol_vals, "Unknown"));
+
+#.FN_BODY CauseMisc VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Cause: Misc=%%s]", val_to_str_const(value, ngap_CauseMisc_vals, "Unknown"));
+
+#.FN_BODY RRCEstablishmentCause VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [RRCEstablishmentCause=%%s]", val_to_str_const(value, ngap_RRCEstablishmentCause_vals, "Unknown"));
+
+#.FN_BODY PagingCause VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [PagingCause=%%s]", val_to_str_const(value, ngap_PagingCause_vals, "Unknown"));
+
+#.FN_BODY PagingCauseIndicationForVoiceService VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [PagingCauseIndicationForVoiceService=%%s]", val_to_str_const(value, ngap_PagingCauseIndicationForVoiceService_vals, "Unknown"));
+
#.FN_BODY SourceToTarget-TransparentContainer VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb;
proto_tree *subtree;
%(DEFAULT_BODY)s
if (ngap_dissect_container && parameter_tvb &&
tvb_reported_length(parameter_tvb) > 0) {
- struct ngap_private_data *ngap_data = ngap_get_private_data(actx->pinfo);
+ guint32 handover_type = ngap_get_private_data(actx->pinfo)->handover_type_value;
/* Don't want elements inside container to write to info column */
col_set_writable(actx->pinfo->cinfo, COL_INFO, FALSE);
subtree = proto_item_add_subtree(actx->created_item, ett_ngap_SourceToTarget_TransparentContainer);
TRY {
-
- switch(ngap_data->handover_type_value) {
+ switch(handover_type) {
case intra5gs:
case eps_to_5gs:
dissect_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
@@ -396,6 +454,14 @@ MessageIdentifier TYPE = FT_UINT16 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
proto_tree_add_item(subtree, hf_ngap_SerialNumber_upd_nb, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
}
+#.FN_BODY SuccessfulHandoverReport-Item/successfulHOReportContainer 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_ngap_successfulHOReportContainer);
+ dissect_nr_rrc_SuccessHO_Report_r17_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.TYPE_ATTR
RepetitionPeriod DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
@@ -470,6 +536,12 @@ EPS-TAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
}
#.TYPE_ATTR
+CommonNetworkInstance TYPE=FT_BYTES DISPLAY = BASE_SHOW_UTF_8_PRINTABLE
+
+#.TYPE_ATTR
+SurvivalTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
+
+#.TYPE_ATTR
TAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
#.FN_BODY TAC VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
@@ -484,6 +556,9 @@ TAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
}
}
+#.TYPE_ATTR
+TimeSynchronizationAssistanceInformation/uuTimeSynchronizationErrorBudget DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_nanoseconds
+
#.FN_BODY PLMNIdentity VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
proto_tree *subtree;
@@ -567,7 +642,6 @@ TAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_ngap_NGAP_Message);
- col_set_fence(actx->pinfo->cinfo, COL_INFO);
call_dissector(ngap_handle, parameter_tvb, actx->pinfo, subtree);
#.FN_BODY NGRANTraceID VAL_PTR = &parameter_tvb
@@ -587,14 +661,13 @@ TAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
%(DEFAULT_BODY)s
#.FIELD_ATTR
-NR-CGI/nRCellIdentity ABBREV=NRCellIdentity TYPE=FT_UINT40 DISPLAY=BASE_HEX
+NR-CGI/nRCellIdentity ABBREV=NRCellIdentity TYPE=FT_UINT40 DISPLAY=BASE_HEX BITMASK=0xFFFFFFFFF0
#.FN_BODY NRCellIdentity VAL_PTR = &cell_id_tvb HF_INDEX=-1
tvbuff_t *cell_id_tvb = NULL;
%(DEFAULT_BODY)s
if (cell_id_tvb) {
- guint64 cell_id = tvb_get_bits64(cell_id_tvb, 0, 36, ENC_BIG_ENDIAN);
- actx->created_item = proto_tree_add_uint64(tree, hf_index, cell_id_tvb, 0, 5, cell_id);
+ actx->created_item = proto_tree_add_item(tree, hf_index, cell_id_tvb, 0, 5, ENC_BIG_ENDIAN);
}
#.FN_BODY EUTRA-CGI
@@ -603,14 +676,13 @@ NR-CGI/nRCellIdentity ABBREV=NRCellIdentity TYPE=FT_UINT40 DISPLAY=BASE_HEX
%(DEFAULT_BODY)s
#.FIELD_ATTR
-EUTRA-CGI/eUTRACellIdentity ABBREV=EUTRACellIdentity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+EUTRA-CGI/eUTRACellIdentity ABBREV=EUTRACellIdentity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FN_BODY EUTRACellIdentity VAL_PTR = &cell_id_tvb HF_INDEX=-1
tvbuff_t *cell_id_tvb = NULL;
%(DEFAULT_BODY)s
if (cell_id_tvb) {
- guint32 cell_id = tvb_get_bits32(cell_id_tvb, 0, 28, ENC_BIG_ENDIAN);
- actx->created_item = proto_tree_add_uint(tree, hf_index, cell_id_tvb, 0, 4, cell_id);
+ actx->created_item = proto_tree_add_item(tree, hf_index, cell_id_tvb, 0, 4, ENC_BIG_ENDIAN);
}
#.TYPE_ATTR
@@ -689,7 +761,7 @@ PortNumber TYPE = FT_UINT16 DISPLAY = BASE_DEC
if (ngap_data->transparent_container_type == SOURCE_TO_TARGET_TRANSPARENT_CONTAINER ||
ngap_data->transparent_container_type == TARGET_TO_SOURCE_TRANSPARENT_CONTAINER) {
- if (actx->pinfo->destport == gbl_ngapSctpPort)
+ if (value_is_in_range(gbl_ngapSctpRange, actx->pinfo->destport))
ranmode_id = ngap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo);
else
ranmode_id = ngap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo);
@@ -789,6 +861,9 @@ RecommendedCellItem/timeStayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&
proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
}
+#.TYPE_ATTR
+TimeSyncAssistanceInfo/uUTimeSyncErrorBudget DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_nanoseconds
+
#.FN_BODY RATRestrictionInformation VAL_PTR=&parameter_tvb
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -857,6 +932,7 @@ RecommendedCellItem/timeStayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&
&hf_ngap_EUTRAintegrityProtectionAlgorithms_eia1,
&hf_ngap_EUTRAintegrityProtectionAlgorithms_eia2,
&hf_ngap_EUTRAintegrityProtectionAlgorithms_eia3,
+ &hf_ngap_EUTRAintegrityProtectionAlgorithms_eia7,
&hf_ngap_EUTRAintegrityProtectionAlgorithms_reserved,
NULL
};
@@ -974,7 +1050,7 @@ VolumeTimedReport-Item/usageCountUL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u
VolumeTimedReport-Item/usageCountDL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_octet_octets
#.TYPE_ATTR
-BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
+BluetoothName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY BluetoothName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -995,6 +1071,7 @@ BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
%(DEFAULT_BODY)s
if (cov_enh_level_tvb && ngap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_ngap_CoverageEnhancementLevel);
+ volatile int saved_offset = offset;
if ((ngap_is_nbiot_ue(actx->pinfo) && (ngap_dissect_lte_container_as == NGAP_LTE_CONTAINER_AUTOMATIC)) ||
(ngap_dissect_lte_container_as == NGAP_LTE_CONTAINER_NBIOT)) {
TRY {
@@ -1013,6 +1090,7 @@ BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
}
ENDTRY;
}
+ offset = saved_offset;
}
#.TYPE_ATTR
@@ -1029,6 +1107,10 @@ ExtendedPacketDelayBudget DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_ExtendedPacke
&hf_ngap_primaryRATRestriction_e_UTRA,
&hf_ngap_primaryRATRestriction_nR,
&hf_ngap_primaryRATRestriction_nR_unlicensed,
+ &hf_ngap_primaryRATRestriction_nR_LEO,
+ &hf_ngap_primaryRATRestriction_nR_MEO,
+ &hf_ngap_primaryRATRestriction_nR_GEO,
+ &hf_ngap_primaryRATRestriction_nR_OTHERSAT,
&hf_ngap_primaryRATRestriction_reserved,
NULL
};
@@ -1143,7 +1225,7 @@ Threshold-RSRQ DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_Threshold_RSRQ_fmt)
Threshold-SINR DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ngap_Threshold_SINR_fmt)
#.TYPE_ATTR
-WLANName TYPE=FT_STRING DISPLAY = STR_UNICODE
+WLANName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY WLANName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1188,16 +1270,18 @@ QosMonitoringReportingFrequency DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units
}
#.FN_BODY PDUSessionResourceSetupRequestTransfer
-volatile guint32 _offset;
+ volatile guint32 _offset;
+
_offset = offset;
- TRY {
- _offset = dissect_per_sequence(tvb, _offset, actx, tree, hf_index,
- ett_ngap_PDUSessionResourceSetupRequestTransfer, PDUSessionResourceSetupRequestTransfer_sequence);
- }
- CATCH_BOUNDS_ERRORS {
- show_exception(tvb, actx->pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
- }
- ENDTRY;
+ TRY {
+ _offset = dissect_per_sequence(tvb, _offset, actx, tree, hf_index,
+ ett_ngap_PDUSessionResourceSetupRequestTransfer,
+ PDUSessionResourceSetupRequestTransfer_sequence);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(tvb, actx->pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
offset = _offset;
#.ASSIGN_VALUE_TO_TYPE # NGAP does not have constants assigned to types, they are pure INTEGER
@@ -1269,291 +1353,381 @@ id-UplinkRANEarlyStatusTransfer ProcedureCode
id-DownlinkRANEarlyStatusTransfer ProcedureCode
id-AMFCPRelocationIndication ProcedureCode
id-ConnectionEstablishmentIndication ProcedureCode
+id-BroadcastSessionModification ProcedureCode
+id-BroadcastSessionRelease ProcedureCode
+id-BroadcastSessionSetup ProcedureCode
+id-DistributionSetup ProcedureCode
+id-DistributionRelease ProcedureCode
+id-MulticastSessionActivation ProcedureCode
+id-MulticastSessionDeactivation ProcedureCode
+id-MulticastSessionUpdate ProcedureCode
+id-MulticastGroupPaging ProcedureCode
+id-BroadcastSessionReleaseRequired ProcedureCode
+
# ProtocolIE-ID
-id-AllowedNSSAI ProtocolIE-ID
-id-AMFName ProtocolIE-ID
-id-AMFOverloadResponse ProtocolIE-ID
-id-AMFSetID ProtocolIE-ID
-id-AMF-TNLAssociationFailedToSetupList ProtocolIE-ID
-id-AMF-TNLAssociationSetupList ProtocolIE-ID
-id-AMF-TNLAssociationToAddList ProtocolIE-ID
-id-AMF-TNLAssociationToRemoveList ProtocolIE-ID
-id-AMF-TNLAssociationToUpdateList ProtocolIE-ID
-id-AMFTrafficLoadReductionIndication ProtocolIE-ID
-id-AMF-UE-NGAP-ID ProtocolIE-ID
-id-AssistanceDataForPaging ProtocolIE-ID
-id-BroadcastCancelledAreaList ProtocolIE-ID
-id-BroadcastCompletedAreaList ProtocolIE-ID
-id-CancelAllWarningMessages ProtocolIE-ID
-id-Cause ProtocolIE-ID
-id-CellIDListForRestart ProtocolIE-ID
-id-ConcurrentWarningMessageInd ProtocolIE-ID
-id-CoreNetworkAssistanceInformationForInactive ProtocolIE-ID
-id-CriticalityDiagnostics ProtocolIE-ID
-id-DataCodingScheme ProtocolIE-ID
-id-DefaultPagingDRX ProtocolIE-ID
-id-DirectForwardingPathAvailability ProtocolIE-ID
-id-EmergencyAreaIDListForRestart ProtocolIE-ID
-id-EmergencyFallbackIndicator ProtocolIE-ID
-id-EUTRA-CGI ProtocolIE-ID
-id-FiveG-S-TMSI ProtocolIE-ID
-id-GlobalRANNodeID ProtocolIE-ID
-id-GUAMI ProtocolIE-ID
-id-HandoverType ProtocolIE-ID
-id-IMSVoiceSupportIndicator ProtocolIE-ID
-id-IndexToRFSP ProtocolIE-ID
-id-InfoOnRecommendedCellsAndRANNodesForPaging ProtocolIE-ID
-id-LocationReportingRequestType ProtocolIE-ID
-id-MaskedIMEISV ProtocolIE-ID
-id-MessageIdentifier ProtocolIE-ID
-id-MobilityRestrictionList ProtocolIE-ID
-id-NASC ProtocolIE-ID
-id-NAS-PDU ProtocolIE-ID
-id-NASSecurityParametersFromNGRAN ProtocolIE-ID
-id-NewAMF-UE-NGAP-ID ProtocolIE-ID
-id-NewSecurityContextInd ProtocolIE-ID
-id-NGAP-Message ProtocolIE-ID
-id-NGRAN-CGI ProtocolIE-ID
-id-NGRANTraceID ProtocolIE-ID
-id-NR-CGI ProtocolIE-ID
-id-NRPPa-PDU ProtocolIE-ID
-id-NumberOfBroadcastsRequested ProtocolIE-ID
-id-OldAMF ProtocolIE-ID
-id-OverloadStartNSSAIList ProtocolIE-ID
-id-PagingDRX ProtocolIE-ID
-id-PagingOrigin ProtocolIE-ID
-id-PagingPriority ProtocolIE-ID
-id-PDUSessionResourceAdmittedList ProtocolIE-ID
-id-PDUSessionResourceFailedToModifyListModRes ProtocolIE-ID
-id-PDUSessionResourceFailedToSetupListCxtRes ProtocolIE-ID
-id-PDUSessionResourceFailedToSetupListHOAck ProtocolIE-ID
-id-PDUSessionResourceFailedToSetupListPSReq ProtocolIE-ID
-id-PDUSessionResourceFailedToSetupListSURes ProtocolIE-ID
-id-PDUSessionResourceHandoverList ProtocolIE-ID
-id-PDUSessionResourceListCxtRelCpl ProtocolIE-ID
-id-PDUSessionResourceListHORqd ProtocolIE-ID
-id-PDUSessionResourceModifyListModCfm ProtocolIE-ID
-id-PDUSessionResourceModifyListModInd ProtocolIE-ID
-id-PDUSessionResourceModifyListModReq ProtocolIE-ID
-id-PDUSessionResourceModifyListModRes ProtocolIE-ID
-id-PDUSessionResourceNotifyList ProtocolIE-ID
-id-PDUSessionResourceReleasedListNot ProtocolIE-ID
-id-PDUSessionResourceReleasedListPSAck ProtocolIE-ID
-id-PDUSessionResourceReleasedListPSFail ProtocolIE-ID
-id-PDUSessionResourceReleasedListRelRes ProtocolIE-ID
-id-PDUSessionResourceSetupListCxtReq ProtocolIE-ID
-id-PDUSessionResourceSetupListCxtRes ProtocolIE-ID
-id-PDUSessionResourceSetupListHOReq ProtocolIE-ID
-id-PDUSessionResourceSetupListSUReq ProtocolIE-ID
-id-PDUSessionResourceSetupListSURes ProtocolIE-ID
-id-PDUSessionResourceToBeSwitchedDLList ProtocolIE-ID
-id-PDUSessionResourceSwitchedList ProtocolIE-ID
-id-PDUSessionResourceToReleaseListHOCmd ProtocolIE-ID
-id-PDUSessionResourceToReleaseListRelCmd ProtocolIE-ID
-id-PLMNSupportList ProtocolIE-ID
-id-PWSFailedCellIDList ProtocolIE-ID
-id-RANNodeName ProtocolIE-ID
-id-RANPagingPriority ProtocolIE-ID
-id-RANStatusTransfer-TransparentContainer ProtocolIE-ID
-id-RAN-UE-NGAP-ID ProtocolIE-ID
-id-RelativeAMFCapacity ProtocolIE-ID
-id-RepetitionPeriod ProtocolIE-ID
-id-ResetType ProtocolIE-ID
-id-RoutingID ProtocolIE-ID
-id-RRCEstablishmentCause ProtocolIE-ID
-id-RRCInactiveTransitionReportRequest ProtocolIE-ID
-id-RRCState ProtocolIE-ID
-id-SecurityContext ProtocolIE-ID
-id-SecurityKey ProtocolIE-ID
-id-SerialNumber ProtocolIE-ID
-id-ServedGUAMIList ProtocolIE-ID
-id-SliceSupportList ProtocolIE-ID
-id-SONConfigurationTransferDL ProtocolIE-ID
-id-SONConfigurationTransferUL ProtocolIE-ID
-id-SourceAMF-UE-NGAP-ID ProtocolIE-ID
-id-SourceToTarget-TransparentContainer ProtocolIE-ID
-id-SupportedTAList ProtocolIE-ID
-id-TAIListForPaging ProtocolIE-ID
-id-TAIListForRestart ProtocolIE-ID
-id-TargetID ProtocolIE-ID
-id-TargetToSource-TransparentContainer ProtocolIE-ID
-id-TimeToWait ProtocolIE-ID
-id-TraceActivation ProtocolIE-ID
-id-TraceCollectionEntityIPAddress ProtocolIE-ID
-id-UEAggregateMaximumBitRate ProtocolIE-ID
-id-UE-associatedLogicalNG-connectionList ProtocolIE-ID
-id-UEContextRequest ProtocolIE-ID
-id-UE-NGAP-IDs ProtocolIE-ID
-id-UEPagingIdentity ProtocolIE-ID
-id-UEPresenceInAreaOfInterestList ProtocolIE-ID
-id-UERadioCapability ProtocolIE-ID
-id-UERadioCapabilityForPaging ProtocolIE-ID
-id-UESecurityCapabilities ProtocolIE-ID
-id-UnavailableGUAMIList ProtocolIE-ID
-id-UserLocationInformation ProtocolIE-ID
-id-WarningAreaList ProtocolIE-ID
-id-WarningMessageContents ProtocolIE-ID
-id-WarningSecurityInfo ProtocolIE-ID
-id-WarningType ProtocolIE-ID
-id-AdditionalUL-NGU-UP-TNLInformation ProtocolIE-ID
-id-DataForwardingNotPossible ProtocolIE-ID
-id-DL-NGU-UP-TNLInformation ProtocolIE-ID
-id-NetworkInstance ProtocolIE-ID
-id-PDUSessionAggregateMaximumBitRate ProtocolIE-ID
-id-PDUSessionResourceFailedToModifyListModCfm ProtocolIE-ID
-id-PDUSessionResourceFailedToSetupListCxtFail ProtocolIE-ID
-id-PDUSessionResourceListCxtRelReq ProtocolIE-ID
-id-PDUSessionType ProtocolIE-ID
-id-QosFlowAddOrModifyRequestList ProtocolIE-ID
-id-QosFlowSetupRequestList ProtocolIE-ID
-id-QosFlowToReleaseList ProtocolIE-ID
-id-SecurityIndication ProtocolIE-ID
-id-UL-NGU-UP-TNLInformation ProtocolIE-ID
-id-UL-NGU-UP-TNLModifyList ProtocolIE-ID
-id-WarningAreaCoordinates ProtocolIE-ID
-id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID
-id-HandoverFlag ProtocolIE-ID
-id-SecondaryRATUsageInformation ProtocolIE-ID
-id-PDUSessionResourceReleaseResponseTransfer ProtocolIE-ID
-id-RedirectionVoiceFallback ProtocolIE-ID
-id-UERetentionInformation ProtocolIE-ID
-id-S-NSSAI ProtocolIE-ID
-id-PSCellInformation ProtocolIE-ID
-id-LastEUTRAN-PLMNIdentity ProtocolIE-ID
-id-MaximumIntegrityProtectedDataRate-DL ProtocolIE-ID
-id-AdditionalDLForwardingUPTNLInformation ProtocolIE-ID
-id-AdditionalDLUPTNLInformationForHOList ProtocolIE-ID
-id-AdditionalNGU-UP-TNLInformation ProtocolIE-ID
-id-AdditionalDLQosFlowPerTNLInformation ProtocolIE-ID
-id-SecurityResult ProtocolIE-ID
-id-ENDC-SONConfigurationTransferDL ProtocolIE-ID
-id-ENDC-SONConfigurationTransferUL ProtocolIE-ID
-id-OldAssociatedQosFlowList-ULendmarkerexpected ProtocolIE-ID
-id-CNTypeRestrictionsForEquivalent ProtocolIE-ID
-id-CNTypeRestrictionsForServing ProtocolIE-ID
-id-NewGUAMI ProtocolIE-ID
-id-ULForwarding ProtocolIE-ID
-id-ULForwardingUP-TNLInformation ProtocolIE-ID
-id-CNAssistedRANTuning ProtocolIE-ID
-id-CommonNetworkInstance ProtocolIE-ID
-id-NGRAN-TNLAssociationToRemoveList ProtocolIE-ID
-id-TNLAssociationTransportLayerAddressNGRAN ProtocolIE-ID
-id-EndpointIPAddressAndPort ProtocolIE-ID
-id-LocationReportingAdditionalInfo ProtocolIE-ID
-id-SourceToTarget-AMFInformationReroute ProtocolIE-ID
-id-AdditionalULForwardingUPTNLInformation ProtocolIE-ID
-id-SCTP-TLAs ProtocolIE-ID
-id-SelectedPLMNIdentity ProtocolIE-ID
-id-RIMInformationTransfer ProtocolIE-ID
-id-GUAMIType ProtocolIE-ID
-id-SRVCCOperationPossible ProtocolIE-ID
-id-TargetRNC-ID ProtocolIE-ID
-id-RAT-Information ProtocolIE-ID
-id-ExtendedRATRestrictionInformation ProtocolIE-ID
-id-QosMonitoringRequest ProtocolIE-ID
-id-SgNB-UE-X2AP-ID ProtocolIE-ID
-id-AdditionalRedundantDL-NGU-UP-TNLInformation ProtocolIE-ID
-id-AdditionalRedundantDLQosFlowPerTNLInformation ProtocolIE-ID
-id-AdditionalRedundantNGU-UP-TNLInformation ProtocolIE-ID
-id-AdditionalRedundantUL-NGU-UP-TNLInformation ProtocolIE-ID
-id-CNPacketDelayBudgetDL ProtocolIE-ID
-id-CNPacketDelayBudgetUL ProtocolIE-ID
-id-ExtendedPacketDelayBudget ProtocolIE-ID
-id-RedundantCommonNetworkInstance ProtocolIE-ID
-id-RedundantDL-NGU-TNLInformationReused ProtocolIE-ID
-id-RedundantDL-NGU-UP-TNLInformation ProtocolIE-ID
-id-RedundantDLQosFlowPerTNLInformation ProtocolIE-ID
-id-RedundantQosFlowIndicator ProtocolIE-ID
-id-RedundantUL-NGU-UP-TNLInformation ProtocolIE-ID
-id-TSCTrafficCharacteristics ProtocolIE-ID
-id-RedundantPDUSessionInformation ProtocolIE-ID
-id-UsedRSNInformation ProtocolIE-ID
-id-IAB-Authorized ProtocolIE-ID
-id-IAB-Supported ProtocolIE-ID
-id-IABNodeIndication ProtocolIE-ID
-id-NB-IoT-PagingDRX ProtocolIE-ID
-id-NB-IoT-Paging-eDRXInfo ProtocolIE-ID
-id-NB-IoT-DefaultPagingDRX ProtocolIE-ID
-id-Enhanced-CoverageRestriction ProtocolIE-ID
-id-Extended-ConnectedTime ProtocolIE-ID
-id-PagingAssisDataforCEcapabUE ProtocolIE-ID
-id-WUS-Assistance-Information ProtocolIE-ID
-id-UE-DifferentiationInfo ProtocolIE-ID
-id-NB-IoT-UEPriority ProtocolIE-ID
-id-UL-CP-SecurityInformation ProtocolIE-ID
-id-DL-CP-SecurityInformation ProtocolIE-ID
-id-TAI ProtocolIE-ID
-id-UERadioCapabilityForPagingOfNB-IoT ProtocolIE-ID
-id-LTEV2XServicesAuthorized ProtocolIE-ID
-id-NRV2XServicesAuthorized ProtocolIE-ID
-id-LTEUESidelinkAggregateMaximumBitrate ProtocolIE-ID
-id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID
-id-PC5QoSParameters ProtocolIE-ID
-id-AlternativeQoSParaSetList ProtocolIE-ID
-id-CurrentQoSParaSetIndex ProtocolIE-ID
-id-CEmodeBrestricted ProtocolIE-ID
-id-PagingeDRXInformation ProtocolIE-ID
-id-CEmodeBSupport-Indicator ProtocolIE-ID
-id-LTEM-Indication ProtocolIE-ID
-id-EndIndication ProtocolIE-ID
-id-EDT-Session ProtocolIE-ID
-id-UECapabilityInfoRequest ProtocolIE-ID
-id-PDUSessionResourceFailedToResumeListRESReq ProtocolIE-ID
-id-PDUSessionResourceFailedToResumeListRESRes ProtocolIE-ID
-id-PDUSessionResourceSuspendListSUSReq ProtocolIE-ID
-id-PDUSessionResourceResumeListRESReq ProtocolIE-ID
-id-PDUSessionResourceResumeListRESRes ProtocolIE-ID
-id-UE-UP-CIoT-Support ProtocolIE-ID
-id-Suspend-Request-Indication ProtocolIE-ID
-id-Suspend-Response-Indication ProtocolIE-ID
-id-RRC-Resume-Cause ProtocolIE-ID
-id-RGLevelWirelineAccessCharacteristics ProtocolIE-ID
-id-W-AGFIdentityInformation ProtocolIE-ID
-id-GlobalTNGF-ID ProtocolIE-ID
-id-GlobalTWIF-ID ProtocolIE-ID
-id-GlobalW-AGF-ID ProtocolIE-ID
-id-UserLocationInformationW-AGF ProtocolIE-ID
-id-UserLocationInformationTNGF ProtocolIE-ID
-id-AuthenticatedIndication ProtocolIE-ID
-id-TNGFIdentityInformation ProtocolIE-ID
-id-TWIFIdentityInformation ProtocolIE-ID
-id-UserLocationInformationTWIF ProtocolIE-ID
-id-DataForwardingResponseERABList ProtocolIE-ID
-id-IntersystemSONConfigurationTransferDL ProtocolIE-ID
-id-IntersystemSONConfigurationTransferUL ProtocolIE-ID
-id-SONInformationReport ProtocolIE-ID
-id-UEHistoryInformationFromTheUE ProtocolIE-ID
-id-ManagementBasedMDTPLMNList ProtocolIE-ID
-id-MDTConfiguration ProtocolIE-ID
-id-PrivacyIndicator ProtocolIE-ID
-id-TraceCollectionEntityURI ProtocolIE-ID
-id-NPN-Support ProtocolIE-ID
-id-NPN-AccessInformation ProtocolIE-ID
-id-NPN-PagingAssistanceInformation ProtocolIE-ID
-id-NPN-MobilityInformation ProtocolIE-ID
-id-TargettoSource-Failure-TransparentContainer ProtocolIE-ID
-id-NID ProtocolIE-ID
-id-UERadioCapabilityID ProtocolIE-ID
-id-UERadioCapability-EUTRA-Format ProtocolIE-ID
-id-DAPSRequestInfo ProtocolIE-ID
-id-DAPSResponseInfoList ProtocolIE-ID
-id-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID
-id-NotifySourceNGRANNode ProtocolIE-ID
-id-ExtendedSliceSupportList ProtocolIE-ID
-id-ExtendedTAISliceSupportList ProtocolIE-ID
-id-ConfiguredTACIndication ProtocolIE-ID
-id-Extended-RANNodeName ProtocolIE-ID
-id-Extended-AMFName ProtocolIE-ID
-id-GlobalCable-ID ProtocolIE-ID
-id-QosMonitoringReportingFrequency ProtocolIE-ID
-id-QosFlowParametersList ProtocolIE-ID
-id-QosFlowFeedbackList ProtocolIE-ID
-id-BurstArrivalTimeDownlink ProtocolIE-ID
-id-ExtendedUEIdentityIndexValue ProtocolIE-ID
-id-PduSessionExpectedUEActivityBehaviour ProtocolIE-ID
-id-MicoAllPLMN ProtocolIE-ID
-id-QosFlowFailedToSetupList ProtocolIE-ID
+id-AllowedNSSAI ProtocolIE-ID
+id-AMFName ProtocolIE-ID
+id-AMFOverloadResponse ProtocolIE-ID
+id-AMFSetID ProtocolIE-ID
+id-AMF-TNLAssociationFailedToSetupList ProtocolIE-ID
+id-AMF-TNLAssociationSetupList ProtocolIE-ID
+id-AMF-TNLAssociationToAddList ProtocolIE-ID
+id-AMF-TNLAssociationToRemoveList ProtocolIE-ID
+id-AMF-TNLAssociationToUpdateList ProtocolIE-ID
+id-AMFTrafficLoadReductionIndication ProtocolIE-ID
+id-AMF-UE-NGAP-ID ProtocolIE-ID
+id-AssistanceDataForPaging ProtocolIE-ID
+id-BroadcastCancelledAreaList ProtocolIE-ID
+id-BroadcastCompletedAreaList ProtocolIE-ID
+id-CancelAllWarningMessages ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-CellIDListForRestart ProtocolIE-ID
+id-ConcurrentWarningMessageInd ProtocolIE-ID
+id-CoreNetworkAssistanceInformationForInactive ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-DataCodingScheme ProtocolIE-ID
+id-DefaultPagingDRX ProtocolIE-ID
+id-DirectForwardingPathAvailability ProtocolIE-ID
+id-EmergencyAreaIDListForRestart ProtocolIE-ID
+id-EmergencyFallbackIndicator ProtocolIE-ID
+id-EUTRA-CGI ProtocolIE-ID
+id-FiveG-S-TMSI ProtocolIE-ID
+id-GlobalRANNodeID ProtocolIE-ID
+id-GUAMI ProtocolIE-ID
+id-HandoverType ProtocolIE-ID
+id-IMSVoiceSupportIndicator ProtocolIE-ID
+id-IndexToRFSP ProtocolIE-ID
+id-InfoOnRecommendedCellsAndRANNodesForPaging ProtocolIE-ID
+id-LocationReportingRequestType ProtocolIE-ID
+id-MaskedIMEISV ProtocolIE-ID
+id-MessageIdentifier ProtocolIE-ID
+id-MobilityRestrictionList ProtocolIE-ID
+id-NASC ProtocolIE-ID
+id-NAS-PDU ProtocolIE-ID
+id-NASSecurityParametersFromNGRAN ProtocolIE-ID
+id-NewAMF-UE-NGAP-ID ProtocolIE-ID
+id-NewSecurityContextInd ProtocolIE-ID
+id-NGAP-Message ProtocolIE-ID
+id-NGRAN-CGI ProtocolIE-ID
+id-NGRANTraceID ProtocolIE-ID
+id-NR-CGI ProtocolIE-ID
+id-NRPPa-PDU ProtocolIE-ID
+id-NumberOfBroadcastsRequested ProtocolIE-ID
+id-OldAMF ProtocolIE-ID
+id-OverloadStartNSSAIList ProtocolIE-ID
+id-PagingDRX ProtocolIE-ID
+id-PagingOrigin ProtocolIE-ID
+id-PagingPriority ProtocolIE-ID
+id-PDUSessionResourceAdmittedList ProtocolIE-ID
+id-PDUSessionResourceFailedToModifyListModRes ProtocolIE-ID
+id-PDUSessionResourceFailedToSetupListCxtRes ProtocolIE-ID
+id-PDUSessionResourceFailedToSetupListHOAck ProtocolIE-ID
+id-PDUSessionResourceFailedToSetupListPSReq ProtocolIE-ID
+id-PDUSessionResourceFailedToSetupListSURes ProtocolIE-ID
+id-PDUSessionResourceHandoverList ProtocolIE-ID
+id-PDUSessionResourceListCxtRelCpl ProtocolIE-ID
+id-PDUSessionResourceListHORqd ProtocolIE-ID
+id-PDUSessionResourceModifyListModCfm ProtocolIE-ID
+id-PDUSessionResourceModifyListModInd ProtocolIE-ID
+id-PDUSessionResourceModifyListModReq ProtocolIE-ID
+id-PDUSessionResourceModifyListModRes ProtocolIE-ID
+id-PDUSessionResourceNotifyList ProtocolIE-ID
+id-PDUSessionResourceReleasedListNot ProtocolIE-ID
+id-PDUSessionResourceReleasedListPSAck ProtocolIE-ID
+id-PDUSessionResourceReleasedListPSFail ProtocolIE-ID
+id-PDUSessionResourceReleasedListRelRes ProtocolIE-ID
+id-PDUSessionResourceSetupListCxtReq ProtocolIE-ID
+id-PDUSessionResourceSetupListCxtRes ProtocolIE-ID
+id-PDUSessionResourceSetupListHOReq ProtocolIE-ID
+id-PDUSessionResourceSetupListSUReq ProtocolIE-ID
+id-PDUSessionResourceSetupListSURes ProtocolIE-ID
+id-PDUSessionResourceToBeSwitchedDLList ProtocolIE-ID
+id-PDUSessionResourceSwitchedList ProtocolIE-ID
+id-PDUSessionResourceToReleaseListHOCmd ProtocolIE-ID
+id-PDUSessionResourceToReleaseListRelCmd ProtocolIE-ID
+id-PLMNSupportList ProtocolIE-ID
+id-PWSFailedCellIDList ProtocolIE-ID
+id-RANNodeName ProtocolIE-ID
+id-RANPagingPriority ProtocolIE-ID
+id-RANStatusTransfer-TransparentContainer ProtocolIE-ID
+id-RAN-UE-NGAP-ID ProtocolIE-ID
+id-RelativeAMFCapacity ProtocolIE-ID
+id-RepetitionPeriod ProtocolIE-ID
+id-ResetType ProtocolIE-ID
+id-RoutingID ProtocolIE-ID
+id-RRCEstablishmentCause ProtocolIE-ID
+id-RRCInactiveTransitionReportRequest ProtocolIE-ID
+id-RRCState ProtocolIE-ID
+id-SecurityContext ProtocolIE-ID
+id-SecurityKey ProtocolIE-ID
+id-SerialNumber ProtocolIE-ID
+id-ServedGUAMIList ProtocolIE-ID
+id-SliceSupportList ProtocolIE-ID
+id-SONConfigurationTransferDL ProtocolIE-ID
+id-SONConfigurationTransferUL ProtocolIE-ID
+id-SourceAMF-UE-NGAP-ID ProtocolIE-ID
+id-SourceToTarget-TransparentContainer ProtocolIE-ID
+id-SupportedTAList ProtocolIE-ID
+id-TAIListForPaging ProtocolIE-ID
+id-TAIListForRestart ProtocolIE-ID
+id-TargetID ProtocolIE-ID
+id-TargetToSource-TransparentContainer ProtocolIE-ID
+id-TimeToWait ProtocolIE-ID
+id-TraceActivation ProtocolIE-ID
+id-TraceCollectionEntityIPAddress ProtocolIE-ID
+id-UEAggregateMaximumBitRate ProtocolIE-ID
+id-UE-associatedLogicalNG-connectionList ProtocolIE-ID
+id-UEContextRequest ProtocolIE-ID
+id-UE-NGAP-IDs ProtocolIE-ID
+id-UEPagingIdentity ProtocolIE-ID
+id-UEPresenceInAreaOfInterestList ProtocolIE-ID
+id-UERadioCapability ProtocolIE-ID
+id-UERadioCapabilityForPaging ProtocolIE-ID
+id-UESecurityCapabilities ProtocolIE-ID
+id-UnavailableGUAMIList ProtocolIE-ID
+id-UserLocationInformation ProtocolIE-ID
+id-WarningAreaList ProtocolIE-ID
+id-WarningMessageContents ProtocolIE-ID
+id-WarningSecurityInfo ProtocolIE-ID
+id-WarningType ProtocolIE-ID
+id-AdditionalUL-NGU-UP-TNLInformation ProtocolIE-ID
+id-DataForwardingNotPossible ProtocolIE-ID
+id-DL-NGU-UP-TNLInformation ProtocolIE-ID
+id-NetworkInstance ProtocolIE-ID
+id-PDUSessionAggregateMaximumBitRate ProtocolIE-ID
+id-PDUSessionResourceFailedToModifyListModCfm ProtocolIE-ID
+id-PDUSessionResourceFailedToSetupListCxtFail ProtocolIE-ID
+id-PDUSessionResourceListCxtRelReq ProtocolIE-ID
+id-PDUSessionType ProtocolIE-ID
+id-QosFlowAddOrModifyRequestList ProtocolIE-ID
+id-QosFlowSetupRequestList ProtocolIE-ID
+id-QosFlowToReleaseList ProtocolIE-ID
+id-SecurityIndication ProtocolIE-ID
+id-UL-NGU-UP-TNLInformation ProtocolIE-ID
+id-UL-NGU-UP-TNLModifyList ProtocolIE-ID
+id-WarningAreaCoordinates ProtocolIE-ID
+id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID
+id-HandoverFlag ProtocolIE-ID
+id-SecondaryRATUsageInformation ProtocolIE-ID
+id-PDUSessionResourceReleaseResponseTransfer ProtocolIE-ID
+id-RedirectionVoiceFallback ProtocolIE-ID
+id-UERetentionInformation ProtocolIE-ID
+id-S-NSSAI ProtocolIE-ID
+id-PSCellInformation ProtocolIE-ID
+id-LastEUTRAN-PLMNIdentity ProtocolIE-ID
+id-MaximumIntegrityProtectedDataRate-DL ProtocolIE-ID
+id-AdditionalDLForwardingUPTNLInformation ProtocolIE-ID
+id-AdditionalDLUPTNLInformationForHOList ProtocolIE-ID
+id-AdditionalNGU-UP-TNLInformation ProtocolIE-ID
+id-AdditionalDLQosFlowPerTNLInformation ProtocolIE-ID
+id-SecurityResult ProtocolIE-ID
+id-ENDC-SONConfigurationTransferDL ProtocolIE-ID
+id-ENDC-SONConfigurationTransferUL ProtocolIE-ID
+id-OldAssociatedQosFlowList-ULendmarkerexpected ProtocolIE-ID
+id-CNTypeRestrictionsForEquivalent ProtocolIE-ID
+id-CNTypeRestrictionsForServing ProtocolIE-ID
+id-NewGUAMI ProtocolIE-ID
+id-ULForwarding ProtocolIE-ID
+id-ULForwardingUP-TNLInformation ProtocolIE-ID
+id-CNAssistedRANTuning ProtocolIE-ID
+id-CommonNetworkInstance ProtocolIE-ID
+id-NGRAN-TNLAssociationToRemoveList ProtocolIE-ID
+id-TNLAssociationTransportLayerAddressNGRAN ProtocolIE-ID
+id-EndpointIPAddressAndPort ProtocolIE-ID
+id-LocationReportingAdditionalInfo ProtocolIE-ID
+id-SourceToTarget-AMFInformationReroute ProtocolIE-ID
+id-AdditionalULForwardingUPTNLInformation ProtocolIE-ID
+id-SCTP-TLAs ProtocolIE-ID
+id-SelectedPLMNIdentity ProtocolIE-ID
+id-RIMInformationTransfer ProtocolIE-ID
+id-GUAMIType ProtocolIE-ID
+id-SRVCCOperationPossible ProtocolIE-ID
+id-TargetRNC-ID ProtocolIE-ID
+id-RAT-Information ProtocolIE-ID
+id-ExtendedRATRestrictionInformation ProtocolIE-ID
+id-QosMonitoringRequest ProtocolIE-ID
+id-SgNB-UE-X2AP-ID ProtocolIE-ID
+id-AdditionalRedundantDL-NGU-UP-TNLInformation ProtocolIE-ID
+id-AdditionalRedundantDLQosFlowPerTNLInformation ProtocolIE-ID
+id-AdditionalRedundantNGU-UP-TNLInformation ProtocolIE-ID
+id-AdditionalRedundantUL-NGU-UP-TNLInformation ProtocolIE-ID
+id-CNPacketDelayBudgetDL ProtocolIE-ID
+id-CNPacketDelayBudgetUL ProtocolIE-ID
+id-ExtendedPacketDelayBudget ProtocolIE-ID
+id-RedundantCommonNetworkInstance ProtocolIE-ID
+id-RedundantDL-NGU-TNLInformationReused ProtocolIE-ID
+id-RedundantDL-NGU-UP-TNLInformation ProtocolIE-ID
+id-RedundantDLQosFlowPerTNLInformation ProtocolIE-ID
+id-RedundantQosFlowIndicator ProtocolIE-ID
+id-RedundantUL-NGU-UP-TNLInformation ProtocolIE-ID
+id-TSCTrafficCharacteristics ProtocolIE-ID
+id-RedundantPDUSessionInformation ProtocolIE-ID
+id-UsedRSNInformation ProtocolIE-ID
+id-IAB-Authorized ProtocolIE-ID
+id-IAB-Supported ProtocolIE-ID
+id-IABNodeIndication ProtocolIE-ID
+id-NB-IoT-PagingDRX ProtocolIE-ID
+id-NB-IoT-Paging-eDRXInfo ProtocolIE-ID
+id-NB-IoT-DefaultPagingDRX ProtocolIE-ID
+id-Enhanced-CoverageRestriction ProtocolIE-ID
+id-Extended-ConnectedTime ProtocolIE-ID
+id-PagingAssisDataforCEcapabUE ProtocolIE-ID
+id-WUS-Assistance-Information ProtocolIE-ID
+id-UE-DifferentiationInfo ProtocolIE-ID
+id-NB-IoT-UEPriority ProtocolIE-ID
+id-UL-CP-SecurityInformation ProtocolIE-ID
+id-DL-CP-SecurityInformation ProtocolIE-ID
+id-TAI ProtocolIE-ID
+id-UERadioCapabilityForPagingOfNB-IoT ProtocolIE-ID
+id-LTEV2XServicesAuthorized ProtocolIE-ID
+id-NRV2XServicesAuthorized ProtocolIE-ID
+id-LTEUESidelinkAggregateMaximumBitrate ProtocolIE-ID
+id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID
+id-PC5QoSParameters ProtocolIE-ID
+id-AlternativeQoSParaSetList ProtocolIE-ID
+id-CurrentQoSParaSetIndex ProtocolIE-ID
+id-CEmodeBrestricted ProtocolIE-ID
+id-EUTRA-PagingeDRXInformation ProtocolIE-ID
+id-CEmodeBSupport-Indicator ProtocolIE-ID
+id-LTEM-Indication ProtocolIE-ID
+id-EndIndication ProtocolIE-ID
+id-EDT-Session ProtocolIE-ID
+id-UECapabilityInfoRequest ProtocolIE-ID
+id-PDUSessionResourceFailedToResumeListRESReq ProtocolIE-ID
+id-PDUSessionResourceFailedToResumeListRESRes ProtocolIE-ID
+id-PDUSessionResourceSuspendListSUSReq ProtocolIE-ID
+id-PDUSessionResourceResumeListRESReq ProtocolIE-ID
+id-PDUSessionResourceResumeListRESRes ProtocolIE-ID
+id-UE-UP-CIoT-Support ProtocolIE-ID
+id-Suspend-Request-Indication ProtocolIE-ID
+id-Suspend-Response-Indication ProtocolIE-ID
+id-RRC-Resume-Cause ProtocolIE-ID
+id-RGLevelWirelineAccessCharacteristics ProtocolIE-ID
+id-W-AGFIdentityInformation ProtocolIE-ID
+id-GlobalTNGF-ID ProtocolIE-ID
+id-GlobalTWIF-ID ProtocolIE-ID
+id-GlobalW-AGF-ID ProtocolIE-ID
+id-UserLocationInformationW-AGF ProtocolIE-ID
+id-UserLocationInformationTNGF ProtocolIE-ID
+id-AuthenticatedIndication ProtocolIE-ID
+id-TNGFIdentityInformation ProtocolIE-ID
+id-TWIFIdentityInformation ProtocolIE-ID
+id-UserLocationInformationTWIF ProtocolIE-ID
+id-DataForwardingResponseERABList ProtocolIE-ID
+id-IntersystemSONConfigurationTransferDL ProtocolIE-ID
+id-IntersystemSONConfigurationTransferUL ProtocolIE-ID
+id-SONInformationReport ProtocolIE-ID
+id-UEHistoryInformationFromTheUE ProtocolIE-ID
+id-ManagementBasedMDTPLMNList ProtocolIE-ID
+id-MDTConfiguration ProtocolIE-ID
+id-PrivacyIndicator ProtocolIE-ID
+id-TraceCollectionEntityURI ProtocolIE-ID
+id-NPN-Support ProtocolIE-ID
+id-NPN-AccessInformation ProtocolIE-ID
+id-NPN-PagingAssistanceInformation ProtocolIE-ID
+id-NPN-MobilityInformation ProtocolIE-ID
+id-TargettoSource-Failure-TransparentContainer ProtocolIE-ID
+id-NID ProtocolIE-ID
+id-UERadioCapabilityID ProtocolIE-ID
+id-UERadioCapability-EUTRA-Format ProtocolIE-ID
+id-DAPSRequestInfo ProtocolIE-ID
+id-DAPSResponseInfoList ProtocolIE-ID
+id-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID
+id-NotifySourceNGRANNode ProtocolIE-ID
+id-ExtendedSliceSupportList ProtocolIE-ID
+id-ExtendedTAISliceSupportList ProtocolIE-ID
+id-ConfiguredTACIndication ProtocolIE-ID
+id-Extended-RANNodeName ProtocolIE-ID
+id-Extended-AMFName ProtocolIE-ID
+id-GlobalCable-ID ProtocolIE-ID
+id-QosMonitoringReportingFrequency ProtocolIE-ID
+id-QosFlowParametersList ProtocolIE-ID
+id-QosFlowFeedbackList ProtocolIE-ID
+id-BurstArrivalTimeDownlink ProtocolIE-ID
+id-ExtendedUEIdentityIndexValue ProtocolIE-ID
+id-PduSessionExpectedUEActivityBehaviour ProtocolIE-ID
+id-MicoAllPLMN ProtocolIE-ID
+id-QosFlowFailedToSetupList ProtocolIE-ID
+id-SourceTNLAddrInfo ProtocolIE-ID
+id-ExtendedReportIntervalMDT ProtocolIE-ID
+id-SourceNodeID ProtocolIE-ID
+id-NRNTNTAIInformation ProtocolIE-ID
+id-UEContextReferenceAtSource ProtocolIE-ID
+id-LastVisitedPSCellList ProtocolIE-ID
+id-IntersystemSONInformationRequest ProtocolIE-ID
+id-IntersystemSONInformationReply ProtocolIE-ID
+id-EnergySavingIndication ProtocolIE-ID
+id-IntersystemResourceStatusUpdate ProtocolIE-ID
+id-SuccessfulHandoverReportList ProtocolIE-ID
+id-MBS-AreaSessionID ProtocolIE-ID
+id-MBS-QoSFlowsToBeSetupList ProtocolIE-ID
+id-MBS-QoSFlowsToBeSetupModList ProtocolIE-ID
+id-MBS-ServiceArea ProtocolIE-ID
+id-MBS-SessionID ProtocolIE-ID
+id-MBS-DistributionReleaseRequestTransfer ProtocolIE-ID
+id-MBS-DistributionSetupRequestTransfer ProtocolIE-ID
+id-MBS-DistributionSetupResponseTransfer ProtocolIE-ID
+id-MBS-DistributionSetupUnsuccessfulTransfer ProtocolIE-ID
+id-MulticastSessionActivationRequestTransfer ProtocolIE-ID
+id-MulticastSessionDeactivationRequestTransfer ProtocolIE-ID
+id-MulticastSessionUpdateRequestTransfer ProtocolIE-ID
+id-MulticastGroupPagingAreaList ProtocolIE-ID
+id-MBS-SupportIndicator ProtocolIE-ID
+id-MBSSessionFailedtoSetupList ProtocolIE-ID
+id-MBSSessionFailedtoSetuporModifyList ProtocolIE-ID
+id-MBSSessionSetupResponseList ProtocolIE-ID
+id-MBSSessionSetuporModifyResponseList ProtocolIE-ID
+id-MBSSessionSetupFailureTransfer ProtocolIE-ID
+id-MBSSessionSetupRequestTransfer ProtocolIE-ID
+id-MBSSessionSetupResponseTransfer ProtocolIE-ID
+id-MBSSessionToReleaseList ProtocolIE-ID
+id-MBSSessionSetupRequestList ProtocolIE-ID
+id-MBSSessionSetuporModifyRequestList ProtocolIE-ID
+id-MBS-ActiveSessionInformation-SourcetoTargetList ProtocolIE-ID
+id-MBS-ActiveSessionInformation-TargettoSourceList ProtocolIE-ID
+id-OnboardingSupport ProtocolIE-ID
+id-TimeSyncAssistanceInfo ProtocolIE-ID
+id-SurvivalTime ProtocolIE-ID
+id-QMCConfigInfo ProtocolIE-ID
+id-QMCDeactivation ProtocolIE-ID
+id-PDUSessionPairID ProtocolIE-ID
+id-NR-PagingeDRXInformation ProtocolIE-ID
+id-RedCapIndication ProtocolIE-ID
+id-TargetNSSAIInformation ProtocolIE-ID
+id-UESliceMaximumBitRateList ProtocolIE-ID
+id-M4ReportAmount ProtocolIE-ID
+id-M5ReportAmount ProtocolIE-ID
+id-M6ReportAmount ProtocolIE-ID
+id-M7ReportAmount ProtocolIE-ID
+id-IncludeBeamMeasurementsIndication ProtocolIE-ID
+id-ExcessPacketDelayThresholdConfiguration ProtocolIE-ID
+id-PagingCause ProtocolIE-ID
+id-PagingCauseIndicationForVoiceService ProtocolIE-ID
+id-PEIPSassistanceInformation ProtocolIE-ID
+id-FiveG-ProSeAuthorized ProtocolIE-ID
+id-FiveG-ProSeUEPC5AggregateMaximumBitRate ProtocolIE-ID
+id-FiveG-ProSePC5QoSParameters ProtocolIE-ID
+id-MBSSessionModificationFailureTransfer ProtocolIE-ID
+id-MBSSessionModificationRequestTransfer ProtocolIE-ID
+id-MBSSessionModificationResponseTransfer ProtocolIE-ID
+id-MBS-QoSFlowToReleaseList ProtocolIE-ID
+id-MBS-SessionTNLInfo5GC ProtocolIE-ID
+id-TAINSAGSupportList ProtocolIE-ID
+id-SourceNodeTNLAddrInfo ProtocolIE-ID
+id-NGAPIESupportInformationRequestList ProtocolIE-ID
+id-NGAPIESupportInformationResponseList ProtocolIE-ID
+id-MBS-SessionFSAIDList ProtocolIE-ID
+id-MBSSessionReleaseResponseTransfer ProtocolIE-ID
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID
+id-EarlyMeasurement ProtocolIE-ID
+id-BeamMeasurementsReportConfiguration ProtocolIE-ID
+id-HFCNode-ID-new ProtocolIE-ID
+id-GlobalCable-ID-new ProtocolIE-ID
+id-TargetHomeENB-ID ProtocolIE-ID
+id-HashedUEIdentityIndexValue ProtocolIE-ID
+id-ExtendedMobilityInformation ProtocolIE-ID
+
#.END
@@ -1561,229 +1735,275 @@ id-QosFlowFailedToSetupList ProtocolIE-ID
#NGAP-PROTOCOL-IES
-AllowedNSSAI N ngap.ies id-AllowedNSSAI
-AMFName N ngap.ies id-AMFName
-OverloadResponse N ngap.ies id-AMFOverloadResponse
-AMFSetID N ngap.ies id-AMFSetID
-TNLAssociationList N ngap.ies id-AMF-TNLAssociationFailedToSetupList
-AMF-TNLAssociationSetupList N ngap.ies id-AMF-TNLAssociationSetupList
-AMF-TNLAssociationToAddList N ngap.ies id-AMF-TNLAssociationToAddList
-AMF-TNLAssociationToRemoveList N ngap.ies id-AMF-TNLAssociationToRemoveList
-AMF-TNLAssociationToUpdateList N ngap.ies id-AMF-TNLAssociationToUpdateList
-TrafficLoadReductionIndication N ngap.ies id-AMFTrafficLoadReductionIndication
-AMF-UE-NGAP-ID N ngap.ies id-AMF-UE-NGAP-ID
-AssistanceDataForPaging N ngap.ies id-AssistanceDataForPaging
-BroadcastCancelledAreaList N ngap.ies id-BroadcastCancelledAreaList
-BroadcastCompletedAreaList N ngap.ies id-BroadcastCompletedAreaList
-CancelAllWarningMessages N ngap.ies id-CancelAllWarningMessages
-Cause N ngap.ies id-Cause
-CellIDListForRestart N ngap.ies id-CellIDListForRestart
-ConcurrentWarningMessageInd N ngap.ies id-ConcurrentWarningMessageInd
-CoreNetworkAssistanceInformationForInactive N ngap.ies id-CoreNetworkAssistanceInformationForInactive
-CriticalityDiagnostics N ngap.ies id-CriticalityDiagnostics
-DataCodingScheme N ngap.ies id-DataCodingScheme
-PagingDRX N ngap.ies id-DefaultPagingDRX
-DirectForwardingPathAvailability N ngap.ies id-DirectForwardingPathAvailability
-EmergencyAreaIDListForRestart N ngap.ies id-EmergencyAreaIDListForRestart
-EmergencyFallbackIndicator N ngap.ies id-EmergencyFallbackIndicator
-EUTRA-CGI N ngap.ies id-EUTRA-CGI
-FiveG-S-TMSI N ngap.ies id-FiveG-S-TMSI
-GlobalRANNodeID N ngap.ies id-GlobalRANNodeID
-GUAMI N ngap.ies id-GUAMI
-HandoverType N ngap.ies id-HandoverType
-IMSVoiceSupportIndicator N ngap.ies id-IMSVoiceSupportIndicator
-IndexToRFSP N ngap.ies id-IndexToRFSP
-InfoOnRecommendedCellsAndRANNodesForPaging N ngap.ies id-InfoOnRecommendedCellsAndRANNodesForPaging
-LocationReportingRequestType N ngap.ies id-LocationReportingRequestType
-MaskedIMEISV N ngap.ies id-MaskedIMEISV
-MessageIdentifier N ngap.ies id-MessageIdentifier
-MobilityRestrictionList N ngap.ies id-MobilityRestrictionList
-NAS-PDU N ngap.ies id-NASC
-NAS-PDU N ngap.ies id-NAS-PDU
-NASSecurityParametersFromNGRAN N ngap.ies id-NASSecurityParametersFromNGRAN
-AMF-UE-NGAP-ID N ngap.ies id-NewAMF-UE-NGAP-ID
-NewSecurityContextInd N ngap.ies id-NewSecurityContextInd
-NGAP-Message N ngap.ies id-NGAP-Message
-NGRAN-CGI N ngap.ies id-NGRAN-CGI
-NGRANTraceID N ngap.ies id-NGRANTraceID
-NR-CGI N ngap.ies id-NR-CGI
-NRPPa-PDU N ngap.ies id-NRPPa-PDU
-NumberOfBroadcastsRequested N ngap.ies id-NumberOfBroadcastsRequested
-AMFName N ngap.ies id-OldAMF
-OverloadStartNSSAIList N ngap.ies id-OverloadStartNSSAIList
-PagingDRX N ngap.ies id-PagingDRX
-PagingOrigin N ngap.ies id-PagingOrigin
-PagingPriority N ngap.ies id-PagingPriority
-PDUSessionResourceAdmittedList N ngap.ies id-PDUSessionResourceAdmittedList
-PDUSessionResourceFailedToModifyListModRes N ngap.ies id-PDUSessionResourceFailedToModifyListModRes
-PDUSessionResourceFailedToSetupListCxtRes N ngap.ies id-PDUSessionResourceFailedToSetupListCxtRes
-PDUSessionResourceFailedToSetupListHOAck N ngap.ies id-PDUSessionResourceFailedToSetupListHOAck
-PDUSessionResourceFailedToSetupListPSReq N ngap.ies id-PDUSessionResourceFailedToSetupListPSReq
-PDUSessionResourceFailedToSetupListSURes N ngap.ies id-PDUSessionResourceFailedToSetupListSURes
-PDUSessionResourceHandoverList N ngap.ies id-PDUSessionResourceHandoverList
-PDUSessionResourceListCxtRelCpl N ngap.ies id-PDUSessionResourceListCxtRelCpl
-PDUSessionResourceListHORqd N ngap.ies id-PDUSessionResourceListHORqd
-PDUSessionResourceModifyListModCfm N ngap.ies id-PDUSessionResourceModifyListModCfm
-PDUSessionResourceModifyListModInd N ngap.ies id-PDUSessionResourceModifyListModInd
-PDUSessionResourceModifyListModReq N ngap.ies id-PDUSessionResourceModifyListModReq
-PDUSessionResourceModifyListModRes N ngap.ies id-PDUSessionResourceModifyListModRes
-PDUSessionResourceNotifyList N ngap.ies id-PDUSessionResourceNotifyList
-PDUSessionResourceReleasedListNot N ngap.ies id-PDUSessionResourceReleasedListNot
-PDUSessionResourceReleasedListPSAck N ngap.ies id-PDUSessionResourceReleasedListPSAck
-PDUSessionResourceReleasedListPSFail N ngap.ies id-PDUSessionResourceReleasedListPSFail
-PDUSessionResourceReleasedListRelRes N ngap.ies id-PDUSessionResourceReleasedListRelRes
-PDUSessionResourceSetupListCxtReq N ngap.ies id-PDUSessionResourceSetupListCxtReq
-PDUSessionResourceSetupListCxtRes N ngap.ies id-PDUSessionResourceSetupListCxtRes
-PDUSessionResourceSetupListHOReq N ngap.ies id-PDUSessionResourceSetupListHOReq
-PDUSessionResourceSetupListSUReq N ngap.ies id-PDUSessionResourceSetupListSUReq
-PDUSessionResourceSetupListSURes N ngap.ies id-PDUSessionResourceSetupListSURes
-PDUSessionResourceToBeSwitchedDLList N ngap.ies id-PDUSessionResourceToBeSwitchedDLList
-PDUSessionResourceSwitchedList N ngap.ies id-PDUSessionResourceSwitchedList
-PDUSessionResourceToReleaseListHOCmd N ngap.ies id-PDUSessionResourceToReleaseListHOCmd
-PDUSessionResourceToReleaseListRelCmd N ngap.ies id-PDUSessionResourceToReleaseListRelCmd
-PLMNSupportList N ngap.ies id-PLMNSupportList
-PWSFailedCellIDList N ngap.ies id-PWSFailedCellIDList
-RANNodeName N ngap.ies id-RANNodeName
-RANPagingPriority N ngap.ies id-RANPagingPriority
-RANStatusTransfer-TransparentContainer N ngap.ies id-RANStatusTransfer-TransparentContainer
-RAN-UE-NGAP-ID N ngap.ies id-RAN-UE-NGAP-ID
-RelativeAMFCapacity N ngap.ies id-RelativeAMFCapacity
-RepetitionPeriod N ngap.ies id-RepetitionPeriod
-ResetType N ngap.ies id-ResetType
-RoutingID N ngap.ies id-RoutingID
-RRCEstablishmentCause N ngap.ies id-RRCEstablishmentCause
-RRCInactiveTransitionReportRequest N ngap.ies id-RRCInactiveTransitionReportRequest
-RRCState N ngap.ies id-RRCState
-SecurityContext N ngap.ies id-SecurityContext
-SecurityKey N ngap.ies id-SecurityKey
-SerialNumber N ngap.ies id-SerialNumber
-ServedGUAMIList N ngap.ies id-ServedGUAMIList
-SliceSupportList N ngap.ies id-SliceSupportList
-SONConfigurationTransfer N ngap.ies id-SONConfigurationTransferDL
-SONConfigurationTransfer N ngap.ies id-SONConfigurationTransferUL
-AMF-UE-NGAP-ID N ngap.ies id-SourceAMF-UE-NGAP-ID
-SourceToTarget-TransparentContainer N ngap.ies id-SourceToTarget-TransparentContainer
-SupportedTAList N ngap.ies id-SupportedTAList
-TAIListForPaging N ngap.ies id-TAIListForPaging
-TAIListForRestart N ngap.ies id-TAIListForRestart
-TargetID N ngap.ies id-TargetID
-TargetToSource-TransparentContainer N ngap.ies id-TargetToSource-TransparentContainer
-TimeToWait N ngap.ies id-TimeToWait
-TraceActivation N ngap.ies id-TraceActivation
-TransportLayerAddress N ngap.ies id-TraceCollectionEntityIPAddress
-UEAggregateMaximumBitRate N ngap.ies id-UEAggregateMaximumBitRate
-UE-associatedLogicalNG-connectionList N ngap.ies id-UE-associatedLogicalNG-connectionList
-UEContextRequest N ngap.ies id-UEContextRequest
-UE-NGAP-IDs N ngap.ies id-UE-NGAP-IDs
-UEPagingIdentity N ngap.ies id-UEPagingIdentity
-UEPresenceInAreaOfInterestList N ngap.ies id-UEPresenceInAreaOfInterestList
-UERadioCapability N ngap.ies id-UERadioCapability
-UERadioCapabilityForPaging N ngap.ies id-UERadioCapabilityForPaging
-UESecurityCapabilities N ngap.ies id-UESecurityCapabilities
-UnavailableGUAMIList N ngap.ies id-UnavailableGUAMIList
-UserLocationInformation N ngap.ies id-UserLocationInformation
-WarningAreaList N ngap.ies id-WarningAreaList
-WarningMessageContents N ngap.ies id-WarningMessageContents
-WarningSecurityInfo N ngap.ies id-WarningSecurityInfo
-WarningType N ngap.ies id-WarningType
-UPTransportLayerInformationList N ngap.ies id-AdditionalUL-NGU-UP-TNLInformation
-DataForwardingNotPossible N ngap.ies id-DataForwardingNotPossible
-NetworkInstance N ngap.ies id-NetworkInstance
-PDUSessionAggregateMaximumBitRate N ngap.ies id-PDUSessionAggregateMaximumBitRate
-PDUSessionResourceFailedToModifyListModCfm N ngap.ies id-PDUSessionResourceFailedToModifyListModCfm
-PDUSessionResourceFailedToSetupListCxtFail N ngap.ies id-PDUSessionResourceFailedToSetupListCxtFail
-PDUSessionResourceListCxtRelReq N ngap.ies id-PDUSessionResourceListCxtRelReq
-PDUSessionType N ngap.ies id-PDUSessionType
-QosFlowAddOrModifyRequestList N ngap.ies id-QosFlowAddOrModifyRequestList
-QosFlowSetupRequestList N ngap.ies id-QosFlowSetupRequestList
-QosFlowListWithCause N ngap.ies id-QosFlowToReleaseList
-SecurityIndication N ngap.ies id-SecurityIndication
-UPTransportLayerInformation N ngap.ies id-UL-NGU-UP-TNLInformation
-UL-NGU-UP-TNLModifyList N ngap.ies id-UL-NGU-UP-TNLModifyList
-WarningAreaCoordinates N ngap.ies id-WarningAreaCoordinates
-PDUSessionResourceSecondaryRATUsageList N ngap.ies id-PDUSessionResourceSecondaryRATUsageList
-HandoverFlag N ngap.ies id-HandoverFlag
-RedirectionVoiceFallback N ngap.ies id-RedirectionVoiceFallback
-UERetentionInformation N ngap.ies id-UERetentionInformation
-NGRAN-CGI N ngap.ies id-PSCellInformation
-EN-DCSONConfigurationTransfer N ngap.ies id-ENDC-SONConfigurationTransferDL
-EN-DCSONConfigurationTransfer N ngap.ies id-ENDC-SONConfigurationTransferUL
-GUAMI N ngap.ies id-NewGUAMI
-CNAssistedRANTuning N ngap.ies id-CNAssistedRANTuning
-CommonNetworkInstance N ngap.ies id-CommonNetworkInstance
-NGRAN-TNLAssociationToRemoveList N ngap.ies id-NGRAN-TNLAssociationToRemoveList
-EndpointIPAddressAndPort N ngap.ies id-EndpointIPAddressAndPort
-SourceToTarget-AMFInformationReroute N ngap.ies id-SourceToTarget-AMFInformationReroute
-RIMInformationTransfer N ngap.ies id-RIMInformationTransfer
-SRVCCOperationPossible N ngap.ies id-SRVCCOperationPossible
-TargetRNC-ID N ngap.ies id-TargetRNC-ID
-UPTransportLayerInformationList N ngap.ies id-AdditionalRedundantUL-NGU-UP-TNLInformation
-CommonNetworkInstance N ngap.ies id-RedundantCommonNetworkInstance
-UPTransportLayerInformation N ngap.ies id-RedundantUL-NGU-UP-TNLInformation
-RedundantPDUSessionInformation N ngap.ies id-RedundantPDUSessionInformation
-IAB-Authorized N ngap.ies id-IAB-Authorized
-IAB-Supported N ngap.ies id-IAB-Supported
-IABNodeIndication N ngap.ies id-IABNodeIndication
-NB-IoT-PagingDRX N ngap.ies id-NB-IoT-PagingDRX
-NB-IoT-Paging-eDRXInfo N ngap.ies id-NB-IoT-Paging-eDRXInfo
-NB-IoT-DefaultPagingDRX N ngap.ies id-NB-IoT-DefaultPagingDRX
-Enhanced-CoverageRestriction N ngap.ies id-Enhanced-CoverageRestriction
-Extended-ConnectedTime N ngap.ies id-Extended-ConnectedTime
-PagingAssisDataforCEcapabUE N ngap.ies id-PagingAssisDataforCEcapabUE
-WUS-Assistance-Information N ngap.ies id-WUS-Assistance-Information
-UE-DifferentiationInfo N ngap.ies id-UE-DifferentiationInfo
-NB-IoT-UEPriority N ngap.ies id-NB-IoT-UEPriority
-UL-CP-SecurityInformation N ngap.ies id-UL-CP-SecurityInformation
-DL-CP-SecurityInformation N ngap.ies id-DL-CP-SecurityInformation
-TAI N ngap.ies id-TAI
-LTEV2XServicesAuthorized N ngap.ies id-LTEV2XServicesAuthorized
-NRV2XServicesAuthorized N ngap.ies id-NRV2XServicesAuthorized
-LTEUESidelinkAggregateMaximumBitrate N ngap.ies id-LTEUESidelinkAggregateMaximumBitrate
-NRUESidelinkAggregateMaximumBitrate N ngap.ies id-NRUESidelinkAggregateMaximumBitrate
-PC5QoSParameters N ngap.ies id-PC5QoSParameters
-CEmodeBrestricted N ngap.ies id-CEmodeBrestricted
-PagingeDRXInformation N ngap.ies id-PagingeDRXInformation
-CEmodeBSupport-Indicator N ngap.ies id-CEmodeBSupport-Indicator
-LTEM-Indication N ngap.ies id-LTEM-Indication
-EndIndication N ngap.ies id-EndIndication
-EDT-Session N ngap.ies id-EDT-Session
-UECapabilityInfoRequest N ngap.ies id-UECapabilityInfoRequest
-PDUSessionResourceFailedToResumeListRESReq N ngap.ies id-PDUSessionResourceFailedToResumeListRESReq
-PDUSessionResourceFailedToResumeListRESRes N ngap.ies id-PDUSessionResourceFailedToResumeListRESRes
-PDUSessionResourceSuspendListSUSReq N ngap.ies id-PDUSessionResourceSuspendListSUSReq
-PDUSessionResourceResumeListRESReq N ngap.ies id-PDUSessionResourceResumeListRESReq
-PDUSessionResourceResumeListRESRes N ngap.ies id-PDUSessionResourceResumeListRESRes
-UE-UP-CIoT-Support N ngap.ies id-UE-UP-CIoT-Support
-Suspend-Request-Indication N ngap.ies id-Suspend-Request-Indication
-Suspend-Response-Indication N ngap.ies id-Suspend-Response-Indication
-RRCEstablishmentCause N ngap.ies id-RRC-Resume-Cause
-RGLevelWirelineAccessCharacteristics N ngap.ies id-RGLevelWirelineAccessCharacteristics
-W-AGFIdentityInformation N ngap.ies id-W-AGFIdentityInformation
-GlobalTNGF-ID N ngap.ies id-GlobalTNGF-ID
-GlobalTWIF-ID N ngap.ies id-GlobalTWIF-ID
-GlobalW-AGF-ID N ngap.ies id-GlobalW-AGF-ID
-UserLocationInformationW-AGF N ngap.ies id-UserLocationInformationW-AGF
-UserLocationInformationTNGF N ngap.ies id-UserLocationInformationTNGF
-AuthenticatedIndication N ngap.ies id-AuthenticatedIndication
-TNGFIdentityInformation N ngap.ies id-TNGFIdentityInformation
-TWIFIdentityInformation N ngap.ies id-TWIFIdentityInformation
-UserLocationInformationTWIF N ngap.ies id-UserLocationInformationTWIF
-PLMNIdentity N ngap.ies id-SelectedPLMNIdentity
-IntersystemSONConfigurationTransfer N ngap.ies id-IntersystemSONConfigurationTransferDL
-IntersystemSONConfigurationTransfer N ngap.ies id-IntersystemSONConfigurationTransferUL
-SONInformationReport N ngap.ies id-SONInformationReport
-MDTPLMNList N ngap.ies id-ManagementBasedMDTPLMNList
-PrivacyIndicator N ngap.ies id-PrivacyIndicator
-URI-address N ngap.ies id-TraceCollectionEntityURI
-NPN-AccessInformation N ngap.ies id-NPN-AccessInformation
-TargettoSource-Failure-TransparentContainer N ngap.ies id-TargettoSource-Failure-TransparentContainer
-UERadioCapabilityID N ngap.ies id-UERadioCapabilityID
-UERadioCapability N ngap.ies id-UERadioCapability-EUTRA-Format
-EarlyStatusTransfer-TransparentContainer N ngap.ies id-EarlyStatusTransfer-TransparentContainer
-NotifySourceNGRANNode N ngap.ies id-NotifySourceNGRANNode
-Extended-RANNodeName N ngap.ies id-Extended-RANNodeName
-Extended-AMFName N ngap.ies id-Extended-AMFName
-GlobalCable-ID N ngap.ies id-GlobalCable-ID
+AllowedNSSAI N ngap.ies id-AllowedNSSAI
+AMFName N ngap.ies id-AMFName
+OverloadResponse N ngap.ies id-AMFOverloadResponse
+AMFSetID N ngap.ies id-AMFSetID
+TNLAssociationList N ngap.ies id-AMF-TNLAssociationFailedToSetupList
+AMF-TNLAssociationSetupList N ngap.ies id-AMF-TNLAssociationSetupList
+AMF-TNLAssociationToAddList N ngap.ies id-AMF-TNLAssociationToAddList
+AMF-TNLAssociationToRemoveList N ngap.ies id-AMF-TNLAssociationToRemoveList
+AMF-TNLAssociationToUpdateList N ngap.ies id-AMF-TNLAssociationToUpdateList
+TrafficLoadReductionIndication N ngap.ies id-AMFTrafficLoadReductionIndication
+AMF-UE-NGAP-ID N ngap.ies id-AMF-UE-NGAP-ID
+AssistanceDataForPaging N ngap.ies id-AssistanceDataForPaging
+BroadcastCancelledAreaList N ngap.ies id-BroadcastCancelledAreaList
+BroadcastCompletedAreaList N ngap.ies id-BroadcastCompletedAreaList
+CancelAllWarningMessages N ngap.ies id-CancelAllWarningMessages
+Cause N ngap.ies id-Cause
+CellIDListForRestart N ngap.ies id-CellIDListForRestart
+ConcurrentWarningMessageInd N ngap.ies id-ConcurrentWarningMessageInd
+CoreNetworkAssistanceInformationForInactive N ngap.ies id-CoreNetworkAssistanceInformationForInactive
+CriticalityDiagnostics N ngap.ies id-CriticalityDiagnostics
+DataCodingScheme N ngap.ies id-DataCodingScheme
+PagingDRX N ngap.ies id-DefaultPagingDRX
+DirectForwardingPathAvailability N ngap.ies id-DirectForwardingPathAvailability
+EmergencyAreaIDListForRestart N ngap.ies id-EmergencyAreaIDListForRestart
+EmergencyFallbackIndicator N ngap.ies id-EmergencyFallbackIndicator
+EUTRA-CGI N ngap.ies id-EUTRA-CGI
+FiveG-S-TMSI N ngap.ies id-FiveG-S-TMSI
+GlobalRANNodeID N ngap.ies id-GlobalRANNodeID
+GUAMI N ngap.ies id-GUAMI
+HandoverType N ngap.ies id-HandoverType
+IMSVoiceSupportIndicator N ngap.ies id-IMSVoiceSupportIndicator
+IndexToRFSP N ngap.ies id-IndexToRFSP
+InfoOnRecommendedCellsAndRANNodesForPaging N ngap.ies id-InfoOnRecommendedCellsAndRANNodesForPaging
+LocationReportingRequestType N ngap.ies id-LocationReportingRequestType
+MaskedIMEISV N ngap.ies id-MaskedIMEISV
+MessageIdentifier N ngap.ies id-MessageIdentifier
+MobilityRestrictionList N ngap.ies id-MobilityRestrictionList
+NAS-PDU N ngap.ies id-NASC
+NAS-PDU N ngap.ies id-NAS-PDU
+NASSecurityParametersFromNGRAN N ngap.ies id-NASSecurityParametersFromNGRAN
+AMF-UE-NGAP-ID N ngap.ies id-NewAMF-UE-NGAP-ID
+NewSecurityContextInd N ngap.ies id-NewSecurityContextInd
+NGAP-Message N ngap.ies id-NGAP-Message
+NGRAN-CGI N ngap.ies id-NGRAN-CGI
+NGRANTraceID N ngap.ies id-NGRANTraceID
+NR-CGI N ngap.ies id-NR-CGI
+NRPPa-PDU N ngap.ies id-NRPPa-PDU
+NumberOfBroadcastsRequested N ngap.ies id-NumberOfBroadcastsRequested
+AMFName N ngap.ies id-OldAMF
+OverloadStartNSSAIList N ngap.ies id-OverloadStartNSSAIList
+PagingDRX N ngap.ies id-PagingDRX
+PagingOrigin N ngap.ies id-PagingOrigin
+PagingPriority N ngap.ies id-PagingPriority
+PDUSessionResourceAdmittedList N ngap.ies id-PDUSessionResourceAdmittedList
+PDUSessionResourceFailedToModifyListModRes N ngap.ies id-PDUSessionResourceFailedToModifyListModRes
+PDUSessionResourceFailedToSetupListCxtRes N ngap.ies id-PDUSessionResourceFailedToSetupListCxtRes
+PDUSessionResourceFailedToSetupListHOAck N ngap.ies id-PDUSessionResourceFailedToSetupListHOAck
+PDUSessionResourceFailedToSetupListPSReq N ngap.ies id-PDUSessionResourceFailedToSetupListPSReq
+PDUSessionResourceFailedToSetupListSURes N ngap.ies id-PDUSessionResourceFailedToSetupListSURes
+PDUSessionResourceHandoverList N ngap.ies id-PDUSessionResourceHandoverList
+PDUSessionResourceListCxtRelCpl N ngap.ies id-PDUSessionResourceListCxtRelCpl
+PDUSessionResourceListHORqd N ngap.ies id-PDUSessionResourceListHORqd
+PDUSessionResourceModifyListModCfm N ngap.ies id-PDUSessionResourceModifyListModCfm
+PDUSessionResourceModifyListModInd N ngap.ies id-PDUSessionResourceModifyListModInd
+PDUSessionResourceModifyListModReq N ngap.ies id-PDUSessionResourceModifyListModReq
+PDUSessionResourceModifyListModRes N ngap.ies id-PDUSessionResourceModifyListModRes
+PDUSessionResourceNotifyList N ngap.ies id-PDUSessionResourceNotifyList
+PDUSessionResourceReleasedListNot N ngap.ies id-PDUSessionResourceReleasedListNot
+PDUSessionResourceReleasedListPSAck N ngap.ies id-PDUSessionResourceReleasedListPSAck
+PDUSessionResourceReleasedListPSFail N ngap.ies id-PDUSessionResourceReleasedListPSFail
+PDUSessionResourceReleasedListRelRes N ngap.ies id-PDUSessionResourceReleasedListRelRes
+PDUSessionResourceSetupListCxtReq N ngap.ies id-PDUSessionResourceSetupListCxtReq
+PDUSessionResourceSetupListCxtRes N ngap.ies id-PDUSessionResourceSetupListCxtRes
+PDUSessionResourceSetupListHOReq N ngap.ies id-PDUSessionResourceSetupListHOReq
+PDUSessionResourceSetupListSUReq N ngap.ies id-PDUSessionResourceSetupListSUReq
+PDUSessionResourceSetupListSURes N ngap.ies id-PDUSessionResourceSetupListSURes
+PDUSessionResourceToBeSwitchedDLList N ngap.ies id-PDUSessionResourceToBeSwitchedDLList
+PDUSessionResourceSwitchedList N ngap.ies id-PDUSessionResourceSwitchedList
+PDUSessionResourceToReleaseListHOCmd N ngap.ies id-PDUSessionResourceToReleaseListHOCmd
+PDUSessionResourceToReleaseListRelCmd N ngap.ies id-PDUSessionResourceToReleaseListRelCmd
+PLMNSupportList N ngap.ies id-PLMNSupportList
+PWSFailedCellIDList N ngap.ies id-PWSFailedCellIDList
+RANNodeName N ngap.ies id-RANNodeName
+RANPagingPriority N ngap.ies id-RANPagingPriority
+RANStatusTransfer-TransparentContainer N ngap.ies id-RANStatusTransfer-TransparentContainer
+RAN-UE-NGAP-ID N ngap.ies id-RAN-UE-NGAP-ID
+RelativeAMFCapacity N ngap.ies id-RelativeAMFCapacity
+RepetitionPeriod N ngap.ies id-RepetitionPeriod
+ResetType N ngap.ies id-ResetType
+RoutingID N ngap.ies id-RoutingID
+RRCEstablishmentCause N ngap.ies id-RRCEstablishmentCause
+RRCInactiveTransitionReportRequest N ngap.ies id-RRCInactiveTransitionReportRequest
+RRCState N ngap.ies id-RRCState
+SecurityContext N ngap.ies id-SecurityContext
+SecurityKey N ngap.ies id-SecurityKey
+SerialNumber N ngap.ies id-SerialNumber
+ServedGUAMIList N ngap.ies id-ServedGUAMIList
+SliceSupportList N ngap.ies id-SliceSupportList
+SONConfigurationTransfer N ngap.ies id-SONConfigurationTransferDL
+SONConfigurationTransfer N ngap.ies id-SONConfigurationTransferUL
+AMF-UE-NGAP-ID N ngap.ies id-SourceAMF-UE-NGAP-ID
+SourceToTarget-TransparentContainer N ngap.ies id-SourceToTarget-TransparentContainer
+SupportedTAList N ngap.ies id-SupportedTAList
+TAIListForPaging N ngap.ies id-TAIListForPaging
+TAIListForRestart N ngap.ies id-TAIListForRestart
+TargetID N ngap.ies id-TargetID
+TargetToSource-TransparentContainer N ngap.ies id-TargetToSource-TransparentContainer
+TimeToWait N ngap.ies id-TimeToWait
+TraceActivation N ngap.ies id-TraceActivation
+TransportLayerAddress N ngap.ies id-TraceCollectionEntityIPAddress
+UEAggregateMaximumBitRate N ngap.ies id-UEAggregateMaximumBitRate
+UE-associatedLogicalNG-connectionList N ngap.ies id-UE-associatedLogicalNG-connectionList
+UEContextRequest N ngap.ies id-UEContextRequest
+UE-NGAP-IDs N ngap.ies id-UE-NGAP-IDs
+UEPagingIdentity N ngap.ies id-UEPagingIdentity
+UEPresenceInAreaOfInterestList N ngap.ies id-UEPresenceInAreaOfInterestList
+UERadioCapability N ngap.ies id-UERadioCapability
+UERadioCapabilityForPaging N ngap.ies id-UERadioCapabilityForPaging
+UESecurityCapabilities N ngap.ies id-UESecurityCapabilities
+UnavailableGUAMIList N ngap.ies id-UnavailableGUAMIList
+UserLocationInformation N ngap.ies id-UserLocationInformation
+WarningAreaList N ngap.ies id-WarningAreaList
+WarningMessageContents N ngap.ies id-WarningMessageContents
+WarningSecurityInfo N ngap.ies id-WarningSecurityInfo
+WarningType N ngap.ies id-WarningType
+UPTransportLayerInformationList N ngap.ies id-AdditionalUL-NGU-UP-TNLInformation
+DataForwardingNotPossible N ngap.ies id-DataForwardingNotPossible
+NetworkInstance N ngap.ies id-NetworkInstance
+PDUSessionAggregateMaximumBitRate N ngap.ies id-PDUSessionAggregateMaximumBitRate
+PDUSessionResourceFailedToModifyListModCfm N ngap.ies id-PDUSessionResourceFailedToModifyListModCfm
+PDUSessionResourceFailedToSetupListCxtFail N ngap.ies id-PDUSessionResourceFailedToSetupListCxtFail
+PDUSessionResourceListCxtRelReq N ngap.ies id-PDUSessionResourceListCxtRelReq
+PDUSessionType N ngap.ies id-PDUSessionType
+QosFlowAddOrModifyRequestList N ngap.ies id-QosFlowAddOrModifyRequestList
+QosFlowSetupRequestList N ngap.ies id-QosFlowSetupRequestList
+QosFlowListWithCause N ngap.ies id-QosFlowToReleaseList
+SecurityIndication N ngap.ies id-SecurityIndication
+UPTransportLayerInformation N ngap.ies id-UL-NGU-UP-TNLInformation
+UL-NGU-UP-TNLModifyList N ngap.ies id-UL-NGU-UP-TNLModifyList
+WarningAreaCoordinates N ngap.ies id-WarningAreaCoordinates
+PDUSessionResourceSecondaryRATUsageList N ngap.ies id-PDUSessionResourceSecondaryRATUsageList
+HandoverFlag N ngap.ies id-HandoverFlag
+RedirectionVoiceFallback N ngap.ies id-RedirectionVoiceFallback
+UERetentionInformation N ngap.ies id-UERetentionInformation
+NGRAN-CGI N ngap.ies id-PSCellInformation
+EN-DCSONConfigurationTransfer N ngap.ies id-ENDC-SONConfigurationTransferDL
+EN-DCSONConfigurationTransfer N ngap.ies id-ENDC-SONConfigurationTransferUL
+GUAMI N ngap.ies id-NewGUAMI
+CNAssistedRANTuning N ngap.ies id-CNAssistedRANTuning
+CommonNetworkInstance N ngap.ies id-CommonNetworkInstance
+NGRAN-TNLAssociationToRemoveList N ngap.ies id-NGRAN-TNLAssociationToRemoveList
+EndpointIPAddressAndPort N ngap.ies id-EndpointIPAddressAndPort
+SourceToTarget-AMFInformationReroute N ngap.ies id-SourceToTarget-AMFInformationReroute
+RIMInformationTransfer N ngap.ies id-RIMInformationTransfer
+SRVCCOperationPossible N ngap.ies id-SRVCCOperationPossible
+TargetRNC-ID N ngap.ies id-TargetRNC-ID
+UPTransportLayerInformationList N ngap.ies id-AdditionalRedundantUL-NGU-UP-TNLInformation
+CommonNetworkInstance N ngap.ies id-RedundantCommonNetworkInstance
+UPTransportLayerInformation N ngap.ies id-RedundantUL-NGU-UP-TNLInformation
+RedundantPDUSessionInformation N ngap.ies id-RedundantPDUSessionInformation
+IAB-Authorized N ngap.ies id-IAB-Authorized
+IAB-Supported N ngap.ies id-IAB-Supported
+IABNodeIndication N ngap.ies id-IABNodeIndication
+NB-IoT-PagingDRX N ngap.ies id-NB-IoT-PagingDRX
+NB-IoT-Paging-eDRXInfo N ngap.ies id-NB-IoT-Paging-eDRXInfo
+NB-IoT-DefaultPagingDRX N ngap.ies id-NB-IoT-DefaultPagingDRX
+Enhanced-CoverageRestriction N ngap.ies id-Enhanced-CoverageRestriction
+Extended-ConnectedTime N ngap.ies id-Extended-ConnectedTime
+PagingAssisDataforCEcapabUE N ngap.ies id-PagingAssisDataforCEcapabUE
+WUS-Assistance-Information N ngap.ies id-WUS-Assistance-Information
+UE-DifferentiationInfo N ngap.ies id-UE-DifferentiationInfo
+NB-IoT-UEPriority N ngap.ies id-NB-IoT-UEPriority
+UL-CP-SecurityInformation N ngap.ies id-UL-CP-SecurityInformation
+DL-CP-SecurityInformation N ngap.ies id-DL-CP-SecurityInformation
+TAI N ngap.ies id-TAI
+LTEV2XServicesAuthorized N ngap.ies id-LTEV2XServicesAuthorized
+NRV2XServicesAuthorized N ngap.ies id-NRV2XServicesAuthorized
+LTEUESidelinkAggregateMaximumBitrate N ngap.ies id-LTEUESidelinkAggregateMaximumBitrate
+NRUESidelinkAggregateMaximumBitrate N ngap.ies id-NRUESidelinkAggregateMaximumBitrate
+PC5QoSParameters N ngap.ies id-PC5QoSParameters
+CEmodeBrestricted N ngap.ies id-CEmodeBrestricted
+EUTRA-PagingeDRXInformation N ngap.ies id-EUTRA-PagingeDRXInformation
+CEmodeBSupport-Indicator N ngap.ies id-CEmodeBSupport-Indicator
+LTEM-Indication N ngap.ies id-LTEM-Indication
+EndIndication N ngap.ies id-EndIndication
+EDT-Session N ngap.ies id-EDT-Session
+UECapabilityInfoRequest N ngap.ies id-UECapabilityInfoRequest
+PDUSessionResourceFailedToResumeListRESReq N ngap.ies id-PDUSessionResourceFailedToResumeListRESReq
+PDUSessionResourceFailedToResumeListRESRes N ngap.ies id-PDUSessionResourceFailedToResumeListRESRes
+PDUSessionResourceSuspendListSUSReq N ngap.ies id-PDUSessionResourceSuspendListSUSReq
+PDUSessionResourceResumeListRESReq N ngap.ies id-PDUSessionResourceResumeListRESReq
+PDUSessionResourceResumeListRESRes N ngap.ies id-PDUSessionResourceResumeListRESRes
+UE-UP-CIoT-Support N ngap.ies id-UE-UP-CIoT-Support
+Suspend-Request-Indication N ngap.ies id-Suspend-Request-Indication
+Suspend-Response-Indication N ngap.ies id-Suspend-Response-Indication
+RRCEstablishmentCause N ngap.ies id-RRC-Resume-Cause
+RGLevelWirelineAccessCharacteristics N ngap.ies id-RGLevelWirelineAccessCharacteristics
+W-AGFIdentityInformation N ngap.ies id-W-AGFIdentityInformation
+GlobalTNGF-ID N ngap.ies id-GlobalTNGF-ID
+GlobalTWIF-ID N ngap.ies id-GlobalTWIF-ID
+GlobalW-AGF-ID N ngap.ies id-GlobalW-AGF-ID
+UserLocationInformationW-AGF N ngap.ies id-UserLocationInformationW-AGF
+UserLocationInformationTNGF N ngap.ies id-UserLocationInformationTNGF
+AuthenticatedIndication N ngap.ies id-AuthenticatedIndication
+TNGFIdentityInformation N ngap.ies id-TNGFIdentityInformation
+TWIFIdentityInformation N ngap.ies id-TWIFIdentityInformation
+UserLocationInformationTWIF N ngap.ies id-UserLocationInformationTWIF
+PLMNIdentity N ngap.ies id-SelectedPLMNIdentity
+IntersystemSONConfigurationTransfer N ngap.ies id-IntersystemSONConfigurationTransferDL
+IntersystemSONConfigurationTransfer N ngap.ies id-IntersystemSONConfigurationTransferUL
+SONInformationReport N ngap.ies id-SONInformationReport
+MDTPLMNList N ngap.ies id-ManagementBasedMDTPLMNList
+PrivacyIndicator N ngap.ies id-PrivacyIndicator
+URI-address N ngap.ies id-TraceCollectionEntityURI
+NPN-AccessInformation N ngap.ies id-NPN-AccessInformation
+TargettoSource-Failure-TransparentContainer N ngap.ies id-TargettoSource-Failure-TransparentContainer
+UERadioCapabilityID N ngap.ies id-UERadioCapabilityID
+UERadioCapability N ngap.ies id-UERadioCapability-EUTRA-Format
+EarlyStatusTransfer-TransparentContainer N ngap.ies id-EarlyStatusTransfer-TransparentContainer
+NotifySourceNGRANNode N ngap.ies id-NotifySourceNGRANNode
+Extended-RANNodeName N ngap.ies id-Extended-RANNodeName
+Extended-AMFName N ngap.ies id-Extended-AMFName
+GlobalCable-ID N ngap.ies id-GlobalCable-ID
+IntersystemSONInformationRequest N ngap.ies id-IntersystemSONInformationRequest
+IntersystemSONInformationReply N ngap.ies id-IntersystemSONInformationReply
+IntersystemCellStateIndication N ngap.ies id-EnergySavingIndication
+IntersystemResourceStatusReport N ngap.ies id-IntersystemResourceStatusUpdate
+SuccessfulHandoverReportList N ngap.ies id-SuccessfulHandoverReportList
+MBS-AreaSessionID N ngap.ies id-MBS-AreaSessionID
+MBS-QoSFlowsToBeSetupList N ngap.ies id-MBS-QoSFlowsToBeSetupModList
+MBS-ServiceArea N ngap.ies id-MBS-ServiceArea
+MBS-SessionID N ngap.ies id-MBS-SessionID
+MBS-DistributionReleaseRequestTransfer-OCTET-STRING N ngap.ies id-MBS-DistributionReleaseRequestTransfer
+MBS-DistributionSetupRequestTransfer-OCTET-STRING N ngap.ies id-MBS-DistributionSetupRequestTransfer
+MBS-DistributionSetupResponseTransfer-OCTET-STRING N ngap.ies id-MBS-DistributionSetupResponseTransfer
+MBS-DistributionSetupUnsuccessfulTransfer-OCTET-STRING N ngap.ies id-MBS-DistributionSetupUnsuccessfulTransfer
+MulticastSessionActivationRequestTransfer-OCTET-STRING N ngap.ies id-MulticastSessionActivationRequestTransfer
+MulticastSessionDeactivationRequestTransfer-OCTET-STRING N ngap.ies id-MulticastSessionDeactivationRequestTransfer
+MulticastSessionUpdateRequestTransfer-OCTET-STRING N ngap.ies id-MulticastSessionUpdateRequestTransfer
+MulticastGroupPagingAreaList N ngap.ies id-MulticastGroupPagingAreaList
+MBSSessionSetupOrModFailureTransfer-OCTET-STRING N ngap.ies id-MBSSessionSetupFailureTransfer
+MBSSessionSetupOrModRequestTransfer-OCTET-STRING N ngap.ies id-MBSSessionSetupRequestTransfer
+MBSSessionSetupOrModResponseTransfer-OCTET-STRING N ngap.ies id-MBSSessionSetupResponseTransfer
+MBSSessionToReleaseList N ngap.ies id-MBSSessionToReleaseList
+MBSSessionSetupRequestList N ngap.ies id-MBSSessionSetupRequestList
+MBSSessionSetuporModifyRequestList N ngap.ies id-MBSSessionSetuporModifyRequestList
+TimeSyncAssistanceInfo N ngap.ies id-TimeSyncAssistanceInfo
+QMCConfigInfo N ngap.ies id-QMCConfigInfo
+QMCDeactivation N ngap.ies id-QMCDeactivation
+NR-PagingeDRXInformation N ngap.ies id-NR-PagingeDRXInformation
+RedCapIndication N ngap.ies id-RedCapIndication
+TargetNSSAIInformation N ngap.ies id-TargetNSSAIInformation
+UESliceMaximumBitRateList N ngap.ies id-UESliceMaximumBitRateList
+PagingCause N ngap.ies id-PagingCause
+PEIPSassistanceInformation N ngap.ies id-PEIPSassistanceInformation
+FiveG-ProSeAuthorized N ngap.ies id-FiveG-ProSeAuthorized
+NRUESidelinkAggregateMaximumBitrate N ngap.ies id-FiveG-ProSeUEPC5AggregateMaximumBitRate
+FiveG-ProSePC5QoSParameters N ngap.ies id-FiveG-ProSePC5QoSParameters
+MBSSessionSetupOrModFailureTransfer-OCTET-STRING N ngap.ies id-MBSSessionModificationFailureTransfer
+MBSSessionSetupOrModRequestTransfer-OCTET-STRING N ngap.ies id-MBSSessionModificationRequestTransfer
+MBSSessionSetupOrModResponseTransfer-OCTET-STRING N ngap.ies id-MBSSessionModificationResponseTransfer
+QosFlowListWithCause N ngap.ies id-MBS-QoSFlowToReleaseList
+MBS-SessionTNLInfo5GC N ngap.ies id-MBS-SessionTNLInfo5GC
+MBS-SessionFSAIDList N ngap.ies id-MBS-SessionFSAIDList
+MBSSessionReleaseResponseTransfer-OCTET-STRING N ngap.ies id-MBSSessionReleaseResponseTransfer
+MDTPLMNModificationList N ngap.ies id-ManagementBasedMDTPLMNModificationList
+HFCNode-ID-new N ngap.ies id-HFCNode-ID-new
+GlobalCable-ID-new N ngap.ies id-GlobalCable-ID-new
+TargetHomeENB-ID N ngap.ies id-TargetHomeENB-ID
#NGAP-PROTOCOL-EXTENSION
@@ -1829,7 +2049,7 @@ PagingAssisDataforCEcapabUE N ngap.extension id-Pagin
UERadioCapabilityForPagingOfNB-IoT N ngap.extension id-UERadioCapabilityForPagingOfNB-IoT
AlternativeQoSParaSetList N ngap.extension id-AlternativeQoSParaSetList
AlternativeQoSParaSetIndex N ngap.extension id-CurrentQoSParaSetIndex
-PagingeDRXInformation N ngap.extension id-PagingeDRXInformation
+EUTRA-PagingeDRXInformation N ngap.extension id-EUTRA-PagingeDRXInformation
UEHistoryInformationFromTheUE N ngap.extension id-UEHistoryInformationFromTheUE
MDT-Configuration N ngap.extension id-MDTConfiguration
URI-address N ngap.extension id-TraceCollectionEntityURI
@@ -1851,6 +2071,42 @@ UERadioCapabilityForPaging N ngap.extension id-UERad
ExpectedUEActivityBehaviour N ngap.extension id-PduSessionExpectedUEActivityBehaviour
MicoAllPLMN N ngap.extension id-MicoAllPLMN
QosFlowListWithCause N ngap.extension id-QosFlowFailedToSetupList
+TransportLayerAddress N ngap.extension id-SourceTNLAddrInfo
+ExtendedReportIntervalMDT N ngap.extension id-ExtendedReportIntervalMDT
+SourceNodeID N ngap.extension id-SourceNodeID
+NRNTNTAIInformation N ngap.extension id-NRNTNTAIInformation
+RAN-UE-NGAP-ID N ngap.extension id-UEContextReferenceAtSource
+LastVisitedPSCellList N ngap.extension id-LastVisitedPSCellList
+MBS-SupportIndicator N ngap.extension id-MBS-SupportIndicator
+MBSSessionFailedtoSetupList N ngap.extension id-MBSSessionFailedtoSetupList
+MBSSessionFailedtoSetupList N ngap.extension id-MBSSessionFailedtoSetuporModifyList
+MBSSessionSetupResponseList N ngap.extension id-MBSSessionSetupResponseList
+MBSSessionSetupResponseList N ngap.extension id-MBSSessionSetuporModifyResponseList
+MBS-ActiveSessionInformation-SourcetoTargetList N ngap.extension id-MBS-ActiveSessionInformation-SourcetoTargetList
+MBS-ActiveSessionInformation-TargettoSourceList N ngap.extension id-MBS-ActiveSessionInformation-TargettoSourceList
+OnboardingSupport N ngap.extension id-OnboardingSupport
+SurvivalTime N ngap.extension id-SurvivalTime
+QMCConfigInfo N ngap.extension id-QMCConfigInfo
+PDUSessionPairID N ngap.extension id-PDUSessionPairID
+NR-PagingeDRXInformation N ngap.extension id-NR-PagingeDRXInformation
+M4ReportAmountMDT N ngap.extension id-M4ReportAmount
+M5ReportAmountMDT N ngap.extension id-M5ReportAmount
+M6ReportAmountMDT N ngap.extension id-M6ReportAmount
+M7ReportAmountMDT N ngap.extension id-M7ReportAmount
+IncludeBeamMeasurementsIndication N ngap.extension id-IncludeBeamMeasurementsIndication
+ExcessPacketDelayThresholdConfiguration N ngap.extension id-ExcessPacketDelayThresholdConfiguration
+PagingCauseIndicationForVoiceService N ngap.extension id-PagingCauseIndicationForVoiceService
+PEIPSassistanceInformation N ngap.extension id-PEIPSassistanceInformation
+TAINSAGSupportList N ngap.extension id-TAINSAGSupportList
+TransportLayerAddress N ngap.extension id-SourceNodeTNLAddrInfo
+NGAPIESupportInformationRequestList N ngap.extension id-NGAPIESupportInformationRequestList
+NGAPIESupportInformationResponseList N ngap.extension id-NGAPIESupportInformationResponseList
+EarlyMeasurement N ngap.extension id-EarlyMeasurement
+BeamMeasurementsReportConfiguration N ngap.extension id-BeamMeasurementsReportConfiguration
+TAI N ngap.extension id-TAI
+NR-CGI N ngap.extension id-NR-CGI
+HashedUEIdentityIndexValue N ngap.extension id-HashedUEIdentityIndexValue
+ExtendedMobilityInformation N ngap.extension id-ExtendedMobilityInformation
#NGAP-ELEMENTARY-PROCEDURE
@@ -1862,12 +2118,32 @@ AMFCPRelocationIndication N ngap.proc.imsg id-AMFCPRelocationIndic
AMFStatusIndication N ngap.proc.imsg id-AMFStatusIndication
+BroadcastSessionModificationRequest N ngap.proc.imsg id-BroadcastSessionModification
+BroadcastSessionModificationResponse N ngap.proc.sout id-BroadcastSessionModification
+BroadcastSessionModificationFailure N ngap.proc.uout id-BroadcastSessionModification
+
+BroadcastSessionReleaseRequest N ngap.proc.imsg id-BroadcastSessionRelease
+BroadcastSessionReleaseResponse N ngap.proc.sout id-BroadcastSessionRelease
+
+BroadcastSessionReleaseRequired N ngap.proc.imsg id-BroadcastSessionReleaseRequired
+
+BroadcastSessionSetupRequest N ngap.proc.imsg id-BroadcastSessionSetup
+BroadcastSessionSetupResponse N ngap.proc.sout id-BroadcastSessionSetup
+BroadcastSessionSetupFailure N ngap.proc.uout id-BroadcastSessionSetup
+
CellTrafficTrace N ngap.proc.imsg id-CellTrafficTrace
ConnectionEstablishmentIndication N ngap.proc.imsg id-ConnectionEstablishmentIndication
DeactivateTrace N ngap.proc.imsg id-DeactivateTrace
+DistributionSetupRequest N ngap.proc.imsg id-DistributionSetup
+DistributionSetupResponse N ngap.proc.sout id-DistributionSetup
+DistributionSetupFailure N ngap.proc.uout id-DistributionSetup
+
+DistributionReleaseRequest N ngap.proc.imsg id-DistributionRelease
+DistributionReleaseResponse N ngap.proc.sout id-DistributionRelease
+
DownlinkNASTransport N ngap.proc.imsg id-DownlinkNASTransport
DownlinkNonUEAssociatedNRPPaTransport N ngap.proc.imsg id-DownlinkNonUEAssociatedNRPPaTransport
@@ -1909,6 +2185,19 @@ LocationReportingControl N ngap.proc.imsg id-LocationReportingCon
LocationReportingFailureIndication N ngap.proc.imsg id-LocationReportingFailureIndication
+MulticastSessionActivationRequest N ngap.proc.imsg id-MulticastSessionActivation
+MulticastSessionActivationResponse N ngap.proc.sout id-MulticastSessionActivation
+MulticastSessionActivationFailure N ngap.proc.uout id-MulticastSessionActivation
+
+MulticastSessionDeactivationRequest N ngap.proc.imsg id-MulticastSessionDeactivation
+MulticastSessionDeactivationResponse N ngap.proc.sout id-MulticastSessionDeactivation
+
+MulticastSessionUpdateRequest N ngap.proc.imsg id-MulticastSessionUpdate
+MulticastSessionUpdateResponse N ngap.proc.sout id-MulticastSessionUpdate
+MulticastSessionUpdateFailure N ngap.proc.uout id-MulticastSessionUpdate
+
+MulticastGroupPaging N ngap.proc.imsg id-MulticastGroupPaging
+
NASNonDeliveryIndication N ngap.proc.imsg id-NASNonDeliveryIndication
NGReset N ngap.proc.imsg id-NGReset
@@ -2040,12 +2329,19 @@ HandoverRequestAcknowledgeTransfer S ngap.n2_ie_type "HANDOVER_REQ_A
HandoverResourceAllocationUnsuccessfulTransfer S ngap.n2_ie_type "HANDOVER_RES_ALLOC_FAIL"
SecondaryRATDataUsageReportTransfer S ngap.n2_ie_type "SECONDARY_RAT_USAGE"
PDUSessionResourceModifyIndicationUnsuccessfulTransfer S ngap.n2_ie_type "PDU_RES_MOD_IND_FAIL"
+UEContextResumeRequestTransfer S ngap.n2_ie_type "UE_CONTEXT_RESUME_REQ"
+UEContextResumeResponseTransfer S ngap.n2_ie_type "UE_CONTEXT_RESUME_RSP"
+UEContextSuspendRequestTransfer S ngap.n2_ie_type "UE_CONTEXT_SUSPEND_REQ"
SourceToTarget-TransparentContainer S ngap.n2_ie_type "SRC_TO_TAR_CONTAINER"
TargetToSource-TransparentContainer S ngap.n2_ie_type "TAR_TO_SRC_CONTAINER"
RANStatusTransfer-TransparentContainer S ngap.n2_ie_type "RAN_STATUS_TRANS_CONTAINER"
SONConfigurationTransfer S ngap.n2_ie_type "SON_CONFIG_TRANSFER"
NRPPa-PDU S ngap.n2_ie_type "NRPPA_PDU"
UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPABILITY"
+MBSSessionSetupOrModRequestTransfer S ngap.n2_ie_type "MBS_SES_REQ"
+MBSSessionSetupOrModResponseTransfer S ngap.n2_ie_type "MBS_SES_RSP"
+MBSSessionSetupOrModFailureTransfer S ngap.n2_ie_type "MBS_SES_FAIL"
+MBSSessionReleaseResponseTransfer S ngap.n2_ie_type "MBS_SES_REL_RSP"
#.FN_HDR AMFConfigurationUpdate
set_message_label(actx, MTYPE_AMF_CONFIGURATION_UPDATE);
@@ -2067,6 +2363,42 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB
set_message_label(actx, MTYPE_AMF_STATUS_IND);
set_stats_message_type(actx->pinfo, MTYPE_AMF_STATUS_IND);
+#.FN_HDR BroadcastSessionModificationRequest
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_MODIFICATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_MODIFICATION_REQUEST);
+
+#.FN_HDR BroadcastSessionModificationResponse
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_MODIFICATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_MODIFICATION_RESPONSE);
+
+#.FN_HDR BroadcastSessionModificationFailure
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_MODIFICATION_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_MODIFICATION_FAILURE);
+
+#.FN_HDR BroadcastSessionReleaseRequest
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_RELEASE_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_RELEASE_REQUEST);
+
+#.FN_HDR BroadcastSessionReleaseResponse
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_RELEASE_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_RELEASE_RESPONSE);
+
+#.FN_HDR BroadcastSessionReleaseRequired
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_RELEASE_REQUIRED);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_RELEASE_REQUIRED);
+
+#.FN_HDR BroadcastSessionSetupRequest
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_SETUP_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_SETUP_REQUEST);
+
+#.FN_HDR BroadcastSessionSetupResponse
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_SETUP_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_SETUP_RESPONSE);
+
+#.FN_HDR BroadcastSessionSetupFailure
+ set_message_label(actx, MTYPE_BROADCAST_SESSION_SETUP_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_BROADCAST_SESSION_SETUP_FAILURE);
+
#.FN_HDR CellTrafficTrace
set_message_label(actx, MTYPE_CELL_TRAFFIC_TRACE);
set_stats_message_type(actx->pinfo, MTYPE_CELL_TRAFFIC_TRACE);
@@ -2079,6 +2411,26 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB
set_message_label(actx, MTYPE_DEACTIVATE_TRACE);
set_stats_message_type(actx->pinfo, MTYPE_DEACTIVATE_TRACE);
+#.FN_HDR DistributionSetupRequest
+ set_message_label(actx, MTYPE_DISTRIBUTION_SETUP_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_DISTRIBUTION_SETUP_REQUEST);
+
+#.FN_HDR DistributionSetupResponse
+ set_message_label(actx, MTYPE_DISTRIBUTION_SETUP_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_DISTRIBUTION_SETUP_RESPONSE);
+
+#.FN_HDR DistributionSetupFailure
+ set_message_label(actx, MTYPE_DISTRIBUTION_SETUP_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_DISTRIBUTION_SETUP_FAILURE);
+
+#.FN_HDR DistributionReleaseRequest
+ set_message_label(actx, MTYPE_DISTRIBUTION_RELEASE_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_DISTRIBUTION_RELEASE_REQUEST);
+
+#.FN_HDR DistributionReleaseResponse
+ set_message_label(actx, MTYPE_DISTRIBUTION_RELEASE_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_DISTRIBUTION_RELEASE_RESPONSE);
+
#.FN_HDR DownlinkNASTransport
set_message_label(actx, MTYPE_DOWNLINK_NAS_TRANSPORT);
set_stats_message_type(actx->pinfo, MTYPE_DOWNLINK_NAS_TRANSPORT);
@@ -2175,6 +2527,42 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB
set_message_label(actx, MTYPE_LOCATION_REPORTING_FAILURE_IND);
set_stats_message_type(actx->pinfo, MTYPE_LOCATION_REPORTING_FAILURE_IND);
+#.FN_HDR MulticastSessionActivationRequest
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_ACTIVATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_ACTIVATION_REQUEST);
+
+#.FN_HDR MulticastSessionActivationResponse
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_ACTIVATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_ACTIVATION_RESPONSE);
+
+#.FN_HDR MulticastSessionActivationFailure
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_ACTIVATION_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_ACTIVATION_FAILURE);
+
+#.FN_HDR MulticastSessionDeactivationRequest
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_DEACTIVATION_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_DEACTIVATION_REQUEST);
+
+#.FN_HDR MulticastSessionDeactivationResponse
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_DEACTIVATION_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_DEACTIVATION_RESPONSE);
+
+#.FN_HDR MulticastSessionUpdateRequest
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_UPDATE_REQUEST);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_UPDATE_REQUEST);
+
+#.FN_HDR MulticastSessionUpdateResponse
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_UPDATE_RESPONSE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_UPDATE_RESPONSE);
+
+#.FN_HDR MulticastSessionUpdateFailure
+ set_message_label(actx, MTYPE_MULTICAST_SESSION_UPDATE_FAILURE);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_SESSION_UPDATE_FAILURE);
+
+#.FN_HDR MulticastGroupPaging
+ set_message_label(actx, MTYPE_MULTICAST_GROUP_PAGING);
+ set_stats_message_type(actx->pinfo, MTYPE_MULTICAST_GROUP_PAGING);
+
#.FN_HDR NASNonDeliveryIndication
set_message_label(actx, MTYPE_NAS_NON_DELIVERY_IND);
set_stats_message_type(actx->pinfo, MTYPE_NAS_NON_DELIVERY_IND);
@@ -2435,6 +2823,187 @@ UERadioCapability S ngap.n2_ie_type "UE_RADIO_CAPAB
set_message_label(actx, MTYPE_DOWNLINK_RIM_INFORMATION_TRANSFER);
set_stats_message_type(actx->pinfo, MTYPE_DOWNLINK_RIM_INFORMATION_TRANSFER);
+# SMF related IEs when encapsulated in http2/mime/json
+#.FN_HDR PDUSessionResourceSetupRequestTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceSetupRequestTransfer");
+
+#.FN_HDR PDUSessionResourceSetupResponseTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceSetupResponseTransfer");
+
+#.FN_HDR PDUSessionResourceSetupUnsuccessfulTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceSetupUnsuccessfulTransfer");
+
+#.FN_HDR PDUSessionResourceReleaseCommandTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceReleaseCommandTransfer");
+
+#.FN_HDR PDUSessionResourceReleaseResponseTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceReleaseResponseTransfer");
+
+#.FN_HDR PDUSessionResourceModifyRequestTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyRequestTransfer");
+
+#.FN_HDR PDUSessionResourceModifyResponseTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyResponseTransfer");
+
+#.FN_HDR PDUSessionResourceModifyUnsuccessfulTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyUnsuccessfulTransfer");
+
+#.FN_HDR PDUSessionResourceNotifyTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceNotifyTransfer");
+
+#.FN_HDR PDUSessionResourceNotifyReleasedTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceNotifyReleasedTransfer");
+
+#.FN_HDR PDUSessionResourceModifyIndicationTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyIndicationTransfer");
+
+#.FN_HDR PDUSessionResourceModifyConfirmTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyConfirmTransfer");
+
+#.FN_HDR PathSwitchRequestTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestTransfer");
+
+#.FN_HDR PathSwitchRequestSetupFailedTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestSetupFailedTransfer");
+
+#.FN_HDR PathSwitchRequestAcknowledgeTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestAcknowledgeTransfer");
+
+#.FN_HDR PathSwitchRequestUnsuccessfulTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestUnsuccessfulTransfer");
+
+#.FN_HDR HandoverRequiredTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequiredTransfer");
+
+#.FN_HDR HandoverCommandTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCommandTransfer");
+
+#.FN_HDR HandoverPreparationUnsuccessfulTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverPreparationUnsuccessfulTransfer");
+
+#.FN_HDR HandoverRequestAcknowledgeTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequestAcknowledgeTransfer");
+
+#.FN_HDR HandoverResourceAllocationUnsuccessfulTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverResourceAllocationUnsuccessfulTransfer");
+
+#.FN_HDR SecondaryRATDataUsageReportTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecondaryRATDataUsageReportTransfer");
+
+#.FN_HDR PDUSessionResourceModifyIndicationUnsuccessfulTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PDUSessionResourceModifyIndicationUnsuccessfulTransfer");
+
+#.FN_HDR UEContextResumeRequestTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeRequestTransfer");
+
+#.FN_HDR UEContextResumeResponseTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeResponseTransfer");
+
+#.FN_HDR UEContextSuspendRequestTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendRequestTransfer");
+
+#.FN_HDR SourceToTarget-TransparentContainer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SourceToTarget-TransparentContainer");
+
+#.FN_HDR TargetToSource-TransparentContainer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TargetToSource-TransparentContainer");
+
+#.FN_HDR RANStatusTransfer-TransparentContainer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANStatusTransfer-TransparentContainer");
+
+#.FN_HDR SONConfigurationTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SONConfigurationTransfer");
+
+#.FN_HDR NRPPa-PDU
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NRPPa-PDU");
+
+#.FN_HDR UERadioCapability
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapability");
+
+#.FN_HDR MBSSessionSetupOrModRequestTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBSSessionSetupOrModRequestTransfer");
+
+#.FN_HDR MBSSessionSetupOrModResponseTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBSSessionSetupOrModResponseTransfer");
+
+#.FN_HDR MBSSessionSetupOrModFailureTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBSSessionSetupOrModFailureTransfer");
+
+#.FN_HDR MBSSessionReleaseResponseTransfer
+ tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_json, 0);
+ if (json_tvb)
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBSSessionReleaseResponseTransfer");
+
#
# Editor modelines - https://www.wireshark.org/tools/modelines.html
#
diff --git a/epan/dissectors/asn1/ngap/packet-ngap-template.c b/epan/dissectors/asn1/ngap/packet-ngap-template.c
index 5f218949aa..5f8e0481e7 100644
--- a/epan/dissectors/asn1/ngap/packet-ngap-template.c
+++ b/epan/dissectors/asn1/ngap/packet-ngap-template.c
@@ -1,6 +1,7 @@
/* packet-ngap.c
* Routines for NG-RAN NG Application Protocol (NGAP) packet dissection
* Copyright 2018, Anders Broman <anders.broman@ericsson.com>
+ * Copyright 2018-2024, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -8,7 +9,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * References: 3GPP TS 38.413 v16.7.0 (2021-10)
+ * References: 3GPP TS 38.413 v17.7.0 (2023-12)
*/
#include "config.h"
@@ -40,7 +41,7 @@
#include "packet-cell_broadcast.h"
#include "packet-ntp.h"
#include "packet-gsm_a_common.h"
-#include "packet-http.h"
+#include "packet-media-type.h"
#define PNAME "NG Application Protocol"
#define PSNAME "NGAP"
@@ -63,121 +64,127 @@ static dissector_handle_t lte_rrc_ue_radio_paging_info_nb_handle;
static dissector_handle_t lte_rrc_ue_radio_access_cap_info_nb_handle;
static dissector_handle_t nrppa_handle;
-static int proto_json = -1;
+static int proto_json;
#include "packet-ngap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_ngap = -1;
-static int hf_ngap_transportLayerAddressIPv4 = -1;
-static int hf_ngap_transportLayerAddressIPv6 = -1;
-static int hf_ngap_SerialNumber_gs = -1;
-static int hf_ngap_SerialNumber_msg_code = -1;
-static int hf_ngap_SerialNumber_upd_nb = -1;
-static int hf_ngap_WarningType_value = -1;
-static int hf_ngap_WarningType_emergency_user_alert = -1;
-static int hf_ngap_WarningType_popup = -1;
-static int hf_ngap_WarningMessageContents_nb_pages = -1;
-static int hf_ngap_WarningMessageContents_decoded_page = -1;
-static int hf_ngap_NGRANTraceID_TraceID = -1;
-static int hf_ngap_NGRANTraceID_TraceRecordingSessionReference = -1;
-static int hf_ngap_InterfacesToTrace_NG_C = -1;
-static int hf_ngap_InterfacesToTrace_Xn_C = -1;
-static int hf_ngap_InterfacesToTrace_Uu = -1;
-static int hf_ngap_InterfacesToTrace_F1_C = -1;
-static int hf_ngap_InterfacesToTrace_E1 = -1;
-static int hf_ngap_InterfacesToTrace_reserved = -1;
-static int hf_ngap_RATRestrictionInformation_e_UTRA = -1;
-static int hf_ngap_RATRestrictionInformation_nR = -1;
-static int hf_ngap_RATRestrictionInformation_nR_unlicensed = -1;
-static int hf_ngap_RATRestrictionInformation_reserved = -1;
-static int hf_ngap_primaryRATRestriction_e_UTRA = -1;
-static int hf_ngap_primaryRATRestriction_nR = -1;
-static int hf_ngap_primaryRATRestriction_nR_unlicensed = -1;
-static int hf_ngap_primaryRATRestriction_reserved = -1;
-static int hf_ngap_secondaryRATRestriction_e_UTRA = -1;
-static int hf_ngap_secondaryRATRestriction_nR = -1;
-static int hf_ngap_secondaryRATRestriction_e_UTRA_unlicensed = -1;
-static int hf_ngap_secondaryRATRestriction_nR_unlicensed = -1;
-static int hf_ngap_secondaryRATRestriction_reserved = -1;
-static int hf_ngap_NrencryptionAlgorithms_nea1 = -1;
-static int hf_ngap_NrencryptionAlgorithms_nea2 = -1;
-static int hf_ngap_NrencryptionAlgorithms_nea3 = -1;
-static int hf_ngap_NrencryptionAlgorithms_reserved = -1;
-static int hf_ngap_NrintegrityProtectionAlgorithms_nia1 = -1;
-static int hf_ngap_NrintegrityProtectionAlgorithms_nia2 = -1;
-static int hf_ngap_NrintegrityProtectionAlgorithms_nia3 = -1;
-static int hf_ngap_NrintegrityProtectionAlgorithms_reserved = -1;
-static int hf_ngap_EUTRAencryptionAlgorithms_eea1 = -1;
-static int hf_ngap_EUTRAencryptionAlgorithms_eea2 = -1;
-static int hf_ngap_EUTRAencryptionAlgorithms_eea3 = -1;
-static int hf_ngap_EUTRAencryptionAlgorithms_reserved = -1;
-static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia1 = -1;
-static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia2 = -1;
-static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia3 = -1;
-static int hf_ngap_EUTRAintegrityProtectionAlgorithms_reserved = -1;
-static int hf_ngap_MeasurementsToActivate_M1 = -1;
-static int hf_ngap_MeasurementsToActivate_M2 = -1;
-static int hf_ngap_MeasurementsToActivate_M4 = -1;
-static int hf_ngap_MeasurementsToActivate_M5 = -1;
-static int hf_ngap_MeasurementsToActivate_M6 = -1;
-static int hf_ngap_MeasurementsToActivate_M7 = -1;
-static int hf_ngap_MeasurementsToActivate_M1_from_event = -1;
-static int hf_ngap_MeasurementsToActivate_reserved = -1;
-static int hf_ngap_MDT_Location_Information_GNSS = -1;
-static int hf_ngap_MDT_Location_Information_reserved = -1;
-static int hf_ngap_GlobalCable_ID_str = -1;
-static int hf_ngap_UpdateFeedback_CN_PDB_DL = -1;
-static int hf_ngap_UpdateFeedback_CN_PDB_UL = -1;
-static int hf_ngap_UpdateFeedback_reserved = -1;
+static int proto_ngap;
+static int hf_ngap_transportLayerAddressIPv4;
+static int hf_ngap_transportLayerAddressIPv6;
+static int hf_ngap_SerialNumber_gs;
+static int hf_ngap_SerialNumber_msg_code;
+static int hf_ngap_SerialNumber_upd_nb;
+static int hf_ngap_WarningType_value;
+static int hf_ngap_WarningType_emergency_user_alert;
+static int hf_ngap_WarningType_popup;
+static int hf_ngap_WarningMessageContents_nb_pages;
+static int hf_ngap_WarningMessageContents_decoded_page;
+static int hf_ngap_NGRANTraceID_TraceID;
+static int hf_ngap_NGRANTraceID_TraceRecordingSessionReference;
+static int hf_ngap_InterfacesToTrace_NG_C;
+static int hf_ngap_InterfacesToTrace_Xn_C;
+static int hf_ngap_InterfacesToTrace_Uu;
+static int hf_ngap_InterfacesToTrace_F1_C;
+static int hf_ngap_InterfacesToTrace_E1;
+static int hf_ngap_InterfacesToTrace_reserved;
+static int hf_ngap_RATRestrictionInformation_e_UTRA;
+static int hf_ngap_RATRestrictionInformation_nR;
+static int hf_ngap_RATRestrictionInformation_nR_unlicensed;
+static int hf_ngap_RATRestrictionInformation_reserved;
+static int hf_ngap_primaryRATRestriction_e_UTRA;
+static int hf_ngap_primaryRATRestriction_nR;
+static int hf_ngap_primaryRATRestriction_nR_unlicensed;
+static int hf_ngap_primaryRATRestriction_nR_LEO;
+static int hf_ngap_primaryRATRestriction_nR_MEO;
+static int hf_ngap_primaryRATRestriction_nR_GEO;
+static int hf_ngap_primaryRATRestriction_nR_OTHERSAT;
+static int hf_ngap_primaryRATRestriction_reserved;
+static int hf_ngap_secondaryRATRestriction_e_UTRA;
+static int hf_ngap_secondaryRATRestriction_nR;
+static int hf_ngap_secondaryRATRestriction_e_UTRA_unlicensed;
+static int hf_ngap_secondaryRATRestriction_nR_unlicensed;
+static int hf_ngap_secondaryRATRestriction_reserved;
+static int hf_ngap_NrencryptionAlgorithms_nea1;
+static int hf_ngap_NrencryptionAlgorithms_nea2;
+static int hf_ngap_NrencryptionAlgorithms_nea3;
+static int hf_ngap_NrencryptionAlgorithms_reserved;
+static int hf_ngap_NrintegrityProtectionAlgorithms_nia1;
+static int hf_ngap_NrintegrityProtectionAlgorithms_nia2;
+static int hf_ngap_NrintegrityProtectionAlgorithms_nia3;
+static int hf_ngap_NrintegrityProtectionAlgorithms_reserved;
+static int hf_ngap_EUTRAencryptionAlgorithms_eea1;
+static int hf_ngap_EUTRAencryptionAlgorithms_eea2;
+static int hf_ngap_EUTRAencryptionAlgorithms_eea3;
+static int hf_ngap_EUTRAencryptionAlgorithms_reserved;
+static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia1;
+static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia2;
+static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia3;
+static int hf_ngap_EUTRAintegrityProtectionAlgorithms_eia7;
+static int hf_ngap_EUTRAintegrityProtectionAlgorithms_reserved;
+static int hf_ngap_MeasurementsToActivate_M1;
+static int hf_ngap_MeasurementsToActivate_M2;
+static int hf_ngap_MeasurementsToActivate_M4;
+static int hf_ngap_MeasurementsToActivate_M5;
+static int hf_ngap_MeasurementsToActivate_M6;
+static int hf_ngap_MeasurementsToActivate_M7;
+static int hf_ngap_MeasurementsToActivate_M1_from_event;
+static int hf_ngap_MeasurementsToActivate_reserved;
+static int hf_ngap_MDT_Location_Information_GNSS;
+static int hf_ngap_MDT_Location_Information_reserved;
+static int hf_ngap_GlobalCable_ID_str;
+static int hf_ngap_UpdateFeedback_CN_PDB_DL;
+static int hf_ngap_UpdateFeedback_CN_PDB_UL;
+static int hf_ngap_UpdateFeedback_reserved;
#include "packet-ngap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_ngap = -1;
-static gint ett_ngap_TransportLayerAddress = -1;
-static gint ett_ngap_DataCodingScheme = -1;
-static gint ett_ngap_SerialNumber = -1;
-static gint ett_ngap_WarningType = -1;
-static gint ett_ngap_WarningMessageContents = -1;
-static gint ett_ngap_PLMNIdentity = -1;
-static gint ett_ngap_NGAP_Message = -1;
-static gint ett_ngap_NGRANTraceID = -1;
-static gint ett_ngap_InterfacesToTrace = -1;
-static gint ett_ngap_SourceToTarget_TransparentContainer = -1;
-static gint ett_ngap_TargetToSource_TransparentContainer = -1;
-static gint ett_ngap_RRCContainer = -1;
-static gint ett_ngap_RATRestrictionInformation = -1;
-static gint ett_ngap_primaryRATRestriction = -1;
-static gint ett_ngap_secondaryRATRestriction = -1;
-static gint ett_ngap_NrencryptionAlgorithms = -1;
-static gint ett_ngap_NrintegrityProtectionAlgorithms = -1;
-static gint ett_ngap_EUTRAencryptionAlgorithms = -1;
-static gint ett_ngap_EUTRAintegrityProtectionAlgorithms = -1;
-static gint ett_ngap_UERadioCapabilityForPagingOfNR = -1;
-static gint ett_ngap_UERadioCapabilityForPagingOfEUTRA = -1;
-static gint ett_ngap_UERadioCapability = -1;
-static gint ett_ngap_LastVisitedEUTRANCellInformation = -1;
-static gint ett_ngap_LastVisitedUTRANCellInformation = -1;
-static gint ett_ngap_LastVisitedGERANCellInformation = -1;
-static gint ett_ngap_NASSecurityParametersFromNGRAN = -1;
-static gint ett_ngap_NASC = -1;
-static gint ett_ngap_NAS_PDU = -1;
-static gint ett_ngap_EN_DCSONConfigurationTransfer = -1;
-static gint ett_ngap_BurstArrivalTime = -1;
-static gint ett_ngap_CoverageEnhancementLevel = -1;
-static gint ett_ngap_MDTModeEutra = -1;
-static gint ett_ngap_MeasurementsToActivate = -1;
-static gint ett_ngap_MDT_Location_Information = -1;
-static gint ett_ngap_NRMobilityHistoryReport = -1;
-static gint ett_ngap_LTEUERLFReportContainer = -1;
-static gint ett_ngap_NRUERLFReportContainer = -1;
-static gint ett_ngap_TargettoSource_Failure_TransparentContainer = -1;
-static gint ett_ngap_UERadioCapabilityForPagingOfNB_IoT = -1;
-static gint ett_ngap_GlobalCable_ID = -1;
-static gint ett_ngap_UpdateFeedback = -1;
+static gint ett_ngap;
+static gint ett_ngap_TransportLayerAddress;
+static gint ett_ngap_DataCodingScheme;
+static gint ett_ngap_SerialNumber;
+static gint ett_ngap_WarningType;
+static gint ett_ngap_WarningMessageContents;
+static gint ett_ngap_PLMNIdentity;
+static gint ett_ngap_NGAP_Message;
+static gint ett_ngap_NGRANTraceID;
+static gint ett_ngap_InterfacesToTrace;
+static gint ett_ngap_SourceToTarget_TransparentContainer;
+static gint ett_ngap_TargetToSource_TransparentContainer;
+static gint ett_ngap_RRCContainer;
+static gint ett_ngap_RATRestrictionInformation;
+static gint ett_ngap_primaryRATRestriction;
+static gint ett_ngap_secondaryRATRestriction;
+static gint ett_ngap_NrencryptionAlgorithms;
+static gint ett_ngap_NrintegrityProtectionAlgorithms;
+static gint ett_ngap_EUTRAencryptionAlgorithms;
+static gint ett_ngap_EUTRAintegrityProtectionAlgorithms;
+static gint ett_ngap_UERadioCapabilityForPagingOfNR;
+static gint ett_ngap_UERadioCapabilityForPagingOfEUTRA;
+static gint ett_ngap_UERadioCapability;
+static gint ett_ngap_LastVisitedEUTRANCellInformation;
+static gint ett_ngap_LastVisitedUTRANCellInformation;
+static gint ett_ngap_LastVisitedGERANCellInformation;
+static gint ett_ngap_NASSecurityParametersFromNGRAN;
+static gint ett_ngap_NASC;
+static gint ett_ngap_NAS_PDU;
+static gint ett_ngap_EN_DCSONConfigurationTransfer;
+static gint ett_ngap_BurstArrivalTime;
+static gint ett_ngap_CoverageEnhancementLevel;
+static gint ett_ngap_MDTModeEutra;
+static gint ett_ngap_MeasurementsToActivate;
+static gint ett_ngap_MDT_Location_Information;
+static gint ett_ngap_NRMobilityHistoryReport;
+static gint ett_ngap_LTEUERLFReportContainer;
+static gint ett_ngap_NRUERLFReportContainer;
+static gint ett_ngap_TargettoSource_Failure_TransparentContainer;
+static gint ett_ngap_UERadioCapabilityForPagingOfNB_IoT;
+static gint ett_ngap_GlobalCable_ID;
+static gint ett_ngap_UpdateFeedback;
+static gint ett_ngap_successfulHOReportContainer;
#include "packet-ngap-ett.c"
-static expert_field ei_ngap_number_pages_le15 = EI_INIT;
+static expert_field ei_ngap_number_pages_le15;
enum{
INITIATING_MESSAGE,
@@ -194,7 +201,7 @@ static const guint8 *st_str_packet_types = "NGAP Packet Types";
static int st_node_packets = -1;
static int st_node_packet_types = -1;
-static int ngap_tap = -1;
+static int ngap_tap;
struct ngap_tap_t {
gint ngap_mtype;
@@ -205,200 +212,245 @@ struct ngap_tap_t {
#define MTYPE_AMF_CONFIGURATION_UPDATE_FAILURE 3
#define MTYPE_AMF_CP_RELOCATION_IND 4
#define MTYPE_AMF_STATUS_IND 5
-#define MTYPE_CELL_TRAFFIC_TRACE 6
-#define MTYPE_CONNECTION_ESTAB_IND 7
-#define MTYPE_DEACTIVATE_TRACE 8
-#define MTYPE_DOWNLINK_NAS_TRANSPORT 9
-#define MTYPE_DOWNLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT 10
-#define MTYPE_DOWNLINK_RAN_CONFIGURATION_TRANSFER 11
-#define MTYPE_DOWNLINK_RAN_EARLY_STATUS_TRANSFER 12
-#define MTYPE_DOWNLINK_RAN_STATUS_TRANSFER 13
-#define MTYPE_DOWNLINK_UE_ASSOCIATED_NR_PPA_TRANSPORT 14
-#define MTYPE_ERROR_INDICATION 15
-#define MTYPE_HANDOVER_CANCEL 16
-#define MTYPE_HANDOVER_CANCEL_ACK 17
-#define MTYPE_HANDOVER_NOTIFY 18
-#define MTYPE_HANDOVER_REQUIRED 19
-#define MTYPE_HANDOVER_COMMAND 20
-#define MTYPE_HANDOVER_PREPARATION_FAILURE 21
-#define MTYPE_HANDOVER_REQUEST 22
-#define MTYPE_HANDOVER_REQUEST_ACK 23
-#define MTYPE_HANDOVER_FAILURE 24
-#define MTYPE_HANDOVER_SUCCESS 25
-#define MTYPE_INITIAL_CONTEXT_SETUP_REQUEST 26
-#define MTYPE_INITIAL_CONTEXT_SETUP_RESPONSE 27
-#define MTYPE_INITIAL_CONTEXT_SETUP_FAILURE 28
-#define MTYPE_INITIAL_UE_MESSAGE 29
-#define MTYPE_LOCATION_REPORT 30
-#define MTYPE_LOCATION_REPORTING_CONTROL 31
-#define MTYPE_LOCATION_REPORTING_FAILURE_IND 32
-#define MTYPE_NAS_NON_DELIVERY_IND 33
-#define MTYPE_NG_RESET 34
-#define MTYPE_NG_RESET_ACK 35
-#define MTYPE_NG_SETUP_REQUEST 36
-#define MTYPE_NG_SETUP_RESPONSE 37
-#define MTYPE_NG_SETUP_FAILURE 38
-#define MTYPE_OVERLOAD_START 39
-#define MTYPE_OVERLOAD_STOP 40
-#define MTYPE_PAGING 41
-#define MTYPE_PATH_SWITCH_REQUEST 42
-#define MTYPE_PATH_SWITCH_REQUEST_ACK 43
-#define MTYPE_PATH_SWITCH_REQUEST_FAILURE 44
-#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_REQUEST 45
-#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_RESPONSE 46
-#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_IND 47
-#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_CONFIRM 48
-#define MTYPE_PDU_SESSION_RESOURCE_NOTIFY 49
-#define MTYPE_PDU_SESSION_RESOURCE_RELEASE_COMMAND 50
-#define MTYPE_PDU_SESSION_RESOURCE_RELEASE_RESPONSE 51
-#define MTYPE_PDU_SESSION_RESOURCE_SETUP_REQUEST 52
-#define MTYPE_PDU_SESSION_RESOURCE_SETUP_RESPONSE 53
-#define MTYPE_PRIVATE_MESSAGE 54
-#define MTYPE_PWS_CANCEL_REQUEST 55
-#define MTYPE_PWS_CANCEL_RESPONSE 56
-#define MTYPE_PWS_FAILURE_INDICATION 57
-#define MTYPE_PWS_RESTART_INDICATION 58
-#define MTYPE_RAN_CONFIGURATION_UPDATE 59
-#define MTYPE_RAN_CONFIGURATION_UPDATE_ACK 60
-#define MTYPE_RAN_CONFIGURATION_UPDATE_FAILURE 61
-#define MTYPE_RAN_CP_RELOCATION_IND 62
-#define MTYPE_REROUTE_NAS_REQUEST 63
-#define MTYPE_RETRIEVE_UE_INFORMATION 64
-#define MTYPE_RRC_INACTIVE_TRANSITION_REPORT 65
-#define MTYPE_SECONDARY_RAT_DATA_USAGE_REPORT 66
-#define MTYPE_TRACE_FAILURE_IND 67
-#define MTYPE_TRACE_START 68
-#define MTYPE_UE_CONTEXT_MODIFICATION_REQUEST 69
-#define MTYPE_UE_CONTEXT_MODIFICATION_RESPONSE 70
-#define MTYPE_UE_CONTEXT_MODIFICATION_FAILURE 71
-#define MTYPE_UE_CONTEXT_RELEASE_COMMAND 72
-#define MTYPE_UE_CONTEXT_RELEASE_COMPLETE 73
-#define MTYPE_UE_CONTEXT_RELEASE_REQUEST 74
-#define MTYPE_UE_CONTEXT_RESUME_REQUEST 75
-#define MTYPE_UE_CONTEXT_RESUME_RESPONSE 76
-#define MTYPE_UE_CONTEXT_RESUME_FAILURE 77
-#define MTYPE_UE_CONTEXT_SUSPEND_REQUEST 78
-#define MTYPE_UE_CONTEXT_SUSPEND_RESPONSE 79
-#define MTYPE_UE_CONTEXT_SUSPEND_FAILURE 80
-#define MTYPE_UE_INFORMATION_TRANSFER 81
-#define MTYPE_UE_RADIO_CAPABILITY_CHECK_REQUEST 82
-#define MTYPE_UE_RADIO_CAPABILITY_CHECK_RESPONSE 83
-#define MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST 84
-#define MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE 85
-#define MTYPE_UE_RADIO_CAPABILITY_INFO_IND 86
-#define MTYPE_UE_TN_LAB_BINDING_RELEASE_REQUEST 87
-#define MTYPE_UPLINK_NAS_TRANSPORT 88
-#define MTYPE_UPLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT 89
-#define MTYPE_UPLINK_RAN_CONFIGURATION_TRANSFER 90
-#define MTYPE_UPLINK_RAN_EARLY_STATUS_TRANSFER 91
-#define MTYPE_UPLINK_RAN_STATUS_TRANSFER 92
-#define MTYPE_UPLINK_UE_ASSOCIATED_NR_PPA_TRANSPORT 93
-#define MTYPE_WRITE_REPLACE_WARNING_REQUEST 94
-#define MTYPE_WRITE_REPLACE_WARNING_RESPONSE 95
-#define MTYPE_UPLINK_RIM_INFORMATION_TRANSFER 96
-#define MTYPE_DOWNLINK_RIM_INFORMATION_TRANSFER 97
+#define MTYPE_BROADCAST_SESSION_MODIFICATION_REQUEST 6
+#define MTYPE_BROADCAST_SESSION_MODIFICATION_RESPONSE 7
+#define MTYPE_BROADCAST_SESSION_MODIFICATION_FAILURE 8
+#define MTYPE_BROADCAST_SESSION_RELEASE_REQUEST 9
+#define MTYPE_BROADCAST_SESSION_RELEASE_RESPONSE 10
+#define MTYPE_BROADCAST_SESSION_RELEASE_REQUIRED 11
+#define MTYPE_BROADCAST_SESSION_SETUP_REQUEST 12
+#define MTYPE_BROADCAST_SESSION_SETUP_RESPONSE 13
+#define MTYPE_BROADCAST_SESSION_SETUP_FAILURE 14
+#define MTYPE_CELL_TRAFFIC_TRACE 15
+#define MTYPE_CONNECTION_ESTAB_IND 16
+#define MTYPE_DEACTIVATE_TRACE 17
+#define MTYPE_DISTRIBUTION_SETUP_REQUEST 18
+#define MTYPE_DISTRIBUTION_SETUP_RESPONSE 19
+#define MTYPE_DISTRIBUTION_SETUP_FAILURE 20
+#define MTYPE_DISTRIBUTION_RELEASE_REQUEST 21
+#define MTYPE_DISTRIBUTION_RELEASE_RESPONSE 22
+#define MTYPE_DOWNLINK_NAS_TRANSPORT 23
+#define MTYPE_DOWNLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT 24
+#define MTYPE_DOWNLINK_RAN_CONFIGURATION_TRANSFER 25
+#define MTYPE_DOWNLINK_RAN_EARLY_STATUS_TRANSFER 26
+#define MTYPE_DOWNLINK_RAN_STATUS_TRANSFER 27
+#define MTYPE_DOWNLINK_UE_ASSOCIATED_NR_PPA_TRANSPORT 28
+#define MTYPE_ERROR_INDICATION 29
+#define MTYPE_HANDOVER_CANCEL 30
+#define MTYPE_HANDOVER_CANCEL_ACK 31
+#define MTYPE_HANDOVER_NOTIFY 32
+#define MTYPE_HANDOVER_REQUIRED 33
+#define MTYPE_HANDOVER_COMMAND 34
+#define MTYPE_HANDOVER_PREPARATION_FAILURE 35
+#define MTYPE_HANDOVER_REQUEST 36
+#define MTYPE_HANDOVER_REQUEST_ACK 37
+#define MTYPE_HANDOVER_FAILURE 38
+#define MTYPE_HANDOVER_SUCCESS 39
+#define MTYPE_INITIAL_CONTEXT_SETUP_REQUEST 40
+#define MTYPE_INITIAL_CONTEXT_SETUP_RESPONSE 41
+#define MTYPE_INITIAL_CONTEXT_SETUP_FAILURE 42
+#define MTYPE_INITIAL_UE_MESSAGE 43
+#define MTYPE_LOCATION_REPORT 44
+#define MTYPE_LOCATION_REPORTING_CONTROL 45
+#define MTYPE_LOCATION_REPORTING_FAILURE_IND 46
+#define MTYPE_MULTICAST_SESSION_ACTIVATION_REQUEST 47
+#define MTYPE_MULTICAST_SESSION_ACTIVATION_RESPONSE 48
+#define MTYPE_MULTICAST_SESSION_ACTIVATION_FAILURE 49
+#define MTYPE_MULTICAST_SESSION_DEACTIVATION_REQUEST 50
+#define MTYPE_MULTICAST_SESSION_DEACTIVATION_RESPONSE 51
+#define MTYPE_MULTICAST_SESSION_UPDATE_REQUEST 52
+#define MTYPE_MULTICAST_SESSION_UPDATE_RESPONSE 53
+#define MTYPE_MULTICAST_SESSION_UPDATE_FAILURE 54
+#define MTYPE_MULTICAST_GROUP_PAGING 55
+#define MTYPE_NAS_NON_DELIVERY_IND 56
+#define MTYPE_NG_RESET 57
+#define MTYPE_NG_RESET_ACK 58
+#define MTYPE_NG_SETUP_REQUEST 59
+#define MTYPE_NG_SETUP_RESPONSE 60
+#define MTYPE_NG_SETUP_FAILURE 61
+#define MTYPE_OVERLOAD_START 62
+#define MTYPE_OVERLOAD_STOP 63
+#define MTYPE_PAGING 64
+#define MTYPE_PATH_SWITCH_REQUEST 65
+#define MTYPE_PATH_SWITCH_REQUEST_ACK 66
+#define MTYPE_PATH_SWITCH_REQUEST_FAILURE 67
+#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_REQUEST 68
+#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_RESPONSE 69
+#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_IND 70
+#define MTYPE_PDU_SESSION_RESOURCE_MODIFY_CONFIRM 71
+#define MTYPE_PDU_SESSION_RESOURCE_NOTIFY 72
+#define MTYPE_PDU_SESSION_RESOURCE_RELEASE_COMMAND 73
+#define MTYPE_PDU_SESSION_RESOURCE_RELEASE_RESPONSE 74
+#define MTYPE_PDU_SESSION_RESOURCE_SETUP_REQUEST 75
+#define MTYPE_PDU_SESSION_RESOURCE_SETUP_RESPONSE 76
+#define MTYPE_PRIVATE_MESSAGE 77
+#define MTYPE_PWS_CANCEL_REQUEST 78
+#define MTYPE_PWS_CANCEL_RESPONSE 79
+#define MTYPE_PWS_FAILURE_INDICATION 80
+#define MTYPE_PWS_RESTART_INDICATION 81
+#define MTYPE_RAN_CONFIGURATION_UPDATE 82
+#define MTYPE_RAN_CONFIGURATION_UPDATE_ACK 83
+#define MTYPE_RAN_CONFIGURATION_UPDATE_FAILURE 84
+#define MTYPE_RAN_CP_RELOCATION_IND 85
+#define MTYPE_REROUTE_NAS_REQUEST 86
+#define MTYPE_RETRIEVE_UE_INFORMATION 87
+#define MTYPE_RRC_INACTIVE_TRANSITION_REPORT 88
+#define MTYPE_SECONDARY_RAT_DATA_USAGE_REPORT 89
+#define MTYPE_TRACE_FAILURE_IND 90
+#define MTYPE_TRACE_START 91
+#define MTYPE_UE_CONTEXT_MODIFICATION_REQUEST 92
+#define MTYPE_UE_CONTEXT_MODIFICATION_RESPONSE 93
+#define MTYPE_UE_CONTEXT_MODIFICATION_FAILURE 94
+#define MTYPE_UE_CONTEXT_RELEASE_COMMAND 95
+#define MTYPE_UE_CONTEXT_RELEASE_COMPLETE 96
+#define MTYPE_UE_CONTEXT_RELEASE_REQUEST 97
+#define MTYPE_UE_CONTEXT_RESUME_REQUEST 98
+#define MTYPE_UE_CONTEXT_RESUME_RESPONSE 99
+#define MTYPE_UE_CONTEXT_RESUME_FAILURE 100
+#define MTYPE_UE_CONTEXT_SUSPEND_REQUEST 101
+#define MTYPE_UE_CONTEXT_SUSPEND_RESPONSE 102
+#define MTYPE_UE_CONTEXT_SUSPEND_FAILURE 103
+#define MTYPE_UE_INFORMATION_TRANSFER 104
+#define MTYPE_UE_RADIO_CAPABILITY_CHECK_REQUEST 105
+#define MTYPE_UE_RADIO_CAPABILITY_CHECK_RESPONSE 106
+#define MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST 107
+#define MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE 108
+#define MTYPE_UE_RADIO_CAPABILITY_INFO_IND 109
+#define MTYPE_UE_TN_LAB_BINDING_RELEASE_REQUEST 110
+#define MTYPE_UPLINK_NAS_TRANSPORT 111
+#define MTYPE_UPLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT 112
+#define MTYPE_UPLINK_RAN_CONFIGURATION_TRANSFER 113
+#define MTYPE_UPLINK_RAN_EARLY_STATUS_TRANSFER 114
+#define MTYPE_UPLINK_RAN_STATUS_TRANSFER 115
+#define MTYPE_UPLINK_UE_ASSOCIATED_NR_PPA_TRANSPORT 116
+#define MTYPE_WRITE_REPLACE_WARNING_REQUEST 117
+#define MTYPE_WRITE_REPLACE_WARNING_RESPONSE 118
+#define MTYPE_UPLINK_RIM_INFORMATION_TRANSFER 119
+#define MTYPE_DOWNLINK_RIM_INFORMATION_TRANSFER 120
/* Value Strings. TODO: ext? */
static const value_string mtype_names[] = {
- { MTYPE_AMF_CONFIGURATION_UPDATE, "AMFConfigurationUpdate" },
- { MTYPE_AMF_CONFIGURATION_UPDATE_ACK, "AMFConfigurationUpdateAcknowledge" },
- { MTYPE_AMF_CONFIGURATION_UPDATE_FAILURE, "AMFConfigurationUpdateFailure" },
- { MTYPE_AMF_CP_RELOCATION_IND, "AMFCPRelocationIndication" },
- { MTYPE_AMF_STATUS_IND, "AMFStatusIndication" },
- { MTYPE_CELL_TRAFFIC_TRACE, "CellTrafficTrace" },
- { MTYPE_CONNECTION_ESTAB_IND, "ConnectionEstablishmentIndication" },
- { MTYPE_DEACTIVATE_TRACE, "DeactivateTrace" },
+ { MTYPE_AMF_CONFIGURATION_UPDATE, "AMFConfigurationUpdate" },
+ { MTYPE_AMF_CONFIGURATION_UPDATE_ACK, "AMFConfigurationUpdateAcknowledge" },
+ { MTYPE_AMF_CONFIGURATION_UPDATE_FAILURE, "AMFConfigurationUpdateFailure" },
+ { MTYPE_AMF_CP_RELOCATION_IND, "AMFCPRelocationIndication" },
+ { MTYPE_AMF_STATUS_IND, "AMFStatusIndication" },
+ { MTYPE_BROADCAST_SESSION_MODIFICATION_REQUEST, "BroadcastSessionModificationRequest" },
+ { MTYPE_BROADCAST_SESSION_MODIFICATION_RESPONSE, "BroadcastSessionModificationResponse" },
+ { MTYPE_BROADCAST_SESSION_MODIFICATION_FAILURE, "BroadcastSessionModificationFailure" },
+ { MTYPE_BROADCAST_SESSION_RELEASE_REQUEST, "BroadcastSessionReleaseRequest" },
+ { MTYPE_BROADCAST_SESSION_RELEASE_RESPONSE, "BroadcastSessionReleaseResponse" },
+ { MTYPE_BROADCAST_SESSION_RELEASE_REQUIRED, "BroadcastSessionReleaseRequired" },
+ { MTYPE_BROADCAST_SESSION_SETUP_REQUEST, "BroadcastSessionSetupRequest" },
+ { MTYPE_BROADCAST_SESSION_SETUP_RESPONSE, "BroadcastSessionSetupResponse" },
+ { MTYPE_BROADCAST_SESSION_SETUP_FAILURE, "BroadcastSessionSetupFailure" },
+ { MTYPE_CELL_TRAFFIC_TRACE, "CellTrafficTrace" },
+ { MTYPE_CONNECTION_ESTAB_IND, "ConnectionEstablishmentIndication" },
+ { MTYPE_DEACTIVATE_TRACE, "DeactivateTrace" },
+ { MTYPE_DISTRIBUTION_SETUP_REQUEST, "DistributionSetupRequest" },
+ { MTYPE_DISTRIBUTION_SETUP_RESPONSE, "DistributionSetupResponse" },
+ { MTYPE_DISTRIBUTION_SETUP_FAILURE, "DistributionSetupFailure" },
+ { MTYPE_DISTRIBUTION_RELEASE_REQUEST, "DistributionReleaseRequest" },
+ { MTYPE_DISTRIBUTION_RELEASE_RESPONSE, "DistributionReleaseResponse" },
{ MTYPE_DOWNLINK_NAS_TRANSPORT, "DownlinkNASTransport" },
{ MTYPE_DOWNLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT, "DownlinkNonUEAssociatedNRPPaTransport" },
{ MTYPE_DOWNLINK_RAN_CONFIGURATION_TRANSFER, "DownlinkRANConfigurationTransfer" },
{ MTYPE_DOWNLINK_RAN_EARLY_STATUS_TRANSFER, "DownlinkRANEarlyStatusTransfer" },
{ MTYPE_DOWNLINK_RAN_STATUS_TRANSFER, "DownlinkRANStatusTransfer" },
{ MTYPE_DOWNLINK_UE_ASSOCIATED_NR_PPA_TRANSPORT, "DownlinkUEAssociatedNRPPaTransport" },
- { MTYPE_ERROR_INDICATION, "ErrorIndication" },
- { MTYPE_HANDOVER_CANCEL, "HandoverCancel" },
- { MTYPE_HANDOVER_CANCEL_ACK, "HandoverCancelAcknowledge" },
- { MTYPE_HANDOVER_NOTIFY, "HandoverNotify" },
- { MTYPE_HANDOVER_REQUIRED, "HandoverRequired" },
- { MTYPE_HANDOVER_COMMAND, "HandoverCommand" },
- { MTYPE_HANDOVER_PREPARATION_FAILURE, "HandoverPreparationFailure" },
- { MTYPE_HANDOVER_REQUEST, "HandoverRequest" },
- { MTYPE_HANDOVER_REQUEST_ACK, "HandoverRequestAcknowledge" },
- { MTYPE_HANDOVER_FAILURE, "HandoverFailure" },
- { MTYPE_HANDOVER_SUCCESS, "HandoverSuccess" },
- { MTYPE_INITIAL_CONTEXT_SETUP_REQUEST, "InitialContextSetupRequest" },
- { MTYPE_INITIAL_CONTEXT_SETUP_RESPONSE, "InitialContextSetupResponse" },
- { MTYPE_INITIAL_CONTEXT_SETUP_FAILURE, "InitialContextSetupFailure" },
- { MTYPE_INITIAL_CONTEXT_SETUP_FAILURE, "InitialContextSetupFailure" },
- { MTYPE_INITIAL_UE_MESSAGE, "InitialUEMessage" },
- { MTYPE_LOCATION_REPORT, "LocationReport" },
- { MTYPE_LOCATION_REPORTING_CONTROL, "LocationReportingControl" },
- { MTYPE_LOCATION_REPORTING_FAILURE_IND, "LocationReportingFailureIndication" },
- { MTYPE_NAS_NON_DELIVERY_IND, "NASNonDeliveryIndication" },
- { MTYPE_NG_RESET, "NGReset" },
- { MTYPE_NG_RESET_ACK, "NGResetAcknowledge" },
- { MTYPE_NG_SETUP_REQUEST, "NGSetupRequest" },
- { MTYPE_NG_SETUP_RESPONSE, "NGSetupResponse" },
- { MTYPE_NG_SETUP_FAILURE, "NGSetupFailure" },
- { MTYPE_OVERLOAD_START, "OverloadStart" },
- { MTYPE_OVERLOAD_STOP, "OverloadStop" },
- { MTYPE_PAGING, "Paging" },
- { MTYPE_PATH_SWITCH_REQUEST, "PathSwitchRequest" },
- { MTYPE_PATH_SWITCH_REQUEST_ACK, "PathSwitchRequestAcknowledge" },
- { MTYPE_PATH_SWITCH_REQUEST_FAILURE, "PathSwitchRequestFailure" },
- { MTYPE_PDU_SESSION_RESOURCE_MODIFY_REQUEST, "PDUSessionResourceModifyRequest" },
- { MTYPE_PDU_SESSION_RESOURCE_MODIFY_RESPONSE, "PDUSessionResourceModifyResponse" },
- { MTYPE_PDU_SESSION_RESOURCE_MODIFY_IND, "PDUSessionResourceModifyIndication" },
- { MTYPE_PDU_SESSION_RESOURCE_MODIFY_CONFIRM, "PDUSessionResourceModifyConfirm" },
- { MTYPE_PDU_SESSION_RESOURCE_NOTIFY, "PDUSessionResourceNotify" },
- { MTYPE_PDU_SESSION_RESOURCE_RELEASE_COMMAND, "PDUSessionResourceReleaseCommand" },
- { MTYPE_PDU_SESSION_RESOURCE_RELEASE_RESPONSE, "PDUSessionResourceReleaseResponse" },
- { MTYPE_PDU_SESSION_RESOURCE_SETUP_REQUEST, "PDUSessionResourceSetupRequest" },
- { MTYPE_PDU_SESSION_RESOURCE_SETUP_RESPONSE, "PDUSessionResourceSetupResponse" },
- { MTYPE_PRIVATE_MESSAGE, "PrivateMessage" },
- { MTYPE_PWS_CANCEL_REQUEST, "PWSCancelRequest" },
- { MTYPE_PWS_CANCEL_RESPONSE, "PWSCancelResponse" },
- { MTYPE_PWS_FAILURE_INDICATION, "PWSFailureIndication" },
- { MTYPE_PWS_RESTART_INDICATION, "PWSRestartIndication" },
- { MTYPE_RAN_CONFIGURATION_UPDATE, "RANConfigurationUpdate" },
- { MTYPE_RAN_CONFIGURATION_UPDATE_ACK, "RANConfigurationUpdateAcknowledge" },
- { MTYPE_RAN_CONFIGURATION_UPDATE_FAILURE, "RANConfigurationUpdateFailure" },
- { MTYPE_RAN_CP_RELOCATION_IND, "RANCPRelocationIndication" },
- { MTYPE_REROUTE_NAS_REQUEST, "RerouteNASRequest" },
- { MTYPE_RETRIEVE_UE_INFORMATION, "RetrieveUEInformation" },
- { MTYPE_RRC_INACTIVE_TRANSITION_REPORT, "RRCInactiveTransitionReport" },
- { MTYPE_SECONDARY_RAT_DATA_USAGE_REPORT, "SecondaryRATDataUsageReport" },
- { MTYPE_TRACE_FAILURE_IND, "TraceFailureIndication" },
- { MTYPE_TRACE_START, "TraceStart" },
- { MTYPE_UE_CONTEXT_MODIFICATION_REQUEST, "UEContextModificationRequest" },
- { MTYPE_UE_CONTEXT_MODIFICATION_RESPONSE, "UEContextModificationResponse" },
- { MTYPE_UE_CONTEXT_MODIFICATION_FAILURE, "UEContextModificationFailure" },
- { MTYPE_UE_CONTEXT_RELEASE_COMMAND, "UEContextReleaseCommand" },
- { MTYPE_UE_CONTEXT_RELEASE_COMPLETE, "UEContextReleaseComplete" },
- { MTYPE_UE_CONTEXT_RELEASE_REQUEST, "UEContextReleaseRequest" },
- { MTYPE_UE_CONTEXT_RESUME_REQUEST, "UEContextResumeRequest" },
- { MTYPE_UE_CONTEXT_RESUME_RESPONSE, "UEContextResumeResponse" },
- { MTYPE_UE_CONTEXT_RESUME_FAILURE, "UEContextResumeFailure" },
- { MTYPE_UE_CONTEXT_SUSPEND_REQUEST, "UEContextSuspendRequest" },
- { MTYPE_UE_CONTEXT_SUSPEND_RESPONSE, "UEContextSuspendResponse" },
- { MTYPE_UE_CONTEXT_SUSPEND_FAILURE, "UEContextSuspendFailure" },
- { MTYPE_UE_INFORMATION_TRANSFER, "UEInformationTransfer" },
- { MTYPE_UE_RADIO_CAPABILITY_CHECK_REQUEST, "UERadioCapabilityCheckRequest" },
- { MTYPE_UE_RADIO_CAPABILITY_CHECK_RESPONSE, "UERadioCapabilityCheckResponse" },
- { MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST, "UERadioCapabilityIDMappingRequest" },
- { MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE, "UERadioCapabilityIDMappingResponse" },
- { MTYPE_UE_RADIO_CAPABILITY_INFO_IND, "UERadioCapabilityInfoIndication" },
- { MTYPE_UE_TN_LAB_BINDING_RELEASE_REQUEST, "UETNLABindingReleaseRequest" },
- { MTYPE_UPLINK_NAS_TRANSPORT, "UplinkNASTransport" },
- { MTYPE_UPLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT, "UplinkNonUEAssociatedNRPPaTransport" },
- { MTYPE_UPLINK_RAN_CONFIGURATION_TRANSFER, "UplinkRANConfigurationTransfer" },
- { MTYPE_UPLINK_RAN_EARLY_STATUS_TRANSFER, "UplinkRANEarlyStatusTransfer" },
- { MTYPE_UPLINK_RAN_STATUS_TRANSFER, "UplinkRANStatusTransfer" },
+ { MTYPE_ERROR_INDICATION, "ErrorIndication" },
+ { MTYPE_HANDOVER_CANCEL, "HandoverCancel" },
+ { MTYPE_HANDOVER_CANCEL_ACK, "HandoverCancelAcknowledge" },
+ { MTYPE_HANDOVER_NOTIFY, "HandoverNotify" },
+ { MTYPE_HANDOVER_REQUIRED, "HandoverRequired" },
+ { MTYPE_HANDOVER_COMMAND, "HandoverCommand" },
+ { MTYPE_HANDOVER_PREPARATION_FAILURE, "HandoverPreparationFailure" },
+ { MTYPE_HANDOVER_REQUEST, "HandoverRequest" },
+ { MTYPE_HANDOVER_REQUEST_ACK, "HandoverRequestAcknowledge" },
+ { MTYPE_HANDOVER_FAILURE, "HandoverFailure" },
+ { MTYPE_HANDOVER_SUCCESS, "HandoverSuccess" },
+ { MTYPE_INITIAL_CONTEXT_SETUP_REQUEST, "InitialContextSetupRequest" },
+ { MTYPE_INITIAL_CONTEXT_SETUP_RESPONSE, "InitialContextSetupResponse" },
+ { MTYPE_INITIAL_CONTEXT_SETUP_FAILURE, "InitialContextSetupFailure" },
+ { MTYPE_INITIAL_UE_MESSAGE, "InitialUEMessage" },
+ { MTYPE_LOCATION_REPORT, "LocationReport" },
+ { MTYPE_LOCATION_REPORTING_CONTROL, "LocationReportingControl" },
+ { MTYPE_LOCATION_REPORTING_FAILURE_IND, "LocationReportingFailureIndication" },
+ { MTYPE_MULTICAST_SESSION_ACTIVATION_REQUEST, "MulticastSessionActivationRequest" },
+ { MTYPE_MULTICAST_SESSION_ACTIVATION_RESPONSE, "MulticastSessionActivationResponse" },
+ { MTYPE_MULTICAST_SESSION_ACTIVATION_FAILURE, "MulticastSessionActivationFailure" },
+ { MTYPE_MULTICAST_SESSION_DEACTIVATION_REQUEST, "MulticastSessionDeactivationRequest" },
+ { MTYPE_MULTICAST_SESSION_DEACTIVATION_RESPONSE, "MulticastSessionDeactivationResponse" },
+ { MTYPE_MULTICAST_SESSION_UPDATE_REQUEST, "MulticastSessionUpdateRequest" },
+ { MTYPE_MULTICAST_SESSION_UPDATE_RESPONSE, "MulticastSessionUpdateResponse" },
+ { MTYPE_MULTICAST_SESSION_UPDATE_FAILURE, "MulticastSessionUpdateFailure" },
+ { MTYPE_MULTICAST_GROUP_PAGING, "MulticastGroupPaging" },
+ { MTYPE_NAS_NON_DELIVERY_IND, "NASNonDeliveryIndication" },
+ { MTYPE_NG_RESET, "NGReset" },
+ { MTYPE_NG_RESET_ACK, "NGResetAcknowledge" },
+ { MTYPE_NG_SETUP_REQUEST, "NGSetupRequest" },
+ { MTYPE_NG_SETUP_RESPONSE, "NGSetupResponse" },
+ { MTYPE_NG_SETUP_FAILURE, "NGSetupFailure" },
+ { MTYPE_OVERLOAD_START, "OverloadStart" },
+ { MTYPE_OVERLOAD_STOP, "OverloadStop" },
+ { MTYPE_PAGING, "Paging" },
+ { MTYPE_PATH_SWITCH_REQUEST, "PathSwitchRequest" },
+ { MTYPE_PATH_SWITCH_REQUEST_ACK, "PathSwitchRequestAcknowledge" },
+ { MTYPE_PATH_SWITCH_REQUEST_FAILURE, "PathSwitchRequestFailure" },
+ { MTYPE_PDU_SESSION_RESOURCE_MODIFY_REQUEST, "PDUSessionResourceModifyRequest" },
+ { MTYPE_PDU_SESSION_RESOURCE_MODIFY_RESPONSE, "PDUSessionResourceModifyResponse" },
+ { MTYPE_PDU_SESSION_RESOURCE_MODIFY_IND, "PDUSessionResourceModifyIndication" },
+ { MTYPE_PDU_SESSION_RESOURCE_MODIFY_CONFIRM, "PDUSessionResourceModifyConfirm" },
+ { MTYPE_PDU_SESSION_RESOURCE_NOTIFY, "PDUSessionResourceNotify" },
+ { MTYPE_PDU_SESSION_RESOURCE_RELEASE_COMMAND, "PDUSessionResourceReleaseCommand" },
+ { MTYPE_PDU_SESSION_RESOURCE_RELEASE_RESPONSE, "PDUSessionResourceReleaseResponse" },
+ { MTYPE_PDU_SESSION_RESOURCE_SETUP_REQUEST, "PDUSessionResourceSetupRequest" },
+ { MTYPE_PDU_SESSION_RESOURCE_SETUP_RESPONSE, "PDUSessionResourceSetupResponse" },
+ { MTYPE_PRIVATE_MESSAGE, "PrivateMessage" },
+ { MTYPE_PWS_CANCEL_REQUEST, "PWSCancelRequest" },
+ { MTYPE_PWS_CANCEL_RESPONSE, "PWSCancelResponse" },
+ { MTYPE_PWS_FAILURE_INDICATION, "PWSFailureIndication" },
+ { MTYPE_PWS_RESTART_INDICATION, "PWSRestartIndication" },
+ { MTYPE_RAN_CONFIGURATION_UPDATE, "RANConfigurationUpdate" },
+ { MTYPE_RAN_CONFIGURATION_UPDATE_ACK, "RANConfigurationUpdateAcknowledge" },
+ { MTYPE_RAN_CONFIGURATION_UPDATE_FAILURE, "RANConfigurationUpdateFailure" },
+ { MTYPE_RAN_CP_RELOCATION_IND, "RANCPRelocationIndication" },
+ { MTYPE_REROUTE_NAS_REQUEST, "RerouteNASRequest" },
+ { MTYPE_RETRIEVE_UE_INFORMATION, "RetrieveUEInformation" },
+ { MTYPE_RRC_INACTIVE_TRANSITION_REPORT, "RRCInactiveTransitionReport" },
+ { MTYPE_SECONDARY_RAT_DATA_USAGE_REPORT, "SecondaryRATDataUsageReport" },
+ { MTYPE_TRACE_FAILURE_IND, "TraceFailureIndication" },
+ { MTYPE_TRACE_START, "TraceStart" },
+ { MTYPE_UE_CONTEXT_MODIFICATION_REQUEST, "UEContextModificationRequest" },
+ { MTYPE_UE_CONTEXT_MODIFICATION_RESPONSE, "UEContextModificationResponse" },
+ { MTYPE_UE_CONTEXT_MODIFICATION_FAILURE, "UEContextModificationFailure" },
+ { MTYPE_UE_CONTEXT_RELEASE_COMMAND, "UEContextReleaseCommand" },
+ { MTYPE_UE_CONTEXT_RELEASE_COMPLETE, "UEContextReleaseComplete" },
+ { MTYPE_UE_CONTEXT_RELEASE_REQUEST, "UEContextReleaseRequest" },
+ { MTYPE_UE_CONTEXT_RESUME_REQUEST, "UEContextResumeRequest" },
+ { MTYPE_UE_CONTEXT_RESUME_RESPONSE, "UEContextResumeResponse" },
+ { MTYPE_UE_CONTEXT_RESUME_FAILURE, "UEContextResumeFailure" },
+ { MTYPE_UE_CONTEXT_SUSPEND_REQUEST, "UEContextSuspendRequest" },
+ { MTYPE_UE_CONTEXT_SUSPEND_RESPONSE, "UEContextSuspendResponse" },
+ { MTYPE_UE_CONTEXT_SUSPEND_FAILURE, "UEContextSuspendFailure" },
+ { MTYPE_UE_INFORMATION_TRANSFER, "UEInformationTransfer" },
+ { MTYPE_UE_RADIO_CAPABILITY_CHECK_REQUEST, "UERadioCapabilityCheckRequest" },
+ { MTYPE_UE_RADIO_CAPABILITY_CHECK_RESPONSE, "UERadioCapabilityCheckResponse" },
+ { MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST, "UERadioCapabilityIDMappingRequest" },
+ { MTYPE_UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE, "UERadioCapabilityIDMappingResponse" },
+ { MTYPE_UE_RADIO_CAPABILITY_INFO_IND, "UERadioCapabilityInfoIndication" },
+ { MTYPE_UE_TN_LAB_BINDING_RELEASE_REQUEST, "UETNLABindingReleaseRequest" },
+ { MTYPE_UPLINK_NAS_TRANSPORT, "UplinkNASTransport" },
+ { MTYPE_UPLINK_NON_UE_ASSOCIATED_NR_PPA_TRANSPORT, "UplinkNonUEAssociatedNRPPaTransport" },
+ { MTYPE_UPLINK_RAN_CONFIGURATION_TRANSFER, "UplinkRANConfigurationTransfer" },
+ { MTYPE_UPLINK_RAN_EARLY_STATUS_TRANSFER, "UplinkRANEarlyStatusTransfer" },
+ { MTYPE_UPLINK_RAN_STATUS_TRANSFER, "UplinkRANStatusTransfer" },
{ MTYPE_UPLINK_UE_ASSOCIATED_NR_PPA_TRANSPORT, "UplinkUEAssociatedNRPPaTransport" },
- { MTYPE_WRITE_REPLACE_WARNING_REQUEST, "WriteReplaceWarningRequest" },
- { MTYPE_WRITE_REPLACE_WARNING_RESPONSE, "WriteReplaceWarningResponse" },
- { MTYPE_UPLINK_RIM_INFORMATION_TRANSFER, "UplinkRIMInformationTransfer" },
- { MTYPE_DOWNLINK_RIM_INFORMATION_TRANSFER, "DownlinkRIMInformationTransfer" },
+ { MTYPE_WRITE_REPLACE_WARNING_REQUEST, "WriteReplaceWarningRequest" },
+ { MTYPE_WRITE_REPLACE_WARNING_RESPONSE, "WriteReplaceWarningResponse" },
+ { MTYPE_UPLINK_RIM_INFORMATION_TRANSFER, "UplinkRIMInformationTransfer" },
+ { MTYPE_DOWNLINK_RIM_INFORMATION_TRANSFER, "DownlinkRIMInformationTransfer" },
{ 0, NULL }
};
@@ -445,6 +497,7 @@ struct ngap_private_data {
guint32 handover_type_value;
guint8 data_coding_scheme;
guint8 transparent_container_type;
+ gboolean is_qos_flow_notify;
struct ngap_supported_ta *supported_ta;
struct ngap_tai *tai;
guint32 ran_ue_ngap_id;
@@ -479,7 +532,7 @@ static const enum_val_t ngap_lte_container_vals[] = {
};
/* Global variables */
-static guint gbl_ngapSctpPort = SCTP_PORT_NGAP;
+static range_t *gbl_ngapSctpRange = NULL;
static gboolean ngap_dissect_container = TRUE;
static gint ngap_dissect_target_ng_ran_container_as = NGAP_NG_RAN_CONTAINER_AUTOMATIC;
static gint ngap_dissect_lte_container_as = NGAP_LTE_CONTAINER_AUTOMATIC;
@@ -540,8 +593,16 @@ static int dissect_PDUSessionResourceReleaseCommandTransfer_PDU(tvbuff_t *tvb _U
static int dissect_TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_SecondaryRATDataUsageReportTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_PDUSessionResourceModifyIndicationUnsuccessfulTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
-
-const value_string ngap_serialNumber_gs_vals[] = {
+static int dissect_ngap_AlternativeQoSParaSetNotifyIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_UEContextResumeRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_UEContextResumeResponseTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_UEContextSuspendRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_MBSSessionSetupOrModRequestTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_MBSSessionSetupOrModResponseTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_MBSSessionSetupOrModFailureTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_MBSSessionReleaseResponseTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+
+static const value_string ngap_serialNumber_gs_vals[] = {
{ 0, "Display mode immediate, cell wide"},
{ 1, "Display mode normal, PLMN wide"},
{ 2, "Display mode normal, tracking area wide"},
@@ -549,7 +610,7 @@ const value_string ngap_serialNumber_gs_vals[] = {
{ 0, NULL},
};
-const value_string ngap_warningType_vals[] = {
+static const value_string ngap_warningType_vals[] = {
{ 0, "Earthquake"},
{ 1, "Tsunami"},
{ 2, "Earthquake and Tsunami"},
@@ -590,19 +651,19 @@ dissect_ngap_warningMessageContents(tvbuff_t *warning_msg_tvb, proto_tree *tree,
static void
ngap_PacketLossRate_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
}
static void
ngap_PacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
}
static void
ngap_TimeUEStayedInCellEnhancedGranularity_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
}
static void
@@ -612,26 +673,26 @@ ngap_PeriodicRegistrationUpdateTimer_fmt(gchar *s, guint32 v)
switch (v>>5) {
case 0:
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u min (%u)", val * 10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u min (%u)", val * 10, v);
break;
case 1:
default:
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u hr (%u)", val, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u hr (%u)", val, v);
break;
case 2:
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u hr (%u)", val * 10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u hr (%u)", val * 10, v);
break;
case 3:
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u sec (%u)", val * 2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u sec (%u)", val * 2, v);
break;
case 4:
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u sec (%u)", val * 30, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u sec (%u)", val * 30, v);
break;
case 5:
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u min (%u)", val, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u min (%u)", val, v);
break;
case 7:
- g_snprintf(s, ITEM_LABEL_LENGTH, "deactivated (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "deactivated (%u)", v);
break;
}
}
@@ -639,25 +700,25 @@ ngap_PeriodicRegistrationUpdateTimer_fmt(gchar *s, guint32 v)
static void
ngap_ExtendedPacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
}
static void
ngap_Threshold_RSRP_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
}
static void
ngap_Threshold_RSRQ_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
}
static void
ngap_Threshold_SINR_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
}
static struct ngap_private_data*
@@ -711,7 +772,7 @@ ngap_is_nbiot_ue(packet_info *pinfo)
return FALSE;
}
-const true_false_string ngap_not_updated_updated = {
+static const true_false_string ngap_not_updated_updated = {
"Not updated",
"Updated"
};
@@ -790,7 +851,7 @@ ngap_stats_tree_init(stats_tree *st)
static tap_packet_status
ngap_stats_tree_packet(stats_tree* st, packet_info* pinfo _U_,
- epan_dissect_t* edt _U_ , const void* p)
+ epan_dissect_t* edt _U_ , const void* p, tap_flags_t flags _U_)
{
const struct ngap_tap_t *pi = (const struct ngap_tap_t *) p;
@@ -815,15 +876,10 @@ dissect_ngap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_
proto_tree *ngap_tree = NULL;
conversation_t *conversation;
struct ngap_private_data *ngap_data;
- wmem_list_frame_t *prev_layer;
struct ngap_tap_t *ngap_info;
/* make entry in the Protocol column on summary display */
col_set_str(pinfo->cinfo, COL_PROTOCOL, "NGAP");
- /* ensure that parent dissector is not NGAP before clearing fence */
- prev_layer = wmem_list_frame_prev(wmem_list_tail(pinfo->layers));
- if (prev_layer && GPOINTER_TO_INT(wmem_list_frame_data(prev_layer)) != proto_ngap)
- col_clear_fence(pinfo->cinfo, COL_INFO);
col_clear(pinfo->cinfo, COL_INFO);
ngap_info = wmem_new(pinfo->pool, struct ngap_tap_t);
@@ -899,9 +955,9 @@ dissect_ngap_media_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
jsmntok_t *tokens, *cur_tok;
dissector_handle_t subdissector = NULL;
tvbuff_t* json_tvb = (tvbuff_t*)p_get_proto_data(pinfo->pool, pinfo, proto_json, 0);
- http_message_info_t *message_info = (http_message_info_t *)data;
+ media_content_info_t *content_info = (media_content_info_t *)data;
- if (!json_tvb || !message_info || !message_info->content_id)
+ if (!json_tvb || !content_info || !content_info->content_id)
return 0;
json_data = tvb_get_string_enc(pinfo->pool, json_tvb, 0, tvb_reported_length(json_tvb), ENC_UTF_8|ENC_NA);
@@ -922,19 +978,19 @@ dissect_ngap_media_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
if (!strcmp(n2_info_class, "SM")) {
cur_tok = json_get_object(json_data, cur_tok, "smInfo");
if (cur_tok && find_n2_info_content(json_data, cur_tok, "n2InfoContent",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
}
if (!strcmp(n2_info_class, "RAN")) {
cur_tok = json_get_object(json_data, cur_tok, "ranInfo");
if (cur_tok && find_n2_info_content(json_data, cur_tok, "n2InfoContent",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
}
if (!strcmp(n2_info_class, "NRPPa")) {
cur_tok = json_get_object(json_data, cur_tok, "nrppaInfo");
if (cur_tok && find_n2_info_content(json_data, cur_tok, "nrppaPdu",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
}
if (!strcmp(n2_info_class, "PWS") ||
@@ -942,7 +998,7 @@ dissect_ngap_media_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
!strcmp(n2_info_class, "PWS-RF")) {
cur_tok = json_get_object(json_data, cur_tok, "pwsInfo");
if (cur_tok && find_n2_info_content(json_data, cur_tok, "pwsContainer",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
}
}
@@ -950,7 +1006,7 @@ dissect_ngap_media_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
cur_tok = json_get_object(json_data, tokens, "n2SmInfo");
if (cur_tok) {
const char *content_id_str = json_get_string(json_data, cur_tok, "contentId");
- if (content_id_str && !strcmp(content_id_str, message_info->content_id)) {
+ if (content_id_str && !strcmp(content_id_str, content_info->content_id)) {
const char *str = json_get_string(json_data, tokens, "n2SmInfoType");
if (str)
subdissector = dissector_get_string_handle(ngap_n2_ie_type_dissector_table, str);
@@ -959,6 +1015,9 @@ dissect_ngap_media_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
goto found;
}
}
+ if (find_n2_info_content(json_data, tokens, "n2MbsSmInfo",
+ content_info->content_id, &subdissector))
+ goto found;
cur_tok = json_get_array(json_data, tokens, "pduSessionList");
if (cur_tok) {
int i, count;
@@ -966,21 +1025,21 @@ dissect_ngap_media_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
for (i = 0; i < count; i++) {
jsmntok_t *array_tok = json_get_array_index(cur_tok, i);
if (find_n2_info_content(json_data, array_tok, "n2InfoContent",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
}
}
if (find_n2_info_content(json_data, tokens, "sourceToTargetData",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
if (find_n2_info_content(json_data, tokens, "targetToSourceData",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
if (find_n2_info_content(json_data, tokens, "targetToSourceFailureData",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
if (find_n2_info_content(json_data, tokens, "ueRadioCapability",
- message_info->content_id, &subdissector))
+ content_info->content_id, &subdissector))
goto found;
found:
@@ -1006,43 +1065,36 @@ found:
}
}
+static void
+apply_ngap_prefs(void)
+{
+ gbl_ngapSctpRange = prefs_get_range_value("ngap", "sctp.port");
+}
+
/*--- proto_reg_handoff_ngap ---------------------------------------*/
void
proto_reg_handoff_ngap(void)
{
- static gboolean Initialized=FALSE;
- static guint SctpPort;
-
- if (!Initialized) {
- nas_5gs_handle = find_dissector_add_dependency("nas-5gs", proto_ngap);
- nr_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_paging_info", proto_ngap);
- nr_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_access_cap_info", proto_ngap);
- lte_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info", proto_ngap);
- lte_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info", proto_ngap);
- lte_rrc_ue_radio_paging_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info.nb", proto_ngap);
- lte_rrc_ue_radio_access_cap_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info.nb", proto_ngap);
- dissector_add_for_decode_as("sctp.port", ngap_handle);
- dissector_add_uint("sctp.ppi", NGAP_PROTOCOL_ID, ngap_handle);
- Initialized=TRUE;
+ nas_5gs_handle = find_dissector_add_dependency("nas-5gs", proto_ngap);
+ nr_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_paging_info", proto_ngap);
+ nr_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_access_cap_info", proto_ngap);
+ lte_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info", proto_ngap);
+ lte_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info", proto_ngap);
+ lte_rrc_ue_radio_paging_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info.nb", proto_ngap);
+ lte_rrc_ue_radio_access_cap_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info.nb", proto_ngap);
+ dissector_add_uint("sctp.ppi", NGAP_PROTOCOL_ID, ngap_handle);
#include "packet-ngap-dis-tab.c"
- dissector_add_string("media_type", "application/vnd.3gpp.ngap", ngap_media_type_handle);
- } else {
- if (SctpPort != 0) {
- dissector_delete_uint("sctp.port", SctpPort, ngap_handle);
- }
- }
+ dissector_add_string("media_type", "application/vnd.3gpp.ngap", ngap_media_type_handle);
nrppa_handle = find_dissector_add_dependency("nrppa", proto_ngap);
proto_json = proto_get_id_by_filter_name("json");
- SctpPort=gbl_ngapSctpPort;
- if (SctpPort != 0) {
- dissector_add_uint("sctp.port", SctpPort, ngap_handle);
- }
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_NGAP, ngap_handle);
stats_tree_register("ngap", "ngap", "NGAP", 0,
ngap_stats_tree_packet, ngap_stats_tree_init, NULL);
+ apply_ngap_prefs();
}
/*--- proto_register_ngap -------------------------------------------*/
@@ -1089,7 +1141,7 @@ void proto_register_ngap(void) {
NULL, HFILL }},
{ &hf_ngap_WarningMessageContents_decoded_page,
{ "Decoded Page", "ngap.WarningMessageContents.decoded_page",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_ngap_NGRANTraceID_TraceID,
{ "TraceID", "ngap.NGRANTraceID.TraceID",
@@ -1151,9 +1203,25 @@ void proto_register_ngap(void) {
{ "nR-unlicensed", "ngap.primaryRATRestriction.nR_unlicensed",
FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x20,
NULL, HFILL }},
+ { &hf_ngap_primaryRATRestriction_nR_LEO,
+ { "nR-LEO", "ngap.primaryRATRestriction.nR_LEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x10,
+ NULL, HFILL }},
+ { &hf_ngap_primaryRATRestriction_nR_MEO,
+ { "nR-MEO", "ngap.primaryRATRestriction.nR_MEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x08,
+ NULL, HFILL }},
+ { &hf_ngap_primaryRATRestriction_nR_GEO,
+ { "nR-GEO", "ngap.primaryRATRestriction.nR_GEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x04,
+ NULL, HFILL }},
+ { &hf_ngap_primaryRATRestriction_nR_OTHERSAT,
+ { "nR-OTHERSAT", "ngap.primaryRATRestriction.nR_OTHERSAT",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x02,
+ NULL, HFILL }},
{ &hf_ngap_primaryRATRestriction_reserved,
{ "reserved", "ngap.primaryRATRestriction.reserved",
- FT_UINT8, BASE_HEX, NULL, 0x1f,
+ FT_UINT8, BASE_HEX, NULL, 0x01,
NULL, HFILL }},
{ &hf_ngap_secondaryRATRestriction_e_UTRA,
{ "e-UTRA", "ngap.secondaryRATRestriction.e_UTRA",
@@ -1235,9 +1303,13 @@ void proto_register_ngap(void) {
{ "128-EIA3", "ngap.EUTRAintegrityProtectionAlgorithms.eia3",
FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x2000,
NULL, HFILL }},
+ { &hf_ngap_EUTRAintegrityProtectionAlgorithms_eia7,
+ { "EIA7", "ngap.EUTRAintegrityProtectionAlgorithms.eia7",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x0200,
+ NULL, HFILL }},
{ &hf_ngap_EUTRAintegrityProtectionAlgorithms_reserved,
{ "Reserved", "ngap.EUTRAintegrityProtectionAlgorithms.reserved",
- FT_UINT16, BASE_HEX, NULL, 0x1fff,
+ FT_UINT16, BASE_HEX, NULL, 0x1dff,
NULL, HFILL }},
{ &hf_ngap_MeasurementsToActivate_M1,
{ "M1", "ngap.MeasurementsToActivate.M1",
@@ -1342,6 +1414,7 @@ void proto_register_ngap(void) {
&ett_ngap_UERadioCapabilityForPagingOfNB_IoT,
&ett_ngap_GlobalCable_ID,
&ett_ngap_UpdateFeedback,
+ &ett_ngap_successfulHOReportContainer,
#include "packet-ngap-ettarr.c"
};
@@ -1372,16 +1445,11 @@ void proto_register_ngap(void) {
ngap_proc_imsg_dissector_table = register_dissector_table("ngap.proc.imsg", "NGAP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_ngap, FT_UINT32, BASE_DEC);
ngap_proc_sout_dissector_table = register_dissector_table("ngap.proc.sout", "NGAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_ngap, FT_UINT32, BASE_DEC);
ngap_proc_uout_dissector_table = register_dissector_table("ngap.proc.uout", "NGAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_ngap, FT_UINT32, BASE_DEC);
- ngap_n2_ie_type_dissector_table = register_dissector_table("ngap.n2_ie_type", "NGAP N2 IE Type", proto_ngap, FT_STRING, FALSE);
+ ngap_n2_ie_type_dissector_table = register_dissector_table("ngap.n2_ie_type", "NGAP N2 IE Type", proto_ngap, FT_STRING, STRING_CASE_SENSITIVE);
/* Register configuration options for ports */
- ngap_module = prefs_register_protocol(proto_ngap, proto_reg_handoff_ngap);
+ ngap_module = prefs_register_protocol(proto_ngap, apply_ngap_prefs);
- prefs_register_uint_preference(ngap_module, "sctp.port",
- "NGAP SCTP Port",
- "Set the SCTP port for NGAP messages",
- 10,
- &gbl_ngapSctpPort);
prefs_register_bool_preference(ngap_module, "dissect_container",
"Dissect TransparentContainer",
"Dissect TransparentContainers that are opaque to NGAP",
diff --git a/epan/dissectors/asn1/nist-csor/packet-nist-csor-template.c b/epan/dissectors/asn1/nist-csor/packet-nist-csor-template.c
index d084b4257a..970e80b2aa 100644
--- a/epan/dissectors/asn1/nist-csor/packet-nist-csor-template.c
+++ b/epan/dissectors/asn1/nist-csor/packet-nist-csor-template.c
@@ -26,7 +26,7 @@ void proto_register_nist_csor(void);
void proto_reg_handoff_nist_csor(void);
/* Initialize the protocol and registered fields */
-static int proto_nist_csor = -1;
+static int proto_nist_csor;
#include "packet-nist-csor-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/novell_pkis/packet-novell_pkis-template.c b/epan/dissectors/asn1/novell_pkis/packet-novell_pkis-template.c
index 5e0b9934e5..bb9d2eb752 100644
--- a/epan/dissectors/asn1/novell_pkis/packet-novell_pkis-template.c
+++ b/epan/dissectors/asn1/novell_pkis/packet-novell_pkis-template.c
@@ -26,7 +26,7 @@
void proto_register_novell_pkis (void);
void proto_reg_handoff_novell_pkis(void);
-static int proto_novell_pkis = -1;
+static int proto_novell_pkis;
void proto_reg_handoff_novell_pkis(void)
{
@@ -43,7 +43,7 @@ void proto_register_novell_pkis (void)
};
/* execute protocol initialization only once */
- if (proto_novell_pkis != -1) return;
+ if (proto_novell_pkis > 0) return;
proto_novell_pkis = proto_register_protocol("Novell PKIS ASN.1 type", "novell_pkis", "novell_pkis");
proto_register_field_array (proto_novell_pkis, hf, array_length (hf));
diff --git a/epan/dissectors/asn1/nr-rrc/CMakeLists.txt b/epan/dissectors/asn1/nr-rrc/CMakeLists.txt
index 9cbfc9fec8..6295b93186 100644
--- a/epan/dissectors/asn1/nr-rrc/CMakeLists.txt
+++ b/epan/dissectors/asn1/nr-rrc/CMakeLists.txt
@@ -21,8 +21,6 @@ set( EXT_ASN_FILE_LIST
set( ASN_FILE_LIST
NR-InterNodeDefinitions.asn
NR-RRC-Definitions.asn
- NR-Sidelink-Preconf.asn
- NR-UE-Variables.asn
PC5-RRC-Definitions.asn
)
diff --git a/epan/dissectors/asn1/nr-rrc/NR-InterNodeDefinitions.asn b/epan/dissectors/asn1/nr-rrc/NR-InterNodeDefinitions.asn
index 8c9b3e0446..d455877bce 100644
--- a/epan/dissectors/asn1/nr-rrc/NR-InterNodeDefinitions.asn
+++ b/epan/dissectors/asn1/nr-rrc/NR-InterNodeDefinitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.331 V16.6.0 (2021-09)
+-- 3GPP TS 38.331 V17.7.0 (2023-12)
NR-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -10,6 +10,7 @@ IMPORTS
CellIdentity,
CGI-InfoEUTRA,
CGI-InfoNR,
+ CondReconfigExecCondSCG-r17,
CSI-RS-Index,
CSI-RS-CellMobility,
DRX-Config,
@@ -20,10 +21,14 @@ IMPORTS
GapConfig,
maxBandComb,
maxBands,
+ maxBandsEUTRA,
maxCellSFTD,
maxFeatureSetsPerBand,
+ maxFreq,
maxFreqIDC-MRDC,
maxNrofCombIDC,
+ maxNrofCondCells-r16,
+ maxNrofCondCells-1-r17,
maxNrofPhysicalResourceBlocks,
maxNrofSCells,
maxNrofServingCells,
@@ -31,6 +36,7 @@ IMPORTS
maxNrofServingCellsEUTRA,
maxNrofIndexesToReport,
maxSimultaneousBands,
+ MBSInterestIndication-r17,
MeasQuantityResults,
MeasResultCellListSFTD-EUTRA,
MeasResultCellListSFTD-NR,
@@ -38,7 +44,10 @@ IMPORTS
MeasResultSCG-Failure,
MeasResultServFreqListEUTRA-SCG,
NeedForGapsInfoNR-r16,
+ NeedForGapNCSG-InfoNR-r17,
+ NeedForGapNCSG-InfoEUTRA-r17,
OverheatingAssistance,
+ OverheatingAssistance-r17,
P-Max,
PhysCellId,
RadioBearerConfig,
@@ -57,11 +66,42 @@ IMPORTS
maxNrofCLI-RSSI-Resources-r16,
maxNrofCLI-SRS-Resources-r16,
RSSI-ResourceId-r16,
+ SDT-Config-r17,
SidelinkUEInformationNR-r16,
- SRS-ResourceId
+ SRS-ResourceId,
+ UE-RadioPagingInfo-r17
FROM NR-RRC-Definitions;
-- TAG-NR-INTER-NODE-DEFINITIONS-STOP
+-- TAG-CG-CANDIDATELIST-START
+
+CG-CandidateList ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ c1 CHOICE{
+ cg-CandidateList-r17 CG-CandidateList-r17-IEs,
+ spare3 NULL, spare2 NULL, spare1 NULL
+ },
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+CG-CandidateList-r17-IEs ::= SEQUENCE {
+ cg-CandidateToAddModList-r17 SEQUENCE (SIZE (1..maxNrofCondCells-r16)) OF CG-CandidateInfo-r17 OPTIONAL,
+ cg-CandidateToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofCondCells-r16)) OF CG-CandidateInfoId-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+CG-CandidateInfo-r17 ::= SEQUENCE {
+ cg-CandidateInfoId-r17 CG-CandidateInfoId-r17,
+ candidateCG-Config-r17 OCTET STRING (CONTAINING CG-Config)
+}
+
+CG-CandidateInfoId-r17::= SEQUENCE {
+ ssbFrequency-r17 ARFCN-ValueNR,
+ physCellId-r17 PhysCellId
+}
+
+-- TAG-CG-CANDIDATELIST-STOP
-- TAG-HANDOVER-COMMAND-START
HandoverCommand ::= SEQUENCE {
@@ -110,8 +150,10 @@ AS-Config ::= SEQUENCE {
]],
[[
sourceSCG-Configured ENUMERATED {true} OPTIONAL
+ ]],
+ [[
+ sdt-Config-r17 SDT-Config-r17 OPTIONAL
]]
-
}
AS-Context ::= SEQUENCE {
@@ -135,6 +177,11 @@ AS-Context ::= SEQUENCE {
]],
[[
configRestrictInfoDAPS-v1640 ConfigRestrictInfoDAPS-v1640 OPTIONAL
+ ]],
+ [[
+ needForGapNCSG-InfoNR-r17 NeedForGapNCSG-InfoNR-r17 OPTIONAL,
+ needForGapNCSG-InfoEUTRA-r17 NeedForGapNCSG-InfoEUTRA-r17 OPTIONAL,
+ mbsInterestIndication-r17 OCTET STRING (CONTAINING MBSInterestIndication-r17) OPTIONAL
]]
}
@@ -261,7 +308,19 @@ CG-Config-v1630-IEs ::= SEQUENCE {
CG-Config-v1640-IEs ::= SEQUENCE {
servCellInfoListSCG-NR-r16 ServCellInfoListSCG-NR-r16 OPTIONAL,
servCellInfoListSCG-EUTRA-r16 ServCellInfoListSCG-EUTRA-r16 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension CG-Config-v1700-IEs OPTIONAL
+}
+
+CG-Config-v1700-IEs ::= SEQUENCE {
+ candidateCellInfoListCPC-r17 CandidateCellInfoListCPC-r17 OPTIONAL,
+ twoPHRModeSCG-r17 ENUMERATED {enabled} OPTIONAL,
+ nonCriticalExtension CG-Config-v1730-IEs OPTIONAL
+}
+
+CG-Config-v1730-IEs ::= SEQUENCE {
+ fr1-Carriers-SCG-r17 INTEGER (1..32) OPTIONAL,
+ fr2-Carriers-SCG-r17 INTEGER (1..32) OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
ServCellInfoListSCG-NR-r16 ::= SEQUENCE (SIZE (1.. maxNrofServingCells)) OF ServCellInfoXCG-NR-r16
@@ -296,7 +355,10 @@ PH-InfoSCG ::= SEQUENCE {
servCellIndex ServCellIndex,
ph-Uplink PH-UplinkCarrierSCG,
ph-SupplementaryUplink PH-UplinkCarrierSCG OPTIONAL,
- ...
+ ...,
+ [[
+ twoSRS-PUSCH-Repetition-r17 ENUMERATED{enabled} OPTIONAL
+ ]]
}
PH-UplinkCarrierSCG ::= SEQUENCE{
@@ -327,6 +389,9 @@ ConfigRestrictModReqSCG ::= SEQUENCE {
requestedMaxInterFreqMeasIdSCG-r16 INTEGER(1..maxMeasIdentitiesMN) OPTIONAL,
requestedMaxIntraFreqMeasIdSCG-r16 INTEGER(1..maxMeasIdentitiesMN) OPTIONAL,
requestedToffset-r16 T-Offset-r16 OPTIONAL
+ ]],
+ [[
+ reservedResourceConfigNRDC-r17 ResourceConfigNRDC-r17 OPTIONAL
]]
}
@@ -350,6 +415,18 @@ CandidateServingFreqListEUTRA ::= SEQUENCE (SIZE (1.. maxFreqIDC-MRDC)) OF ARFCN
T-Offset-r16 ::= ENUMERATED {ms0dot5, ms0dot75, ms1, ms1dot5, ms2, ms2dot5, ms3, spare1}
+CandidateCellInfoListCPC-r17 ::= SEQUENCE (SIZE (1..maxFreq)) OF CandidateCellInfo-r17
+
+CandidateCellInfo-r17 ::= SEQUENCE {
+ ssbFrequency-r17 ARFCN-ValueNR,
+ candidateList-r17 SEQUENCE (SIZE (1..maxNrofCondCells-r16)) OF CandidateCell-r17
+}
+
+CandidateCell-r17 ::= SEQUENCE {
+ physCellId-r17 PhysCellId,
+ condExecutionCondSCG-r17 OCTET STRING (CONTAINING CondReconfigExecCondSCG-r17) OPTIONAL
+}
+
-- TAG-CG-CONFIG-STOP
-- TAG-CG-CONFIG-INFO-START
@@ -395,7 +472,7 @@ CG-ConfigInfo-v1540-IEs ::= SEQUENCE {
nonCriticalExtension CG-ConfigInfo-v1560-IEs OPTIONAL
}
-CG-ConfigInfo-v1560-IEs ::= SEQUENCE {
+CG-ConfigInfo-v1560-IEs ::= SEQUENCE {
candidateCellInfoListMN-EUTRA OCTET STRING OPTIONAL,
candidateCellInfoListSN-EUTRA OCTET STRING OPTIONAL,
sourceConfigSCG-EUTRA OCTET STRING OPTIONAL,
@@ -432,7 +509,7 @@ CG-ConfigInfo-v1610-IEs ::= SEQUENCE {
scgFailureInfo-r16 SEQUENCE {
failureType-r16 ENUMERATED { scg-lbtFailure-r16, beamFailureRecoveryFailure-r16,
t312-Expiry-r16, bh-RLF-r16,
- spare4, spare3, spare2, spare1},
+ beamFailure-r17, spare3, spare2, spare1},
measResultSCG-r16 OCTET STRING (CONTAINING MeasResultSCG-Failure)
} OPTIONAL,
dummy1 SEQUENCE {
@@ -452,9 +529,22 @@ CG-ConfigInfo-v1620-IEs ::= SEQUENCE {
}
CG-ConfigInfo-v1640-IEs ::= SEQUENCE {
- servCellInfoListMCG-NR-r16 ServCellInfoListMCG-NR-r16 OPTIONAL,
- servCellInfoListMCG-EUTRA-r16 ServCellInfoListMCG-EUTRA-r16 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ servCellInfoListMCG-NR-r16 ServCellInfoListMCG-NR-r16 OPTIONAL,
+ servCellInfoListMCG-EUTRA-r16 ServCellInfoListMCG-EUTRA-r16 OPTIONAL,
+ nonCriticalExtension CG-ConfigInfo-v1700-IEs OPTIONAL
+}
+
+CG-ConfigInfo-v1700-IEs ::= SEQUENCE {
+ candidateCellListCPC-r17 CandidateCellListCPC-r17 OPTIONAL,
+ twoPHRModeMCG-r17 ENUMERATED {enabled} OPTIONAL,
+ lowMobilityEvaluationConnectedInPCell-r17 ENUMERATED {enabled} OPTIONAL,
+ nonCriticalExtension CG-ConfigInfo-v1730-IEs OPTIONAL
+}
+
+CG-ConfigInfo-v1730-IEs ::= SEQUENCE {
+ fr1-Carriers-MCG-r17 INTEGER (1..32) OPTIONAL,
+ fr2-Carriers-MCG-r17 INTEGER (1..32) OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
ServCellInfoListMCG-NR-r16 ::= SEQUENCE (SIZE (1.. maxNrofServingCells)) OF ServCellInfoXCG-NR-r16
@@ -502,6 +592,14 @@ ConfigRestrictInfoSCG ::= SEQUENCE {
maxNumberEHC-ContextsSN-r16 INTEGER(0..65536) OPTIONAL,
allowedReducedConfigForOverheating-r16 OverheatingAssistance OPTIONAL,
maxToffset-r16 T-Offset-r16 OPTIONAL
+ ]],
+ [[
+ allowedReducedConfigForOverheating-r17 OverheatingAssistance-r17 OPTIONAL,
+ maxNumberUDC-DRB-r17 INTEGER(0..2) OPTIONAL,
+ maxNumberCPCCandidates-r17 INTEGER(0..maxNrofCondCells-1-r17) OPTIONAL
+ ]],
+ [[
+ allowedResourceConfigNRDC-r17 ResourceConfigNRDC-r17 OPTIONAL
]]
}
@@ -515,7 +613,10 @@ PH-InfoMCG ::= SEQUENCE {
servCellIndex ServCellIndex,
ph-Uplink PH-UplinkCarrierMCG,
ph-SupplementaryUplink PH-UplinkCarrierMCG OPTIONAL,
- ...
+ ...,
+ [[
+ twoSRS-PUSCH-Repetition-r17 ENUMERATED{enabled} OPTIONAL
+ ]]
}
PH-UplinkCarrierMCG ::= SEQUENCE{
@@ -581,8 +682,10 @@ MeasConfigMN ::= SEQUENCE {
...,
[[
measGapConfigFR2 CHOICE {release NULL, setup GapConfig } OPTIONAL
+ ]],
+ [[
+ interFreqNoGap-r16 ENUMERATED {true} OPTIONAL
]]
-
}
MRDC-AssistanceInfo ::= SEQUENCE {
@@ -590,6 +693,9 @@ MRDC-AssistanceInfo ::= SEQUENCE {
...,
[[
overheatingAssistanceSCG-r16 OCTET STRING (CONTAINING OverheatingAssistance) OPTIONAL
+ ]],
+ [[
+ overheatingAssistanceSCG-FR2-2-r17 OCTET STRING (CONTAINING OverheatingAssistance-r17) OPTIONAL
]]
}
@@ -615,6 +721,13 @@ AffectedCarrierFreqCombEUTRA ::= SEQUENCE (SIZE (1..maxNrofServingCellsEUTRA)) O
AffectedCarrierFreqCombNR ::= SEQUENCE (SIZE (1..maxNrofServingCells)) OF ARFCN-ValueNR
+CandidateCellListCPC-r17 ::= SEQUENCE (SIZE (1..maxFreq)) OF CandidateCellCPC-r17
+
+CandidateCellCPC-r17 ::= SEQUENCE {
+ ssbFrequency-r17 ARFCN-ValueNR,
+ candidateCellList-r17 SEQUENCE (SIZE (1..maxNrofCondCells-r16)) OF PhysCellId
+}
+
-- TAG-CG-CONFIG-INFO-STOP
-- TAG-MEASUREMENT-TIMING-CONFIGURATION-START
@@ -691,7 +804,15 @@ UERadioPagingInformation-v15e0-IEs ::= SEQUENCE {
dl-SchedulingOffset-PDSCH-TypeB-FDD-FR1 ENUMERATED {supported} OPTIONAL,
dl-SchedulingOffset-PDSCH-TypeB-TDD-FR1 ENUMERATED {supported} OPTIONAL,
dl-SchedulingOffset-PDSCH-TypeB-TDD-FR2 ENUMERATED {supported} OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UERadioPagingInformation-v1700-IEs OPTIONAL
+}
+
+UERadioPagingInformation-v1700-IEs ::= SEQUENCE {
+ ue-RadioPagingInfo-r17 OCTET STRING (CONTAINING UE-RadioPagingInfo-r17) OPTIONAL,
+ inactiveStatePO-Determination-r17 ENUMERATED {supported} OPTIONAL,
+ numberOfRxRedCap-r17 ENUMERATED {one, two} OPTIONAL,
+ halfDuplexFDD-TypeA-RedCap-r17 SEQUENCE (SIZE (1..maxBands)) OF FreqBandIndicatorNR OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-UE-RADIO-PAGING-INFORMATION-STOP
@@ -715,6 +836,28 @@ UERadioAccessCapabilityInformation-IEs ::= SEQUENCE {
}
-- TAG-UE-RADIO-ACCESS-CAPABILITY-INFORMATION-STOP
+-- TAG-RESOURCECONFIGNRDC-START
+
+ResourceConfigNRDC-r17 ::= SEQUENCE {
+ fr1-ResourceConfig-r17 ResourceConfigPerFR-r17 OPTIONAL,
+ fr2-ResourceConfig-r17 ResourceConfigPerFR-r17 OPTIONAL,
+ maxNumberResAcrossCC-AcrossFR-r17 INTEGER (0..256) OPTIONAL,
+ ...
+}
+
+ResourceConfigPerFR-r17 ::= SEQUENCE {
+ bm-MaxNumberCSI-RS-Resource-r17 INTEGER (0..64) OPTIONAL,
+ bm-MaxNumberAperiodicCSI-RS-Resource-r17 INTEGER (0..64) OPTIONAL,
+ cg-MaxNumberConfigsAllCC-r17 INTEGER (0..32) OPTIONAL,
+ maxNumberCSI-RS-BFD-r17 INTEGER (0..64) OPTIONAL,
+ maxNumberCSI-RS-SSB-CBD-r17 INTEGER (0..256) OPTIONAL,
+ maxNumberSSB-BFD-r17 INTEGER (0..64) OPTIONAL,
+ sps-MaxNumberConfigsAllCC-r17 INTEGER (0..32) OPTIONAL,
+ trs-MaxConfResourceSetsAllCC-r17 INTEGER (0..256) OPTIONAL,
+ ...
+}
+
+-- TAG-RESOURCECONFIGNRDC-STOP
-- TAG-NR-MULTIPLICITY-AND-CONSTRAINTS-START
maxMeasFreqsMN INTEGER ::= 32 -- Maximum number of MN-configured measurement frequencies
diff --git a/epan/dissectors/asn1/nr-rrc/NR-RRC-Definitions.asn b/epan/dissectors/asn1/nr-rrc/NR-RRC-Definitions.asn
index b0339f07dd..8dcd3248fd 100644
--- a/epan/dissectors/asn1/nr-rrc/NR-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/nr-rrc/NR-RRC-Definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.331 V16.6.0 (2021-09)
+-- 3GPP TS 38.331 V17.7.0 (2023-12)
NR-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
@@ -76,6 +76,21 @@ DL-DCCH-MessageType ::= CHOICE {
}
-- TAG-DL-DCCH-MESSAGE-STOP
+-- TAG-MCCH-MESSAGE-START
+
+MCCH-Message-r17 ::= SEQUENCE {
+ message MCCH-MessageType-r17
+}
+
+MCCH-MessageType-r17 ::= CHOICE {
+ c1 CHOICE {
+ mbsBroadcastConfiguration-r17 MBSBroadcastConfiguration-r17,
+ spare1 NULL
+ },
+ messageClassExtension SEQUENCE {}
+}
+
+-- TAG-MCCH-MESSAGE-STOP
-- TAG-PCCH-PCH-MESSAGE-START
PCCH-Message ::= SEQUENCE {
@@ -162,8 +177,10 @@ UL-DCCH-MessageType ::= CHOICE {
sidelinkUEInformationNR-r16 SidelinkUEInformationNR-r16,
ulInformationTransferIRAT-r16 ULInformationTransferIRAT-r16,
iabOtherInformation-r16 IABOtherInformation-r16,
- spare9 NULL, spare8 NULL, spare7 NULL, spare6 NULL,
- spare5 NULL, spare4 NULL, spare3 NULL, spare2 NULL, spare1 NULL
+ mbsInterestIndication-r17 MBSInterestIndication-r17,
+ uePositioningAssistanceInfo-r17 UEPositioningAssistanceInfo-r17,
+ measurementReportAppLayer-r17 MeasurementReportAppLayer-r17,
+ spare6 NULL, spare5 NULL, spare4 NULL, spare3 NULL, spare2 NULL, spare1 NULL
},
messageClassExtensionFuture-r16 SEQUENCE {}
}
@@ -241,7 +258,7 @@ DedicatedSIBRequest-r16-IEs ::= SEQUENCE {
nonCriticalExtension SEQUENCE {} OPTIONAL
}
-SIB-ReqInfo-r16 ::= ENUMERATED { sib12, sib13, sib14, spare5, spare4, spare3, spare2, spare1 }
+SIB-ReqInfo-r16 ::= ENUMERATED { sib12, sib13, sib14, sib20-v1700, sib21-v1700, spare3, spare2, spare1 }
PosSIB-ReqInfo-r16 ::= SEQUENCE {
gnss-id-r16 GNSS-ID-r16 OPTIONAL,
@@ -252,7 +269,10 @@ PosSIB-ReqInfo-r16 ::= SEQUENCE {
posSibType2-11, posSibType2-12, posSibType2-13, posSibType2-14, posSibType2-15,
posSibType2-16, posSibType2-17, posSibType2-18, posSibType2-19, posSibType2-20,
posSibType2-21, posSibType2-22, posSibType2-23, posSibType3-1, posSibType4-1,
- posSibType5-1, posSibType6-1, posSibType6-2, posSibType6-3,... }
+ posSibType5-1, posSibType6-1, posSibType6-2, posSibType6-3,..., posSibType1-9-v1710,
+ posSibType1-10-v1710, posSibType2-24-v1710, posSibType2-25-v1710,
+ posSibType6-4-v1710, posSibType6-5-v1710, posSibType6-6-v1710, posSibType2-17a-v1770,
+ posSibType2-18a-v1770, posSibType2-20a-v1770 }
}
-- TAG-DEDICATEDSIBREQUEST-STOP
@@ -292,7 +312,15 @@ DLInformationTransfer-IEs ::= SEQUENCE {
}
DLInformationTransfer-v1610-IEs ::= SEQUENCE {
- referenceTimeInfo-r16 ReferenceTimeInfo-r16 OPTIONAL, -- Need R
+ referenceTimeInfo-r16 ReferenceTimeInfo-r16 OPTIONAL, -- Need N
+ nonCriticalExtension DLInformationTransfer-v1700-IEs OPTIONAL
+}
+
+DLInformationTransfer-v1700-IEs ::= SEQUENCE {
+ dedicatedInfoF1c-r17 DedicatedInfoF1c-r17 OPTIONAL, -- Need N
+ rxTxTimeDiff-gNB-r17 RxTxTimeDiff-r17 OPTIONAL, -- Need N
+ ta-PDC-r17 ENUMERATED {activate,deactivate} OPTIONAL, -- Need N
+ sib9Fallback-r17 ENUMERATED {true} OPTIONAL, -- Need N
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -455,6 +483,13 @@ LoggedMeasurementConfiguration-r16-IEs ::= SEQUENCE {
...
},
lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension LoggedMeasurementConfiguration-v1700-IEs OPTIONAL
+}
+
+LoggedMeasurementConfiguration-v1700-IEs ::= SEQUENCE {
+ sigLoggedMeasType-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ earlyMeasIndication-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ areaConfiguration-r17 AreaConfiguration-r17 OPTIONAL, --Need R
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -480,6 +515,44 @@ EventType-r16 ::= CHOICE {
}
-- TAG-LOGGEDMEASUREMENTCONFIGURATION-STOP
+-- TAG-MBSBROADCASTCONFIGURATION-START
+
+MBSBroadcastConfiguration-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ mbsBroadcastConfiguration-r17 MBSBroadcastConfiguration-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+MBSBroadcastConfiguration-r17-IEs ::= SEQUENCE {
+ mbs-SessionInfoList-r17 MBS-SessionInfoList-r17 OPTIONAL, -- Need R
+ mbs-NeighbourCellList-r17 MBS-NeighbourCellList-r17 OPTIONAL, -- Need S
+ drx-ConfigPTM-List-r17 SEQUENCE (SIZE (1..maxNrofDRX-ConfigPTM-r17)) OF DRX-ConfigPTM-r17 OPTIONAL, -- Need R
+ pdsch-ConfigMTCH-r17 PDSCH-ConfigBroadcast-r17 OPTIONAL, -- Need S
+ mtch-SSB-MappingWindowList-r17 MTCH-SSB-MappingWindowList-r17 OPTIONAL, -- Need R
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- TAG-MBSBROADCASTCONFIGURATION-STOP
+-- TAG-MBSINTERESTINDICATION-START
+
+MBSInterestIndication-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ mbsInterestIndication-r17 MBSInterestIndication-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+MBSInterestIndication-r17-IEs ::= SEQUENCE {
+ mbs-FreqList-r17 CarrierFreqListMBS-r17 OPTIONAL,
+ mbs-Priority-r17 ENUMERATED {true} OPTIONAL,
+ mbs-ServiceList-r17 MBS-ServiceList-r17 OPTIONAL,
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- TAG-MBSINTERESTINDICATION-STOP
-- TAG-MCGFAILUREINFORMATION-START
MCGFailureInformation-r16 ::= SEQUENCE {
@@ -534,6 +607,40 @@ MeasurementReport-IEs ::= SEQUENCE {
}
-- TAG-MEASUREMENTREPORT-STOP
+-- TAG-MEASUREMENTREPORTAPPLAYER-START
+
+MeasurementReportAppLayer-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ measurementReportAppLayer-r17 MeasurementReportAppLayer-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+MeasurementReportAppLayer-r17-IEs ::= SEQUENCE {
+ measurementReportAppLayerList-r17 MeasurementReportAppLayerList-r17,
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE{} OPTIONAL
+}
+
+MeasurementReportAppLayerList-r17 ::= SEQUENCE (SIZE (1..maxNrofAppLayerMeas-r17)) OF MeasReportAppLayer-r17
+
+MeasReportAppLayer-r17 ::= SEQUENCE {
+ measConfigAppLayerId-r17 MeasConfigAppLayerId-r17,
+ measReportAppLayerContainer-r17 OCTET STRING OPTIONAL,
+ appLayerSessionStatus-r17 ENUMERATED {start, stop} OPTIONAL,
+ ran-VisibleMeasurements-r17 RAN-VisibleMeasurements-r17 OPTIONAL
+}
+
+RAN-VisibleMeasurements-r17 ::= SEQUENCE {
+ appLayerBufferLevelList-r17 SEQUENCE (SIZE (1..8)) OF AppLayerBufferLevel-r17 OPTIONAL,
+ playoutDelayForMediaStartup-r17 INTEGER (0..30000) OPTIONAL,
+ pdu-SessionIdList-r17 SEQUENCE (SIZE (1..maxNrofPDU-Sessions-r17)) OF PDU-SessionID OPTIONAL,
+ ...
+}
+
+AppLayerBufferLevel-r17 ::= INTEGER (0..30000)
+
+-- TAG-MEASUREMENTREPORTAPPLAYER-STOP
-- TAG-MIB-START
MIB ::= SEQUENCE {
@@ -577,17 +684,31 @@ MobilityFromNRCommand-v1610-IEs ::= SEQUENCE {
Paging ::= SEQUENCE {
pagingRecordList PagingRecordList OPTIONAL, -- Need N
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE{} OPTIONAL
+ nonCriticalExtension Paging-v1700-IEs OPTIONAL
+}
+
+Paging-v1700-IEs ::= SEQUENCE {
+ pagingRecordList-v1700 PagingRecordList-v1700 OPTIONAL, -- Need N
+ pagingGroupList-r17 PagingGroupList-r17 OPTIONAL, -- Need N
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
PagingRecordList ::= SEQUENCE (SIZE(1..maxNrofPageRec)) OF PagingRecord
+PagingRecordList-v1700 ::= SEQUENCE (SIZE(1..maxNrofPageRec)) OF PagingRecord-v1700
+
+PagingGroupList-r17 ::= SEQUENCE (SIZE(1..maxNrofPageGroup-r17)) OF TMGI-r17
+
PagingRecord ::= SEQUENCE {
ue-Identity PagingUE-Identity,
accessType ENUMERATED {non3GPP} OPTIONAL, -- Need N
...
}
+PagingRecord-v1700 ::= SEQUENCE {
+ pagingCause-r17 ENUMERATED {voice} OPTIONAL -- Need N
+}
+
PagingUE-Identity ::= CHOICE {
ng-5G-S-TMSI NG-5G-S-TMSI,
fullI-RNTI I-RNTI-Value,
@@ -608,7 +729,12 @@ RRCReestablishment ::= SEQUENCE {
RRCReestablishment-IEs ::= SEQUENCE {
nextHopChainingCount NextHopChainingCount,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCReestablishment-v1700-IEs OPTIONAL
+}
+
+RRCReestablishment-v1700-IEs ::= SEQUENCE {
+ sl-L2RemoteUE-Config-r17 CHOICE {release NULL, setup SL-L2RemoteUE-Config-r17} OPTIONAL, -- Cond L2RemoteUE
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-RRCREESTABLISHMENT-STOP
@@ -708,7 +834,22 @@ RRCReconfiguration-v1610-IEs ::= SEQUENCE {
sl-ConfigDedicatedNR-r16 CHOICE {release NULL, setup SL-ConfigDedicatedNR-r16} OPTIONAL, -- Need M
sl-ConfigDedicatedEUTRA-Info-r16 CHOICE {release NULL, setup SL-ConfigDedicatedEUTRA-Info-r16} OPTIONAL, -- Need M
targetCellSMTC-SCG-r16 SSB-MTC OPTIONAL, -- Need S
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCReconfiguration-v1700-IEs OPTIONAL
+}
+
+RRCReconfiguration-v1700-IEs ::= SEQUENCE {
+ otherConfig-v1700 OtherConfig-v1700 OPTIONAL, -- Need M
+ sl-L2RelayUE-Config-r17 CHOICE {release NULL, setup SL-L2RelayUE-Config-r17 } OPTIONAL, -- Need M
+ sl-L2RemoteUE-Config-r17 CHOICE {release NULL, setup SL-L2RemoteUE-Config-r17 } OPTIONAL, -- Need M
+ dedicatedPagingDelivery-r17 OCTET STRING (CONTAINING Paging) OPTIONAL, -- Cond PagingRelay
+ needForGapNCSG-ConfigNR-r17 CHOICE {release NULL, setup NeedForGapNCSG-ConfigNR-r17} OPTIONAL, -- Need M
+ needForGapNCSG-ConfigEUTRA-r17 CHOICE {release NULL, setup NeedForGapNCSG-ConfigEUTRA-r17} OPTIONAL, -- Need M
+ musim-GapConfig-r17 CHOICE {release NULL, setup MUSIM-GapConfig-r17} OPTIONAL, -- Need M
+ ul-GapFR2-Config-r17 CHOICE {release NULL, setup UL-GapFR2-Config-r17 } OPTIONAL, -- Need M
+ scg-State-r17 ENUMERATED { deactivated } OPTIONAL, -- Need N
+ appLayerMeasConfig-r17 AppLayerMeasConfig-r17 OPTIONAL, -- Need M
+ ue-TxTEG-RequestUL-TDOA-Config-r17 CHOICE {release NULL, setup UE-TxTEG-RequestUL-TDOA-Config-r17} OPTIONAL, -- Need M
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
MRDC-SecondaryCellGroupConfig ::= SEQUENCE {
@@ -762,6 +903,10 @@ SL-ConfigDedicatedEUTRA-Info-r16 ::= SEQUENCE {
SL-TimeOffsetEUTRA-r16 ::= ENUMERATED {ms0, ms0dot25, ms0dot5, ms0dot625, ms0dot75, ms1, ms1dot25, ms1dot5, ms1dot75,
ms2, ms2dot5, ms3, ms4, ms5, ms6, ms8, ms10, ms20}
+UE-TxTEG-RequestUL-TDOA-Config-r17 ::= CHOICE {
+ oneShot-r17 NULL,
+ periodicReporting-r17 ENUMERATED { ms160, ms320, ms1280, ms2560, ms61440, ms81920, ms368640, ms737280 }
+}
-- TAG-RRCRECONFIGURATION-STOP
-- TAG-RRCRECONFIGURATIONCOMPLETE-START
@@ -799,6 +944,18 @@ RRCReconfigurationComplete-v1610-IEs ::= SEQUENCE {
RRCReconfigurationComplete-v1640-IEs ::= SEQUENCE {
uplinkTxDirectCurrentTwoCarrierList-r16 UplinkTxDirectCurrentTwoCarrierList-r16 OPTIONAL,
+ nonCriticalExtension RRCReconfigurationComplete-v1700-IEs OPTIONAL
+}
+
+RRCReconfigurationComplete-v1700-IEs ::= SEQUENCE {
+ needForGapNCSG-InfoNR-r17 NeedForGapNCSG-InfoNR-r17 OPTIONAL,
+ needForGapNCSG-InfoEUTRA-r17 NeedForGapNCSG-InfoEUTRA-r17 OPTIONAL,
+ selectedCondRRCReconfig-r17 CondReconfigId-r16 OPTIONAL,
+ nonCriticalExtension RRCReconfigurationComplete-v1720-IEs OPTIONAL
+}
+
+RRCReconfigurationComplete-v1720-IEs ::= SEQUENCE {
+ uplinkTxDirectCurrentMoreCarrierList-r17 UplinkTxDirectCurrentMoreCarrierList-r17 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -854,7 +1011,12 @@ RRCRelease-v1610-IEs ::= SEQUENCE {
RRCRelease-v1650-IEs ::= SEQUENCE {
mpsPriorityIndication-r16 ENUMERATED {true} OPTIONAL, -- Cond Redirection2
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCRelease-v1710-IEs OPTIONAL
+}
+
+RRCRelease-v1710-IEs ::= SEQUENCE {
+ noLastCellUpdate-r17 ENUMERATED {true} OPTIONAL, -- Need S
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
RedirectedCarrierInfo ::= CHOICE {
@@ -882,21 +1044,34 @@ SuspendConfig ::= SEQUENCE {
ran-NotificationAreaInfo RAN-NotificationAreaInfo OPTIONAL, -- Need M
t380 PeriodicRNAU-TimerValue OPTIONAL, -- Need R
nextHopChainingCount NextHopChainingCount,
- ...
+ ...,
+ [[
+ sl-UEIdentityRemote-r17 RNTI-Value OPTIONAL, -- Cond L2RemoteUE
+ sdt-Config-r17 CHOICE {release NULL, setup SDT-Config-r17 } OPTIONAL, -- Need M
+ srs-PosRRC-Inactive-r17 CHOICE {release NULL, setup SRS-PosRRC-Inactive-r17 } OPTIONAL, -- Need M
+ ran-ExtendedPagingCycle-r17 ExtendedPagingCycle-r17 OPTIONAL -- Cond RANPaging
+ ]],
+ [[
+ ncd-SSB-RedCapInitialBWP-SDT-r17 CHOICE {release NULL, setup NonCellDefiningSSB-r17} OPTIONAL -- Need M
+ ]]
}
PeriodicRNAU-TimerValue ::= ENUMERATED { min5, min10, min20, min30, min60, min120, min360, min720}
-
CellReselectionPriorities ::= SEQUENCE {
freqPriorityListEUTRA FreqPriorityListEUTRA OPTIONAL, -- Need M
freqPriorityListNR FreqPriorityListNR OPTIONAL, -- Need M
t320 ENUMERATED {min5, min10, min20, min30, min60, min120, min180, spare1} OPTIONAL, -- Need R
- ...
+ ...,
+ [[
+ freqPriorityListDedicatedSlicing-r17 FreqPriorityListDedicatedSlicing-r17 OPTIONAL -- Need M
+ ]]
}
PagingCycle ::= ENUMERATED {rf32, rf64, rf128, rf256}
+ExtendedPagingCycle-r17 ::= ENUMERATED {rf256, rf512, rf1024, spare1}
+
FreqPriorityListEUTRA ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityEUTRA
FreqPriorityListNR ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityNR
@@ -938,6 +1113,74 @@ RAN-AreaConfig ::= SEQUENCE {
ran-AreaCodeList SEQUENCE (SIZE (1..32)) OF RAN-AreaCode OPTIONAL -- Need R
}
+SDT-Config-r17 ::= SEQUENCE {
+ sdt-DRB-List-r17 SEQUENCE (SIZE (0..maxDRB)) OF DRB-Identity OPTIONAL, -- Need M
+ sdt-SRB2-Indication-r17 ENUMERATED {allowed} OPTIONAL, -- Need R
+ sdt-MAC-PHY-CG-Config-r17 CHOICE {release NULL, setup SDT-CG-Config-r17} OPTIONAL, -- Need M
+ sdt-DRB-ContinueROHC-r17 ENUMERATED { cell, rna } OPTIONAL -- Need S
+}
+
+SDT-CG-Config-r17 ::= OCTET STRING (CONTAINING SDT-MAC-PHY-CG-Config-r17)
+
+SDT-MAC-PHY-CG-Config-r17 ::= SEQUENCE {
+ -- CG-SDT specific configuration
+ cg-SDT-ConfigLCH-RestrictionToAddModList-r17 SEQUENCE (SIZE(1..maxLC-ID)) OF CG-SDT-ConfigLCH-Restriction-r17 OPTIONAL, -- Need N
+ cg-SDT-ConfigLCH-RestrictionToReleaseList-r17 SEQUENCE (SIZE(1..maxLC-ID)) OF LogicalChannelIdentity OPTIONAL, -- Need N
+ cg-SDT-ConfigInitialBWP-NUL-r17 CHOICE {release NULL, setup BWP-UplinkDedicatedSDT-r17} OPTIONAL, -- Need M
+ cg-SDT-ConfigInitialBWP-SUL-r17 CHOICE {release NULL, setup BWP-UplinkDedicatedSDT-r17} OPTIONAL, -- Need M
+ cg-SDT-ConfigInitialBWP-DL-r17 BWP-DownlinkDedicatedSDT-r17 OPTIONAL, -- Need M
+ cg-SDT-TimeAlignmentTimer-r17 TimeAlignmentTimer OPTIONAL, -- Need M
+ cg-SDT-RSRP-ThresholdSSB-r17 RSRP-Range OPTIONAL, -- Need M
+ cg-SDT-TA-ValidationConfig-r17 CHOICE {release NULL, setup CG-SDT-TA-ValidationConfig-r17 } OPTIONAL, -- Need M
+ cg-SDT-CS-RNTI-r17 RNTI-Value OPTIONAL, -- Need M
+ ...
+}
+
+CG-SDT-TA-ValidationConfig-r17 ::= SEQUENCE {
+ cg-SDT-RSRP-ChangeThreshold-r17 ENUMERATED { dB2, dB4, dB6, dB8, dB10, dB14, dB18, dB22,
+ dB26, dB30, dB34, spare5, spare4, spare3, spare2, spare1}
+}
+
+BWP-DownlinkDedicatedSDT-r17 ::= SEQUENCE {
+ pdcch-Config-r17 CHOICE {release NULL, setup PDCCH-Config } OPTIONAL, -- Need M
+ pdsch-Config-r17 CHOICE {release NULL, setup PDSCH-Config } OPTIONAL, -- Need M
+ ...
+}
+
+BWP-UplinkDedicatedSDT-r17 ::= SEQUENCE {
+ pusch-Config-r17 CHOICE {release NULL, setup PUSCH-Config } OPTIONAL, -- Need M
+ configuredGrantConfigToAddModList-r17 ConfiguredGrantConfigToAddModList-r16 OPTIONAL, -- Need N
+ configuredGrantConfigToReleaseList-r17 ConfiguredGrantConfigToReleaseList-r16 OPTIONAL, -- Need N
+ ...
+}
+
+CG-SDT-ConfigLCH-Restriction-r17 ::= SEQUENCE {
+ logicalChannelIdentity-r17 LogicalChannelIdentity,
+ configuredGrantType1Allowed-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ allowedCG-List-r17 SEQUENCE (SIZE (0.. maxNrofConfiguredGrantConfigMAC-1-r16)) OF ConfiguredGrantConfigIndexMAC-r16
+ OPTIONAL -- Need R
+}
+
+SRS-PosRRC-Inactive-r17 ::= OCTET STRING (CONTAINING SRS-PosRRC-InactiveConfig-r17)
+
+SRS-PosRRC-InactiveConfig-r17 ::= SEQUENCE {
+ srs-PosConfigNUL-r17 SRS-PosConfig-r17 OPTIONAL, -- Need R
+ srs-PosConfigSUL-r17 SRS-PosConfig-r17 OPTIONAL, -- Need R
+ bwp-NUL-r17 BWP OPTIONAL, -- Need S
+ bwp-SUL-r17 BWP OPTIONAL, -- Need S
+ inactivePosSRS-TimeAlignmentTimer-r17 TimeAlignmentTimer OPTIONAL, -- Need M
+ inactivePosSRS-RSRP-ChangeThreshold-r17 RSRP-ChangeThreshold-r17 OPTIONAL -- Need M
+}
+
+RSRP-ChangeThreshold-r17 ::= ENUMERATED {dB4, dB6, dB8, dB10, dB14, dB18, dB22, dB26, dB30, dB34, spare6, spare5, spare4, spare3, spare2, spare1}
+
+SRS-PosConfig-r17 ::= SEQUENCE {
+ srs-PosResourceSetToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofSRS-PosResourceSets-r16)) OF SRS-PosResourceSetId-r16 OPTIONAL,-- Need N
+ srs-PosResourceSetToAddModList-r17 SEQUENCE (SIZE(1..maxNrofSRS-PosResourceSets-r16)) OF SRS-PosResourceSet-r16 OPTIONAL,-- Need N
+ srs-PosResourceToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofSRS-PosResources-r16)) OF SRS-PosResourceId-r16 OPTIONAL,-- Need N
+ srs-PosResourceToAddModList-r17 SEQUENCE (SIZE(1..maxNrofSRS-PosResources-r16)) OF SRS-PosResource-r16 OPTIONAL -- Need N
+}
+
-- TAG-RRCRELEASE-STOP
-- TAG-RRCRESUME-START
@@ -973,7 +1216,17 @@ RRCResume-v1610-IEs ::= SEQUENCE {
eutra-SCG-r16 OCTET STRING
} OPTIONAL, -- Cond RestoreSCG
needForGapsConfigNR-r16 CHOICE {release NULL, setup NeedForGapsConfigNR-r16} OPTIONAL, -- Need M
- nonCriticalExtension SEQUENCE{} OPTIONAL
+ nonCriticalExtension RRCResume-v1700-IEs OPTIONAL
+}
+
+RRCResume-v1700-IEs ::= SEQUENCE {
+ sl-ConfigDedicatedNR-r17 CHOICE {release NULL, setup SL-ConfigDedicatedNR-r16} OPTIONAL, -- Cond L2RemoteUE
+ sl-L2RemoteUE-Config-r17 CHOICE {release NULL, setup SL-L2RemoteUE-Config-r17} OPTIONAL, -- Cond L2RemoteUE
+ needForGapNCSG-ConfigNR-r17 CHOICE {release NULL, setup NeedForGapNCSG-ConfigNR-r17} OPTIONAL, -- Need M
+ needForGapNCSG-ConfigEUTRA-r17 CHOICE {release NULL, setup NeedForGapNCSG-ConfigEUTRA-r17} OPTIONAL, -- Need M
+ scg-State-r17 ENUMERATED {deactivated} OPTIONAL, -- Need N
+ appLayerMeasConfig-r17 AppLayerMeasConfig-r17 OPTIONAL, -- Need M
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-RRCRESUME-STOP
@@ -1012,7 +1265,18 @@ RRCResumeComplete-v1610-IEs ::= SEQUENCE {
RRCResumeComplete-v1640-IEs ::= SEQUENCE {
uplinkTxDirectCurrentTwoCarrierList-r16 UplinkTxDirectCurrentTwoCarrierList-r16 OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCResumeComplete-v1700-IEs OPTIONAL
+}
+
+RRCResumeComplete-v1700-IEs ::= SEQUENCE {
+ needForGapNCSG-InfoNR-r17 NeedForGapNCSG-InfoNR-r17 OPTIONAL,
+ needForGapNCSG-InfoEUTRA-r17 NeedForGapNCSG-InfoEUTRA-r17 OPTIONAL,
+ nonCriticalExtension RRCResumeComplete-v1720-IEs OPTIONAL
+}
+
+RRCResumeComplete-v1720-IEs ::= SEQUENCE {
+ uplinkTxDirectCurrentMoreCarrierList-r17 UplinkTxDirectCurrentMoreCarrierList-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-RRCRESUMECOMPLETE-STOP
@@ -1058,7 +1322,13 @@ RRCSetup-IEs ::= SEQUENCE {
radioBearerConfig RadioBearerConfig,
masterCellGroup OCTET STRING (CONTAINING CellGroupConfig),
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE{} OPTIONAL
+ nonCriticalExtension RRCSetup-v1700-IEs OPTIONAL
+}
+
+RRCSetup-v1700-IEs ::= SEQUENCE {
+ sl-ConfigDedicatedNR-r17 SL-ConfigDedicatedNR-r16 OPTIONAL, -- Cond L2RemoteUE
+ sl-L2RemoteUE-Config-r17 SL-L2RemoteUE-Config-r17 OPTIONAL, -- Cond L2RemoteUE
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-RRCSETUP-STOP
@@ -1092,6 +1362,16 @@ RRCSetupComplete-v1610-IEs ::= SEQUENCE {
ue-MeasurementsAvailable-r16 UE-MeasurementsAvailable-r16 OPTIONAL,
mobilityHistoryAvail-r16 ENUMERATED {true} OPTIONAL,
mobilityState-r16 ENUMERATED {normal, medium, high, spare} OPTIONAL,
+ nonCriticalExtension RRCSetupComplete-v1690-IEs OPTIONAL
+}
+
+RRCSetupComplete-v1690-IEs ::= SEQUENCE {
+ ul-RRC-Segmentation-r16 ENUMERATED {true} OPTIONAL,
+ nonCriticalExtension RRCSetupComplete-v1700-IEs OPTIONAL
+}
+
+RRCSetupComplete-v1700-IEs ::= SEQUENCE {
+ onboardingRequest-r17 ENUMERATED {true} OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
@@ -1178,7 +1458,19 @@ FailureReportSCG ::= SEQUENCE {
[[
locationInfo-r16 LocationInfo-r16 OPTIONAL,
failureType-v1610 ENUMERATED {scg-lbtFailure-r16, beamFailureRecoveryFailure-r16,
- t312-Expiry-r16, bh-RLF-r16, spare4, spare3, spare2, spare1} OPTIONAL
+ t312-Expiry-r16, bh-RLF-r16, beamFailure-r17, spare3, spare2, spare1} OPTIONAL
+ ]],
+ [[
+ previousPSCellId-r17 SEQUENCE {
+ physCellId-r17 PhysCellId,
+ carrierFreq-r17 ARFCN-ValueNR
+ } OPTIONAL,
+ failedPSCellId-r17 SEQUENCE {
+ physCellId-r17 PhysCellId,
+ carrierFreq-r17 ARFCN-ValueNR
+ } OPTIONAL,
+ timeSCGFailure-r17 INTEGER (0..1023) OPTIONAL,
+ perRAInfoList-r17 PerRAInfoList-r16 OPTIONAL
]]
}
@@ -1208,8 +1500,8 @@ SCGFailureInformationEUTRA-v1590-IEs ::= SEQUENCE {
FailureReportSCG-EUTRA ::= SEQUENCE {
failureType ENUMERATED {
t313-Expiry, randomAccessProblem,rlc-MaxNumRetx,
- scg-ChangeFailure, spare4,
- spare3, spare2, spare1},
+ scg-ChangeFailure, spare4,
+ spare3, spare2, spare1},
measResultFreqListMRDC MeasResultFreqListFailMRDC OPTIONAL,
measResultSCG-FailureMRDC OCTET STRING OPTIONAL,
...,
@@ -1318,6 +1610,33 @@ SIB1-v1630-IEs ::= SEQUENCE {
uac-BarringInfo-v1630 SEQUENCE {
uac-AC1-SelectAssistInfo-r16 SEQUENCE (SIZE (2..maxPLMN)) OF UAC-AC1-SelectAssistInfo-r16
} OPTIONAL, -- Need R
+ nonCriticalExtension SIB1-v1700-IEs OPTIONAL
+}
+
+SIB1-v1700-IEs ::= SEQUENCE {
+ hsdn-Cell-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ uac-BarringInfo-v1700 SEQUENCE {
+ uac-BarringInfoSetList-v1700 UAC-BarringInfoSetList-v1700
+ } OPTIONAL, -- Cond MINT
+ sdt-ConfigCommon-r17 SDT-ConfigCommonSIB-r17 OPTIONAL, -- Need R
+ redCap-ConfigCommon-r17 RedCap-ConfigCommonSIB-r17 OPTIONAL, -- Need R
+ featurePriorities-r17 SEQUENCE {
+ redCapPriority-r17 FeaturePriority-r17 OPTIONAL, -- Need R
+ slicingPriority-r17 FeaturePriority-r17 OPTIONAL, -- Need R
+ msg3-Repetitions-Priority-r17 FeaturePriority-r17 OPTIONAL, -- Need R
+ sdt-Priority-r17 FeaturePriority-r17 OPTIONAL -- Need R
+ } OPTIONAL, -- Need R
+ si-SchedulingInfo-v1700 SI-SchedulingInfo-v1700 OPTIONAL, -- Need R
+ hyperSFN-r17 BIT STRING (SIZE (10)) OPTIONAL, -- Need R
+ eDRX-AllowedIdle-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ eDRX-AllowedInactive-r17 ENUMERATED {true} OPTIONAL, -- Cond EDRX-RC
+ intraFreqReselectionRedCap-r17 ENUMERATED {allowed, notAllowed} OPTIONAL, -- Need S
+ cellBarredNTN-r17 ENUMERATED {barred, notBarred} OPTIONAL, -- Need S
+ nonCriticalExtension SIB1-v1740-IEs OPTIONAL
+}
+
+SIB1-v1740-IEs ::= SEQUENCE {
+ si-SchedulingInfo-v1740 SI-SchedulingInfo-v1740 OPTIONAL, -- Need R
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1325,6 +1644,26 @@ UAC-AccessCategory1-SelectionAssistanceInfo ::= ENUMERATED {a, b, c}
UAC-AC1-SelectAssistInfo-r16 ::= ENUMERATED {a, b, c, notConfigured}
+SDT-ConfigCommonSIB-r17 ::= SEQUENCE {
+ sdt-RSRP-Threshold-r17 RSRP-Range OPTIONAL, -- Need R
+ sdt-LogicalChannelSR-DelayTimer-r17 ENUMERATED { sf20, sf40, sf64, sf128, sf512, sf1024, sf2560, spare1} OPTIONAL, -- Need R
+ sdt-DataVolumeThreshold-r17 ENUMERATED {byte32, byte100, byte200, byte400, byte600, byte800, byte1000, byte2000, byte4000,
+ byte8000, byte9000, byte10000, byte12000, byte24000, byte48000, byte96000},
+ t319a-r17 ENUMERATED { ms100, ms200, ms300, ms400, ms600, ms1000, ms2000,
+ ms3000, ms4000, spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+}
+
+RedCap-ConfigCommonSIB-r17 ::= SEQUENCE {
+ halfDuplexRedCapAllowed-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ cellBarredRedCap-r17 SEQUENCE {
+ cellBarredRedCap1Rx-r17 ENUMERATED {barred, notBarred},
+ cellBarredRedCap2Rx-r17 ENUMERATED {barred, notBarred}
+ } OPTIONAL, -- Need R
+ ...
+}
+
+FeaturePriority-r17 ::= INTEGER (0..7)
+
-- TAG-SIB1-STOP
-- TAG-SIDELINKUEINFORMATIONNR-START
@@ -1340,7 +1679,19 @@ SidelinkUEInformationNR-r16-IEs ::= SEQUENCE {
sl-TxResourceReqList-r16 SL-TxResourceReqList-r16 OPTIONAL,
sl-FailureList-r16 SL-FailureList-r16 OPTIONAL,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension SidelinkUEInformationNR-v1700-IEs OPTIONAL
+}
+
+SidelinkUEInformationNR-v1700-IEs ::= SEQUENCE {
+ sl-TxResourceReqList-v1700 SL-TxResourceReqList-v1700 OPTIONAL,
+ sl-RxDRX-ReportList-v1700 SL-RxDRX-ReportList-v1700 OPTIONAL,
+ sl-RxInterestedGC-BC-DestList-r17 SL-RxInterestedGC-BC-DestList-r17 OPTIONAL,
+ sl-RxInterestedFreqListDisc-r17 SL-InterestedFreqList-r16 OPTIONAL,
+ sl-TxResourceReqListDisc-r17 SL-TxResourceReqListDisc-r17 OPTIONAL,
+ sl-TxResourceReqListCommRelay-r17 SL-TxResourceReqListCommRelay-r17 OPTIONAL,
+ ue-Type-r17 ENUMERATED {relayUE, remoteUE} OPTIONAL,
+ sl-SourceIdentityRemoteUE-r17 SL-SourceIdentity-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
SL-InterestedFreqList-r16 ::= SEQUENCE (SIZE (1..maxNrofFreqSL-r16)) OF INTEGER (1..maxNrofFreqSL-r16)
@@ -1357,6 +1708,61 @@ SL-TxResourceReq-r16 ::= SEQUENCE {
sl-CapabilityInformationSidelink-r16 OCTET STRING OPTIONAL
}
+SL-TxResourceReqList-v1700 ::= SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-TxResourceReq-v1700
+
+SL-RxDRX-ReportList-v1700 ::= SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-RxDRX-Report-v1700
+
+SL-TxResourceReq-v1700 ::= SEQUENCE {
+ sl-DRX-InfoFromRxList-r17 SEQUENCE (SIZE (1..maxNrofSL-RxInfoSet-r17)) OF SL-DRX-ConfigUC-SemiStatic-r17 OPTIONAL,
+ sl-DRX-Indication-r17 ENUMERATED {on, off} OPTIONAL,
+ ...
+}
+
+SL-RxDRX-Report-v1700 ::= SEQUENCE {
+ sl-DRX-ConfigFromTx-r17 SL-DRX-ConfigUC-SemiStatic-r17,
+ ...}
+
+SL-RxInterestedGC-BC-DestList-r17 ::= SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-RxInterestedGC-BC-Dest-r17
+
+SL-RxInterestedGC-BC-Dest-r17 ::= SEQUENCE {
+ sl-RxInterestedQoS-InfoList-r17 SEQUENCE (SIZE (1..maxNrofSL-QFIsPerDest-r16)) OF SL-QoS-Info-r16,
+ sl-DestinationIdentity-r16 SL-DestinationIdentity-r16
+}
+
+SL-TxResourceReqListDisc-r17 ::= SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-TxResourceReqDisc-r17
+
+SL-TxResourceReqDisc-r17 ::= SEQUENCE {
+ sl-DestinationIdentityDisc-r17 SL-DestinationIdentity-r16,
+ sl-SourceIdentityRelayUE-r17 SL-SourceIdentity-r17 OPTIONAL,
+ sl-CastTypeDisc-r17 ENUMERATED {broadcast, groupcast, unicast, spare1},
+ sl-TxInterestedFreqListDisc-r17 SL-TxInterestedFreqList-r16,
+ sl-TypeTxSyncListDisc-r17 SEQUENCE (SIZE (1..maxNrofFreqSL-r16)) OF SL-TypeTxSync-r16,
+ sl-DiscoveryType-r17 ENUMERATED {relay, non-Relay},
+ ...
+}
+
+SL-TxResourceReqListCommRelay-r17 ::= SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-TxResourceReqCommRelayInfo-r17
+
+SL-TxResourceReqCommRelayInfo-r17 ::= SEQUENCE {
+ sl-RelayDRXConfig-r17 SL-TxResourceReq-v1700 OPTIONAL,
+ sl-TxResourceReqCommRelay-r17 SL-TxResourceReqCommRelay-r17
+}
+
+SL-TxResourceReqCommRelay-r17 ::= CHOICE {
+ sl-TxResourceReqL2U2N-Relay-r17 SL-TxResourceReqL2U2N-Relay-r17,
+ sl-TxResourceReqL3U2N-Relay-r17 SL-TxResourceReq-r16
+}
+
+SL-TxResourceReqL2U2N-Relay-r17 ::= SEQUENCE {
+ sl-DestinationIdentityL2U2N-r17 SL-DestinationIdentity-r16 OPTIONAL,
+ sl-TxInterestedFreqListL2U2N-r17 SL-TxInterestedFreqList-r16,
+ sl-TypeTxSyncListL2U2N-r17 SEQUENCE (SIZE (1..maxNrofFreqSL-r16)) OF SL-TypeTxSync-r16,
+ sl-LocalID-Request-r17 ENUMERATED {true} OPTIONAL,
+ sl-PagingIdentityRemoteUE-r17 SL-PagingIdentityRemoteUE-r17 OPTIONAL,
+ sl-CapabilityInformationSidelink-r17 OCTET STRING OPTIONAL,
+ ...
+}
+
SL-TxInterestedFreqList-r16 ::= SEQUENCE (SIZE (1..maxNrofFreqSL-r16)) OF INTEGER (1..maxNrofFreqSL-r16)
SL-QoS-Info-r16 ::= SEQUENCE {
@@ -1376,7 +1782,7 @@ SL-FailureList-r16 ::= SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) O
SL-Failure-r16 ::= SEQUENCE {
sl-DestinationIdentity-r16 SL-DestinationIdentity-r16,
- sl-Failure-r16 ENUMERATED {rlf,configFailure, spare6, spare5, spare4, spare3, spare2, spare1}
+ sl-Failure-r16 ENUMERATED {rlf,configFailure, drxReject-v1710, spare5, spare4, spare3, spare2, spare1}
}
-- TAG-SIDELINKUEINFORMATIONNR-STOP
@@ -1407,9 +1813,15 @@ SystemInformation-IEs ::= SEQUENCE {
sib11-v1610 SIB11-r16,
sib12-v1610 SIB12-r16,
sib13-v1610 SIB13-r16,
- sib14-v1610 SIB14-r16
+ sib14-v1610 SIB14-r16,
+ sib15-v1700 SIB15-r17,
+ sib16-v1700 SIB16-r17,
+ sib17-v1700 SIB17-r17,
+ sib18-v1700 SIB18-r17,
+ sib19-v1700 SIB19-r17,
+ sib20-v1700 SIB20-r17,
+ sib21-v1700 SIB21-r17
},
-
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1455,9 +1867,21 @@ OverheatingAssistance ::= SEQUENCE {
reducedMIMO-LayersFR2-UL MIMO-LayersUL
} OPTIONAL
}
+OverheatingAssistance-r17 ::= SEQUENCE {
+ reducedMaxBW-FR2-2-r17 SEQUENCE {
+ reducedBW-FR2-2-DL-r17 ReducedAggregatedBandwidth-r17,
+ reducedBW-FR2-2-UL-r17 ReducedAggregatedBandwidth-r17
+ } OPTIONAL,
+ reducedMaxMIMO-LayersFR2-2 SEQUENCE {
+ reducedMIMO-LayersFR2-2-DL MIMO-LayersDL,
+ reducedMIMO-LayersFR2-2-UL MIMO-LayersUL
+ } OPTIONAL
+}
ReducedAggregatedBandwidth ::= ENUMERATED {mhz0, mhz10, mhz20, mhz30, mhz40, mhz50, mhz60, mhz80, mhz100, mhz200, mhz300, mhz400}
+ReducedAggregatedBandwidth-r17 ::= ENUMERATED {mhz0, mhz100, mhz200, mhz400, mhz800, mhz1200, mhz1600, mhz2000}
+
UEAssistanceInformation-v1610-IEs ::= SEQUENCE {
idc-Assistance-r16 IDC-Assistance-r16 OPTIONAL,
drx-Preference-r16 DRX-Preference-r16 OPTIONAL,
@@ -1468,7 +1892,26 @@ UEAssistanceInformation-v1610-IEs ::= SEQUENCE {
releasePreference-r16 ReleasePreference-r16 OPTIONAL,
sl-UE-AssistanceInformationNR-r16 SL-UE-AssistanceInformationNR-r16 OPTIONAL,
referenceTimeInfoPreference-r16 BOOLEAN OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UEAssistanceInformation-v1700-IEs OPTIONAL
+}
+
+UEAssistanceInformation-v1700-IEs ::= SEQUENCE {
+ ul-GapFR2-Preference-r17 UL-GapFR2-Preference-r17 OPTIONAL,
+ musim-Assistance-r17 MUSIM-Assistance-r17 OPTIONAL,
+ overheatingAssistance-r17 OverheatingAssistance-r17 OPTIONAL,
+ maxBW-PreferenceFR2-2-r17 MaxBW-PreferenceFR2-2-r17 OPTIONAL,
+ maxMIMO-LayerPreferenceFR2-2-r17 MaxMIMO-LayerPreferenceFR2-2-r17 OPTIONAL,
+ minSchedulingOffsetPreferenceExt-r17 MinSchedulingOffsetPreferenceExt-r17 OPTIONAL,
+ rlm-MeasRelaxationState-r17 BOOLEAN OPTIONAL,
+ bfd-MeasRelaxationState-r17 BIT STRING (SIZE (1..maxNrofServingCells)) OPTIONAL,
+ nonSDT-DataIndication-r17 SEQUENCE {
+ resumeCause-r17 ResumeCause OPTIONAL
+ } OPTIONAL,
+ scg-DeactivationPreference-r17 ENUMERATED { scgDeactivationPreferred, noPreference } OPTIONAL,
+ uplinkData-r17 ENUMERATED { true } OPTIONAL,
+ rrm-MeasRelaxationFulfilment-r17 BOOLEAN OPTIONAL,
+ propagationDelayDifference-r17 PropagationDelayDifference-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
IDC-Assistance-r16 ::= SEQUENCE {
@@ -1523,6 +1966,13 @@ MaxBW-Preference-r16 ::= SEQUENCE {
reducedMaxBW-FR2-r16 ReducedMaxBW-FRx-r16 OPTIONAL
}
+MaxBW-PreferenceFR2-2-r17 ::= SEQUENCE {
+ reducedMaxBW-FR2-2-r17 SEQUENCE {
+ reducedBW-FR2-2-DL-r17 ReducedAggregatedBandwidth-r17 OPTIONAL,
+ reducedBW-FR2-2-UL-r17 ReducedAggregatedBandwidth-r17 OPTIONAL
+ } OPTIONAL
+}
+
MaxCC-Preference-r16 ::= SEQUENCE {
reducedMaxCCs-r16 ReducedMaxCCs-r16 OPTIONAL
}
@@ -1538,6 +1988,13 @@ MaxMIMO-LayerPreference-r16 ::= SEQUENCE {
} OPTIONAL
}
+MaxMIMO-LayerPreferenceFR2-2-r17 ::= SEQUENCE {
+ reducedMaxMIMO-LayersFR2-2-r17 SEQUENCE {
+ reducedMIMO-LayersFR2-2-DL-r17 INTEGER (1..8),
+ reducedMIMO-LayersFR2-2-UL-r17 INTEGER (1..4)
+ } OPTIONAL
+}
+
MinSchedulingOffsetPreference-r16 ::= SEQUENCE {
preferredK0-r16 SEQUENCE {
preferredK0-SCS-15kHz-r16 ENUMERATED {sl1, sl2, sl4, sl6} OPTIONAL,
@@ -1553,6 +2010,24 @@ MinSchedulingOffsetPreference-r16 ::= SEQUENCE {
} OPTIONAL
}
+MinSchedulingOffsetPreferenceExt-r17 ::= SEQUENCE {
+ preferredK0-r17 SEQUENCE {
+ preferredK0-SCS-480kHz-r17 ENUMERATED {sl8, sl16, sl32, sl48} OPTIONAL,
+ preferredK0-SCS-960kHz-r17 ENUMERATED {sl8, sl16, sl32, sl48} OPTIONAL
+ } OPTIONAL,
+ preferredK2-r17 SEQUENCE {
+ preferredK2-SCS-480kHz-r17 ENUMERATED {sl8, sl16, sl32, sl48} OPTIONAL,
+ preferredK2-SCS-960kHz-r17 ENUMERATED {sl8, sl16, sl32, sl48} OPTIONAL
+ } OPTIONAL
+}
+
+MUSIM-Assistance-r17 ::= SEQUENCE {
+ musim-PreferredRRC-State-r17 ENUMERATED {idle, inactive, outOfConnected} OPTIONAL,
+ musim-GapPreferenceList-r17 MUSIM-GapPreferenceList-r17 OPTIONAL
+}
+
+MUSIM-GapPreferenceList-r17 ::= SEQUENCE (SIZE (1..4)) OF MUSIM-GapInfo-r17
+
ReleasePreference-r16 ::= SEQUENCE {
preferredRRC-State-r16 ENUMERATED {idle, inactive, connected, outOfConnected}
}
@@ -1576,6 +2051,12 @@ SL-TrafficPatternInfo-r16::= SEQUENCE {
sl-QoS-FlowIdentity-r16 SL-QoS-FlowIdentity-r16
}
+UL-GapFR2-Preference-r17::= SEQUENCE {
+ ul-GapFR2-PatternPreference-r17 INTEGER (0..3) OPTIONAL
+}
+
+PropagationDelayDifference-r17 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (-270..270)
+
-- TAG-UEASSISTANCEINFORMATION-STOP
-- TAG-UECAPABILITYENQUIRY-START
@@ -1599,7 +2080,7 @@ UECapabilityEnquiry-v1560-IEs ::= SEQUENCE {
}
UECapabilityEnquiry-v1610-IEs ::= SEQUENCE {
- rrc-SegAllowed-r16 ENUMERATED {enabled} OPTIONAL, -- Need N
+ rrc-SegAllowed-r16 ENUMERATED {enabled} OPTIONAL, -- Need N
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1616,7 +2097,6 @@ UECapabilityInformation ::= SEQUENCE {
UECapabilityInformation-IEs ::= SEQUENCE {
ue-CapabilityRAT-ContainerList UE-CapabilityRAT-ContainerList OPTIONAL,
-
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
@@ -1640,6 +2120,12 @@ UEInformationRequest-r16-IEs ::= SEQUENCE {
rlf-ReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N
mobilityHistoryReportReq-r16 ENUMERATED {true} OPTIONAL, -- Need N
lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UEInformationRequest-v1700-IEs OPTIONAL
+}
+
+UEInformationRequest-v1700-IEs ::= SEQUENCE {
+ successHO-ReportReq-r17 ENUMERATED {true} OPTIONAL, -- Need N
+ coarseLocationRequest-r17 ENUMERATED {true} OPTIONAL, -- Need N
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1663,6 +2149,13 @@ UEInformationResponse-r16-IEs ::= SEQUENCE {
rlf-Report-r16 RLF-Report-r16 OPTIONAL,
mobilityHistoryReport-r16 MobilityHistoryReport-r16 OPTIONAL,
lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UEInformationResponse-v1700-IEs OPTIONAL
+}
+
+UEInformationResponse-v1700-IEs ::= SEQUENCE {
+ successHO-Report-r17 SuccessHO-Report-r17 OPTIONAL,
+ connEstFailReportList-r17 ConnEstFailReportList-r17 OPTIONAL,
+ coarseLocationInfo-r17 OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -1686,11 +2179,14 @@ LogMeasInfo-r16 ::= SEQUENCE {
servCellIdentity-r16 CGI-Info-Logging-r16 OPTIONAL,
measResultServingCell-r16 MeasResultServingCell-r16 OPTIONAL,
measResultNeighCells-r16 SEQUENCE {
- measResultNeighCellListNR MeasResultListLogging2NR-r16 OPTIONAL,
- measResultNeighCellListEUTRA MeasResultList2EUTRA-r16 OPTIONAL
+ measResultNeighCellListNR MeasResultListLogging2NR-r16 OPTIONAL,
+ measResultNeighCellListEUTRA MeasResultList2EUTRA-r16 OPTIONAL
},
anyCellSelectionDetected-r16 ENUMERATED {true} OPTIONAL,
- ...
+ ...,
+ [[
+ inDeviceCoexDetected-r17 ENUMERATED {true} OPTIONAL
+ ]]
}
ConnEstFailReport-r16 ::= SEQUENCE {
@@ -1706,6 +2202,8 @@ ConnEstFailReport-r16 ::= SEQUENCE {
...
}
+ConnEstFailReportList-r17 ::= SEQUENCE (SIZE (1..maxCEFReport-r17)) OF ConnEstFailReport-r16
+
MeasResultServingCell-r16 ::= SEQUENCE {
resultsSSB-Cell MeasQuantityResults,
resultsSSB SEQUENCE{
@@ -1732,16 +2230,17 @@ RA-ReportList-r16 ::= SEQUENCE (SIZE (1..maxRAReport-r16)) OF RA-Report-r16
RA-Report-r16 ::= SEQUENCE {
cellId-r16 CHOICE {
cellGlobalId-r16 CGI-Info-Logging-r16,
- pci-arfcn-r16 SEQUENCE {
- physCellId-r16 PhysCellId,
- carrierFreq-r16 ARFCN-ValueNR
- }
+ pci-arfcn-r16 PCI-ARFCN-NR-r16
},
ra-InformationCommon-r16 RA-InformationCommon-r16 OPTIONAL,
raPurpose-r16 ENUMERATED {accessRelated, beamFailureRecovery, reconfigurationWithSync, ulUnSynchronized,
schedulingRequestFailure, noPUCCHResourceAvailable, requestForOtherSI,
- spare9, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1},
- ...
+ msg3RequestForOtherSI-r17, spare8, spare7, spare6, spare5, spare4, spare3,
+ spare2, spare1},
+ ...,
+ [[
+ spCellID-r17 CGI-Info-Logging-r16 OPTIONAL
+ ]]
}
RA-InformationCommon-r16 ::= SEQUENCE {
@@ -1757,13 +2256,38 @@ RA-InformationCommon-r16 ::= SEQUENCE {
perRAInfoList-r16 PerRAInfoList-r16,
...,
[[
- perRAInfoListExt-v1660 PerRAInfoListExt-v1660 OPTIONAL
+ perRAInfoList-v1660 PerRAInfoList-v1660 OPTIONAL
+ ]],
+ [[
+ msg1-SCS-From-prach-ConfigurationIndex-r16 ENUMERATED {kHz1dot25, kHz5, spare2, spare1} OPTIONAL
+ ]],
+ [[
+ msg1-SCS-From-prach-ConfigurationIndexCFRA-r16 ENUMERATED {kHz1dot25, kHz5, spare2, spare1} OPTIONAL
+ ]],
+ [[
+ msgA-RO-FrequencyStart-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL,
+ msgA-RO-FrequencyStartCFRA-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL,
+ msgA-SubcarrierSpacing-r17 SubcarrierSpacing OPTIONAL,
+ msgA-RO-FDM-r17 ENUMERATED {one, two, four, eight} OPTIONAL,
+ msgA-RO-FDMCFRA-r17 ENUMERATED {one, two, four, eight} OPTIONAL,
+ msgA-SCS-From-prach-ConfigurationIndex-r17 ENUMERATED {kHz1dot25, kHz5, spare2, spare1} OPTIONAL,
+ msgA-TransMax-r17 ENUMERATED {n1, n2, n4, n6, n8, n10, n20, n50, n100, n200} OPTIONAL,
+ msgA-MCS-r17 INTEGER (0..15) OPTIONAL,
+ nrofPRBs-PerMsgA-PO-r17 INTEGER (1..32) OPTIONAL,
+ msgA-PUSCH-TimeDomainAllocation-r17 INTEGER (1..maxNrofUL-Allocations) OPTIONAL,
+ frequencyStartMsgA-PUSCH-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1) OPTIONAL,
+ nrofMsgA-PO-FDM-r17 ENUMERATED {one, two, four, eight} OPTIONAL,
+ dlPathlossRSRP-r17 RSRP-Range OPTIONAL,
+ intendedSIBs-r17 SEQUENCE (SIZE (1..maxSIB)) OF SIB-Type-r17 OPTIONAL,
+ ssbsForSI-Acquisition-r17 SEQUENCE (SIZE (1..maxNrofSSBs-r16)) OF SSB-Index OPTIONAL,
+ msgA-PUSCH-PayloadSize-r17 BIT STRING (SIZE (5)) OPTIONAL,
+ onDemandSISuccess-r17 ENUMERATED {true} OPTIONAL
]]
}
PerRAInfoList-r16 ::= SEQUENCE (SIZE (1..200)) OF PerRAInfo-r16
-PerRAInfoListExt-v1660 ::= SEQUENCE (SIZE (1..200)) OF PerRACSI-RSInfoExt-v1660
+PerRAInfoList-v1660 ::= SEQUENCE (SIZE (1..200)) OF PerRACSI-RSInfo-v1660
PerRAInfo-r16 ::= CHOICE {
perRASSBInfoList-r16 PerRASSBInfo-r16,
@@ -1781,7 +2305,7 @@ PerRACSI-RSInfo-r16 ::= SEQUENCE {
numberOfPreamblesSentOnCSI-RS-r16 INTEGER (1..200)
}
-PerRACSI-RSInfoExt-v1660 ::= SEQUENCE {
+PerRACSI-RSInfo-v1660 ::= SEQUENCE {
csi-RS-Index-v1660 INTEGER (1..96) OPTIONAL
}
@@ -1790,9 +2314,15 @@ PerRAAttemptInfoList-r16 ::= SEQUENCE (SIZE (1..200)) OF PerRAAttemptInf
PerRAAttemptInfo-r16 ::= SEQUENCE {
contentionDetected-r16 BOOLEAN OPTIONAL,
dlRSRPAboveThreshold-r16 BOOLEAN OPTIONAL,
- ...
+ ...,
+ [[
+ fallbackToFourStepRA-r17 ENUMERATED {true} OPTIONAL
+ ]]
}
+SIB-Type-r17 ::= ENUMERATED {sibType2, sibType3, sibType4, sibType5, sibType9, sibType10-v1610, sibType11-v1610, sibType12-v1610,
+ sibType13-v1610, sibType14-v1610, spare6, spare5, spare4, spare3, spare2, spare1}
+
RLF-Report-r16 ::= CHOICE {
nr-RLF-Report-r16 SEQUENCE {
measResultLastServCell-r16 MeasResultRLFNR-r16,
@@ -1808,17 +2338,11 @@ RLF-Report-r16 ::= CHOICE {
failedPCellId-r16 CHOICE {
nrFailedPCellId-r16 CHOICE {
cellGlobalId-r16 CGI-Info-Logging-r16,
- pci-arfcn-r16 SEQUENCE {
- physCellId-r16 PhysCellId,
- carrierFreq-r16 ARFCN-ValueNR
- }
+ pci-arfcn-r16 PCI-ARFCN-NR-r16
},
eutraFailedPCellId-r16 CHOICE {
cellGlobalId-r16 CGI-InfoEUTRALogging,
- pci-arfcn-r16 SEQUENCE {
- physCellId-r16 EUTRA-PhysCellId,
- carrierFreq-r16 ARFCN-ValueEUTRA
- }
+ pci-arfcn-r16 PCI-ARFCN-EUTRA-r16
}
},
reconnectCellId-r16 CHOICE {
@@ -1832,22 +2356,58 @@ RLF-Report-r16 ::= CHOICE {
connectionFailureType-r16 ENUMERATED {rlf, hof},
rlf-Cause-r16 ENUMERATED {t310-Expiry, randomAccessProblem, rlc-MaxNumRetx,
beamFailureRecoveryFailure, lbtFailure-r16,
- bh-rlfRecoveryFailure, spare2, spare1},
+ bh-rlfRecoveryFailure, t312-expiry-r17, spare1},
locationInfo-r16 LocationInfo-r16 OPTIONAL,
noSuitableCellFound-r16 ENUMERATED {true} OPTIONAL,
ra-InformationCommon-r16 RA-InformationCommon-r16 OPTIONAL,
...,
[[
csi-rsRLMConfigBitmap-v1650 BIT STRING (SIZE (96)) OPTIONAL
+ ]],
+ [[
+ lastHO-Type-r17 ENUMERATED {cho, daps, spare2, spare1} OPTIONAL,
+ timeConnSourceDAPS-Failure-r17 TimeConnSourceDAPS-Failure-r17 OPTIONAL,
+ timeSinceCHO-Reconfig-r17 TimeSinceCHO-Reconfig-r17 OPTIONAL,
+ choCellId-r17 CHOICE {
+ cellGlobalId-r17 CGI-Info-Logging-r16,
+ pci-arfcn-r17 PCI-ARFCN-NR-r16
+ } OPTIONAL,
+ choCandidateCellList-r17 ChoCandidateCellList-r17 OPTIONAL
]]
},
eutra-RLF-Report-r16 SEQUENCE {
failedPCellId-EUTRA CGI-InfoEUTRALogging,
measResult-RLF-Report-EUTRA-r16 OCTET STRING,
- ...
+ ...,
+ [[
+ measResult-RLF-Report-EUTRA-v1690 OCTET STRING OPTIONAL
+ ]]
}
}
+SuccessHO-Report-r17 ::= SEQUENCE {
+ sourceCellInfo-r17 SEQUENCE {
+ sourcePCellId-r17 CGI-Info-Logging-r16,
+ sourceCellMeas-r17 MeasResultSuccessHONR-r17 OPTIONAL,
+ rlf-InSourceDAPS-r17 ENUMERATED {true} OPTIONAL
+ },
+ targetCellInfo-r17 SEQUENCE {
+ targetPCellId-r17 CGI-Info-Logging-r16,
+ targetCellMeas-r17 MeasResultSuccessHONR-r17 OPTIONAL
+ },
+ measResultNeighCells-r17 SEQUENCE {
+ measResultListNR-r17 MeasResultList2NR-r16 OPTIONAL,
+ measResultListEUTRA-r17 MeasResultList2EUTRA-r16 OPTIONAL
+ } OPTIONAL,
+ locationInfo-r17 LocationInfo-r16 OPTIONAL,
+ timeSinceCHO-Reconfig-r17 TimeSinceCHO-Reconfig-r17 OPTIONAL,
+ shr-Cause-r17 SHR-Cause-r17 OPTIONAL,
+ ra-InformationCommon-r17 RA-InformationCommon-r16 OPTIONAL,
+ upInterruptionTimeAtHO-r17 UPInterruptionTimeAtHO-r17 OPTIONAL,
+ c-RNTI-r17 RNTI-Value OPTIONAL,
+ ...
+}
+
MeasResultList2NR-r16 ::= SEQUENCE(SIZE (1..maxFreq)) OF MeasResult2NR-r16
MeasResultList2EUTRA-r16 ::= SEQUENCE(SIZE (1..maxFreq)) OF MeasResult2EUTRA-r16
@@ -1892,13 +2452,89 @@ MeasResultRLFNR-r16 ::= SEQUENCE {
}
}
+MeasResultSuccessHONR-r17::= SEQUENCE {
+ measResult-r17 SEQUENCE {
+ cellResults-r17 SEQUENCE{
+ resultsSSB-Cell-r17 MeasQuantityResults OPTIONAL,
+ resultsCSI-RS-Cell-r17 MeasQuantityResults OPTIONAL
+ },
+ rsIndexResults-r17 SEQUENCE{
+ resultsSSB-Indexes-r17 ResultsPerSSB-IndexList OPTIONAL,
+ resultsCSI-RS-Indexes-r17 ResultsPerCSI-RS-IndexList OPTIONAL
+ }
+ }
+}
+
+ChoCandidateCellList-r17 ::= SEQUENCE(SIZE (1..maxNrofCondCells-r16)) OF ChoCandidateCell-r17
+
+ChoCandidateCell-r17 ::= CHOICE {
+ cellGlobalId-r17 CGI-Info-Logging-r16,
+ pci-arfcn-r17 PCI-ARFCN-NR-r16
+}
+
+SHR-Cause-r17 ::= SEQUENCE {
+ t304-cause-r17 ENUMERATED {true} OPTIONAL,
+ t310-cause-r17 ENUMERATED {true} OPTIONAL,
+ t312-cause-r17 ENUMERATED {true} OPTIONAL,
+ sourceDAPS-Failure-r17 ENUMERATED {true} OPTIONAL,
+ ...
+}
+
TimeSinceFailure-r16 ::= INTEGER (0..172800)
MobilityHistoryReport-r16 ::= VisitedCellInfoList-r16
TimeUntilReconnection-r16 ::= INTEGER (0..172800)
+TimeSinceCHO-Reconfig-r17 ::= INTEGER (0..1023)
+
+TimeConnSourceDAPS-Failure-r17 ::= INTEGER (0..1023)
+
+UPInterruptionTimeAtHO-r17 ::= INTEGER (0..1023)
+
-- TAG-UEINFORMATIONRESPONSE-STOP
+-- TAG-UEPOSITIONINGASSISTANCEINFO-START
+
+UEPositioningAssistanceInfo-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ uePositioningAssistanceInfo-r17 UEPositioningAssistanceInfo-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+UEPositioningAssistanceInfo-r17-IEs ::= SEQUENCE {
+ ue-TxTEG-AssociationList-r17 UE-TxTEG-AssociationList-r17 OPTIONAL,
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UEPositioningAssistanceInfo-v1720-IEs OPTIONAL
+}
+
+UEPositioningAssistanceInfo-v1720-IEs::= SEQUENCE {
+ ue-TxTEG-TimingErrorMarginValue-r17 ENUMERATED {tc0, tc2, tc4, tc6, tc8, tc12, tc16, tc20, tc24, tc32, tc40, tc48, tc56,
+ tc64, tc72, tc80} OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+UE-TxTEG-AssociationList-r17 ::= SEQUENCE (SIZE (1..maxNrOfTxTEGReport-r17)) OF UE-TxTEG-Association-r17
+
+UE-TxTEG-Association-r17 ::= SEQUENCE {
+ ue-TxTEG-ID-r17 INTEGER (0..maxNrOfTxTEG-ID-1-r17),
+ nr-TimeStamp-r17 NR-TimeStamp-r17,
+ associatedSRS-PosResourceIdList-r17 SEQUENCE (SIZE(1..maxNrofSRS-PosResources-r16)) OF SRS-PosResourceId-r16,
+ servCellId-r17 ServCellIndex OPTIONAL
+}
+
+NR-TimeStamp-r17 ::= SEQUENCE {
+ nr-SFN-r17 INTEGER (0..1023),
+ nr-Slot-r17 CHOICE {
+ scs15-r17 INTEGER (0..9),
+ scs30-r17 INTEGER (0..19),
+ scs60-r17 INTEGER (0..39),
+ scs120-r17 INTEGER (0..79)
+ },
+ ...
+}
+
+-- TAG-UEPOSITIONINGASSISTANCEINFO-STOP
-- TAG-ULDEDICATEDMESSAGESEGMENT-START
ULDedicatedMessageSegment-r16 ::= SEQUENCE {
@@ -1929,7 +2565,12 @@ ULInformationTransfer ::= SEQUENCE {
ULInformationTransfer-IEs ::= SEQUENCE {
dedicatedNAS-Message DedicatedNAS-Message OPTIONAL,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension ULInformationTransfer-v1700-IEs OPTIONAL
+}
+
+ULInformationTransfer-v1700-IEs ::= SEQUENCE {
+ dedicatedInfoF1c-r17 DedicatedInfoF1c-r17 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-ULINFORMATIONTRANSFER-STOP
@@ -1948,7 +2589,7 @@ ULInformationTransferIRAT-r16 ::= SEQUENCE {
ULInformationTransferIRAT-r16-IEs ::= SEQUENCE {
ul-DCCH-MessageEUTRA-r16 OCTET STRING OPTIONAL,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-ULINFORMATIONTRANSFERIRAT-STOP
@@ -1975,7 +2616,7 @@ ULInformationTransferMRDC-IEs::= SEQUENCE {
-- TAG-SETUPRELEASE-START
-- WS modification: asn2wrs does not support this syntax; replace all occurrences
--- CHOICE {release NULL, setup ElementTypeParam } ::= CHOICE {
+-- SetupRelease { ElementTypeParam } ::= CHOICE {
-- release NULL,
-- setup ElementTypeParam
-- }
@@ -2030,6 +2671,16 @@ SIB2 ::= SEQUENCE {
[[
smtc2-LP-r16 SSB-MTC2-LP-r16 OPTIONAL, -- Need R
ssb-PositionQCL-Common-r16 SSB-PositionQCL-Relation-r16 OPTIONAL -- Cond SharedSpectrum
+ ]],
+ [[
+ ssb-PositionQCL-Common-r17 SSB-PositionQCL-Relation-r17 OPTIONAL -- Cond SharedSpectrum2
+ ]],
+ [[
+ smtc4list-r17 SSB-MTC4List-r17 OPTIONAL -- Need R
+ ]],
+ [[
+ frequencyBandList-v1760 MultiFrequencyBandListNR-SIB-v1760 OPTIONAL, -- Need R
+ frequencyBandListSUL-v1760 MultiFrequencyBandListNR-SIB-v1760 OPTIONAL -- Need R
]]
},
...,
@@ -2051,6 +2702,21 @@ SIB2 ::= SEQUENCE {
combineRelaxedMeasCondition-r16 ENUMERATED {true} OPTIONAL, -- Need R
highPriorityMeasRelax-r16 ENUMERATED {true} OPTIONAL -- Need R
} OPTIONAL -- Need R
+ ]],
+ [[
+ cellEquivalentSize-r17 INTEGER(2..16) OPTIONAL, -- Cond HSDN
+ relaxedMeasurement-r17 SEQUENCE {
+ stationaryMobilityEvaluation-r17 SEQUENCE {
+ s-SearchDeltaP-Stationary-r17 ENUMERATED {dB2, dB3, dB6, dB9, dB12, dB15, spare2, spare1},
+ t-SearchDeltaP-Stationary-r17 ENUMERATED {s5, s10, s20, s30, s60, s120, s180, s240, s300, spare7, spare6, spare5,
+ spare4, spare3, spare2, spare1}
+ },
+ cellEdgeEvaluationWhileStationary-r17 SEQUENCE {
+ s-SearchThresholdP2-r17 ReselectionThreshold,
+ s-SearchThresholdQ2-r17 ReselectionThresholdQ OPTIONAL -- Need R
+ } OPTIONAL, -- Need R
+ combineRelaxedMeasCondition2-r17 ENUMERATED {true} OPTIONAL -- Need R
+ } OPTIONAL -- Need R
]]
}
@@ -2061,21 +2727,29 @@ RangeToBestCell ::= Q-OffsetRange
SIB3 ::= SEQUENCE {
intraFreqNeighCellList IntraFreqNeighCellList OPTIONAL, -- Need R
- intraFreqBlackCellList IntraFreqBlackCellList OPTIONAL, -- Need R
+ intraFreqExcludedCellList IntraFreqExcludedCellList OPTIONAL, -- Need R
lateNonCriticalExtension OCTET STRING OPTIONAL,
...,
[[
intraFreqNeighCellList-v1610 IntraFreqNeighCellList-v1610 OPTIONAL, -- Need R
- intraFreqWhiteCellList-r16 IntraFreqWhiteCellList-r16 OPTIONAL, -- Cond SharedSpectrum2
+ intraFreqAllowedCellList-r16 IntraFreqAllowedCellList-r16 OPTIONAL, -- Cond SharedSpectrum2
intraFreqCAG-CellList-r16 SEQUENCE (SIZE (1..maxPLMN)) OF IntraFreqCAG-CellListPerPLMN-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ intraFreqNeighHSDN-CellList-r17 IntraFreqNeighHSDN-CellList-r17 OPTIONAL, -- Need R
+ intraFreqNeighCellList-v1710 IntraFreqNeighCellList-v1710 OPTIONAL -- Need R
+ ]],
+ [[
+ channelAccessMode2-r17 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
-
IntraFreqNeighCellList ::= SEQUENCE (SIZE (1..maxCellIntra)) OF IntraFreqNeighCellInfo
IntraFreqNeighCellList-v1610::= SEQUENCE (SIZE (1..maxCellIntra)) OF IntraFreqNeighCellInfo-v1610
+IntraFreqNeighCellList-v1710 ::= SEQUENCE (SIZE (1..maxCellIntra)) OF IntraFreqNeighCellInfo-v1710
+
IntraFreqNeighCellInfo ::= SEQUENCE {
physCellId PhysCellId,
q-OffsetCell Q-OffsetRange,
@@ -2089,15 +2763,21 @@ IntraFreqNeighCellInfo-v1610 ::= SEQUENCE {
ssb-PositionQCL-r16 SSB-PositionQCL-Relation-r16 OPTIONAL -- Cond SharedSpectrum2
}
-IntraFreqBlackCellList ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PCI-Range
+IntraFreqNeighCellInfo-v1710 ::= SEQUENCE {
+ ssb-PositionQCL-r17 SSB-PositionQCL-Relation-r17 OPTIONAL -- Cond SharedSpectrum2
+}
+
+IntraFreqExcludedCellList ::= SEQUENCE (SIZE (1..maxCellExcluded)) OF PCI-Range
-IntraFreqWhiteCellList-r16 ::= SEQUENCE (SIZE (1..maxCellWhite)) OF PCI-Range
+IntraFreqAllowedCellList-r16 ::= SEQUENCE (SIZE (1..maxCellAllowed)) OF PCI-Range
IntraFreqCAG-CellListPerPLMN-r16 ::= SEQUENCE {
plmn-IdentityIndex-r16 INTEGER (1..maxPLMN),
cag-CellList-r16 SEQUENCE (SIZE (1..maxCAG-Cell-r16)) OF PCI-Range
}
+IntraFreqNeighHSDN-CellList-r17 ::= SEQUENCE (SIZE (1..maxCellIntra)) OF PCI-Range
+
-- TAG-SIB3-STOP
-- TAG-SIB4-START
@@ -2107,6 +2787,18 @@ SIB4 ::= SEQUENCE {
...,
[[
interFreqCarrierFreqList-v1610 InterFreqCarrierFreqList-v1610 OPTIONAL -- Need R
+ ]],
+ [[
+ interFreqCarrierFreqList-v1700 InterFreqCarrierFreqList-v1700 OPTIONAL -- Need R
+ ]],
+ [[
+ interFreqCarrierFreqList-v1720 InterFreqCarrierFreqList-v1720 OPTIONAL -- Need R
+ ]],
+ [[
+ interFreqCarrierFreqList-v1730 InterFreqCarrierFreqList-v1730 OPTIONAL -- Need R
+ ]],
+ [[
+ interFreqCarrierFreqList-v1760 InterFreqCarrierFreqList-v1760 OPTIONAL -- Need R
]]
}
@@ -2114,6 +2806,14 @@ InterFreqCarrierFreqList ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCar
InterFreqCarrierFreqList-v1610 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1610
+InterFreqCarrierFreqList-v1700 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1700
+
+InterFreqCarrierFreqList-v1720 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1720
+
+InterFreqCarrierFreqList-v1730 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1730
+
+InterFreqCarrierFreqList-v1760 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1760
+
InterFreqCarrierFreqInfo ::= SEQUENCE {
dl-CarrierFreq ARFCN-ValueNR,
frequencyBandList MultiFrequencyBandListNR-SIB OPTIONAL, -- Cond Mandatory
@@ -2124,7 +2824,7 @@ InterFreqCarrierFreqInfo ::= SEQUENCE {
ssbSubcarrierSpacing SubcarrierSpacing,
ssb-ToMeasure SSB-ToMeasure OPTIONAL, -- Need S
deriveSSB-IndexFromCell BOOLEAN,
- ss-RSSI-Measurement SS-RSSI-Measurement OPTIONAL,
+ ss-RSSI-Measurement SS-RSSI-Measurement OPTIONAL, -- Need R
q-RxLevMin Q-RxLevMin,
q-RxLevMinSUL Q-RxLevMin OPTIONAL, -- Need R
q-QualMin Q-QualMin OPTIONAL, -- Need S
@@ -2141,22 +2841,47 @@ InterFreqCarrierFreqInfo ::= SEQUENCE {
cellReselectionSubPriority CellReselectionSubPriority OPTIONAL, -- Need R
q-OffsetFreq Q-OffsetRange DEFAULT dB0,
interFreqNeighCellList InterFreqNeighCellList OPTIONAL, -- Need R
- interFreqBlackCellList InterFreqBlackCellList OPTIONAL, -- Need R
+ interFreqExcludedCellList InterFreqExcludedCellList OPTIONAL, -- Need R
...
}
InterFreqCarrierFreqInfo-v1610 ::= SEQUENCE {
interFreqNeighCellList-v1610 InterFreqNeighCellList-v1610 OPTIONAL, -- Need R
smtc2-LP-r16 SSB-MTC2-LP-r16 OPTIONAL, -- Need R
- interFreqWhiteCellList-r16 InterFreqWhiteCellList-r16 OPTIONAL, -- Cond SharedSpectrum2
+ interFreqAllowedCellList-r16 InterFreqAllowedCellList-r16 OPTIONAL, -- Cond SharedSpectrum2
ssb-PositionQCL-Common-r16 SSB-PositionQCL-Relation-r16 OPTIONAL, -- Cond SharedSpectrum
interFreqCAG-CellList-r16 SEQUENCE (SIZE (1..maxPLMN)) OF InterFreqCAG-CellListPerPLMN-r16 OPTIONAL -- Need R
}
+InterFreqCarrierFreqInfo-v1700 ::= SEQUENCE {
+ interFreqNeighHSDN-CellList-r17 InterFreqNeighHSDN-CellList-r17 OPTIONAL, -- Need R
+ highSpeedMeasInterFreq-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ redCapAccessAllowed-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ ssb-PositionQCL-Common-r17 SSB-PositionQCL-Relation-r17 OPTIONAL, -- Cond SharedSpectrum
+ interFreqNeighCellList-v1710 InterFreqNeighCellList-v1710 OPTIONAL -- Cond SharedSpectrum2
+}
+
+InterFreqCarrierFreqInfo-v1720 ::= SEQUENCE {
+ smtc4list-r17 SSB-MTC4List-r17 OPTIONAL -- Need R
+}
+
+InterFreqCarrierFreqInfo-v1730 ::= SEQUENCE {
+ channelAccessMode2-r17 ENUMERATED {enabled} OPTIONAL -- Need R
+}
+
+InterFreqCarrierFreqInfo-v1760 ::= SEQUENCE {
+ frequencyBandList-v1760 MultiFrequencyBandListNR-SIB-v1760 OPTIONAL, -- Need R
+ frequencyBandListSUL-v1760 MultiFrequencyBandListNR-SIB-v1760 OPTIONAL -- Need R
+}
+
+InterFreqNeighHSDN-CellList-r17 ::= SEQUENCE (SIZE (1..maxCellInter)) OF PCI-Range
+
InterFreqNeighCellList ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo
InterFreqNeighCellList-v1610 ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo-v1610
+InterFreqNeighCellList-v1710 ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo-v1710
+
InterFreqNeighCellInfo ::= SEQUENCE {
physCellId PhysCellId,
q-OffsetCell Q-OffsetRange,
@@ -2170,9 +2895,13 @@ InterFreqNeighCellInfo-v1610 ::= SEQUENCE {
ssb-PositionQCL-r16 SSB-PositionQCL-Relation-r16 OPTIONAL -- Cond SharedSpectrum2
}
-InterFreqBlackCellList ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PCI-Range
+InterFreqNeighCellInfo-v1710 ::= SEQUENCE {
+ ssb-PositionQCL-r17 SSB-PositionQCL-Relation-r17 OPTIONAL -- Cond SharedSpectrum2
+}
+
+InterFreqExcludedCellList ::= SEQUENCE (SIZE (1..maxCellExcluded)) OF PCI-Range
-InterFreqWhiteCellList-r16 ::= SEQUENCE (SIZE (1..maxCellWhite)) OF PCI-Range
+InterFreqAllowedCellList-r16 ::= SEQUENCE (SIZE (1..maxCellAllowed)) OF PCI-Range
InterFreqCAG-CellListPerPLMN-r16 ::= SEQUENCE {
plmn-IdentityIndex-r16 INTEGER (1..maxPLMN),
@@ -2190,6 +2919,10 @@ SIB5 ::= SEQUENCE {
...,
[[
carrierFreqListEUTRA-v1610 CarrierFreqListEUTRA-v1610 OPTIONAL -- Need R
+ ]],
+ [[
+ carrierFreqListEUTRA-v1700 CarrierFreqListEUTRA-v1700 OPTIONAL, -- Need R
+ idleModeMeasVoiceFallback-r17 ENUMERATED{true} OPTIONAL -- Need R
]]
}
@@ -2197,11 +2930,13 @@ CarrierFreqListEUTRA ::= SEQUENCE (SIZE (1..maxEUTRA-Carrier)) OF Car
CarrierFreqListEUTRA-v1610 ::= SEQUENCE (SIZE (1..maxEUTRA-Carrier)) OF CarrierFreqEUTRA-v1610
+CarrierFreqListEUTRA-v1700 ::= SEQUENCE (SIZE (1..maxEUTRA-Carrier)) OF CarrierFreqEUTRA-v1700
+
CarrierFreqEUTRA ::= SEQUENCE {
carrierFreq ARFCN-ValueEUTRA,
eutra-multiBandInfoList EUTRA-MultiBandInfoList OPTIONAL, -- Need R
eutra-FreqNeighCellList EUTRA-FreqNeighCellList OPTIONAL, -- Need R
- eutra-BlackCellList EUTRA-FreqBlackCellList OPTIONAL, -- Need R
+ eutra-ExcludedCellList EUTRA-FreqExcludedCellList OPTIONAL, -- Need R
allowedMeasBandwidth EUTRA-AllowedMeasBandwidth,
presenceAntennaPort1 EUTRA-PresenceAntennaPort1,
cellReselectionPriority CellReselectionPriority OPTIONAL, -- Need R
@@ -2221,7 +2956,13 @@ CarrierFreqEUTRA-v1610 ::= SEQUENCE {
highSpeedEUTRACarrier-r16 ENUMERATED {true} OPTIONAL -- Need R
}
-EUTRA-FreqBlackCellList ::= SEQUENCE (SIZE (1..maxEUTRA-CellBlack)) OF EUTRA-PhysCellIdRange
+CarrierFreqEUTRA-v1700 ::= SEQUENCE {
+ eutra-FreqNeighHSDN-CellList-r17 EUTRA-FreqNeighHSDN-CellList-r17 OPTIONAL -- Need R
+}
+
+EUTRA-FreqNeighHSDN-CellList-r17 ::= SEQUENCE (SIZE (1..maxCellEUTRA)) OF EUTRA-PhysCellIdRange
+
+EUTRA-FreqExcludedCellList ::= SEQUENCE (SIZE (1..maxEUTRA-CellExcluded)) OF EUTRA-PhysCellIdRange
EUTRA-FreqNeighCellList ::= SEQUENCE (SIZE (1..maxCellEUTRA)) OF EUTRA-FreqNeighCellInfo
@@ -2325,7 +3066,15 @@ SIB12-r16 ::= SEQUENCE {
SIB12-IEs-r16 ::= SEQUENCE {
sl-ConfigCommonNR-r16 SL-ConfigCommonNR-r16,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- ...
+ ...,
+ [[
+ sl-DRX-ConfigCommonGC-BC-r17 SL-DRX-ConfigGC-BC-r17 OPTIONAL, -- Need R
+ sl-DiscConfigCommon-r17 SL-DiscConfigCommon-r17 OPTIONAL, -- Need R
+ sl-L2U2N-Relay-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sl-NonRelayDiscovery-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sl-L3U2N-RelayDiscovery-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sl-TimersAndConstantsRemoteUE-r17 UE-TimersAndConstantsRemoteUE-r17 OPTIONAL -- Need R
+ ]]
}
SL-ConfigCommonNR-r16 ::= SEQUENCE {
@@ -2347,6 +3096,11 @@ SL-NR-AnchorCarrierFreqList-r16 ::= SEQUENCE (SIZE (1..maxFreqSL-NR-r16)) OF AR
SL-EUTRA-AnchorCarrierFreqList-r16 ::= SEQUENCE (SIZE (1..maxFreqSL-EUTRA-r16)) OF ARFCN-ValueEUTRA
+SL-DiscConfigCommon-r17 ::= SEQUENCE {
+ sl-RelayUE-ConfigCommon-r17 SL-RelayUE-Config-r17,
+ sl-RemoteUE-ConfigCommon-r17 SL-RemoteUE-Config-r17
+}
+
-- TAG-SIB12-STOP
-- TAG-SIB13-START
@@ -2368,6 +3122,165 @@ SIB14-r16 ::= SEQUENCE {
}
-- TAG-SIB14-STOP
+-- TAG-SIB15-START
+
+SIB15-r17 ::= SEQUENCE {
+ commonPLMNsWithDisasterCondition-r17 SEQUENCE (SIZE (1..maxPLMN)) OF PLMN-Identity OPTIONAL, -- Need R
+ applicableDisasterInfoList-r17 SEQUENCE (SIZE (1..maxPLMN)) OF ApplicableDisasterInfo-r17 OPTIONAL, -- Need R
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+ApplicableDisasterInfo-r17 ::= CHOICE {
+ noDisasterRoaming-r17 NULL,
+ disasterRelatedIndication-r17 NULL,
+ commonPLMNs-r17 NULL,
+ dedicatedPLMNs-r17 SEQUENCE (SIZE (1..maxPLMN)) OF PLMN-Identity
+}
+
+-- TAG-SIB15-STOP
+-- TAG-SIB16-START
+
+SIB16-r17 ::= SEQUENCE {
+ freqPriorityListSlicing-r17 FreqPriorityListSlicing-r17 OPTIONAL, -- Need R
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+-- TAG-SIB16-STOP
+-- TAG-SIB17-START
+
+SIB17-r17 ::= SEQUENCE {
+ segmentNumber-r17 INTEGER (0..63),
+ segmentType-r17 ENUMERATED {notLastSegment, lastSegment},
+ segmentContainer-r17 OCTET STRING
+}
+
+SIB17-IEs-r17 ::= SEQUENCE {
+ trs-ResourceSetConfig-r17 SEQUENCE (SIZE (1..maxNrofTRS-ResourceSets-r17)) OF TRS-ResourceSet-r17,
+ validityDuration-r17 ENUMERATED {t1, t2, t4, t8, t16, t32, t64, t128, t256, t512, infinity, spare5, spare4, spare3, spare2,
+ spare1} OPTIONAL, -- Need S
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+TRS-ResourceSet-r17 ::= SEQUENCE {
+ powerControlOffsetSS-r17 ENUMERATED {db-3, db0, db3, db6},
+ scramblingID-Info-r17 CHOICE {
+ scramblingIDforCommon-r17 ScramblingId,
+ scramblingIDperResourceListWith2-r17 SEQUENCE (SIZE (2)) OF ScramblingId,
+ scramblingIDperResourceListWith4-r17 SEQUENCE (SIZE (4)) OF ScramblingId,
+ ...
+ },
+ firstOFDMSymbolInTimeDomain-r17 INTEGER (0..9),
+ startingRB-r17 INTEGER (0..maxNrofPhysicalResourceBlocks-1),
+ nrofRBs-r17 INTEGER (24..maxNrofPhysicalResourceBlocksPlus1),
+ ssb-Index-r17 SSB-Index,
+ periodicityAndOffset-r17 CHOICE {
+ slots10 INTEGER (0..9),
+ slots20 INTEGER (0..19),
+ slots40 INTEGER (0..39),
+ slots80 INTEGER (0..79)
+ },
+ frequencyDomainAllocation-r17 BIT STRING (SIZE (4)),
+ indBitID-r17 INTEGER (0..5),
+ nrofResources-r17 ENUMERATED {n2, n4}
+}
+
+-- TAG-SIB17-STOP
+-- TAG-SIB18-START
+
+SIB18-r17 ::= SEQUENCE {
+ gin-ElementList-r17 SEQUENCE (SIZE (1..maxGIN-r17)) OF GIN-Element-r17 OPTIONAL, -- Need R
+ gins-PerSNPN-List-r17 SEQUENCE (SIZE (1..maxNPN-r16)) OF GINs-PerSNPN-r17 OPTIONAL, -- Need S
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+GIN-Element-r17 ::= SEQUENCE {
+ plmn-Identity-r17 PLMN-Identity,
+ nid-List-r17 SEQUENCE (SIZE (1..maxGIN-r17)) OF NID-r16
+}
+
+GINs-PerSNPN-r17 ::= SEQUENCE {
+ supportedGINs-r17 BIT STRING (SIZE (1..maxGIN-r17)) OPTIONAL -- Need R
+}
+-- TAG-SIB18-STOP
+-- TAG-SIB19-START
+
+SIB19-r17 ::= SEQUENCE {
+ ntn-Config-r17 NTN-Config-r17 OPTIONAL, -- Need R
+ t-Service-r17 INTEGER (0..549755813887) OPTIONAL, -- Need R
+ referenceLocation-r17 ReferenceLocation-r17 OPTIONAL, -- Need R
+ distanceThresh-r17 INTEGER(0..65525) OPTIONAL, -- Need R
+ ntn-NeighCellConfigList-r17 NTN-NeighCellConfigList-r17 OPTIONAL, -- Need R
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...,
+ [[
+ ntn-NeighCellConfigListExt-v1720 NTN-NeighCellConfigList-r17 OPTIONAL -- Need R
+ ]]
+}
+
+NTN-NeighCellConfigList-r17 ::= SEQUENCE (SIZE(1..maxCellNTN-r17)) OF NTN-NeighCellConfig-r17
+
+NTN-NeighCellConfig-r17 ::= SEQUENCE {
+ ntn-Config-r17 NTN-Config-r17 OPTIONAL, -- Need R
+ carrierFreq-r17 ARFCN-ValueNR OPTIONAL, -- Need R
+ physCellId-r17 PhysCellId OPTIONAL -- Need R
+}
+
+-- TAG-SIB19-STOP
+-- TAG-SIB20-START
+
+SIB20-r17 ::= SEQUENCE {
+ mcch-Config-r17 MCCH-Config-r17,
+ cfr-ConfigMCCH-MTCH-r17 CFR-ConfigMCCH-MTCH-r17 OPTIONAL, -- Need S
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+MCCH-Config-r17 ::= SEQUENCE {
+ mcch-RepetitionPeriodAndOffset-r17 MCCH-RepetitionPeriodAndOffset-r17,
+ mcch-WindowStartSlot-r17 INTEGER (0..79),
+ mcch-WindowDuration-r17 ENUMERATED {sl2, sl4, sl8, sl10, sl20, sl40,sl80, sl160} OPTIONAL, -- Need S
+ mcch-ModificationPeriod-r17 ENUMERATED {rf2, rf4, rf8, rf16, rf32, rf64, rf128, rf256,
+ rf512, rf1024, rf2048, rf4096, rf8192, rf16384, rf32768, rf65536}
+}
+
+MCCH-RepetitionPeriodAndOffset-r17 ::= CHOICE {
+ rf1-r17 INTEGER(0),
+ rf2-r17 INTEGER(0..1),
+ rf4-r17 INTEGER(0..3),
+ rf8-r17 INTEGER(0..7),
+ rf16-r17 INTEGER(0..15),
+ rf32-r17 INTEGER(0..31),
+ rf64-r17 INTEGER(0..63),
+ rf128-r17 INTEGER(0..127),
+ rf256-r17 INTEGER(0..255)
+}
+
+-- TAG-SIB20-STOP
+-- TAG-SIB21-START
+
+SIB21-r17 ::= SEQUENCE {
+ mbs-FSAI-IntraFreq-r17 MBS-FSAI-List-r17 OPTIONAL, -- Need R
+ mbs-FSAI-InterFreqList-r17 MBS-FSAI-InterFreqList-r17 OPTIONAL, -- Need R
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ ...
+}
+
+MBS-FSAI-List-r17 ::= SEQUENCE (SIZE (1..maxFSAI-MBS-r17)) OF MBS-FSAI-r17
+
+MBS-FSAI-InterFreqList-r17 ::= SEQUENCE (SIZE (1..maxFreq)) OF MBS-FSAI-InterFreq-r17
+
+MBS-FSAI-InterFreq-r17 ::= SEQUENCE {
+ dl-CarrierFreq-r17 ARFCN-ValueNR,
+ mbs-FSAI-List-r17 MBS-FSAI-List-r17
+}
+
+MBS-FSAI-r17 ::= OCTET STRING (SIZE (3))
+
+-- TAG-SIB21-STOP
-- TAG-POSSYSTEMINFORMATION-R16-IES-START
PosSystemInformation-r16-IEs ::= SEQUENCE {
@@ -2409,7 +3322,17 @@ PosSystemInformation-r16-IEs ::= SEQUENCE {
posSib6-1-r16 SIBpos-r16,
posSib6-2-r16 SIBpos-r16,
posSib6-3-r16 SIBpos-r16,
- ...
+ ... ,
+ posSib1-9-v1700 SIBpos-r16,
+ posSib1-10-v1700 SIBpos-r16,
+ posSib2-24-v1700 SIBpos-r16,
+ posSib2-25-v1700 SIBpos-r16,
+ posSib6-4-v1700 SIBpos-r16,
+ posSib6-5-v1700 SIBpos-r16,
+ posSib6-6-v1700 SIBpos-r16,
+ posSib2-17a-v1770 SIBpos-r16,
+ posSib2-18a-v1770 SIBpos-r16,
+ posSib2-20a-v1770 SIBpos-r16
},
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
@@ -2422,7 +3345,10 @@ PosSI-SchedulingInfo-r16 ::= SEQUENCE {
posSchedulingInfoList-r16 SEQUENCE (SIZE (1..maxSI-Message)) OF PosSchedulingInfo-r16,
posSI-RequestConfig-r16 SI-RequestConfig OPTIONAL, -- Cond MSG-1
posSI-RequestConfigSUL-r16 SI-RequestConfig OPTIONAL, -- Cond SUL-MSG-1
- ...
+ ...,
+ [[
+ posSI-RequestConfigRedCap-r17 SI-RequestConfig OPTIONAL -- Cond REDCAP-MSG-1
+ ]]
}
PosSchedulingInfo-r16 ::= SEQUENCE {
@@ -2438,7 +3364,7 @@ PosSIB-MappingInfo-r16 ::= SEQUENCE (SIZE (1..maxSIB)) OF PosSIB-Type-r16
PosSIB-Type-r16 ::= SEQUENCE {
encrypted-r16 ENUMERATED { true } OPTIONAL, -- Need R
gnss-id-r16 GNSS-ID-r16 OPTIONAL, -- Need R
- sbas-id-r16 SBAS-ID-r16 OPTIONAL, -- Need R
+ sbas-id-r16 SBAS-ID-r16 OPTIONAL, -- Cond GNSS-ID-SBAS
posSibType-r16 ENUMERATED { posSibType1-1, posSibType1-2, posSibType1-3, posSibType1-4, posSibType1-5, posSibType1-6,
posSibType1-7, posSibType1-8, posSibType2-1, posSibType2-2, posSibType2-3, posSibType2-4,
posSibType2-5, posSibType2-6, posSibType2-7, posSibType2-8, posSibType2-9, posSibType2-10,
@@ -2450,7 +3376,7 @@ PosSIB-Type-r16 ::= SEQUENCE {
}
GNSS-ID-r16 ::= SEQUENCE {
- gnss-id-r16 ENUMERATED{gps, sbas, qzss, galileo, glonass, bds, ...},
+ gnss-id-r16 ENUMERATED{gps, sbas, qzss, galileo, glonass, bds, ..., navic-v1760},
...
}
@@ -2473,6 +3399,8 @@ SIBpos-r16 ::= SEQUENCE {
AdditionalSpectrumEmission ::= INTEGER (0..7)
+AdditionalSpectrumEmission-v1760 ::= INTEGER (8..39)
+
-- TAG-ADDITIONALSPECTRUMEMISSION-STOP
-- TAG-ALPHA-START
@@ -2506,7 +3434,13 @@ AvailabilityCombinationsPerCell-r16 ::= SEQUENCE {
iab-DU-CellIdentity-r16 CellIdentity,
positionInDCI-AI-r16 INTEGER(0..maxAI-DCI-PayloadSize-1-r16) OPTIONAL, -- Need M
availabilityCombinations-r16 SEQUENCE (SIZE (1..maxNrofAvailabilityCombinationsPerSet-r16)) OF AvailabilityCombination-r16,
- ...
+ ...,
+ [[
+ availabilityCombinationsRB-Groups-r17 SEQUENCE (SIZE (1..maxNrofAvailabilityCombinationsPerSet-r16)) OF AvailabilityCombinationRB-Groups-r17 OPTIONAL -- Need M
+ ]],
+ [[
+ positionInDCI-AI-RBGroups-v1720 INTEGER(0..maxAI-DCI-PayloadSize-1-r16) OPTIONAL -- Need M
+ ]]
}
AvailabilityCombinationsPerCellIndex-r16 ::= INTEGER(0..maxNrofDUCells-r16)
@@ -2518,6 +3452,17 @@ AvailabilityCombination-r16 ::= SEQUENCE {
AvailabilityCombinationId-r16 ::= INTEGER (0..maxNrofAvailabilityCombinationsPerSet-1-r16)
+AvailabilityCombinationRB-Groups-r17 ::= SEQUENCE {
+ availabilityCombinationId-r17 AvailabilityCombinationId-r16,
+ rb-SetGroups-r17 SEQUENCE (SIZE (1..maxNrofRB-SetGroups-r17)) OF RB-SetGroup-r17 OPTIONAL, -- Need R
+ resourceAvailability-r17 SEQUENCE (SIZE (1..maxNrofResourceAvailabilityPerCombination-r16)) OF INTEGER (0..7) OPTIONAL -- Need R
+}
+
+RB-SetGroup-r17 ::= SEQUENCE {
+ resourceAvailability-r17 SEQUENCE (SIZE (1..maxNrofResourceAvailabilityPerCombination-r16)) OF INTEGER (0..7) OPTIONAL, -- Need R
+ rb-Sets-r17 SEQUENCE (SIZE (1..maxNrofRB-Sets-r17)) OF INTEGER (0..7) OPTIONAL -- Need R
+}
+
-- TAG-AVAILABILITYCOMBINATIONSPERCELL-STOP
-- TAG-AVAILABILITYINDICATOR-START
@@ -2587,23 +3532,18 @@ BFR-CSIRS-Resource ::= SEQUENCE {
CandidateBeamRSListExt-r16::= SEQUENCE (SIZE(1.. maxNrofCandidateBeamsExt-r16)) OF PRACH-ResourceDedicatedBFR
-- TAG-BEAMFAILURERECOVERYCONFIG-STOP
--- TAG-BEAMFAILURERECOVERYSCELLCONFIG-START
+-- TAG-BEAMFAILURERECOVERYRSCONFIG-START
-BeamFailureRecoverySCellConfig-r16 ::= SEQUENCE {
- rsrp-ThresholdBFR-r16 RSRP-Range OPTIONAL, -- Need M
- candidateBeamRSSCellList-r16 SEQUENCE (SIZE(1..maxNrofCandidateBeams-r16)) OF CandidateBeamRS-r16 OPTIONAL, -- Need M
- ...
-}
-
-CandidateBeamRS-r16 ::= SEQUENCE {
- candidateBeamConfig-r16 CHOICE {
- ssb-r16 SSB-Index,
- csi-RS-r16 NZP-CSI-RS-ResourceId
- },
- servingCellId ServCellIndex OPTIONAL -- Need R
+BeamFailureRecoveryRSConfig-r16 ::= SEQUENCE {
+ rsrp-ThresholdBFR-r16 RSRP-Range OPTIONAL, -- Need M
+ candidateBeamRS-List-r16 SEQUENCE (SIZE(1..maxNrofCandidateBeams-r16)) OF CandidateBeamRS-r16 OPTIONAL, -- Need M
+ ...,
+ [[
+ candidateBeamRS-List2-r17 SEQUENCE (SIZE(1..maxNrofCandidateBeams-r16)) OF CandidateBeamRS-r16 OPTIONAL -- Need R
+ ]]
}
--- TAG-BEAMFAILURERECOVERYSCELLCONFIG-STOP
+-- TAG-BEAMFAILURERECOVERYRSCONFIG-STOP
-- TAG-BETAOFFSETS-START
BetaOffsets ::= SEQUENCE {
@@ -2617,6 +3557,11 @@ BetaOffsets ::= SEQUENCE {
}
-- TAG-BETAOFFSETS-STOP
+-- TAG-BETAOFFSETSCROSSPRI-START
+
+BetaOffsetsCrossPri-r17 ::= SEQUENCE (SIZE(3)) OF INTEGER(0..31)
+
+-- TAG-BETAOFFSETSCROSSPRI-STOP
-- TAG-BHLOGICALCHANNELIDENTITY-START
BH-LogicalChannelIdentity-r16 ::= CHOICE {
@@ -2700,9 +3645,19 @@ BWP-DownlinkDedicated ::= SEQUENCE {
sps-ConfigToAddModList-r16 SPS-ConfigToAddModList-r16 OPTIONAL, -- Need N
sps-ConfigToReleaseList-r16 SPS-ConfigToReleaseList-r16 OPTIONAL, -- Need N
sps-ConfigDeactivationStateList-r16 SPS-ConfigDeactivationStateList-r16 OPTIONAL, -- Need R
- beamFailureRecoverySCellConfig-r16 CHOICE {release NULL, setup BeamFailureRecoverySCellConfig-r16} OPTIONAL, -- Cond SCellOnly
+ beamFailureRecoverySCellConfig-r16 CHOICE {release NULL, setup BeamFailureRecoveryRSConfig-r16} OPTIONAL, -- Cond SCellOnly
sl-PDCCH-Config-r16 CHOICE {release NULL, setup PDCCH-Config } OPTIONAL, -- Need M
sl-V2X-PDCCH-Config-r16 CHOICE {release NULL, setup PDCCH-Config } OPTIONAL -- Need M
+ ]],
+ [[
+ preConfGapStatus-r17 BIT STRING (SIZE (maxNrofGapId-r17)) OPTIONAL, -- Cond PreConfigMG
+ beamFailureRecoverySpCellConfig-r17 CHOICE {release NULL, setup BeamFailureRecoveryRSConfig-r16} OPTIONAL, -- Cond SpCellOnly
+ harq-FeedbackEnablingforSPSactive-r17 BOOLEAN OPTIONAL, -- Need R
+ cfr-ConfigMulticast-r17 CHOICE {release NULL, setup CFR-ConfigMulticast-r17 } OPTIONAL, -- Need M
+ dl-PPW-PreConfigToAddModList-r17 DL-PPW-PreConfigToAddModList-r17 OPTIONAL, -- Need N
+ dl-PPW-PreConfigToReleaseList-r17 DL-PPW-PreConfigToReleaseList-r17 OPTIONAL, -- Need N
+ nonCellDefiningSSB-r17 NonCellDefiningSSB-r17 OPTIONAL, -- Need R
+ servingCellMO-r17 MeasObjectId OPTIONAL -- Cond MeasObject-NCD-SSB
]]
}
@@ -2714,6 +3669,10 @@ SPS-ConfigDeactivationState-r16 ::= SEQUENCE (SIZE (1..maxNrofSPS-Config-r16
SPS-ConfigDeactivationStateList-r16 ::= SEQUENCE (SIZE (1..maxNrofSPS-DeactivationState)) OF SPS-ConfigDeactivationState-r16
+DL-PPW-PreConfigToAddModList-r17 ::= SEQUENCE (SIZE (1..maxNrofPPW-Config-r17)) OF DL-PPW-PreConfig-r17
+
+DL-PPW-PreConfigToReleaseList-r17 ::= SEQUENCE (SIZE (1..maxNrofPPW-Config-r17)) OF DL-PPW-ID-r17
+
-- TAG-BWP-DOWNLINKDEDICATED-STOP
-- TAG-BWP-ID-START
@@ -2742,9 +3701,26 @@ BWP-UplinkCommon ::= SEQUENCE {
rach-ConfigCommonIAB-r16 CHOICE {release NULL, setup RACH-ConfigCommon } OPTIONAL, -- Need M
useInterlacePUCCH-PUSCH-r16 ENUMERATED {enabled} OPTIONAL, -- Need R
msgA-ConfigCommon-r16 CHOICE {release NULL, setup MsgA-ConfigCommon-r16 } OPTIONAL -- Cond SpCellOnly2
+ ]],
+ [[
+ enableRA-PrioritizationForSlicing-r17 BOOLEAN OPTIONAL, -- Cond RA-PrioSliceAI
+ additionalRACH-ConfigList-r17 CHOICE {release NULL, setup AdditionalRACH-ConfigList-r17 } OPTIONAL, -- Cond SpCellOnly2
+ rsrp-ThresholdMsg3-r17 RSRP-Range OPTIONAL, -- Need R
+ numberOfMsg3-RepetitionsList-r17 SEQUENCE (SIZE (4)) OF NumberOfMsg3-Repetitions-r17 OPTIONAL, -- Cond Msg3Rep
+ mcs-Msg3-Repetitions-r17 SEQUENCE (SIZE (8)) OF INTEGER (0..31) OPTIONAL -- Cond Msg3Rep
]]
}
+AdditionalRACH-ConfigList-r17 ::= SEQUENCE (SIZE(1..maxAdditionalRACH-r17)) OF AdditionalRACH-Config-r17
+
+AdditionalRACH-Config-r17 ::= SEQUENCE {
+ rach-ConfigCommon-r17 RACH-ConfigCommon OPTIONAL, -- Need R
+ msgA-ConfigCommon-r17 MsgA-ConfigCommon-r16 OPTIONAL, -- Need R
+ ...
+}
+
+NumberOfMsg3-Repetitions-r17::= ENUMERATED {n1, n2, n3, n4, n7, n8, n12, n16}
+
-- TAG-BWP-UPLINKCOMMON-STOP
-- TAG-BWP-UPLINKDEDICATED-START
@@ -2765,8 +3741,29 @@ BWP-UplinkDedicated ::= SEQUENCE {
configuredGrantConfigToAddModList-r16 ConfiguredGrantConfigToAddModList-r16 OPTIONAL, -- Need N
configuredGrantConfigToReleaseList-r16 ConfiguredGrantConfigToReleaseList-r16 OPTIONAL, -- Need N
configuredGrantConfigType2DeactivationStateList-r16 ConfiguredGrantConfigType2DeactivationStateList-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ ul-TCI-StateList-r17 CHOICE {
+ explicitlist SEQUENCE {
+ ul-TCI-ToAddModList-r17 SEQUENCE (SIZE (1..maxUL-TCI-r17)) OF TCI-UL-State-r17 OPTIONAL, -- Need N
+ ul-TCI-ToReleaseList-r17 SEQUENCE (SIZE (1..maxUL-TCI-r17)) OF TCI-UL-StateId-r17 OPTIONAL -- Need N
+ },
+ unifiedTCI-StateRef-r17 ServingCellAndBWP-Id-r17
+ } OPTIONAL, -- Need R
+ ul-powerControl-r17 Uplink-powerControlId-r17 OPTIONAL, -- Cond NoTCI-PC
+ pucch-ConfigurationListMulticast1-r17 CHOICE {release NULL, setup PUCCH-ConfigurationList-r16 } OPTIONAL, -- Need M
+ pucch-ConfigurationListMulticast2-r17 CHOICE {release NULL, setup PUCCH-ConfigurationList-r16 } OPTIONAL -- Need M
+ ]],
+ [[
+ pucch-ConfigMulticast1-r17 CHOICE {release NULL, setup PUCCH-Config } OPTIONAL, -- Need M
+ pucch-ConfigMulticast2-r17 CHOICE {release NULL, setup PUCCH-Config } OPTIONAL -- Need M
+ ]],
+ [[
+ pathlossReferenceRSToAddModList-r17 SEQUENCE (SIZE (1..maxNrofPathlossReferenceRSs-r17)) OF PathlossReferenceRS-r17
+ OPTIONAL, -- Need N
+ pathlossReferenceRSToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofPathlossReferenceRSs-r17)) OF PathlossReferenceRS-Id-r17
+ OPTIONAL -- Need N
]]
-
}
ConfiguredGrantConfigToAddModList-r16 ::= SEQUENCE (SIZE (1..maxNrofConfiguredGrantConfig-r16)) OF ConfiguredGrantConfig
@@ -2779,6 +3776,18 @@ ConfiguredGrantConfigType2DeactivationStateList-r16 ::=
SEQUENCE (SIZE (1..maxNrofCG-Type2DeactivationState)) OF ConfiguredGrantConfigType2DeactivationState-r16
-- TAG-BWP-UPLINKDEDICATED-STOP
+-- TAG-CANDIDATEBEAMRS-START
+
+
+CandidateBeamRS-r16 ::= SEQUENCE {
+ candidateBeamConfig-r16 CHOICE {
+ ssb-r16 SSB-Index,
+ csi-RS-r16 NZP-CSI-RS-ResourceId
+ },
+ servingCellId ServCellIndex OPTIONAL -- Need R
+}
+
+-- TAG-CANDIDATEBEAMRS-STOP
-- TAG-CELLACCESSRELATEDINFO-START
CellAccessRelatedInfo ::= SEQUENCE {
@@ -2788,9 +3797,19 @@ CellAccessRelatedInfo ::= SEQUENCE {
[[
cellReservedForFutureUse-r16 ENUMERATED {true} OPTIONAL, -- Need R
npn-IdentityInfoList-r16 NPN-IdentityInfoList-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ snpn-AccessInfoList-r17 SEQUENCE (SIZE (1..maxNPN-r16)) OF SNPN-AccessInfo-r17 OPTIONAL -- Need R
]]
}
+SNPN-AccessInfo-r17 ::= SEQUENCE {
+ extCH-Supported-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ extCH-WithoutConfigAllowed-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ onboardingEnabled-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ imsEmergencySupportForSNPN-r17 ENUMERATED {true} OPTIONAL -- Need R
+}
+
-- TAG-CELLACCESSRELATEDINFO-STOP
-- TAG-CELLACCESSRELATEDINFOEUTRA-5GC-START
@@ -2855,6 +3874,28 @@ CellGroupConfig ::= SEQUENCE {
]],
[[
reportUplinkTxDirectCurrentTwoCarrier-r16 ENUMERATED {true} OPTIONAL -- Need N
+ ]],
+ [[
+ f1c-TransferPathNRDC-r17 ENUMERATED {mcg, scg, both} OPTIONAL, -- Need M
+ uplinkTxSwitching-2T-Mode-r17 ENUMERATED {enabled} OPTIONAL, -- Cond 2Tx
+ uplinkTxSwitching-DualUL-TxState-r17 ENUMERATED {oneT, twoT} OPTIONAL, -- Cond 2Tx
+ uu-RelayRLC-ChannelToAddModList-r17 SEQUENCE (SIZE(1..maxUu-RelayRLC-ChannelID-r17)) OF Uu-RelayRLC-ChannelConfig-r17
+ OPTIONAL, -- Need N
+ uu-RelayRLC-ChannelToReleaseList-r17 SEQUENCE (SIZE(1..maxUu-RelayRLC-ChannelID-r17)) OF Uu-RelayRLC-ChannelID-r17
+ OPTIONAL, -- Need N
+ simultaneousU-TCI-UpdateList1-r17 SEQUENCE (SIZE (1..maxNrofServingCellsTCI-r16)) OF ServCellIndex OPTIONAL, -- Need R
+ simultaneousU-TCI-UpdateList2-r17 SEQUENCE (SIZE (1..maxNrofServingCellsTCI-r16)) OF ServCellIndex OPTIONAL, -- Need R
+ simultaneousU-TCI-UpdateList3-r17 SEQUENCE (SIZE (1..maxNrofServingCellsTCI-r16)) OF ServCellIndex OPTIONAL, -- Need R
+ simultaneousU-TCI-UpdateList4-r17 SEQUENCE (SIZE (1..maxNrofServingCellsTCI-r16)) OF ServCellIndex OPTIONAL, -- Need R
+ rlc-BearerToReleaseListExt-r17 SEQUENCE (SIZE(1..maxLC-ID)) OF LogicalChannelIdentityExt-r17 OPTIONAL, -- Need N
+ iab-ResourceConfigToAddModList-r17 SEQUENCE (SIZE(1..maxNrofIABResourceConfig-r17)) OF IAB-ResourceConfig-r17 OPTIONAL, -- Need N
+ iab-ResourceConfigToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofIABResourceConfig-r17)) OF IAB-ResourceConfigID-r17 OPTIONAL -- Need N
+ ]],
+ [[
+ reportUplinkTxDirectCurrentMoreCarrier-r17 ReportUplinkTxDirectCurrentMoreCarrier-r17 OPTIONAL -- Need N
+ ]],
+ [[
+ prioSCellPRACH-OverSP-PeriodicSRS-r17 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
@@ -2865,7 +3906,17 @@ SpCellConfig ::= SEQUENCE {
rlf-TimersAndConstants CHOICE {release NULL, setup RLF-TimersAndConstants } OPTIONAL, -- Need M
rlmInSyncOutOfSyncThreshold ENUMERATED {n1} OPTIONAL, -- Need S
spCellConfigDedicated ServingCellConfig OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ lowMobilityEvaluationConnected-r17 SEQUENCE {
+ s-SearchDeltaP-Connected-r17 ENUMERATED {dB3, dB6, dB9, dB12, dB15, spare3, spare2, spare1},
+ t-SearchDeltaP-Connected-r17 ENUMERATED {s5, s10, s20, s30, s60, s120, s180, s240, s300, spare7, spare6, spare5,
+ spare4, spare3, spare2, spare1}
+ } OPTIONAL, -- Need R
+ goodServingCellEvaluationRLM-r17 GoodServingCellEvaluation-r17 OPTIONAL, -- Need R
+ goodServingCellEvaluationBFD-r17 GoodServingCellEvaluation-r17 OPTIONAL, -- Need R
+ deactivatedSCG-Config-r17 CHOICE {release NULL, setup DeactivatedSCG-Config-r17 } OPTIONAL -- Cond SCG-Opt
+ ]]
}
ReconfigurationWithSync ::= SEQUENCE {
@@ -2882,6 +3933,9 @@ ReconfigurationWithSync ::= SEQUENCE {
]],
[[
daps-UplinkPowerConfig-r16 DAPS-UplinkPowerConfig-r16 OPTIONAL -- Need N
+ ]],
+ [[
+ sl-PathSwitchConfig-r17 SL-PathSwitchConfig-r17 OPTIONAL -- Cond DirectToIndirect-PathSwitch
]]
}
@@ -2901,8 +3955,63 @@ SCellConfig ::= SEQUENCE {
]],
[[
sCellState-r16 ENUMERATED {activated} OPTIONAL, -- Cond SCellAddSync
- secondaryDRX-GroupConfig-r16 ENUMERATED {true} OPTIONAL -- Cond DRX-Config2
- ]]}
+ secondaryDRX-GroupConfig-r16 ENUMERATED {true} OPTIONAL -- Need S
+ ]],
+ [[
+ preConfGapStatus-r17 BIT STRING (SIZE (maxNrofGapId-r17)) OPTIONAL, -- Cond PreConfigMG
+ goodServingCellEvaluationBFD-r17 GoodServingCellEvaluation-r17 OPTIONAL, -- Need R
+ sCellSIB20-r17 CHOICE {release NULL, setup SCellSIB20-r17 } OPTIONAL -- Need M
+ ]],
+ [[
+ plmn-IdentityInfoList-r17 CHOICE {release NULL, setup PLMN-IdentityInfoList} OPTIONAL, -- Cond SCellSIB20-Opt
+ npn-IdentityInfoList-r17 CHOICE {release NULL, setup NPN-IdentityInfoList-r16} OPTIONAL -- Cond SCellSIB20-Opt
+ ]]
+}
+
+SCellSIB20-r17 ::= OCTET STRING (CONTAINING SystemInformation)
+
+DeactivatedSCG-Config-r17 ::= SEQUENCE {
+ bfd-and-RLM-r17 BOOLEAN,
+ ...
+}
+
+GoodServingCellEvaluation-r17 ::= SEQUENCE {
+ offset-r17 ENUMERATED {db2, db4, db6, db8} OPTIONAL -- Need S
+}
+
+SL-PathSwitchConfig-r17 ::= SEQUENCE {
+ targetRelayUE-Identity-r17 SL-SourceIdentity-r17,
+ t420-r17 ENUMERATED {ms50, ms100, ms150, ms200, ms500, ms1000, ms2000, ms10000},
+ ...
+}
+
+IAB-ResourceConfig-r17 ::= SEQUENCE {
+ iab-ResourceConfigID-r17 IAB-ResourceConfigID-r17,
+ slotList-r17 SEQUENCE (SIZE (1..5120)) OF INTEGER (0..5119) OPTIONAL, -- Need M
+ periodicitySlotList-r17 ENUMERATED {ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms5, ms10, ms20, ms40, ms80, ms160} OPTIONAL, -- Need M
+ slotListSubcarrierSpacing-r17 SubcarrierSpacing OPTIONAL, -- Need M
+ ...
+}
+IAB-ResourceConfigID-r17 ::= INTEGER(0..maxNrofIABResourceConfig-1-r17)
+
+ReportUplinkTxDirectCurrentMoreCarrier-r17 ::= SEQUENCE (SIZE(1.. maxSimultaneousBands)) OF IntraBandCC-CombinationReqList-r17
+
+IntraBandCC-CombinationReqList-r17::= SEQUENCE {
+ servCellIndexList-r17 SEQUENCE (SIZE(1.. maxNrofServingCells)) OF ServCellIndex,
+ cc-CombinationList-r17 SEQUENCE (SIZE(1.. maxNrofReqComDC-Location-r17)) OF IntraBandCC-Combination-r17
+}
+
+IntraBandCC-Combination-r17::= SEQUENCE (SIZE(1.. maxNrofServingCells)) OF CC-State-r17
+
+CC-State-r17::= SEQUENCE {
+ dlCarrier-r17 CarrierState-r17 OPTIONAL, -- Need N
+ ulCarrier-r17 CarrierState-r17 OPTIONAL -- Need N
+}
+
+CarrierState-r17::= CHOICE {
+ deActivated-r17 NULL,
+ activeBWP-r17 INTEGER (0..maxNrofBWPs)
+}
-- TAG-CELLGROUPCONFIG-STOP
-- TAG-CELLGROUPID-START
@@ -2925,13 +4034,28 @@ CellReselectionPriority ::= INTEGER (0..7)
CellReselectionSubPriority ::= ENUMERATED {oDot2, oDot4, oDot6, oDot8}
-- TAG-CELLRESELECTIONSUBPRIORITY-STOP
+-- TAG-CFR-CONFIGMULTICAST-START
+
+CFR-ConfigMulticast-r17::= SEQUENCE {
+ locationAndBandwidthMulticast-r17 INTEGER (0..37949) OPTIONAL, -- Need S
+ pdcch-ConfigMulticast-r17 PDCCH-Config OPTIONAL, -- Need M
+ pdsch-ConfigMulticast-r17 PDSCH-Config OPTIONAL, -- Need M
+ sps-ConfigMulticastToAddModList-r17 SPS-ConfigMulticastToAddModList-r17 OPTIONAL, -- Need N
+ sps-ConfigMulticastToReleaseList-r17 SPS-ConfigMulticastToReleaseList-r17 OPTIONAL -- Need N
+}
+
+SPS-ConfigMulticastToAddModList-r17 ::= SEQUENCE (SIZE (1..8)) OF SPS-Config
+
+SPS-ConfigMulticastToReleaseList-r17 ::= SEQUENCE (SIZE (1..8)) OF SPS-ConfigIndex-r16
+
+-- TAG-CFR-CONFIGMULTICAST-STOP
-- TAG-CGI-INFOEUTRA-START
CGI-InfoEUTRA ::= SEQUENCE {
cgi-info-EPC SEQUENCE {
cgi-info-EPC-legacy CellAccessRelatedInfo-EUTRA-EPC,
cgi-info-EPC-list SEQUENCE (SIZE (1..maxPLMN)) OF CellAccessRelatedInfo-EUTRA-EPC OPTIONAL
- } OPTIONAL,
+ } OPTIONAL,
cgi-info-5GC SEQUENCE (SIZE (1..maxPLMN)) OF CellAccessRelatedInfo-EUTRA-5GC OPTIONAL,
freqBandIndicator FreqBandIndicatorEUTRA,
multiBandInfoList MultiBandInfoListEUTRA OPTIONAL,
@@ -3098,6 +4222,79 @@ CodebookConfig-r16 ::= SEQUENCE {
}
}
+CodebookConfig-r17 ::= SEQUENCE {
+ codebookType CHOICE {
+ type1 SEQUENCE {
+ typeI-SinglePanel-Group1-r17 SEQUENCE {
+ nrOfAntennaPorts CHOICE {
+ two SEQUENCE {
+ twoTX-CodebookSubsetRestriction1-r17 BIT STRING (SIZE (6))
+ },
+ moreThanTwo SEQUENCE {
+ n1-n2 CHOICE {
+ two-one-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (8)),
+ two-two-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (64)),
+ four-one-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (16)),
+ three-two-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (96)),
+ six-one-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (24)),
+ four-two-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (128)),
+ eight-one-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (32)),
+ four-three-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (192)),
+ six-two-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (192)),
+ twelve-one-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (48)),
+ four-four-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (256)),
+ eight-two-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (256)),
+ sixteen-one-TypeI-SinglePanel-Restriction1-r17 BIT STRING (SIZE (64))
+ }
+ }
+ }
+ } OPTIONAL, -- Need R
+ typeI-SinglePanel-Group2-r17 SEQUENCE {
+ nrOfAntennaPorts CHOICE {
+ two SEQUENCE {
+ twoTX-CodebookSubsetRestriction2-r17 BIT STRING (SIZE (6))
+ },
+ moreThanTwo SEQUENCE {
+ n1-n2 CHOICE {
+ two-one-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (8)),
+ two-two-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (64)),
+ four-one-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (16)),
+ three-two-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (96)),
+ six-one-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (24)),
+ four-two-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (128)),
+ eight-one-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (32)),
+ four-three-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (192)),
+ six-two-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (192)),
+ twelve-one-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (48)),
+ four-four-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (256)),
+ eight-two-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (256)),
+ sixteen-one-TypeI-SinglePanel-Restriction2-r17 BIT STRING (SIZE (64))
+ }
+ }
+ }
+ } OPTIONAL, -- Need R
+ typeI-SinglePanel-ri-RestrictionSTRP-r17 BIT STRING (SIZE (8)) OPTIONAL, -- Need R
+ typeI-SinglePanel-ri-RestrictionSDM-r17 BIT STRING (SIZE (4)) OPTIONAL -- Need R
+ },
+ type2 SEQUENCE {
+ typeII-PortSelection-r17 SEQUENCE {
+ paramCombination-r17 INTEGER (1..8),
+ valueOfN-r17 ENUMERATED {n2, n4} OPTIONAL, -- Need R
+ numberOfPMI-SubbandsPerCQI-Subband-r17 INTEGER(1..2) OPTIONAL, -- Need R
+ typeII-PortSelectionRI-Restriction-r17 BIT STRING (SIZE (4))
+ }
+ }
+ }
+}
+
+CodebookConfig-v1730 ::= SEQUENCE {
+ codebookType CHOICE {
+ type1 SEQUENCE {
+ codebookMode INTEGER (1..2) OPTIONAL -- Need R
+ }
+ }
+}
+
-- TAG-CODEBOOKCONFIG-STOP
-- TAG-COMMONLOCATIONINFO-START
@@ -3122,11 +4319,16 @@ CondReconfigToAddModList-r16 ::= SEQUENCE (SIZE (1.. maxNrofCondCells-r16)) OF C
CondReconfigToAddMod-r16 ::= SEQUENCE {
condReconfigId-r16 CondReconfigId-r16,
- condExecutionCond-r16 SEQUENCE (SIZE (1..2)) OF MeasId OPTIONAL, -- Cond condReconfigAdd
+ condExecutionCond-r16 SEQUENCE (SIZE (1..2)) OF MeasId OPTIONAL, -- Need M
condRRCReconfig-r16 OCTET STRING (CONTAINING RRCReconfiguration) OPTIONAL, -- Cond condReconfigAdd
- ...
+ ...,
+ [[
+ condExecutionCondSCG-r17 OCTET STRING (CONTAINING CondReconfigExecCondSCG-r17) OPTIONAL -- Need M
+ ]]
}
+CondReconfigExecCondSCG-r17 ::= SEQUENCE (SIZE (1..2)) OF MeasId
+
-- TAG-CONDRECONFIGTOADDMODLIST-STOP
-- TAG-CONDITIONALRECONFIGURATION-START
@@ -3170,17 +4372,25 @@ ConfiguredGrantConfig ::= SEQUENCE {
timeDomainAllocation INTEGER (0..15),
frequencyDomainAllocation BIT STRING (SIZE(18)),
antennaPort INTEGER (0..31),
- dmrs-SeqInitialization INTEGER (0..1) OPTIONAL, -- Need R
+ dmrs-SeqInitialization INTEGER (0..1) OPTIONAL, -- Need R
precodingAndNumberOfLayers INTEGER (0..63),
- srs-ResourceIndicator INTEGER (0..15) OPTIONAL, -- Need R
+ srs-ResourceIndicator INTEGER (0..15) OPTIONAL, -- Need R
mcsAndTBS INTEGER (0..31),
- frequencyHoppingOffset INTEGER (1.. maxNrofPhysicalResourceBlocks-1) OPTIONAL, -- Need R
+ frequencyHoppingOffset INTEGER (1.. maxNrofPhysicalResourceBlocks-1) OPTIONAL, -- Need R
pathlossReferenceIndex INTEGER (0..maxNrofPUSCH-PathlossReferenceRSs-1),
...,
[[
- pusch-RepTypeIndicator-r16 ENUMERATED {pusch-RepTypeA,pusch-RepTypeB} OPTIONAL, -- Need M
- frequencyHoppingPUSCH-RepTypeB-r16 ENUMERATED {interRepetition, interSlot} OPTIONAL, -- Cond RepTypeB
- timeReferenceSFN-r16 ENUMERATED {sfn512} OPTIONAL -- Need S
+ pusch-RepTypeIndicator-r16 ENUMERATED {pusch-RepTypeA,pusch-RepTypeB} OPTIONAL, -- Need M
+ frequencyHoppingPUSCH-RepTypeB-r16 ENUMERATED {interRepetition, interSlot} OPTIONAL, -- Cond RepTypeB
+ timeReferenceSFN-r16 ENUMERATED {sfn512} OPTIONAL -- Need S
+ ]],
+ [[
+ pathlossReferenceIndex2-r17 INTEGER (0..maxNrofPUSCH-PathlossReferenceRSs-1) OPTIONAL, -- Need R
+ srs-ResourceIndicator2-r17 INTEGER (0..15) OPTIONAL, -- Need R
+ precodingAndNumberOfLayers2-r17 INTEGER (0..63) OPTIONAL, -- Need R
+ timeDomainAllocation-v1710 INTEGER (16..63) OPTIONAL, -- Need M
+ timeDomainOffset-r17 INTEGER (0..40959) OPTIONAL, -- Need R
+ cg-SDT-Configuration-r17 CG-SDT-Configuration-r17 OPTIONAL -- Need M
]]
} OPTIONAL, -- Need R
...,
@@ -3205,8 +4415,26 @@ ConfiguredGrantConfig ::= SEQUENCE {
startingFromRV0-r16 ENUMERATED {on, off} OPTIONAL, -- Need R
phy-PriorityIndex-r16 ENUMERATED {p0, p1} OPTIONAL, -- Need R
autonomousTx-r16 ENUMERATED {enabled} OPTIONAL -- Cond LCH-BasedPrioritization
+ ]],
+ [[
+ cg-betaOffsetsCrossPri0-r17 CHOICE {release NULL, setup BetaOffsetsCrossPriSelCG-r17 } OPTIONAL, -- Need M
+ cg-betaOffsetsCrossPri1-r17 CHOICE {release NULL, setup BetaOffsetsCrossPriSelCG-r17 } OPTIONAL, -- Need M
+ mappingPattern-r17 ENUMERATED {cyclicMapping, sequentialMapping} OPTIONAL, -- Cond SRSsets
+ sequenceOffsetForRV-r17 INTEGER (0..3) OPTIONAL, -- Need R
+ p0-PUSCH-Alpha2-r17 P0-PUSCH-AlphaSetId OPTIONAL, -- Need R
+ powerControlLoopToUse2-r17 ENUMERATED {n0, n1} OPTIONAL, -- Need R
+ cg-COT-SharingList-r17 SEQUENCE (SIZE (1..50722)) OF CG-COT-Sharing-r17 OPTIONAL, -- Need R
+ periodicityExt-r17 INTEGER (1..40960) OPTIONAL, -- Need R
+ repK-v1710 ENUMERATED {n12, n16, n24, n32} OPTIONAL, -- Need R
+ nrofHARQ-Processes-v1700 INTEGER(17..32) OPTIONAL, -- Need M
+ harq-ProcID-Offset2-v1700 INTEGER (16..31) OPTIONAL, -- Need R
+ configuredGrantTimer-v1700 INTEGER(33..288) OPTIONAL, -- Need R
+ cg-minDFI-Delay-v1710 INTEGER (238..3584) OPTIONAL -- Need R
+ ]],
+ [[
+ harq-ProcID-Offset-v1730 INTEGER (16..31) OPTIONAL, -- Need R
+ cg-nrofSlots-r17 INTEGER (1..320) OPTIONAL -- Need R
]]
-
}
CG-UCI-OnPUSCH ::= CHOICE {
@@ -3223,6 +4451,14 @@ CG-COT-Sharing-r16 ::= CHOICE {
}
}
+CG-COT-Sharing-r17 ::= CHOICE {
+ noCOT-Sharing-r17 NULL,
+ cot-Sharing-r17 SEQUENCE {
+ duration-r17 INTEGER (1..319),
+ offset-r17 INTEGER (1..319)
+ }
+}
+
CG-StartingOffsets-r16 ::= SEQUENCE {
cg-StartingFullBW-InsideCOT-r16 SEQUENCE (SIZE (1..7)) OF INTEGER (0..6) OPTIONAL, -- Need R
cg-StartingFullBW-OutsideCOT-r16 SEQUENCE (SIZE (1..7)) OF INTEGER (0..6) OPTIONAL, -- Need R
@@ -3230,6 +4466,28 @@ CG-StartingOffsets-r16 ::= SEQUENCE {
cg-StartingPartialBW-OutsideCOT-r16 INTEGER (0..6) OPTIONAL -- Need R
}
+BetaOffsetsCrossPriSelCG-r17 ::= CHOICE {
+ dynamic-r17 SEQUENCE (SIZE (1..4)) OF BetaOffsetsCrossPri-r17,
+ semiStatic-r17 BetaOffsetsCrossPri-r17
+}
+
+CG-SDT-Configuration-r17 ::= SEQUENCE {
+ cg-SDT-RetransmissionTimer INTEGER (1..64) OPTIONAL, -- Need R
+ sdt-SSB-Subset-r17 CHOICE {
+ shortBitmap-r17 BIT STRING (SIZE (4)),
+ mediumBitmap-r17 BIT STRING (SIZE (8)),
+ longBitmap-r17 BIT STRING (SIZE (64))
+ } OPTIONAL, -- Need S
+ sdt-SSB-PerCG-PUSCH-r17 ENUMERATED {oneEighth, oneFourth, half, one, two, four, eight, sixteen} OPTIONAL, -- Need M
+ sdt-P0-PUSCH-r17 INTEGER (-16..15) OPTIONAL, -- Need M
+ sdt-Alpha-r17 ENUMERATED {alpha0, alpha04, alpha05, alpha06, alpha07, alpha08, alpha09, alpha1} OPTIONAL, -- Need M
+ sdt-DMRS-Ports-r17 CHOICE {
+ dmrsType1-r17 BIT STRING (SIZE (8)),
+ dmrsType2-r17 BIT STRING (SIZE (12))
+ } OPTIONAL, -- Need M
+ sdt-NrofDMRS-Sequences-r17 INTEGER (1..2) OPTIONAL -- Need M
+}
+
-- TAG-CONFIGUREDGRANTCONFIG-STOP
-- TAG-CONFIGUREDGRANTCONFIGINDEX-START
@@ -3254,7 +4512,6 @@ ConnEstFailureControl ::= SEQUENCE {
ControlResourceSet ::= SEQUENCE {
controlResourceSetId ControlResourceSetId,
-
frequencyDomainResources BIT STRING (SIZE (45)),
duration INTEGER (1..maxCoReSetDuration),
cce-REG-MappingType CHOICE {
@@ -3266,8 +4523,8 @@ ControlResourceSet ::= SEQUENCE {
nonInterleaved NULL
},
precoderGranularity ENUMERATED {sameAsREG-bundle, allContiguousRBs},
- tci-StatesPDCCH-ToAddList SEQUENCE(SIZE (1..maxNrofTCI-StatesPDCCH)) OF TCI-StateId OPTIONAL, -- Cond NotSIB1-initialBWP
- tci-StatesPDCCH-ToReleaseList SEQUENCE(SIZE (1..maxNrofTCI-StatesPDCCH)) OF TCI-StateId OPTIONAL, -- Cond NotSIB1-initialBWP
+ tci-StatesPDCCH-ToAddList SEQUENCE(SIZE (1..maxNrofTCI-StatesPDCCH)) OF TCI-StateId OPTIONAL, -- Cond NotSIB-initialBWP
+ tci-StatesPDCCH-ToReleaseList SEQUENCE(SIZE (1..maxNrofTCI-StatesPDCCH)) OF TCI-StateId OPTIONAL, -- Cond NotSIB-initialBWP
tci-PresentInDCI ENUMERATED {enabled} OPTIONAL, -- Need S
pdcch-DMRS-ScramblingID INTEGER (0..65535) OPTIONAL, -- Need S
...,
@@ -3276,6 +4533,9 @@ ControlResourceSet ::= SEQUENCE {
tci-PresentDCI-1-2-r16 INTEGER (1..3) OPTIONAL, -- Need S
coresetPoolIndex-r16 INTEGER (0..1) OPTIONAL, -- Need S
controlResourceSetId-v1610 ControlResourceSetId-v1610 OPTIONAL -- Need S
+ ]],
+ [[
+ followUnifiedTCI-State-r17 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
@@ -3313,6 +4573,10 @@ CrossCarrierSchedulingConfig ::= SEQUENCE {
carrierIndicatorSizeDCI-0-2-r16 INTEGER (0..3)
} OPTIONAL, -- Cond CIF-PRESENCE
enableDefaultBeamForCCS-r16 ENUMERATED {enabled} OPTIONAL -- Need S
+ ]],
+ [[
+ ccs-BlindDetectionSplit-r17 ENUMERATED {oneSeventh, threeFourteenth, twoSeventh, threeSeventh,
+ oneHalf, fourSeventh, fiveSeventh, spare1} OPTIONAL -- Need R
]]
}
@@ -3323,7 +4587,10 @@ CSI-AperiodicTriggerStateList ::= SEQUENCE (SIZE (1..maxNrOfCSI-AperiodicTrigg
CSI-AperiodicTriggerState ::= SEQUENCE {
associatedReportConfigInfoList SEQUENCE (SIZE(1..maxNrofReportConfigPerAperiodicTrigger)) OF CSI-AssociatedReportConfigInfo,
- ...
+ ...,
+ [[
+ ap-CSI-MultiplexingMode-r17 ENUMERATED {enabled} OPTIONAL -- Need R
+ ]]
}
CSI-AssociatedReportConfigInfo ::= SEQUENCE {
@@ -3338,7 +4605,18 @@ CSI-AssociatedReportConfigInfo ::= SEQUENCE {
},
csi-IM-ResourcesForInterference INTEGER(1..maxNrofCSI-IM-ResourceSetsPerConfig) OPTIONAL, -- Cond CSI-IM-ForInterference
nzp-CSI-RS-ResourcesForInterference INTEGER (1..maxNrofNZP-CSI-RS-ResourceSetsPerConfig) OPTIONAL, -- Cond NZP-CSI-RS-ForInterference
- ...
+ ...,
+ [[
+ resourcesForChannel2-r17 CHOICE {
+ nzp-CSI-RS2-r17 SEQUENCE {
+ resourceSet2-r17 INTEGER (1..maxNrofNZP-CSI-RS-ResourceSetsPerConfig),
+ qcl-info2-r17 SEQUENCE (SIZE(1..maxNrofAP-CSI-RS-ResourcesPerSet)) OF TCI-StateId
+ OPTIONAL -- Cond Aperiodic
+ },
+ csi-SSB-ResourceSet2-r17 INTEGER (1..maxNrofCSI-SSB-ResourceSetsPerConfigExt)
+ } OPTIONAL, -- Cond NoUnifiedTCI
+ csi-SSB-ResourceSetExt INTEGER (1..maxNrofCSI-SSB-ResourceSetsPerConfigExt) OPTIONAL -- Need R
+ ]]
}
-- TAG-CSI-APERIODICTRIGGERSTATELIST-STOP
@@ -3417,6 +4695,10 @@ CSI-MeasConfig ::= SEQUENCE {
...,
[[
reportTriggerSizeDCI-0-2-r16 INTEGER (0..6) OPTIONAL -- Need R
+ ]],
+ [[
+ sCellActivationRS-ConfigToAddModList-r17 SEQUENCE (SIZE (1..maxNrofSCellActRS-r17)) OF SCellActivationRS-Config-r17 OPTIONAL, -- Need N
+ sCellActivationRS-ConfigToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofSCellActRS-r17)) OF SCellActivationRS-ConfigId-r17 OPTIONAL -- Need N
]]
}
@@ -3494,7 +4776,7 @@ CSI-ReportConfig ::= SEQUENCE {
nrofReportedRS ENUMERATED {n1, n2, n3, n4} OPTIONAL -- Need S
}
},
- cqi-Table ENUMERATED {table1, table2, table3, spare1} OPTIONAL, -- Need R
+ cqi-Table ENUMERATED {table1, table2, table3, table4-r17} OPTIONAL, -- Need R
subbandSize ENUMERATED {value1, value2},
non-PMI-PortIndication SEQUENCE (SIZE (1..maxNrofNZP-CSI-RS-ResourcesPerConfig)) OF PortIndexFor8Ranks OPTIONAL, -- Need R
...,
@@ -3517,6 +4799,37 @@ CSI-ReportConfig ::= SEQUENCE {
ssb-Index-SINR-r16 NULL
} OPTIONAL, -- Need R
codebookConfig-r16 CodebookConfig-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ cqi-BitsPerSubband-r17 ENUMERATED {bits4} OPTIONAL, -- Need R
+ groupBasedBeamReporting-v1710 SEQUENCE {
+ nrofReportedGroups-r17 ENUMERATED {n1, n2, n3, n4}
+ } OPTIONAL, -- Need R
+ codebookConfig-r17 CodebookConfig-r17 OPTIONAL, -- Need R
+ sharedCMR-r17 ENUMERATED {enable} OPTIONAL, -- Need R
+ csi-ReportMode-r17 ENUMERATED {mode1, mode2} OPTIONAL, -- Need R
+ numberOfSingleTRP-CSI-Mode1-r17 ENUMERATED {n0, n1, n2} OPTIONAL, -- Need R
+ reportQuantity-r17 CHOICE {
+ cri-RSRP-Index-r17 NULL,
+ ssb-Index-RSRP-Index-r17 NULL,
+ cri-SINR-Index-r17 NULL,
+ ssb-Index-SINR-Index-r17 NULL
+ } OPTIONAL -- Need R
+ ]],
+ [[
+ semiPersistentOnPUSCH-v1720 SEQUENCE {
+ reportSlotOffsetList-r17 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..128) OPTIONAL, -- Need R
+ reportSlotOffsetListDCI-0-2-r17 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..128) OPTIONAL, -- Need R
+ reportSlotOffsetListDCI-0-1-r17 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..128) OPTIONAL -- Need R
+ } OPTIONAL, -- Need R
+ aperiodic-v1720 SEQUENCE {
+ reportSlotOffsetList-r17 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..128) OPTIONAL, -- Need R
+ reportSlotOffsetListDCI-0-2-r17 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..128) OPTIONAL, -- Need R
+ reportSlotOffsetListDCI-0-1-r17 SEQUENCE (SIZE (1.. maxNrofUL-Allocations-r16)) OF INTEGER(0..128) OPTIONAL -- Need R
+ } OPTIONAL -- Need R
+ ]],
+ [[
+ codebookConfig-v1730 CodebookConfig-v1730 OPTIONAL -- Need R
]]
}
@@ -3587,7 +4900,10 @@ CSI-ResourceConfig ::= SEQUENCE {
bwp-Id BWP-Id,
resourceType ENUMERATED { aperiodic, semiPersistent, periodic },
- ...
+ ...,
+ [[
+ csi-SSB-ResourceSetListExt-r17 CSI-SSB-ResourceSetId OPTIONAL -- Need R
+ ]]
}
-- TAG-CSI-RESOURCECONFIG-STOP
@@ -3657,7 +4973,16 @@ CSI-RS-Resource-Mobility ::= SEQUENCE {
},
firstOFDMSymbolInTimeDomain INTEGER (0..13),
sequenceGenerationConfig INTEGER (0..1023),
- ...
+ ...,
+ [[
+ slotConfig-r17 CHOICE {
+ ms4 INTEGER (0..255),
+ ms5 INTEGER (0..319),
+ ms10 INTEGER (0..639),
+ ms20 INTEGER (0..1279),
+ ms40 INTEGER (0..2559)
+ } OPTIONAL -- Need R
+ ]]
}
CSI-RS-Index ::= INTEGER (0..maxNrofCSI-RS-ResourcesRRM-1)
@@ -3693,7 +5018,10 @@ CSI-SemiPersistentOnPUSCH-TriggerStateList ::= SEQUENCE(SIZE (1..maxNrOfSemiPers
CSI-SemiPersistentOnPUSCH-TriggerState ::= SEQUENCE {
associatedReportConfigInfo CSI-ReportConfigId,
- ...
+ ...,
+ [[
+ sp-CSI-MultiplexingMode-r17 ENUMERATED {enabled} OPTIONAL -- Need R
+ ]]
}
-- TAG-CSI-SEMIPERSISTENTONPUSCHTRIGGERSTATELIST-STOP
@@ -3702,9 +5030,14 @@ CSI-SemiPersistentOnPUSCH-TriggerState ::= SEQUENCE {
CSI-SSB-ResourceSet ::= SEQUENCE {
csi-SSB-ResourceSetId CSI-SSB-ResourceSetId,
csi-SSB-ResourceList SEQUENCE (SIZE(1..maxNrofCSI-SSB-ResourcePerSet)) OF SSB-Index,
- ...
+ ...,
+ [[
+ servingAdditionalPCIList-r17 SEQUENCE (SIZE(1..maxNrofCSI-SSB-ResourcePerSet)) OF ServingAdditionalPCIIndex-r17 OPTIONAL -- Need R
+ ]]
}
+ServingAdditionalPCIIndex-r17 ::= INTEGER(0..maxNrofAdditionalPCI-r17)
+
-- TAG-CSI-SSB-RESOURCESET-STOP
-- TAG-CSI-SSB-RESOURCESETID-START
@@ -3716,6 +5049,125 @@ CSI-SSB-ResourceSetId ::= INTEGER (0..maxNrofCSI-SSB-ResourceSets-1)
DedicatedNAS-Message ::= OCTET STRING
-- TAG-DEDICATED-NAS-MESSAGE-STOP
+-- TAG-DL-PPW-PRECONFIG-START
+
+DL-PPW-PreConfig-r17 ::= SEQUENCE {
+ dl-PPW-ID-r17 DL-PPW-ID-r17,
+ dl-PPW-PeriodicityAndStartSlot-r17 DL-PPW-PeriodicityAndStartSlot-r17,
+ length-r17 INTEGER (1..160),
+ type-r17 ENUMERATED {type1A, type1B, type2} OPTIONAL, -- Cond MultiType
+ priority-r17 ENUMERATED {st1, st2, st3} OPTIONAL -- Cond MultiState
+}
+
+DL-PPW-ID-r17 ::= INTEGER (0..maxNrofPPW-ID-1-r17)
+
+DL-PPW-PeriodicityAndStartSlot-r17 ::= CHOICE {
+ scs15 CHOICE {
+ n4 INTEGER (0..3),
+ n5 INTEGER (0..4),
+ n8 INTEGER (0..7),
+ n10 INTEGER (0..9),
+ n16 INTEGER (0..15),
+ n20 INTEGER (0..19),
+ n32 INTEGER (0..31),
+ n40 INTEGER (0..39),
+ n64 INTEGER (0..63),
+ n80 INTEGER (0..79),
+ n160 INTEGER (0..159),
+ n320 INTEGER (0..319),
+ n640 INTEGER (0..639),
+ n1280 INTEGER (0..1279),
+ n2560 INTEGER (0..2559),
+ n5120 INTEGER (0..5119),
+ n10240 INTEGER (0..10239),
+ ...
+ },
+ scs30 CHOICE {
+ n8 INTEGER (0..7),
+ n10 INTEGER (0..9),
+ n16 INTEGER (0..15),
+ n20 INTEGER (0..19),
+ n32 INTEGER (0..31),
+ n40 INTEGER (0..39),
+ n64 INTEGER (0..63),
+ n80 INTEGER (0..79),
+ n128 INTEGER (0..127),
+ n160 INTEGER (0..159),
+ n320 INTEGER (0..319),
+ n640 INTEGER (0..639),
+ n1280 INTEGER (0..1279),
+ n2560 INTEGER (0..2559),
+ n5120 INTEGER (0..5119),
+ n10240 INTEGER (0..10239),
+ n20480 INTEGER (0..20479),
+ ...
+ },
+ scs60 CHOICE {
+ n16 INTEGER (0..15),
+ n20 INTEGER (0..19),
+ n32 INTEGER (0..31),
+ n40 INTEGER (0..39),
+ n64 INTEGER (0..63),
+ n80 INTEGER (0..79),
+ n128 INTEGER (0..127),
+ n160 INTEGER (0..159),
+ n256 INTEGER (0..255),
+ n320 INTEGER (0..319),
+ n640 INTEGER (0..639),
+ n1280 INTEGER (0..1279),
+ n2560 INTEGER (0..2559),
+ n5120 INTEGER (0..5119),
+ n10240 INTEGER (0..10239),
+ n20480 INTEGER (0..20479),
+ n40960 INTEGER (0..40959),
+ ...
+ },
+ scs120 CHOICE {
+ n32 INTEGER (0..31),
+ n40 INTEGER (0..39),
+ n64 INTEGER (0..63),
+ n80 INTEGER (0..79),
+ n128 INTEGER (0..127),
+ n160 INTEGER (0..159),
+ n256 INTEGER (0..255),
+ n320 INTEGER (0..319),
+ n512 INTEGER (0..511),
+ n640 INTEGER (0..639),
+ n1280 INTEGER (0..1279),
+ n2560 INTEGER (0..2559),
+ n5120 INTEGER (0..5119),
+ n10240 INTEGER (0..10239),
+ n20480 INTEGER (0..20479),
+ n40960 INTEGER (0..40959),
+ n81920 INTEGER (0..81919),
+ ...
+ },
+ ...
+}
+
+-- TAG-DL-PPW-PRECONFIG-STOP
+-- TAG-DMRS-BUNDLINGPUCCH-CONFIG-START
+
+DMRS-BundlingPUCCH-Config-r17 ::= SEQUENCE {
+ pucch-DMRS-Bundling-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pucch-TimeDomainWindowLength-r17 INTEGER (2..8) OPTIONAL, -- Need S
+ pucch-WindowRestart-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pucch-FrequencyHoppingInterval-r17 ENUMERATED {s2, s4, s5, s10} OPTIONAL, -- Need S
+ ...
+}
+
+-- TAG-DMRS-BUNDLINGPUCCH-CONFIG-STOP
+-- TAG-DMRS-BUNDLINGPUSCH-CONFIG-START
+
+DMRS-BundlingPUSCH-Config-r17 ::= SEQUENCE {
+ pusch-DMRS-Bundling-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pusch-TimeDomainWindowLength-r17 INTEGER (2..32) OPTIONAL, -- Need S
+ pusch-WindowRestart-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pusch-FrequencyHoppingInterval-r17 ENUMERATED {s2, s4, s5, s6, s8, s10, s12, s14, s16, s20} OPTIONAL, -- Need S
+ ...
+}
+
+-- TAG-DMRS-BUNDLINGPUSCH-CONFIG-STOP
-- TAG-DMRS-DOWNLINKCONFIG-START
DMRS-DownlinkConfig ::= SEQUENCE {
@@ -3771,7 +5223,11 @@ DMRS-UplinkTransformPrecoding-r16 ::= SEQUENCE {
DownlinkConfigCommon ::= SEQUENCE {
frequencyInfoDL FrequencyInfoDL OPTIONAL, -- Cond InterFreqHOAndServCellAdd
initialDownlinkBWP BWP-DownlinkCommon OPTIONAL, -- Cond ServCellAdd
- ...
+ ...,
+ [[
+ initialDownlinkBWP-RedCap-r17 BWP-DownlinkCommon OPTIONAL -- Need R
+
+ ]]
}
-- TAG-DOWNLINKCONFIGCOMMON-STOP
@@ -3780,11 +5236,18 @@ DownlinkConfigCommon ::= SEQUENCE {
DownlinkConfigCommonSIB ::= SEQUENCE {
frequencyInfoDL FrequencyInfoDL-SIB,
initialDownlinkBWP BWP-DownlinkCommon,
- bcch-Config BCCH-Config,
- pcch-Config PCCH-Config,
- ...
+ bcch-Config BCCH-Config,
+ pcch-Config PCCH-Config,
+ ...,
+ [[
+ pei-Config-r17 PEI-Config-r17 OPTIONAL, -- Need R
+ initialDownlinkBWP-RedCap-r17 BWP-DownlinkCommon OPTIONAL -- Need R
+ ]]
}
+DownlinkConfigCommonSIB-v1760 ::= SEQUENCE {
+ frequencyInfoDL-v1760 FrequencyInfoDL-SIB-v1760
+}
BCCH-Config ::= SEQUENCE {
modificationPeriodCoeff ENUMERATED {n2, n4, n8, n16},
@@ -3808,16 +5271,39 @@ PCCH-Config ::= SEQUENCE {
sCS60KHZoneT-SCS30KHZhalfT-SCS15KHZquarterT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..559),
sCS120KHZoneT-SCS60KHZhalfT-SCS30KHZquarterT-SCS15KHZoneEighthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..1119),
sCS120KHZhalfT-SCS60KHZquarterT-SCS30KHZoneEighthT-SCS15KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..2239),
- sCS120KHZquarterT-SCS60KHZoneEighthT-SCS30KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..4479),
- sCS120KHZoneEighthT-SCS60KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..8959),
- sCS120KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..17919)
+ sCS480KHZoneT-SCS120KHZquarterT-SCS60KHZoneEighthT-SCS30KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..4479),
+ sCS480KHZhalfT-SCS120KHZoneEighthT-SCS60KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..8959),
+ sCS480KHZquarterT-SCS120KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..17919)
} OPTIONAL, -- Need R
...,
[[
- nrofPDCCH-MonitoringOccasionPerSSB-InPO-r16 INTEGER (2..4) OPTIONAL -- Cond SharedSpectrum2
+ nrofPDCCH-MonitoringOccasionPerSSB-InPO-r16 INTEGER (2..4) OPTIONAL -- Cond SharedSpectrum2
+ ]],
+ [[
+ ranPagingInIdlePO-r17 ENUMERATED {true} OPTIONAL, -- Need R
+
+ firstPDCCH-MonitoringOccasionOfPO-v1710 CHOICE {
+ sCS480KHZoneEighthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..35839),
+ sCS480KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..71679)
+} OPTIONAL -- Need R
]]
}
+PEI-Config-r17 ::= SEQUENCE {
+ po-NumPerPEI-r17 ENUMERATED {po1, po2, po4, po8},
+ payloadSizeDCI-2-7-r17 INTEGER (1..maxDCI-2-7-Size-r17),
+ pei-FrameOffset-r17 INTEGER (0..16),
+ subgroupConfig-r17 SubgroupConfig-r17,
+ lastUsedCellOnly-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ ...
+}
+
+SubgroupConfig-r17 ::= SEQUENCE {
+ subgroupsNumPerPO-r17 INTEGER (1.. maxNrofPagingSubgroups-r17),
+ subgroupsNumForUEID-r17 INTEGER (1.. maxNrofPagingSubgroups-r17) OPTIONAL, -- Need S
+ ...
+}
+
-- TAG-DOWNLINKCONFIGCOMMONSIB-STOP
-- TAG-DOWNLINKPREEMPTION-START
@@ -3896,24 +5382,106 @@ DRX-Config ::= SEQUENCE {
drx-SlotOffset INTEGER (0..31)
}
+DRX-ConfigExt-v1700 ::= SEQUENCE {
+ drx-HARQ-RTT-TimerDL-r17 INTEGER (0..448),
+ drx-HARQ-RTT-TimerUL-r17 INTEGER (0..448)
+}
+
-- TAG-DRX-CONFIG-STOP
-- TAG-DRX-CONFIGSECONDARYGROUP-START
-DRX-ConfigSecondaryGroup ::= SEQUENCE {
- drx-onDurationTimer CHOICE {
+DRX-ConfigSecondaryGroup-r16 ::= SEQUENCE {
+ drx-onDurationTimer-r16 CHOICE {
subMilliSeconds INTEGER (1..31),
milliSeconds ENUMERATED {
ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60,
ms80, ms100, ms200, ms300, ms400, ms500, ms600, ms800, ms1000, ms1200,
ms1600, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1 }
},
- drx-InactivityTimer ENUMERATED {
+ drx-InactivityTimer-r16 ENUMERATED {
ms0, ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60, ms80,
ms100, ms200, ms300, ms500, ms750, ms1280, ms1920, ms2560, spare9, spare8,
spare7, spare6, spare5, spare4, spare3, spare2, spare1}
}
-- TAG-DRX-CONFIGSECONDARYGROUP-STOP
+-- TAG-DRX-CONFIGSL-START
+
+DRX-ConfigSL-r17 ::= SEQUENCE {
+ drx-HARQ-RTT-TimerSL-r17 INTEGER (0..56),
+ drx-RetransmissionTimerSL-r17 ENUMERATED {sl0, sl1, sl2, sl4, sl6, sl8, sl16, sl24, sl33, sl40, sl64, sl80, sl96, sl112, sl128,
+ sl160, sl320, spare15, spare14, spare13, spare12, spare11, spare10, spare9, spare8,
+ spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+}
+
+-- TAG-DRX-CONFIGSL-STOP
+-- TAG-EPHEMERISINFO-START
+
+EphemerisInfo-r17 ::= CHOICE {
+ positionVelocity-r17 PositionVelocity-r17,
+ orbital-r17 Orbital-r17
+}
+
+PositionVelocity-r17 ::= SEQUENCE {
+ positionX-r17 PositionStateVector-r17,
+ positionY-r17 PositionStateVector-r17,
+ positionZ-r17 PositionStateVector-r17,
+ velocityVX-r17 VelocityStateVector-r17,
+ velocityVY-r17 VelocityStateVector-r17,
+ velocityVZ-r17 VelocityStateVector-r17
+}
+
+Orbital-r17 ::= SEQUENCE {
+ semiMajorAxis-r17 INTEGER (0..8589934591),
+ eccentricity-r17 INTEGER (0..1048575),
+ periapsis-r17 INTEGER (0..268435455),
+ longitude-r17 INTEGER (0..268435455),
+ inclination-r17 INTEGER (-67108864..67108863),
+ meanAnomaly-r17 INTEGER (0..268435455)
+}
+
+PositionStateVector-r17 ::= INTEGER (-33554432..33554431)
+
+VelocityStateVector-r17 ::= INTEGER (-131072..131071)
+
+-- TAG-EPHEMERISINFO-STOP
+-- TAG-FEATURECOMBINATION-START
+
+FeatureCombination-r17 ::= SEQUENCE {
+ redCap-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ smallData-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ nsag-r17 NSAG-List-r17 OPTIONAL, -- Need R
+ msg3-Repetitions-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ spare4 ENUMERATED {true} OPTIONAL, -- Need R
+ spare3 ENUMERATED {true} OPTIONAL, -- Need R
+ spare2 ENUMERATED {true} OPTIONAL, -- Need R
+ spare1 ENUMERATED {true} OPTIONAL -- Need R
+}
+
+NSAG-List-r17 ::= SEQUENCE (SIZE (1.. maxSliceInfo-r17)) OF NSAG-ID-r17
+
+-- TAG-FEATURECOMBINATION-STOP
+-- TAG-FEATURECOMBINATIONPREAMBLES-START
+
+FeatureCombinationPreambles-r17 ::= SEQUENCE {
+ featureCombination-r17 FeatureCombination-r17,
+ startPreambleForThisPartition-r17 INTEGER (0..63),
+ numberOfPreamblesPerSSB-ForThisPartition-r17 INTEGER (1..64),
+ ssb-SharedRO-MaskIndex-r17 INTEGER (1..15) OPTIONAL, -- Need S
+ groupBconfigured-r17 SEQUENCE {
+ ra-SizeGroupA-r17 ENUMERATED {b56, b144, b208, b256, b282, b480, b640,
+ b800, b1000, b72, spare6, spare5,spare4, spare3, spare2, spare1},
+ messagePowerOffsetGroupB-r17 ENUMERATED { minusinfinity, dB0, dB5, dB8, dB10, dB12, dB15, dB18},
+ numberOfRA-PreamblesGroupA-r17 INTEGER (1..64)
+ } OPTIONAL, -- Need R
+ separateMsgA-PUSCH-Config-r17 MsgA-PUSCH-Config-r16 OPTIONAL, -- Cond MsgAConfigCommon
+ msgA-RSRP-Threshold-r17 RSRP-Range OPTIONAL, -- Need R
+ rsrp-ThresholdSSB-r17 RSRP-Range OPTIONAL, -- Need R
+ deltaPreamble-r17 INTEGER (-1..6) OPTIONAL, -- Need R
+ ...
+}
+
+-- TAG-FEATURECOMBINATIONPREAMBLES-STOP
-- TAG-FILTERCOEFFICIENT-START
FilterCoefficient ::= ENUMERATED { fc0, fc1, fc2, fc3, fc4, fc5, fc6, fc7, fc8, fc9, fc11, fc13, fc15, fc17, fc19, spare1, ...}
@@ -3924,6 +5492,48 @@ FilterCoefficient ::= ENUMERATED { fc0, fc1, fc2, fc3, fc4, fc5, fc6, fc7,
FreqBandIndicatorNR ::= INTEGER (1..1024)
-- TAG-FREQBANDINDICATORNR-STOP
+-- TAG-FREQPRIORITYLISTDEDICATEDSLICING-START
+
+FreqPriorityListDedicatedSlicing-r17 ::= SEQUENCE (SIZE (1.. maxFreq)) OF FreqPriorityDedicatedSlicing-r17
+
+FreqPriorityDedicatedSlicing-r17 ::= SEQUENCE {
+ dl-ExplicitCarrierFreq-r17 ARFCN-ValueNR,
+ sliceInfoListDedicated-r17 SliceInfoListDedicated-r17 OPTIONAL -- Cond Mandatory
+}
+
+SliceInfoListDedicated-r17 ::= SEQUENCE (SIZE (1..maxSliceInfo-r17)) OF SliceInfoDedicated-r17
+
+SliceInfoDedicated-r17 ::= SEQUENCE {
+ nsag-IdentityInfo-r17 NSAG-IdentityInfo-r17,
+ nsag-CellReselectionPriority-r17 CellReselectionPriority OPTIONAL, -- Need R
+ nsag-CellReselectionSubPriority-r17 CellReselectionSubPriority OPTIONAL -- Need R
+}
+
+-- TAG-FREQPRIORITYLISTDEDICATEDSLICING-STOP
+-- TAG-FREQPRIORITYLISTSLICING-START
+
+FreqPriorityListSlicing-r17 ::= SEQUENCE (SIZE (1..maxFreqPlus1)) OF FreqPrioritySlicing-r17
+
+FreqPrioritySlicing-r17 ::= SEQUENCE {
+ dl-ImplicitCarrierFreq-r17 INTEGER (0..maxFreq),
+ sliceInfoList-r17 SliceInfoList-r17 OPTIONAL -- Cond Mandatory
+}
+
+SliceInfoList-r17 ::= SEQUENCE (SIZE (1..maxSliceInfo-r17)) OF SliceInfo-r17
+
+SliceInfo-r17 ::= SEQUENCE {
+ nsag-IdentityInfo-r17 NSAG-IdentityInfo-r17,
+ nsag-CellReselectionPriority-r17 CellReselectionPriority OPTIONAL, -- Need R
+ nsag-CellReselectionSubPriority-r17 CellReselectionSubPriority OPTIONAL, -- Need R
+ sliceCellListNR-r17 CHOICE {
+ sliceAllowedCellListNR-r17 SliceCellListNR-r17,
+ sliceExcludedCellListNR-r17 SliceCellListNR-r17
+ } OPTIONAL -- Need R
+}
+
+SliceCellListNR-r17 ::= SEQUENCE (SIZE (1..maxCellSlice-r17)) OF PCI-Range
+
+-- TAG-FREQPRIORITYLISTSLICING-STOP
-- TAG-FREQUENCYINFODL-START
FrequencyInfoDL ::= SEQUENCE {
@@ -3943,6 +5553,10 @@ FrequencyInfoDL-SIB ::= SEQUENCE {
scs-SpecificCarrierList SEQUENCE (SIZE (1..maxSCSs)) OF SCS-SpecificCarrier
}
+FrequencyInfoDL-SIB-v1760 ::= SEQUENCE {
+ frequencyBandList-v1760 MultiFrequencyBandListNR-SIB-v1760
+}
+
-- TAG-FREQUENCYINFODL-SIB-STOP
-- TAG-FREQUENCYINFOUL-START
@@ -3953,13 +5567,16 @@ FrequencyInfoUL ::= SEQUENCE {
additionalSpectrumEmission AdditionalSpectrumEmission OPTIONAL, -- Need S
p-Max P-Max OPTIONAL, -- Need S
frequencyShift7p5khz ENUMERATED {true} OPTIONAL, -- Cond FDD-TDD-OrSUL-Optional
- ...
+ ...,
+ [[
+ additionalSpectrumEmission-v1760 AdditionalSpectrumEmission-v1760 OPTIONAL -- Need S
+ ]]
}
-- TAG-FREQUENCYINFOUL-STOP
-- TAG-FREQUENCYINFOUL-SIB-START
-FrequencyInfoUL-SIB ::= SEQUENCE {
+FrequencyInfoUL-SIB ::= SEQUENCE {
frequencyBandList MultiFrequencyBandListNR-SIB OPTIONAL, -- Cond FDD-OrSUL
absoluteFrequencyPointA ARFCN-ValueNR OPTIONAL, -- Cond FDD-OrSUL
scs-SpecificCarrierList SEQUENCE (SIZE (1..maxSCSs)) OF SCS-SpecificCarrier,
@@ -3968,21 +5585,49 @@ FrequencyInfoUL-SIB ::= SEQUENCE {
...
}
+FrequencyInfoUL-SIB-v1760 ::= SEQUENCE {
+ frequencyBandList-v1760 MultiFrequencyBandListNR-SIB-v1760
+}
+
-- TAG-FREQUENCYINFOUL-SIB-STOP
+-- TAG-GAPPRIORITY-START
+
+GapPriority-r17 ::= INTEGER (1..maxNrOfGapPri-r17)
+
+-- TAG-GAPPRIORITY-STOP
-- TAG-HIGHSPEEDCONFIG-START
HighSpeedConfig-r16 ::= SEQUENCE {
- highSpeedMeasFlag-r16 ENUMERATED {true} OPTIONAL, -- Need R
+ highSpeedMeasFlag-r16 ENUMERATED {true} OPTIONAL, -- Cond SpCellOnly
highSpeedDemodFlag-r16 ENUMERATED {true} OPTIONAL, -- Need R
...
}
+HighSpeedConfig-v1700 ::= SEQUENCE {
+ highSpeedMeasCA-Scell-r17 ENUMERATED {true} OPTIONAL, -- Cond SCellOnly
+ highSpeedMeasInterFreq-r17 ENUMERATED {true} OPTIONAL, -- Cond SpCellOnly2
+ highSpeedDemodCA-Scell-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ ...
+}
+
+HighSpeedConfigFR2-r17 ::= SEQUENCE {
+ highSpeedMeasFlagFR2-r17 ENUMERATED {set1, set2} OPTIONAL, -- Need R
+ highSpeedDeploymentTypeFR2-r17 ENUMERATED {unidirectional, bidirectional} OPTIONAL, -- Need R
+ highSpeedLargeOneStepUL-TimingFR2-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ ...
+}
+
-- TAG-HIGHSPEEDCONFIG-STOP
-- TAG-HYSTERESIS-START
Hysteresis ::= INTEGER (0..30)
-- TAG-HYSTERESIS-STOP
+-- TAG-HYSTERESISLOCATION-START
+
+HysteresisLocation-r17 ::= INTEGER (0..32768)
+
+-- TAG-HYSTERESISLOCATION-STOP
-- TAG-INVALIDSYMBOLPATTERN-START
InvalidSymbolPattern-r16 ::= SEQUENCE {
@@ -4073,7 +5718,7 @@ LogicalChannelConfig ::= SEQUENCE {
allowedServingCells SEQUENCE (SIZE (1..maxNrofServingCells-1)) OF ServCellIndex
OPTIONAL, -- Cond PDCP-CADuplication
allowedSCS-List SEQUENCE (SIZE (1..maxSCSs)) OF SubcarrierSpacing OPTIONAL, -- Need R
- maxPUSCH-Duration ENUMERATED {ms0p02, ms0p04, ms0p0625, ms0p125, ms0p25, ms0p5, spare2, spare1}
+ maxPUSCH-Duration ENUMERATED {ms0p02, ms0p04, ms0p0625, ms0p125, ms0p25, ms0p5, ms0p01-v1700, spare1}
OPTIONAL, -- Need R
configuredGrantType1Allowed ENUMERATED {true} OPTIONAL, -- Need R
logicalChannelGroup INTEGER (0..maxLCG-ID) OPTIONAL, -- Need R
@@ -4086,6 +5731,10 @@ LogicalChannelConfig ::= SEQUENCE {
allowedCG-List-r16 SEQUENCE (SIZE (0.. maxNrofConfiguredGrantConfigMAC-1-r16)) OF ConfiguredGrantConfigIndexMAC-r16
OPTIONAL, -- Need S
allowedPHY-PriorityIndex-r16 ENUMERATED {p0, p1} OPTIONAL -- Need S
+ ]],
+ [[
+ logicalChannelGroupIAB-Ext-r17 INTEGER (0..maxLCG-ID-IAB-r17) OPTIONAL, -- Need R
+ allowedHARQ-mode-r17 ENUMERATED {harqModeA, harqModeB} OPTIONAL -- Need R
]]
} OPTIONAL, -- Cond UL
...,
@@ -4101,6 +5750,21 @@ LogicalChannelConfig ::= SEQUENCE {
LogicalChannelIdentity ::= INTEGER (1..maxLC-ID)
-- TAG-LOGICALCHANNELIDENTITY-STOP
+-- TAG-LTE-NEIGHCELLSCRS-ASSISTINFOLIST-START
+
+LTE-NeighCellsCRS-AssistInfoList-r17 ::= SEQUENCE (SIZE (1..maxNrofCRS-IM-InterfCell-r17)) OF LTE-NeighCellsCRS-AssistInfo-r17
+
+LTE-NeighCellsCRS-AssistInfo-r17 ::= SEQUENCE {
+ neighCarrierBandwidthDL-r17 ENUMERATED {n6, n15, n25, n50, n75, n100, spare2, spare1} OPTIONAL, -- Cond CRS-IM
+ neighCarrierFreqDL-r17 INTEGER (0..16383) OPTIONAL, -- Need S
+ neighCellId-r17 EUTRA-PhysCellId OPTIONAL, -- Need S
+ neighCRS-muting-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ neighMBSFN-SubframeConfigList-r17 EUTRA-MBSFN-SubframeConfigList OPTIONAL, -- Need S
+ neighNrofCRS-Ports-r17 ENUMERATED {n1, n2, n4} OPTIONAL, -- Need S
+ neighV-Shift-r17 ENUMERATED {n0, n1, n2, n3, n4, n5} OPTIONAL -- Cond NotCellID
+}
+
+-- TAG-LTE-NEIGHCELLSCRS-ASSISTINFOLIST-STOP
-- TAG-MAC-CELLGROUPCONFIG-START
MAC-CellGroupConfig ::= SEQUENCE {
@@ -4120,16 +5784,51 @@ MAC-CellGroupConfig ::= SEQUENCE {
schedulingRequestID-LBT-SCell-r16 SchedulingRequestId OPTIONAL, -- Need R
lch-BasedPrioritization-r16 ENUMERATED {enabled} OPTIONAL, -- Need R
schedulingRequestID-BFR-SCell-r16 SchedulingRequestId OPTIONAL, -- Need R
- drx-ConfigSecondaryGroup-r16 CHOICE {release NULL, setup DRX-ConfigSecondaryGroup } OPTIONAL -- Need M
+ drx-ConfigSecondaryGroup-r16 CHOICE {release NULL, setup DRX-ConfigSecondaryGroup-r16 } OPTIONAL -- Need M
]],
[[
enhancedSkipUplinkTxDynamic-r16 ENUMERATED {true} OPTIONAL, -- Need R
enhancedSkipUplinkTxConfigured-r16 ENUMERATED {true} OPTIONAL -- Need R
+ ]],
+ [[
+ intraCG-Prioritization-r17 ENUMERATED {enabled} OPTIONAL, -- Cond LCH-PrioWithReTxTimer
+ drx-ConfigSL-r17 CHOICE {release NULL, setup DRX-ConfigSL-r17 } OPTIONAL, -- Need M
+ drx-ConfigExt-v1700 CHOICE {release NULL, setup DRX-ConfigExt-v1700 } OPTIONAL, -- Need M
+ schedulingRequestID-BFR-r17 SchedulingRequestId OPTIONAL, -- Need R
+ schedulingRequestID-BFR2-r17 SchedulingRequestId OPTIONAL, -- Need R
+ schedulingRequestConfig-v1700 SchedulingRequestConfig-v1700 OPTIONAL, -- Need M
+ tar-Config-r17 CHOICE {release NULL, setup TAR-Config-r17 } OPTIONAL, -- Need M
+ g-RNTI-ConfigToAddModList-r17 SEQUENCE (SIZE (1..maxG-RNTI-r17)) OF MBS-RNTI-SpecificConfig-r17 OPTIONAL, -- Need N
+ g-RNTI-ConfigToReleaseList-r17 SEQUENCE (SIZE (1..maxG-RNTI-r17)) OF MBS-RNTI-SpecificConfigId-r17 OPTIONAL, -- Need N
+ g-CS-RNTI-ConfigToAddModList-r17 SEQUENCE (SIZE (1..maxG-CS-RNTI-r17)) OF MBS-RNTI-SpecificConfig-r17 OPTIONAL, -- Need N
+ g-CS-RNTI-ConfigToReleaseList-r17 SEQUENCE (SIZE (1..maxG-CS-RNTI-r17)) OF MBS-RNTI-SpecificConfigId-r17 OPTIONAL, -- Need N
+ allowCSI-SRS-Tx-MulticastDRX-Active-r17 BOOLEAN OPTIONAL -- Need M
+ ]],
+ [[
+ schedulingRequestID-PosMG-Request-r17 SchedulingRequestId OPTIONAL, -- Need R
+ drx-LastTransmissionUL-r17 ENUMERATED {enabled} OPTIONAL -- Need R
+ ]],
+ [[
+ posMG-Request-r17 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
DataInactivityTimer ::= ENUMERATED {s1, s2, s3, s5, s7, s10, s15, s20, s40, s50, s60, s80, s100, s120, s150, s180}
+MBS-RNTI-SpecificConfig-r17 ::= SEQUENCE {
+ mbs-RNTI-SpecificConfigId-r17 MBS-RNTI-SpecificConfigId-r17,
+ groupCommon-RNTI-r17 CHOICE {
+ g-RNTI RNTI-Value,
+ g-CS-RNTI RNTI-Value
+ },
+ drx-ConfigPTM-r17 CHOICE {release NULL, setup DRX-ConfigPTM-r17 } OPTIONAL, -- Need M
+ harq-FeedbackEnablerMulticast-r17 ENUMERATED {dci-enabler, enabled} OPTIONAL, -- Need S
+ harq-FeedbackOptionMulticast-r17 ENUMERATED {ack-nack, nack-only} OPTIONAL, -- Cond HARQFeedback
+ pdsch-AggregationFactor-r17 ENUMERATED {n2, n4, n8} OPTIONAL -- Cond G-RNTI
+}
+
+MBS-RNTI-SpecificConfigId-r17 ::= INTEGER (0..maxG-RNTI-1-r17)
+
-- TAG-MAC-CELLGROUPCONFIG-STOP
-- TAG-MEASCONFIG-START
@@ -4168,6 +5867,12 @@ MeasGapConfig ::= SEQUENCE {
[[
gapFR1 CHOICE {release NULL, setup GapConfig } OPTIONAL, -- Need M
gapUE CHOICE {release NULL, setup GapConfig } OPTIONAL -- Need M
+ ]],
+ [[
+ gapToAddModList-r17 SEQUENCE (SIZE (1..maxNrofGapId-r17)) OF GapConfig-r17 OPTIONAL, -- Need N
+ gapToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofGapId-r17)) OF MeasGapId-r17 OPTIONAL, -- Need N
+ posMeasGapPreConfigToAddModList-r17 PosMeasGapPreConfigToAddModList-r17 OPTIONAL, -- Need N
+ posMeasGapPreConfigToReleaseList-r17 PosMeasGapPreConfigToReleaseList-r17 OPTIONAL -- Need N
]]
}
@@ -4187,7 +5892,45 @@ GapConfig ::= SEQUENCE {
]]
}
+GapConfig-r17 ::= SEQUENCE {
+ measGapId-r17 MeasGapId-r17,
+ gapType-r17 ENUMERATED {perUE, perFR1, perFR2},
+ gapOffset-r17 INTEGER (0..159),
+ mgl-r17 ENUMERATED {ms1, ms1dot5, ms2, ms3, ms3dot5, ms4, ms5, ms5dot5, ms6, ms10, ms20},
+ mgrp-r17 ENUMERATED {ms20, ms40, ms80, ms160},
+ mgta-r17 ENUMERATED {ms0, ms0dot25, ms0dot5, ms0dot75},
+ refServCellIndicator-r17 ENUMERATED {pCell, pSCell, mcg-FR2} OPTIONAL, -- Cond NEDCorNRDC
+ refFR2-ServCellAsyncCA-r17 ServCellIndex OPTIONAL, -- Cond AsyncCA
+ preConfigInd-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ ncsgInd-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ gapAssociationPRS-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ gapSharing-r17 MeasGapSharingScheme OPTIONAL, -- Need R
+ gapPriority-r17 GapPriority-r17 OPTIONAL, -- Need R
+ ...
+}
+
+PosMeasGapPreConfigToAddModList-r17 ::= SEQUENCE (SIZE (1..maxNrofPreConfigPosGapId-r17)) OF PosGapConfig-r17
+
+PosMeasGapPreConfigToReleaseList-r17 ::= SEQUENCE (SIZE (1..maxNrofPreConfigPosGapId-r17)) OF MeasPosPreConfigGapId-r17
+
+PosGapConfig-r17 ::= SEQUENCE {
+ measPosPreConfigGapId-r17 MeasPosPreConfigGapId-r17,
+ gapOffset-r17 INTEGER (0..159),
+ mgl-r17 ENUMERATED {ms1dot5, ms3, ms3dot5, ms4, ms5dot5, ms6, ms10, ms20},
+ mgrp-r17 ENUMERATED {ms20, ms40, ms80, ms160},
+ mgta-r17 ENUMERATED {ms0, ms0dot25, ms0dot5},
+ gapType-r17 ENUMERATED {perUE, perFR1, perFR2},
+ ...
+}
+
+MeasPosPreConfigGapId-r17 ::= INTEGER (1..maxNrofPreConfigPosGapId-r17)
+
-- TAG-MEASGAPCONFIG-STOP
+-- TAG-MEASGAPID-START
+
+MeasGapId-r17 ::= INTEGER (1..maxNrofGapId-r17)
+
+-- TAG-MEASGAPID-STOP
-- TAG-MEASGAPSHARINGCONFIG-START
MeasGapSharingConfig ::= SEQUENCE {
@@ -4347,12 +6090,15 @@ MeasObjectEUTRA::= SEQUENCE {
allowedMeasBandwidth EUTRA-AllowedMeasBandwidth,
cellsToRemoveListEUTRAN EUTRA-CellIndexList OPTIONAL, -- Need N
cellsToAddModListEUTRAN SEQUENCE (SIZE (1..maxCellMeasEUTRA)) OF EUTRA-Cell OPTIONAL, -- Need N
- blackCellsToRemoveListEUTRAN EUTRA-CellIndexList OPTIONAL, -- Need N
- blackCellsToAddModListEUTRAN SEQUENCE (SIZE (1..maxCellMeasEUTRA)) OF EUTRA-BlackCell OPTIONAL, -- Need N
+ excludedCellsToRemoveListEUTRAN EUTRA-CellIndexList OPTIONAL, -- Need N
+ excludedCellsToAddModListEUTRAN SEQUENCE (SIZE (1..maxCellMeasEUTRA)) OF EUTRA-ExcludedCell OPTIONAL, -- Need N
eutra-PresenceAntennaPort1 EUTRA-PresenceAntennaPort1,
eutra-Q-OffsetRange EUTRA-Q-OffsetRange OPTIONAL, -- Need R
widebandRSRQ-Meas BOOLEAN,
- ...
+ ...,
+ [[
+ associatedMeasGap-r17 MeasGapId-r17 OPTIONAL -- Need R
+ ]]
}
EUTRA-CellIndexList ::= SEQUENCE (SIZE (1..maxCellMeasEUTRA)) OF EUTRA-CellIndex
@@ -4367,7 +6113,7 @@ EUTRA-Cell ::= SEQUENCE {
}
-EUTRA-BlackCell ::= SEQUENCE {
+EUTRA-ExcludedCell ::= SEQUENCE {
cellIndexEUTRA EUTRA-CellIndex,
physCellIdRange EUTRA-PhysCellIdRange
}
@@ -4395,24 +6141,38 @@ MeasObjectNR ::= SEQUENCE {
offsetMO Q-OffsetRangeList,
cellsToRemoveList PCI-List OPTIONAL, -- Need N
cellsToAddModList CellsToAddModList OPTIONAL, -- Need N
- blackCellsToRemoveList PCI-RangeIndexList OPTIONAL, -- Need N
- blackCellsToAddModList SEQUENCE (SIZE (1..maxNrofPCI-Ranges)) OF PCI-RangeElement OPTIONAL, -- Need N
- whiteCellsToRemoveList PCI-RangeIndexList OPTIONAL, -- Need N
- whiteCellsToAddModList SEQUENCE (SIZE (1..maxNrofPCI-Ranges)) OF PCI-RangeElement OPTIONAL, -- Need N
+ excludedCellsToRemoveList PCI-RangeIndexList OPTIONAL, -- Need N
+ excludedCellsToAddModList SEQUENCE (SIZE (1..maxNrofPCI-Ranges)) OF PCI-RangeElement OPTIONAL, -- Need N
+ allowedCellsToRemoveList PCI-RangeIndexList OPTIONAL, -- Need N
+ allowedCellsToAddModList SEQUENCE (SIZE (1..maxNrofPCI-Ranges)) OF PCI-RangeElement OPTIONAL, -- Need N
...,
[[
freqBandIndicatorNR FreqBandIndicatorNR OPTIONAL, -- Need R
measCycleSCell ENUMERATED {sf160, sf256, sf320, sf512, sf640, sf1024, sf1280} OPTIONAL -- Need R
]],
[[
- smtc3list-r16 SSB-MTC3List-r16 OPTIONAL, -- Need R
+ smtc3list-r16 SSB-MTC3List-r16 OPTIONAL, -- Need R
rmtc-Config-r16 CHOICE {release NULL, setup RMTC-Config-r16} OPTIONAL, -- Need M
t312-r16 CHOICE {release NULL, setup T312-r16 } OPTIONAL -- Need M
- ]]
+ ]],
+ [[
+ associatedMeasGapSSB-r17 MeasGapId-r17 OPTIONAL, -- Need R
+ associatedMeasGapCSIRS-r17 MeasGapId-r17 OPTIONAL, -- Need R
+ smtc4list-r17 SSB-MTC4List-r17 OPTIONAL, -- Need R
+ measCyclePSCell-r17 ENUMERATED {ms160, ms256, ms320, ms512, ms640, ms1024, ms1280, spare1}
+ OPTIONAL, -- Cond SCG
+ cellsToAddModListExt-v1710 CellsToAddModListExt-v1710 OPTIONAL -- Need N
+ ]],
+ [[
+ associatedMeasGapSSB2-v1720 MeasGapId-r17 OPTIONAL, -- Cond AssociatedGapSSB
+ associatedMeasGapCSIRS2-v1720 MeasGapId-r17 OPTIONAL -- Cond AssociatedGapCSIRS
+ ]]
}
SSB-MTC3List-r16::= SEQUENCE (SIZE(1..4)) OF SSB-MTC3-r16
+SSB-MTC4List-r17::= SEQUENCE (SIZE(1..3)) OF SSB-MTC4-r17
+
T312-r16 ::= ENUMERATED { ms0, ms50, ms100, ms200, ms300, ms400, ms500, ms1000}
ReferenceSignalConfig::= SEQUENCE {
@@ -4421,14 +6181,23 @@ ReferenceSignalConfig::= SEQUENCE {
}
SSB-ConfigMobility::= SEQUENCE {
- ssb-ToMeasure CHOICE {release NULL, setup SSB-ToMeasure } OPTIONAL, -- Need M
+ ssb-ToMeasure CHOICE {release NULL, setup SSB-ToMeasure } OPTIONAL, -- Need M
deriveSSB-IndexFromCell BOOLEAN,
- ss-RSSI-Measurement SS-RSSI-Measurement OPTIONAL, -- Need M
+ ss-RSSI-Measurement SS-RSSI-Measurement OPTIONAL, -- Need M
...,
[[
ssb-PositionQCL-Common-r16 SSB-PositionQCL-Relation-r16 OPTIONAL, -- Cond SharedSpectrum
ssb-PositionQCL-CellsToAddModList-r16 SSB-PositionQCL-CellsToAddModList-r16 OPTIONAL, -- Need N
ssb-PositionQCL-CellsToRemoveList-r16 PCI-List OPTIONAL -- Need N
+ ]],
+ [[
+ deriveSSB-IndexFromCellInter-r17 ServCellIndex OPTIONAL, -- Need R
+ ssb-PositionQCL-Common-r17 SSB-PositionQCL-Relation-r17 OPTIONAL, -- Cond SharedSpectrum2
+ ssb-PositionQCL-Cells-r17 CHOICE {release NULL, setup SSB-PositionQCL-CellList-r17} OPTIONAL -- Need M
+ ]],
+ [[
+ cca-CellsToAddModList-r17 PCI-List OPTIONAL, -- Need N
+ cca-CellsToRemoveList-r17 PCI-List OPTIONAL -- Need N
]]
}
@@ -4450,18 +6219,37 @@ ThresholdNR ::= SEQUENCE{
CellsToAddModList ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF CellsToAddMod
+CellsToAddModListExt-v1710 ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF CellsToAddModExt-v1710
+
CellsToAddMod ::= SEQUENCE {
physCellId PhysCellId,
cellIndividualOffset Q-OffsetRangeList
}
+CellsToAddModExt-v1710 ::= SEQUENCE {
+ ntn-PolarizationDL-r17 ENUMERATED {rhcp,lhcp,linear} OPTIONAL, -- Need R
+ ntn-PolarizationUL-r17 ENUMERATED {rhcp,lhcp,linear} OPTIONAL -- Need R
+}
+
RMTC-Config-r16 ::= SEQUENCE {
rmtc-Periodicity-r16 ENUMERATED {ms40, ms80, ms160, ms320, ms640},
rmtc-SubframeOffset-r16 INTEGER(0..639) OPTIONAL, -- Need M
measDurationSymbols-r16 ENUMERATED {sym1, sym14or12, sym28or24, sym42or36, sym70or60},
rmtc-Frequency-r16 ARFCN-ValueNR,
ref-SCS-CP-r16 ENUMERATED {kHz15, kHz30, kHz60-NCP, kHz60-ECP},
- ...
+ ...,
+ [[
+ rmtc-Bandwidth-r17 ENUMERATED {mhz100, mhz400, mhz800, mhz1600, mhz2000} OPTIONAL, -- Need R
+ measDurationSymbols-v1700 ENUMERATED {sym140, sym560, sym1120} OPTIONAL, -- Need R
+ ref-SCS-CP-v1700 ENUMERATED {kHz120, kHz480, kHz960} OPTIONAL, -- Need R
+ tci-StateInfo-r17 SEQUENCE {
+ tci-StateId-r17 TCI-StateId,
+ ref-ServCellId-r17 ServCellIndex OPTIONAL -- Need R
+ } OPTIONAL -- Need R
+ ]],
+ [[
+ ref-BWPId-r17 BWP-Id OPTIONAL -- Need R
+ ]]
}
SSB-PositionQCL-CellsToAddModList-r16 ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF SSB-PositionQCL-CellsToAddMod-r16
@@ -4471,6 +6259,13 @@ SSB-PositionQCL-CellsToAddMod-r16 ::= SEQUENCE {
ssb-PositionQCL-r16 SSB-PositionQCL-Relation-r16
}
+SSB-PositionQCL-CellList-r17 ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF SSB-PositionQCL-Cell-r17
+
+SSB-PositionQCL-Cell-r17 ::= SEQUENCE {
+ physCellId-r17 PhysCellId,
+ ssb-PositionQCL-r17 SSB-PositionQCL-Relation-r17
+}
+
-- TAG-MEASOBJECTNR-STOP
-- TAG-MEASOBJECTNR-SL-START
@@ -4482,6 +6277,19 @@ MeasObjectNR-SL-r16 ::= SEQUENCE {
Tx-PoolMeasList-r16 ::= SEQUENCE (SIZE (1..maxNrofSL-PoolToMeasureNR-r16)) OF SL-ResourcePoolID-r16
-- TAG-MEASOBJECTNR-SL-STOP
+-- TAG-MEASOBJECTRXTXDIFF-START
+
+
+MeasObjectRxTxDiff-r17 ::= SEQUENCE {
+ dl-Ref-r17 CHOICE {
+ prs-Ref-r17 NULL,
+ csi-RS-Ref-r17 NULL,
+ ...
+ } OPTIONAL, -- Need R
+ ...
+}
+
+-- TAG-MEASOBJECTRXTXDIFF-STOP
-- TAG-MEASOBJECTTOADDMODLIST-START
MeasObjectToAddModList ::= SEQUENCE (SIZE (1..maxNrofObjectId)) OF MeasObjectToAddMod
@@ -4494,7 +6302,9 @@ MeasObjectToAddMod ::= SEQUENCE {
measObjectEUTRA MeasObjectEUTRA,
measObjectUTRA-FDD-r16 MeasObjectUTRA-FDD-r16,
measObjectNR-SL-r16 MeasObjectNR-SL-r16,
- measObjectCLI-r16 MeasObjectCLI-r16
+ measObjectCLI-r16 MeasObjectCLI-r16,
+ measObjectRxTxDiff-r17 MeasObjectRxTxDiff-r17,
+ measObjectRelay-r17 SL-MeasObject-r16
}
}
@@ -4554,7 +6364,8 @@ MeasResults ::= SEQUENCE {
measResultListNR MeasResultListNR,
...,
measResultListEUTRA MeasResultListEUTRA,
- measResultListUTRA-FDD-r16 MeasResultListUTRA-FDD-r16
+ measResultListUTRA-FDD-r16 MeasResultListUTRA-FDD-r16,
+ sl-MeasResultsCandRelay-r17 OCTET STRING -- Contains PC5 SL-MeasResultListRelay-r17
} OPTIONAL,
...,
[[
@@ -4572,9 +6383,14 @@ MeasResults ::= SEQUENCE {
ul-PDCP-DelayValueResultList-r16 UL-PDCP-DelayValueResultList-r16 OPTIONAL,
measResultsSL-r16 MeasResultsSL-r16 OPTIONAL,
measResultCLI-r16 MeasResultCLI-r16 OPTIONAL
+ ]],
+ [[
+ measResultRxTxTimeDiff-r17 MeasResultRxTxTimeDiff-r17 OPTIONAL,
+ sl-MeasResultServingRelay-r17 OCTET STRING OPTIONAL,
+ -- Contains PC5 SL-MeasResultRelay-r17
+ ul-PDCP-ExcessDelayResultList-r17 UL-PDCP-ExcessDelayResultList-r17 OPTIONAL,
+ coarseLocationInfo-r17 OCTET STRING OPTIONAL
]]
-
-
}
MeasResultServMOList ::= SEQUENCE (SIZE (1..maxNrofServingCells)) OF MeasResultServMO
@@ -4602,7 +6418,15 @@ MeasResultNR ::= SEQUENCE {
},
...,
[[
- cgi-Info CGI-InfoNR OPTIONAL
+ cgi-Info CGI-InfoNR OPTIONAL
+ ]] ,
+ [[
+ choCandidate-r17 ENUMERATED {true} OPTIONAL,
+ choConfig-r17 SEQUENCE (SIZE (1..2)) OF CondTriggerConfig-r16 OPTIONAL,
+ triggeredEvent-r17 SEQUENCE {
+ timeBetweenEvents-r17 TimeBetweenEvent-r17 OPTIONAL,
+ firstTriggeredEvent ENUMERATED {condFirstEvent, condSecondEvent} OPTIONAL
+ } OPTIONAL
]]
}
@@ -4689,6 +6513,16 @@ UL-PDCP-DelayValueResult-r16 ::= SEQUENCE {
...
}
+UL-PDCP-ExcessDelayResultList-r17 ::= SEQUENCE (SIZE (1..maxDRB)) OF UL-PDCP-ExcessDelayResult-r17
+
+UL-PDCP-ExcessDelayResult-r17 ::= SEQUENCE {
+ drb-Id-r17 DRB-Identity,
+ excessDelay-r17 INTEGER (0..31),
+ ...
+}
+
+TimeBetweenEvent-r17 ::= INTEGER (0..1023)
+
-- TAG-MEASRESULTS-STOP
-- TAG-MEASRESULT2EUTRA-START
@@ -4773,6 +6607,14 @@ ResultsPerSSB-IndexIdle-r16 ::= SEQUENCE {
}
-- TAG-MEASRESULTIDLENR-STOP
+-- TAG-MEASRESULTRXTXTIMEDIFF-START
+
+MeasResultRxTxTimeDiff-r17 ::= SEQUENCE {
+ rxTxTimeDiff-ue-r17 RxTxTimeDiff-r17 OPTIONAL,
+ ...
+}
+
+-- TAG-MEASRESULTRXTXTIMEDIFF-STOP
-- TAG-MEASRESULTSCG-FAILURE-START
MeasResultSCG-Failure ::= SEQUENCE {
@@ -4835,12 +6677,18 @@ MobilityStateParameters ::= SEQUENCE{
}
-- TAG-MOBILITYSTATEPARAMETERS-STOP
+-- TAG-MRB-IDENTITY-START
+
+MRB-Identity-r17 ::= INTEGER (1..512)
+
+-- TAG-MRB-IDENTITY-STOP
-- TAG-MSGACONFIGCOMMON-START
MsgA-ConfigCommon-r16 ::= SEQUENCE {
rach-ConfigCommonTwoStepRA-r16 RACH-ConfigCommonTwoStepRA-r16,
msgA-PUSCH-Config-r16 MsgA-PUSCH-Config-r16 OPTIONAL --Cond InitialBWPConfig
}
+
-- TAG-MSGACONFIGCOMMON-STOP
-- TAG-MSGA-PUSCH-CONFIG-START
@@ -4900,7 +6748,58 @@ NR-MultiBandInfo ::= SEQUENCE {
nr-NS-PmaxList NR-NS-PmaxList OPTIONAL -- Need S
}
+MultiFrequencyBandListNR-SIB-v1760 ::= SEQUENCE (SIZE (1.. maxNrofMultiBands)) OF NR-MultiBandInfo-v1760
+
+NR-MultiBandInfo-v1760 ::= SEQUENCE {
+ nr-NS-PmaxList-v1760 NR-NS-PmaxList-v1760 OPTIONAL -- Need S
+}
+
-- TAG-MULTIFREQUENCYBANDLISTNR-SIB-STOP
+-- TAG-MUSIM-GAPCONFIG-START
+
+MUSIM-GapConfig-r17 ::= SEQUENCE {
+ musim-GapToReleaseList-r17 SEQUENCE (SIZE (1..3)) OF MUSIM-GapId-r17 OPTIONAL, -- Need N
+ musim-GapToAddModList-r17 SEQUENCE (SIZE (1..3)) OF MUSIM-Gap-r17 OPTIONAL, -- Need N
+ musim-AperiodicGap-r17 MUSIM-GapInfo-r17 OPTIONAL, -- Need N
+ ...
+}
+MUSIM-Gap-r17 ::= SEQUENCE {
+ musim-GapId-r17 MUSIM-GapId-r17,
+ musim-GapInfo-r17 MUSIM-GapInfo-r17
+
+}
+
+-- TAG-MUSIM-GAPCONFIG-STOP
+-- TAG-MUSIM-GAPID-START
+
+MUSIM-GapId-r17 ::= INTEGER (0..2)
+
+-- TAG-MUSIM-GAPID-STOP
+-- TAG-MUSIM-GAPINFO-START
+
+MUSIM-GapInfo-r17 ::= SEQUENCE {
+ musim-Starting-SFN-AndSubframe-r17 MUSIM-Starting-SFN-AndSubframe-r17 OPTIONAL, -- Cond aperiodic
+ musim-GapLength-r17 ENUMERATED {ms3, ms4, ms6, ms10, ms20} OPTIONAL, -- Cond gapSetup
+ musim-GapRepetitionAndOffset-r17 CHOICE {
+ ms20-r17 INTEGER (0..19),
+ ms40-r17 INTEGER (0..39),
+ ms80-r17 INTEGER (0..79),
+ ms160-r17 INTEGER (0..159),
+ ms320-r17 INTEGER (0..319),
+ ms640-r17 INTEGER (0..639),
+ ms1280-r17 INTEGER (0..1279),
+ ms2560-r17 INTEGER (0..2559),
+ ms5120-r17 INTEGER (0..5119),
+ ...
+ } OPTIONAL -- Cond periodic
+}
+
+MUSIM-Starting-SFN-AndSubframe-r17 ::= SEQUENCE {
+ starting-SFN-r17 INTEGER (0..1023),
+ startingSubframe-r17 INTEGER (0..9)
+}
+
+-- TAG-MUSIM-GAPINFO-STOP
-- TAG-NeedForGapsConfigNR-START
NeedForGapsConfigNR-r16 ::= SEQUENCE {
@@ -4911,13 +6810,13 @@ NeedForGapsConfigNR-r16 ::= SEQUENCE {
-- TAG-NeedForGapsInfoNR-START
NeedForGapsInfoNR-r16 ::= SEQUENCE {
- intraFreq-needForGap-r16 NeedForGapsIntraFreqlist-r16,
- interFreq-needForGap-r16 NeedForGapsBandlistNR-r16
+ intraFreq-needForGap-r16 NeedForGapsIntraFreqList-r16,
+ interFreq-needForGap-r16 NeedForGapsBandListNR-r16
}
-NeedForGapsIntraFreqlist-r16 ::= SEQUENCE (SIZE (1.. maxNrofServingCells)) OF NeedForGapsIntraFreq-r16
+NeedForGapsIntraFreqList-r16 ::= SEQUENCE (SIZE (1.. maxNrofServingCells)) OF NeedForGapsIntraFreq-r16
-NeedForGapsBandlistNR-r16 ::= SEQUENCE (SIZE (1..maxBands)) OF NeedForGapsNR-r16
+NeedForGapsBandListNR-r16 ::= SEQUENCE (SIZE (1..maxBands)) OF NeedForGapsNR-r16
NeedForGapsIntraFreq-r16 ::= SEQUENCE {
servCellId-r16 ServCellIndex,
@@ -4930,6 +6829,54 @@ NeedForGapsNR-r16 ::= SEQUENCE {
}
-- TAG-NeedForGapsInfoNR-STOP
+-- TAG-NeedForGapNCSG-ConfigEUTRA-START
+
+NeedForGapNCSG-ConfigEUTRA-r17 ::= SEQUENCE {
+ requestedTargetBandFilterNCSG-EUTRA-r17 SEQUENCE (SIZE (1..maxBandsEUTRA)) OF FreqBandIndicatorEUTRA OPTIONAL -- Need R
+}
+
+-- TAG-NeedForGapNCSG-ConfigEUTRA-STOP
+-- TAG-NEEDFORGAPNCSG-CONFIGNR-START
+
+NeedForGapNCSG-ConfigNR-r17 ::= SEQUENCE {
+ requestedTargetBandFilterNCSG-NR-r17 SEQUENCE (SIZE (1..maxBands)) OF FreqBandIndicatorNR OPTIONAL -- Need R
+}
+
+-- TAG-NEEDFORGAPNCSG-CONFIGNR-STOP
+-- TAG-NEEDFORGAPNCSG-INFOEUTRA-START
+
+NeedForGapNCSG-InfoEUTRA-r17 ::= SEQUENCE {
+ needForNCSG-EUTRA-r17 SEQUENCE (SIZE (1..maxBandsEUTRA)) OF NeedForNCSG-EUTRA-r17
+}
+
+NeedForNCSG-EUTRA-r17 ::= SEQUENCE {
+ bandEUTRA-r17 FreqBandIndicatorEUTRA,
+ gapIndication-r17 ENUMERATED {gap, ncsg, nogap-noncsg}
+}
+
+-- TAG-NEEDFORGAPNCSG-INFOEUTRA-STOP
+-- TAG-NEEDFORGAPNCSG-INFONR-START
+
+NeedForGapNCSG-InfoNR-r17 ::= SEQUENCE {
+ intraFreq-needForNCSG-r17 NeedForNCSG-IntraFreqList-r17,
+ interFreq-needForNCSG-r17 NeedForNCSG-BandListNR-r17
+}
+
+NeedForNCSG-IntraFreqList-r17 ::= SEQUENCE (SIZE (1.. maxNrofServingCells)) OF NeedForNCSG-IntraFreq-r17
+
+NeedForNCSG-BandListNR-r17 ::= SEQUENCE (SIZE (1..maxBands)) OF NeedForNCSG-NR-r17
+
+NeedForNCSG-IntraFreq-r17 ::= SEQUENCE {
+ servCellId-r17 ServCellIndex,
+ gapIndicationIntra-r17 ENUMERATED {gap, ncsg, nogap-noncsg}
+}
+
+NeedForNCSG-NR-r17 ::= SEQUENCE {
+ bandNR-r17 FreqBandIndicatorNR,
+ gapIndication-r17 ENUMERATED {gap, ncsg, nogap-noncsg}
+}
+
+-- TAG-NEEDFORGAPNCSG-INFONR-STOP
-- TAG-NEXTHOPCHAININGCOUNT-START
NextHopChainingCount ::= INTEGER (0..7)
@@ -4940,6 +6887,16 @@ NextHopChainingCount ::= INTEGER (0..7)
NG-5G-S-TMSI ::= BIT STRING (SIZE (48))
-- TAG-NG-5G-S-TMSI-STOP
+-- TAG-NONCELLDEFININGSSB-START
+
+NonCellDefiningSSB-r17 ::= SEQUENCE {
+ absoluteFrequencySSB-r17 ARFCN-ValueNR,
+ ssb-Periodicity-r17 ENUMERATED { ms5, ms10, ms20, ms40, ms80, ms160, spare2, spare1 } OPTIONAL, -- Need S
+ ssb-TimeOffset-r17 ENUMERATED { ms5, ms10, ms15, ms20, ms40, ms80, spare2, spare1 } OPTIONAL, -- Need S
+ ...
+}
+
+-- TAG-NONCELLDEFININGSSB-STOP
-- TAG-NPN-IDENTITY-START
NPN-Identity-r16 ::= CHOICE {
@@ -4973,10 +6930,151 @@ NPN-IdentityInfo-r16 ::= SEQUENCE {
cellIdentity-r16 CellIdentity,
cellReservedForOperatorUse-r16 ENUMERATED {reserved, notReserved},
iab-Support-r16 ENUMERATED {true} OPTIONAL, -- Need S
- ...
+ ...,
+ [[
+ gNB-ID-Length-r17 INTEGER (22..32) OPTIONAL -- Need R
+ ]]
}
-- TAG-NPN-IDENTITYINFOLIST-STOP
+-- TAG-NR-DL-PRS-PDC-INFO-START
+
+NR-DL-PRS-PDC-Info-r17 ::= SEQUENCE {
+ nr-DL-PRS-PDC-ResourceSet-r17 NR-DL-PRS-PDC-ResourceSet-r17 OPTIONAL, -- Need R
+ ...
+}
+
+NR-DL-PRS-PDC-ResourceSet-r17 ::= SEQUENCE {
+ periodicityAndOffset-r17 NR-DL-PRS-Periodicity-and-ResourceSetSlotOffset-r17,
+ numSymbols-r17 ENUMERATED {n2, n4, n6, n12, spare4, spare3, spare2, spare1},
+ dl-PRS-ResourceBandwidth-r17 INTEGER (1..63),
+ dl-PRS-StartPRB-r17 INTEGER (0..2176),
+ resourceList-r17 SEQUENCE (SIZE (1..maxNrofPRS-ResourcesPerSet-r17)) OF NR-DL-PRS-Resource-r17,
+ repFactorAndTimeGap-r17 RepFactorAndTimeGap-r17 OPTIONAL, -- Need S
+ ...
+}
+
+NR-DL-PRS-Periodicity-and-ResourceSetSlotOffset-r17 ::= CHOICE {
+ scs15-r17 CHOICE {
+ n4-r17 INTEGER (0..3),
+ n5-r17 INTEGER (0..4),
+ n8-r17 INTEGER (0..7),
+ n10-r17 INTEGER (0..9),
+ n16-r17 INTEGER (0..15),
+ n20-r17 INTEGER (0..19),
+ n32-r17 INTEGER (0..31),
+ n40-r17 INTEGER (0..39),
+ n64-r17 INTEGER (0..63),
+ n80-r17 INTEGER (0..79),
+ n160-r17 INTEGER (0..159),
+ n320-r17 INTEGER (0..319),
+ n640-r17 INTEGER (0..639),
+ n1280-r17 INTEGER (0..1279),
+ n2560-r17 INTEGER (0..2559),
+ n5120-r17 INTEGER (0..5119),
+ n10240-r17 INTEGER (0..10239),
+ ...
+ },
+ scs30-r17 CHOICE {
+ n8-r17 INTEGER (0..7),
+ n10-r17 INTEGER (0..9),
+ n16-r17 INTEGER (0..15),
+ n20-r17 INTEGER (0..19),
+ n32-r17 INTEGER (0..31),
+ n40-r17 INTEGER (0..39),
+ n64-r17 INTEGER (0..63),
+ n80-r17 INTEGER (0..79),
+ n128-r17 INTEGER (0..127),
+ n160-r17 INTEGER (0..159),
+ n320-r17 INTEGER (0..319),
+ n640-r17 INTEGER (0..639),
+ n1280-r17 INTEGER (0..1279),
+ n2560-r17 INTEGER (0..2559),
+ n5120-r17 INTEGER (0..5119),
+ n10240-r17 INTEGER (0..10239),
+ n20480-r17 INTEGER (0..20479),
+ ...
+ },
+ scs60-r17 CHOICE {
+ n16-r17 INTEGER (0..15),
+ n20-r17 INTEGER (0..19),
+ n32-r17 INTEGER (0..31),
+ n40-r17 INTEGER (0..39),
+ n64-r17 INTEGER (0..63),
+ n80-r17 INTEGER (0..79),
+ n128-r17 INTEGER (0..127),
+ n160-r17 INTEGER (0..159),
+ n256-r17 INTEGER (0..255),
+ n320-r17 INTEGER (0..319),
+ n640-r17 INTEGER (0..639),
+ n1280-r17 INTEGER (0..1279),
+ n2560-r17 INTEGER (0..2559),
+ n5120-r17 INTEGER (0..5119),
+ n10240-r17 INTEGER (0..10239),
+ n20480-r17 INTEGER (0..20479),
+ n40960-r17 INTEGER (0..40959),
+ ...
+ },
+ scs120-r17 CHOICE {
+ n32-r17 INTEGER (0..31),
+ n40-r17 INTEGER (0..39),
+ n64-r17 INTEGER (0..63),
+ n80-r17 INTEGER (0..79),
+ n128-r17 INTEGER (0..127),
+ n160-r17 INTEGER (0..159),
+ n256-r17 INTEGER (0..255),
+ n320-r17 INTEGER (0..319),
+ n512-r17 INTEGER (0..511),
+ n640-r17 INTEGER (0..639),
+ n1280-r17 INTEGER (0..1279),
+ n2560-r17 INTEGER (0..2559),
+ n5120-r17 INTEGER (0..5119),
+ n10240-r17 INTEGER (0..10239),
+ n20480-r17 INTEGER (0..20479),
+ n40960-r17 INTEGER (0..40959),
+ n81920-r17 INTEGER (0..81919),
+ ...
+ },
+ ...
+}
+
+NR-DL-PRS-Resource-r17 ::= SEQUENCE {
+ nr-DL-PRS-ResourceID-r17 NR-DL-PRS-ResourceID-r17,
+ dl-PRS-SequenceID-r17 INTEGER (0..4095),
+ dl-PRS-CombSizeN-AndReOffset-r17 CHOICE {
+ n2-r17 INTEGER (0..1),
+ n4-r17 INTEGER (0..3),
+ n6-r17 INTEGER (0..5),
+ n12-r17 INTEGER (0..11),
+ ...
+ },
+ dl-PRS-ResourceSlotOffset-r17 INTEGER (0..maxNrofPRS-ResourceOffsetValue-1-r17),
+ dl-PRS-ResourceSymbolOffset-r17 INTEGER (0..12),
+ dl-PRS-QCL-Info-r17 DL-PRS-QCL-Info-r17 OPTIONAL, -- Need N
+ ...
+}
+
+DL-PRS-QCL-Info-r17 ::= CHOICE {
+ ssb-r17 SEQUENCE {
+ ssb-Index-r17 INTEGER (0..63),
+ rs-Type-r17 ENUMERATED {typeC, typeD, typeC-plus-typeD},
+ ...
+ },
+ dl-PRS-r17 SEQUENCE {
+ qcl-DL-PRS-ResourceID-r17 NR-DL-PRS-ResourceID-r17,
+ ...
+ },
+ ...
+}
+
+NR-DL-PRS-ResourceID-r17 ::= INTEGER (0..maxNrofPRS-ResourcesPerSet-1-r17)
+
+RepFactorAndTimeGap-r17 ::= SEQUENCE {
+ repetitionFactor-r17 ENUMERATED {n2, n4, n6, n8, n16, n32, spare2, spare1},
+ timeGap-r17 ENUMERATED {s1, s2, s4, s8, s16, s32, spare2, spare1}
+}
+
+-- TAG-NR-DL-PRS-PDC-INFO-STOP
-- TAG-NR-NS-PMAXLIST-START
NR-NS-PmaxList ::= SEQUENCE (SIZE (1..maxNR-NS-Pmax)) OF NR-NS-PmaxValue
@@ -4986,7 +7084,54 @@ NR-NS-PmaxValue ::= SEQUENCE {
additionalSpectrumEmission AdditionalSpectrumEmission
}
+NR-NS-PmaxList-v1760 ::= SEQUENCE (SIZE (1.. maxNR-NS-Pmax)) OF NR-NS-PmaxValue-v1760
+
+NR-NS-PmaxValue-v1760 ::= SEQUENCE {
+ additionalSpectrumEmission-v1760 AdditionalSpectrumEmission-v1760 OPTIONAL -- Need N
+}
+
-- TAG-NR-NS-PMAXLIST-STOP
+-- TAG-NSAG-ID-START
+
+NSAG-ID-r17 ::= BIT STRING (SIZE (8))
+
+-- TAG-NSAG-ID-STOP
+-- TAG-NSAG-IDENTITYINFO-START
+
+NSAG-IdentityInfo-r17 ::= SEQUENCE {
+ nsag-ID-r17 NSAG-ID-r17,
+ trackingAreaCode-r17 TrackingAreaCode OPTIONAL -- Need R
+}
+
+-- TAG-NSAG-IDENTITYINFO-STOP
+-- TAG-NTN-CONFIG-START
+
+NTN-Config-r17 ::= SEQUENCE {
+ epochTime-r17 EpochTime-r17 OPTIONAL, -- Need R
+ ntn-UlSyncValidityDuration-r17 ENUMERATED{ s5, s10, s15, s20, s25, s30, s35,
+ s40, s45, s50, s55, s60, s120, s180, s240, s900} OPTIONAL, -- Cond SIB19
+ cellSpecificKoffset-r17 INTEGER(1..1023) OPTIONAL, -- Need R
+ kmac-r17 INTEGER(1..512) OPTIONAL, -- Need R
+ ta-Info-r17 TA-Info-r17 OPTIONAL, -- Need R
+ ntn-PolarizationDL-r17 ENUMERATED {rhcp,lhcp,linear} OPTIONAL, -- Need R
+ ntn-PolarizationUL-r17 ENUMERATED {rhcp,lhcp,linear} OPTIONAL, -- Need R
+ ephemerisInfo-r17 EphemerisInfo-r17 OPTIONAL, -- Need R
+ ta-Report-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ ...
+}
+
+EpochTime-r17 ::= SEQUENCE {
+ sfn-r17 INTEGER(0..1023),
+ subFrameNR-r17 INTEGER(0..9)
+}
+
+TA-Info-r17 ::= SEQUENCE {
+ ta-Common-r17 INTEGER(0..66485757),
+ ta-CommonDrift-r17 INTEGER(-257303..257303) OPTIONAL, -- Need R
+ ta-CommonDriftVariant-r17 INTEGER(0..28949) OPTIONAL -- Need R
+}
+
+-- TAG-NTN-CONFIG-STOP
-- TAG-NZP-CSI-RS-RESOURCE-START
NZP-CSI-RS-Resource ::= SEQUENCE {
@@ -5007,6 +7152,7 @@ NZP-CSI-RS-ResourceId ::= INTEGER (0..maxNrofNZP-CSI-RS-Resources-1)
-- TAG-NZP-CSI-RS-RESOURCEID-STOP
-- TAG-NZP-CSI-RS-RESOURCESET-START
+
NZP-CSI-RS-ResourceSet ::= SEQUENCE {
nzp-CSI-ResourceSetId NZP-CSI-RS-ResourceSetId,
nzp-CSI-RS-Resources SEQUENCE (SIZE (1..maxNrofNZP-CSI-RS-ResourcesPerSet)) OF NZP-CSI-RS-ResourceId,
@@ -5016,9 +7162,26 @@ NZP-CSI-RS-ResourceSet ::= SEQUENCE {
...,
[[
aperiodicTriggeringOffset-r16 INTEGER(0..31) OPTIONAL -- Need S
+ ]],
+ [[
+ pdc-Info-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ cmrGroupingAndPairing-r17 CMRGroupingAndPairing-r17 OPTIONAL, -- Need R
+ aperiodicTriggeringOffset-r17 INTEGER (0..124) OPTIONAL, -- Need S
+ aperiodicTriggeringOffsetL2-r17 INTEGER(0..31) OPTIONAL -- Need R
]]
}
+CMRGroupingAndPairing-r17 ::= SEQUENCE {
+ nrofResourcesGroup1-r17 INTEGER (1..7),
+ pair1OfNZP-CSI-RS-r17 NZP-CSI-RS-Pairing-r17 OPTIONAL, -- Need R
+ pair2OfNZP-CSI-RS-r17 NZP-CSI-RS-Pairing-r17 OPTIONAL -- Need R
+}
+
+NZP-CSI-RS-Pairing-r17 ::= SEQUENCE {
+ nzp-CSI-RS-ResourceId1-r17 INTEGER (1..7),
+ nzp-CSI-RS-ResourceId2-r17 INTEGER (1..7)
+}
+
-- TAG-NZP-CSI-RS-RESOURCESET-STOP
-- TAG-NZP-CSI-RS-RESOURCESETID-START
@@ -5030,6 +7193,40 @@ NZP-CSI-RS-ResourceSetId ::= INTEGER (0..maxNrofNZP-CSI-RS-ResourceSets-1
P-Max ::= INTEGER (-30..33)
-- TAG-P-MAX-STOP
+-- TAG-PATHLOSSREFERENCERS-START
+
+PathlossReferenceRS-r17 ::= SEQUENCE {
+ pathlossReferenceRS-Id-r17 PathlossReferenceRS-Id-r17,
+ referenceSignal-r17 CHOICE {
+ ssb-Index SSB-Index,
+ csi-RS-Index NZP-CSI-RS-ResourceId
+ },
+ additionalPCI-r17 AdditionalPCIIndex-r17 OPTIONAL -- Cond RS-SSB
+}
+
+
+-- TAG-PATHLOSSREFERENCERS-STOP
+-- TAG-PATHLOSSREFERENCERS-ID-START
+
+PathlossReferenceRS-Id-r17 ::= INTEGER (0..maxNrofPathlossReferenceRSs-1-r17)
+
+-- TAG-PATHLOSSREFERENCERS-ID-STOP
+-- TAG-PCIARFCNEUTRA-START
+
+PCI-ARFCN-EUTRA-r16 ::= SEQUENCE {
+ physCellId-r16 EUTRA-PhysCellId,
+ carrierFreq-r16 ARFCN-ValueEUTRA
+}
+
+-- TAG-PCIARFCNEUTRA-STOP
+-- TAG-PCIARFCNNR-START
+
+PCI-ARFCN-NR-r16 ::= SEQUENCE {
+ physCellId-r16 PhysCellId,
+ carrierFreq-r16 ARFCN-ValueNR
+}
+
+-- TAG-PCIARFCNNR-STOP
-- TAG-PCI-LIST-START
PCI-List ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF PhysCellId
@@ -5081,6 +7278,12 @@ PDCCH-Config ::= SEQUENCE {
uplinkCancellation-r16 CHOICE {release NULL, setup UplinkCancellation-r16 } OPTIONAL, -- Need M
monitoringCapabilityConfig-r16 ENUMERATED { r15monitoringcapability,r16monitoringcapability } OPTIONAL, -- Need M
searchSpaceSwitchConfig-r16 SearchSpaceSwitchConfig-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ searchSpacesToAddModListExt-v1700 SEQUENCE(SIZE (1..10)) OF SearchSpaceExt-v1700 OPTIONAL, -- Need N
+ monitoringCapabilityConfig-v1710 ENUMERATED { r17monitoringcapability } OPTIONAL, -- Need M
+ searchSpaceSwitchConfig-r17 SearchSpaceSwitchConfig-r17 OPTIONAL, -- Need R
+ pdcch-SkippingDurationList-r17 SEQUENCE(SIZE (1..3)) OF SCS-SpecificDuration-r17 OPTIONAL -- Need R
]]
}
@@ -5089,8 +7292,15 @@ SearchSpaceSwitchConfig-r16 ::= SEQUENCE {
searchSpaceSwitchDelay-r16 INTEGER (10..52) OPTIONAL -- Need R
}
+SearchSpaceSwitchConfig-r17 ::= SEQUENCE {
+ searchSpaceSwitchTimer-r17 SCS-SpecificDuration-r17 OPTIONAL, -- Need R
+ searchSpaceSwitchDelay-r17 INTEGER (10..52) OPTIONAL -- Need R
+}
+
CellGroupForSwitch-r16 ::= SEQUENCE(SIZE (1..16)) OF ServCellIndex
+SCS-SpecificDuration-r17 ::= INTEGER (1..166)
+
-- TAG-PDCCH-CONFIG-STOP
-- TAG-PDCCH-CONFIGCOMMON-START
@@ -5118,6 +7328,37 @@ PDCCH-ConfigCommon ::= SEQUENCE {
]],
[[
commonSearchSpaceListExt-r16 SEQUENCE (SIZE(1..4)) OF SearchSpaceExt-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ sdt-SearchSpace-r17 CHOICE {
+ newSearchSpace SearchSpace,
+ existingSearchSpace SearchSpaceId
+ } OPTIONAL, -- Need R
+ searchSpaceMCCH-r17 SearchSpaceId OPTIONAL, -- Need R
+ searchSpaceMTCH-r17 SearchSpaceId OPTIONAL, -- Need S
+ commonSearchSpaceListExt2-r17 SEQUENCE (SIZE(1..4)) OF SearchSpaceExt-v1700 OPTIONAL, -- Need R
+ firstPDCCH-MonitoringOccasionOfPO-v1710 CHOICE {
+ sCS480KHZoneEighthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..35839),
+ sCS480KHZoneSixteenthT SEQUENCE (SIZE (1..maxPO-perPF)) OF INTEGER (0..71679)
+ } OPTIONAL, -- Need R
+ pei-ConfigBWP-r17 SEQUENCE {
+ pei-SearchSpace-r17 SearchSpaceId,
+ firstPDCCH-MonitoringOccasionOfPEI-O-r17 CHOICE {
+ sCS15KHZoneT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..139),
+ sCS30KHZoneT-SCS15KHZhalfT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..279),
+ sCS60KHZoneT-SCS30KHZhalfT-SCS15KHZquarterT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..559),
+ sCS120KHZoneT-SCS60KHZhalfT-SCS30KHZquarterT-SCS15KHZoneEighthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..1119),
+ sCS120KHZhalfT-SCS60KHZquarterT-SCS30KHZoneEighthT-SCS15KHZoneSixteenthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..2239),
+ sCS480KHZoneT-SCS120KHZquarterT-SCS60KHZoneEighthT-SCS30KHZoneSixteenthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..4479),
+ sCS480KHZhalfT-SCS120KHZoneEighthT-SCS60KHZoneSixteenthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..8959),
+ sCS480KHZquarterT-SCS120KHZoneSixteenthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..17919),
+ sCS480KHZoneEighthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..35839),
+ sCS480KHZoneSixteenthT SEQUENCE (SIZE (1..maxPEI-perPF-r17)) OF INTEGER (0..71679)
+ }
+ } OPTIONAL -- Cond InitialBWP-Paging
+ ]],
+ [[
+ followUnifiedTCI-State-v1720 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
@@ -5138,6 +7379,9 @@ PDCCH-ServingCellConfig ::= SEQUENCE {
[[
availabilityIndicator-r16 CHOICE {release NULL, setup AvailabilityIndicator-r16} OPTIONAL, -- Need M
searchSpaceSwitchTimer-r16 INTEGER (1..80) OPTIONAL -- Need R
+ ]],
+ [[
+ searchSpaceSwitchTimer-v1710 INTEGER (81..1280) OPTIONAL -- Need R
]]
}
@@ -5148,7 +7392,7 @@ PDCP-Config ::= SEQUENCE {
drb SEQUENCE {
discardTimer ENUMERATED {ms10, ms20, ms30, ms40, ms50, ms60, ms75, ms100, ms150, ms200,
ms250, ms300, ms500, ms750, ms1500, infinity} OPTIONAL, -- Cond Setup
- pdcp-SN-SizeUL ENUMERATED {len12bits, len18bits} OPTIONAL, -- Cond Setup2
+ pdcp-SN-SizeUL ENUMERATED {len12bits, len18bits} OPTIONAL, -- Cond Setup1
pdcp-SN-SizeDL ENUMERATED {len12bits, len18bits} OPTIONAL, -- Cond Setup2
headerCompression CHOICE {
notUsed NULL,
@@ -5211,6 +7455,12 @@ PDCP-Config ::= SEQUENCE {
duplicationState-r16 SEQUENCE (SIZE (3)) OF BOOLEAN OPTIONAL -- Need S
} OPTIONAL, -- Cond MoreThanTwoRLC-DRB
ethernetHeaderCompression-r16 CHOICE {release NULL, setup EthernetHeaderCompression-r16 } OPTIONAL -- Need M
+ ]],
+ [[
+ survivalTimeStateSupport-r17 ENUMERATED {true} OPTIONAL, -- Cond Drb-Duplication
+ uplinkDataCompression-r17 CHOICE {release NULL, setup UplinkDataCompression-r17 } OPTIONAL, -- Cond Rlc-AM
+ discardTimerExt2-r17 CHOICE {release NULL, setup DiscardTimerExt2-r17 } OPTIONAL, -- Need M
+ initialRX-DELIV-r17 BIT STRING (SIZE (32)) OPTIONAL -- Cond MRB-Initialization
]]
}
@@ -5220,12 +7470,12 @@ EthernetHeaderCompression-r16 ::= SEQUENCE {
...
},
ehc-Downlink-r16 SEQUENCE {
- drb-ContinueEHC-DL-r16 ENUMERATED { true } OPTIONAL, -- Need R
+ drb-ContinueEHC-DL-r16 ENUMERATED { true } OPTIONAL, -- Need N
...
} OPTIONAL, -- Need M
ehc-Uplink-r16 SEQUENCE {
maxCID-EHC-UL-r16 INTEGER (1..32767),
- drb-ContinueEHC-UL-r16 ENUMERATED { true } OPTIONAL, -- Need R
+ drb-ContinueEHC-UL-r16 ENUMERATED { true } OPTIONAL, -- Need N
...
} OPTIONAL -- Need M
}
@@ -5237,6 +7487,16 @@ UL-DataSplitThreshold ::= ENUMERATED {
DiscardTimerExt-r16 ::= ENUMERATED {ms0dot5, ms1, ms2, ms4, ms6, ms8, spare2, spare1}
+DiscardTimerExt2-r17 ::= ENUMERATED {ms2000, spare3, spare2, spare1}
+
+UplinkDataCompression-r17 ::= CHOICE {
+ newSetup SEQUENCE {
+ bufferSize-r17 ENUMERATED {kbyte2, kbyte4, kbyte8, spare1},
+ dictionary-r17 ENUMERATED {sip-SDP, operator} OPTIONAL -- Need N
+ },
+ drb-ContinueUDC NULL
+}
+
-- TAG-PDCP-CONFIG-STOP
-- TAG-PDSCH-CONFIG-START
@@ -5328,6 +7588,37 @@ PDSCH-Config ::= SEQUENCE {
]],
[[
repetitionSchemeConfig-v1630 CHOICE {release NULL, setup RepetitionSchemeConfig-v1630} OPTIONAL -- Need M
+ ]],
+ [[
+ pdsch-HARQ-ACK-OneShotFeedbackDCI-1-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pdsch-HARQ-ACK-EnhType3DCI-1-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pdsch-HARQ-ACK-EnhType3DCI-Field-1-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pdsch-HARQ-ACK-RetxDCI-1-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pucch-sSCellDynDCI-1-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ dl-OrJointTCI-StateList-r17 CHOICE {
+ explicitlist SEQUENCE {
+ dl-OrJointTCI-StateToAddModList-r17 SEQUENCE (SIZE (1..maxNrofTCI-States)) OF TCI-State
+ OPTIONAL, -- Need N
+ dl-OrJointTCI-StateToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofTCI-States)) OF TCI-StateId
+ OPTIONAL -- Need N
+ },
+ unifiedTCI-StateRef-r17 ServingCellAndBWP-Id-r17
+ } OPTIONAL, -- Need R
+ beamAppTime-r17 ENUMERATED {n1, n2, n4, n7, n14, n28, n42, n56, n70, n84, n98, n112, n224, n336, spare2,
+ spare1} OPTIONAL, -- Need R
+ dummy CHOICE {release NULL, setup Dummy-TDRA-List } OPTIONAL, -- Need M
+ dmrs-FD-OCC-DisabledForRank1-PDSCH-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ minimumSchedulingOffsetK0-r17 CHOICE {release NULL, setup MinSchedulingOffsetK0-Values-r17 } OPTIONAL, -- Need M
+ harq-ProcessNumberSizeDCI-1-2-v1700 INTEGER (0..5) OPTIONAL, -- Need R
+ harq-ProcessNumberSizeDCI-1-1-r17 INTEGER (5) OPTIONAL, -- Need R
+ mcs-Table-r17 ENUMERATED {qam1024} OPTIONAL, -- Need R
+ mcs-TableDCI-1-2-r17 ENUMERATED {qam1024} OPTIONAL, -- Need R
+ xOverheadMulticast-r17 ENUMERATED {xOh6, xOh12, xOh18} OPTIONAL, -- Need S
+ priorityIndicatorDCI-4-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need S
+ sizeDCI-4-2-r17 INTEGER (20..maxDCI-4-2-Size-r17) OPTIONAL -- Need R
+ ]],
+ [[
+ pdsch-TimeDomainAllocationListForMultiPDSCH-r17 CHOICE {release NULL, setup MultiPDSCH-TDRA-List-r17 } OPTIONAL -- Need M
]]
}
@@ -5338,6 +7629,8 @@ RateMatchPatternGroup ::= SEQUENCE (SIZE (1..maxNrofRateMatchPatte
MinSchedulingOffsetK0-Values-r16 ::= SEQUENCE (SIZE (1..maxNrOfMinSchedulingOffsetValues-r16)) OF INTEGER (0..maxK0-SchedulingOffset-r16)
+MinSchedulingOffsetK0-Values-r17 ::= SEQUENCE (SIZE (1..maxNrOfMinSchedulingOffsetValues-r16)) OF INTEGER (0..maxK0-SchedulingOffset-r17)
+
MaxMIMO-LayersDL-r16 ::= INTEGER (1..8)
-- TAG-PDSCH-CONFIG-STOP
@@ -5363,6 +7656,10 @@ PDSCH-ServingCellConfig ::= SEQUENCE {
]],
[[
pdsch-CodeBlockGroupTransmissionList-r16 CHOICE {release NULL, setup PDSCH-CodeBlockGroupTransmissionList-r16 } OPTIONAL -- Need M
+ ]],
+ [[
+ downlinkHARQ-FeedbackDisabled-r17 CHOICE {release NULL, setup DownlinkHARQ-FeedbackDisabled-r17 } OPTIONAL, -- Need M
+ nrofHARQ-ProcessesForPDSCH-v1700 ENUMERATED {n32} OPTIONAL -- Need R
]]
}
@@ -5374,6 +7671,8 @@ PDSCH-CodeBlockGroupTransmission ::= SEQUENCE {
PDSCH-CodeBlockGroupTransmissionList-r16 ::= SEQUENCE (SIZE (1..2)) OF PDSCH-CodeBlockGroupTransmission
+DownlinkHARQ-FeedbackDisabled-r17 ::= BIT STRING (SIZE (32))
+
-- TAG-PDSCH-SERVINGCELLCONFIG-STOP
-- TAG-PDSCH-TIMEDOMAINRESOURCEALLOCATIONLIST-START
@@ -5392,7 +7691,22 @@ PDSCH-TimeDomainResourceAllocation-r16 ::= SEQUENCE {
k0-r16 INTEGER(0..32) OPTIONAL, -- Need S
mappingType-r16 ENUMERATED {typeA, typeB},
startSymbolAndLength-r16 INTEGER (0..127),
- repetitionNumber-r16 ENUMERATED {n2, n3, n4, n5, n6, n7, n8, n16} OPTIONAL, -- Cond Formats1-0and1-1
+ repetitionNumber-r16 ENUMERATED {n2, n3, n4, n5, n6, n7, n8, n16} OPTIONAL, -- Cond Formats1-0_1-1_4-0_4-1_4-2
+ ...,
+ [[
+ k0-v1710 INTEGER(33..128) OPTIONAL -- Need S
+ ]],
+ [[
+ repetitionNumber-v1730 ENUMERATED {n2, n3, n4, n5, n6, n7, n8, n16} OPTIONAL -- Cond Format1-2
+ ]]
+}
+
+Dummy-TDRA-List ::= SEQUENCE (SIZE(1.. maxNrofDL-Allocations)) OF MultiPDSCH-TDRA-r17
+
+MultiPDSCH-TDRA-List-r17 ::= SEQUENCE (SIZE(1.. maxNrofDL-AllocationsExt-r17)) OF MultiPDSCH-TDRA-r17
+
+MultiPDSCH-TDRA-r17 ::= SEQUENCE {
+ pdsch-TDRA-List-r17 SEQUENCE (SIZE(1..maxNrofMultiplePDSCHs-r17)) OF PDSCH-TimeDomainResourceAllocation-r16,
...
}
@@ -5410,6 +7724,10 @@ PHR-Config ::= SEQUENCE {
...,
[[
mpe-Reporting-FR2-r16 CHOICE {release NULL, setup MPE-Config-FR2-r16 } OPTIONAL -- Need M
+ ]],
+ [[
+ mpe-Reporting-FR2-r17 CHOICE {release NULL, setup MPE-Config-FR2-r17 } OPTIONAL, -- Need M
+ twoPHRMode-r17 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
@@ -5418,6 +7736,13 @@ MPE-Config-FR2-r16 ::= SEQUENCE {
mpe-Threshold-r16 ENUMERATED {dB3, dB6, dB9, dB12}
}
+MPE-Config-FR2-r17 ::= SEQUENCE {
+ mpe-ProhibitTimer-r17 ENUMERATED {sf0, sf10, sf20, sf50, sf100, sf200, sf500, sf1000},
+ mpe-Threshold-r17 ENUMERATED {dB3, dB6, dB9, dB12},
+ numberOfN-r17 INTEGER(1..4),
+ ...
+}
+
-- TAG-PHR-CONFIG-STOP
-- TAG-PHYSCELLID-START
@@ -5470,9 +7795,78 @@ PhysicalCellGroupConfig ::= SEQUENCE {
pdcch-BlindDetection2-r16 CHOICE {release NULL, setup PDCCH-BlindDetection2-r16 } OPTIONAL, -- Need M
pdcch-BlindDetection3-r16 CHOICE {release NULL, setup PDCCH-BlindDetection3-r16 } OPTIONAL, -- Need M
bdFactorR-r16 ENUMERATED {n1} OPTIONAL -- Need R
+ ]],
+ [[
+ -- start of enhanced Type3 feedback
+ pdsch-HARQ-ACK-EnhType3ToAddModList-r17 SEQUENCE (SIZE(1..maxNrofEnhType3HARQ-ACK-r17)) OF PDSCH-HARQ-ACK-EnhType3-r17
+ OPTIONAL, -- Need N
+ pdsch-HARQ-ACK-EnhType3ToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofEnhType3HARQ-ACK-r17)) OF PDSCH-HARQ-ACK-EnhType3Index-r17
+ OPTIONAL, -- Need N
+ pdsch-HARQ-ACK-EnhType3SecondaryToAddModList-r17 SEQUENCE (SIZE(1..maxNrofEnhType3HARQ-ACK-r17)) OF PDSCH-HARQ-ACK-EnhType3-r17
+ OPTIONAL, -- Need N
+ pdsch-HARQ-ACK-EnhType3SecondaryToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofEnhType3HARQ-ACK-r17)) OF PDSCH-HARQ-ACK-EnhType3Index-r17
+ OPTIONAL, -- Need N
+ pdsch-HARQ-ACK-EnhType3DCI-FieldSecondaryPUCCHgroup-r17 ENUMERATED {enabled} OPTIONAL, -- Cond twoPUCCHgroup
+ pdsch-HARQ-ACK-EnhType3DCI-Field-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ -- end of enhanced Type3 feedback
+
+ -- start of triggering of HARQ-ACK re-transmission on a PUCCH resource
+ pdsch-HARQ-ACK-Retx-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pdsch-HARQ-ACK-RetxSecondaryPUCCHgroup-r17 ENUMERATED {enabled} OPTIONAL, -- Cond twoPUCCHgroup
+ -- end of triggering of HARQ-ACK re-transmission on a PUCCH resource
+
+ -- start of PUCCH Cell switching
+ pucch-sSCell-r17 SCellIndex OPTIONAL, -- Need R
+ pucch-sSCellSecondaryPUCCHgroup-r17 SCellIndex OPTIONAL, -- Cond twoPUCCHgroup
+ pucch-sSCellDyn-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ pucch-sSCellDynSecondaryPUCCHgroup-r17 ENUMERATED {enabled} OPTIONAL, -- Cond twoPUCCHgroup
+ pucch-sSCellPattern-r17 SEQUENCE (SIZE(1..maxNrofSlots)) OF INTEGER (0..1) OPTIONAL, -- Need R
+ pucch-sSCellPatternSecondaryPUCCHgroup-r17 SEQUENCE (SIZE(1..maxNrofSlots)) OF INTEGER (0..1) OPTIONAL, -- Cond twoPUCCHgroup
+ -- end of PUCCH Cell switching
+
+ uci-MuxWithDiffPrio-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ uci-MuxWithDiffPrioSecondaryPUCCHgroup-r17 ENUMERATED {enabled} OPTIONAL, -- Cond twoPUCCHgroup
+ simultaneousPUCCH-PUSCH-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ simultaneousPUCCH-PUSCH-SecondaryPUCCHgroup-r17 ENUMERATED {enabled} OPTIONAL, -- Cond twoPUCCHgroup
+
+ prioLowDG-HighCG-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ prioHighDG-LowCG-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ twoQCLTypeDforPDCCHRepetition-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ multicastConfig-r17 CHOICE {release NULL, setup MulticastConfig-r17 } OPTIONAL, -- Need M
+ pdcch-BlindDetectionCA-CombIndicator-r17 CHOICE {release NULL, setup PDCCH-BlindDetectionCA-CombIndicator-r17 } OPTIONAL -- Need M
+ ]],
+ [[
+ simultaneousSR-PUSCH-diffPUCCH-Groups-r17 ENUMERATED {enabled} OPTIONAL -- Cond twoPUCCHgroup
+ ]],
+ [[
+ intraBandNC-PRACH-simulTx-r17 ENUMERATED {enabled} OPTIONAL -- Need R
+ ]],
+ [[
+ pdcch-BlindDetection4-r17 CHOICE {release NULL, setup PDCCH-BlindDetection4-r17 } OPTIONAL -- Need M
+ ]],
+ [[
+ simultaneousPUCCH-PUSCH-SamePriority-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ simultaneousPUCCH-PUSCH-SamePriority-SecondaryPUCCHgroup-r17 ENUMERATED {enabled} OPTIONAL -- Cond twoPUCCHgroup
]]
}
+
+PDSCH-HARQ-ACK-EnhType3-r17 ::= SEQUENCE {
+ pdsch-HARQ-ACK-EnhType3Index-r17 PDSCH-HARQ-ACK-EnhType3Index-r17,
+ applicable-r17 CHOICE {
+ perCC SEQUENCE (SIZE (1..maxNrofServingCells)) OF INTEGER (0..1),
+ perHARQ SEQUENCE (SIZE (1..maxNrofServingCells)) OF BIT STRING (SIZE (16))
+ },
+ pdsch-HARQ-ACK-EnhType3NDI-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ pdsch-HARQ-ACK-EnhType3CBG-r17 ENUMERATED {true} OPTIONAL, -- Need S
+ ...,
+ [[
+ perHARQ-Ext-r17 SEQUENCE (SIZE (1..maxNrofServingCells)) OF BIT STRING (SIZE (32)) OPTIONAL -- Need R
+ ]]
+}
+
+PDSCH-HARQ-ACK-EnhType3Index-r17 ::= INTEGER (0..maxNrofEnhType3HARQ-ACK-1-r17)
+
PDCCH-BlindDetection ::= INTEGER (1..15)
DCP-Config-r16 ::= SEQUENCE {
@@ -5496,6 +7890,19 @@ PDCCH-BlindDetection2-r16 ::= INTEGER (1..15)
PDCCH-BlindDetection3-r16 ::= INTEGER (1..15)
+PDCCH-BlindDetection4-r17 ::= INTEGER (1..15)
+
+MulticastConfig-r17 ::= SEQUENCE {
+ pdsch-HARQ-ACK-CodebookListMulticast-r17 CHOICE {release NULL, setup PDSCH-HARQ-ACK-CodebookList-r16} OPTIONAL, -- Need M
+ type1CodebookGenerationMode-r17 ENUMERATED { mode1, mode2} OPTIONAL -- Need M
+}
+
+PDCCH-BlindDetectionCA-CombIndicator-r17 ::= SEQUENCE {
+ pdcch-BlindDetectionCA1-r17 INTEGER (1..15) OPTIONAL, -- Need R
+ pdcch-BlindDetectionCA2-r17 INTEGER (1..15) OPTIONAL, -- Need R
+ pdcch-BlindDetectionCA3-r17 INTEGER (1..15)
+}
+
-- TAG-PHYSICALCELLGROUPCONFIG-STOP
-- TAG-PLMN-IDENTITY-START
@@ -5524,6 +7931,10 @@ PLMN-IdentityInfo ::= SEQUENCE {
...,
[[
iab-Support-r16 ENUMERATED {true} OPTIONAL -- Need S
+ ]],
+ [[
+ trackingAreaList-r17 SEQUENCE (SIZE (1..maxTAC-r17)) OF TrackingAreaCode OPTIONAL, -- Need R
+ gNB-ID-Length-r17 INTEGER (22..32) OPTIONAL -- Need R
]]
}
-- TAG-PLMN-IDENTITYINFOLIST-STOP
@@ -5594,7 +8005,7 @@ PUCCH-Config ::= SEQUENCE {
pucch-PowerControl PUCCH-PowerControl OPTIONAL, -- Need M
...,
[[
- resourceToAddModListExt-r16 SEQUENCE (SIZE (1..maxNrofPUCCH-Resources)) OF PUCCH-ResourceExt-r16 OPTIONAL, -- Need N
+ resourceToAddModListExt-v1610 SEQUENCE (SIZE (1..maxNrofPUCCH-Resources)) OF PUCCH-ResourceExt-v1610 OPTIONAL, -- Need N
dl-DataToUL-ACK-r16 CHOICE {release NULL, setup DL-DataToUL-ACK-r16 } OPTIONAL, -- Need M
ul-AccessConfigListDCI-1-1-r16 CHOICE {release NULL, setup UL-AccessConfigListDCI-1-1-r16 } OPTIONAL, -- Need M
subslotLengthForPUCCH-r16 CHOICE {
@@ -5619,6 +8030,29 @@ PUCCH-Config ::= SEQUENCE {
sps-PUCCH-AN-List-r16 CHOICE {release NULL, setup SPS-PUCCH-AN-List-r16 } OPTIONAL, -- Need M
schedulingRequestResourceToAddModListExt-v1610 SEQUENCE (SIZE (1..maxNrofSR-Resources)) OF SchedulingRequestResourceConfigExt-v1610
OPTIONAL -- Need N
+ ]],
+ [[
+ format0-r17 CHOICE {release NULL, setup PUCCH-FormatConfig } OPTIONAL, -- Need M
+ format2Ext-r17 CHOICE {release NULL, setup PUCCH-FormatConfigExt-r17 } OPTIONAL, -- Need M
+ format3Ext-r17 CHOICE {release NULL, setup PUCCH-FormatConfigExt-r17 } OPTIONAL, -- Need M
+ format4Ext-r17 CHOICE {release NULL, setup PUCCH-FormatConfigExt-r17 } OPTIONAL, -- Need M
+ ul-AccessConfigListDCI-1-2-r17 CHOICE {release NULL, setup UL-AccessConfigListDCI-1-2-r17 } OPTIONAL, -- Need M
+ mappingPattern-r17 ENUMERATED {cyclicMapping, sequentialMapping} OPTIONAL, -- Need R
+ powerControlSetInfoToAddModList-r17 SEQUENCE (SIZE (1..maxNrofPowerControlSetInfos-r17)) OF PUCCH-PowerControlSetInfo-r17
+ OPTIONAL, -- Need N
+ powerControlSetInfoToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofPowerControlSetInfos-r17)) OF PUCCH-PowerControlSetInfoId-r17
+ OPTIONAL, -- Need N
+ secondTPCFieldDCI-1-1-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ secondTPCFieldDCI-1-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ dl-DataToUL-ACK-r17 CHOICE {release NULL, setup DL-DataToUL-ACK-r17 } OPTIONAL, -- Need M
+ dl-DataToUL-ACK-DCI-1-2-r17 CHOICE {release NULL, setup DL-DataToUL-ACK-DCI-1-2-r17} OPTIONAL, -- Need M
+ ul-AccessConfigListDCI-1-1-r17 CHOICE {release NULL, setup UL-AccessConfigListDCI-1-1-r17 } OPTIONAL, -- Need M
+ schedulingRequestResourceToAddModListExt-v1700 SEQUENCE (SIZE (1..maxNrofSR-Resources)) OF SchedulingRequestResourceConfigExt-v1700
+ OPTIONAL, -- Need N
+ dmrs-BundlingPUCCH-Config-r17 CHOICE {release NULL, setup DMRS-BundlingPUCCH-Config-r17 } OPTIONAL, -- Need M
+ dl-DataToUL-ACK-v1700 CHOICE {release NULL, setup DL-DataToUL-ACK-v1700 } OPTIONAL, -- Need M
+ dl-DataToUL-ACK-MulticastDCI-Format4-1-r17 CHOICE {release NULL, setup DL-DataToUL-ACK-MulticastDCI-Format4-1-r17 } OPTIONAL, -- Need M
+ sps-PUCCH-AN-ListMulticast-r17 CHOICE {release NULL, setup SPS-PUCCH-AN-List-r16 } OPTIONAL -- Need M
]]
}
@@ -5631,6 +8065,11 @@ PUCCH-FormatConfig ::= SEQUENCE {
simultaneousHARQ-ACK-CSI ENUMERATED {true} OPTIONAL -- Need R
}
+PUCCH-FormatConfigExt-r17 ::= SEQUENCE {
+ maxCodeRateLP-r17 PUCCH-MaxCodeRate OPTIONAL, -- Need R
+ ...
+}
+
PUCCH-MaxCodeRate ::= ENUMERATED {zeroDot08, zeroDot15, zeroDot25, zeroDot35, zeroDot45, zeroDot60, zeroDot80}
-- A set with one or more PUCCH resources
@@ -5656,22 +8095,28 @@ PUCCH-Resource ::= SEQUENCE {
}
}
-PUCCH-ResourceExt-r16 ::= SEQUENCE {
+PUCCH-ResourceExt-v1610 ::= SEQUENCE {
interlaceAllocation-r16 SEQUENCE {
- rb-SetIndex INTEGER (0..4),
- interlace0 CHOICE {
+ rb-SetIndex-r16 INTEGER (0..4),
+ interlace0-r16 CHOICE {
scs15 INTEGER (0..9),
scs30 INTEGER (0..4)
}
} OPTIONAL, --Need R
- formatExt-v1610 CHOICE {
+ format-v1610 CHOICE {
interlace1-v1610 INTEGER (0..9),
occ-v1610 SEQUENCE {
occ-Length-v1610 ENUMERATED {n2,n4} OPTIONAL, -- Need M
occ-Index-v1610 ENUMERATED {n0,n1,n2,n3} OPTIONAL -- Need M
}
} OPTIONAL, -- Need R
- ...
+ ...,
+ [[
+ format-v1700 SEQUENCE {
+ nrofPRBs-r17 INTEGER (1..16)
+ } OPTIONAL, -- Need R
+ pucch-RepetitionNrofSlots-r17 ENUMERATED { n1,n2,n4,n8 } OPTIONAL -- Need R
+ ]]
}
PUCCH-ResourceId ::= INTEGER (0..maxNrofPUCCH-Resources-1)
@@ -5718,10 +8163,22 @@ PUCCH-ResourceGroupId-r16 ::= INTEGER (0..maxNrofPUCCH-ResourceGrou
DL-DataToUL-ACK-r16 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (-1..15)
+DL-DataToUL-ACK-r17 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (-1..127)
+
+DL-DataToUL-ACK-v1700 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (16..31)
+
DL-DataToUL-ACK-DCI-1-2-r16 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..15)
+DL-DataToUL-ACK-DCI-1-2-r17 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..127)
+
UL-AccessConfigListDCI-1-1-r16 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..15)
+UL-AccessConfigListDCI-1-2-r17 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..15)
+
+UL-AccessConfigListDCI-1-1-r17 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (0..2)
+
+DL-DataToUL-ACK-MulticastDCI-Format4-1-r17 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..15)
+
-- TAG-PUCCH-CONFIG-STOP
-- TAG-PUCCH-CONFIGCOMMON-START
@@ -5730,7 +8187,13 @@ PUCCH-ConfigCommon ::= SEQUENCE {
pucch-GroupHopping ENUMERATED { neither, enable, disable },
hoppingId INTEGER (0..1023) OPTIONAL, -- Need R
p0-nominal INTEGER (-202..24) OPTIONAL, -- Need R
- ...
+ ...,
+ [[
+ nrofPRBs INTEGER (1..16) OPTIONAL, -- Need R
+ intra-SlotFH-r17 ENUMERATED {fromLowerEdge, fromUpperEdge} OPTIONAL, -- Cond InitialBWP-RedCapOnly
+ pucch-ResourceCommonRedCap-r17 INTEGER (0..15) OPTIONAL, -- Cond InitialBWP-RedCap
+ additionalPRBOffset-r17 ENUMERATED {n2, n3, n4, n6, n8, n9, n10, n12} OPTIONAL -- Cond InitialBWP-RedCapOnly
+ ]]
}
-- TAG-PUCCH-CONFIGCOMMON-STOP
@@ -5745,6 +8208,8 @@ PUCCH-PathlossReferenceRS-Id ::= INTEGER (0..maxNrofPUCCH-PathlossRef
PUCCH-PathlossReferenceRS-Id-v1610 ::= INTEGER (maxNrofPUCCH-PathlossReferenceRSs..maxNrofPUCCH-PathlossReferenceRSs-1-r16)
+PUCCH-PathlossReferenceRS-Id-r17 ::= INTEGER (0..maxNrofPUCCH-PathlossReferenceRSs-1-r17)
+
-- TAG-PUCCH-PATHLOSSREFERENCERS-ID-STOP
-- TAG-PUCCH-POWERCONTROL-START
PUCCH-PowerControl ::= SEQUENCE {
@@ -5788,6 +8253,15 @@ PUCCH-PathlossReferenceRS-r16 ::= SEQUENCE {
}
}
+PUCCH-PowerControlSetInfo-r17 ::= SEQUENCE {
+ pucch-PowerControlSetInfoId-r17 PUCCH-PowerControlSetInfoId-r17,
+ p0-PUCCH-Id-r17 P0-PUCCH-Id,
+ pucch-ClosedLoopIndex-r17 ENUMERATED { i0, i1 },
+ pucch-PathlossReferenceRS-Id-r17 PUCCH-PathlossReferenceRS-Id-r17
+}
+
+PUCCH-PowerControlSetInfoId-r17 ::= INTEGER (1.. maxNrofPowerControlSetInfos-r17)
+
-- TAG-PUCCH-POWERCONTROL-STOP
-- TAG-PUCCH-SPATIALRELATIONINFO-START
@@ -5805,7 +8279,7 @@ PUCCH-SpatialRelationInfo ::= SEQUENCE {
}
PUCCH-SpatialRelationInfoExt-r16 ::= SEQUENCE {
- pucch-SpatialRelationInfoId-v1610 PUCCH-SpatialRelationInfoId-v1610 OPTIONAL, -- Cond SetupOnly
+ pucch-SpatialRelationInfoId-v1610 PUCCH-SpatialRelationInfoId-v1610 OPTIONAL, -- Need S
pucch-PathlossReferenceRS-Id-v1610 PUCCH-PathlossReferenceRS-Id-v1610 OPTIONAL, --Need R
...
}
@@ -5814,6 +8288,7 @@ PUCCH-SRS ::= SEQUENCE {
resource SRS-ResourceId,
uplinkBWP BWP-Id
}
+
-- TAG-PUCCH-SPATIALRELATIONINFO-STOP
-- TAG-PUCCH-SPATIALRELATIONINFO-START
@@ -5829,7 +8304,11 @@ PUCCH-SpatialRelationInfoId-v1610::= INTEGER (maxNrofSpatialRelationInfos-plu
PUCCH-TPC-CommandConfig ::= SEQUENCE {
tpc-IndexPCell INTEGER (1..15) OPTIONAL, -- Cond PDCCH-OfSpcell
tpc-IndexPUCCH-SCell INTEGER (1..15) OPTIONAL, -- Cond PDCCH-ofSpCellOrPUCCH-SCell
- ...
+ ...,
+ [[
+ tpc-IndexPUCCH-sSCell-r17 INTEGER (1..15) OPTIONAL, -- Need R
+ tpc-IndexPUCCH-sScellSecondaryPUCCHgroup-r17 INTEGER (1..15) OPTIONAL -- Cond twoPUCCHgroup
+ ]]
}
-- TAG-PUCCH-TPC-COMMANDCONFIG-STOP
@@ -5902,6 +8381,25 @@ PUSCH-Config ::= SEQUENCE {
pusch-TimeDomainAllocationListForMultiPUSCH-r16 CHOICE {release NULL, setup PUSCH-TimeDomainResourceAllocationList-r16 }
OPTIONAL, -- Need M
numberOfInvalidSymbolsForDL-UL-Switching-r16 INTEGER (1..4) OPTIONAL -- Cond RepTypeB2
+ ]],
+ [[
+ ul-AccessConfigListDCI-0-2-r17 CHOICE {release NULL, setup UL-AccessConfigListDCI-0-2-r17 } OPTIONAL, -- Need M
+ betaOffsetsCrossPri0-r17 CHOICE {release NULL, setup BetaOffsetsCrossPriSel-r17 } OPTIONAL, -- Need M
+ betaOffsetsCrossPri1-r17 CHOICE {release NULL, setup BetaOffsetsCrossPriSel-r17 } OPTIONAL, -- Need M
+ betaOffsetsCrossPri0DCI-0-2-r17 CHOICE {release NULL, setup BetaOffsetsCrossPriSelDCI-0-2-r17 } OPTIONAL, -- Need M
+ betaOffsetsCrossPri1DCI-0-2-r17 CHOICE {release NULL, setup BetaOffsetsCrossPriSelDCI-0-2-r17 } OPTIONAL, -- Need M
+ mappingPattern-r17 ENUMERATED {cyclicMapping, sequentialMapping} OPTIONAL, -- Cond SRSsets
+ secondTPCFieldDCI-0-1-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ secondTPCFieldDCI-0-2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sequenceOffsetForRV-r17 INTEGER (0..3) OPTIONAL, -- Need R
+ ul-AccessConfigListDCI-0-1-r17 CHOICE {release NULL, setup UL-AccessConfigListDCI-0-1-r17 } OPTIONAL, -- Need M
+ minimumSchedulingOffsetK2-r17 CHOICE {release NULL, setup MinSchedulingOffsetK2-Values-r17 } OPTIONAL, -- Need M
+ availableSlotCounting-r17 ENUMERATED { enabled } OPTIONAL, -- Need S
+ dmrs-BundlingPUSCH-Config-r17 CHOICE {release NULL, setup DMRS-BundlingPUSCH-Config-r17 } OPTIONAL, -- Need M
+ harq-ProcessNumberSizeDCI-0-2-v1700 INTEGER (5) OPTIONAL, -- Need R
+ harq-ProcessNumberSizeDCI-0-1-r17 INTEGER (5) OPTIONAL, -- Need R
+ mpe-ResourcePoolToAddModList-r17 SEQUENCE (SIZE(1..maxMPE-Resources-r17)) OF MPE-Resource-r17 OPTIONAL, -- Need N
+ mpe-ResourcePoolToReleaseList-r17 SEQUENCE (SIZE(1..maxMPE-Resources-r17)) OF MPE-ResourceId-r17 OPTIONAL -- Need N
]]
}
@@ -5915,6 +8413,8 @@ UCI-OnPUSCH ::= SEQUENCE {
MinSchedulingOffsetK2-Values-r16 ::= SEQUENCE (SIZE (1..maxNrOfMinSchedulingOffsetValues-r16)) OF INTEGER (0..maxK2-SchedulingOffset-r16)
+MinSchedulingOffsetK2-Values-r17 ::= SEQUENCE (SIZE (1..maxNrOfMinSchedulingOffsetValues-r16)) OF INTEGER (0..maxK2-SchedulingOffset-r17)
+
UCI-OnPUSCH-DCI-0-2-r16 ::= SEQUENCE {
betaOffsetsDCI-0-2-r16 CHOICE {
dynamicDCI-0-2-r16 CHOICE {
@@ -5934,6 +8434,35 @@ UCI-OnPUSCH-ListDCI-0-1-r16 ::= SEQUENCE (SIZE (1..2)) OF UCI-OnPUSCH
UL-AccessConfigListDCI-0-1-r16 ::= SEQUENCE (SIZE (1..64)) OF INTEGER (0..63)
+UL-AccessConfigListDCI-0-1-r17 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (0..2)
+
+UL-AccessConfigListDCI-0-2-r17 ::= SEQUENCE (SIZE (1..64)) OF INTEGER (0..63)
+
+BetaOffsetsCrossPriSel-r17 ::= CHOICE {
+ dynamic-r17 SEQUENCE (SIZE (4)) OF BetaOffsetsCrossPri-r17,
+ semiStatic-r17 BetaOffsetsCrossPri-r17
+}
+
+BetaOffsetsCrossPriSelDCI-0-2-r17 ::= CHOICE {
+ dynamicDCI-0-2-r17 CHOICE {
+ oneBit-r17 SEQUENCE (SIZE (2)) OF BetaOffsetsCrossPri-r17,
+ twoBits-r17 SEQUENCE (SIZE (4)) OF BetaOffsetsCrossPri-r17
+ },
+ semiStaticDCI-0-2-r17 BetaOffsetsCrossPri-r17
+}
+
+MPE-Resource-r17 ::= SEQUENCE {
+ mpe-ResourceId-r17 MPE-ResourceId-r17,
+ cell-r17 ServCellIndex OPTIONAL, -- Need R
+ additionalPCI-r17 AdditionalPCIIndex-r17 OPTIONAL, -- Need R
+ mpe-ReferenceSignal-r17 CHOICE {
+ csi-RS-Resource-r17 NZP-CSI-RS-ResourceId,
+ ssb-Resource-r17 SSB-Index
+ }
+}
+
+MPE-ResourceId-r17 ::= INTEGER (1..maxMPE-Resources-r17)
+
-- TAG-PUSCH-CONFIG-STOP
-- TAG-PUSCH-CONFIGCOMMON-START
@@ -5989,10 +8518,17 @@ PUSCH-PathlossReferenceRS-r16 ::= SEQUENCE {
}
}
+DummyPathlossReferenceRS-v1710 ::= SEQUENCE {
+ pusch-PathlossReferenceRS-Id-r17 PUSCH-PathlossReferenceRS-Id-r17,
+ additionalPCI-r17 AdditionalPCIIndex-r17 OPTIONAL -- Need R
+}
+
PUSCH-PathlossReferenceRS-Id ::= INTEGER (0..maxNrofPUSCH-PathlossReferenceRSs-1)
PUSCH-PathlossReferenceRS-Id-v1610 ::= INTEGER (maxNrofPUSCH-PathlossReferenceRSs..maxNrofPUSCH-PathlossReferenceRSs-1-r16)
+PUSCH-PathlossReferenceRS-Id-r17 ::= INTEGER (0..maxNrofPUSCH-PathlossReferenceRSs-1-r16)
+
SRI-PUSCH-PowerControl ::= SEQUENCE {
sri-PUSCH-PowerControlId SRI-PUSCH-PowerControlId,
sri-PUSCH-PathlossReferenceRS-Id PUSCH-PathlossReferenceRS-Id,
@@ -6012,7 +8548,14 @@ PUSCH-PowerControl-v1610 ::= SEQUENCE {
olpc-ParameterSetDCI-0-1-r16 INTEGER (1..2) OPTIONAL, -- Need R
olpc-ParameterSetDCI-0-2-r16 INTEGER (1..2) OPTIONAL -- Need R
} OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ sri-PUSCH-MappingToAddModList2-r17 SEQUENCE (SIZE (1..maxNrofSRI-PUSCH-Mappings)) OF SRI-PUSCH-PowerControl
+ OPTIONAL, -- Need N
+ sri-PUSCH-MappingToReleaseList2-r17 SEQUENCE (SIZE (1..maxNrofSRI-PUSCH-Mappings)) OF SRI-PUSCH-PowerControlId OPTIONAL, -- Need N
+ p0-PUSCH-SetList2-r17 SEQUENCE (SIZE (1..maxNrofSRI-PUSCH-Mappings)) OF P0-PUSCH-Set-r16 OPTIONAL, -- Need R
+ dummy SEQUENCE (SIZE (1..maxNrofPUSCH-PathlossReferenceRSs-r16)) OF DummyPathlossReferenceRS-v1710 OPTIONAL -- Need N
+ ]]
}
P0-PUSCH-Set-r16 ::= SEQUENCE {
@@ -6039,6 +8582,10 @@ PUSCH-ServingCellConfig ::= SEQUENCE {
]],
[[
maxMIMO-LayersDCI-0-2-r16 CHOICE {release NULL, setup MaxMIMO-LayersDCI-0-2-r16} OPTIONAL -- Need M
+ ]],
+ [[
+ nrofHARQ-ProcessesForPUSCH-r17 ENUMERATED {n32} OPTIONAL, -- Need R
+ uplinkHARQ-mode-r17 CHOICE {release NULL, setup UplinkHARQ-mode-r17} OPTIONAL -- Need M
]]
}
@@ -6049,6 +8596,8 @@ PUSCH-CodeBlockGroupTransmission ::= SEQUENCE {
MaxMIMO-LayersDCI-0-2-r16 ::= INTEGER (1..4)
+UplinkHARQ-mode-r17 ::= BIT STRING (SIZE (32))
+
-- TAG-PUSCH-SERVINGCELLCONFIG-STOP
-- TAG-PUSCH-TIMEDOMAINRESOURCEALLOCATIONLIST-START
@@ -6074,7 +8623,13 @@ PUSCH-Allocation-r16 ::= SEQUENCE {
startSymbol-r16 INTEGER (0..13) OPTIONAL, -- Cond RepTypeB
length-r16 INTEGER (1..14) OPTIONAL, -- Cond RepTypeB
numberOfRepetitions-r16 ENUMERATED {n1, n2, n3, n4, n7, n8, n12, n16} OPTIONAL, -- Cond Format01-02
- ...
+ ...,
+ [[
+ numberOfRepetitionsExt-r17 ENUMERATED {n1, n2, n3, n4, n7, n8, n12, n16, n20, n24, n28, n32, spare4, spare3, spare2,
+ spare1} OPTIONAL, -- Cond Format01-02-For-TypeA
+ numberOfSlotsTBoMS-r17 ENUMERATED {n1, n2, n4, n8, spare4, spare3, spare2, spare1} OPTIONAL, -- Need R
+ extendedK2-r17 INTEGER (0..128) OPTIONAL -- Cond MultiPUSCH
+ ]]
}
-- TAG-PUSCH-TIMEDOMAINRESOURCEALLOCATIONLIST-STOP
@@ -6192,6 +8747,10 @@ RACH-ConfigCommon ::= SEQUENCE {
l571 INTEGER (0..569),
l1151 INTEGER (0..1149)
} OPTIONAL -- Need R
+ ]],
+ [[
+ ra-PrioritizationForSlicing-r17 RA-PrioritizationForSlicing-r17 OPTIONAL, -- Cond InitialBWP-Only
+ featureCombinationPreamblesList-r17 SEQUENCE (SIZE(1..maxFeatureCombPreamblesPerRACHResource-r17)) OF FeatureCombinationPreambles-r17 OPTIONAL -- Cond AdditionalRACH
]]
}
@@ -6231,14 +8790,18 @@ RACH-ConfigCommonTwoStepRA-r16 ::= SEQUENCE {
ra-PrioritizationForAI-r16 BIT STRING (SIZE (2))
} OPTIONAL, -- Cond InitialBWP-Only
ra-ContentionResolutionTimer-r16 ENUMERATED {sf8, sf16, sf24, sf32, sf40, sf48, sf56, sf64} OPTIONAL, -- Cond 2StepOnly
- ...
+ ...,
+ [[
+ ra-PrioritizationForSlicingTwoStep-r17 RA-PrioritizationForSlicing-r17 OPTIONAL, -- Cond InitialBWP-Only
+ featureCombinationPreamblesList-r17 SEQUENCE (SIZE(1..maxFeatureCombPreamblesPerRACHResource-r17)) OF FeatureCombinationPreambles-r17 OPTIONAL -- Cond AdditionalRACH
+ ]]
}
GroupB-ConfiguredTwoStepRA-r16 ::= SEQUENCE {
- ra-MsgA-SizeGroupA ENUMERATED {b56, b144, b208, b256, b282, b480, b640, b800,
+ ra-MsgA-SizeGroupA-r16 ENUMERATED {b56, b144, b208, b256, b282, b480, b640, b800,
b1000, b72, spare6, spare5, spare4, spare3, spare2, spare1},
- messagePowerOffsetGroupB ENUMERATED {minusinfinity, dB0, dB5, dB8, dB10, dB12, dB15, dB18},
- numberOfRA-PreamblesGroupA INTEGER (1..64)
+ messagePowerOffsetGroupB-r16 ENUMERATED {minusinfinity, dB0, dB5, dB8, dB10, dB12, dB15, dB18},
+ numberOfRA-PreamblesGroupA-r16 INTEGER (1..64)
}
-- TAG-RACH-CONFIGCOMMONTWOSTEPRA-STOP
@@ -6323,11 +8886,14 @@ RACH-ConfigGeneric ::= SEQUENCE {
ra-ResponseWindow ENUMERATED {sl1, sl2, sl4, sl8, sl10, sl20, sl40, sl80},
...,
[[
- prach-ConfigurationPeriodScaling-IAB-r16 ENUMERATED {scf1,scf2,scf4,scf8,scf16,scf32,scf64} OPTIONAL, -- Need R
- prach-ConfigurationFrameOffset-IAB-r16 INTEGER (0..63) OPTIONAL, -- Need R
- prach-ConfigurationSOffset-IAB-r16 INTEGER (0..39) OPTIONAL, -- Need R
- ra-ResponseWindow-v1610 ENUMERATED { sl60, sl160} OPTIONAL, -- Need R
- prach-ConfigurationIndex-v1610 INTEGER (256..262) OPTIONAL -- Need R
+ prach-ConfigurationPeriodScaling-IAB-r16 ENUMERATED {scf1,scf2,scf4,scf8,scf16,scf32,scf64} OPTIONAL, -- Need R
+ prach-ConfigurationFrameOffset-IAB-r16 INTEGER (0..63) OPTIONAL, -- Need R
+ prach-ConfigurationSOffset-IAB-r16 INTEGER (0..39) OPTIONAL, -- Need R
+ ra-ResponseWindow-v1610 ENUMERATED { sl60, sl160} OPTIONAL, -- Need R
+ prach-ConfigurationIndex-v1610 INTEGER (256..262) OPTIONAL -- Need R
+ ]],
+ [[
+ ra-ResponseWindow-v1700 ENUMERATED {sl240, sl320, sl640, sl960, sl1280, sl1920, sl2560} OPTIONAL -- Need R
]]
}
@@ -6344,7 +8910,10 @@ RACH-ConfigGenericTwoStepRA-r16 ::= SEQUENCE {
msgB-ResponseWindow-r16 ENUMERATED {sl1, sl2, sl4, sl8, sl10, sl20, sl40, sl80, sl160, sl320}
OPTIONAL, -- Cond NoCFRA
preambleTransMax-r16 ENUMERATED {n3, n4, n5, n6, n7, n8, n10, n20, n50, n100, n200} OPTIONAL, -- Cond 2StepOnlyNoCFRA
- ...
+ ...,
+ [[
+ msgB-ResponseWindow-v1700 ENUMERATED {sl240, sl640, sl960, sl1280, sl1920, sl2560} OPTIONAL -- Cond NoCFRA2
+ ]]
}
-- TAG-RACH-CONFIGGENERICTWOSTEPRA-STOP
@@ -6357,6 +8926,22 @@ RA-Prioritization ::= SEQUENCE {
}
-- TAG-RA-PRIORITIZATION-STOP
+-- TAG-RA-PRIORITIZATIONFORSLICING-START
+
+RA-PrioritizationForSlicing-r17 ::= SEQUENCE {
+ ra-PrioritizationSliceInfoList-r17 RA-PrioritizationSliceInfoList-r17,
+ ...
+}
+
+RA-PrioritizationSliceInfoList-r17 ::= SEQUENCE (SIZE (1..maxSliceInfo-r17)) OF RA-PrioritizationSliceInfo-r17
+
+RA-PrioritizationSliceInfo-r17 ::= SEQUENCE {
+ nsag-ID-List-r17 SEQUENCE (SIZE (1..maxSliceInfo-r17)) OF NSAG-ID-r17,
+ ra-Prioritization-r17 RA-Prioritization,
+ ...
+}
+
+-- TAG-RA-PRIORITIZATIONFORSLICING-STOP
-- TAG-RADIOBEARERCONFIG-START
RadioBearerConfig ::= SEQUENCE {
@@ -6365,16 +8950,27 @@ RadioBearerConfig ::= SEQUENCE {
drb-ToAddModList DRB-ToAddModList OPTIONAL, -- Cond HO-toNR
drb-ToReleaseList DRB-ToReleaseList OPTIONAL, -- Need N
securityConfig SecurityConfig OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ mrb-ToAddModList-r17 MRB-ToAddModList-r17 OPTIONAL, -- Need N
+ mrb-ToReleaseList-r17 MRB-ToReleaseList-r17 OPTIONAL, -- Need N
+ srb4-ToAddMod-r17 SRB-ToAddMod OPTIONAL, -- Need N
+ srb4-ToRelease-r17 ENUMERATED{true} OPTIONAL -- Need N
+ ]]
+
}
SRB-ToAddModList ::= SEQUENCE (SIZE (1..2)) OF SRB-ToAddMod
+
SRB-ToAddMod ::= SEQUENCE {
srb-Identity SRB-Identity,
reestablishPDCP ENUMERATED{true} OPTIONAL, -- Need N
discardOnPDCP ENUMERATED{true} OPTIONAL, -- Need N
pdcp-Config PDCP-Config OPTIONAL, -- Cond PDCP
- ...
+ ...,
+ [[
+ srb-Identity-v1700 SRB-Identity-v1700 OPTIONAL -- Need M
+ ]]
}
DRB-ToAddModList ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-ToAddMod
@@ -6401,6 +8997,20 @@ SecurityConfig ::= SEQUENCE {
...
}
+MRB-ToAddModList-r17 ::= SEQUENCE (SIZE (1..maxMRB-r17)) OF MRB-ToAddMod-r17
+
+MRB-ToAddMod-r17 ::= SEQUENCE {
+ mbs-SessionId-r17 TMGI-r17 OPTIONAL, -- Cond MRBSetup
+ mrb-Identity-r17 MRB-Identity-r17,
+ mrb-IdentityNew-r17 MRB-Identity-r17 OPTIONAL, -- Need N
+ reestablishPDCP-r17 ENUMERATED{true} OPTIONAL, -- Need N
+ recoverPDCP-r17 ENUMERATED{true} OPTIONAL, -- Need N
+ pdcp-Config-r17 PDCP-Config OPTIONAL, -- Cond PDCP
+ ...
+}
+
+MRB-ToReleaseList-r17 ::= SEQUENCE (SIZE (1..maxMRB-r17)) OF MRB-Identity-r17
+
-- TAG-RADIOBEARERCONFIG-STOP
-- TAG-RADIOLINKMONITORINGCONFIG-START
@@ -6411,7 +9021,16 @@ RadioLinkMonitoringConfig ::= SEQUENCE {
OPTIONAL, -- Need N
beamFailureInstanceMaxCount ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10} OPTIONAL, -- Need R
beamFailureDetectionTimer ENUMERATED {pbfd1, pbfd2, pbfd3, pbfd4, pbfd5, pbfd6, pbfd8, pbfd10} OPTIONAL, -- Need R
- ...
+ ...,
+ [[
+ beamFailure-r17 BeamFailureDetection-r17 OPTIONAL -- Need R
+ ]]
+}
+
+BeamFailureDetection-r17 ::= SEQUENCE {
+ failureDetectionSet1-r17 BeamFailureDetectionSet-r17 OPTIONAL, -- Need R
+ failureDetectionSet2-r17 BeamFailureDetectionSet-r17 OPTIONAL, -- Need R
+ additionalPCI-r17 AdditionalPCIIndex-r17 OPTIONAL -- Need R
}
RadioLinkMonitoringRS ::= SEQUENCE {
@@ -6424,6 +9043,27 @@ RadioLinkMonitoringRS ::= SEQUENCE {
...
}
+BeamFailureDetectionSet-r17 ::= SEQUENCE {
+ bfdResourcesToAddModList-r17 SEQUENCE (SIZE(1..maxNrofBFDResourcePerSet-r17)) OF BeamLinkMonitoringRS-r17
+ OPTIONAL, -- Need N
+ bfdResourcesToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofBFDResourcePerSet-r17)) OF BeamLinkMonitoringRS-Id-r17
+ OPTIONAL, -- Need N
+ beamFailureInstanceMaxCount-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10} OPTIONAL, -- Need R
+ beamFailureDetectionTimer-r17 ENUMERATED {pbfd1, pbfd2, pbfd3, pbfd4, pbfd5, pbfd6, pbfd8, pbfd10} OPTIONAL, -- Need R
+ ...
+}
+
+BeamLinkMonitoringRS-r17 ::= SEQUENCE {
+ beamLinkMonitoringRS-Id-r17 BeamLinkMonitoringRS-Id-r17,
+ detectionResource-r17 CHOICE {
+ ssb-Index SSB-Index,
+ csi-RS-Index NZP-CSI-RS-ResourceId
+ },
+ ...
+}
+
+BeamLinkMonitoringRS-Id-r17 ::= INTEGER (0..maxNrofFailureDetectionResources-1-r17)
+
-- TAG-RADIOLINKMONITORINGCONFIG-STOP
-- TAG-RADIOLINKMONITORINGRS-ID-START
@@ -6488,6 +9128,11 @@ RateMatchPatternLTE-CRS ::= SEQUENCE {
LTE-CRS-PatternList-r16 ::= SEQUENCE (SIZE (1..maxLTE-CRS-Patterns-r16)) OF RateMatchPatternLTE-CRS
-- TAG-RATEMATCHPATTERNLTE-CRS-STOP
+-- TAG-REFERENCELOCATION-START
+
+ReferenceLocation-r17 ::= OCTET STRING
+
+-- TAG-REFERENCELOCATION-STOP
-- TAG-REFERENCETIMEINFO-START
ReferenceTimeInfo-r16 ::= SEQUENCE {
@@ -6602,7 +9247,24 @@ EventTriggerConfigInterRAT ::= SEQUENCE {
timeToTrigger-r16 TimeToTrigger,
...
}
- ]]
+ ]],
+ [[
+ eventY1-Relay-r17 SEQUENCE {
+ y1-Threshold1-r17 MeasTriggerQuantity,
+ y1-Threshold2-Relay-r17 SL-MeasTriggerQuantity-r16,
+ reportOnLeave-r17 BOOLEAN,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger,
+ ...
+ },
+ eventY2-Relay-r17 SEQUENCE {
+ y2-Threshold-Relay-r17 SL-MeasTriggerQuantity-r16,
+ reportOnLeave-r17 BOOLEAN,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger,
+ ...
+ }
+ ]]
},
rsType NR-RS-Type,
@@ -6619,8 +9281,10 @@ EventTriggerConfigInterRAT ::= SEQUENCE {
includeBT-Meas-r16 CHOICE {release NULL, setup BT-NameList-r16} OPTIONAL, -- Need M
includeWLAN-Meas-r16 CHOICE {release NULL, setup WLAN-NameList-r16} OPTIONAL, -- Need M
includeSensor-Meas-r16 CHOICE {release NULL, setup Sensor-NameList-r16} OPTIONAL -- Need M
- ]]
-}
+ ]],
+ [[
+ reportQuantityRelay-r17 SL-MeasReportQuantity-r16 OPTIONAL -- Need R
+ ]]}
PeriodicalReportConfigInterRAT ::= SEQUENCE {
reportInterval ReportInterval,
@@ -6636,7 +9300,11 @@ PeriodicalReportConfigInterRAT ::= SEQUENCE {
includeBT-Meas-r16 CHOICE {release NULL, setup BT-NameList-r16} OPTIONAL, -- Need M
includeWLAN-Meas-r16 CHOICE {release NULL, setup WLAN-NameList-r16} OPTIONAL, -- Need M
includeSensor-Meas-r16 CHOICE {release NULL, setup Sensor-NameList-r16} OPTIONAL -- Need M
+ ]],
+ [[
+ reportQuantityRelay-r17 SL-MeasReportQuantity-r16 OPTIONAL -- Need R
]]
+
}
MeasTriggerQuantityUTRA-FDD-r16 ::= CHOICE{
@@ -6661,7 +9329,8 @@ ReportConfigNR ::= SEQUENCE {
reportSFTD ReportSFTD-NR,
condTriggerConfig-r16 CondTriggerConfig-r16,
cli-Periodical-r16 CLI-PeriodicalReportConfig-r16,
- cli-EventTriggered-r16 CLI-EventTriggerConfig-r16
+ cli-EventTriggered-r16 CLI-EventTriggerConfig-r16,
+ rxTxPeriodical-r17 RxTxPeriodical-r17
}
}
@@ -6698,7 +9367,24 @@ CondTriggerConfig-r16 ::= SEQUENCE {
hysteresis Hysteresis,
timeToTrigger TimeToTrigger
},
- ...
+ ...,
+ condEventA4-r17 SEQUENCE {
+ a4-Threshold-r17 MeasTriggerQuantity,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger
+ },
+ condEventD1-r17 SEQUENCE {
+ distanceThreshFromReference1-r17 INTEGER(0.. 65525),
+ distanceThreshFromReference2-r17 INTEGER(0.. 65525),
+ referenceLocation1-r17 ReferenceLocation-r17,
+ referenceLocation2-r17 ReferenceLocation-r17,
+ hysteresisLocation-r17 HysteresisLocation-r17,
+ timeToTrigger-r17 TimeToTrigger
+ },
+ condEventT1-r17 SEQUENCE {
+ t1-Threshold-r17 INTEGER (0..549755813887),
+ duration-r17 INTEGER (1..6000)
+ }
},
rsType-r16 NR-RS-Type,
...
@@ -6723,14 +9409,14 @@ EventTriggerConfig::= SEQUENCE {
reportOnLeave BOOLEAN,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
- useWhiteCellList BOOLEAN
+ useAllowedCellList BOOLEAN
},
eventA4 SEQUENCE {
a4-Threshold MeasTriggerQuantity,
reportOnLeave BOOLEAN,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
- useWhiteCellList BOOLEAN
+ useAllowedCellList BOOLEAN
},
eventA5 SEQUENCE {
a5-Threshold1 MeasTriggerQuantity,
@@ -6738,16 +9424,41 @@ EventTriggerConfig::= SEQUENCE {
reportOnLeave BOOLEAN,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
- useWhiteCellList BOOLEAN
+ useAllowedCellList BOOLEAN
},
eventA6 SEQUENCE {
a6-Offset MeasTriggerQuantityOffset,
reportOnLeave BOOLEAN,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
- useWhiteCellList BOOLEAN
+ useAllowedCellList BOOLEAN
},
- ...
+ ...,
+ [[
+ eventX1-r17 SEQUENCE {
+ x1-Threshold1-Relay-r17 SL-MeasTriggerQuantity-r16,
+ x1-Threshold2-r17 MeasTriggerQuantity,
+ reportOnLeave-r17 BOOLEAN,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger,
+ useAllowedCellList-r17 BOOLEAN
+ },
+ eventX2-r17 SEQUENCE {
+ x2-Threshold-Relay-r17 SL-MeasTriggerQuantity-r16,
+ reportOnLeave-r17 BOOLEAN,
+ hysteresis-r17 Hysteresis,
+ timeToTrigger-r17 TimeToTrigger
+ },
+ eventD1-r17 SEQUENCE {
+ distanceThreshFromReference1-r17 INTEGER(1.. 65525),
+ distanceThreshFromReference2-r17 INTEGER(1.. 65525),
+ referenceLocation1-r17 ReferenceLocation-r17,
+ referenceLocation2-r17 ReferenceLocation-r17,
+ reportOnLeave-r17 BOOLEAN,
+ hysteresisLocation-r17 HysteresisLocation-r17,
+ timeToTrigger-r17 TimeToTrigger
+ }
+ ]]
},
rsType NR-RS-Type,
reportInterval ReportInterval,
@@ -6766,6 +9477,10 @@ EventTriggerConfig::= SEQUENCE {
includeBT-Meas-r16 CHOICE {release NULL, setup BT-NameList-r16} OPTIONAL, -- Need M
includeWLAN-Meas-r16 CHOICE {release NULL, setup WLAN-NameList-r16} OPTIONAL, -- Need M
includeSensor-Meas-r16 CHOICE {release NULL, setup Sensor-NameList-r16} OPTIONAL -- Need M
+ ]],
+ [[
+ coarseLocationRequest-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ reportQuantityRelay-r17 SL-MeasReportQuantity-r16 OPTIONAL -- Need R
]]
}
@@ -6778,7 +9493,7 @@ PeriodicalReportConfig ::= SEQUENCE {
reportQuantityRS-Indexes MeasReportQuantity OPTIONAL, -- Need R
maxNrofRS-IndexesToReport INTEGER (1..maxNrofIndexesToReport) OPTIONAL, -- Need R
includeBeamMeasurements BOOLEAN,
- useWhiteCellList BOOLEAN,
+ useAllowedCellList BOOLEAN,
...,
[[
measRSSI-ReportConfig-r16 MeasRSSI-ReportConfig-r16 OPTIONAL, -- Need R
@@ -6788,6 +9503,11 @@ PeriodicalReportConfig ::= SEQUENCE {
includeSensor-Meas-r16 CHOICE {release NULL, setup Sensor-NameList-r16} OPTIONAL, -- Need M
ul-DelayValueConfig-r16 CHOICE {release NULL, setup UL-DelayValueConfig-r16 } OPTIONAL, -- Need M
reportAddNeighMeas-r16 ENUMERATED {setup} OPTIONAL -- Need R
+ ]],
+ [[
+ ul-ExcessDelayConfig-r17 CHOICE {release NULL, setup UL-ExcessDelayConfig-r17 } OPTIONAL, -- Need M
+ coarseLocationRequest-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ reportQuantityRelay-r17 SL-MeasReportQuantity-r16 OPTIONAL -- Need R
]]
}
@@ -6840,6 +9560,14 @@ CLI-PeriodicalReportConfig-r16 ::= SEQUENCE {
...
}
+RxTxPeriodical-r17 ::= SEQUENCE {
+ rxTxReportInterval-r17 RxTxReportInterval-r17 OPTIONAL, -- Need R
+ reportAmount-r17 ENUMERATED {r1, infinity, spare6, spare5, spare4, spare3, spare2, spare1},
+ ...
+}
+
+RxTxReportInterval-r17 ::= ENUMERATED {ms80,ms120,ms160,ms240,ms320,ms480,ms640,ms1024,ms1280,ms2048,ms2560,ms5120,spare4,spare3,spare2,spare1}
+
MeasTriggerQuantityCLI-r16 ::= CHOICE {
srs-RSRP-r16 SRS-RSRP-Range-r16,
cli-RSSI-r16 CLI-RSSI-Range-r16
@@ -6942,9 +9670,22 @@ RLC-BearerConfig ::= SEQUENCE {
...,
[[
rlc-Config-v1610 RLC-Config-v1610 OPTIONAL -- Need R
+ ]],
+ [[
+ rlc-Config-v1700 RLC-Config-v1700 OPTIONAL, -- Need R
+ logicalChannelIdentityExt-r17 LogicalChannelIdentityExt-r17 OPTIONAL, -- Cond LCH-SetupModMRB
+ multicastRLC-BearerConfig-r17 MulticastRLC-BearerConfig-r17 OPTIONAL, -- Cond LCH-SetupOnlyMRB
+ servedRadioBearerSRB4-r17 SRB-Identity-v1700 OPTIONAL -- Need N
]]
}
+MulticastRLC-BearerConfig-r17 ::= SEQUENCE {
+ servedMBS-RadioBearer-r17 MRB-Identity-r17,
+ isPTM-Entity-r17 ENUMERATED {true} OPTIONAL -- Need S
+}
+
+LogicalChannelIdentityExt-r17 ::= INTEGER (320..65855)
+
-- TAG-RLC-BEARERCONFIG-STOP
-- TAG-RLC-CONFIG-START
@@ -7046,13 +9787,28 @@ RLC-Config-v1610 ::= SEQUENCE {
dl-AM-RLC-v1610 DL-AM-RLC-v1610
}
+RLC-Config-v1700 ::= SEQUENCE {
+ dl-AM-RLC-v1700 DL-AM-RLC-v1700,
+ dl-UM-RLC-v1700 DL-UM-RLC-v1700
+}
+
DL-AM-RLC-v1610 ::= SEQUENCE {
- t-StatusProhibit-v1610 T-StatusProhibit-v1610 OPTIONAL, -- Need N
+ t-StatusProhibit-v1610 T-StatusProhibit-v1610 OPTIONAL, -- Need R
...
}
+DL-AM-RLC-v1700 ::= SEQUENCE {
+ t-ReassemblyExt-r17 T-ReassemblyExt-r17 OPTIONAL -- Need R
+}
+
+DL-UM-RLC-v1700 ::= SEQUENCE {
+ t-ReassemblyExt-r17 T-ReassemblyExt-r17 OPTIONAL -- Need R
+}
+
T-StatusProhibit-v1610 ::= ENUMERATED { ms1, ms2, ms3, ms4, spare4, spare3, spare2, spare1}
+T-ReassemblyExt-r17 ::= ENUMERATED {ms210, ms220, ms340, ms350, ms550, ms1100, ms1650, ms2200}
+
-- TAG-RLC-CONFIG-STOP
-- TAG-RLF-TIMERSANDCONSTANTS-START
@@ -7087,6 +9843,30 @@ RSRQ-Range ::= INTEGER(0..127)
RSSI-Range-r16 ::= INTEGER(0..76)
-- TAG-RSSI-RANGE-STOP
+-- TAG-RXTXTIMEDIFF-START
+
+RxTxTimeDiff-r17 ::= SEQUENCE {
+ result-k5-r17 INTEGER (0..61565) OPTIONAL, -- Need N
+ ...
+}
+
+-- TAG-RXTXTIMEDIFF-STOP
+-- TAG-SCELLACTIVATIONRS-CONFIG-START
+
+SCellActivationRS-Config-r17 ::= SEQUENCE {
+ scellActivationRS-Id-r17 SCellActivationRS-ConfigId-r17,
+ resourceSet-r17 NZP-CSI-RS-ResourceSetId,
+ gapBetweenBursts-r17 INTEGER (2..31) OPTIONAL, -- Need R
+ qcl-Info-r17 TCI-StateId,
+ ...
+}
+
+-- TAG-SCELLACTIVATIONRS-CONFIG-STOP
+-- TAG-SCELLACTIVATIONRS-CONFIGID-START
+
+SCellActivationRS-ConfigId-r17 ::= INTEGER (1.. maxNrofSCellActRS-r17)
+
+-- TAG-SCELLACTIVATIONRS-CONFIGID-STOP
-- TAG-SCELLINDEX-START
SCellIndex ::= INTEGER (1..31)
@@ -7107,7 +9887,15 @@ SchedulingRequestToAddMod ::= SEQUENCE {
sr-TransMax ENUMERATED { n4, n8, n16, n32, n64, spare3, spare2, spare1}
}
+SchedulingRequestConfig-v1700 ::= SEQUENCE {
+ schedulingRequestToAddModListExt-v1700 SEQUENCE (SIZE (1..maxNrofSR-ConfigPerCellGroup)) OF SchedulingRequestToAddModExt-v1700
+ OPTIONAL -- Need N
+}
+SchedulingRequestToAddModExt-v1700 ::= SEQUENCE {
+ sr-ProhibitTimer-v1700 ENUMERATED { ms192, ms256, ms320, ms384, ms448, ms512, ms576, ms640, ms1082, spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+ OPTIONAL -- Need R
+}
-- TAG-SCHEDULINGREQUESTCONFIG-STOP
-- TAG-SCHEDULINGREQUESTID-START
@@ -7145,6 +9933,14 @@ SchedulingRequestResourceConfigExt-v1610 ::= SEQUENCE {
...
}
+SchedulingRequestResourceConfigExt-v1700 ::= SEQUENCE {
+ periodicityAndOffset-r17 CHOICE {
+ sl1280 INTEGER (0..1279),
+ sl2560 INTEGER (0..2559),
+ sl5120 INTEGER (0..5119)
+ } OPTIONAL -- Need M
+}
+
-- TAG-SCHEDULINGREQUESTRESOURCECONFIG-STOP
-- TAG-SCHEDULINGREQUESTRESOURCEID-START
@@ -7207,8 +10003,8 @@ SearchSpace ::= SEQUENCE {
sl640 INTEGER (0..639),
sl1280 INTEGER (0..1279),
sl2560 INTEGER (0..2559)
- } OPTIONAL, -- Cond Setup
- duration INTEGER (2..2559) OPTIONAL, -- Need R
+ } OPTIONAL, -- Cond Setup4
+ duration INTEGER (2..2559) OPTIONAL, -- Need S
monitoringSymbolsWithinSlot BIT STRING (SIZE (14)) OPTIONAL, -- Cond Setup
nrofCandidates SEQUENCE {
aggregationLevel1 ENUMERATED {n0, n1, n2, n3, n4, n5, n6, n8},
@@ -7292,6 +10088,49 @@ SearchSpaceExt-r16 ::= SEQUENCE {
freqMonitorLocations-r16 BIT STRING (SIZE (5)) OPTIONAL -- Need R
}
+SearchSpaceExt-v1700 ::= SEQUENCE {
+ monitoringSlotPeriodicityAndOffset-v1710 CHOICE {
+ sl32 INTEGER (0..31),
+ sl64 INTEGER (0..63),
+ sl128 INTEGER (0..127),
+ sl5120 INTEGER (0..5119),
+ sl10240 INTEGER (0..10239),
+ sl20480 INTEGER (0..20479)
+ } OPTIONAL, -- Cond Setup5
+ monitoringSlotsWithinSlotGroup-r17 CHOICE {
+ slotGroupLength4-r17 BIT STRING (SIZE (4)),
+ slotGroupLength8-r17 BIT STRING (SIZE (8))
+ } OPTIONAL, -- Need R
+ duration-r17 INTEGER (4..20476) OPTIONAL, -- Need R
+
+ searchSpaceType-r17 SEQUENCE{
+ common-r17 SEQUENCE {
+ dci-Format4-0-r17 SEQUENCE {
+ ...
+ } OPTIONAL, -- Need R
+ dci-Format4-1-r17 SEQUENCE {
+ ...
+ } OPTIONAL, -- Need R
+ dci-Format4-2-r17 SEQUENCE {
+ ...
+ } OPTIONAL, -- Need R
+ dci-Format4-1-AndFormat4-2-r17 SEQUENCE {
+ ...
+ } OPTIONAL, -- Need R
+ dci-Format2-7-r17 SEQUENCE {
+ nrofCandidates-PEI-r17 SEQUENCE {
+ aggregationLevel4-r17 ENUMERATED {n0, n1, n2, n3, n4} OPTIONAL, -- Need R
+ aggregationLevel8-r17 ENUMERATED {n0, n1, n2} OPTIONAL, -- Need R
+ aggregationLevel16-r17 ENUMERATED {n0, n1} OPTIONAL -- Need R
+ },
+ ...
+ } OPTIONAL -- Need R
+ }
+ } OPTIONAL, -- Need R
+ searchSpaceGroupIdList-r17 SEQUENCE (SIZE (1.. 3)) OF INTEGER (0.. maxNrofSearchSpaceGroups-1-r17) OPTIONAL, -- Cond DedicatedOnly
+ searchSpaceLinkingId-r17 INTEGER (0..maxNrofSearchSpacesLinks-1-r17) OPTIONAL -- Cond DedicatedOnly
+}
+
-- TAG-SEARCHSPACE-STOP
-- TAG-SEARCHSPACEID-START
@@ -7323,10 +10162,18 @@ CipheringAlgorithm ::= ENUMERATED {
-- TAG-SEMISTATICCHANNELACCESSCONFIG-START
SemiStaticChannelAccessConfig-r16 ::= SEQUENCE {
- period ENUMERATED {ms1, ms2, ms2dot5, ms4, ms5, ms10}
+ period-r16 ENUMERATED {ms1, ms2, ms2dot5, ms4, ms5, ms10}
}
-- TAG-SEMISTATICCHANNELACCESSCONFIG-STOP
+-- TAG-SEMISTATICCHANNELACCESSCONFIGUE-START
+
+SemiStaticChannelAccessConfigUE-r17 ::= SEQUENCE {
+ periodUE-r17 ENUMERATED {ms1, ms2, ms2dot5, ms4, ms5, ms10, spare2, spare1},
+ offsetUE-r17 INTEGER (0..559)
+}
+
+-- TAG-SEMISTATICCHANNELACCESSCONFIGUE-STOP
-- TAG-SENSORLOCATIONINFO-START
Sensor-LocationInfo-r16 ::= SEQUENCE {
@@ -7336,6 +10183,14 @@ Sensor-LocationInfo-r16 ::= SEQUENCE {
}
-- TAG-SENSORLOCATIONINFO-STOP
+-- TAG-SERVINGCELLANDBWP-ID-START
+
+ServingCellAndBWP-Id-r17 ::= SEQUENCE {
+ servingcell-r17 ServCellIndex,
+ bwp-r17 BWP-Id
+}
+
+-- TAG-SERVINGCELLANDBWP-ID-STOP
-- TAG-SERVCELLINDEX-START
ServCellIndex ::= INTEGER (0..maxNrofServingCells-1)
@@ -7387,7 +10242,7 @@ ServingCellConfig ::= SEQUENCE {
dummy2 CHOICE {release NULL, setup DummyJ } OPTIONAL, -- Need M
intraCellGuardBandsDL-List-r16 SEQUENCE (SIZE (1..maxSCSs)) OF IntraCellGuardBandsPerSCS-r16 OPTIONAL, -- Need S
intraCellGuardBandsUL-List-r16 SEQUENCE (SIZE (1..maxSCSs)) OF IntraCellGuardBandsPerSCS-r16 OPTIONAL, -- Need S
- csi-RS-ValidationWithDCI-r16 ENUMERATED {enabled} OPTIONAL, -- Need R
+ csi-RS-ValidationWithDCI-r16 ENUMERATED {enabled} OPTIONAL, -- Need R
lte-CRS-PatternList1-r16 CHOICE {release NULL, setup LTE-CRS-PatternList-r16 } OPTIONAL, -- Need M
lte-CRS-PatternList2-r16 CHOICE {release NULL, setup LTE-CRS-PatternList-r16 } OPTIONAL, -- Need M
crs-RateMatch-PerCORESETPoolIndex-r16 ENUMERATED {enabled} OPTIONAL, -- Need R
@@ -7400,6 +10255,28 @@ ServingCellConfig ::= SEQUENCE {
[[
directionalCollisionHandling-r16 ENUMERATED {enabled} OPTIONAL, -- Need R
channelAccessConfig-r16 CHOICE {release NULL, setup ChannelAccessConfig-r16 } OPTIONAL -- Need M
+ ]],
+ [[
+ nr-dl-PRS-PDC-Info-r17 CHOICE {release NULL, setup NR-DL-PRS-PDC-Info-r17} OPTIONAL, -- Need M
+ semiStaticChannelAccessConfigUE-r17 CHOICE {release NULL, setup SemiStaticChannelAccessConfigUE-r17} OPTIONAL, -- Need M
+ mimoParam-r17 CHOICE {release NULL, setup MIMOParam-r17} OPTIONAL, -- Need M
+ channelAccessMode2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ timeDomainHARQ-BundlingType1-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ nrofHARQ-BundlingGroups-r17 ENUMERATED {n1, n2, n4} OPTIONAL, -- Need R
+ fdmed-ReceptionMulticast-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ moreThanOneNackOnlyMode-r17 ENUMERATED {mode2} OPTIONAL, -- Need S
+ tci-ActivatedConfig-r17 TCI-ActivatedConfig-r17 OPTIONAL, -- Cond TCI_ActivatedConfig
+ directionalCollisionHandling-DC-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ lte-NeighCellsCRS-AssistInfoList-r17 CHOICE {release NULL, setup LTE-NeighCellsCRS-AssistInfoList-r17 } OPTIONAL -- Need M
+ ]],
+ [[
+ lte-NeighCellsCRS-Assumptions-r17 ENUMERATED {false} OPTIONAL -- Need R
+ ]],
+ [[
+ crossCarrierSchedulingConfigRelease-r17 ENUMERATED {true} OPTIONAL -- Need N
+ ]],
+ [[
+ multiPDSCH-PerSlotType1-CB-r17 ENUMERATED {enabled, disabled} OPTIONAL -- Need R
]]
}
@@ -7474,6 +10351,17 @@ UplinkTxSwitching-r16 ::= SEQUENCE {
uplinkTxSwitchingCarrier-r16 ENUMERATED {carrier1, carrier2}
}
+MIMOParam-r17 ::= SEQUENCE {
+ additionalPCI-ToAddModList-r17 SEQUENCE (SIZE(1..maxNrofAdditionalPCI-r17)) OF SSB-MTC-AdditionalPCI-r17 OPTIONAL, -- Need N
+ additionalPCI-ToReleaseList-r17 SEQUENCE (SIZE(1..maxNrofAdditionalPCI-r17)) OF AdditionalPCIIndex-r17 OPTIONAL, -- Need N
+ unifiedTCI-StateType-r17 ENUMERATED {separate, joint} OPTIONAL, -- Need R
+ uplink-PowerControlToAddModList-r17 SEQUENCE (SIZE (1..maxUL-TCI-r17)) OF Uplink-powerControl-r17 OPTIONAL, -- Need N
+ uplink-PowerControlToReleaseList-r17 SEQUENCE (SIZE (1..maxUL-TCI-r17)) OF Uplink-powerControlId-r17 OPTIONAL, -- Need N
+ sfnSchemePDCCH-r17 ENUMERATED {sfnSchemeA,sfnSchemeB} OPTIONAL, -- Need R
+ sfnSchemePDSCH-r17 ENUMERATED {sfnSchemeA,sfnSchemeB} OPTIONAL -- Need R
+
+}
+
-- TAG-SERVINGCELLCONFIG-STOP
-- TAG-SERVINGCELLCONFIGCOMMON-START
@@ -7505,6 +10393,26 @@ ServingCellConfigCommon ::= SEQUENCE {
discoveryBurstWindowLength-r16 ENUMERATED {ms0dot5, ms1, ms2, ms3, ms4, ms5} OPTIONAL, -- Need R
ssb-PositionQCL-r16 SSB-PositionQCL-Relation-r16 OPTIONAL, -- Cond SharedSpectrum
highSpeedConfig-r16 HighSpeedConfig-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ highSpeedConfig-v1700 HighSpeedConfig-v1700 OPTIONAL, -- Need R
+ channelAccessMode2-r17 ENUMERATED {enabled} OPTIONAL, -- Cond SharedSpectrum2
+ discoveryBurstWindowLength-r17 ENUMERATED {ms0dot125, ms0dot25, ms0dot5, ms0dot75, ms1, ms1dot25} OPTIONAL, -- Need R
+ ssb-PositionQCL-r17 SSB-PositionQCL-Relation-r17 OPTIONAL, -- Cond SharedSpectrum2
+ highSpeedConfigFR2-r17 HighSpeedConfigFR2-r17 OPTIONAL, -- Need R
+ uplinkConfigCommon-v1700 UplinkConfigCommon-v1700 OPTIONAL, -- Need R
+ ntn-Config-r17 NTN-Config-r17 OPTIONAL -- Need R
+ ]],
+ [[
+ featurePriorities-r17 SEQUENCE {
+ redCapPriority-r17 FeaturePriority-r17 OPTIONAL, -- Need R
+ slicingPriority-r17 FeaturePriority-r17 OPTIONAL, -- Need R
+ msg3-Repetitions-Priority-r17 FeaturePriority-r17 OPTIONAL, -- Need R
+ sdt-Priority-r17 FeaturePriority-r17 OPTIONAL -- Need R
+ } OPTIONAL -- Need R
+ ]],
+ [[
+ ra-ChannelAccess-r17 ENUMERATED {enabled} OPTIONAL -- Cond SharedSpectrum2
]]
}
@@ -7531,6 +10439,22 @@ ServingCellConfigCommonSIB ::= SEQUENCE {
} OPTIONAL, -- Cond SharedSpectrum
discoveryBurstWindowLength-r16 ENUMERATED {ms0dot5, ms1, ms2, ms3, ms4, ms5} OPTIONAL, -- Need R
highSpeedConfig-r16 HighSpeedConfig-r16 OPTIONAL -- Need R
+ ]],
+ [[
+ channelAccessMode2-r17 ENUMERATED {enabled} OPTIONAL, -- Cond SharedSpectrum2
+ discoveryBurstWindowLength-v1700 ENUMERATED {ms0dot125, ms0dot25, ms0dot5, ms0dot75, ms1, ms1dot25} OPTIONAL, -- Need R
+ highSpeedConfigFR2-r17 HighSpeedConfigFR2-r17 OPTIONAL, -- Need R
+ uplinkConfigCommon-v1700 UplinkConfigCommonSIB-v1700 OPTIONAL -- Need R
+ ]],
+ [[
+ enhancedMeasurementLEO-r17 ENUMERATED {true} OPTIONAL -- Need R
+ ]],
+ [[
+ ra-ChannelAccess-r17 ENUMERATED {enabled} OPTIONAL -- Cond SharedSpectrum2
+ ]],
+ [[
+ downlinkConfigCommon-v1760 DownlinkConfigCommonSIB-v1760 OPTIONAL, -- Need R
+ uplinkConfigCommon-v1760 UplinkConfigCommonSIB-v1760 OPTIONAL -- Need R
]]
}
@@ -7550,9 +10474,9 @@ ShortMAC-I ::= BIT STRING (SIZE (16))
SINR-Range ::= INTEGER(0..127)
-- TAG-SINR-RANGE-STOP
--- TAG–SI-REQUESTCONFIG-START
+-- TAG-SI-REQUESTCONFIG-START
-SI-RequestConfig::= SEQUENCE {
+SI-RequestConfig ::= SEQUENCE {
rach-OccasionsSI SEQUENCE {
rach-ConfigSI RACH-ConfigGeneric,
ssb-perRACH-Occasion ENUMERATED {oneEighth, oneFourth, oneHalf, one, two, four, eight, sixteen}
@@ -7567,14 +10491,15 @@ SI-RequestResources ::= SEQUENCE {
ra-ssb-OccasionMaskIndex INTEGER (0..15) OPTIONAL -- Need R
}
--- TAG–SI-SCHEDULINGINFO-START
+-- TAG-SI-REQUESTCONFIG-STOP
+-- TAG-SI-SCHEDULINGINFO-START
SI-SchedulingInfo ::= SEQUENCE {
schedulingInfoList SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo,
- si-WindowLength ENUMERATED {s5, s10, s20, s40, s80, s160, s320, s640, s1280},
+ si-WindowLength ENUMERATED {s5, s10, s20, s40, s80, s160, s320, s640, s1280, s2560-v1710, s5120-v1710 },
si-RequestConfig SI-RequestConfig OPTIONAL, -- Cond MSG-1
si-RequestConfigSUL SI-RequestConfig OPTIONAL, -- Cond SUL-MSG-1
- systemInformationAreaID BIT STRING (SIZE (24)) OPTIONAL, -- Need R
+ systemInformationAreaID BIT STRING (SIZE (24)) OPTIONAL, -- Need R
...
}
@@ -7584,14 +10509,50 @@ SchedulingInfo ::= SEQUENCE {
sib-MappingInfo SIB-Mapping
}
+SI-SchedulingInfo-v1700 ::= SEQUENCE {
+ schedulingInfoList2-r17 SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo2-r17,
+ dummy SI-RequestConfig OPTIONAL
+}
+
+SI-SchedulingInfo-v1740 ::= SEQUENCE {
+ si-RequestConfigRedCap-r17 SI-RequestConfig OPTIONAL -- Cond REDCAP-MSG-1
+}
+
+SchedulingInfo2-r17 ::= SEQUENCE {
+ si-BroadcastStatus-r17 ENUMERATED {broadcasting, notBroadcasting},
+ si-WindowPosition-r17 INTEGER (1..256),
+ si-Periodicity-r17 ENUMERATED {rf8, rf16, rf32, rf64, rf128, rf256, rf512},
+ sib-MappingInfo-r17 SIB-Mapping-v1700
+}
+
SIB-Mapping ::= SEQUENCE (SIZE (1..maxSIB)) OF SIB-TypeInfo
+SIB-Mapping-v1700 ::= SEQUENCE (SIZE (1..maxSIB)) OF SIB-TypeInfo-v1700
+
SIB-TypeInfo ::= SEQUENCE {
type ENUMERATED {sibType2, sibType3, sibType4, sibType5, sibType6, sibType7, sibType8, sibType9,
- sibType10-v1610, sibType11-v1610, sibType12-v1610, sibType13-v1610, sibType14-v1610,
- spare3, spare2, spare1,... },
- valueTag INTEGER (0..31) OPTIONAL, -- Cond SIB-TYPE
- areaScope ENUMERATED {true} OPTIONAL -- Need S
+ sibType10-v1610, sibType11-v1610, sibType12-v1610, sibType13-v1610,
+ sibType14-v1610, spare3, spare2, spare1,... },
+ valueTag INTEGER (0..31) OPTIONAL, -- Cond SIB-TYPE
+ areaScope ENUMERATED {true} OPTIONAL -- Need S
+}
+
+SIB-TypeInfo-v1700 ::= SEQUENCE {
+ sibType-r17 CHOICE {
+ type1-r17 ENUMERATED {sibType15, sibType16, sibType17, sibType18, sibType19, sibType20, sibType21,
+ spare9, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1,...},
+ type2-r17 SEQUENCE {
+ posSibType-r17 ENUMERATED {posSibType1-9, posSibType1-10, posSibType2-24, posSibType2-25,
+ posSibType6-4, posSibType6-5, posSibType6-6, posSibType2-17a-v1770,
+ posSibType2-18a-v1770, posSibType2-20a-v1770, spare6,
+ spare5, spare4, spare3, spare2, spare1,...},
+ encrypted-r17 ENUMERATED { true } OPTIONAL, -- Need R
+ gnss-id-r17 GNSS-ID-r16 OPTIONAL, -- Need R
+ sbas-id-r17 SBAS-ID-r16 OPTIONAL -- Cond GNSS-ID-SBAS
+ }
+ },
+ valueTag-r17 INTEGER (0..31) OPTIONAL, -- Cond NonPosSIB
+ areaScope-r17 ENUMERATED {true} OPTIONAL -- Need S
}
-- TAG-SI-SCHEDULINGINFO-STOP
@@ -7646,17 +10607,28 @@ SlotFormatIndicator ::= SEQUENCE {
SearchSpaceSwitchTrigger-r16 OPTIONAL, -- Need N
switchTriggerToReleaseListSizeExt-r16 SEQUENCE (SIZE(1.. maxNrofAggregatedCellsPerCellGroupMinus4-r16)) OF
ServCellIndex OPTIONAL -- Need N
+ ]],
+ [[
+ co-DurationsPerCellToAddModList-r17 SEQUENCE (SIZE(1..maxNrofAggregatedCellsPerCellGroup)) OF CO-DurationsPerCell-r17 OPTIONAL -- Need N
]]
}
CO-DurationsPerCell-r16 ::= SEQUENCE {
- servingCellId-r16 ServCellIndex,
- positionInDCI-r16 INTEGER(0..maxSFI-DCI-PayloadSize-1),
- subcarrierSpacing-r16 SubcarrierSpacing,
- co-DurationList-r16 SEQUENCE (SIZE(1..64)) OF CO-Duration-r16
+ servingCellId-r16 ServCellIndex,
+ positionInDCI-r16 INTEGER(0..maxSFI-DCI-PayloadSize-1),
+ subcarrierSpacing-r16 SubcarrierSpacing,
+ co-DurationList-r16 SEQUENCE (SIZE(1..64)) OF CO-Duration-r16
+}
+
+CO-DurationsPerCell-r17 ::= SEQUENCE {
+ servingCellId-r17 ServCellIndex,
+ positionInDCI-r17 INTEGER(0..maxSFI-DCI-PayloadSize-1),
+ subcarrierSpacing-r17 SubcarrierSpacing,
+ co-DurationList-r17 SEQUENCE (SIZE(1..64)) OF CO-Duration-r17
}
CO-Duration-r16 ::= INTEGER (0..1120)
+CO-Duration-r17 ::= INTEGER (0..4480)
AvailableRB-SetsPerCell-r16 ::= SEQUENCE {
servingCellId-r16 ServCellIndex,
@@ -7690,15 +10662,22 @@ SPS-Config ::= SEQUENCE {
periodicity ENUMERATED {ms10, ms20, ms32, ms40, ms64, ms80, ms128, ms160, ms320, ms640,
spare6, spare5, spare4, spare3, spare2, spare1},
nrofHARQ-Processes INTEGER (1..8),
- n1PUCCH-AN PUCCH-ResourceId OPTIONAL, -- Need M
- mcs-Table ENUMERATED {qam64LowSE} OPTIONAL, -- Need S
+ n1PUCCH-AN PUCCH-ResourceId OPTIONAL, -- Need M
+ mcs-Table ENUMERATED {qam64LowSE} OPTIONAL, -- Need S
...,
[[
- sps-ConfigIndex-r16 SPS-ConfigIndex-r16 OPTIONAL, -- Cond SPS-List
- harq-ProcID-Offset-r16 INTEGER (0..15) OPTIONAL, -- Need R
- periodicityExt-r16 INTEGER (1..5120) OPTIONAL, -- Need R
- harq-CodebookID-r16 INTEGER (1..2) OPTIONAL, -- Need R
- pdsch-AggregationFactor-r16 ENUMERATED {n1, n2, n4, n8 } OPTIONAL -- Need S
+ sps-ConfigIndex-r16 SPS-ConfigIndex-r16 OPTIONAL, -- Cond SPS-List
+ harq-ProcID-Offset-r16 INTEGER (0..15) OPTIONAL, -- Need R
+ periodicityExt-r16 INTEGER (1..5120) OPTIONAL, -- Need R
+ harq-CodebookID-r16 INTEGER (1..2) OPTIONAL, -- Need R
+ pdsch-AggregationFactor-r16 ENUMERATED {n1, n2, n4, n8 } OPTIONAL -- Need S
+ ]],
+ [[
+ sps-HARQ-Deferral-r17 INTEGER (1..32) OPTIONAL, -- Need R
+ n1PUCCH-AN-PUCCHsSCell-r17 PUCCH-ResourceId OPTIONAL, -- Need R
+ periodicityExt-r17 INTEGER (1..40960) OPTIONAL, -- Need R
+ nrofHARQ-Processes-v1710 INTEGER(9..32) OPTIONAL, -- Need R
+ harq-ProcID-Offset-v1700 INTEGER (16..31) OPTIONAL -- Need R
]]
}
@@ -7725,6 +10704,8 @@ SPS-PUCCH-AN-List-r16 ::= SEQUENCE (SIZE(1..4)) OF SPS-PUCCH-AN-r16
SRB-Identity ::= INTEGER (1..3)
+SRB-Identity-v1700 ::= INTEGER (4)
+
-- TAG-SRB-IDENTITY-STOP
-- TAG-SRS-CARRIERSWITCHING-START
@@ -7752,11 +10733,11 @@ SRS-CC-SetIndex ::= SEQUENCE {
-- TAG-SRS-CONFIG-START
SRS-Config ::= SEQUENCE {
- srs-ResourceSetToReleaseList SEQUENCE (SIZE(1..maxNrofSRS-ResourceSets)) OF SRS-ResourceSetId OPTIONAL, -- Need N
- srs-ResourceSetToAddModList SEQUENCE (SIZE(1..maxNrofSRS-ResourceSets)) OF SRS-ResourceSet OPTIONAL, -- Need N
- srs-ResourceToReleaseList SEQUENCE (SIZE(1..maxNrofSRS-Resources)) OF SRS-ResourceId OPTIONAL, -- Need N
- srs-ResourceToAddModList SEQUENCE (SIZE(1..maxNrofSRS-Resources)) OF SRS-Resource OPTIONAL, -- Need N
- tpc-Accumulation ENUMERATED {disabled} OPTIONAL, -- Need S
+ srs-ResourceSetToReleaseList SEQUENCE (SIZE(1..maxNrofSRS-ResourceSets)) OF SRS-ResourceSetId OPTIONAL, -- Need N
+ srs-ResourceSetToAddModList SEQUENCE (SIZE(1..maxNrofSRS-ResourceSets)) OF SRS-ResourceSet OPTIONAL, -- Need N
+ srs-ResourceToReleaseList SEQUENCE (SIZE(1..maxNrofSRS-Resources)) OF SRS-ResourceId OPTIONAL, -- Need N
+ srs-ResourceToAddModList SEQUENCE (SIZE(1..maxNrofSRS-Resources)) OF SRS-Resource OPTIONAL, -- Need N
+ tpc-Accumulation ENUMERATED {disabled} OPTIONAL, -- Need S
...,
[[
srs-RequestDCI-1-2-r16 INTEGER (1..2) OPTIONAL, -- Need S
@@ -7802,9 +10783,16 @@ SRS-ResourceSet ::= SEQUENCE {
...,
[[
pathlossReferenceRSList-r16 CHOICE {release NULL, setup PathlossReferenceRSList-r16} OPTIONAL -- Need M
+ ]],
+ [[
+ usagePDC-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ availableSlotOffsetList-r17 SEQUENCE (SIZE(1..4)) OF AvailableSlotOffset-r17 OPTIONAL, -- Need R
+ followUnifiedTCI-StateSRS-r17 ENUMERATED {enabled} OPTIONAL -- Need R
]]
}
+AvailableSlotOffset-r17 ::= INTEGER (0..7)
+
PathlossReferenceRS-Config ::= CHOICE {
ssb-Index SSB-Index,
csi-RS-Index NZP-CSI-RS-ResourceId
@@ -7899,8 +10887,36 @@ SRS-Resource ::= SEQUENCE {
nrofSymbols-r16 ENUMERATED {n1, n2, n4},
repetitionFactor-r16 ENUMERATED {n1, n2, n4}
} OPTIONAL -- Need R
+ ]],
+ [[
+ spatialRelationInfo-PDC-r17 CHOICE {release NULL, setup SpatialRelationInfo-PDC-r17 } OPTIONAL, -- Need M
+ resourceMapping-r17 SEQUENCE {
+ startPosition-r17 INTEGER (0..13),
+ nrofSymbols-r17 ENUMERATED {n1, n2, n4, n8, n10, n12, n14},
+ repetitionFactor-r17 ENUMERATED {n1, n2, n4, n5, n6, n7, n8, n10, n12, n14}
+ } OPTIONAL, -- Need R
+ partialFreqSounding-r17 SEQUENCE {
+ startRBIndexFScaling-r17 CHOICE{
+ startRBIndexAndFreqScalingFactor2-r17 INTEGER (0..1),
+ startRBIndexAndFreqScalingFactor4-r17 INTEGER (0..3)
+ },
+ enableStartRBHopping-r17 ENUMERATED {enable} OPTIONAL -- Need R
+ } OPTIONAL, -- Need R
+ transmissionComb-n8-r17 SEQUENCE {
+ combOffset-n8-r17 INTEGER (0..7),
+ cyclicShift-n8-r17 INTEGER (0..5)
+ } OPTIONAL, -- Need R
+ srs-TCI-State-r17 CHOICE {
+ srs-UL-TCI-State TCI-UL-StateId-r17,
+ srs-DLorJointTCI-State TCI-StateId
+ } OPTIONAL -- Need R
+ ]],
+ [[
+ repetitionFactor-v1730 ENUMERATED {n3} OPTIONAL, -- Need R
+ srs-DLorJointTCI-State-v1730 SEQUENCE {
+ cellAndBWP-r17 ServingCellAndBWP-Id-r17
+ } OPTIONAL -- Cond DLorJointTCI-SRS
]]
-
}
SRS-PosResource-r16::= SEQUENCE {
@@ -7937,11 +10953,17 @@ SRS-PosResource-r16::= SEQUENCE {
},
semi-persistent-r16 SEQUENCE {
periodicityAndOffset-sp-r16 SRS-PeriodicityAndOffset-r16,
- ...
+ ...,
+ [[
+ periodicityAndOffset-sp-Ext-r16 SRS-PeriodicityAndOffsetExt-r16 OPTIONAL -- Need R
+ ]]
},
periodic-r16 SEQUENCE {
periodicityAndOffset-p-r16 SRS-PeriodicityAndOffset-r16,
- ...
+ ...,
+ [[
+ periodicityAndOffset-p-Ext-r16 SRS-PeriodicityAndOffsetExt-r16 OPTIONAL -- Need R
+ ]]
}
},
sequenceId-r16 INTEGER (0..65535),
@@ -8053,6 +11075,27 @@ SRS-PeriodicityAndOffset-r16 ::= CHOICE {
...
}
+SRS-PeriodicityAndOffsetExt-r16 ::= CHOICE {
+ sl128 INTEGER(0..127),
+ sl256 INTEGER(0..255),
+ sl512 INTEGER(0..511),
+ sl20480 INTEGER(0..20479)
+}
+
+SpatialRelationInfo-PDC-r17 ::= SEQUENCE {
+ referenceSignal CHOICE {
+ ssb-Index SSB-Index,
+ csi-RS-Index NZP-CSI-RS-ResourceId,
+ dl-PRS-PDC NR-DL-PRS-ResourceID-r17,
+ srs SEQUENCE {
+ resourceId SRS-ResourceId,
+ uplinkBWP BWP-Id
+ },
+ ...
+ },
+ ...
+}
+
-- TAG-SRS-CONFIG-STOP
-- TAG-SRS-RSRP-RANGE-START
@@ -8117,12 +11160,32 @@ SSB-MTC3-r16 ::= SEQUENCE {
ssb-ToMeasure-r16 CHOICE {release NULL, setup SSB-ToMeasure } OPTIONAL -- Need M
}
+SSB-MTC4-r17 ::= SEQUENCE {
+ pci-List-r17 SEQUENCE (SIZE (1..maxNrofPCIsPerSMTC)) OF PhysCellId OPTIONAL, -- Need M
+ offset-r17 INTEGER (0..159)
+}
+
+SSB-MTC-AdditionalPCI-r17 ::= SEQUENCE {
+ additionalPCIIndex-r17 AdditionalPCIIndex-r17,
+ additionalPCI-r17 PhysCellId,
+ periodicity-r17 ENUMERATED { ms5, ms10, ms20, ms40, ms80, ms160, spare2, spare1 },
+ ssb-PositionsInBurst-r17 CHOICE {
+ shortBitmap BIT STRING (SIZE (4)),
+ mediumBitmap BIT STRING (SIZE (8)),
+ longBitmap BIT STRING (SIZE (64))
+ },
+ ss-PBCH-BlockPower-r17 INTEGER (-60..50)
+}
+
+AdditionalPCIIndex-r17 ::= INTEGER(1..maxNrofAdditionalPCI-r17)
-- TAG-SSB-MTC-STOP
-- TAG-SSB-POSITIONQCL-RELATION-START
SSB-PositionQCL-Relation-r16 ::= ENUMERATED {n1,n2,n4,n8}
+SSB-PositionQCL-Relation-r17 ::= ENUMERATED {n32, n64}
+
-- TAG-SSB-POSITIONQCL-RELATION-STOP
-- TAG-SSB-TOMEASURE-START
@@ -8143,7 +11206,7 @@ SS-RSSI-Measurement ::= SEQUENCE {
-- TAG-SS-RSSI-MEASUREMENT-STOP
-- TAG-SUBCARRIERSPACING-START
-SubcarrierSpacing ::= ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, spare3, spare2, spare1}
+SubcarrierSpacing ::= ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, kHz480-v1700, kHz960-v1700, spare1}
-- TAG-SUBCARRIERSPACING-STOP
-- TAG-TAG-CONFIG-START
@@ -8161,16 +11224,39 @@ TAG ::= SEQUENCE {
TAG-Id ::= INTEGER (0..maxNrofTAGs-1)
-TimeAlignmentTimer ::= ENUMERATED {ms500, ms750, ms1280, ms1920, ms2560, ms5120, ms10240, infinity}
-
-- TAG-TAG-CONFIG-STOP
+-- TAG-TAR-CONFIG-START
+
+TAR-Config-r17 ::= SEQUENCE {
+ offsetThresholdTA-r17 ENUMERATED {ms0dot5, ms1, ms2, ms3, ms4, ms5, ms6 ,ms7, ms8, ms9, ms10, ms11, ms12,
+ ms13, ms14, ms15, spare13, spare12, spare11, spare10, spare9, spare8, spare7,
+ spare6, spare5, spare4, spare3, spare2, spare1} OPTIONAL, -- Need R
+ timingAdvanceSR-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ ...
+}
+
+-- TAG-TAR-CONFIG-STOP
+-- TAG-TCI-ACTIVATEDCONFIG-START
+
+TCI-ActivatedConfig-r17 ::= SEQUENCE {
+ pdcch-TCI-r17 SEQUENCE (SIZE (1..5)) OF TCI-StateId,
+ pdsch-TCI-r17 BIT STRING (SIZE (1..maxNrofTCI-States))
+}
+
+-- TAG-TCI-ACTIVATEDCONFIG-STOP
-- TAG-TCI-STATE-START
TCI-State ::= SEQUENCE {
tci-StateId TCI-StateId,
qcl-Type1 QCL-Info,
qcl-Type2 QCL-Info OPTIONAL, -- Need R
- ...
+ ...,
+ [[
+ additionalPCI-r17 AdditionalPCIIndex-r17 OPTIONAL, -- Need R
+ pathlossReferenceRS-Id-r17 PathlossReferenceRS-Id-r17 OPTIONAL, -- Cond JointTCI1
+ ul-powerControl-r17 Uplink-powerControlId-r17 OPTIONAL -- Cond JointTCI
+ ]]
+
}
QCL-Info ::= SEQUENCE {
@@ -8190,6 +11276,29 @@ QCL-Info ::= SEQUENCE {
TCI-StateId ::= INTEGER (0..maxNrofTCI-States-1)
-- TAG-TCI-STATEID-STOP
+-- TAG-TCI-UL-STATE-START
+
+TCI-UL-State-r17 ::= SEQUENCE {
+ tci-UL-StateId-r17 TCI-UL-StateId-r17,
+ servingCellId-r17 ServCellIndex OPTIONAL, -- Need R
+ bwp-Id-r17 BWP-Id OPTIONAL, -- Cond CSI-RSorSRS-Indicated
+ referenceSignal-r17 CHOICE {
+ ssb-Index-r17 SSB-Index,
+ csi-RS-Index-r17 NZP-CSI-RS-ResourceId,
+ srs-r17 SRS-ResourceId
+ },
+ additionalPCI-r17 AdditionalPCIIndex-r17 OPTIONAL, -- Need R
+ ul-powerControl-r17 Uplink-powerControlId-r17 OPTIONAL, -- Need R
+ pathlossReferenceRS-Id-r17 PathlossReferenceRS-Id-r17 OPTIONAL, -- Cond Mandatory
+ ...
+}
+
+-- TAG-TCI-UL-STATE-STOP
+-- TAG-TCI-UL-STATEID-START
+
+TCI-UL-StateId-r17 ::= INTEGER (0..maxUL-TCI-1-r17)
+
+-- TAG-TCI-UL-STATEID-STOP
-- TAG-TDD-UL-DL-CONFIGCOMMON-START
TDD-UL-DL-ConfigCommon ::= SEQUENCE {
@@ -8267,6 +11376,11 @@ TrackingAreaCode ::= BIT STRING (SIZE (24))
T-Reselection ::= INTEGER (0..7)
-- TAG-TRESELECTION-STOP
+-- TAG-TIMEALIGNMENTTIMER-START
+
+TimeAlignmentTimer ::= ENUMERATED {ms500, ms750, ms1280, ms1920, ms2560, ms5120, ms10240, infinity}
+
+-- TAG-TIMEALIGNMENTTIMER-STOP
-- TAG-TIMETOTRIGGER-START
TimeToTrigger ::= ENUMERATED {
@@ -8284,6 +11398,8 @@ UAC-BarringInfoSetIndex ::= INTEGER (1..maxBarringInfoSet)
UAC-BarringInfoSetList ::= SEQUENCE (SIZE(1..maxBarringInfoSet)) OF UAC-BarringInfoSet
+UAC-BarringInfoSetList-v1700 ::= SEQUENCE (SIZE(1..maxBarringInfoSet)) OF UAC-BarringInfoSet-v1700
+
UAC-BarringInfoSet ::= SEQUENCE {
uac-BarringFactor ENUMERATED {p00, p05, p10, p15, p20, p25, p30, p40,
p50, p60, p70, p75, p80, p85, p90, p95},
@@ -8291,6 +11407,11 @@ UAC-BarringInfoSet ::= SEQUENCE {
uac-BarringForAccessIdentity BIT STRING (SIZE(7))
}
+UAC-BarringInfoSet-v1700 ::= SEQUENCE {
+ uac-BarringFactorForAI3-r17 ENUMERATED {p00, p05, p10, p15, p20, p25, p30, p40, p50, p60, p70, p75, p80, p85, p90, p95}
+ OPTIONAL -- Need S
+}
+
-- TAG-UAC-BARRINGINFOSETLIST-STOP
-- TAG-UAC-BARRINGPERCATLIST-START
@@ -8329,13 +11450,46 @@ UE-TimersAndConstants ::= SEQUENCE {
}
-- TAG-UE-TIMERSANDCONSTANTS-STOP
+-- TAG-UE-TIMERSANDCONSTANTSREMOTEUE-START
+
+UE-TimersAndConstantsRemoteUE-r17 ::= SEQUENCE {
+ t300-RemoteUE-r17 ENUMERATED {ms100, ms200, ms300, ms400, ms600, ms1000, ms1500, ms2000} OPTIONAL, -- Need S
+ t301-RemoteUE-r17 ENUMERATED {ms100, ms200, ms300, ms400, ms600, ms1000, ms1500, ms2000} OPTIONAL, -- Need S
+ t319-RemoteUE-r17 ENUMERATED {ms100, ms200, ms300, ms400, ms600, ms1000, ms1500, ms2000} OPTIONAL, -- Need S
+ ...
+}
+
+-- TAG-UE-TIMERSANDCONSTANTSREMOTEUE-STOP
-- TAG-ULDELAYVALUECONFIG-START
UL-DelayValueConfig-r16 ::= SEQUENCE {
- delay-DRBlist SEQUENCE (SIZE(1..maxDRB)) OF DRB-Identity
+ delay-DRBlist-r16 SEQUENCE (SIZE(1..maxDRB)) OF DRB-Identity
}
-- TAG-ULDELAYVALUECONFIG-STOP
+-- TAG-ULEXCESSDELAYCONFIG-START
+
+UL-ExcessDelayConfig-r17 ::= SEQUENCE {
+ excessDelay-DRBlist-r17 SEQUENCE (SIZE(1..maxDRB)) OF ExcessDelay-DRB-IdentityInfo-r17
+}
+
+ExcessDelay-DRB-IdentityInfo-r17 ::= SEQUENCE {
+ drb-IdentityList SEQUENCE (SIZE (1..maxDRB)) OF DRB-Identity,
+ delayThreshold ENUMERATED {ms0dot25, ms0dot5, ms1, ms2, ms4, ms5, ms10, ms20, ms30, ms40, ms50, ms60, ms70,
+ ms80, ms90, ms100, ms150, ms300, ms500}
+}
+
+-- TAG-ULEXCESSDELAYCONFIG-STOP
+-- TAG-UL-GAPFR2-CONFIG-START
+
+UL-GapFR2-Config-r17 ::= SEQUENCE {
+ gapOffset-r17 INTEGER (0..159),
+ ugl-r17 ENUMERATED {ms0dot125, ms0dot25, ms0dot5, ms1},
+ ugrp-r17 ENUMERATED {ms5, ms20, ms40, ms160},
+ refFR2-ServCellAsyncCA-r17 ServCellIndex OPTIONAL -- Cond AsyncCA
+}
+
+-- TAG-UL-GAPFR2-CONFIG-STOP
-- TAG-UPLINKCANCELLATION-START
UplinkCancellation-r16 ::= SEQUENCE {
@@ -8369,6 +11523,10 @@ UplinkConfigCommon ::= SEQUENCE {
dummy TimeAlignmentTimer
}
+UplinkConfigCommon-v1700 ::= SEQUENCE {
+ initialUplinkBWP-RedCap-r17 BWP-UplinkCommon OPTIONAL -- Need R
+}
+
-- TAG-UPLINKCONFIGCOMMON-STOP
-- TAG-UPLINKCONFIGCOMMONSIB-START
@@ -8378,7 +11536,50 @@ UplinkConfigCommonSIB ::= SEQUENCE {
timeAlignmentTimerCommon TimeAlignmentTimer
}
+UplinkConfigCommonSIB-v1700 ::= SEQUENCE {
+ initialUplinkBWP-RedCap-r17 BWP-UplinkCommon OPTIONAL -- Need R
+}
+
+UplinkConfigCommonSIB-v1760 ::= SEQUENCE {
+ frequencyInfoUL-v1760 FrequencyInfoUL-SIB-v1760
+}
+
-- TAG-UPLINKCONFIGCOMMONSIB-STOP
+-- TAG-UPLINK-POWERCONTROL-START
+
+Uplink-powerControl-r17 ::= SEQUENCE {
+ ul-powercontrolId-r17 Uplink-powerControlId-r17,
+ p0AlphaSetforPUSCH-r17 P0AlphaSet-r17 OPTIONAL, -- Need R
+ p0AlphaSetforPUCCH-r17 P0AlphaSet-r17 OPTIONAL, -- Need R
+ p0AlphaSetforSRS-r17 P0AlphaSet-r17 OPTIONAL -- Need R
+}
+
+P0AlphaSet-r17 ::= SEQUENCE {
+ p0-r17 INTEGER (-16..15) OPTIONAL, -- Need R
+ alpha-r17 Alpha OPTIONAL, -- Need S
+ closedLoopIndex-r17 ENUMERATED { i0, i1 }
+}
+
+Uplink-powerControlId-r17 ::= INTEGER(1.. maxUL-TCI-r17)
+
+-- TAG-UPLINK-POWERCONTROL-STOP
+-- TAG-UU-RELAYRLC-CHANNELCONFIG-START
+
+Uu-RelayRLC-ChannelConfig-r17::= SEQUENCE {
+ uu-LogicalChannelIdentity-r17 LogicalChannelIdentity OPTIONAL, -- Cond RelayLCH-SetupOnly
+ uu-RelayRLC-ChannelID-r17 Uu-RelayRLC-ChannelID-r17,
+ reestablishRLC-r17 ENUMERATED {true} OPTIONAL, -- Need N
+ rlc-Config-r17 RLC-Config OPTIONAL, -- Cond RelayLCH-Setup
+ mac-LogicalChannelConfig-r17 LogicalChannelConfig OPTIONAL, -- Cond RelayLCH-Setup
+ ...
+}
+
+-- TAG-UU-RELAYRLC-CHANNELCONFIG-STOP
+-- TAG-UU-RELAYRLC-CHANNELID-START
+
+Uu-RelayRLC-ChannelID-r17 ::= INTEGER (1..maxLC-ID)
+
+-- TAG-UU-RELAYRLC-CHANNELID-STOP
-- TAG-UPLINKTXDIRECTCURRENTLIST-START
UplinkTxDirectCurrentList ::= SEQUENCE (SIZE (1..maxNrofServingCells)) OF UplinkTxDirectCurrentCell
@@ -8399,6 +11600,35 @@ UplinkTxDirectCurrentBWP ::= SEQUENCE {
}
-- TAG-UPLINKTXDIRECTCURRENTLIST-STOP
+-- TAG-UPLINKTXDIRECTCURRENTMORECARRIERLIST-START
+
+UplinkTxDirectCurrentMoreCarrierList-r17 ::= SEQUENCE (SIZE (1..maxNrofCC-Group-r17)) OF CC-Group-r17
+
+CC-Group-r17 ::= SEQUENCE {
+ servCellIndexLower-r17 ServCellIndex,
+ servCellIndexHigher-r17 ServCellIndex OPTIONAL,
+ defaultDC-Location-r17 DefaultDC-Location-r17,
+ offsetToDefault-r17 CHOICE{
+ offsetValue OffsetValue-r17,
+ offsetlist SEQUENCE (SIZE(1..maxNrofReqComDC-Location-r17)) OF OffsetValue-r17
+ } OPTIONAL
+}
+
+
+OffsetValue-r17::= SEQUENCE {
+ offsetValue-r17 INTEGER (-20000.. 20000),
+ shift7dot5kHz-r17 BOOLEAN
+}
+
+DefaultDC-Location-r17 ::= CHOICE {
+ ul FrequencyComponent-r17,
+ dl FrequencyComponent-r17,
+ ulAndDL FrequencyComponent-r17
+}
+
+FrequencyComponent-r17 ::= ENUMERATED {activeCarrier,configuredCarrier,activeBWP,configuredBWP}
+
+-- TAG-UPLINKTXDIRECTCURRENTMORECARRIERLIST-STOP
-- TAG-UPLINKTXDIRECTCURRENTTWOCARRIERLIST-START
UplinkTxDirectCurrentTwoCarrierList-r16 ::= SEQUENCE (SIZE (1..maxNrofTxDC-TwoCarrier-r16)) OF UplinkTxDirectCurrentTwoCarrier-r16
@@ -8454,9 +11684,22 @@ ZP-CSI-RS-ResourceSetId ::= INTEGER (0..maxNrofZP-CSI-RS-Res
-- TAG-ACCESSSTRATUMRELEASE-START
AccessStratumRelease ::= ENUMERATED {
- rel15, rel16, spare6, spare5, spare4, spare3, spare2, spare1, ... }
+ rel15, rel16, rel17, spare5, spare4, spare3, spare2, spare1, ... }
-- TAG-ACCESSSTRATUMRELEASE-STOP
+-- TAG-APPLAYERMEASPARAMETERS-START
+
+AppLayerMeasParameters-r17 ::= SEQUENCE {
+ qoe-Streaming-MeasReport-r17 ENUMERATED {supported} OPTIONAL,
+ qoe-MTSI-MeasReport-r17 ENUMERATED {supported} OPTIONAL,
+ qoe-VR-MeasReport-r17 ENUMERATED {supported} OPTIONAL,
+ ran-VisibleQoE-Streaming-MeasReport-r17 ENUMERATED {supported} OPTIONAL,
+ ran-VisibleQoE-VR-MeasReport-r17 ENUMERATED {supported} OPTIONAL,
+ ul-MeasurementReportAppLayer-Seg-r17 ENUMERATED {supported} OPTIONAL,
+ ...
+}
+
+-- TAG-APPLAYERMEASPARAMETERS-STOP
-- TAG-BANDCOMBINATIONLIST-START
BandCombinationList ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination
@@ -8473,6 +11716,10 @@ BandCombinationList-v1580 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandComb
BandCombinationList-v1590 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1590
+BandCombinationList-v15g0 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v15g0
+
+BandCombinationList-v15n0 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v15n0
+
BandCombinationList-v1610 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1610
BandCombinationList-v1630 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1630
@@ -8481,6 +11728,24 @@ BandCombinationList-v1640 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandComb
BandCombinationList-v1650 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1650
+BandCombinationList-v1680 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1680
+
+BandCombinationList-v1690 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1690
+
+BandCombinationList-v16a0 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v16a0
+
+BandCombinationList-v1700 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1700
+
+BandCombinationList-v1720 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1720
+
+BandCombinationList-v1730 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1730
+
+BandCombinationList-v1740 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1740
+
+BandCombinationList-v1760 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1760
+
+BandCombinationList-v1770 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-v1770
+
BandCombinationList-UplinkTxSwitch-r16 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-r16
BandCombinationList-UplinkTxSwitch-v1630 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1630
@@ -8489,6 +11754,26 @@ BandCombinationList-UplinkTxSwitch-v1640 ::= SEQUENCE (SIZE (1..maxBandComb)) OF
BandCombinationList-UplinkTxSwitch-v1650 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1650
+BandCombinationList-UplinkTxSwitch-v1670 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1670
+
+BandCombinationList-UplinkTxSwitch-v1690 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1690
+
+BandCombinationList-UplinkTxSwitch-v16a0 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v16a0
+
+BandCombinationList-UplinkTxSwitch-v16e0 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v16e0
+
+BandCombinationList-UplinkTxSwitch-v1700 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1700
+
+BandCombinationList-UplinkTxSwitch-v1720 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1720
+
+BandCombinationList-UplinkTxSwitch-v1730 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1730
+
+BandCombinationList-UplinkTxSwitch-v1740 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1740
+
+BandCombinationList-UplinkTxSwitch-v1760 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1760
+
+BandCombinationList-UplinkTxSwitch-v1770 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombination-UplinkTxSwitch-v1770
+
BandCombination ::= SEQUENCE {
bandList SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParameters,
featureSetCombination FeatureSetCombinationId,
@@ -8527,14 +11812,24 @@ BandCombination-v1590::= SEQUENCE {
mrdc-Parameters-v1590 MRDC-Parameters-v1590
}
-BandCombination-v1610 ::= SEQUENCE {
+BandCombination-v15g0::= SEQUENCE {
+ ca-ParametersNR-v15g0 CA-ParametersNR-v15g0 OPTIONAL,
+ ca-ParametersNRDC-v15g0 CA-ParametersNRDC-v15g0 OPTIONAL,
+ mrdc-Parameters-v15g0 MRDC-Parameters-v15g0 OPTIONAL
+}
+
+BandCombination-v15n0::= SEQUENCE {
+ mrdc-Parameters-v15n0 MRDC-Parameters-v15n0
+}
+
+BandCombination-v1610 ::= SEQUENCE {
bandList-v1610 SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParameters-v1610 OPTIONAL,
- ca-ParametersNR-v1610 CA-ParametersNR-v1610 OPTIONAL,
- ca-ParametersNRDC-v1610 CA-ParametersNRDC-v1610 OPTIONAL,
- powerClass-v1610 ENUMERATED {pc1dot5} OPTIONAL,
- powerClassNRPart-r16 ENUMERATED {pc1, pc2, pc3, pc5} OPTIONAL,
- featureSetCombinationDAPS-r16 FeatureSetCombinationId OPTIONAL,
- mrdc-Parameters-v1620 MRDC-Parameters-v1620 OPTIONAL
+ ca-ParametersNR-v1610 CA-ParametersNR-v1610 OPTIONAL,
+ ca-ParametersNRDC-v1610 CA-ParametersNRDC-v1610 OPTIONAL,
+ powerClass-v1610 ENUMERATED {pc1dot5} OPTIONAL,
+ powerClassNRPart-r16 ENUMERATED {pc1, pc2, pc3, pc5} OPTIONAL,
+ featureSetCombinationDAPS-r16 FeatureSetCombinationId OPTIONAL,
+ mrdc-Parameters-v1620 MRDC-Parameters-v1620 OPTIONAL
}
BandCombination-v1630 ::= SEQUENCE {
@@ -8556,6 +11851,52 @@ BandCombination-v1650 ::= SEQUENCE {
ca-ParametersNRDC-v1650 CA-ParametersNRDC-v1650 OPTIONAL
}
+BandCombination-v1680 ::= SEQUENCE {
+ intrabandConcurrentOperationPowerClass-r16 SEQUENCE (SIZE (1..maxBandComb)) OF IntraBandPowerClass-r16 OPTIONAL
+}
+
+BandCombination-v1690 ::= SEQUENCE {
+ ca-ParametersNR-v1690 CA-ParametersNR-v1690 OPTIONAL
+}
+
+BandCombination-v16a0 ::= SEQUENCE {
+ ca-ParametersNR-v16a0 CA-ParametersNR-v16a0 OPTIONAL,
+ ca-ParametersNRDC-v16a0 CA-ParametersNRDC-v16a0 OPTIONAL
+}
+BandCombination-v1700 ::= SEQUENCE {
+ ca-ParametersNR-v1700 CA-ParametersNR-v1700 OPTIONAL,
+ ca-ParametersNRDC-v1700 CA-ParametersNRDC-v1700 OPTIONAL,
+ mrdc-Parameters-v1700 MRDC-Parameters-v1700 OPTIONAL,
+ bandList-v1710 SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParameters-v1710 OPTIONAL,
+ supportedBandCombListPerBC-SL-RelayDiscovery-r17 BIT STRING (SIZE (1..maxBandComb)) OPTIONAL,
+ supportedBandCombListPerBC-SL-NonRelayDiscovery-r17 BIT STRING (SIZE (1..maxBandComb)) OPTIONAL
+}
+
+BandCombination-v1720 ::= SEQUENCE {
+ ca-ParametersNR-v1720 CA-ParametersNR-v1720 OPTIONAL,
+ ca-ParametersNRDC-v1720 CA-ParametersNRDC-v1720 OPTIONAL
+}
+
+BandCombination-v1730 ::= SEQUENCE {
+ ca-ParametersNR-v1730 CA-ParametersNR-v1730 OPTIONAL,
+ ca-ParametersNRDC-v1730 CA-ParametersNRDC-v1730 OPTIONAL,
+ bandList-v1730 SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParameters-v1730 OPTIONAL
+}
+
+BandCombination-v1740 ::= SEQUENCE {
+ ca-ParametersNR-v1740 CA-ParametersNR-v1740 OPTIONAL
+}
+
+BandCombination-v1760 ::= SEQUENCE {
+ ca-ParametersNR-v1760 CA-ParametersNR-v1760,
+ ca-ParametersNRDC-v1760 CA-ParametersNRDC-v1760
+}
+
+BandCombination-v1770::= SEQUENCE {
+ bandList-v1770 SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParameters-v1770,
+ mrdc-Parameters-v1770 MRDC-Parameters-v1770 OPTIONAL,
+ ca-ParametersNR-v1770 CA-ParametersNR-v1770 OPTIONAL}
+
BandCombination-UplinkTxSwitch-r16 ::= SEQUENCE {
bandCombination-r16 BandCombination,
bandCombination-v1540 BandCombination-v1540 OPTIONAL,
@@ -8567,7 +11908,11 @@ BandCombination-UplinkTxSwitch-r16 ::= SEQUENCE {
supportedBandPairListNR-r16 SEQUENCE (SIZE (1..maxULTxSwitchingBandPairs)) OF ULTxSwitchingBandPair-r16,
uplinkTxSwitching-OptionSupport-r16 ENUMERATED {switchedUL, dualUL, both} OPTIONAL,
uplinkTxSwitching-PowerBoosting-r16 ENUMERATED {supported} OPTIONAL,
- ...
+ ...,
+ [[
+ -- R4 16-5 UL-MIMO coherence capability for dynamic Tx switching between 3CC 1Tx-2Tx switching
+ uplinkTxSwitching-PUSCH-TransCoherence-r16 ENUMERATED {nonCoherent, fullCoherent} OPTIONAL
+ ]]
}
BandCombination-UplinkTxSwitch-v1630 ::= SEQUENCE {
@@ -8582,6 +11927,51 @@ BandCombination-UplinkTxSwitch-v1650 ::= SEQUENCE {
bandCombination-v1650 BandCombination-v1650 OPTIONAL
}
+BandCombination-UplinkTxSwitch-v1670 ::= SEQUENCE {
+ bandCombination-v15g0 BandCombination-v15g0 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1690 ::= SEQUENCE {
+ bandCombination-v1690 BandCombination-v1690 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v16a0 ::= SEQUENCE {
+ bandCombination-v16a0 BandCombination-v16a0 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v16e0 ::= SEQUENCE {
+ bandCombination-v15n0 BandCombination-v15n0 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1700 ::= SEQUENCE {
+ bandCombination-v1700 BandCombination-v1700 OPTIONAL,
+ -- R4 16-1/16-2/16-3 Dynamic Tx switching between 2CC/3CC 2Tx-2Tx/1Tx-2Tx switching
+ supportedBandPairListNR-v1700 SEQUENCE (SIZE (1..maxULTxSwitchingBandPairs)) OF ULTxSwitchingBandPair-v1700 OPTIONAL,
+ -- R4 16-6: UL-MIMO coherence capability for dynamic Tx switching between 2Tx-2Tx switching
+ uplinkTxSwitchingBandParametersList-v1700 SEQUENCE (SIZE (1.. maxSimultaneousBands)) OF UplinkTxSwitchingBandParameters-v1700 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1720 ::= SEQUENCE {
+ bandCombination-v1720 BandCombination-v1720 OPTIONAL,
+ uplinkTxSwitching-OptionSupport2T2T-r17 ENUMERATED {switchedUL, dualUL, both} OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1730 ::= SEQUENCE {
+ bandCombination-v1730 BandCombination-v1730 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1740 ::= SEQUENCE {
+ bandCombination-v1740 BandCombination-v1740 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1760 ::= SEQUENCE {
+ bandCombination-v1760 BandCombination-v1760 OPTIONAL
+}
+
+BandCombination-UplinkTxSwitch-v1770 ::= SEQUENCE {
+ bandCombination-v1770 BandCombination-v1770 OPTIONAL
+}
+
ULTxSwitchingBandPair-r16 ::= SEQUENCE {
bandIndexUL1-r16 INTEGER(1..maxSimultaneousBands),
bandIndexUL2-r16 INTEGER(1..maxSimultaneousBands),
@@ -8589,6 +11979,15 @@ ULTxSwitchingBandPair-r16 ::= SEQUENCE {
uplinkTxSwitching-DL-Interruption-r16 BIT STRING (SIZE(1..maxSimultaneousBands)) OPTIONAL
}
+ULTxSwitchingBandPair-v1700 ::= SEQUENCE {
+ uplinkTxSwitchingPeriod2T2T-r17 ENUMERATED {n35us, n140us, n210us} OPTIONAL
+}
+
+UplinkTxSwitchingBandParameters-v1700 ::= SEQUENCE {
+ bandIndex-r17 INTEGER(1..maxSimultaneousBands),
+ uplinkTxSwitching2T2T-PUSCH-TransCoherence-r17 ENUMERATED {nonCoherent, fullCoherent} OPTIONAL
+}
+
BandParameters ::= CHOICE {
eutra SEQUENCE {
bandEUTRA FreqBandIndicatorEUTRA,
@@ -8625,8 +12024,34 @@ BandParameters-v1610 ::= SEQUENCE {
} OPTIONAL
}
+BandParameters-v1710 ::= SEQUENCE {
+ -- R1 23-8-3 SRS Antenna switching for >4Rx
+ srs-AntennaSwitchingBeyond4RX-r17 SEQUENCE {
+ -- 1. Support of SRS antenna switching xTyR with y>4
+ supportedSRS-TxPortSwitchBeyond4Rx-r17 BIT STRING (SIZE (11)),
+ -- 2. Report the entry number of the first-listed band with UL in the band combination that affects this DL
+ entryNumberAffectBeyond4Rx-r17 INTEGER (1..32) OPTIONAL,
+ -- 3. Report the entry number of the first-listed band with UL in the band combination that switches together with this UL
+ entryNumberSwitchBeyond4Rx-r17 INTEGER (1..32) OPTIONAL
+ } OPTIONAL
+}
+
+BandParameters-v1730 ::= SEQUENCE {
+ -- R1 39-3-2 Affected bands for inter-band CA during SRS carrier switching
+ srs-SwitchingAffectedBandsListNR-r17 SEQUENCE (SIZE (1..maxSimultaneousBands)) OF SRS-SwitchingAffectedBandsNR-r17
+}
+
+BandParameters-v1770 ::= SEQUENCE {
+ ca-BandwidthClassDL-NR-r17 CA-BandwidthClassNR-r17 OPTIONAL,
+ ca-BandwidthClassUL-NR-r17 CA-BandwidthClassNR-r17 OPTIONAL
+}
+
ScalingFactorSidelink-r16 ::= ENUMERATED {f0p4, f0p75, f0p8, f1}
+IntraBandPowerClass-r16 ::= ENUMERATED {pc2, pc3, spare6, spare5, spare4, spare3, spare2, spare1}
+
+SRS-SwitchingAffectedBandsNR-r17 ::= BIT STRING (SIZE (1..maxSimultaneousBands))
+
-- TAG-BANDCOMBINATIONLIST-STOP
-- TAG-BANDCOMBINATIONLISTSIDELINKEUTRANR-START
@@ -8634,10 +12059,14 @@ BandCombinationListSidelinkEUTRA-NR-r16 ::= SEQUENCE (SIZE (1..maxBandComb)) OF
BandCombinationListSidelinkEUTRA-NR-v1630 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombinationParametersSidelinkEUTRA-NR-v1630
+BandCombinationListSidelinkEUTRA-NR-v1710 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombinationParametersSidelinkEUTRA-NR-v1710
+
BandCombinationParametersSidelinkEUTRA-NR-r16 ::= SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParametersSidelinkEUTRA-NR-r16
BandCombinationParametersSidelinkEUTRA-NR-v1630 ::= SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParametersSidelinkEUTRA-NR-v1630
+BandCombinationParametersSidelinkEUTRA-NR-v1710 ::= SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParametersSidelinkEUTRA-NR-v1710
+
BandParametersSidelinkEUTRA-NR-r16 ::= CHOICE {
eutra SEQUENCE {
bandParametersSidelinkEUTRA1-r16 OCTET STRING OPTIONAL,
@@ -8657,11 +12086,68 @@ BandParametersSidelinkEUTRA-NR-v1630 ::= CHOICE {
}
}
+BandParametersSidelinkEUTRA-NR-v1710 ::= CHOICE {
+ eutra NULL,
+ nr SEQUENCE {
+ --32-4
+ sl-TransmissionMode2-PartialSensing-r17 SEQUENCE {
+ harq-TxProcessModeTwoSidelink-r17 ENUMERATED {n8, n16},
+ scs-CP-PatternTxSidelinkModeTwo-r17 CHOICE {
+ fr1-r17 SEQUENCE {
+ scs-15kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-30kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-60kHz-r17 BIT STRING (SIZE (16)) OPTIONAL
+ },
+ fr2-r17 SEQUENCE {
+ scs-60kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-120kHz-r17 BIT STRING (SIZE (16)) OPTIONAL
+ }
+ } OPTIONAL,
+ extendedCP-Mode2PartialSensing-r17 ENUMERATED {supported} OPTIONAL,
+ dl-openLoopPC-Sidelink-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ --32-2a: Receiving NR sidelink of PSFCH
+ rx-sidelinkPSFCH-r17 ENUMERATED {n5, n15, n25, n32, n35, n45, n50, n64} OPTIONAL,
+ --32-5a-1
+ tx-IUC-Scheme1-Mode2Sidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --32-5b-1
+ tx-IUC-Scheme2-Mode2Sidelink-r17 ENUMERATED {n4, n8, n16} OPTIONAL
+ }
+}
+
BandParametersSidelink-r16 ::= SEQUENCE {
freqBandSidelink-r16 FreqBandIndicatorNR
}
-- TAG-BANDCOMBINATIONLISTSIDELINKEUTRANR-STOP
+-- TAG-BANDCOMBINATIONLISTSLDISCOVERY-START
+
+BandCombinationListSL-Discovery-r17 ::= SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParametersSidelinkDiscovery-r17
+
+BandParametersSidelinkDiscovery-r17 ::= SEQUENCE {
+ sl-CrossCarrierScheduling-r17 ENUMERATED {supported} OPTIONAL,
+ --R1 32-4: Transmitting NR sidelink mode 2 with partial sensing
+ sl-TransmissionMode2-PartialSensing-r17 SEQUENCE {
+ harq-TxProcessModeTwoSidelink-r17 ENUMERATED {n8, n16},
+ scs-CP-PatternTxSidelinkModeTwo-r17 CHOICE {
+ fr1-r17 SEQUENCE {
+ scs-15kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-30kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-60kHz-r17 BIT STRING (SIZE (16)) OPTIONAL
+ },
+ fr2-r17 SEQUENCE {
+ scs-60kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-120kHz-r17 BIT STRING (SIZE (16)) OPTIONAL
+ }
+ } OPTIONAL,
+ extendedCP-Mode2PartialSensing-r17 ENUMERATED {supported} OPTIONAL,
+ dl-openLoopPC-Sidelink-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ --R1 32-5a-1: Transmitting Inter-UE coordination scheme 1 in NR sidelink mode 2
+ tx-IUC-Scheme1-Mode2Sidelink-r17 ENUMERATED {supported} OPTIONAL
+}
+
+-- TAG-BANDCOMBINATIONLISTSLDISCOVERY-STOP
-- TAG-CA-BANDWIDTHCLASSEUTRA-START
CA-BandwidthClassEUTRA ::= ENUMERATED {a, b, c, d, e, f, ...}
@@ -8669,7 +12155,12 @@ CA-BandwidthClassEUTRA ::= ENUMERATED {a, b, c, d, e, f, ...}
-- TAG-CA-BANDWIDTHCLASSEUTRA-STOP
-- TAG-CA-BANDWIDTHCLASSNR-START
-CA-BandwidthClassNR ::= ENUMERATED {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, ...}
+-- R4 17-6: new CA BW Classes R2-R12
+-- R4 17-7: new CA BW Classes V, W
+
+CA-BandwidthClassNR ::= ENUMERATED {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, ...,r2-v1730, r3-v1730, r4-v1730, r5-v1730, r6-v1730, r7-v1730, r8-v1730, r9-v1730, r10-v1730, r11-v1730, r12-v1730,v-v1770, w-v1770 }
+
+CA-BandwidthClassNR-r17 ::= ENUMERATED {r, s, t, u, ...}
-- TAG-CA-BANDWIDTHCLASSNR-STOP
-- TAG-CA-PARAMETERSEUTRA-START
@@ -8725,6 +12216,11 @@ CA-ParametersNR-v1560 ::= SEQUENCE {
diffNumerologyWithinPUCCH-GroupLargerSCS ENUMERATED {supported} OPTIONAL
}
+CA-ParametersNR-v15g0 ::= SEQUENCE {
+ simultaneousRxTxInterBandCAPerBandPair SimultaneousRxTxPerBandPair OPTIONAL,
+ simultaneousRxTxSULPerBandPair SimultaneousRxTxPerBandPair OPTIONAL
+}
+
CA-ParametersNR-v1610 ::= SEQUENCE {
-- R1 9-3: Parallel MsgA and SRS/PUCCH/PUSCH transmissions across CCs in inter-band CA
parallelTxMsgA-SRS-PUCCH-PUSCH-r16 ENUMERATED {supported} OPTIONAL,
@@ -8803,7 +12299,7 @@ CA-ParametersNR-v1630 ::= SEQUENCE {
-- R1 22-5d: Simultaneous transmission of SRS for antenna switching for inter-band UL CA
simulTX-SRS-AntSwitchingInterBandUL-CA-r16 SimulSRS-ForAntennaSwitching-r16 OPTIONAL,
-- R4 8-5: supported beam management type for inter-band CA
- beamManagementType-r16 ENUMERATED {ibm, cbm} OPTIONAL,
+ beamManagementType-r16 ENUMERATED {ibm, dummy} OPTIONAL,
-- R4 7-3a: UL frequency separation class with aggregate BW and Gap BW
intraBandFreqSeparationUL-AggBW-GapBW-r16 ENUMERATED {classI, classII, classIII} OPTIONAL,
-- RAN 89: Case B in case of Inter-band CA with non-aligned frame boundaries
@@ -8837,6 +12333,276 @@ CA-ParametersNR-v1640 ::= SEQUENCE {
} OPTIONAL
}
+CA-ParametersNR-v1690 ::= SEQUENCE {
+ csi-ReportingCrossPUCCH-Grp-r16 SEQUENCE {
+ computationTimeForA-CSI-r16 ENUMERATED {sameAsNoCross, relaxed},
+ additionalSymbols-r16 SEQUENCE {
+ scs-15kHz-additionalSymbols-r16 ENUMERATED {s14, s28} OPTIONAL,
+ scs-30kHz-additionalSymbols-r16 ENUMERATED {s14, s28} OPTIONAL,
+ scs-60kHz-additionalSymbols-r16 ENUMERATED {s14, s28, s56} OPTIONAL,
+ scs-120kHz-additionalSymbols-r16 ENUMERATED {s14, s28, s56} OPTIONAL
+ } OPTIONAL,
+ sp-CSI-ReportingOnPUCCH-r16 ENUMERATED {supported} OPTIONAL,
+ sp-CSI-ReportingOnPUSCH-r16 ENUMERATED {supported} OPTIONAL,
+ carrierTypePairList-r16 SEQUENCE (SIZE (1..maxCarrierTypePairList-r16)) OF CarrierTypePair-r16
+ } OPTIONAL
+}
+
+CA-ParametersNR-v16a0 ::= SEQUENCE {
+ pdcch-BlindDetectionMixedList-r16 SEQUENCE(SIZE(1..maxNrofPdcch-BlindDetectionMixed-1-r16)) OF PDCCH-BlindDetectionMixedList-r16
+}
+
+CA-ParametersNR-v1700 ::= SEQUENCE {
+ -- R1 23-9-1: Basic Features of Further Enhanced Port-Selection Type II Codebook (FeType-II) per band combination information
+ codebookParametersfetype2PerBC-r17 CodebookParametersfetype2PerBC-r17 OPTIONAL,
+ -- R4 18-4: Support of enhanced Demodulation requirements for CA in HST SFN FR1
+ demodulationEnhancementCA-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 20-1: Maximum uplink duty cycle for NR inter-band CA power class 2
+ maxUplinkDutyCycle-interBandCA-PC2-r17 ENUMERATED {n50, n60, n70, n80, n90, n100} OPTIONAL,
+ -- R4 20-2: Maximum uplink duty cycle for NR SUL combination power class 2
+ maxUplinkDutyCycle-SULcombination-PC2-r17 ENUMERATED {n50, n60, n70, n80, n90, n100} OPTIONAL,
+ beamManagementType-CBM-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-18: Parallel PUCCH and PUSCH transmission across CCs in inter-band CA
+ parallelTxPUCCH-PUSCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-9-5 Active CSI-RS resources and ports for mixed codebook types in any slot per band combination
+ codebookComboParameterMixedTypePerBC-r17 CodebookComboParameterMixedTypePerBC-r17 OPTIONAL,
+ -- R1 23-7-1 Basic Features of CSI Enhancement for Multi-TRP
+ mTRP-CSI-EnhancementPerBC-r17 SEQUENCE {
+ maxNumNZP-CSI-RS-r17 INTEGER (2..8),
+ cSI-Report-mode-r17 ENUMERATED {mode1, mode2, both},
+ supportedComboAcrossCCs-r17 SEQUENCE (SIZE (1..16)) OF CSI-MultiTRP-SupportedCombinations-r17,
+ codebookMode-NCJT-r17 ENUMERATED{mode1,mode1And2}
+ } OPTIONAL,
+ -- R1 23-7-1b Active CSI-RS resources and ports in the presence of multi-TRP CSI
+ codebookComboParameterMultiTRP-PerBC-r17 CodebookComboParameterMultiTRP-PerBC-r17 OPTIONAL,
+ -- R1 24-8b: 32 DL HARQ processes for FR 2-2 - maximum number of component carriers
+ maxCC-32-DL-HARQ-ProcessFR2-2-r17 ENUMERATED {n1, n2, n3, n4, n6, n8, n16, n32} OPTIONAL,
+ -- R1 24-9b: 32 UL HARQ processes for FR 2-2 - maximum number of component carriers
+ maxCC-32-UL-HARQ-ProcessFR2-2-r17 ENUMERATED {n1, n2, n3, n4, n5, n8, n16, n32} OPTIONAL,
+ -- R1 34-2: Cross-carrier scheduling from SCell to PCell/PSCell (Type B)
+ crossCarrierSchedulingSCell-SpCellTypeB-r17 CrossCarrierSchedulingSCell-SpCell-r17 OPTIONAL,
+-- R1 34-1: Cross-carrier scheduling from SCell to PCell/PSCell with search space restrictions (Type A)
+ crossCarrierSchedulingSCell-SpCellTypeA-r17 CrossCarrierSchedulingSCell-SpCell-r17 OPTIONAL,
+ -- R1 34-1a: DCI formats on PCell/PSCell USS set(s) support
+ dci-FormatsPCellPSCellUSS-Sets-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 34-3: Disabling scaling factor alpha when sSCell is deactivated
+ disablingScalingFactorDeactSCell-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 34-4: Disabling scaling factor alpha when sSCell is deactivated
+ disablingScalingFactorDormantSCell-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 34-5: Non-aligned frame boundaries between PCell/PSCell and sSCell
+ non-AlignedFrameBoundaries-r17 SEQUENCE {
+ scs15kHz-15kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs15kHz-30kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs15kHz-60kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs30kHz-30kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs30kHz-60kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs60kHz-60kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL
+ } OPTIONAL
+}
+
+CA-ParametersNR-v1720 ::= SEQUENCE {
+ -- R1 39-1: Parallel SRS and PUCCH/PUSCH transmission across CCs in intra-band non-contiguous CA
+ parallelTxSRS-PUCCH-PUSCH-intraBand-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 39-2: Parallel PRACH and SRS/PUCCH/PUSCH transmissions across CCs in intra-band non-contiguous CA
+ parallelTxPRACH-SRS-PUCCH-PUSCH-intraBand-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-9: Semi-static PUCCH cell switching for a single PUCCH group only
+ semiStaticPUCCH-CellSwitchSingleGroup-r17 SEQUENCE {
+ pucch-Group-r17 ENUMERATED {primaryGroupOnly, secondaryGroupOnly, eitherPrimaryOrSecondaryGroup},
+ pucch-Group-Config-r17 PUCCH-Group-Config-r17
+ } OPTIONAL,
+ -- R1 25-9a: Semi-static PUCCH cell switching for two PUCCH groups
+ semiStaticPUCCH-CellSwitchTwoGroups-r17 SEQUENCE (SIZE (1..maxTwoPUCCH-Grp-ConfigList-r17)) OF TwoPUCCH-Grp-Configurations-r17 OPTIONAL,
+ -- R1 25-10: PUCCH cell switching based on dynamic indication for same length of overlapping PUCCH slots/sub-slots for a single
+ -- PUCCH group only
+ dynamicPUCCH-CellSwitchSameLengthSingleGroup-r17 SEQUENCE {
+ pucch-Group-r17 ENUMERATED {primaryGroupOnly, secondaryGroupOnly, eitherPrimaryOrSecondaryGroup},
+ pucch-Group-Config-r17 PUCCH-Group-Config-r17
+ } OPTIONAL,
+ -- R1 25-10a: PUCCH cell switching based on dynamic indication for different length of overlapping PUCCH slots/sub-slots
+ -- for a single PUCCH group only
+ dynamicPUCCH-CellSwitchDiffLengthSingleGroup-r17 SEQUENCE {
+ pucch-Group-r17 ENUMERATED {primaryGroupOnly, secondaryGroupOnly, eitherPrimaryOrSecondaryGroup},
+ pucch-Group-Config-r17 PUCCH-Group-Config-r17
+ } OPTIONAL,
+ -- R1 25-10b: PUCCH cell switching based on dynamic indication for same length of overlapping PUCCH slots/sub-slots for two PUCCH
+ -- groups
+ dynamicPUCCH-CellSwitchSameLengthTwoGroups-r17 SEQUENCE (SIZE (1..maxTwoPUCCH-Grp-ConfigList-r17)) OF TwoPUCCH-Grp-Configurations-r17
+ OPTIONAL,
+ -- R1 25-10c: PUCCH cell switching based on dynamic indication for different length of overlapping PUCCH slots/sub-slots for two
+ -- PUCCH groups
+ dynamicPUCCH-CellSwitchDiffLengthTwoGroups-r17 SEQUENCE (SIZE (1..maxTwoPUCCH-Grp-ConfigList-r17)) OF TwoPUCCH-Grp-Configurations-r17
+ OPTIONAL,
+ -- R1 33-2a: ACK/NACK based HARQ-ACK feedback and RRC-based enabling/disabling ACK/NACK-based
+ -- feedback for dynamic scheduling for multicast
+ ack-NACK-FeedbackForMulticast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-2d: PTP retransmission for multicast dynamic scheduling
+ ptp-Retx-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-4: NACK-only based HARQ-ACK feedback for RRC-based enabling/disabling multicast with ACK/NACK transforming
+ nack-OnlyFeedbackForMulticast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-4a: NACK-only based HARQ-ACK feedback for multicast corresponding to a specific sequence or a PUCCH transmission
+ nack-OnlyFeedbackSpecificResourceForMulticast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-1a: ACK/NACK based HARQ-ACK feedback and RRC-based enabling/disabling ACK/NACK-based feedback
+ -- for SPS group-common PDSCH for multicast
+ ack-NACK-FeedbackForSPS-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-1d: PTP retransmission for SPS group-common PDSCH for multicast
+ ptp-Retx-SPS-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 26-1: Higher Power Limit CA DC
+ higherPowerLimit-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 39-4: Parallel MsgA and SRS/PUCCH/PUSCH transmissions across CCs in intra-band non-contiguous CA
+ parallelTxMsgA-SRS-PUCCH-PUSCH-intraBand-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-11a: Capability on the number of CCs for monitoring a maximum number of BDs and non-overlapped CCEs per span when
+ -- configured with DL CA with Rel-17 PDCCH monitoring capability on all the serving cells
+ pdcch-MonitoringCA-r17 INTEGER (4..16) OPTIONAL,
+ -- R1 24-11f: Capability on the number of CCs for monitoring a maximum number of BDs and non-overlapped CCEs for MCG and for SCG
+ -- when configured for NR-DC operation with Rel-17 PDCCH monitoring capability on all the serving cells
+ pdcch-BlindDetectionMCG-SCG-List-r17 SEQUENCE(SIZE(1..maxNrofPdcch-BlindDetection-r17)) OF PDCCH-BlindDetectionMCG-SCG-r17
+ OPTIONAL,
+ -- R1 24-11c: Number of carriers for CCE/BD scaling with DL CA with mix of Rel. 17 and Rel. 15 PDCCH monitoring capabilities on
+ -- different Carriers
+ -- R1 24-11g: Number of carriers for CCE/BD scaling for MCG and for SCG when configured for NR-DC operation with mix of Rel. 17 and
+ -- Rel. 15 PDCCH monitoring capabilities on different carriers
+ pdcch-BlindDetectionMixedList1-r17 SEQUENCE(SIZE(1..maxNrofPdcch-BlindDetection-r17)) OF PDCCH-BlindDetectionMixed-r17
+ OPTIONAL,
+ -- R1 24-11d: Number of carriers for CCE/BD scaling with DL CA with mix of Rel. 17 and Rel. 16 PDCCH monitoring capabilities on
+ -- different Carriers
+ -- R1 24-11h: Number of carriers for CCE/BD scaling for MCG and for SCG when configured for NR-DC operation with mix of Rel. 17 and
+ -- Rel. 16 PDCCH monitoring capabilities on different carriers
+ pdcch-BlindDetectionMixedList2-r17 SEQUENCE(SIZE(1..maxNrofPdcch-BlindDetection-r17)) OF PDCCH-BlindDetectionMixed-r17
+ OPTIONAL,
+ -- R1 24-11e: Number of carriers for CCE/BD scaling with DL CA with mix of Rel. 17, Rel. 16 and Rel. 15 PDCCH monitoring
+ -- capabilities on different carriers
+ -- R1 24-11i: Number of carriers for CCE/BD scaling for MCG and for SCG when configured for NR-DC operation with mix of Rel. 17,
+ -- Rel. 16 and Rel. 15 PDCCH monitoring capabilities on different carriers
+ pdcch-BlindDetectionMixedList3-r17 SEQUENCE(SIZE(1..maxNrofPdcch-BlindDetection-r17)) OF PDCCH-BlindDetectionMixed1-r17
+ OPTIONAL
+}
+
+CA-ParametersNR-v1730 ::= SEQUENCE {
+ -- R1 30-4a: DM-RS bundling for PUSCH repetition type A (per BC)
+ dmrs-BundlingPUSCH-RepTypeAPerBC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4b: DM-RS bundling for PUSCH repetition type B(per BC)
+ dmrs-BundlingPUSCH-RepTypeBPerBC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4c: DM-RS bundling for TB processing over multi-slot PUSCH(per BC)
+ dmrs-BundlingPUSCH-multiSlotPerBC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4d: DMRS bundling for PUCCH repetitions(per BC)
+ dmrs-BundlingPUCCH-RepPerBC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4g: Restart DM-RS bundling (per BC)
+ dmrs-BundlingRestartPerBC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4h: DM-RS bundling for non-back-to-back transmission (per BC)
+ dmrs-BundlingNonBackToBackTX-PerBC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 39-3-1: Stay on the target CC for SRS carrier switching
+ stayOnTargetCC-SRS-CarrierSwitch-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-3-3a: FDM-ed Type-1 and Type-2 HARQ-ACK codebooks for multiplexing HARQ-ACK for unicast and HARQ-ACK for multicast
+ fdm-CodebookForMux-UnicastMulticastHARQ-ACK-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-3-3b: Mode 2 TDM-ed Type-1 and Type-2 HARQ-ACK codebook for multiplexing HARQ-ACK for unicast and HARQ-ACK for multicast
+ mode2-TDM-CodebookForMux-UnicastMulticastHARQ-ACK-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-3-4: Mode 1 for type1 codebook generation
+ mode1-ForType1-CodebookGeneration-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-1j: NACK-only based HARQ-ACK feedback for multicast corresponding to a specific sequence or a PUCCH transmission
+ -- for SPS group-commmon PDSCH for multicast
+ nack-OnlyFeedbackSpecificResourceForSPS-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-8-2: Up to 2 PUCCH resources configuration for multicast feedback for dynamically scheduled multicast
+ multiPUCCH-ConfigForMulticast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-8-3: PUCCH resource configuration for multicast feedback for SPS GC-PDSCH
+ pucch-ConfigForSPS-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- The following parameter is associated with R1 33-2a, R1 33-3-3a, and R1 33-3-3b, and is not a RAN1 FG.
+ maxNumberG-RNTI-HARQ-ACK-Codebook-r17 INTEGER (1..4) OPTIONAL,
+ -- R1 33-3-5: Feedback multiplexing for unicast PDSCH and group-common PDSCH for multicast with same priority and different codebook
+ -- type
+ mux-HARQ-ACK-UnicastMulticast-r17 ENUMERATED {supported} OPTIONAL
+}
+
+CA-ParametersNR-v1740 ::= SEQUENCE {
+ -- R1 33-5-1f: NACK-only based HARQ-ACK feedback for multicast RRC-based enabling/disabling NACK-only based feedback
+ -- for SPS group-common PDSCH for multicast
+ nack-OnlyFeedbackForSPS-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-8-1: PUCCH resource configuration for multicast feedback for dynamically scheduled multicast
+ singlePUCCH-ConfigForMulticast-r17 ENUMERATED {supported} OPTIONAL
+}
+
+CA-ParametersNR-v1760 ::= SEQUENCE {
+ prioSCellPRACH-OverSP-PeriodicSRS-Support-r17 ENUMERATED {supported} OPTIONAL
+}
+
+CA-ParametersNR-v1770 ::= SEQUENCE {
+ parallelTxPUCCH-PUSCH-SamePriority-r17 ENUMERATED {supported} OPTIONAL
+}
+
+CrossCarrierSchedulingSCell-SpCell-r17 ::= SEQUENCE {
+ supportedSCS-Combinations-r17 SEQUENCE {
+ scs15kHz-15kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs15kHz-30kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs15kHz-60kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs30kHz-30kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs30kHz-60kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL,
+ scs60kHz-60kHz-r17 BIT STRING (SIZE (1..496)) OPTIONAL
+ },
+ pdcch-MonitoringOccasion-r17 ENUMERATED {val1, val2}
+}
+
+PDCCH-BlindDetectionMixedList-r16::= SEQUENCE {
+ pdcch-BlindDetectionCA-MixedExt-r16 CHOICE {
+ pdcch-BlindDetectionCA-Mixed-v16a0 PDCCH-BlindDetectionCA-MixedExt-r16,
+ pdcch-BlindDetectionCA-Mixed-NonAlignedSpan-v16a0 PDCCH-BlindDetectionCA-MixedExt-r16
+ } OPTIONAL,
+ pdcch-BlindDetectionCG-UE-MixedExt-r16 SEQUENCE{
+ pdcch-BlindDetectionMCG-UE-Mixed-v16a0 PDCCH-BlindDetectionCG-UE-MixedExt-r16,
+ pdcch-BlindDetectionSCG-UE-Mixed-v16a0 PDCCH-BlindDetectionCG-UE-MixedExt-r16
+ } OPTIONAL
+}
+
+PDCCH-BlindDetectionCA-MixedExt-r16 ::= SEQUENCE {
+ pdcch-BlindDetectionCA1-r16 INTEGER (1..15),
+ pdcch-BlindDetectionCA2-r16 INTEGER (1..15)
+}
+
+PDCCH-BlindDetectionCG-UE-MixedExt-r16 ::= SEQUENCE {
+ pdcch-BlindDetectionCG-UE1-r16 INTEGER (0..15),
+ pdcch-BlindDetectionCG-UE2-r16 INTEGER (0..15)
+}
+
+PDCCH-BlindDetectionMCG-SCG-r17 ::= SEQUENCE {
+ pdcch-BlindDetectionMCG-UE-r17 INTEGER (1..15),
+ pdcch-BlindDetectionSCG-UE-r17 INTEGER (1..15)
+}
+
+PDCCH-BlindDetectionMixed-r17::= SEQUENCE {
+ pdcch-BlindDetectionCA-Mixed-r17 PDCCH-BlindDetectionCA-Mixed-r17 OPTIONAL,
+ pdcch-BlindDetectionCG-UE-Mixed-r17 SEQUENCE{
+ pdcch-BlindDetectionMCG-UE-Mixed-v17 PDCCH-BlindDetectionCG-UE-Mixed-r17,
+ pdcch-BlindDetectionSCG-UE-Mixed-v17 PDCCH-BlindDetectionCG-UE-Mixed-r17
+ } OPTIONAL
+}
+
+PDCCH-BlindDetectionCG-UE-Mixed-r17 ::= SEQUENCE {
+ pdcch-BlindDetectionCG-UE1-r17 INTEGER (0..15),
+ pdcch-BlindDetectionCG-UE2-r17 INTEGER (0..15)
+}
+
+PDCCH-BlindDetectionCA-Mixed-r17 ::= SEQUENCE {
+ pdcch-BlindDetectionCA1-r17 INTEGER (1..15) OPTIONAL,
+ pdcch-BlindDetectionCA2-r17 INTEGER (1..15) OPTIONAL
+}
+PDCCH-BlindDetectionMixed1-r17::= SEQUENCE {
+ pdcch-BlindDetectionCA-Mixed1-r17 PDCCH-BlindDetectionCA-Mixed1-r17 OPTIONAL,
+ pdcch-BlindDetectionCG-UE-Mixed1-r17 SEQUENCE{
+ pdcch-BlindDetectionMCG-UE-Mixed1-v17 PDCCH-BlindDetectionCG-UE-Mixed1-r17,
+ pdcch-BlindDetectionSCG-UE-Mixed1-v17 PDCCH-BlindDetectionCG-UE-Mixed1-r17
+ } OPTIONAL
+}
+
+PDCCH-BlindDetectionCG-UE-Mixed1-r17 ::= SEQUENCE {
+ pdcch-BlindDetectionCG-UE1-r17 INTEGER (0..15),
+ pdcch-BlindDetectionCG-UE2-r17 INTEGER (0..15),
+ pdcch-BlindDetectionCG-UE3-r17 INTEGER (0..15)
+}
+
+PDCCH-BlindDetectionCA-Mixed1-r17 ::= SEQUENCE {
+ pdcch-BlindDetectionCA1-r17 INTEGER (1..15) OPTIONAL,
+ pdcch-BlindDetectionCA2-r17 INTEGER (1..15) OPTIONAL,
+ pdcch-BlindDetectionCA3-r17 INTEGER (1..15) OPTIONAL
+}
+
SimulSRS-ForAntennaSwitching-r16 ::= SEQUENCE {
supportSRS-xTyR-xLessThanY-r16 ENUMERATED {supported} OPTIONAL,
supportSRS-xTyR-xEqualToY-r16 ENUMERATED {supported} OPTIONAL,
@@ -8848,11 +12614,22 @@ TwoPUCCH-Grp-Configurations-r16 ::= SEQUENCE {
pucch-SecondaryGroupMapping-r16 TwoPUCCH-Grp-ConfigParams-r16
}
+TwoPUCCH-Grp-Configurations-r17 ::= SEQUENCE {
+ primaryPUCCH-GroupConfig-r17 PUCCH-Group-Config-r17,
+ secondaryPUCCH-GroupConfig-r17 PUCCH-Group-Config-r17
+}
+
TwoPUCCH-Grp-ConfigParams-r16 ::= SEQUENCE {
pucch-GroupMapping-r16 PUCCH-Grp-CarrierTypes-r16,
pucch-TX-r16 PUCCH-Grp-CarrierTypes-r16
}
+
+CarrierTypePair-r16 ::= SEQUENCE {
+ carrierForCSI-Measurement-r16 PUCCH-Grp-CarrierTypes-r16,
+ carrierForCSI-Reporting-r16 PUCCH-Grp-CarrierTypes-r16
+}
+
PUCCH-Grp-CarrierTypes-r16 ::= SEQUENCE {
fr1-NonSharedTDD-r16 ENUMERATED {supported} OPTIONAL,
fr1-SharedTDD-r16 ENUMERATED {supported} OPTIONAL,
@@ -8860,6 +12637,12 @@ PUCCH-Grp-CarrierTypes-r16 ::= SEQUENCE {
fr2-r16 ENUMERATED {supported} OPTIONAL
}
+PUCCH-Group-Config-r17 ::= SEQUENCE {
+ fr1-FR1-NonSharedTDD-r17 ENUMERATED {supported} OPTIONAL,
+ fr2-FR2-NonSharedTDD-r17 ENUMERATED {supported} OPTIONAL,
+ fr1-FR2-NonSharedTDD-r17 ENUMERATED {supported} OPTIONAL
+}
+
-- TAG-CA-PARAMETERSNR-STOP
-- TAG-CA-PARAMETERS-NRDC-START
@@ -8871,6 +12654,10 @@ CA-ParametersNRDC ::= SEQUENCE {
featureSetCombinationDC FeatureSetCombinationId OPTIONAL
}
+CA-ParametersNRDC-v15g0 ::= SEQUENCE {
+ ca-ParametersNR-ForDC-v15g0 CA-ParametersNR-v15g0 OPTIONAL
+}
+
CA-ParametersNRDC-v1610 ::= SEQUENCE {
-- R1 18-1: Semi-static power sharing mode1 between MCG and SCG cells of same FR for NR dual connectivity
intraFR-NR-DC-PwrSharingMode1-r16 ENUMERATED {supported} OPTIONAL,
@@ -8894,6 +12681,32 @@ CA-ParametersNRDC-v1650 ::= SEQUENCE {
supportedCellGrouping-r16 BIT STRING (SIZE (1..maxCellGroupings-r16)) OPTIONAL
}
+CA-ParametersNRDC-v16a0 ::= SEQUENCE {
+ ca-ParametersNR-ForDC-v16a0 CA-ParametersNR-v16a0 OPTIONAL
+}
+
+CA-ParametersNRDC-v1700 ::= SEQUENCE {
+ -- R1 31-9: Indicates the support of simultaneous transmission and reception of an IAB-node from multiple parent nodes
+ simultaneousRxTx-IAB-MultipleParents-r17 ENUMERATED {supported} OPTIONAL,
+ condPSCellAdditionNRDC-r17 ENUMERATED {supported} OPTIONAL,
+ scg-ActivationDeactivationNRDC-r17 ENUMERATED {supported} OPTIONAL,
+ scg-ActivationDeactivationResumeNRDC-r17 ENUMERATED {supported} OPTIONAL,
+ beamManagementType-CBM-r17 ENUMERATED {supported} OPTIONAL
+}
+
+CA-ParametersNRDC-v1720 ::= SEQUENCE {
+ ca-ParametersNR-ForDC-v1700 CA-ParametersNR-v1700 OPTIONAL,
+ ca-ParametersNR-ForDC-v1720 CA-ParametersNR-v1720 OPTIONAL
+}
+
+CA-ParametersNRDC-v1730 ::= SEQUENCE {
+ ca-ParametersNR-ForDC-v1730 CA-ParametersNR-v1730 OPTIONAL
+}
+
+CA-ParametersNRDC-v1760 ::= SEQUENCE {
+ ca-ParametersNR-ForDC-v1760 CA-ParametersNR-v1760
+}
+
-- TAG-CA-PARAMETERS-NRDC-STOP
-- TAG-CARRIERAGGREGATIONVARIANT-START
@@ -9029,6 +12842,118 @@ CodebookComboParametersAddition-r16 ::= SEQUENCE {
} OPTIONAL
}
+CodebookParametersfetype2-r17 ::= SEQUENCE {
+ -- R1 23-9-1 Basic Features of Further Enhanced Port-Selection Type II Codebook (FeType-II)
+ fetype2basic-r17 SEQUENCE (SIZE (1.. maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16),
+ -- R1 23-9-2 Support of M=2 and R=1 for FeType-II
+ fetype2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r17)) OF INTEGER (0.. maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- R1 23-9-4 Support of R = 2 for FeType-II
+ fetype2R2-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r17)) OF INTEGER (0.. maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- R1 23-9-3 Support of rank 3, 4 for FeType-II
+ fetype2Rank3Rank4-r17 ENUMERATED {supported} OPTIONAL
+}
+
+CodebookComboParameterMixedType-r17 ::= SEQUENCE {
+ -- R1 23-9-5 Active CSI-RS resources and ports for mixed codebook types in any slot
+ type1SP-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-feType2PS-M2R2-null-r1 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-feType2PS-M2R2-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL
+}
+
+CodebookComboParameterMultiTRP-r17::= SEQUENCE {
+ -- R1 23-7-1b Active CSI-RS resources and ports in the presence of multi-TRP CSI
+ -- {Codebook 2, Codebook 3} =(NULL, NULL}
+ nCJT-null-null SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-null-null SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- {Codebook 2, Codebook 3} = {( {"Rel 16 combinations in FG 16-8"}
+ nCJT-Type2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2-Type2PS-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-Type2PS-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- {Codebook 2, Codebook 3} = {"New Rel17 combinations in FG 23-9-5"}
+ nCJT-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-feType2PS-M2R2-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-feType2PS-M2R2-null-r1 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL
+}
+
CodebookParametersAdditionPerBC-r16::= SEQUENCE {
-- R1 16-3a Regular eType 2 R=1
etype2R1-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
@@ -9051,7 +12976,7 @@ CodebookComboParametersAdditionPerBC-r16::= SEQUENCE {
type1SP-Type2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
OPTIONAL,
type1SP-eType2R1-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
- OPTIONAL,
+ OPTIONAL,
type1SP-eType2R2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
OPTIONAL,
type1SP-eType2R1PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
@@ -9076,6 +13001,116 @@ CodebookComboParametersAdditionPerBC-r16::= SEQUENCE {
OPTIONAL
}
+CodebookParametersfetype2PerBC-r17 ::= SEQUENCE {
+ -- R1 23-9-1 Basic Features of Further Enhanced Port-Selection Type II Codebook (FeType-II)
+ fetype2basic-r17 SEQUENCE (SIZE (1.. maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16),
+ -- R1 23-9-2 Support of M=2 and R=1 for FeType-II
+ fetype2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r17)) OF INTEGER (0.. maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- R1 23-9-4 Support of R = 2 for FeType-II
+ fetype2R2-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r17)) OF INTEGER (0.. maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL
+}
+
+CodebookComboParameterMixedTypePerBC-r17 ::= SEQUENCE {
+ -- R1 23-9-5 Active CSI-RS resources and ports for mixed codebook types in any slot
+ type1SP-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-feType2PS-M2R2-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1SP-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-feType2PS-M2R2-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ type1MP-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL
+}
+
+CodebookComboParameterMultiTRP-PerBC-r17::= SEQUENCE {
+ -- R1 23-7-1b Active CSI-RS resources and ports in the presence of multi-TRP CSI
+ -- {Codebook 2, Codebook 3} =(NULL, NULL}
+ nCJT-null-null SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-null-null SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- {Codebook 2, Codebook 3} = {( {"Rel 16 combinations in FG 16-8"}
+ nCJT-Type2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2-Type2PS-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R2-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R2PS-null-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-Type2PS-r16 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ -- {Codebook 2, Codebook 3} = {"New Rel17 combinations in FG 23-9-5"}
+ nCJT-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-feType2PS-M2R2-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-feType2PS-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-feType2PS-M2R1-null-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-feType2PS-M2R2-null-r1 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-Type2-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1-feType2-PS-M1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL,
+ nCJT1SP-eType2R1-feType2-PS-M2R1-r17 SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesExt-r16)) OF INTEGER (0..maxNrofCSI-RS-ResourcesAlt-1-r16)
+ OPTIONAL
+}
+
CodebookVariantsList-r16 ::= SEQUENCE (SIZE (1..maxNrofCSI-RS-ResourcesAlt-r16)) OF SupportedCSI-RS-Resource
SupportedCSI-RS-Resource ::= SEQUENCE {
@@ -9220,12 +13255,85 @@ FeatureSetDownlink-v1610 ::= SEQUENCE {
singleDCI-SDM-scheme-r16 ENUMERATED {supported} OPTIONAL
}
+FeatureSetDownlink-v1700 ::= SEQUENCE {
+ -- R1 36-2: Scaling factor to be applied to 1024QAM for FR1
+ scalingFactor-1024QAM-FR1-r17 ENUMERATED {f0p4, f0p75, f0p8} OPTIONAL,
+ -- R1 24 feature for existing UE cap to include new SCS
+ timeDurationForQCL-v1710 SEQUENCE {
+ scs-480kHz ENUMERATED {s56, s112} OPTIONAL,
+ scs-960kHz ENUMERATED {s112, s224} OPTIONAL
+ } OPTIONAL,
+ -- R1 23-6-1 SFN scheme A (scheme 1) for PDSCH and PDCCH
+ sfn-SchemeA-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-1-1 SFN scheme A (scheme 1) for PDCCH only
+ sfn-SchemeA-PDCCH-only-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-1a Dynamic switching - scheme A
+ sfn-SchemeA-DynamicSwitching-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-1b SFN scheme A (scheme 1) for PDSCH only
+ sfn-SchemeA-PDSCH-only-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-2 SFN scheme B (TRP based pre-compensation) for PDSCH and PDCCH
+ sfn-SchemeB-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-2a Dynamic switching - scheme B
+ sfn-SchemeB-DynamicSwitching-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-2b SFN scheme B (TRP based pre-compensation) for PDSCH only
+ sfn-SchemeB-PDSCH-only-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-2-1d PDCCH repetition for Case 2 PDCCH monitoring with a span gap
+ mTRP-PDCCH-Case2-1SpanGap-r17 SEQUENCE {
+ scs-15kHz-r17 PDCCH-RepetitionParameters-r17 OPTIONAL,
+ scs-30kHz-r17 PDCCH-RepetitionParameters-r17 OPTIONAL,
+ scs-60kHz-r17 PDCCH-RepetitionParameters-r17 OPTIONAL,
+ scs-120kHz-r17 PDCCH-RepetitionParameters-r17 OPTIONAL
+ } OPTIONAL,
+ -- R1 23-2-1e PDCCH repetition for Rel-16 PDCCH monitoring
+ mTRP-PDCCH-legacyMonitoring-r17 SEQUENCE {
+ scs-15kHz-r17 PDCCH-RepetitionParameters-r17 OPTIONAL,
+ scs-30kHz-r17 PDCCH-RepetitionParameters-r17 OPTIONAL
+ } OPTIONAL,
+ -- R1 23-2-4 Simultaneous configuration of PDCCH repetition and multi-DCI based multi-TRP
+ mTRP-PDCCH-multiDCI-multiTRP-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-2: Dynamic scheduling for multicast for PCell
+ dynamicMulticastPCell-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-2-1 PDCCH repetition
+ mTRP-PDCCH-Repetition-r17 SEQUENCE {
+ numBD-twoPDCCH-r17 INTEGER (2..3),
+ maxNumOverlaps-r17 ENUMERATED {n1,n2,n3,n5,n10,n20,n40}
+ } OPTIONAL
+}
+
+FeatureSetDownlink-v1720 ::= SEQUENCE {
+ -- R1 25-19: RTT-based Propagation delay compensation based on CSI-RS for tracking and SRS
+ rtt-BasedPDC-CSI-RS-ForTracking-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-19a: RTT-based Propagation delay compensation based on DL PRS for RTT-based PDC and SRS
+ rtt-BasedPDC-PRS-r17 SEQUENCE {
+ maxNumberPRS-Resource-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64},
+ maxNumberPRS-ResourceProcessedPerSlot-r17 SEQUENCE {
+ scs-15kHz-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ scs-30kHz-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ scs-60kHz-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ scs-120kHz-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL
+ }
+ } OPTIONAL,
+ -- R1 33-5-1: SPS group-common PDSCH for multicast on PCell
+ sps-Multicast-r17 ENUMERATED {supported} OPTIONAL
+}
+
+FeatureSetDownlink-v1730 ::= SEQUENCE {
+ -- R1 25-19b: Support of PRS as spatial relation RS for SRS
+ prs-AsSpatialRelationRS-For-SRS-r17 ENUMERATED {supported} OPTIONAL
+}
+
PDCCH-MonitoringOccasions-r16 ::= SEQUENCE {
period7span3-r16 ENUMERATED {supported} OPTIONAL,
period4span3-r16 ENUMERATED {supported} OPTIONAL,
period2span2-r16 ENUMERATED {supported} OPTIONAL
}
+PDCCH-RepetitionParameters-r17 ::= SEQUENCE {
+ supportedMode-r17 ENUMERATED {intra-span, inter-span, both},
+ limitX-PerCC-r17 ENUMERATED {n4, n8, n16, n32, n44, n64, nolimit} OPTIONAL,
+ limitX-AcrossCC-r17 ENUMERATED {n4, n8, n16, n32, n44, n64, n128, n256, n512, nolimit} OPTIONAL
+}
+
DummyA ::= SEQUENCE {
maxNumberNZP-CSI-RS-PerCC INTEGER (1..32),
maxNumberPortsAcrossNZP-CSI-RS-PerCC ENUMERATED {p2, p4, p8, p12, p16, p24, p32, p40, p48, p56, p64, p72, p80,
@@ -9299,12 +13407,57 @@ FeatureSetDownlinkPerCC-v1620 ::= SEQUENCE {
supportFDM-SchemeB-r16 ENUMERATED {supported} OPTIONAL
}
+FeatureSetDownlinkPerCC-v1700 ::= SEQUENCE {
+ supportedMinBandwidthDL-r17 SupportedBandwidth-v1700 OPTIONAL,
+ broadcastSCell-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-2g: MIMO layers for multicast PDSCH
+ maxNumberMIMO-LayersMulticastPDSCH-r17 ENUMERATED {n2, n4, n8} OPTIONAL,
+ -- R1 33-2h: Dynamic scheduling for multicast for SCell
+ dynamicMulticastSCell-r17 ENUMERATED {supported} OPTIONAL,
+ supportedBandwidthDL-v1710 SupportedBandwidth-v1700 OPTIONAL,
+ -- R4 24-1/24-2/24-3/24-4/24-5
+ supportedCRS-InterfMitigation-r17 CRS-InterfMitigation-r17 OPTIONAL
+}
+
+FeatureSetDownlinkPerCC-v1720 ::= SEQUENCE {
+ -- R1 33-2j: Supported maximum modulation order used for maximum data rate calculation for multicast PDSCH
+ maxModulationOrderForMulticastDataRateCalculation-r17 ENUMERATED {qam64, qam256, qam1024} OPTIONAL,
+ -- R1 33-1-2: FDM-ed unicast PDSCH and group-common PDSCH for broadcast
+ fdm-BroadcastUnicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-3-2: FDM-ed unicast PDSCH and one group-common PDSCH for multicast
+ fdm-MulticastUnicast-r17 ENUMERATED {supported} OPTIONAL
+}
+
+FeatureSetDownlinkPerCC-v1730 ::= SEQUENCE {
+ -- R1 33-3-3: Intra-slot TDM-ed unicast PDSCH and group-common PDSCH
+ intraSlotTDM-UnicastGroupCommonPDSCH-r17 ENUMERATED {yes, no} OPTIONAL,
+ -- R1 33-5-3: One SPS group-common PDSCH configuration for multicast for SCell
+ sps-MulticastSCell-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-4: Up to 8 SPS group-common PDSCH configurations per CFR for multicast for SCell
+ sps-MulticastSCellMultiConfig-r17 INTEGER (1..8) OPTIONAL,
+ -- R1 33-1-1: Dynamic slot-level repetition for broadcast MTCH
+ dci-BroadcastWith16Repetitions-r17 ENUMERATED {supported} OPTIONAL
+}
+
MultiDCI-MultiTRP-r16 ::= SEQUENCE {
maxNumberCORESET-r16 ENUMERATED {n2, n3, n4, n5},
maxNumberCORESETPerPoolIndex-r16 INTEGER (1..3),
maxNumberUnicastPDSCH-PerPool-r16 ENUMERATED {n1, n2, n3, n4, n7}
}
+CRS-InterfMitigation-r17 ::= SEQUENCE {
+ -- R4 24-1 CRS-IM (Interference Mitigation) in DSS scenario
+ crs-IM-DSS-15kHzSCS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 24-2 CRS-IM in non-DSS and 15 kHz NR SCS scenario, without the assistance of network signaling on LTE channel bandwidth
+ crs-IM-nonDSS-15kHzSCS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 24-3 CRS-IM in non-DSS and 15 kHz NR SCS scenario, with the assistance of network signaling on LTE channel bandwidth
+ crs-IM-nonDSS-NWA-15kHzSCS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 24-4 CRS-IM in non-DSS and 30 kHz NR SCS scenario, without the assistance of network signaling on LTE channel bandwidth
+ crs-IM-nonDSS-30kHzSCS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 24-5 CRS-IM in non-DSS and 30 kHz NR SCS scenario, with the assistance of network signaling on LTE channel bandwidth
+ crs-IM-nonDSS-NWA-30kHzSCS-r17 ENUMERATED {supported} OPTIONAL
+}
+
-- TAG-FEATURESETDOWNLINKPERCC-STOP
-- TAG-FEATURESETDOWNLINKPERCC-ID-START
@@ -9347,9 +13500,28 @@ FeatureSets ::= SEQUENCE {
]],
[[
featureSetsUplink-v1640 SEQUENCE (SIZE (1..maxUplinkFeatureSets)) OF FeatureSetUplink-v1640 OPTIONAL
+ ]],
+ [[
+ featureSetsDownlink-v1700 SEQUENCE (SIZE (1..maxDownlinkFeatureSets)) OF FeatureSetDownlink-v1700 OPTIONAL,
+ featureSetsDownlinkPerCC-v1700 SEQUENCE (SIZE (1..maxPerCC-FeatureSets)) OF FeatureSetDownlinkPerCC-v1700 OPTIONAL,
+ featureSetsUplink-v1710 SEQUENCE (SIZE (1..maxUplinkFeatureSets)) OF FeatureSetUplink-v1710 OPTIONAL,
+ featureSetsUplinkPerCC-v1700 SEQUENCE (SIZE (1..maxPerCC-FeatureSets)) OF FeatureSetUplinkPerCC-v1700 OPTIONAL
+ ]],
+ [[
+ featureSetsDownlink-v1720 SEQUENCE (SIZE (1..maxDownlinkFeatureSets)) OF FeatureSetDownlink-v1720 OPTIONAL,
+ featureSetsDownlinkPerCC-v1720 SEQUENCE (SIZE (1..maxPerCC-FeatureSets)) OF FeatureSetDownlinkPerCC-v1720 OPTIONAL,
+ featureSetsUplink-v1720 SEQUENCE (SIZE (1..maxUplinkFeatureSets)) OF FeatureSetUplink-v1720 OPTIONAL
+ ]],
+ [[
+ featureSetsDownlink-v1730 SEQUENCE (SIZE (1..maxDownlinkFeatureSets)) OF FeatureSetDownlink-v1730 OPTIONAL,
+ featureSetsDownlinkPerCC-v1730 SEQUENCE (SIZE (1..maxPerCC-FeatureSets)) OF FeatureSetDownlinkPerCC-v1730 OPTIONAL
]]
}
+FeatureSets-v16d0 ::= SEQUENCE {
+ featureSetsUplink-v16d0 SEQUENCE (SIZE (1..maxUplinkFeatureSets)) OF FeatureSetUplink-v16d0 OPTIONAL
+}
+
-- TAG-FEATURESETS-STOP
-- TAG-FEATURESETUPLINK-START
@@ -9521,6 +13693,59 @@ FeatureSetUplink-v1640 ::= SEQUENCE {
} OPTIONAL
}
+FeatureSetUplink-v16d0 ::= SEQUENCE {
+ pusch-RepetitionTypeB-v16d0 SEQUENCE {
+ maxNumberPUSCH-Tx-Cap1-r16 ENUMERATED {n2, n3, n4, n7, n8, n12},
+ maxNumberPUSCH-Tx-Cap2-r16 ENUMERATED {n2, n3, n4, n7, n8, n12}
+ } OPTIONAL
+}
+
+FeatureSetUplink-v1710 ::= SEQUENCE {
+ -- R1 23-3-1 Multi-TRP PUSCH repetition (type A) -codebook based
+ mTRP-PUSCH-TypeA-CB-r17 ENUMERATED {n1,n2,n4} OPTIONAL,
+ -- R1 23-3-1-2 Multi-TRP PUSCH repetition (type A) - non-codebook based
+ mTRP-PUSCH-RepetitionTypeA-r17 ENUMERATED {n1,n2,n3,n4} OPTIONAL,
+ -- R1 23-3-3 Multi-TRP PUCCH repetition-intra-slot
+ mTRP-PUCCH-IntraSlot-r17 ENUMERATED {pf0-2, pf1-3-4, pf0-4} OPTIONAL,
+ -- R1 23-8-4 Maximum 2 SP and 1 periodic SRS sets for antenna switching
+ srs-AntennaSwitching2SP-1Periodic-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-9 Extension of aperiodic SRS configuration for 1T4R, 1T2R and 2T4R
+ srs-ExtensionAperiodicSRS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-10 1 aperiodic SRS resource set for 1T4R
+ srs-OneAP-SRS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 16-8 UE power class per band per band combination
+ ue-PowerClassPerBandPerBC-r17 ENUMERATED {pc1dot5, pc2, pc3} OPTIONAL,
+ -- R4 17-8 UL transmission in FR2 bands within an UL gap when the UL gap is activated
+ tx-Support-UL-GapFR2-r17 ENUMERATED {supported} OPTIONAL
+}
+
+FeatureSetUplink-v1720 ::= SEQUENCE {
+ -- R1 25-3: Repetitions for PUCCH format 0, 1, 2, 3 and 4 over multiple PUCCH subslots with configured K = 2, 4, 8
+ pucch-Repetition-F0-1-2-3-4-RRC-Config-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-3a: Repetitions for PUCCH format 0, 1, 2, 3 and 4 over multiple PUCCH subslots using dynamic repetition indication
+ pucch-Repetition-F0-1-2-3-4-DynamicIndication-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-3b: Inter-subslot frequency hopping for PUCCH repetitions
+ interSubslotFreqHopping-PUCCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-8: Semi-static HARQ-ACK codebook for sub-slot PUCCH
+ semiStaticHARQ-ACK-CodebookSub-SlotPUCCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-14: PHY prioritization of overlapping low-priority DG-PUSCH and high-priority CG-PUSCH
+ phy-PrioritizationLowPriorityDG-HighPriorityCG-r17 INTEGER(1..16) OPTIONAL,
+ -- R1 25-15: PHY prioritization of overlapping high-priority DG-PUSCH and low-priority CG-PUSCH
+ phy-PrioritizationHighPriorityDG-LowPriorityCG-r17 SEQUENCE {
+ pusch-PreparationLowPriority-r17 ENUMERATED{sym0, sym1, sym2},
+ additionalCancellationTime-r17 SEQUENCE {
+ scs-15kHz-r17 ENUMERATED{sym0, sym1, sym2} OPTIONAL,
+ scs-30kHz-r17 ENUMERATED{sym0, sym1, sym2, sym3, sym4} OPTIONAL,
+ scs-60kHz-r17 ENUMERATED{sym0, sym1, sym2, sym3, sym4, sym5, sym6, sym7, sym8} OPTIONAL,
+ scs-120kHz-r17 ENUMERATED{sym0, sym1, sym2, sym3, sym4, sym5, sym6, sym7, sym8, sym9,
+ sym10, sym11, sym12, sym13, sym14, sym15, sym16} OPTIONAL
+ },
+ maxNumberCarriers-r17 INTEGER(1..16)
+ } OPTIONAL,
+ -- R4 17-5 Support of UL DC location(s) report
+ extendedDC-LocationReport-r17 ENUMERATED {supported} OPTIONAL
+}
+
SubSlot-Config-r16 ::= SEQUENCE {
sub-SlotConfig-NCP-r16 ENUMERATED {n4,n5,n6,n7} OPTIONAL,
sub-SlotConfig-ECP-r16 ENUMERATED {n4,n5,n6} OPTIONAL
@@ -9593,6 +13818,15 @@ FeatureSetUplinkPerCC-v1540 ::= SEQUENCE {
} OPTIONAL
}
+FeatureSetUplinkPerCC-v1700 ::= SEQUENCE {
+ supportedMinBandwidthUL-r17 SupportedBandwidth-v1700 OPTIONAL,
+ -- R1 23-3-1-3 FeMIMO: Multi-TRP PUSCH repetition (type B) - non-codebook based
+ mTRP-PUSCH-RepetitionTypeB-r17 ENUMERATED {n1,n2,n3,n4} OPTIONAL,
+ -- R1 23-3-1-1 -codebook based Multi-TRP PUSCH repetition (type B)
+ mTRP-PUSCH-TypeB-CB-r17 ENUMERATED {n1,n2,n4} OPTIONAL,
+ supportedBandwidthUL-v1710 SupportedBandwidth-v1700 OPTIONAL
+}
+
-- TAG-FEATURESETUPLINKPERCC-STOP
-- TAG-FEATURESETUPLINKPERCC-ID-START
@@ -9645,6 +13879,73 @@ FreqSeparationClassUL-v1620 ::= ENUMERATED {mhz1000}
FreqSeparationClassDL-Only-r16 ::= ENUMERATED {mhz200, mhz400, mhz600, mhz800, mhz1000, mhz1200}
-- TAG-FREQSEPARATIONCLASSDL-Only-STOP
+-- TAG-FR2-2-ACCESSPARAMSPERBAND-START
+
+FR2-2-AccessParamsPerBand-r17 ::= SEQUENCE {
+ -- R1 24-1: Basic FR2-2 DL support
+ dl-FR2-2-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1a: Basic FR2-2 UL support
+ ul-FR2-2-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-2: 120KHz SSB support for initial access in FR2-2
+ initialAccessSSB-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1b: Wideband PRACH for 120 kHz in FR2-2
+ widebandPRACH-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1c: Multi-RB support PUCCH format 0/1/4 for 120 kHz in FR2-2
+ multiRB-PUCCH-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1d: Multiple PDSCH scheduling by single DCI for 120kHz in FR2-2
+ multiPDSCH-SingleDCI-FR2-2-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1e: Multiple PUSCH scheduling by single DCI for 120kHz in FR2-2
+ multiPUSCH-SingleDCI-FR2-2-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-4: 480KHz SCS support for DL
+ dl-FR2-2-SCS-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-4a: 480KHz SCS support for UL
+ ul-FR2-2-SCS-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-3: 480KHz SSB support for initial access in FR2-2
+ initialAccessSSB-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-4b: Wideband PRACH for 480 kHz in FR2-2
+ widebandPRACH-SCS-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-4c: Multi-RB support PUCCH format 0/1/4 for 480 kHz in FR2-2
+ multiRB-PUCCH-SCS-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-4f: Enhanced PDCCH monitoring for 480KHz in FR2-2
+ enhancedPDCCH-monitoringSCS-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-5: 960KHz SCS support for DL
+ dl-FR2-2-SCS-960kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-5a: 960KHz SCS support for UL
+ ul-FR2-2-SCS-960kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-5c: Multi-RB support PUCCH format 0/1/4 for 960 kHz in FR2-2
+ multiRB-PUCCH-SCS-960kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-5f: Enhanced PDCCH monitoring for 960KHz in FR2-2
+ enhancedPDCCH-monitoringSCS-960kHz-r17 SEQUENCE {
+ pdcch-monitoring4-1-r17 ENUMERATED {supported} OPTIONAL,
+ pdcch-monitoring4-2-r17 ENUMERATED {supported} OPTIONAL,
+ pdcch-monitoring8-4-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ -- R1 24-6: Type 1 channel access procedure in uplink for FR2-2 with shared spectrum channel access
+ type1-ChannelAccess-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-7: Type 2 channel access procedure in uplink for FR2-2 with shared spectrum channel access
+ type2-ChannelAccess-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-10: Reduced beam switching time delay
+ reduced-BeamSwitchTiming-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-8: 32 DL HARQ processes for FR 2-2
+ support32-DL-HARQ-ProcessPerSCS-r17 SEQUENCE {
+ scs-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs-960kHz-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ -- R1 24-9: 32 UL HARQ processes for FR 2-2
+ support32-UL-HARQ-ProcessPerSCS-r17 SEQUENCE {
+ scs-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs-480kHz-r17 ENUMERATED {supported} OPTIONAL,
+ scs-960kHz-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ ...,
+ [[
+ -- R4 15-1: 64QAM for PUSCH for FR2-2
+ modulation64-QAM-PUSCH-FR2-2-r17 ENUMERATED {supported} OPTIONAL
+ ]]
+}
+
+-- TAG-FR2-2-ACCESSPARAMSPERBAND-STOP
-- TAG-HIGHSPEEDPARAMETERS-START
HighSpeedParameters-r16 ::= SEQUENCE {
@@ -9657,6 +13958,13 @@ HighSpeedParameters-v1650 ::= CHOICE {
interRAT-MeasurementEnhancement-r16 ENUMERATED {supported}
}
+HighSpeedParameters-v1700 ::= SEQUENCE {
+ -- R4 18-1: Enhanced RRM requirements specified for CA for FR1 HST
+ measurementEnhancementCA-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 18-2: Enhanced RRM requirements specified for inter-frequency measurement in connected mode for FR1 HST
+ measurementEnhancementInterFreq-r17 ENUMERATED {supported} OPTIONAL
+}
+
-- TAG-HIGHSPEEDPARAMETERS-STOP
-- TAG-IMS-PARAMETERS-START
@@ -9666,6 +13974,10 @@ IMS-Parameters ::= SEQUENCE {
...
}
+IMS-Parameters-v1700 ::= SEQUENCE {
+ ims-ParametersFR2-2-r17 IMS-ParametersFR2-2-r17 OPTIONAL
+}
+
IMS-ParametersCommon ::= SEQUENCE {
voiceOverEUTRA-5GC ENUMERATED {supported} OPTIONAL,
...,
@@ -9682,6 +13994,11 @@ IMS-ParametersFRX-Diff ::= SEQUENCE {
...
}
+IMS-ParametersFR2-2-r17 ::= SEQUENCE {
+ voiceOverNR-r17 ENUMERATED {supported} OPTIONAL,
+ ...
+}
+
-- TAG-IMS-PARAMETERS-STOP
-- TAG-INTERRAT-PARAMETERS-START
@@ -9746,6 +14063,10 @@ MAC-Parameters-v1610 ::= SEQUENCE {
mac-ParametersFRX-Diff-r16 MAC-ParametersFRX-Diff-r16 OPTIONAL
}
+MAC-Parameters-v1700 ::= SEQUENCE {
+ mac-ParametersFR2-2-r17 MAC-ParametersFR2-2-r17 OPTIONAL
+}
+
MAC-ParametersCommon ::= SEQUENCE {
lcp-Restriction ENUMERATED {supported} OPTIONAL,
dummy ENUMERATED {supported} OPTIONAL,
@@ -9773,6 +14094,23 @@ MAC-ParametersCommon ::= SEQUENCE {
]],
[[
srs-ResourceId-Ext-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ enhancedUuDRX-forSidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --27-10: Support of UL MAC CE based MG activation request for PRS measurements
+ mg-ActivationRequestPRS-Meas-r17 ENUMERATED {supported} OPTIONAL,
+ --27-11: Support of DL MAC CE based MG activation request for PRS measurements
+ mg-ActivationCommPRS-Meas-r17 ENUMERATED {supported} OPTIONAL,
+ intraCG-Prioritization-r17 ENUMERATED {supported} OPTIONAL,
+ jointPrioritizationCG-Retx-Timer-r17 ENUMERATED {supported} OPTIONAL,
+ survivalTime-r17 ENUMERATED {supported} OPTIONAL,
+ lcg-ExtensionIAB-r17 ENUMERATED {supported} OPTIONAL,
+ harq-FeedbackDisabled-r17 ENUMERATED {supported} OPTIONAL,
+ uplink-Harq-ModeB-r17 ENUMERATED {supported} OPTIONAL,
+ sr-TriggeredBy-TA-Report-r17 ENUMERATED {supported} OPTIONAL,
+ extendedDRX-CycleInactive-r17 ENUMERATED {supported} OPTIONAL,
+ simultaneousSR-PUSCH-DiffPUCCH-groups-r17 ENUMERATED {supported} OPTIONAL,
+ lastTransmissionUL-r17 ENUMERATED {supported} OPTIONAL
]]
}
@@ -9789,6 +14127,18 @@ MAC-ParametersFRX-Diff-r16 ::= SEQUENCE {
...
}
+MAC-ParametersFR2-2-r17 ::= SEQUENCE {
+ directMCG-SCellActivation-r17 ENUMERATED {supported} OPTIONAL,
+ directMCG-SCellActivationResume-r17 ENUMERATED {supported} OPTIONAL,
+ directSCG-SCellActivation-r17 ENUMERATED {supported} OPTIONAL,
+ directSCG-SCellActivationResume-r17 ENUMERATED {supported} OPTIONAL,
+ drx-Adaptation-r17 SEQUENCE {
+ non-SharedSpectrumChAccess-r17 MinTimeGapFR2-2-r17 OPTIONAL,
+ sharedSpectrumChAccess-r17 MinTimeGapFR2-2-r17 OPTIONAL
+ } OPTIONAL,
+ ...
+}
+
MAC-ParametersXDD-Diff ::= SEQUENCE {
skipUplinkTxDynamic ENUMERATED {supported} OPTIONAL,
logicalChannelSR-DelayTimer ENUMERATED {supported} OPTIONAL,
@@ -9813,6 +14163,12 @@ MinTimeGap-r16 ::= SEQUENCE {
scs-120kHz-r16 ENUMERATED {sl2, sl24} OPTIONAL
}
+MinTimeGapFR2-2-r17 ::= SEQUENCE {
+ scs-120kHz-r17 ENUMERATED {sl2, sl24} OPTIONAL,
+ scs-480kHz-r17 ENUMERATED {sl8, sl96} OPTIONAL,
+ scs-960kHz-r17 ENUMERATED {sl16, sl192} OPTIONAL
+}
+
-- TAG-MAC-PARAMETERS-STOP
-- TAG-MEASANDMOBPARAMETERS-START
@@ -9822,6 +14178,10 @@ MeasAndMobParameters ::= SEQUENCE {
measAndMobParametersFRX-Diff MeasAndMobParametersFRX-Diff OPTIONAL
}
+MeasAndMobParameters-v1700 ::= SEQUENCE {
+ measAndMobParametersFR2-2-r17 MeasAndMobParametersFR2-2-r17 OPTIONAL
+}
+
MeasAndMobParametersCommon ::= SEQUENCE {
supportedGapPattern BIT STRING (SIZE (22)) OPTIONAL,
ssb-RLM ENUMERATED {supported} OPTIONAL,
@@ -9870,6 +14230,60 @@ MeasAndMobParametersCommon ::= SEQUENCE {
eutra-AutonomousGaps-NRDC-r16 ENUMERATED {supported} OPTIONAL,
pcellT312-r16 ENUMERATED {supported} OPTIONAL,
supportedGapPattern-r16 BIT STRING (SIZE (2)) OPTIONAL
+ ]],
+ [[
+ -- R4 19-2 Concurrent measurement gaps
+ concurrentMeasGap-r17 CHOICE {
+ concurrentPerUE-OnlyMeasGap-r17 ENUMERATED {supported},
+ concurrentPerUE-PerFRCombMeasGap-r17 ENUMERATED {supported}
+ } OPTIONAL,
+ -- R4 19-1 Network controlled small gap (NCSG)
+ nr-NeedForGapNCSG-Reporting-r17 ENUMERATED {supported} OPTIONAL,
+ eutra-NeedForGapNCSG-Reporting-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 19-1-1 per FR Network controlled small gap (NCSG)
+ ncsg-MeasGapPerFR-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 19-1-2 Network controlled small gap (NCSG) supported patterns
+ ncsg-MeasGapPatterns-r17 BIT STRING (SIZE(24)) OPTIONAL,
+ -- R4 19-1-3 Network controlled small gap (NCSG) supported NR-only patterns
+ ncsg-MeasGapNR-Patterns-r17 BIT STRING (SIZE(24)) OPTIONAL,
+ -- R4 19-3-2 pre-configured measurement gap
+ preconfiguredUE-AutonomousMeasGap-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 19-3-1 pre-configured measurement gap
+ preconfiguredNW-ControlledMeasGap-r17 ENUMERATED {supported} OPTIONAL,
+ handoverFR1-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ handoverFR2-1-FR2-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- RAN4 14-1: per-FR MG for PRS measurement
+ independentGapConfigPRS-r17 ENUMERATED {supported} OPTIONAL,
+ rrm-RelaxationRRC-ConnectedRedCap-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 25-3: Parallel measurements with multiple measurement gaps
+ parallelMeasurementGap-r17 ENUMERATED {n2} OPTIONAL,
+ condHandoverWithSCG-NRDC-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-ID-LengthReporting-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-ID-LengthReporting-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-ID-LengthReporting-NEDC-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-ID-LengthReporting-NRDC-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-ID-LengthReporting-NPN-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ -- R4 25-1: Parallel measurements on multiple SMTC-s for a single frequency carrier
+ parallelSMTC-r17 ENUMERATED {n4} OPTIONAL,
+ -- R4 19-2-1 Concurrent measurement gaps for EUTRA
+ concurrentMeasGapEUTRA-r17 ENUMERATED {supported} OPTIONAL,
+ serviceLinkPropDelayDiffReporting-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 19-1-4 Network controlled small gap (NCSG) performing measurement based on flag deriveSSB-IndexFromCellInter
+ ncsg-SymbolLevelScheduleRestrictionInter-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ eventD1-MeasReportTrigger-r17 ENUMERATED {supported} OPTIONAL,
+ independentGapConfig-maxCC-r17 SEQUENCE {
+ fr1-Only-r17 INTEGER (1..32) OPTIONAL,
+ fr2-Only-r17 INTEGER (1..32) OPTIONAL,
+ fr1-AndFR2-r17 INTEGER (1..32) OPTIONAL
+ } OPTIONAL
+ ]],
+ [[
+ interSatMeas-r17 ENUMERATED {supported} OPTIONAL,
+ deriveSSB-IndexFromCellInterNon-NCSG-r17 ENUMERATED {supported} OPTIONAL
]]
}
@@ -9928,6 +14342,14 @@ MeasAndMobParametersFRX-Diff ::= SEQUENCE {
]]
}
+MeasAndMobParametersFR2-2-r17 ::= SEQUENCE {
+ handoverInterF-r17 ENUMERATED {supported} OPTIONAL,
+ handoverLTE-EPC-r17 ENUMERATED {supported} OPTIONAL,
+ handoverLTE-5GC-r17 ENUMERATED {supported} OPTIONAL,
+ idleInactiveNR-MeasReport-r17 ENUMERATED {supported} OPTIONAL,
+...
+}
+
-- TAG-MEASANDMOBPARAMETERS-STOP
-- TAG-MEASANDMOBPARAMETERSMRDC-START
@@ -9946,6 +14368,14 @@ MeasAndMobParametersMRDC-v1610 ::= SEQUENCE {
interNR-MeasEUTRA-IAB-r16 ENUMERATED {supported} OPTIONAL
}
+MeasAndMobParametersMRDC-v1700 ::= SEQUENCE {
+ measAndMobParametersMRDC-Common-v1700 MeasAndMobParametersMRDC-Common-v1700 OPTIONAL
+}
+
+MeasAndMobParametersMRDC-v1730 ::= SEQUENCE {
+ measAndMobParametersMRDC-Common-v1730 MeasAndMobParametersMRDC-Common-v1730 OPTIONAL
+}
+
MeasAndMobParametersMRDC-Common ::= SEQUENCE {
independentGapConfig ENUMERATED {supported} OPTIONAL
}
@@ -9958,6 +14388,31 @@ MeasAndMobParametersMRDC-Common-v1610 ::= SEQUENCE {
pscellT312-r16 ENUMERATED {supported} OPTIONAL
}
+MeasAndMobParametersMRDC-Common-v1700 ::= SEQUENCE {
+ condPSCellChangeParameters-r17 SEQUENCE {
+ inter-SN-condPSCellChangeFDD-TDD-NRDC-r17 ENUMERATED {supported} OPTIONAL,
+ inter-SN-condPSCellChangeFR1-FR2-NRDC-r17 ENUMERATED {supported} OPTIONAL,
+ inter-SN-condPSCellChangeFDD-TDD-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ inter-SN-condPSCellChangeFR1-FR2-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ mn-InitiatedCondPSCellChange-FR1FDD-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ mn-InitiatedCondPSCellChange-FR1TDD-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ mn-InitiatedCondPSCellChange-FR2TDD-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ sn-InitiatedCondPSCellChange-FR1FDD-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ sn-InitiatedCondPSCellChange-FR1TDD-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ sn-InitiatedCondPSCellChange-FR2TDD-ENDC-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ condHandoverWithSCG-ENDC-r17 ENUMERATED {supported} OPTIONAL,
+ condHandoverWithSCG-NEDC-r17 ENUMERATED {supported} OPTIONAL
+}
+
+MeasAndMobParametersMRDC-Common-v1730 ::= SEQUENCE {
+ independentGapConfig-maxCC-r17 SEQUENCE {
+ fr1-Only-r17 INTEGER (1..32) OPTIONAL,
+ fr2-Only-r17 INTEGER (1..32) OPTIONAL,
+ fr1-AndFR2-r17 INTEGER (1..32) OPTIONAL
+ }
+}
+
MeasAndMobParametersMRDC-XDD-Diff ::= SEQUENCE {
sftd-MeasPSCell ENUMERATED {supported} OPTIONAL,
sftd-MeasNR-Cell ENUMERATED {supported} OPTIONAL
@@ -9983,7 +14438,7 @@ MIMO-LayersUL ::= ENUMERATED {oneLayer, twoLayers, fourLayers}
MIMO-ParametersPerBand ::= SEQUENCE {
tci-StatePDSCH SEQUENCE {
- maxNumberConfiguredTCIstatesPerCC ENUMERATED {n4, n8, n16, n32, n64, n128} OPTIONAL,
+ maxNumberConfiguredTCI-StatesPerCC ENUMERATED {n4, n8, n16, n32, n64, n128} OPTIONAL,
maxNumberActiveTCI-PerBWP ENUMERATED {n1, n2, n4, n8} OPTIONAL
} OPTIONAL,
additionalActiveTCI-StatePDCCH ENUMERATED {supported} OPTIONAL,
@@ -10102,8 +14557,8 @@ MIMO-ParametersPerBand ::= SEQUENCE {
} OPTIONAL
} OPTIONAL,
singleDCI-SDM-scheme-Parameters-r16 SEQUENCE {
- -- R1 16-2b-1b: Single-DCI based SDM scheme – Support of new DMRS port entry
- supportNewDMRS-Port-r16 ENUMERATED {n0, n2, n3} OPTIONAL,
+ -- R1 16-2b-1b: Single-DCI based SDM scheme - Support of new DMRS port entry
+ supportNewDMRS-Port-r16 ENUMERATED {supported1, supported2, supported3} OPTIONAL,
-- R1 16-2b-1a: Support of s-port DL PTRS
supportTwoPortDL-PTRS-r16 ENUMERATED {supported} OPTIONAL
} OPTIONAL,
@@ -10162,6 +14617,225 @@ MIMO-ParametersPerBand ::= SEQUENCE {
[[
-- R1 16-2a-9: Interpretation of maxNumberMIMO-LayersPDSCH for multi-DCI based mTRP
maxMIMO-LayersForMulti-DCI-mTRP-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ supportedSINR-meas-v1670 BIT STRING (SIZE (4)) OPTIONAL
+ ]],
+ [[
+ -- R1 23-8-5 Increased repetition for SRS
+ srs-increasedRepetition-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-6 Partial frequency sounding of SRS
+ srs-partialFrequencySounding-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-7 Start RB location hopping for partial frequency SRS
+ srs-startRB-locationHoppingPartial-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-8 Comb-8 SRS
+ srs-combEight-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-9-1 Basic Features of Further Enhanced Port-Selection Type II Codebook (FeType-II) per band information
+ codebookParametersfetype2-r17 CodebookParametersfetype2-r17 OPTIONAL,
+ -- R1 23-3-1-2a Two associated CSI-RS resources
+ mTRP-PUSCH-twoCSI-RS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-2 Multi-TRP PUCCH repetition scheme 1 (inter-slot)
+ mTRP-PUCCH-InterSlot-r17 ENUMERATED {pf0-2, pf1-3-4, pf0-4} OPTIONAL,
+ -- R1 23-3-2b Cyclic mapping for multi-TRP PUCCH repetition
+ mTRP-PUCCH-CyclicMapping-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-2c Second TPC field for multi-TRP PUCCH repetition
+ mTRP-PUCCH-SecondTPC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-5-2 MTRP BFR based on two BFD-RS set
+ mTRP-BFR-twoBFD-RS-Set-r17 SEQUENCE {
+ maxBFD-RS-resourcesPerSetPerBWP-r17 ENUMERATED {n1, n2},
+ maxBFR-r17 INTEGER (1..9),
+ maxBFD-RS-resourcesAcrossSetsPerBWP-r17 ENUMERATED {n2, n3, n4}
+ } OPTIONAL,
+ -- R1 23-5-2a PUCCH-SR resources for MTRP BFRQ - Max number of PUCCH-SR resources for MTRP BFRQ per cell group
+ mTRP-BFR-PUCCH-SR-perCG-r17 ENUMERATED{n1, n2} OPTIONAL,
+ -- R1 23-5-2b Association between a BFD-RS resource set on SpCell and a PUCCH SR resource
+ mTRP-BFR-association-PUCCH-SR-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-3 Simultaneous activation of two TCI states for PDCCH across multiple CCs (HST/URLLC)
+ sfn-SimulTwoTCI-AcrossMultiCC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-4 Default DL beam setup for SFN
+ sfn-DefaultDL-BeamSetup-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-6-4a Default UL beam setup for SFN PDCCH(FR2 only)
+ sfn-DefaultUL-BeamSetup-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-1 SRS triggering offset enhancement
+ srs-TriggeringOffset-r17 ENUMERATED {n1, n2, n4} OPTIONAL,
+ -- R1 23-8-2 Triggering SRS only in DCI 0_1/0_2
+ srs-TriggeringDCI-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-9-5 Active CSI-RS resources and ports for mixed codebook types in any slot per band information
+ codebookComboParameterMixedType-r17 CodebookComboParameterMixedType-r17 OPTIONAL,
+ -- R1 23-1-1 Unified TCI [with joint DL/UL TCI update] for intra-cell beam management
+ unifiedJointTCI-r17 SEQUENCE{
+ maxConfiguredJointTCI-r17 ENUMERATED {n8, n12, n16, n24, n32, n48, n64, n128},
+ maxActivatedTCIAcrossCC-r17 ENUMERATED {n1, n2, n4, n8, n16}
+ } OPTIONAL,
+ -- R1 23-1-1b Unified TCI with joint DL/UL TCI update for intra- and inter-cell beam management with more than one MAC-CE
+ unifiedJointTCI-multiMAC-CE-r17 SEQUENCE{
+ minBeamApplicationTime-r17 ENUMERATED {n1, n2, n4, n7, n14, n28, n42, n56, n70, n84, n98, n112, n224, n336}
+ OPTIONAL,
+ maxNumMAC-CE-PerCC ENUMERATED {n2, n3, n4, n5, n6, n7, n8}
+ } OPTIONAL,
+ -- R1 23-1-1d Per BWP TCI state pool configuration for CA mode
+ unifiedJointTCI-perBWP-CA-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1e TCI state pool configuration with TCI pool sharing for CA mode
+ unifiedJointTCI-ListSharingCA-r17 ENUMERATED {n1,n2,n4,n8} OPTIONAL,
+ -- R1 23-1-1f Common multi-CC TCI state ID update and activation
+ unifiedJointTCI-commonMultiCC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1g Beam misalignment between the DL source RS in the TCI state
+ unifiedJointTCI-BeamAlignDLRS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1h Association between TCI state and UL PC settings for PUCCH, PUSCH, and SRS
+ unifiedJointTCI-PC-association-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1i Indication/configuration of R17 TCI states for aperiodic CSI-RS, PDCCH, PDSCH
+ unifiedJointTCI-Legacy-r17 ENUMERATED {supported} OPTIONAL,
+ -- 23-1-1m Indication/configuration of R17 TCI states for SRS
+ unifiedJointTCI-Legacy-SRS-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1j Indication/configuration of R17 TCI states for CORESET #0
+ unifiedJointTCI-Legacy-CORESET0-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1c SCell BFR with unified TCI framework (NOTE; pre-requisite is empty)
+ unifiedJointTCI-SCellBFR-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-1-1a Unified TCI with joint DL/UL TCI update for inter-cell beam management
+ unifiedJointTCI-InterCell-r17 SEQUENCE{
+ additionalMAC-CE-PerCC-r17 ENUMERATED {n0, n1, n2, n4},
+ additionalMAC-CE-AcrossCC-r17 ENUMERATED {n0, n1, n2, n4}
+ } OPTIONAL,
+ -- R1 23-10-1 Unified TCI with separate DL/UL TCI update for intra-cell beam management
+ unifiedSeparateTCI-r17 SEQUENCE{
+ maxConfiguredDL-TCI-r17 ENUMERATED {n4, n8, n12, n16, n24, n32, n48, n64, n128},
+ maxConfiguredUL-TCI-r17 ENUMERATED {n4, n8, n12, n16, n24, n32, n48, n64},
+ maxActivatedDL-TCIAcrossCC-r17 ENUMERATED {n1, n2, n4, n8, n16},
+ maxActivatedUL-TCIAcrossCC-r17 ENUMERATED {n1, n2, n4, n8, n16}
+ } OPTIONAL,
+ -- R1 23-10-1b Unified TCI with separate DL/UL TCI update for intra-cell beam management with more than one MAC-CE
+ unifiedSeparateTCI-multiMAC-CE-r17 SEQUENCE{
+ minBeamApplicationTime-r17 ENUMERATED {n1, n2, n4, n7, n14, n28, n42, n56, n70, n84, n98, n112, n224, n336},
+ maxActivatedDL-TCIPerCC-r17 INTEGER (2..8),
+ maxActivatedUL-TCIPerCC-r17 INTEGER (2..8)
+ } OPTIONAL,
+ -- R1 23-10-1d Per BWP DL/UL-TCI state pool configuration for CA mode
+ unifiedSeparateTCI-perBWP-CA-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-10-1e TCI state pool configuration with DL/UL-TCI pool sharing for CA mode
+ unifiedSeparateTCI-ListSharingCA-r17 SEQUENCE {
+ maxNumListDL-TCI-r17 ENUMERATED {n1,n2,n4,n8} OPTIONAL,
+ maxNumListUL-TCI-r17 ENUMERATED {n1,n2,n4,n8} OPTIONAL
+ } OPTIONAL,
+ -- R1 23-10-1f Common multi-CC DL/UL-TCI state ID update and activation with separate DL/UL TCI update
+ unifiedSeparateTCI-commonMultiCC-r17 ENUMERATED {supported} OPTIONAL,
+ -- 23-10-1m Unified TCI with separate DL/UL TCI update for inter-cell beam management with more than one MAC-CE
+ unifiedSeparateTCI-InterCell-r17 SEQUENCE {
+ k-DL-PerCC-r17 ENUMERATED {n0, n1, n2, n4},
+ k-UL-PerCC-r17 ENUMERATED {n0, n1, n2, n4},
+ k-DL-AcrossCC-r17 ENUMERATED {n0, n1, n2, n4},
+ k-UL-AcrossCC-r17 ENUMERATED {n0, n1, n2, n4}
+ } OPTIONAL,
+ -- R1 23-1-2 Inter-cell beam measurement and reporting (for inter-cell BM and mTRP)
+ unifiedJointTCI-mTRP-InterCell-BM-r17 SEQUENCE {
+ maxNumAdditionalPCI-L1-RSRP-r17 INTEGER (1..7),
+ maxNumSSB-ResourceL1-RSRP-AcrossCC-r17 ENUMERATED {n1,n2,n4,n8}
+ } OPTIONAL,
+ -- R1 23-1-3 MPE mitigation
+ mpe-Mitigation-r17 SEQUENCE {
+ maxNumP-MPR-RI-pairs-r17 INTEGER (1..4),
+ maxNumConfRS-r17 ENUMERATED {n1, n2, n4, n8, n12, n16, n28, n32, n48, n64}
+ } OPTIONAL,
+ -- R1 23-1-4 UE capability value reporting
+ srs-PortReport-r17 SEQUENCE {
+ capVal1-r17 ENUMERATED {n1, n2, n4} OPTIONAL,
+ capVal2-r17 ENUMERATED {n1, n2, n4} OPTIONAL,
+ capVal3-r17 ENUMERATED {n1, n2, n4} OPTIONAL,
+ capVal4-r17 ENUMERATED {n1, n2, n4} OPTIONAL
+ } OPTIONAL,
+ -- R1 23-2-1a Monitoring of individual candidates
+ mTRP-PDCCH-individual-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-2-1b PDCCH repetition with PDCCH monitoring on any span of up to 3 consecutive OFDM symbols of a slot
+ mTRP-PDCCH-anySpan-3Symbols-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-2-2 Two QCL TypeD for CORESET monitoring in PDCCH repetition
+ mTRP-PDCCH-TwoQCL-TypeD-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-1-2b CSI-RS processing framework for SRS with two associated CSI-RS resources
+ mTRP-PUSCH-CSI-RS-r17 SEQUENCE {
+ maxNumPeriodicSRS-r17 INTEGER (1..8),
+ maxNumAperiodicSRS-r17 INTEGER (1..8),
+ maxNumSP-SRS-r17 INTEGER (0..8),
+ numSRS-ResourcePerCC-r17 INTEGER (1..16),
+ numSRS-ResourceNonCodebook-r17 INTEGER (1..2)
+ } OPTIONAL,
+ -- R1 23-3-1a Cyclic mapping for Multi-TRP PUSCH repetition
+ mTRP-PUSCH-cyclicMapping-r17 ENUMERATED {typeA,typeB,both} OPTIONAL,
+ -- R1 23-3-1b Second TPC field for Multi-TRP PUSCH repetition
+ mTRP-PUSCH-secondTPC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-1c Two PHR reporting
+ mTRP-PUSCH-twoPHR-Reporting-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-1e A-CSI report
+ mTRP-PUSCH-A-CSI-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-1f SP-CSI report
+ mTRP-PUSCH-SP-CSI-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-1g CG PUSCH transmission
+ mTRP-PUSCH-CG-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-2d Updating two Spatial relation or two sets of power control parameters for PUCCH group
+ mTRP-PUCCH-MAC-CE-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-3-2e Maximum number of power control parameter sets configured for multi-TRP PUCCH repetition in FR1
+ mTRP-PUCCH-maxNum-PC-FR1-r17 INTEGER (3..8) OPTIONAL,
+ -- R1 23-4 IntCell-mTRP
+ mTRP-inter-Cell-r17 SEQUENCE {
+ maxNumAdditionalPCI-Case1-r17 INTEGER (1..7),
+ maxNumAdditionalPCI-Case2-r17 INTEGER (0..7)
+ } OPTIONAL,
+ -- R1 23-5-1 Group based L1-RSRP reporting enhancements
+ mTRP-GroupBasedL1-RSRP-r17 SEQUENCE {
+ maxNumBeamGroups-r17 INTEGER (1..4),
+ maxNumRS-WithinSlot-r17 ENUMERATED {n2,n3,n4,n8,n16,n32,n64},
+ maxNumRS-AcrossSlot-r17 ENUMERATED {n8, n16, n32, n64, n128}
+ } OPTIONAL,
+ -- R1 23-5-2c MAC-CE based update of explicit BFD-RS mTRP-PUCCH-IntraSlot-r17 => per band
+ mTRP-BFD-RS-MAC-CE-r17 ENUMERATED {n4, n8, n12, n16, n32, n48, n64 } OPTIONAL,
+ -- R1 23-7-1 Basic Features of CSI Enhancement for Multi-TRP
+ mTRP-CSI-EnhancementPerBand-r17 SEQUENCE {
+ maxNumNZP-CSI-RS-r17 INTEGER (2..8),
+ cSI-Report-mode-r17 ENUMERATED {mode1, mode2, both},
+ supportedComboAcrossCCs-r17 SEQUENCE (SIZE (1..16)) OF CSI-MultiTRP-SupportedCombinations-r17,
+ codebookModeNCJT-r17 ENUMERATED{mode1,mode1And2}
+ } OPTIONAL,
+ -- R1 23-7-1b Active CSI-RS resources and ports in the presence of multi-TRP CSI
+ codebookComboParameterMultiTRP-r17 CodebookComboParameterMultiTRP-r17 OPTIONAL,
+ -- R1 23-7-1a Additional CSI report mode 1
+ mTRP-CSI-additionalCSI-r17 ENUMERATED{x1,x2} OPTIONAL,
+ -- R1 23-7-4 Support of Nmax=2 for Multi-TRP CSI
+ mTRP-CSI-N-Max2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-7-5 CMR sharing
+ mTRP-CSI-CMR-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 23-8-11 Partial frequency sounding of SRS for non-frequency hopping case
+ srs-partialFreqSounding-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1-24 feature: Extend beamSwitchTiming for FR2-2
+ beamSwitchTiming-v1710 SEQUENCE {
+ scs-480kHz ENUMERATED {sym56, sym112, sym192, sym896, sym1344} OPTIONAL,
+ scs-960kHz ENUMERATED {sym112, sym224, sym384, sym1792, sym2688} OPTIONAL
+ } OPTIONAL,
+ -- R1-24 feature: Extend beamSwitchTiming-r16 for FR2-2
+ beamSwitchTiming-r17 SEQUENCE {
+ scs-480kHz-r17 ENUMERATED {sym896, sym1344} OPTIONAL,
+ scs-960kHz-r17 ENUMERATED {sym1792, sym2688} OPTIONAL
+ } OPTIONAL,
+ -- R1-24 feature: Extend beamReportTiming for FR2-2
+ beamReportTiming-v1710 SEQUENCE {
+ scs-480kHz-r17 ENUMERATED {sym56, sym112, sym224} OPTIONAL,
+ scs-960kHz-r17 ENUMERATED {sym112, sym224, sym448} OPTIONAL
+ } OPTIONAL,
+ -- R1-24 feature: Extend maximum number of RX/TX beam switch DL for FR2-2
+ maxNumberRxTxBeamSwitchDL-v1710 SEQUENCE {
+ scs-480kHz-r17 ENUMERATED {n2, n4, n7} OPTIONAL,
+ scs-960kHz-r17 ENUMERATED {n1, n2, n4, n7} OPTIONAL
+ } OPTIONAL
+ ]],
+ [[
+ -- R1-23-1-4a: Semi-persistent/aperiodic capability value report
+ srs-PortReportSP-AP-r17 ENUMERATED {supported} OPTIONAL,
+ maxNumberRxBeam-v1720 INTEGER (9..12) OPTIONAL,
+ -- R1-23-6-5 Support implicit configuration of RS(s) with two TCI states for beam failure detection
+ sfn-ImplicitRS-twoTCI-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1-23-6-6 QCL-TypeD collision handling with CORESET with 2 TCI states
+ sfn-QCL-TypeD-Collision-twoTCI-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1-23-7-1c Basic Features of CSI Enhancement for Multi-TRP - number of CPUs
+ mTRP-CSI-numCPU-r17 ENUMERATED {n2, n3, n4} OPTIONAL
+ ]],
+ [[
+ supportRepNumPDSCH-TDRA-DCI-1-2-r17 ENUMERATED {n2, n3, n4, n5, n6, n7, n8, n16} OPTIONAL
]]
}
@@ -10256,6 +14930,12 @@ DummyI ::= SEQUENCE {
txSwitchImpactToRx ENUMERATED {true} OPTIONAL
}
+CSI-MultiTRP-SupportedCombinations-r17 ::= SEQUENCE {
+ maxNumTx-Ports-r17 ENUMERATED {n2, n4, n8, n12, n16, n24, n32},
+ maxTotalNumCMR-r17 INTEGER (2..64),
+ maxTotalNumTx-PortsNZP-CSI-RS-r17 INTEGER (2..256)
+}
+
-- TAG-MIMO-PARAMETERSPERBAND-STOP
-- TAG-MODULATIONORDER-START
@@ -10288,6 +14968,14 @@ MRDC-Parameters-v1590 ::= SEQUENCE {
interBandContiguousMRDC ENUMERATED {supported} OPTIONAL
}
+MRDC-Parameters-v15g0 ::= SEQUENCE {
+ simultaneousRxTxInterBandENDCPerBandPair SimultaneousRxTxPerBandPair OPTIONAL
+}
+
+MRDC-Parameters-v15n0 ::= SEQUENCE {
+ intraBandENDC-Support-UL ENUMERATED {non-contiguous, both} OPTIONAL
+}
+
MRDC-Parameters-v1620 ::= SEQUENCE {
maxUplinkDutyCycle-interBandENDC-TDD-PC2-r16 SEQUENCE{
eutra-TDD-Config0-r16 ENUMERATED {n20, n40, n50, n60, n70, n80, n90, n100} OPTIONAL,
@@ -10308,7 +14996,7 @@ MRDC-Parameters-v1620 ::= SEQUENCE {
tdm-restrictionDualTX-FDD-endc-r16 ENUMERATED {supported} OPTIONAL
}
-MRDC-Parameters-v1630 ::= SEQUENCE {
+MRDC-Parameters-v1630 ::= SEQUENCE {
-- R4 2-20 Maximum uplink duty cycle for FDD+TDD EN-DC power class 2
maxUplinkDutyCycle-interBandENDC-FDD-TDD-PC2-r16 SEQUENCE {
maxUplinkDutyCycle-FDD-TDD-EN-DC1-r16 ENUMERATED {n30, n40, n50, n60, n70, n80, n90, n100} OPTIONAL,
@@ -10319,6 +15007,17 @@ MRDC-Parameters-v1630 ::= SEQUENCE {
interBandMRDC-WithOverlapDL-Bands-r16 ENUMERATED {supported} OPTIONAL
}
+MRDC-Parameters-v1700 ::= SEQUENCE {
+ condPSCellAdditionENDC-r17 ENUMERATED {supported} OPTIONAL,
+ scg-ActivationDeactivationENDC-r17 ENUMERATED {supported} OPTIONAL,
+ scg-ActivationDeactivationResumeENDC-r17 ENUMERATED {supported} OPTIONAL
+}
+
+MRDC-Parameters-v1770 ::= SEQUENCE {
+ -- R4 26-1: Higher Power Limit CA DC
+ higherPowerLimitMRDC-r17 ENUMERATED {supported} OPTIONAL
+}
+
-- TAG-MRDC-PARAMETERS-STOP
-- TAG-NRDC-PARAMETERS-START
@@ -10346,8 +15045,28 @@ NRDC-Parameters-v1610 ::= SEQUENCE {
measAndMobParametersNRDC-v1610 MeasAndMobParametersMRDC-v1610 OPTIONAL
}
+NRDC-Parameters-v1700 ::= SEQUENCE {
+ f1c-OverNR-RRC-r17 ENUMERATED {supported} OPTIONAL,
+ measAndMobParametersNRDC-v1700 MeasAndMobParametersMRDC-v1700
+}
-- TAG-NRDC-PARAMETERS-STOP
+-- TAG-NTN-PARAMETERS-START
+
+NTN-Parameters-r17 ::= SEQUENCE {
+ inactiveStateNTN-r17 ENUMERATED {supported} OPTIONAL,
+ ra-SDT-NTN-r17 ENUMERATED {supported} OPTIONAL,
+ srb-SDT-NTN-r17 ENUMERATED {supported} OPTIONAL,
+ measAndMobParametersNTN-r17 MeasAndMobParameters OPTIONAL,
+ mac-ParametersNTN-r17 MAC-Parameters OPTIONAL,
+ phy-ParametersNTN-r17 Phy-Parameters OPTIONAL,
+ fdd-Add-UE-NR-CapabilitiesNTN-r17 UE-NR-CapabilityAddXDD-Mode OPTIONAL,
+ fr1-Add-UE-NR-CapabilitiesNTN-r17 UE-NR-CapabilityAddFRX-Mode OPTIONAL,
+ ue-BasedPerfMeas-ParametersNTN-r17 UE-BasedPerfMeas-Parameters-r16 OPTIONAL,
+ son-ParametersNTN-r17 SON-Parameters-r16 OPTIONAL
+}
+
+-- TAG-NTN-PARAMETERS-STOP
-- TAG-OLPC-SRS-POS-START
OLPC-SRS-Pos-r16 ::= SEQUENCE {
@@ -10392,6 +15111,18 @@ PDCP-Parameters ::= SEQUENCE {
cs1024, cs2048, cs4096, cs8192, cs16384, cs32768, cs65536} OPTIONAL,
jointEHC-ROHC-Config-r16 ENUMERATED {supported} OPTIONAL,
pdcp-DuplicationMoreThanTwoRLC-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ longSN-RedCap-r17 ENUMERATED {supported} OPTIONAL,
+ udc-r17 SEQUENCE {
+ standardDictionary-r17 ENUMERATED {supported} OPTIONAL,
+ operatorDictionary-r17 SEQUENCE {
+ versionOfDictionary-r17 INTEGER (0..15),
+ associatedPLMN-ID-r17 PLMN-Identity
+ } OPTIONAL,
+ continueUDC-r17 ENUMERATED {supported} OPTIONAL,
+ supportOfBufferSize-r17 ENUMERATED {kbyte4, kbyte8} OPTIONAL
+ } OPTIONAL
]]
}
@@ -10418,6 +15149,10 @@ Phy-Parameters ::= SEQUENCE {
phy-ParametersFR2 Phy-ParametersFR2 OPTIONAL
}
+Phy-Parameters-v16a0 ::= SEQUENCE {
+ phy-ParametersCommon-v16a0 Phy-ParametersCommon-v16a0 OPTIONAL
+}
+
Phy-ParametersCommon ::= SEQUENCE {
csi-RS-CFRA-ForHO ENUMERATED {supported} OPTIONAL,
dynamicPRB-BundlingDL ENUMERATED {supported} OPTIONAL,
@@ -10483,9 +15218,9 @@ Phy-ParametersCommon ::= SEQUENCE {
-- R1 14-8: CSI trigger states containing non-active BWP
csi-TriggerStateNon-ActiveBWP-r16 ENUMERATED {supported} OPTIONAL,
-- R1 20-2: Support up to 4 SMTCs configured for an IAB node MT per frequency location, including IAB-specific SMTC window periodicities
- seperateSMTC-InterIAB-Support-r16 ENUMERATED {supported} OPTIONAL,
+ separateSMTC-InterIAB-Support-r16 ENUMERATED {supported} OPTIONAL,
-- R1 20-3: Support RACH configuration separately from the RACH configuration for UE access, including new IAB-specific offset and scaling factors
- seperateRACH-IAB-Support-r16 ENUMERATED {supported} OPTIONAL,
+ separateRACH-IAB-Support-r16 ENUMERATED {supported} OPTIONAL,
-- R1 20-5a: Support semi-static configuration/indication of UL-Flexible-DL slot formats for IAB-MT resources
ul-flexibleDL-SlotFormatSemiStatic-IAB-r16 ENUMERATED {supported} OPTIONAL,
-- R1 20-5b: Support dynamic indication of UL-Flexible-DL slot formats for IAB-MT resources
@@ -10528,11 +15263,11 @@ Phy-ParametersCommon ::= SEQUENCE {
maxNumberResAcrossCC-AcrossFR-r16 ENUMERATED {n2, n4, n8, n12, n16, n32, n40, n48, n64, n72, n80, n96, n128, n256}
OPTIONAL
} OPTIONAL,
- -- R1 16-2a-4: HARQ-ACK for multi-DCI based multi-TRP – separate
+ -- R1 16-2a-4: HARQ-ACK for multi-DCI based multi-TRP - separate
harqACK-separateMultiDCI-MultiTRP-r16 SEQUENCE {
maxNumberLongPUCCHs-r16 ENUMERATED {longAndLong, longAndShort, shortAndShort} OPTIONAL
} OPTIONAL,
- -- R1 16-2a-4: HARQ-ACK for multi-DCI based multi-TRP – joint
+ -- R1 16-2a-4: HARQ-ACK for multi-DCI based multi-TRP - joint
harqACK-jointMultiDCI-MultiTRP-r16 ENUMERATED {supported} OPTIONAL,
-- R4 9-1: BWP switching on multiple CCs RRM requirements
bwp-SwitchingMultiCCs-r16 CHOICE {
@@ -10562,9 +15297,67 @@ Phy-ParametersCommon ::= SEQUENCE {
newBeamIdentifications2PortCSI-RS-r16 ENUMERATED {supported} OPTIONAL,
-- R1 16-1j-2: Support of 2 port CSI-RS for pathloss estimation
pathlossEstimation2PortCSI-RS-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ mux-HARQ-ACK-withoutPUCCH-onPUSCH-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ -- R1 31-1: Support of Desired Guard Symbol reporting and provided guard symbol reception.
+ guardSymbolReportReception-IAB-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-2: support of restricted IAB-DU beam reception
+ restricted-IAB-DU-BeamReception-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-3: support of recommended IAB-MT beam transmission for DL and UL beam
+ recommended-IAB-MT-BeamTransmission-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-4: support of case 6 timing alignment indication reception
+ case6-TimingAlignmentReception-IAB-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-5: support of case 7 timing offset indication reception and case 7 timing at parent-node indication reception
+ case7-TimingAlignmentReception-IAB-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-6: support of desired DL Tx power adjustment reporting and DL Tx power adjustment reception
+ dl-tx-PowerAdjustment-IAB-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-7: support of desired IAB-MT PSD range reporting
+ desired-ul-tx-PowerAdjustment-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-8: support of monitoring DCI Format 2_5 scrambled by AI-RNTI for indication of FDM soft resource availability to an IAB node
+ fdm-SoftResourceAvailability-DynamicIndication-r17 ENUMERATED{supported} OPTIONAL,
+ -- R1 31-10: Support of updated T_delta range reception
+ updated-T-DeltaRangeReception-r17 ENUMERATED{supported} OPTIONAL,
+ -- R1 30-5: Support slot based dynamic PUCCH repetition indication for PUCCH formats 0/1/2/3/4
+ slotBasedDynamicPUCCH-Rep-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-1: Support of HARQ-ACK deferral in case of TDD collision
+ sps-HARQ-ACK-Deferral-r17 SEQUENCE {
+ non-SharedSpectrumChAccess-r17 ENUMERATED {supported} OPTIONAL,
+ sharedSpectrumChAccess-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ -- R1 23-1-1k Maximum number of configured CC lists (per UE)
+ unifiedJointTCI-commonUpdate-r17 INTEGER (1..4) OPTIONAL,
+ -- R1 23-2-1c PDCCH repetition with a single span of three contiguous OFDM symbols that is within the first four OFDM symbols in a slot
+ mTRP-PDCCH-singleSpan-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 27-23: Support of more than one activated PRS processing windows across all active DL BWPs
+ supportedActivatedPRS-ProcessingWindow-r17 ENUMERATED {n2, n3, n4} OPTIONAL,
+ cg-TimeDomainAllocationExtension-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ -- R1 25-20: Propagation delay compensation based on Rel-15 TA procedure for TN and licensed
+ ta-BasedPDC-TN-NonSharedSpectrumChAccess-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 31-11: Directional Collision Handling in DC operation
+ directionalCollisionDC-IAB-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ dummy1 ENUMERATED {supported} OPTIONAL,
+ dummy2 ENUMERATED {supported} OPTIONAL,
+ dummy3 ENUMERATED {supported} OPTIONAL,
+ dummy4 ENUMERATED {supported} OPTIONAL,
+ srs-AdditionalRepetition-r17 ENUMERATED {supported} OPTIONAL,
+ pusch-Repetition-CG-SDT-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ multiPDSCH-PerSlotType1-CB-Support-r17 ENUMERATED {supported} OPTIONAL
]]
}
+Phy-ParametersCommon-v16a0 ::= SEQUENCE {
+ srs-PeriodicityAndOffsetExt-r16 ENUMERATED {supported} OPTIONAL
+}
+
Phy-ParametersXDD-Diff ::= SEQUENCE {
dynamicSFI ENUMERATED {supported} OPTIONAL,
twoPUCCH-F0-2-ConsecSymbols ENUMERATED {supported} OPTIONAL,
@@ -10672,8 +15465,15 @@ Phy-ParametersFRX-Diff ::= SEQUENCE {
twoTCI-Act-servingCellInCC-List-r16 ENUMERATED {supported} OPTIONAL
]],
[[
- -- R1 22-11: Support of ‘cri-RI-CQI’ report without non-PMI-PortIndication
+ -- R1 22-11: Support of 'cri-RI-CQI' report without non-PMI-PortIndication
cri-RI-CQI-WithoutNon-PMI-PortInd-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ -- R1 25-11: 4-bits subband CQI for TN and licensed
+ cqi-4-BitsSubbandTN-NonSharedSpectrumChAccess-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ multipleCORESET-RedCap-r17 ENUMERATED {supported} OPTIONAL
]]
}
@@ -10686,6 +15486,11 @@ Phy-ParametersFR1 ::= SEQUENCE {
[[
pdsch-RE-MappingFR1-PerSlot ENUMERATED {n16, n32, n48, n64, n80, n96, n112, n128,
n144, n160, n176, n192, n208, n224, n240, n256} OPTIONAL
+ ]],
+ [[
+ -- R1 22-12: PDCCH monitoring with a single span of three contiguous OFDM symbols that is within the first four OFDM symbols in a
+ -- slot
+ pdcch-MonitoringSingleSpanFirst4Sym-r16 ENUMERATED {supported} OPTIONAL
]]
}
@@ -10780,6 +15585,29 @@ Phy-ParametersSharedSpectrumChAccess-r16 ::= SEQUENCE {
}
-- TAG-PHY-PARAMETERSSHAREDSPECTRUMCHACCESS-STOP
+-- TAG-POSSRS-RRC-INACTIVE-OUTSIDEINITIALUL-BWP-START
+
+PosSRS-RRC-Inactive-OutsideInitialUL-BWP-r17::= SEQUENCE {
+ -- R1 27-15b: Positioning SRS transmission in RRC_INACTIVE state configured outside initial UL BWP
+ maxSRSposBandwidthForEachSCS-withinCC-FR1-r17 ENUMERATED {mhz5, mhz10, mhz15, mhz20, mhz25, mhz30, mhz35, mhz40,
+ mhz45, mhz50, mhz60, mhz70, mhz80, mhz90, mhz100} OPTIONAL,
+ maxSRSposBandwidthForEachSCS-withinCC-FR2-r17 ENUMERATED {mhz50, mhz100, mhz200, mhz400} OPTIONAL,
+ maxNumOfSRSposResourceSets-r17 ENUMERATED {n1, n2, n4, n8, n12, n16} OPTIONAL,
+ maxNumOfPeriodicSRSposResources-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL,
+ maxNumOfPeriodicSRSposResourcesPerSlot-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14} OPTIONAL,
+ differentNumerologyBetweenSRSposAndInitialBWP-r17 ENUMERATED {supported} OPTIONAL,
+ srsPosWithoutRestrictionOnBWP-r17 ENUMERATED {supported} OPTIONAL,
+ maxNumOfPeriodicAndSemipersistentSRSposResources-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL,
+ maxNumOfPeriodicAndSemipersistentSRSposResourcesPerSlot-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14} OPTIONAL,
+ differentCenterFreqBetweenSRSposAndInitialBWP-r17 ENUMERATED {supported} OPTIONAL,
+ switchingTimeSRS-TX-OtherTX-r17 ENUMERATED {us100, us140, us200, us300, us500} OPTIONAL,
+ -- R1 27-15c: Support of positioning SRS transmission in RRC_INACTIVE state outside initial BWP with semi-persistent SRS
+ maxNumOfSemiPersistentSRSposResources-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL,
+ maxNumOfSemiPersistentSRSposResourcesPerSlot-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14} OPTIONAL,
+ ...
+}
+
+-- TAG-POSSRS-RRC-INACTIVE-OUTSIDEINITIALUL-BWP-STOP
-- TAG-POWSAV-PARAMETERS-START
PowSav-Parameters-r16 ::= SEQUENCE {
@@ -10788,6 +15616,11 @@ PowSav-Parameters-r16 ::= SEQUENCE {
...
}
+PowSav-Parameters-v1700 ::= SEQUENCE {
+ powSav-ParametersFR2-2-r17 PowSav-ParametersFR2-2-r17 OPTIONAL,
+ ...
+}
+
PowSav-ParametersCommon-r16 ::= SEQUENCE {
drx-Preference-r16 ENUMERATED {supported} OPTIONAL,
maxCC-Preference-r16 ENUMERATED {supported} OPTIONAL,
@@ -10803,6 +15636,12 @@ PowSav-ParametersFRX-Diff-r16 ::= SEQUENCE {
...
}
+PowSav-ParametersFR2-2-r17 ::= SEQUENCE {
+ maxBW-Preference-r17 ENUMERATED {supported} OPTIONAL,
+ maxMIMO-LayerPreference-r17 ENUMERATED {supported} OPTIONAL,
+ ...
+}
+
-- TAG-POWSAV-PARAMETERS-STOP
-- TAG-PROCESSINGPARAMETERS-START
@@ -10819,11 +15658,56 @@ ProcessingParameters ::= SEQUENCE {
NumberOfCarriers ::= INTEGER (1..16)
-- TAG-PROCESSINGPARAMETERS-STOP
+-- TAG-PRS-PROCESSINGCAPABILITYOUTSIDEMGINPPWPERType-START
+
+PRS-ProcessingCapabilityOutsideMGinPPWperType-r17 ::= SEQUENCE {
+ prsProcessingType-r17 ENUMERATED {type1A, type1B, type2},
+ ppw-dl-PRS-BufferType-r17 ENUMERATED {type1, type2, ...},
+ ppw-durationOfPRS-Processing-r17 CHOICE {
+ ppw-durationOfPRS-Processing1-r17 SEQUENCE {
+ ppw-durationOfPRS-ProcessingSymbolsN-r17 ENUMERATED {msDot125, msDot25, msDot5, ms1, ms2, ms4, ms6, ms8, ms12,
+ ms16, ms20, ms25, ms30, ms32, ms35, ms40, ms45, ms50},
+ ppw-durationOfPRS-ProcessingSymbolsT-r17 ENUMERATED {ms1, ms2, ms4, ms8, ms16, ms20, ms30, ms40, ms80,
+ ms160, ms320, ms640, ms1280}
+ },
+ ppw-durationOfPRS-Processing2-r17 SEQUENCE {
+ ppw-durationOfPRS-ProcessingSymbolsN2-r17 ENUMERATED {msDot125, msDot25, msDot5, ms1, ms2, ms3, ms4, ms5,
+ ms6, ms8, ms12},
+ ppw-durationOfPRS-ProcessingSymbolsT2-r17 ENUMERATED {ms4, ms5, ms6, ms8}
+ }
+ } OPTIONAL,
+ ppw-maxNumOfDL-PRS-ResProcessedPerSlot-r17 SEQUENCE {
+ scs15-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ scs30-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ scs60-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ scs120-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, n32, n48, n64} OPTIONAL,
+ ...
+ },
+ ppw-maxNumOfDL-Bandwidth-r17 CHOICE {
+ fr1-r17 ENUMERATED {mhz5, mhz10, mhz20, mhz40, mhz50, mhz80, mhz100},
+ fr2-r17 ENUMERATED {mhz50, mhz100, mhz200, mhz400}
+ } OPTIONAL
+}
+
+-- TAG-PRS-PROCESSINGCAPABILITYOUTSIDEMGINPPWPERType-STOP
-- TAG-RAT-TYPE-START
RAT-Type ::= ENUMERATED {nr, eutra-nr, eutra, utra-fdd-v1610, ...}
-- TAG-RAT-TYPE-STOP
+-- TAG-REDCAPPARAMETERS-START
+
+RedCapParameters-r17::= SEQUENCE {
+ -- R1 28-1: RedCap UE
+ supportOfRedCap-r17 ENUMERATED {supported} OPTIONAL,
+ supportOf16DRB-RedCap-r17 ENUMERATED {supported} OPTIONAL
+}
+
+RedCapParameters-v1740::= SEQUENCE {
+ ncd-SSB-ForRedCapInitialBWP-SDT-r17 ENUMERATED {supported} OPTIONAL
+}
+
+-- TAG-REDCAPPARAMETERS-STOP
-- TAG-RF-PARAMETERS-START
RF-Parameters ::= SEQUENCE {
@@ -10861,10 +15745,64 @@ RF-Parameters ::= SEQUENCE {
]],
[[
extendedBand-n77-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-UplinkTxSwitch-v1670 BandCombinationList-UplinkTxSwitch-v1670 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1680 BandCombinationList-v1680 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1690 BandCombinationList-v1690 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1690 BandCombinationList-UplinkTxSwitch-v1690 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1700 BandCombinationList-v1700 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1700 BandCombinationList-UplinkTxSwitch-v1700 OPTIONAL,
+ supportedBandCombinationListSL-RelayDiscovery-r17 OCTET STRING OPTIONAL, -- Contains PC5 BandCombinationListSidelinkNR-r16
+ supportedBandCombinationListSL-NonRelayDiscovery-r17 OCTET STRING OPTIONAL, -- Contains PC5 BandCombinationListSidelinkNR-r16
+ supportedBandCombinationListSidelinkEUTRA-NR-v1710 BandCombinationListSidelinkEUTRA-NR-v1710 OPTIONAL,
+ sidelinkRequested-r17 ENUMERATED {true} OPTIONAL,
+ extendedBand-n77-2-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1720 BandCombinationList-v1720 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1720 BandCombinationList-UplinkTxSwitch-v1720 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1730 BandCombinationList-v1730 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1730 BandCombinationList-UplinkTxSwitch-v1730 OPTIONAL,
+ supportedBandCombinationListSL-RelayDiscovery-v1730 BandCombinationListSL-Discovery-r17 OPTIONAL,
+ supportedBandCombinationListSL-NonRelayDiscovery-v1730 BandCombinationListSL-Discovery-r17 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1740 BandCombinationList-v1740 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1740 BandCombinationList-UplinkTxSwitch-v1740 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1760 BandCombinationList-v1760 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1760 BandCombinationList-UplinkTxSwitch-v1760 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1770 BandCombinationList-v1770 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1770 BandCombinationList-UplinkTxSwitch-v1770 OPTIONAL
]]
}
+RF-Parameters-v15g0 ::= SEQUENCE {
+ supportedBandCombinationList-v15g0 BandCombinationList-v15g0 OPTIONAL
+}
+
+RF-Parameters-v16a0 ::= SEQUENCE {
+ supportedBandCombinationList-v16a0 BandCombinationList-v16a0 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v16a0 BandCombinationList-UplinkTxSwitch-v16a0 OPTIONAL
+}
+
+RF-Parameters-v16c0 ::= SEQUENCE {
+ supportedBandListNR-v16c0 SEQUENCE (SIZE (1..maxBands)) OF BandNR-v16c0
+}
+
BandNR ::= SEQUENCE {
bandNR FreqBandIndicatorNR,
modifiedMPR-Behaviour BIT STRING (SIZE (8)) OPTIONAL,
@@ -11032,9 +15970,226 @@ BandNR ::= SEQUENCE {
[[
enhancedSkipUplinkTxConfigured-v1660 ENUMERATED {supported} OPTIONAL,
enhancedSkipUplinkTxDynamic-v1660 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ maxUplinkDutyCycle-PC1dot5-MPE-FR1-r16 ENUMERATED {n10, n15, n20, n25, n30, n40, n50, n60, n70, n80, n90, n100} OPTIONAL,
+ txDiversity-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ -- R1 36-1: Support of 1024QAM for PDSCH for FR1
+ pdsch-1024QAM-FR1-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 22-1 support of FR2 HST operation
+ ue-PowerClass-v1700 ENUMERATED {pc5, pc6, pc7} OPTIONAL,
+ -- R1 24: NR extension to 71GHz (FR2-2)
+ fr2-2-AccessParamsPerBand-r17 FR2-2-AccessParamsPerBand-r17 OPTIONAL,
+ rlm-Relaxation-r17 ENUMERATED {supported} OPTIONAL,
+ bfd-Relaxation-r17 ENUMERATED {supported} OPTIONAL,
+ cg-SDT-r17 ENUMERATED {supported} OPTIONAL,
+ locationBasedCondHandover-r17 ENUMERATED {supported} OPTIONAL,
+ timeBasedCondHandover-r17 ENUMERATED {supported} OPTIONAL,
+ eventA4BasedCondHandover-r17 ENUMERATED {supported} OPTIONAL,
+ mn-InitiatedCondPSCellChangeNRDC-r17 ENUMERATED {supported} OPTIONAL,
+ sn-InitiatedCondPSCellChangeNRDC-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 29-3a: PDCCH skipping
+ pdcch-SkippingWithoutSSSG-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 29-3b: 2 search space sets group switching
+ sssg-Switching-1BitInd-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 29-3c: 3 search space sets group switching
+ sssg-Switching-2BitInd-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 29-3d: 2 search space sets group switching with PDCCH skipping
+ pdcch-SkippingWithSSSG-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 29-3e: Support Search space set group switching capability 2 for FR1
+ searchSpaceSetGrp-switchCap2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 26-1: Uplink Time and Frequency pre-compensation and timing relationship enhancements
+ uplinkPreCompensation-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 26-4: UE reporting of information related to TA pre-compensation
+ uplink-TA-Reporting-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 26-5: Increasing the number of HARQ processes
+ max-HARQ-ProcessNumber-r17 ENUMERATED {u16d32, u32d16, u32d32} OPTIONAL,
+ -- R1 26-6: Type-2 HARQ codebook enhancement
+ type2-HARQ-Codebook-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 26-6a: Type-1 HARQ codebook enhancement
+ type1-HARQ-Codebook-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 26-6b: Type-3 HARQ codebook enhancement
+ type3-HARQ-Codebook-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 26-9: UE-specific K_offset
+ ue-specific-K-Offset-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1f: Multiple PDSCH scheduling by single DCI for 120kHz in FR2-1
+ multiPDSCH-SingleDCI-FR2-1-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 24-1g: Multiple PUSCH scheduling by single DCI for 120kHz in FR2-1
+ multiPUSCH-SingleDCI-FR2-1-SCS-120kHz-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 14-4: Parallel PRS measurements in RRC_INACTIVE state, FR1/FR2 diff
+ parallelPRS-MeasRRC-Inactive-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 27-1-2: Support of UE-TxTEGs for UL TDOA
+ nr-UE-TxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL,
+ -- R1 27-17: PRS processing in RRC_INACTIVE
+ prs-ProcessingRRC-Inactive-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 27-3-2: DL PRS measurement outside MG and in a PRS processing window
+ prs-ProcessingWindowType1A-r17 ENUMERATED {option1, option2, option3} OPTIONAL,
+ prs-ProcessingWindowType1B-r17 ENUMERATED {option1, option2, option3} OPTIONAL,
+ prs-ProcessingWindowType2-r17 ENUMERATED {option1, option2, option3} OPTIONAL,
+ -- R1 27-15: Positioning SRS transmission in RRC_INACTIVE state for initial UL BWP
+ srs-AllPosResourcesRRC-Inactive-r17 SRS-AllPosResourcesRRC-Inactive-r17 OPTIONAL,
+ -- R1 27-16: OLPC for positioning SRS in RRC_INACTIVE state - gNB
+ olpc-SRS-PosRRC-Inactive-r17 OLPC-SRS-Pos-r16 OPTIONAL,
+ -- R1 27-19: Spatial relation for positioning SRS in RRC_INACTIVE state - gNB
+ spatialRelationsSRS-PosRRC-Inactive-r17 SpatialRelationsSRS-Pos-r16 OPTIONAL,
+ -- R1 30-1: Increased maximum number of PUSCH Type A repetitions
+ maxNumberPUSCH-TypeA-Repetition-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-2: PUSCH Type A repetitions based on available slots
+ puschTypeA-RepetitionsAvailSlot-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-3: TB processing over multi-slot PUSCH
+ tb-ProcessingMultiSlotPUSCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-3a: Repetition of TB processing over multi-slot PUSCH
+ tb-ProcessingRepMultiSlotPUSCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4: The maximum duration for DM-RS bundling
+ maxDurationDMRS-Bundling-r17 SEQUENCE {
+ fdd-r17 ENUMERATED {n4, n8, n16, n32} OPTIONAL,
+ tdd-r17 ENUMERATED {n2, n4, n8, n16} OPTIONAL
+ } OPTIONAL,
+ -- R1 30-6: Repetition of PUSCH transmission scheduled by RAR UL grant and DCI format 0_0 with CRC scrambled by TC-RNTI
+ pusch-RepetitionMsg3-r17 ENUMERATED {supported} OPTIONAL,
+ sharedSpectrumChAccessParamsPerBand-v1710 SharedSpectrumChAccessParamsPerBand-v1710 OPTIONAL,
+ -- R4 25-2: Parallel measurements on cells belonging to a different NGSO satellite than a serving satellite without scheduling restrictions
+ -- on normal operations with the serving cell
+ parallelMeasurementWithoutRestriction-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 25-5: Parallel measurements on multiple NGSO satellites within a SMTC
+ maxNumber-NGSO-SatellitesWithinOneSMTC-r17 ENUMERATED {n1, n2, n3, n4} OPTIONAL,
+ -- R1 26-10: K1 range extension
+ k1-RangeExtension-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 35-1: Aperiodic CSI-RS for tracking for fast SCell activation
+ aperiodicCSI-RS-FastScellActivation-r17 SEQUENCE {
+ maxNumberAperiodicCSI-RS-PerCC-r17 ENUMERATED {n8, n16, n32, n48, n64, n128, n255},
+ maxNumberAperiodicCSI-RS-AcrossCCs-r17 ENUMERATED {n8, n16, n32, n64, n128, n256, n512, n1024}
+ } OPTIONAL,
+ -- R1 35-2: Aperiodic CSI-RS bandwidth for tracking for fast SCell activation for 10MHz UE channel bandwidth
+ aperiodicCSI-RS-AdditionalBandwidth-r17 ENUMERATED {addBW-Set1, addBW-Set2} OPTIONAL,
+ -- R1 28-1a: RRC-configured DL BWP without CD-SSB or NCD-SSB
+ bwp-WithoutCD-SSB-OrNCD-SSB-RedCap-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 28-3: Half-duplex FDD operation type A for RedCap UE
+ halfDuplexFDD-TypeA-RedCap-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 27-15b: Positioning SRS transmission in RRC_INACTIVE state configured outside initial UL BWP
+ posSRS-RRC-Inactive-OutsideInitialUL-BWP-r17 PosSRS-RRC-Inactive-OutsideInitialUL-BWP-r17 OPTIONAL,
+ -- R4 15-3 UE support of CBW for 480kHz SCS
+ channelBWs-DL-SCS-480kHz-FR2-2-r17 BIT STRING (SIZE (8)) OPTIONAL,
+ channelBWs-UL-SCS-480kHz-FR2-2-r17 BIT STRING (SIZE (8)) OPTIONAL,
+ -- R4 15-4 UE support of CBW for 960kHz SCS
+ channelBWs-DL-SCS-960kHz-FR2-2-r17 BIT STRING (SIZE (8)) OPTIONAL,
+ channelBWs-UL-SCS-960kHz-FR2-2-r17 BIT STRING (SIZE (8)) OPTIONAL,
+ -- R4 17-1 UL gap for Tx power management
+ ul-GapFR2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-4: One-shot HARQ ACK feedback triggered by DCI format 1_2
+ oneShotHARQ-feedbackTriggeredByDCI-1-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-5: PHY priority handling for one-shot HARQ ACK feedback
+ oneShotHARQ-feedbackPhy-Priority-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-6: Enhanced type 3 HARQ-ACK codebook feedback
+ enhancedType3-HARQ-CodebookFeedback-r17 SEQUENCE {
+ enhancedType3-HARQ-Codebooks-r17 ENUMERATED {n1, n2, n4, n8},
+ maxNumberPUCCH-Transmissions-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n7}
+ } OPTIONAL,
+ -- R1 25-7: Triggered HARQ-ACK codebook re-transmission
+ triggeredHARQ-CodebookRetx-r17 SEQUENCE {
+ minHARQ-Retx-Offset-r17 ENUMERATED {n-7, n-5, n-3, n-1, n1},
+ maxHARQ-Retx-Offset-r17 ENUMERATED {n4, n6, n8, n10, n12, n14, n16, n18, n20, n22, n24}
+ } OPTIONAL
+ ]],
+ [[
+ -- R4 22-2 support of one shot large UL timing adjustment
+ ue-OneShotUL-TimingAdj-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-2: Repetitions for PUCCH format 0, and 2 over multiple slots with K = 2, 4, 8
+ pucch-Repetition-F0-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-11a: 4-bits subband CQI for NTN and unlicensed
+ cqi-4-BitsSubbandNTN-SharedSpectrumChAccess-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-16: HARQ-ACK with different priorities multiplexing on a PUCCH/PUSCH
+ mux-HARQ-ACK-DiffPriorities-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-20a: Propagation delay compensation based on Rel-15 TA procedure for NTN and unlicensed
+ ta-BasedPDC-NTN-SharedSpectrumChAccess-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-2b: DCI-based enabling/disabling ACK/NACK-based feedback for dynamic scheduling for multicast
+ ack-NACK-FeedbackForMulticastWithDCI-Enabler-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-2e: Multiple G-RNTIs for group-common PDSCHs
+ maxNumberG-RNTI-r17 INTEGER (2..8) OPTIONAL,
+ -- R1 33-2f: Dynamic multicast with DCI format 4_2
+ dynamicMulticastDCI-Format4-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-2i: Supported maximal modulation order for multicast PDSCH
+ maxModulationOrderForMulticast-r17 CHOICE {
+ fr1-r17 ENUMERATED {qam256, qam1024},
+ fr2-r17 ENUMERATED {qam64, qam256}
+ } OPTIONAL,
+ -- R1 33-3-1: Dynamic Slot-level repetition for group-common PDSCH for TN and licensed
+ dynamicSlotRepetitionMulticastTN-NonSharedSpectrumChAccess-r17 ENUMERATED {n8, n16} OPTIONAL,
+ -- R1 33-3-1a: Dynamic Slot-level repetition for group-common PDSCH for NTN and unlicensed
+ dynamicSlotRepetitionMulticastNTN-SharedSpectrumChAccess-r17 ENUMERATED {n8, n16} OPTIONAL,
+ -- R1 33-4-1: DCI-based enabling/disabling NACK-only based feedback for dynamic scheduling for multicast
+ nack-OnlyFeedbackForMulticastWithDCI-Enabler-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-1b: DCI-based enabling/disabling ACK/NACK-based feedback for dynamic scheduling for multicast
+ ack-NACK-FeedbackForSPS-MulticastWithDCI-Enabler-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-1h: Multiple G-CS-RNTIs for SPS group-common PDSCHs
+ maxNumberG-CS-RNTI-r17 INTEGER (2..8) OPTIONAL,
+ -- R1 33-10: Support group-common PDSCH RE-level rate matching for multicast
+ re-LevelRateMatchingForMulticast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 36-1a: Support of 1024QAM for PDSCH with maximum 2 MIMO layers for FR1
+ pdsch-1024QAM-2MIMO-FR1-r17 ENUMERATED {supported} OPTIONAL,
+ -- R4 14-3 PRS measurement without MG
+ prs-MeasurementWithoutMG-r17 ENUMERATED {cpLength, quarterSymbol, halfSymbol, halfSlot} OPTIONAL,
+ -- R4 25-7: The number of target LEO satellites the UE can monitor per carrier
+ maxNumber-LEO-SatellitesPerCarrier-r17 INTEGER (3..4) OPTIONAL,
+ -- R1 27-3-3 DL PRS Processing Capability outside MG - buffering capability
+ prs-ProcessingCapabilityOutsideMGinPPW-r17 SEQUENCE (SIZE(1..3)) OF PRS-ProcessingCapabilityOutsideMGinPPWperType-r17 OPTIONAL,
+ -- R1 27-15a: Positioning SRS transmission in RRC_INACTIVE state for initial UL BWP with semi-persistent SRS
+ srs-SemiPersistent-PosResourcesRRC-Inactive-r17 SEQUENCE {
+ maxNumOfSemiPersistentSRSposResources-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64},
+ maxNumOfSemiPersistentSRSposResourcesPerSlot-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14}
+ } OPTIONAL,
+ -- R2: UE support of CBW for 120kHz SCS
+ channelBWs-DL-SCS-120kHz-FR2-2-r17 BIT STRING (SIZE (8)) OPTIONAL,
+ channelBWs-UL-SCS-120kHz-FR2-2-r17 BIT STRING (SIZE (8)) OPTIONAL
+ ]],
+ [[
+ -- R1 30-4a: DM-RS bundling for PUSCH repetition type A
+ dmrs-BundlingPUSCH-RepTypeA-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4b: DM-RS bundling for PUSCH repetition type B
+ dmrs-BundlingPUSCH-RepTypeB-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4c: DM-RS bundling for TB processing over multi-slot PUSCH
+ dmrs-BundlingPUSCH-multiSlot-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4d: DMRS bundling for PUCCH repetitions
+ dmrs-BundlingPUCCH-Rep-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4e: Enhanced inter-slot frequency hopping with inter-slot bundling for PUSCH
+ interSlotFreqHopInterSlotBundlingPUSCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4f: Enhanced inter-slot frequency hopping for PUCCH repetitions with DMRS bundling
+ interSlotFreqHopPUCCH-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4g: Restart DM-RS bundling
+ dmrs-BundlingRestart-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 30-4h: DM-RS bundling for non-back-to-back transmission
+ dmrs-BundlingNonBackToBackTX-r17 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ -- R1 33-5-1e: Dynamic Slot-level repetition for SPS group-common PDSCH for multicast
+ maxDynamicSlotRepetitionForSPS-Multicast-r17 ENUMERATED {n8, n16} OPTIONAL,
+ -- R1 33-5-1g: DCI-based enabling/disabling NACK-only based feedback for SPS group-common PDSCH for multicast
+ nack-OnlyFeedbackForSPS-MulticastWithDCI-Enabler-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-1i: Multicast SPS scheduling with DCI format 4_2
+ sps-MulticastDCI-Format4-2-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-5-2: Multiple SPS group-common PDSCH configuration on PCell
+ sps-MulticastMultiConfig-r17 INTEGER (1..8) OPTIONAL,
+ -- R1 33-6-1: DL priority indication for multicast in DCI
+ priorityIndicatorInDCI-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-6-1a: DL priority configuration for SPS multicast
+ priorityIndicatorInDCI-SPS-Multicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-6-2: Two HARQ-ACK codebooks simultaneously constructed for supporting HARQ-ACK codebooks with different priorities
+ -- for unicast and multicast at a UE
+ twoHARQ-ACK-CodebookForUnicastAndMulticast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-6-3: More than one PUCCH for HARQ-ACK transmission for multicast or for unicast and multicast within a slot
+ multiPUCCH-HARQ-ACK-ForMulticastUnicast-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 33-9: Supporting unicast PDCCH to release SPS group-common PDSCH
+ releaseSPS-MulticastWithCS-RNTI-r17 ENUMERATED {supported} OPTIONAL
]]
}
+BandNR-v16c0 ::= SEQUENCE {
+ pusch-RepetitionTypeA-v16c0 ENUMERATED {supported} OPTIONAL,
+ ...
+}
+
-- TAG-RF-PARAMETERS-STOP
-- TAG-RF-PARAMETERSMRDC-START
@@ -11085,9 +16240,51 @@ RF-ParametersMRDC ::= SEQUENCE {
supportedBandCombinationList-v1640 BandCombinationList-v1640 OPTIONAL,
supportedBandCombinationListNEDC-Only-v1640 BandCombinationList-v1640 OPTIONAL,
supportedBandCombinationList-UplinkTxSwitch-v1640 BandCombinationList-UplinkTxSwitch-v1640 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-UplinkTxSwitch-v1670 BandCombinationList-UplinkTxSwitch-v1670 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1700 BandCombinationList-v1700 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1700 BandCombinationList-UplinkTxSwitch-v1700 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1720 BandCombinationList-v1720 OPTIONAL,
+ supportedBandCombinationListNEDC-Only-v1720 SEQUENCE {
+ supportedBandCombinationList-v1700 BandCombinationList-v1700 OPTIONAL,
+ supportedBandCombinationList-v1720 BandCombinationList-v1720 OPTIONAL
+ } OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1720 BandCombinationList-UplinkTxSwitch-v1720 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1730 BandCombinationList-v1730 OPTIONAL,
+ supportedBandCombinationListNEDC-Only-v1730 BandCombinationList-v1730 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1730 BandCombinationList-UplinkTxSwitch-v1730 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1740 BandCombinationList-v1740 OPTIONAL,
+ supportedBandCombinationListNEDC-Only-v1740 BandCombinationList-v1740 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1740 BandCombinationList-UplinkTxSwitch-v1740 OPTIONAL
+ ]],
+ [[
+ supportedBandCombinationList-v1770 BandCombinationList-v1770 OPTIONAL,
+ supportedBandCombinationList-UplinkTxSwitch-v1770 BandCombinationList-UplinkTxSwitch-v1770 OPTIONAL
]]
}
+RF-ParametersMRDC-v15g0 ::= SEQUENCE {
+ supportedBandCombinationList-v15g0 BandCombinationList-v15g0 OPTIONAL,
+ supportedBandCombinationListNEDC-Only-v15g0 BandCombinationList-v15g0 OPTIONAL
+}
+
+RF-ParametersMRDC-v15n0 ::= SEQUENCE {
+supportedBandCombinationList-v15n0 BandCombinationList-v15n0 OPTIONAL
+}
+
+RF-ParametersMRDC-v16e0 ::= SEQUENCE {
+supportedBandCombinationList-UplinkTxSwitch-v16e0 BandCombinationList-UplinkTxSwitch-v16e0 OPTIONAL
+}
+
-- TAG-RF-PARAMETERSMRDC-STOP
-- TAG-RLC-PARAMETERS-START
@@ -11099,6 +16296,9 @@ RLC-Parameters ::= SEQUENCE {
[[
extendedT-PollRetransmit-r16 ENUMERATED {supported} OPTIONAL,
extendedT-StatusProhibit-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ am-WithLongSN-RedCap-r17 ENUMERATED {supported} OPTIONAL
]]
}
@@ -11129,7 +16329,14 @@ SidelinkParametersNR-r16 ::= SEQUENCE {
fdd-Add-UE-Sidelink-Capabilities-r16 UE-SidelinkCapabilityAddXDD-Mode-r16 OPTIONAL,
tdd-Add-UE-Sidelink-Capabilities-r16 UE-SidelinkCapabilityAddXDD-Mode-r16 OPTIONAL,
supportedBandListSidelink-r16 SEQUENCE (SIZE (1..maxBands)) OF BandSidelink-r16 OPTIONAL,
- ...
+ ...,
+ [[
+ relayParameters-r17 RelayParameters-r17 OPTIONAL
+ ]],
+ [[
+ -- R1 32-x: Use of new P0 parameters for open loop power control
+ p0-OLPC-Sidelink-r17 ENUMERATED {supported} OPTIONAL
+ ]]
}
SidelinkParametersEUTRA-r16 ::= SEQUENCE {
@@ -11159,7 +16366,10 @@ UE-SidelinkCapabilityAddXDD-Mode-r16 ::= SEQUENCE {
MAC-ParametersSidelinkCommon-r16 ::= SEQUENCE {
lcp-RestrictionSidelink-r16 ENUMERATED {supported} OPTIONAL,
multipleConfiguredGrantsSidelink-r16 ENUMERATED {supported} OPTIONAL,
- ...
+ ...,
+ [[
+ drx-OnSidelink-r17 ENUMERATED {supported} OPTIONAL
+ ]]
}
MAC-ParametersSidelinkXDD-Diff-r16 ::= SEQUENCE {
@@ -11252,15 +16462,77 @@ BandSidelink-r16 ::= SEQUENCE {
sl-openLoopPC-RSRP-ReportSidelink-r16 ENUMERATED {supported} OPTIONAL,
--13-1
sl-Rx-256QAM-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ ue-PowerClassSidelink-r16 ENUMERATED {pc2, pc3, spare6, spare5, spare4, spare3, spare2, spare1}
+ OPTIONAL
+ ]],
+ [[
+ --32-4a
+ sl-TransmissionMode2-RandomResourceSelection-r17 SEQUENCE {
+ harq-TxProcessModeTwoSidelink-r17 ENUMERATED {n8, n16},
+ scs-CP-PatternTxSidelinkModeTwo-r17 CHOICE {
+ fr1-r17 SEQUENCE {
+ scs-15kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-30kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-60kHz-r17 BIT STRING (SIZE (16)) OPTIONAL
+ },
+ fr2-r17 SEQUENCE {
+ scs-60kHz-r17 BIT STRING (SIZE (16)) OPTIONAL,
+ scs-120kHz-r17 BIT STRING (SIZE (16)) OPTIONAL
+ }
+ } OPTIONAL,
+ extendedCP-Mode2Random-r17 ENUMERATED {supported} OPTIONAL,
+ dl-openLoopPC-Sidelink-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ --32-4b
+ sync-Sidelink-v1710 SEQUENCE {
+ sync-GNSS-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-Sync-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-GNSS-UE-SyncWithPriorityOnGNB-ENB-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-GNSS-UE-SyncWithPriorityOnGNSS-r17 ENUMERATED {supported} OPTIONAL
+ } OPTIONAL,
+ --32-4c
+ enb-sync-Sidelink-v1710 ENUMERATED {supported} OPTIONAL,
+ --32-5a-2
+ rx-IUC-Scheme1-PreferredMode2Sidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --32-5a-3
+ rx-IUC-Scheme1-NonPreferredMode2Sidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --32-5b-2
+ rx-IUC-Scheme2-Mode2Sidelink-r17 ENUMERATED {n5, n15, n25, n32, n35, n45, n50, n64} OPTIONAL,
+ --32-6-1
+ rx-IUC-Scheme1-SCI-r17 ENUMERATED {supported} OPTIONAL,
+ --32-6-2
+ rx-IUC-Scheme1-SCI-ExplicitReq-r17 ENUMERATED {supported} OPTIONAL
]]
}
+RelayParameters-r17 ::= SEQUENCE {
+ relayUE-Operation-L2-r17 ENUMERATED {supported} OPTIONAL,
+ remoteUE-Operation-L2-r17 ENUMERATED {supported} OPTIONAL,
+ remoteUE-PathSwitchToIdleInactiveRelay-r17 ENUMERATED {supported} OPTIONAL,
+ ...
+}
+
-- TAG-SIDELINKPARAMETERS-STOP
+-- TAG-SIMULTANEOUSRXTXPERBANDPAIR-START
+
+SimultaneousRxTxPerBandPair ::= BIT STRING (SIZE (3..496))
+
+-- TAG-SIMULTANEOUSRXTXPERBANDPAIR-STOP
-- TAG-SON-PARAMETERS-START
SON-Parameters-r16 ::= SEQUENCE {
rach-Report-r16 ENUMERATED {supported} OPTIONAL,
- ...
+ ...,
+ [[
+ rlfReportCHO-r17 ENUMERATED {supported} OPTIONAL,
+ rlfReportDAPS-r17 ENUMERATED {supported} OPTIONAL,
+ success-HO-Report-r17 ENUMERATED {supported} OPTIONAL,
+ twoStepRACH-Report-r17 ENUMERATED {supported} OPTIONAL,
+ pscell-MHI-Report-r17 ENUMERATED {supported} OPTIONAL,
+ onDemandSI-Report-r17 ENUMERATED {supported} OPTIONAL
+ ]]
}
-- TAG-SON-PARAMETERS-STOP
@@ -11276,6 +16548,22 @@ SpatialRelationsSRS-Pos-r16 ::= SEQUENCE {
}
--TAG-SPATIALRELATIONSSRS-POS-STOP
+-- TAG-SRS-ALLPOSRESOURCESRRC-INACTIVE-START
+
+SRS-AllPosResourcesRRC-Inactive-r17 ::= SEQUENCE {
+ srs-PosResourcesRRC-Inactive-r17 SEQUENCE {
+ -- R1 27-15: Positioning SRS transmission in RRC_INACTIVE state for initial UL BWP
+ maxNumberSRS-PosResourceSetPerBWP-r17 ENUMERATED {n1, n2, n4, n8, n12, n16},
+ maxNumberSRS-PosResourcesPerBWP-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64},
+ maxNumberSRS-ResourcesPerBWP-PerSlot-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14},
+ maxNumberPeriodicSRS-PosResourcesPerBWP-r17 ENUMERATED {n1, n2, n4, n8, n16, n32, n64},
+ maxNumberPeriodicSRS-PosResourcesPerBWP-PerSlot-r17 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14},
+ dummy1 ENUMERATED {n1, n2, n4, n8, n16, n32, n64 },
+ dummy2 ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14}
+ }
+}
+
+-- TAG-SRS-ALLPOSRESOURCESRRC-INACTIVE-STOP
-- TAG-SRS-SWITCHINGTIMENR-START
SRS-SwitchingTimeNR ::= SEQUENCE {
@@ -11300,6 +16588,11 @@ SupportedBandwidth ::= CHOICE {
fr2 ENUMERATED {mhz50, mhz100, mhz200, mhz400}
}
+SupportedBandwidth-v1700 ::= CHOICE {
+ fr1-r17 ENUMERATED {mhz5, mhz10, mhz15, mhz20, mhz25, mhz30, mhz35, mhz40, mhz45, mhz50, mhz60, mhz70, mhz80, mhz90, mhz100},
+ fr2-r17 ENUMERATED {mhz50, mhz100, mhz200, mhz400, mhz800, mhz1600, mhz2000}
+}
+
-- TAG-SUPPORTEDBANDWIDTH-STOP
-- TAG-UE-BASEDPERFMEAS-PARAMETERS-START
@@ -11314,7 +16607,13 @@ UE-BasedPerfMeas-Parameters-r16 ::= SEQUENCE {
speedMeasReport-r16 ENUMERATED {supported} OPTIONAL,
gnss-Location-r16 ENUMERATED {supported} OPTIONAL,
ulPDCP-Delay-r16 ENUMERATED {supported} OPTIONAL,
- ...
+ ...,
+ [[
+ sigBasedLogMDT-OverrideProtect-r17 ENUMERATED {supported} OPTIONAL,
+ multipleCEF-Report-r17 ENUMERATED {supported} OPTIONAL,
+ excessPacketDelay-r17 ENUMERATED {supported} OPTIONAL,
+ earlyMeasLog-r17 ENUMERATED {supported} OPTIONAL
+ ]]
}
-- TAG-UE-BASEDPERFMEAS-PARAMETERS-STOP
@@ -11359,6 +16658,9 @@ UE-CapabilityRequestFilterCommon ::= SEQUENCE {
]],
[[
requestedCellGrouping-r16 SEQUENCE (SIZE (1..maxCellGroupings-r16)) OF CellGrouping-r16 OPTIONAL -- Cond NRDC
+ ]],
+ [[
+ fallbackGroupFiveRequest-r17 ENUMERATED {true} OPTIONAL -- Need N
]]
}
@@ -11378,6 +16680,11 @@ UE-CapabilityRequestFilterNR ::= SEQUENCE {
UE-CapabilityRequestFilterNR-v1540 ::= SEQUENCE {
srs-SwitchingTimeRequest ENUMERATED {true} OPTIONAL, -- Need N
+ nonCriticalExtension UE-CapabilityRequestFilterNR-v1710 OPTIONAL
+}
+
+UE-CapabilityRequestFilterNR-v1710 ::= SEQUENCE {
+ sidelinkRequest-r17 ENUMERATED {true} OPTIONAL, -- Need N
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -11395,10 +16702,11 @@ UE-MRDC-Capability ::= SEQUENCE {
fr2-Add-UE-MRDC-Capabilities UE-MRDC-CapabilityAddFRX-Mode OPTIONAL,
featureSetCombinations SEQUENCE (SIZE (1..maxFeatureSetCombinations)) OF FeatureSetCombination OPTIONAL,
pdcp-ParametersMRDC-v1530 PDCP-ParametersMRDC OPTIONAL,
- lateNonCriticalExtension OCTET STRING OPTIONAL,
+ lateNonCriticalExtension OCTET STRING (CONTAINING UE-MRDC-Capability-v15g0) OPTIONAL,
nonCriticalExtension UE-MRDC-Capability-v1560 OPTIONAL
}
+-- Regular non-critical extensions:
UE-MRDC-Capability-v1560 ::= SEQUENCE {
receivedFilters OCTET STRING (CONTAINING UECapabilityEnquiry-v1560-IEs) OPTIONAL,
measAndMobParametersMRDC-v1560 MeasAndMobParametersMRDC-v1560 OPTIONAL,
@@ -11411,6 +16719,34 @@ UE-MRDC-Capability-v1610 ::= SEQUENCE {
measAndMobParametersMRDC-v1610 MeasAndMobParametersMRDC-v1610 OPTIONAL,
generalParametersMRDC-v1610 GeneralParametersMRDC-v1610 OPTIONAL,
pdcp-ParametersMRDC-v1610 PDCP-ParametersMRDC-v1610 OPTIONAL,
+ nonCriticalExtension UE-MRDC-Capability-v1700 OPTIONAL
+}
+
+UE-MRDC-Capability-v1700 ::= SEQUENCE {
+ measAndMobParametersMRDC-v1700 MeasAndMobParametersMRDC-v1700,
+ nonCriticalExtension UE-MRDC-Capability-v1730 OPTIONAL
+}
+
+UE-MRDC-Capability-v1730 ::= SEQUENCE {
+ measAndMobParametersMRDC-v1730 MeasAndMobParametersMRDC-v1730 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- Late non-critical extensions:
+UE-MRDC-Capability-v15g0 ::= SEQUENCE {
+ rf-ParametersMRDC-v15g0 RF-ParametersMRDC-v15g0 OPTIONAL,
+ nonCriticalExtension UE-MRDC-Capability-v15n0 OPTIONAL
+}
+
+UE-MRDC-Capability-v15n0 ::= SEQUENCE {
+ rf-ParametersMRDC-v15n0 RF-ParametersMRDC-v15n0 OPTIONAL,
+-- Following field is only for REL-15 late non-critical extensions
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UE-MRDC-Capability-v16e0 OPTIONAL
+}
+
+UE-MRDC-Capability-v16e0 ::= SEQUENCE {
+ rf-ParametersMRDC-v16e0 RF-ParametersMRDC-v16e0 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
@@ -11461,7 +16797,7 @@ UE-NR-Capability ::= SEQUENCE {
nonCriticalExtension UE-NR-Capability-v1530 OPTIONAL
}
--- Regular non-critical extensions:
+-- Regular non-critical Rel-15 extensions:
UE-NR-Capability-v1530 ::= SEQUENCE {
fdd-Add-UE-NR-Capabilities-v1530 UE-NR-CapabilityAddXDD-Mode-v1530 OPTIONAL,
tdd-Add-UE-NR-Capabilities-v1530 UE-NR-CapabilityAddXDD-Mode-v1530 OPTIONAL,
@@ -11498,14 +16834,25 @@ UE-NR-Capability-v1570 ::= SEQUENCE {
nonCriticalExtension UE-NR-Capability-v1610 OPTIONAL
}
--- Late non-critical extensions:
+-- Late non-critical Rel-15 extensions:
UE-NR-Capability-v15c0 ::= SEQUENCE {
nrdc-Parameters-v15c0 NRDC-Parameters-v15c0 OPTIONAL,
partialFR2-FallbackRX-Req ENUMERATED {true} OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension UE-NR-Capability-v15g0 OPTIONAL
}
--- Regular non-critical extensions:
+UE-NR-Capability-v15g0 ::= SEQUENCE {
+ rf-Parameters-v15g0 RF-Parameters-v15g0 OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v15j0 OPTIONAL
+}
+
+UE-NR-Capability-v15j0 ::= SEQUENCE {
+ -- Following field is only for REL-15 late non-critical extensions
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v16a0 OPTIONAL
+}
+
+-- Regular non-critical Rel-16 extensions:
UE-NR-Capability-v1610 ::= SEQUENCE {
inDeviceCoexInd-r16 ENUMERATED {supported} OPTIONAL,
dl-DedicatedMessageSegmentation-r16 ENUMERATED {supported} OPTIONAL,
@@ -11539,22 +16886,83 @@ UE-NR-Capability-v1640 ::= SEQUENCE {
UE-NR-Capability-v1650 ::= SEQUENCE {
mpsPriorityIndication-r16 ENUMERATED {supported} OPTIONAL,
highSpeedParameters-v1650 HighSpeedParameters-v1650 OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v1690 OPTIONAL
+}
+
+UE-NR-Capability-v1690 ::= SEQUENCE {
+ ul-RRC-Segmentation-r16 ENUMERATED {supported} OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v1700 OPTIONAL
+}
+
+-- Late non-critical extensions from Rel-16 onwards:
+UE-NR-Capability-v16a0 ::= SEQUENCE {
+ phy-Parameters-v16a0 Phy-Parameters-v16a0 OPTIONAL,
+ rf-Parameters-v16a0 RF-Parameters-v16a0 OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v16c0 OPTIONAL
+}
+
+UE-NR-Capability-v16c0 ::= SEQUENCE {
+ rf-Parameters-v16c0 RF-Parameters-v16c0 OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v16d0 OPTIONAL
+}
+
+UE-NR-Capability-v16d0 ::= SEQUENCE {
+ featureSets-v16d0 FeatureSets-v16d0 OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
-UE-NR-CapabilityAddXDD-Mode ::= SEQUENCE {
- phy-ParametersXDD-Diff Phy-ParametersXDD-Diff OPTIONAL,
- mac-ParametersXDD-Diff MAC-ParametersXDD-Diff OPTIONAL,
- measAndMobParametersXDD-Diff MeasAndMobParametersXDD-Diff OPTIONAL
+-- Regular non-critical Rel-17 extensions:
+UE-NR-Capability-v1700 ::= SEQUENCE {
+ inactiveStatePO-Determination-r17 ENUMERATED {supported} OPTIONAL,
+ highSpeedParameters-v1700 HighSpeedParameters-v1700 OPTIONAL,
+ powSav-Parameters-v1700 PowSav-Parameters-v1700 OPTIONAL,
+ mac-Parameters-v1700 MAC-Parameters-v1700 OPTIONAL,
+ ims-Parameters-v1700 IMS-Parameters-v1700 OPTIONAL,
+ measAndMobParameters-v1700 MeasAndMobParameters-v1700,
+ appLayerMeasParameters-r17 AppLayerMeasParameters-r17 OPTIONAL,
+ redCapParameters-r17 RedCapParameters-r17 OPTIONAL,
+ ra-SDT-r17 ENUMERATED {supported} OPTIONAL,
+ srb-SDT-r17 ENUMERATED {supported} OPTIONAL,
+ gNB-SideRTT-BasedPDC-r17 ENUMERATED {supported} OPTIONAL,
+ bh-RLF-DetectionRecovery-Indication-r17 ENUMERATED {supported} OPTIONAL,
+ nrdc-Parameters-v1700 NRDC-Parameters-v1700 OPTIONAL,
+ bap-Parameters-v1700 BAP-Parameters-v1700 OPTIONAL,
+ musim-GapPreference-r17 ENUMERATED {supported} OPTIONAL,
+ musimLeaveConnected-r17 ENUMERATED {supported} OPTIONAL,
+ mbs-Parameters-r17 MBS-Parameters-r17,
+ nonTerrestrialNetwork-r17 ENUMERATED {supported} OPTIONAL,
+ ntn-ScenarioSupport-r17 ENUMERATED {gso, ngso} OPTIONAL,
+ sliceInfoforCellReselection-r17 ENUMERATED {supported} OPTIONAL,
+ ue-RadioPagingInfo-r17 UE-RadioPagingInfo-r17 OPTIONAL,
+ -- R4 17-2 UL gap pattern for Tx power management
+ ul-GapFR2-Pattern-r17 BIT STRING (SIZE (4)) OPTIONAL,
+ ntn-Parameters-r17 NTN-Parameters-r17 OPTIONAL,
+ nonCriticalExtension UE-NR-Capability-v1740 OPTIONAL
+}
+
+UE-NR-Capability-v1740 ::= SEQUENCE {
+ redCapParameters-v1740 RedCapParameters-v1740,
+ nonCriticalExtension UE-NR-Capability-v1750 OPTIONAL
+}
+
+UE-NR-Capability-v1750 ::= SEQUENCE {
+ crossCarrierSchedulingConfigurationRelease-r17 ENUMERATED {supported} OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+UE-NR-CapabilityAddXDD-Mode ::= SEQUENCE {
+ phy-ParametersXDD-Diff Phy-ParametersXDD-Diff OPTIONAL,
+ mac-ParametersXDD-Diff MAC-ParametersXDD-Diff OPTIONAL,
+ measAndMobParametersXDD-Diff MeasAndMobParametersXDD-Diff OPTIONAL
}
UE-NR-CapabilityAddXDD-Mode-v1530 ::= SEQUENCE {
eutra-ParametersXDD-Diff EUTRA-ParametersXDD-Diff
}
-UE-NR-CapabilityAddFRX-Mode ::= SEQUENCE {
- phy-ParametersFRX-Diff Phy-ParametersFRX-Diff OPTIONAL,
- measAndMobParametersFRX-Diff MeasAndMobParametersFRX-Diff OPTIONAL
+UE-NR-CapabilityAddFRX-Mode ::= SEQUENCE {
+ phy-ParametersFRX-Diff Phy-ParametersFRX-Diff OPTIONAL,
+ measAndMobParametersFRX-Diff MeasAndMobParametersFRX-Diff OPTIONAL
}
UE-NR-CapabilityAddFRX-Mode-v1540 ::= SEQUENCE {
@@ -11571,7 +16979,25 @@ BAP-Parameters-r16 ::= SEQUENCE {
flowControlRouting-ID-Based-r16 ENUMERATED {supported} OPTIONAL
}
+BAP-Parameters-v1700 ::= SEQUENCE {
+ bapHeaderRewriting-Rerouting-r17 ENUMERATED {supported} OPTIONAL,
+ bapHeaderRewriting-Routing-r17 ENUMERATED {supported} OPTIONAL
+}
+
+MBS-Parameters-r17 ::= SEQUENCE {
+ maxMRB-Add-r17 INTEGER (1..16) OPTIONAL
+}
+
-- TAG-UE-NR-CAPABILITY-STOP
+-- TAG-UE-RADIOPAGINGINFO-START
+
+UE-RadioPagingInfo-r17 ::= SEQUENCE {
+ -- R1 29-1: Paging enhancement
+ pei-SubgroupingSupportBandList-r17 SEQUENCE (SIZE (1..maxBands)) OF FreqBandIndicatorNR OPTIONAL,
+ ...
+}
+
+-- TAG-UE-RADIOPAGINGINFO-STOP
-- TAG-SHAREDSPECTRUMCHACCESSPARAMSPERBAND-START
SharedSpectrumChAccessParamsPerBand-r16 ::= SEQUENCE {
@@ -11686,12 +17112,46 @@ SharedSpectrumChAccessParamsPerBand-v1650 ::= SEQUENCE {
extendedSearchSpaceSwitchWithDCI-r16 ENUMERATED {supported} OPTIONAL
}
+SharedSpectrumChAccessParamsPerBand-v1710 ::= SEQUENCE {
+ -- R1 25-12: UE initiated semi-static channel occupancy with dependent configurations
+ ul-Semi-StaticChAccessDependentConfig-r17 ENUMERATED {supported} OPTIONAL,
+ -- R1 25-13: UE initiated semi-static channel occupancy with independent configurations
+ ul-Semi-StaticChAccessIndependentConfig-r17 ENUMERATED {supported} OPTIONAL
+}
+
-- TAG-SHAREDSPECTRUMCHACCESSPARAMSPERBAND-STOP
-- TAG-ABSOLUTETIMEINFO-START
AbsoluteTimeInfo-r16 ::= BIT STRING (SIZE (48))
-- TAG-ABSOLUTETIMEINFO-STOP
+-- TAG-APPLAYERMEASCONFIG-START
+
+AppLayerMeasConfig-r17 ::= SEQUENCE {
+ measConfigAppLayerToAddModList-r17 SEQUENCE (SIZE (1..maxNrofAppLayerMeas-r17)) OF MeasConfigAppLayer-r17 OPTIONAL, -- Need N
+ measConfigAppLayerToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofAppLayerMeas-r17)) OF MeasConfigAppLayerId-r17 OPTIONAL, -- Need N
+ rrc-SegAllowed-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ ...
+}
+
+MeasConfigAppLayer-r17 ::= SEQUENCE {
+ measConfigAppLayerId-r17 MeasConfigAppLayerId-r17,
+ measConfigAppLayerContainer-r17 OCTET STRING (SIZE (1..8000)) OPTIONAL, -- Need N
+ serviceType-r17 ENUMERATED {streaming, mtsi, vr, spare5, spare4, spare3, spare2, spare1} OPTIONAL, -- Need M
+ pauseReporting-r17 BOOLEAN OPTIONAL, -- Need M
+ transmissionOfSessionStartStop-r17 BOOLEAN OPTIONAL, -- Need M
+ ran-VisibleParameters-r17 CHOICE {release NULL, setup RAN-VisibleParameters-r17} OPTIONAL, -- Cond ServiceType
+ ...
+}
+
+RAN-VisibleParameters-r17 ::= SEQUENCE {
+ ran-VisiblePeriodicity-r17 ENUMERATED {ms120, ms240, ms480, ms640, ms1024} OPTIONAL, -- Need S
+ numberOfBufferLevelEntries-r17 INTEGER (1..8) OPTIONAL, -- Need R
+ reportPlayoutDelayForMediaStartup-r17 BOOLEAN OPTIONAL, -- Need M
+ ...
+}
+
+-- TAG-APPLAYERMEASCONFIG-STOP
-- TAG-AREACONFIGURATION-START
AreaConfiguration-r16 ::= SEQUENCE {
@@ -11699,6 +17159,11 @@ AreaConfiguration-r16 ::= SEQUENCE {
interFreqTargetList-r16 SEQUENCE(SIZE (1..maxFreq)) OF InterFreqTargetInfo-r16 OPTIONAL -- Need R
}
+AreaConfiguration-r17 ::= SEQUENCE {
+ areaConfig-r17 AreaConfig-r16 OPTIONAL, -- Need R
+ interFreqTargetList-r17 SEQUENCE(SIZE (1..maxFreq)) OF InterFreqTargetInfo-r16 OPTIONAL -- Need R
+}
+
AreaConfig-r16 ::= CHOICE {
cellGlobalIdList-r16 CellGlobalIdList-r16,
trackingAreaCodeList-r16 TrackingAreaCodeList-r16,
@@ -11706,8 +17171,8 @@ AreaConfig-r16 ::= CHOICE {
}
InterFreqTargetInfo-r16 ::= SEQUENCE {
- dl-CarrierFreq ARFCN-ValueNR,
- cellList SEQUENCE (SIZE (1..32)) OF PhysCellId OPTIONAL
+ dl-CarrierFreq-r16 ARFCN-ValueNR,
+ cellList-r16 SEQUENCE (SIZE (1..32)) OF PhysCellId OPTIONAL -- Need R
}
CellGlobalIdList-r16 ::= SEQUENCE (SIZE (1..32)) OF CGI-Info-Logging-r16
@@ -11729,6 +17194,11 @@ BT-NameList-r16 ::= SEQUENCE (SIZE (1..maxBT-Name-r16)) OF BT-Nam
BT-Name-r16 ::= OCTET STRING (SIZE (1..248))
-- TAG-BTNAMELIST-STOP
+-- TAG-DEDICATEDINFOF1C-START
+
+DedicatedInfoF1c-r17 ::= OCTET STRING
+
+-- TAG-DEDICATEDINFOF1C-STOP
-- TAG-EUTRA-ALLOWEDMEASBANDWIDTH-START
EUTRA-AllowedMeasBandwidth ::= ENUMERATED {mbw6, mbw15, mbw25, mbw50, mbw75, mbw100}
@@ -11879,6 +17349,12 @@ WLAN-RTT-r16 ::= SEQUENCE {
...
}
+-- TAG-LOGMEASRESULTLISTWLAN-STOP
+-- TAG-MEASCONFIGAPPLAYERID-START
+
+MeasConfigAppLayerId-r17 ::= INTEGER (0..maxNrofAppLayerMeas-1-r17)
+
+-- TAG-MEASCONFIGAPPLAYERID-STOP
-- TAG-OTHERCONFIG-START
OtherConfig ::= SEQUENCE {
@@ -11894,7 +17370,6 @@ OtherConfig-v1540 ::= SEQUENCE {
overheatingAssistanceConfig CHOICE {release NULL, setup OverheatingAssistanceConfig} OPTIONAL, -- Need M
...
}
-CandidateServingFreqListNR-r16 ::= SEQUENCE (SIZE (1..maxFreqIDC-r16)) OF ARFCN-ValueNR
OtherConfig-v1610 ::= SEQUENCE {
idc-AssistanceConfig-r16 CHOICE {release NULL, setup IDC-AssistanceConfig-r16} OPTIONAL, -- Need M
@@ -11904,12 +17379,45 @@ OtherConfig-v1610 ::= SEQUENCE {
maxMIMO-LayerPreferenceConfig-r16 CHOICE {release NULL, setup MaxMIMO-LayerPreferenceConfig-r16} OPTIONAL, -- Need M
minSchedulingOffsetPreferenceConfig-r16 CHOICE {release NULL, setup MinSchedulingOffsetPreferenceConfig-r16} OPTIONAL, -- Need M
releasePreferenceConfig-r16 CHOICE {release NULL, setup ReleasePreferenceConfig-r16} OPTIONAL, -- Need M
- referenceTimePreferenceReporting-r16 ENUMERATED {true} OPTIONAL, -- Need R
+ referenceTimePreferenceReporting-r16 ENUMERATED {true} OPTIONAL, -- Need R
btNameList-r16 CHOICE {release NULL, setup BT-NameList-r16} OPTIONAL, -- Need M
wlanNameList-r16 CHOICE {release NULL, setup WLAN-NameList-r16} OPTIONAL, -- Need M
sensorNameList-r16 CHOICE {release NULL, setup Sensor-NameList-r16} OPTIONAL, -- Need M
- obtainCommonLocation-r16 ENUMERATED {true} OPTIONAL, -- Need R
- sl-AssistanceConfigNR-r16 ENUMERATED{true} OPTIONAL -- Need R
+ obtainCommonLocation-r16 ENUMERATED {true} OPTIONAL, -- Need R
+ sl-AssistanceConfigNR-r16 ENUMERATED{true} OPTIONAL -- Need R
+}
+
+OtherConfig-v1700 ::= SEQUENCE {
+ ul-GapFR2-PreferenceConfig-r17 ENUMERATED {true} OPTIONAL, -- Need R
+ musim-GapAssistanceConfig-r17 CHOICE {release NULL, setup MUSIM-GapAssistanceConfig-r17} OPTIONAL, -- Need M
+ musim-LeaveAssistanceConfig-r17 CHOICE {release NULL, setup MUSIM-LeaveAssistanceConfig-r17} OPTIONAL, -- Need M
+ successHO-Config-r17 CHOICE {release NULL, setup SuccessHO-Config-r17} OPTIONAL, -- Need M
+ maxBW-PreferenceConfigFR2-2-r17 ENUMERATED {true} OPTIONAL, -- Cond maxBW
+ maxMIMO-LayerPreferenceConfigFR2-2-r17 ENUMERATED {true} OPTIONAL, -- Cond maxMIMO
+ minSchedulingOffsetPreferenceConfigExt-r17 ENUMERATED {true} OPTIONAL, -- Cond minOffset
+ rlm-RelaxationReportingConfig-r17 CHOICE {release NULL, setup RLM-RelaxationReportingConfig-r17} OPTIONAL, -- Need M
+ bfd-RelaxationReportingConfig-r17 CHOICE {release NULL, setup BFD-RelaxationReportingConfig-r17} OPTIONAL, -- Need M
+ scg-DeactivationPreferenceConfig-r17 CHOICE {release NULL, setup SCG-DeactivationPreferenceConfig-r17} OPTIONAL, -- Cond SCG
+ rrm-MeasRelaxationReportingConfig-r17 CHOICE {release NULL, setup RRM-MeasRelaxationReportingConfig-r17} OPTIONAL, -- Need M
+ propDelayDiffReportConfig-r17 CHOICE {release NULL, setup PropDelayDiffReportConfig-r17} OPTIONAL -- Need M
+}
+
+CandidateServingFreqListNR-r16 ::= SEQUENCE (SIZE (1..maxFreqIDC-r16)) OF ARFCN-ValueNR
+
+MUSIM-GapAssistanceConfig-r17 ::= SEQUENCE {
+ musim-GapProhibitTimer-r17 ENUMERATED {s0, s0dot1, s0dot2, s0dot3, s0dot4, s0dot5, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10}
+}
+
+MUSIM-LeaveAssistanceConfig-r17 ::= SEQUENCE {
+ musim-LeaveWithoutResponseTimer-r17 ENUMERATED {ms10, ms20, ms40, ms60, ms80, ms100, spare2, spare1}
+}
+
+SuccessHO-Config-r17 ::= SEQUENCE {
+ thresholdPercentageT304-r17 ENUMERATED {p40, p60, p80, spare5, spare4, spare3, spare2, spare1} OPTIONAL, --Need R
+ thresholdPercentageT310-r17 ENUMERATED {p40, p60, p80, spare5, spare4, spare3, spare2, spare1} OPTIONAL, --Need R
+ thresholdPercentageT312-r17 ENUMERATED {p20, p40, p60, p80, spare4, spare3, spare2, spare1} OPTIONAL, --Need R
+ sourceDAPS-FailureReporting-r17 ENUMERATED {true} OPTIONAL, --Need R
+ ...
}
OverheatingAssistanceConfig ::= SEQUENCE {
@@ -11959,6 +17467,39 @@ ReleasePreferenceConfig-r16 ::= SEQUENCE {
connectedReporting ENUMERATED {true} OPTIONAL -- Need R
}
+RLM-RelaxationReportingConfig-r17 ::= SEQUENCE {
+ rlm-RelaxtionReportingProhibitTimer ENUMERATED {s0, s0dot5, s1, s2, s5, s10, s20, s30,
+ s60, s90, s120, s300, s600, infinity, spare2, spare1}
+}
+
+BFD-RelaxationReportingConfig-r17 ::= SEQUENCE {
+ bfd-RelaxtionReportingProhibitTimer ENUMERATED {s0, s0dot5, s1, s2, s5, s10, s20, s30,
+ s60, s90, s120, s300, s600, infinity, spare2, spare1}
+}
+
+SCG-DeactivationPreferenceConfig-r17 ::= SEQUENCE {
+ scg-DeactivationPreferenceProhibitTimer-r17 ENUMERATED {
+ s0, s1, s2, s4, s8, s10, s15, s30,
+ s60, s120, s180, s240, s300, s600, s900, s1800}
+}
+
+RRM-MeasRelaxationReportingConfig-r17 ::= SEQUENCE {
+ s-SearchDeltaP-Stationary-r17 ENUMERATED {dB2, dB3, dB6, dB9, dB12, dB15, spare2, spare1},
+ t-SearchDeltaP-Stationary-r17 ENUMERATED {s5, s10, s20, s30, s60, s120, s180, s240, s300, spare7, spare6, spare5,
+ spare4, spare3, spare2, spare1}
+}
+
+PropDelayDiffReportConfig-r17 ::= SEQUENCE {
+ threshPropDelayDiff-r17 ENUMERATED {ms0dot5, ms1, ms2, ms3, ms4, ms5, ms6 ,ms7, ms8, ms9, ms10, spare5,
+ spare4, spare3, spare2, spare1} OPTIONAL, -- Need M
+ neighCellInfoList-r17 SEQUENCE (SIZE (1..maxCellNTN-r17)) OF NeighbourCellInfo-r17 OPTIONAL -- Need M
+}
+
+NeighbourCellInfo-r17 ::= SEQUENCE {
+epochTime-r17 EpochTime-r17,
+ephemerisInfo-r17 EphemerisInfo-r17
+}
+
-- TAG-OTHERCONFIG-STOP
-- TAG-PHYSCELLIDUTRA-FDD-START
@@ -11995,7 +17536,11 @@ UE-MeasurementsAvailable-r16 ::= SEQUENCE {
logMeasAvailableWLAN-r16 ENUMERATED {true} OPTIONAL,
connEstFailInfoAvailable-r16 ENUMERATED {true} OPTIONAL,
rlf-InfoAvailable-r16 ENUMERATED {true} OPTIONAL,
- ...
+ ...,
+ [[
+ successHO-InfoAvailable-r17 ENUMERATED {true} OPTIONAL,
+ sigLogMeasConfigAvailable-r17 BOOLEAN OPTIONAL
+ ]]
}
-- TAG-UE-MeasurementsAvailable-STOP
@@ -12017,20 +17562,34 @@ VisitedCellInfo-r16 ::= SEQUENCE {
visitedCellId-r16 CHOICE {
nr-CellId-r16 CHOICE {
cgi-Info CGI-Info-Logging-r16,
- pci-arfcn-r16 SEQUENCE {
- physCellId-r16 PhysCellId,
- carrierFreq-r16 ARFCN-ValueNR
- }
+ pci-arfcn-r16 PCI-ARFCN-NR-r16
},
eutra-CellId-r16 CHOICE {
cellGlobalId-r16 CGI-InfoEUTRA,
- pci-arfcn-r16 SEQUENCE {
- physCellId-r16 EUTRA-PhysCellId,
- carrierFreq-r16 ARFCN-ValueEUTRA
- }
+ pci-arfcn-r16 PCI-ARFCN-EUTRA-r16
}
} OPTIONAL,
timeSpent-r16 INTEGER (0..4095),
+ ...,
+ [[
+ visitedPSCellInfoListReport-r17 VisitedPSCellInfoList-r17 OPTIONAL
+ ]]
+}
+
+VisitedPSCellInfoList-r17 ::= SEQUENCE (SIZE (1..maxPSCellHistory-r17)) OF VisitedPSCellInfo-r17
+
+VisitedPSCellInfo-r17 ::= SEQUENCE {
+ visitedCellId-r17 CHOICE {
+ nr-CellId-r17 CHOICE {
+ cgi-Info-r17 CGI-Info-Logging-r16,
+ pci-arfcn-r17 PCI-ARFCN-NR-r16
+ },
+ eutra-CellId-r17 CHOICE {
+ cellGlobalId-r17 CGI-InfoEUTRALogging,
+ pci-arfcn-r17 PCI-ARFCN-EUTRA-r16
+ }
+ } OPTIONAL,
+ timeSpent-r17 INTEGER (0..4095),
...
}
@@ -12047,7 +17606,11 @@ SL-BWP-Config-r16 ::= SEQUENCE {
sl-BWP-Id BWP-Id,
sl-BWP-Generic-r16 SL-BWP-Generic-r16 OPTIONAL, -- Need M
sl-BWP-PoolConfig-r16 SL-BWP-PoolConfig-r16 OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ sl-BWP-PoolConfigPS-r17 CHOICE {release NULL, setup SL-BWP-PoolConfig-r16} OPTIONAL, -- Need M
+ sl-BWP-DiscPoolConfig-r17 CHOICE {release NULL, setup SL-BWP-DiscPoolConfig-r17} OPTIONAL -- Need M
+ ]]
}
SL-BWP-Generic-r16 ::= SEQUENCE {
@@ -12065,10 +17628,32 @@ SL-BWP-Generic-r16 ::= SEQUENCE {
SL-BWP-ConfigCommon-r16 ::= SEQUENCE {
sl-BWP-Generic-r16 SL-BWP-Generic-r16 OPTIONAL, -- Need R
sl-BWP-PoolConfigCommon-r16 SL-BWP-PoolConfigCommon-r16 OPTIONAL, -- Need R
- ...
+ ...,
+ [[
+ sl-BWP-PoolConfigCommonPS-r17 SL-BWP-PoolConfigCommon-r16 OPTIONAL, -- Need R
+ sl-BWP-DiscPoolConfigCommon-r17 SL-BWP-DiscPoolConfigCommon-r17 OPTIONAL -- Need R
+ ]]
}
-- TAG-SL-BWP-CONFIGCOMMON-STOP
+-- TAG-SL-BWP-DISCPOOLCONFIG-START
+
+SL-BWP-DiscPoolConfig-r17 ::= SEQUENCE {
+ sl-DiscRxPool-r17 SEQUENCE (SIZE (1..maxNrofRXPool-r16)) OF SL-ResourcePool-r16 OPTIONAL, -- Cond HO
+ sl-DiscTxPoolSelected-r17 SL-TxPoolDedicated-r16 OPTIONAL, -- Need M
+ sl-DiscTxPoolScheduling-r17 SL-TxPoolDedicated-r16 OPTIONAL -- Need N
+}
+
+-- TAG-SL-BWP-DISCPOOLCONFIG-STOP
+-- TAG-SL-BWP-DISCPOOLCONFIGCOMMON-START
+
+SL-BWP-DiscPoolConfigCommon-r17 ::= SEQUENCE {
+ sl-DiscRxPool-r17 SEQUENCE (SIZE (1..maxNrofRXPool-r16)) OF SL-ResourcePool-r16 OPTIONAL, -- Need R
+ sl-DiscTxPoolSelected-r17 SEQUENCE (SIZE (1..maxNrofTXPool-r16)) OF SL-ResourcePoolConfig-r16 OPTIONAL, -- Need R
+ ...
+}
+
+-- TAG-SL-BWP-DISCPOOLCONFIGCOMMON-STOP
-- TAG-SL-BWP-POOLCONFIG-START
SL-BWP-PoolConfig-r16 ::= SEQUENCE {
@@ -12146,7 +17731,11 @@ SL-ConfigDedicatedNR-r16 ::= SEQUENCE {
sl-MeasConfigInfoToReleaseList-r16 SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-DestinationIndex-r16 OPTIONAL, -- Need N
sl-MeasConfigInfoToAddModList-r16 SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-MeasConfigInfo-r16 OPTIONAL, -- Need N
t400-r16 ENUMERATED {ms100, ms200, ms300, ms400, ms600, ms1000, ms1500, ms2000} OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ sl-PHY-MAC-RLC-Config-v1700 CHOICE {release NULL, setup SL-PHY-MAC-RLC-Config-v1700 } OPTIONAL, -- Need M
+ sl-DiscConfig-r17 CHOICE {release NULL, setup SL-DiscConfig-r17} OPTIONAL -- Need M
+ ]]
}
SL-DestinationIndex-r16 ::= INTEGER (0..maxNrofSL-Dest-1-r16)
@@ -12165,6 +17754,23 @@ SL-PHY-MAC-RLC-Config-r16::= SEQUENCE {
networkControlledSyncTx-r16 ENUMERATED {on, off} OPTIONAL -- Need M
}
+-- WS modification: define a dedicated type
+SL-RLC-ChannelToAddModList-r17 ::= SEQUENCE (SIZE (1..maxSL-LCID-r16)) OF SL-RLC-ChannelConfig-r17
+
+SL-PHY-MAC-RLC-Config-v1700 ::= SEQUENCE {
+ sl-DRX-Config-r17 SL-DRX-Config-r17 OPTIONAL, -- Need M
+ sl-RLC-ChannelToReleaseList-r17 SEQUENCE (SIZE (1..maxSL-LCID-r16)) OF SL-RLC-ChannelID-r17 OPTIONAL, -- Cond L2U2N
+-- WS modification: define a dedicated type
+-- sl-RLC-ChannelToAddModList-r17 SEQUENCE (SIZE (1..maxSL-LCID-r16)) OF SL-RLC-ChannelConfig-r17 OPTIONAL, -- -- Cond L2U2N
+ sl-RLC-ChannelToAddModList-r17 SL-RLC-ChannelToAddModList-r17 OPTIONAL, -- Cond L2U2N
+ ...
+}
+
+SL-DiscConfig-r17::= SEQUENCE {
+ sl-RelayUE-Config-r17 CHOICE {release NULL, setup SL-RelayUE-Config-r17} OPTIONAL, -- Cond L2RelayUE
+ sl-RemoteUE-Config-r17 CHOICE {release NULL, setup SL-RemoteUE-Config-r17} OPTIONAL -- Cond L2RemoteUE
+}
+
-- TAG-SL-CONFIGDEDICATEDNR-STOP
-- TAG-SL-CONFIGUREDGRANTCONFIG-START
@@ -12211,6 +17817,143 @@ SL-PeriodCG-r16 ::= CHOICE{
SL-DestinationIdentity-r16 ::= BIT STRING (SIZE (24))
-- TAG-SL-DESTINATIONIDENTITY-STOP
+-- TAG-SL-DRX-CONFIG-START
+
+SL-DRX-Config-r17 ::= SEQUENCE {
+ sl-DRX-ConfigGC-BC-r17 SL-DRX-ConfigGC-BC-r17 OPTIONAL, -- Cond HO
+ sl-DRX-ConfigUC-ToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-DestinationIndex-r16 OPTIONAL, -- Need N
+ sl-DRX-ConfigUC-ToAddModList-r17 SEQUENCE (SIZE (1..maxNrofSL-Dest-r16)) OF SL-DRX-ConfigUC-Info-r17 OPTIONAL, -- Need N
+ ...
+}
+
+SL-DRX-ConfigUC-Info-r17 ::= SEQUENCE {
+ sl-DestinationIndex-r17 SL-DestinationIndex-r16 OPTIONAL, -- Need N
+ sl-DRX-ConfigUC-r17 SL-DRX-ConfigUC-r17 OPTIONAL, -- Need N
+ ...
+}
+
+-- TAG-SL-DRX-CONFIG-STOP
+-- TAG-SL-DRX-CONFIGGC-BC-START
+
+SL-DRX-ConfigGC-BC-r17 ::= SEQUENCE {
+ sl-DRX-GC-BC-PerQoS-List-r17 SEQUENCE (SIZE (1..maxSL-GC-BC-DRX-QoS-r17)) OF SL-DRX-GC-BC-QoS-r17 OPTIONAL, -- Need M
+ sl-DRX-GC-generic-r17 SL-DRX-GC-Generic-r17 OPTIONAL, -- Need M
+ sl-DefaultDRX-GC-BC-r17 SL-DRX-GC-BC-QoS-r17 OPTIONAL, -- Need M
+ ...
+}
+
+SL-DRX-GC-BC-QoS-r17 ::= SEQUENCE {
+ sl-DRX-GC-BC-MappedQoS-FlowList-r17 SEQUENCE (SIZE (1..maxNrofSL-QFIs-r16)) OF SL-QoS-Profile-r16 OPTIONAL, -- Need M
+ sl-DRX-GC-BC-OnDurationTimer-r17 CHOICE {
+ subMilliSeconds INTEGER (1..31),
+ milliSeconds ENUMERATED {
+ ms1, ms2, ms3, ms4, ms5,ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60,
+ ms80, ms100, ms200, ms300, ms400, ms500, ms600, ms800, ms1000, ms1200,
+ ms1600, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+ },
+ sl-DRX-GC-InactivityTimer-r17 ENUMERATED {
+ ms0, ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60, ms80,
+ ms100, ms200, ms300, ms500, ms750, ms1280, ms1920, ms2560, spare9, spare8,
+ spare7, spare6, spare5, spare4, spare3, spare2, spare1},
+ sl-DRX-GC-BC-Cycle-r17 ENUMERATED {
+ ms10, ms20, ms32, ms40, ms60, ms64, ms70, ms80, ms128, ms160, ms256, ms320, ms512,
+ ms640, ms1024, ms1280, ms2048, ms2560, ms5120, ms10240, spare12, spare11, spare10,
+ spare9, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1},
+ ...
+}
+
+SL-DRX-GC-Generic-r17 ::= SEQUENCE {
+ sl-DRX-GC-HARQ-RTT-Timer1-r17 ENUMERATED {sl0, sl1, sl2, sl4, spare4, spare3, spare2, spare1} OPTIONAL, -- Need M
+ sl-DRX-GC-HARQ-RTT-Timer2-r17 ENUMERATED {sl0, sl1, sl2, sl4, spare4, spare3, spare2, spare1} OPTIONAL, -- Need M
+ sl-DRX-GC-RetransmissionTimer-r17 ENUMERATED {
+ sl0, sl1, sl2, sl4, sl6, sl8, sl16, sl24, sl33, sl40, sl64, sl80, sl96, sl112, sl128,
+ sl160, sl320, spare15, spare14, spare13, spare12, spare11, spare10, spare9, spare8,
+ spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+}
+
+-- TAG-SL-DRX-CONFIGGC-BC-STOP
+-- TAG-DRX-CONFIGUC-START
+
+SL-DRX-ConfigUC-r17 ::= SEQUENCE {
+ sl-drx-onDurationTimer-r17 CHOICE {
+ subMilliSeconds INTEGER (1..31),
+ milliSeconds ENUMERATED {
+ ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60,
+ ms80, ms100, ms200, ms300, ms400, ms500, ms600, ms800, ms1000, ms1200,
+ ms1600, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+ },
+ sl-drx-InactivityTimer-r17 ENUMERATED {
+ ms0, ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60, ms80,
+ ms100, ms200, ms300, ms500, ms750, ms1280, ms1920, ms2560, spare9, spare8,
+ spare7, spare6, spare5, spare4, spare3, spare2, spare1},
+ sl-drx-HARQ-RTT-Timer1-r17 ENUMERATED {sl0, sl1, sl2, sl4, spare4, spare3, spare2, spare1} OPTIONAL, -- Need M
+ sl-drx-HARQ-RTT-Timer2-r17 ENUMERATED {sl0, sl1, sl2, sl4, spare4, spare3, spare2, spare1} OPTIONAL, -- Need M
+ sl-drx-RetransmissionTimer-r17 ENUMERATED {
+ sl0, sl1, sl2, sl4, sl6, sl8, sl16, sl24, sl33, sl40, sl64, sl80, sl96, sl112, sl128,
+ sl160, sl320, spare15, spare14, spare13, spare12, spare11, spare10, spare9,
+ spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1},
+ sl-drx-CycleStartOffset-r17 CHOICE {
+ ms10 INTEGER(0..9),
+ ms20 INTEGER(0..19),
+ ms32 INTEGER(0..31),
+ ms40 INTEGER(0..39),
+ ms60 INTEGER(0..59),
+ ms64 INTEGER(0..63),
+ ms70 INTEGER(0..69),
+ ms80 INTEGER(0..79),
+ ms128 INTEGER(0..127),
+ ms160 INTEGER(0..159),
+ ms256 INTEGER(0..255),
+ ms320 INTEGER(0..319),
+ ms512 INTEGER(0..511),
+ ms640 INTEGER(0..639),
+ ms1024 INTEGER(0..1023),
+ ms1280 INTEGER(0..1279),
+ ms2048 INTEGER(0..2047),
+ ms2560 INTEGER(0..2559),
+ ms5120 INTEGER(0..5119),
+ ms10240 INTEGER(0..10239)
+ },
+ sl-drx-SlotOffset INTEGER (0..31)
+}
+
+-- TAG-SL-DRX-CONFIGUC-STOP
+-- TAG-DRX-CONFIGUCSEMISTATIC-START
+
+SL-DRX-ConfigUC-SemiStatic-r17 ::= SEQUENCE {
+ sl-drx-onDurationTimer-r17 CHOICE {
+ subMilliSeconds INTEGER (1..31),
+ milliSeconds ENUMERATED {
+ ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60,
+ ms80, ms100, ms200, ms300, ms400, ms500, ms600, ms800, ms1000, ms1200,
+ ms1600, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1}
+ },
+ sl-drx-CycleStartOffset-r17 CHOICE {
+ ms10 INTEGER(0..9),
+ ms20 INTEGER(0..19),
+ ms32 INTEGER(0..31),
+ ms40 INTEGER(0..39),
+ ms60 INTEGER(0..59),
+ ms64 INTEGER(0..63),
+ ms70 INTEGER(0..69),
+ ms80 INTEGER(0..79),
+ ms128 INTEGER(0..127),
+ ms160 INTEGER(0..159),
+ ms256 INTEGER(0..255),
+ ms320 INTEGER(0..319),
+ ms512 INTEGER(0..511),
+ ms640 INTEGER(0..639),
+ ms1024 INTEGER(0..1023),
+ ms1280 INTEGER(0..1279),
+ ms2048 INTEGER(0..2047),
+ ms2560 INTEGER(0..2559),
+ ms5120 INTEGER(0..5119),
+ ms10240 INTEGER(0..10239)
+ },
+ sl-drx-SlotOffset-r17 INTEGER (0..31)
+}
+
+-- TAG-SL-DRX-CONFIGUCSEMISTATIC-STOP
-- TAG-SL-FREQCONFIG-START
SL-FreqConfig-r16 ::= SEQUENCE {
@@ -12244,6 +17987,56 @@ SL-FreqConfigCommon-r16 ::= SEQUENCE {
...
}
-- TAG-SL-FREQCONFIGCOMMON-STOP
+-- TAG-SL-INTERUE-COORDINATIONCONFIG-START
+
+SL-InterUE-CoordinationConfig-r17 ::= SEQUENCE {
+ sl-InterUE-CoordinationScheme1-r17 SL-InterUE-CoordinationScheme1-r17 OPTIONAL, -- Need M
+ sl-InterUE-CoordinationScheme2-r17 SL-InterUE-CoordinationScheme2-r17 OPTIONAL, -- Need M
+ ...
+}
+
+SL-InterUE-CoordinationScheme1-r17 ::= SEQUENCE {
+ sl-IUC-Explicit-r17 ENUMERATED {enabled, disabled} OPTIONAL, -- Need M
+ sl-IUC-Condition-r17 ENUMERATED {enabled, disabled} OPTIONAL, -- Need M
+ sl-Condition1-A-2-r17 ENUMERATED {disabled} OPTIONAL, -- Need M
+ sl-ThresholdRSRP-Condition1-B-1-Option1List-r17 SEQUENCE (SIZE (1..8)) OF SL-ThresholdRSRP-Condition1-B-1-r17 OPTIONAL, -- Need M
+ sl-ThresholdRSRP-Condition1-B-1-Option2List-r17 SEQUENCE (SIZE (1..8)) OF SL-ThresholdRSRP-Condition1-B-1-r17 OPTIONAL, -- Need M
+ sl-ContainerCoordInfo-r17 ENUMERATED {enabled, disabled} OPTIONAL, -- Need M
+ sl-ContainerRequest-r17 ENUMERATED {enabled, disabled} OPTIONAL, -- Need M
+ sl-TriggerConditionCoordInfo-r17 INTEGER (0..1) OPTIONAL, -- Need M
+ sl-TriggerConditionRequest-r17 INTEGER (0..1) OPTIONAL, -- Need M
+ sl-PriorityCoordInfoExplicit-r17 INTEGER (1..8) OPTIONAL, -- Need M
+ sl-PriorityCoordInfoCondition-r17 INTEGER (1..8) OPTIONAL, -- Need M
+ sl-PriorityRequest-r17 INTEGER (1..8) OPTIONAL, -- Need M
+ sl-PriorityPreferredResourceSet-r17 INTEGER (1..8) OPTIONAL, -- Need M
+ sl-MaxSlotOffsetTRIV-r17 INTEGER (1..8000) OPTIONAL, -- Need M
+ sl-NumSubCH-PreferredResourceSet-r17 INTEGER (1..27) OPTIONAL, -- Need M
+ sl-ReservedPeriodPreferredResourceSet-r17 INTEGER (1..16) OPTIONAL, -- Need M
+ sl-DetermineResourceType-r17 ENUMERATED {uea, ueb} OPTIONAL, -- Need M
+ ...
+}
+
+SL-InterUE-CoordinationScheme2-r17 ::= SEQUENCE {
+ sl-IUC-Scheme2-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sl-RB-SetPSFCH-r17 BIT STRING (SIZE (10..275)) OPTIONAL, -- Need M
+ sl-TypeUE-A-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sl-PSFCH-Occasion-r17 INTEGER (0..1) OPTIONAL, -- Need M
+ sl-SlotLevelResourceExclusion-r17 ENUMERATED {enabled} OPTIONAL, -- Need R
+ sl-OptionForCondition2-A-1-r17 INTEGER (0..1) OPTIONAL, -- Need M
+ sl-IndicationUE-B-r17 ENUMERATED {enabled, disabled} OPTIONAL, -- Need M
+ ...,
+ [[
+ sl-DeltaRSRP-Thresh-v1720 INTEGER (-30..30) OPTIONAL -- Need M
+ ]]
+}
+
+
+SL-ThresholdRSRP-Condition1-B-1-r17 ::= SEQUENCE {
+ sl-Priority-r17 INTEGER (1..8),
+ sl-ThresholdRSRP-Condition1-B-1-r17 INTEGER (0..66)
+}
+
+-- TAG-SL-INTERUE-COORDINATIONCONFIG-STOP
-- TAG-SL-LOGICALCHANNELCONFIG-START
SL-LogicalChannelConfig-r16 ::= SEQUENCE {
@@ -12265,6 +18058,29 @@ SL-LogicalChannelConfig-r16 ::= SEQUENCE {
...
}
-- TAG-SL-LOGICALCHANNELCONFIG-STOP
+-- TAG-SL-L2RELAYUE-CONFIG-START
+
+SL-L2RelayUE-Config-r17 ::= SEQUENCE {
+ sl-RemoteUE-ToAddModList-r17 SEQUENCE (SIZE (1..maxNrofRemoteUE-r17)) OF SL-RemoteUE-ToAddMod-r17 OPTIONAL, -- Need N
+ sl-RemoteUE-ToReleaseList-r17 SEQUENCE (SIZE (1..maxNrofRemoteUE-r17)) OF SL-DestinationIdentity-r16 OPTIONAL, -- Need N
+ ...
+}
+
+SL-RemoteUE-ToAddMod-r17 ::= SEQUENCE {
+ sl-L2IdentityRemote-r17 SL-DestinationIdentity-r16,
+ sl-SRAP-ConfigRelay-r17 SL-SRAP-Config-r17 OPTIONAL, -- Need M
+ ...
+}
+
+-- TAG-SL-L2RELAYUE-CONFIG-STOP
+-- TAG-SL-L2REMOTEUE-CONFIG-START
+
+SL-L2RemoteUE-Config-r17 ::= SEQUENCE {
+ sl-SRAP-ConfigRemote-r17 SL-SRAP-Config-r17 OPTIONAL, --Need M
+ sl-UEIdentityRemote-r17 RNTI-Value OPTIONAL, -- Cond FirstRRCReconfig
+ ...
+}
+-- TAG-SL-L2REMOTEUE-CONFIG-STOP
-- TAG-SL-MEASCONFIGCOMMON-START
SL-MeasConfigCommon-r16 ::= SEQUENCE {
@@ -12334,13 +18150,39 @@ SL-MeasObject-r16 ::= SEQUENCE {
}
-- TAG-SL-MEASOBJECTLIST-STOP
+-- TAG-SL-PAGINGIDENTITYREMOTEUE-START
+
+SL-PagingIdentityRemoteUE-r17 ::= SEQUENCE {
+ ng-5G-S-TMSI-r17 NG-5G-S-TMSI,
+ fullI-RNTI-r17 I-RNTI-Value OPTIONAL -- Need R
+}
+
+-- TAG-SL-PAGINGIDENTITYREMOTEUE-STOP
+-- TAG-SL-PBPS-CPS-CONFIG-START
+
+SL-PBPS-CPS-Config-r17 ::= SEQUENCE {
+sl-AllowedResourceSelectionConfig-r17 ENUMERATED {c1, c2, c3, c4, c5, c6, c7} OPTIONAL, -- Need M
+sl-MinNumCandidateSlotsPeriodic-r17 INTEGER (1..32) OPTIONAL, -- Need M
+sl-PBPS-OccasionReservePeriodList-r17 SEQUENCE (SIZE (1..16)) OF INTEGER (1..16) OPTIONAL, -- Need M
+sl-Additional-PBPS-Occasion-r17 ENUMERATED { monitored } OPTIONAL, -- Need M
+sl-CPS-WindowPeriodic-r17 INTEGER (5..30) OPTIONAL, -- Need M
+sl-MinNumCandidateSlotsAperiodic-r17 INTEGER (1..32) OPTIONAL, -- Need M
+sl-MinNumRssiMeasurementSlots-r17 INTEGER (1..800) OPTIONAL, -- Need M
+sl-DefaultCBR-RandomSelection-r17 INTEGER (0..100) OPTIONAL, -- Need M
+sl-DefaultCBR-PartialSensing-r17 INTEGER (0..100) OPTIONAL, -- Need M
+sl-CPS-WindowAperiodic-r17 INTEGER (0..30) OPTIONAL, -- Need M
+sl-PartialSensingInactiveTime-r17 ENUMERATED { enabled, disabled } OPTIONAL, -- Need M
+ ...
+}
+
+-- TAG-SL-PBPS-CPS-CONFIG-STOP
-- TAG-SL-PDCP-CONFIG-START
SL-PDCP-Config-r16 ::= SEQUENCE {
sl-DiscardTimer-r16 ENUMERATED {ms3, ms10, ms20, ms25, ms30, ms40, ms50, ms60, ms75, ms100, ms150, ms200,
- ms250, ms300, ms500, ms750, ms1500, infinity} OPTIONAL, -- Cond Setup
- sl-PDCP-SN-Size-r16 ENUMERATED {len12bits, len18bits} OPTIONAL, -- Cond Setup2
- sl-OutOfOrderDelivery ENUMERATED { true } OPTIONAL, -- Need R
+ ms250, ms300, ms500, ms750, ms1500, infinity} OPTIONAL, -- Cond Setup
+ sl-PDCP-SN-Size-r16 ENUMERATED {len12bits, len18bits} OPTIONAL, -- Cond Setup2
+ sl-OutOfOrderDelivery ENUMERATED { true } OPTIONAL, -- Need R
...
}
@@ -12350,7 +18192,10 @@ SL-PDCP-Config-r16 ::= SEQUENCE {
SL-PSBCH-Config-r16 ::= SEQUENCE {
dl-P0-PSBCH-r16 INTEGER (-16..15) OPTIONAL, -- Need M
dl-Alpha-PSBCH-r16 ENUMERATED {alpha0, alpha04, alpha05, alpha06, alpha07, alpha08, alpha09, alpha1} OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ dl-P0-PSBCH-r17 INTEGER (-202..24) OPTIONAL -- Need M
+ ]]
}
-- TAG-SL-PSBCH-CONFIG-STOP
@@ -12432,6 +18277,31 @@ SL-RadioBearerConfig-r16 ::= SEQUENCE {
}
-- TAG-SL-RADIOBEARERCONFIG-STOP
+-- TAG-SL-RELAYUE-CONFIG-START
+
+SL-RelayUE-Config-r17::= SEQUENCE {
+ threshHighRelay-r17 RSRP-Range OPTIONAL, -- Need R
+ threshLowRelay-r17 RSRP-Range OPTIONAL, -- Need R
+ hystMaxRelay-r17 Hysteresis OPTIONAL, -- Cond ThreshHighRelay
+ hystMinRelay-r17 Hysteresis OPTIONAL -- Cond ThreshLowRelay
+}
+
+-- TAG-SL-RELAYUE-CONFIG-STOP
+-- TAG-SL-REMOTEUE-CONFIG-START
+
+SL-RemoteUE-Config-r17::= SEQUENCE {
+ threshHighRemote-r17 RSRP-Range OPTIONAL, -- Need R
+ hystMaxRemote-r17 Hysteresis OPTIONAL, -- Cond ThreshHighRemote
+ sl-ReselectionConfig-r17 SL-ReselectionConfig-r17 OPTIONAL -- Need R
+}
+
+SL-ReselectionConfig-r17::= SEQUENCE {
+ sl-RSRP-Thresh-r17 SL-RSRP-Range-r16 OPTIONAL, -- Need R
+ sl-FilterCoefficientRSRP-r17 FilterCoefficient OPTIONAL, -- Need R
+ sl-HystMin-r17 Hysteresis OPTIONAL -- Cond SL-RSRP-Thresh
+}
+
+-- TAG-SL-REMOTEUE-CONFIG-STOP
-- TAG-SL-REPORTCONFIGLIST-START
SL-ReportConfigList-r16 ::= SEQUENCE (SIZE (1..maxNrofSL-ReportConfigId-r16)) OF SL-ReportConfigInfo-r16
@@ -12533,6 +18403,10 @@ SL-ResourcePool-r16 ::= SEQUENCE {
...,
[[
sl-TimeResource-r16 BIT STRING (SIZE (10..160)) OPTIONAL -- Need M
+ ]],
+ [[
+ sl-PBPS-CPS-Config-r17 CHOICE {release NULL, setup SL-PBPS-CPS-Config-r17 } OPTIONAL, -- Need M
+ sl-InterUE-CoordinationConfig-r17 CHOICE {release NULL, setup SL-InterUE-CoordinationConfig-r17 } OPTIONAL -- Need M
]]
}
@@ -12635,7 +18509,12 @@ SL-PowerControl-r16 ::= SEQUENCE {
dl-P0-PSSCH-PSCCH-r16 INTEGER (-16..15) OPTIONAL, -- Need M
dl-Alpha-PSFCH-r16 ENUMERATED {alpha0, alpha04, alpha05, alpha06, alpha07, alpha08, alpha09, alpha1} OPTIONAL, -- Need S
dl-P0-PSFCH-r16 INTEGER (-16..15) OPTIONAL, -- Need M
- ...
+ ...,
+ [[
+ dl-P0-PSSCH-PSCCH-r17 INTEGER (-202..24) OPTIONAL, -- Need M
+ sl-P0-PSSCH-PSCCH-r17 INTEGER (-202..24) OPTIONAL, -- Need S
+ dl-P0-PSFCH-r17 INTEGER (-202..24) OPTIONAL -- Need M
+ ]]
}
-- TAG-SL-RESOURCEPOOL-STOP
@@ -12655,6 +18534,21 @@ SL-RLC-BearerConfig-r16 ::= SEQUENCE {
SL-RLC-BearerConfigIndex-r16 ::= INTEGER (1..maxSL-LCID-r16)
-- TAG-RLC-BEARERCONFIGINDEX-STOP
+-- TAG-SL-RLC-RLC-CHANNEL-CONFIG-START
+
+SL-RLC-ChannelConfig-r17 ::= SEQUENCE {
+ sl-RLC-ChannelID-r17 SL-RLC-ChannelID-r17,
+ sl-RLC-Config-r17 SL-RLC-Config-r16 OPTIONAL, -- Need M
+ sl-MAC-LogicalChannelConfig-r17 SL-LogicalChannelConfig-r16 OPTIONAL, -- Need M
+ sl-PacketDelayBudget-r17 INTEGER (0..1023) OPTIONAL, -- Need M
+ ...}
+
+-- TAG-SL-RLC-CHANNEL-CONFIG-STOP
+-- TAG-SL-RLC-CHANNELID-START
+
+SL-RLC-ChannelID-r17 ::= INTEGER (1..maxSL-LCID-r16)
+
+-- TAG-SL-RLC-CHANNELID-STOP
-- TAG-SL-RLC-CONFIG-START
SL-RLC-Config-r16 ::= CHOICE {
@@ -12720,6 +18614,42 @@ SL-MappedQoS-FlowsListDedicated-r16 ::= SEQUENCE {
}
-- TAG-SL-SDAP-CONFIG-STOP
+-- TAG-SL-SERVINGCELLINFO-START
+
+SL-ServingCellInfo-r17 ::= SEQUENCE {
+ sl-PhysCellId-r17 PhysCellId,
+ sl-CarrierFreqNR-r17 ARFCN-ValueNR
+}
+
+-- TAG-SL-SERVINGCELLINFO-STOP
+-- TAG-SL-SOURCEIDENTITY-START
+
+SL-SourceIdentity-r17 ::= BIT STRING (SIZE (24))
+
+-- TAG-SL-SOURCEIDENTITY-STOP
+-- TAG-SL-SRAP-CONFIG-START
+
+SL-SRAP-Config-r17 ::= SEQUENCE {
+ sl-LocalIdentity-r17 INTEGER (0..255) OPTIONAL, -- Need M
+ sl-MappingToAddModList-r17 SEQUENCE (SIZE (1..maxLC-ID)) OF SL-MappingToAddMod-r17 OPTIONAL, -- Need N
+ sl-MappingToReleaseList-r17 SEQUENCE (SIZE (1..maxLC-ID)) OF SL-RemoteUE-RB-Identity-r17 OPTIONAL, -- Need N
+ ...
+}
+
+SL-MappingToAddMod-r17 ::= SEQUENCE {
+ sl-RemoteUE-RB-Identity-r17 SL-RemoteUE-RB-Identity-r17,
+ sl-EgressRLC-ChannelUu-r17 Uu-RelayRLC-ChannelID-r17 OPTIONAL, -- Cond L2RelayUE
+ sl-EgressRLC-ChannelPC5-r17 SL-RLC-ChannelID-r17 OPTIONAL, -- Need N
+ ...
+}
+
+SL-RemoteUE-RB-Identity-r17 ::= CHOICE {
+ srb-Identity-r17 INTEGER (0..3),
+ drb-Identity-r17 DRB-Identity,
+ ...
+}
+
+-- TAG-SL-SRAP-CONFIG-STOP
-- TAG-SL-SYNCCONFIG-START
SL-SyncConfigList-r16 ::= SEQUENCE (SIZE (1..maxSL-SyncConfig-r16)) OF SL-SyncConfig-r16
@@ -12796,8 +18726,189 @@ SL-ZoneConfig-r16 ::= SEQUENCE {
SLRB-Uu-ConfigIndex-r16 ::= INTEGER (1..maxNrofSLRB-r16)
-- TAG-SLRB-UU-CONFIGINDEX-STOP
+-- TAG-CARRIERFREQLISTMBS-START
+
+CarrierFreqListMBS-r17 ::= SEQUENCE (SIZE (1..maxFreqMBS-r17)) OF ARFCN-ValueNR
+
+-- TAG-CARRIERFREQLISTMBS-STOP
+-- TAG-CFR-CONFIGMCCH-MTCH-START
+
+CFR-ConfigMCCH-MTCH-r17 ::= SEQUENCE {
+ locationAndBandwidthBroadcast-r17 LocationAndBandwidthBroadcast-r17 OPTIONAL, -- Need S
+ pdsch-ConfigMCCH-r17 PDSCH-ConfigBroadcast-r17 OPTIONAL, -- Need S
+ commonControlResourceSetExt-r17 ControlResourceSet OPTIONAL -- Cond NotSIB1CommonControlResource
+}
+
+LocationAndBandwidthBroadcast-r17 ::= CHOICE {
+ sameAsSib1ConfiguredLocationAndBW NULL,
+ locationAndBandwidth INTEGER (0..37949)
+}
+
+-- TAG-CFR-CONFIGMCCH-MTCH-STOP
+-- TAG-DRX-CONFIGPTM-START
+
+DRX-ConfigPTM-r17 ::= SEQUENCE {
+ drx-onDurationTimerPTM-r17 CHOICE {
+ subMilliSeconds INTEGER (1..31),
+ milliSeconds ENUMERATED {
+ ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60,
+ ms80, ms100, ms200, ms300, ms400, ms500, ms600, ms800, ms1000, ms1200,
+ ms1600, spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1
+ }
+ },
+ drx-InactivityTimerPTM-r17 ENUMERATED {
+ ms0, ms1, ms2, ms3, ms4, ms5, ms6, ms8, ms10, ms20, ms30, ms40, ms50, ms60, ms80,
+ ms100, ms200, ms300, ms500, ms750, ms1280, ms1920, ms2560, spare9, spare8,
+ spare7, spare6, spare5, spare4, spare3, spare2, spare1
+ },
+ drx-HARQ-RTT-TimerDL-PTM-r17 INTEGER (0..56) OPTIONAL, -- Cond HARQFeedback
+ drx-RetransmissionTimerDL-PTM-r17 ENUMERATED {
+ sl0, sl1, sl2, sl4, sl6, sl8, sl16, sl24, sl33, sl40, sl64, sl80, sl96, sl112, sl128,
+ sl160, sl320, spare15, spare14, spare13, spare12, spare11, spare10, spare9,
+ spare8, spare7, spare6, spare5, spare4, spare3, spare2, spare1
+ } OPTIONAL, -- Cond HARQFeedback
+ drx-LongCycleStartOffsetPTM-r17 CHOICE {
+ ms10 INTEGER(0..9),
+ ms20 INTEGER(0..19),
+ ms32 INTEGER(0..31),
+ ms40 INTEGER(0..39),
+ ms60 INTEGER(0..59),
+ ms64 INTEGER(0..63),
+ ms70 INTEGER(0..69),
+ ms80 INTEGER(0..79),
+ ms128 INTEGER(0..127),
+ ms160 INTEGER(0..159),
+ ms256 INTEGER(0..255),
+ ms320 INTEGER(0..319),
+ ms512 INTEGER(0..511),
+ ms640 INTEGER(0..639),
+ ms1024 INTEGER(0..1023),
+ ms1280 INTEGER(0..1279),
+ ms2048 INTEGER(0..2047),
+ ms2560 INTEGER(0..2559),
+ ms5120 INTEGER(0..5119),
+ ms10240 INTEGER(0..10239)
+ },
+ drx-SlotOffsetPTM-r17 INTEGER (0..31)
+}
+
+-- TAG-DRX-CONFIGPTM-STOP
+-- TAG-MBS-NEIGHBOURCELLLIST-START
+
+MBS-NeighbourCellList-r17 ::= SEQUENCE (SIZE (0..maxNeighCellMBS-r17)) OF MBS-NeighbourCell-r17
+
+MBS-NeighbourCell-r17 ::= SEQUENCE {
+ physCellId-r17 PhysCellId,
+ carrierFreq-r17 ARFCN-ValueNR OPTIONAL -- Need S
+}
+
+-- TAG-MBS-NEIGHBOURCELLLIST-STOP
+-- TAG-MBS-SERVICELIST-START
+
+MBS-ServiceList-r17 ::= SEQUENCE (SIZE (1..maxNrofMBS-ServiceListPerUE-r17)) OF MBS-ServiceInfo-r17
+
+MBS-ServiceInfo-r17 ::= SEQUENCE {
+ tmgi-r17 TMGI-r17
+}
+
+-- TAG-MBS-SERVICELIST-STOP
+-- TAG-MBS-SESSIONINFOLIST-START
+
+MBS-SessionInfoList-r17 ::= SEQUENCE (SIZE (1..maxNrofMBS-Session-r17)) OF MBS-SessionInfo-r17
+
+MBS-SessionInfo-r17 ::= SEQUENCE {
+ mbs-SessionId-r17 TMGI-r17,
+ g-RNTI-r17 RNTI-Value,
+ mrb-ListBroadcast-r17 MRB-ListBroadcast-r17,
+ mtch-SchedulingInfo-r17 DRX-ConfigPTM-Index-r17 OPTIONAL, -- Need S
+ mtch-NeighbourCell-r17 BIT STRING (SIZE(maxNeighCellMBS-r17)) OPTIONAL, -- Need S
+ pdsch-ConfigIndex-r17 PDSCH-ConfigIndex-r17 OPTIONAL, -- Need S
+ mtch-SSB-MappingWindowIndex-r17 MTCH-SSB-MappingWindowIndex-r17 OPTIONAL -- Cond MTCH-Mapping
+}
+
+DRX-ConfigPTM-Index-r17 ::= INTEGER (0..maxNrofDRX-ConfigPTM-1-r17)
+
+PDSCH-ConfigIndex-r17 ::= INTEGER (0..maxNrofPDSCH-ConfigPTM-1-r17)
+
+MTCH-SSB-MappingWindowIndex-r17 ::= INTEGER (0..maxNrofMTCH-SSB-MappingWindow-1-r17)
+
+MRB-ListBroadcast-r17 ::= SEQUENCE (SIZE (1..maxNrofMRB-Broadcast-r17)) OF MRB-InfoBroadcast-r17
+
+MRB-InfoBroadcast-r17 ::= SEQUENCE {
+ pdcp-Config-r17 MRB-PDCP-ConfigBroadcast-r17,
+ rlc-Config-r17 MRB-RLC-ConfigBroadcast-r17,
+ ...
+}
+
+MRB-PDCP-ConfigBroadcast-r17 ::= SEQUENCE {
+ pdcp-SN-SizeDL-r17 ENUMERATED {len12bits} OPTIONAL, -- Need S
+ headerCompression-r17 CHOICE {
+ notUsed NULL,
+ rohc SEQUENCE {
+ maxCID-r17 INTEGER (1..16) DEFAULT 15,
+ profiles-r17 SEQUENCE {
+ profile0x0000-r17 BOOLEAN,
+ profile0x0001-r17 BOOLEAN,
+ profile0x0002-r17 BOOLEAN
+ }
+ }
+ },
+ t-Reordering-r17 ENUMERATED {ms1, ms10, ms40, ms160, ms500, ms1000, ms1250, ms2750} OPTIONAL -- Need S
+}
+
+MRB-RLC-ConfigBroadcast-r17 ::= SEQUENCE {
+ logicalChannelIdentity-r17 LogicalChannelIdentity,
+ sn-FieldLength-r17 ENUMERATED {size6} OPTIONAL, -- Need S
+ t-Reassembly-r17 T-Reassembly OPTIONAL -- Need S
+}
+
+-- TAG-MBS-SESSIONINFOLIST-STOP
+-- TAG-MTCH-SSB-MAPPINGWINDOWLIST-START
+
+MTCH-SSB-MappingWindowList-r17 ::= SEQUENCE (SIZE (1..maxNrofMTCH-SSB-MappingWindow-r17)) OF MTCH-SSB-MappingWindowCycleOffset-r17
+
+MTCH-SSB-MappingWindowCycleOffset-r17 ::= CHOICE {
+ ms10 INTEGER(0..9),
+ ms20 INTEGER(0..19),
+ ms32 INTEGER(0..31),
+ ms64 INTEGER(0..63),
+ ms128 INTEGER(0..127),
+ ms256 INTEGER(0..255)
+}
+
+-- TAG-MTCH-SSB-MAPPINGWINDOWLIST-STOP
+-- TAG-PDSCH-CONFIGBROADCAST-START
+
+PDSCH-ConfigBroadcast-r17 ::= SEQUENCE {
+ pdschConfigList-r17 SEQUENCE (SIZE (1..maxNrofPDSCH-ConfigPTM-r17) ) OF PDSCH-ConfigPTM-r17,
+ pdsch-TimeDomainAllocationList-r17 PDSCH-TimeDomainResourceAllocationList-r16 OPTIONAL, -- Need R
+ rateMatchPatternToAddModList-r17 SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPattern OPTIONAL, -- Need R
+ lte-CRS-ToMatchAround-r17 RateMatchPatternLTE-CRS OPTIONAL, -- Need R
+ mcs-Table-r17 ENUMERATED {qam256, qam64LowSE} OPTIONAL, -- Need S
+ xOverhead-r17 ENUMERATED {xOh6, xOh12, xOh18} OPTIONAL -- Need S
+}
+
+PDSCH-ConfigPTM-r17 ::= SEQUENCE {
+ dataScramblingIdentityPDSCH-r17 INTEGER (0..1023) OPTIONAL, -- Need S
+ dmrs-ScramblingID0-r17 INTEGER (0..65535) OPTIONAL, -- Need S
+ pdsch-AggregationFactor-r17 ENUMERATED {n2, n4, n8} OPTIONAL -- Need S
+}
+
+-- TAG-PDSCH-CONFIGBROADCAST-STOP
+-- TAG-TMGI-START
+
+TMGI-r17 ::= SEQUENCE {
+ plmn-Id-r17 CHOICE {
+ plmn-Index INTEGER (1..maxPLMN),
+ explicitValue PLMN-Identity
+ },
+ serviceId-r17 OCTET STRING (SIZE (3))
+}
+
+-- TAG-TMGI-STOP
-- TAG-MULTIPLICITY-AND-TYPE-CONSTRAINT-DEFINITIONS-START
+maxAdditionalRACH-r17 INTEGER ::= 256 -- Maximum number of additional RACH configurations.
maxAI-DCI-PayloadSize-r16 INTEGER ::= 128 --Maximum size of the DCI payload scrambled with ai-RNTI
maxAI-DCI-PayloadSize-1-r16 INTEGER ::= 127 --Maximum size of the DCI payload scrambled with ai-RNTI minus 1
maxBandComb INTEGER ::= 65536 -- Maximum number of DL band combinations
@@ -12808,47 +18919,73 @@ maxBT-Name-r16 INTEGER ::= 4 -- Maximum number of
maxCAG-Cell-r16 INTEGER ::= 16 -- Maximum number of NR CAG cell ranges in SIB3, SIB4
maxTwoPUCCH-Grp-ConfigList-r16 INTEGER ::= 32 -- Maximum number of supported configuration(s) of {primary PUCCH group
-- config, secondary PUCCH group config}
+maxTwoPUCCH-Grp-ConfigList-r17 INTEGER ::= 16 -- Maximum number of supported configuration(s) of {primary PUCCH group
+ -- config, secondary PUCCH group config} for PUCCH cell switching
maxCBR-Config-r16 INTEGER ::= 8 -- Maximum number of CBR range configurations for sidelink communication
-- congestion control
maxCBR-Config-1-r16 INTEGER ::= 7 -- Maximum number of CBR range configurations for sidelink communication
-- congestion control minus 1
-maxCBR-Level-r16 INTEGER ::= 16 -- Maximum nuber of CBR levels
+maxCBR-Level-r16 INTEGER ::= 16 -- Maximum number of CBR levels
maxCBR-Level-1-r16 INTEGER ::= 15 -- Maximum number of CBR levels minus 1
-maxCellBlack INTEGER ::= 16 -- Maximum number of NR blacklisted cell ranges in SIB3, SIB4
+maxCellExcluded INTEGER ::= 16 -- Maximum number of NR exclude-listed cell ranges in SIB3, SIB4
maxCellGroupings-r16 INTEGER ::= 32 -- Maximum number of cell groupings for NR-DC
-maxCellHistory-r16 INTEGER ::= 16 -- Maximum number of visited cells reported
+maxCellHistory-r16 INTEGER ::= 16 -- Maximum number of visited PCells reported
+maxPSCellHistory-r17 INTEGER ::= 16 -- Maximum number of visited PSCells across all reported PCells
maxCellInter INTEGER ::= 16 -- Maximum number of inter-Freq cells listed in SIB4
maxCellIntra INTEGER ::= 16 -- Maximum number of intra-Freq cells listed in SIB3
maxCellMeasEUTRA INTEGER ::= 32 -- Maximum number of cells in E-UTRAN
maxCellMeasIdle-r16 INTEGER ::= 8 -- Maximum number of cells per carrier for idle/inactive measurements
maxCellMeasUTRA-FDD-r16 INTEGER ::= 32 -- Maximum number of cells in FDD UTRAN
-maxCellWhite INTEGER ::= 16 -- Maximum number of NR whitelisted cell ranges in SIB3, SIB4
+maxCellNTN-r17 INTEGER ::= 4 -- Maximum number of NTN neighbour cells for which assistance information is
+ -- provided
+maxCarrierTypePairList-r16 INTEGER ::= 16 -- Maximum number of supported carrier type pair of (carrier type on which
+ -- CSI measurement is performed, carrier type on which CSI reporting is
+ -- performed) for CSI reporting cross PUCCH group
+maxCellAllowed INTEGER ::= 16 -- Maximum number of NR allow-listed cell ranges in SIB3, SIB4
maxEARFCN INTEGER ::= 262143 -- Maximum value of E-UTRA carrier frequency
-maxEUTRA-CellBlack INTEGER ::= 16 -- Maximum number of E-UTRA blacklisted physical cell identity ranges
+maxEUTRA-CellExcluded INTEGER ::= 16 -- Maximum number of E-UTRA exclude-listed physical cell identity ranges
-- in SIB5
maxEUTRA-NS-Pmax INTEGER ::= 8 -- Maximum number of NS and P-Max values per band
+maxFeatureCombPreamblesPerRACHResource-r17 INTEGER ::= 256 -- Maximum number of feature combination preambles.
maxLogMeasReport-r16 INTEGER ::= 520 -- Maximum number of entries for logged measurements
maxMultiBands INTEGER ::= 8 -- Maximum number of additional frequency bands that a cell belongs to
maxNARFCN INTEGER ::= 3279165 -- Maximum value of NR carrier frequency
maxNR-NS-Pmax INTEGER ::= 8 -- Maximum number of NS and P-Max values per band
maxFreqIdle-r16 INTEGER ::= 8 -- Maximum number of carrier frequencies for idle/inactive measurements
maxNrofServingCells INTEGER ::= 32 -- Max number of serving cells (SpCells + SCells)
-maxNrofServingCells-1 INTEGER ::= 31 -- Max number of serving cells (SpCell + SCells) per cell group
+maxNrofServingCells-1 INTEGER ::= 31 -- Max number of serving cells (SpCells + SCells) minus 1
maxNrofAggregatedCellsPerCellGroup INTEGER ::= 16
-maxNrofAggregatedCellsPerCellGroupMinus4-r16 INTEGER ::= 12
+maxNrofAggregatedCellsPerCellGroupMinus4-r16 INTEGER ::= 12
maxNrofDUCells-r16 INTEGER ::= 512 -- Max number of cells configured on the collocated IAB-DU
+maxNrofAppLayerMeas-r17 INTEGER ::= 16 -- Max number of simultaneous application layer measurements
+maxNrofAppLayerMeas-1-r17 INTEGER ::= 15 -- Max number of simultaneous application layer measurements minus 1
maxNrofAvailabilityCombinationsPerSet-r16 INTEGER ::= 512 -- Max number of AvailabilityCombinationId used in the DCI format 2_5
maxNrofAvailabilityCombinationsPerSet-1-r16 INTEGER ::= 511 -- Max number of AvailabilityCombinationId used in the DCI format 2_5 minus 1
+maxNrofIABResourceConfig-r17 INTEGER ::= 65536 -- Max number of IAB-ResourceConfigID used in MAC CE
+maxNrofIABResourceConfig-1-r17 INTEGER ::= 65535 -- Max number of IAB-ResourceConfigID used in MAC CE minus 1
+maxNrofSCellActRS-r17 INTEGER ::= 255 -- Max number of RS configurations per SCell for SCell activation
maxNrofSCells INTEGER ::= 31 -- Max number of secondary serving cells per cell group
maxNrofCellMeas INTEGER ::= 32 -- Maximum number of entries in each of the cell lists in a measurement object
+maxNrofCRS-IM-InterfCell-r17 INTEGER ::= 8 -- Maximum number of LTE interference cells for CRS-IM per UE
+maxNrofRelayMeas-r17 INTEGER ::= 32 -- Maximum number of L2 U2N Relay UEs to measure for each measurement object
+ -- on sidelink frequency
maxNrofCG-SL-r16 INTEGER ::= 8 -- Max number of sidelink configured grant
maxNrofCG-SL-1-r16 INTEGER ::= 7 -- Max number of sidelink configured grant minus 1
+maxSL-GC-BC-DRX-QoS-r17 INTEGER ::= 16 -- Max number of sidelink DRX configurations for NR
+ -- sidelink groupcast/broadcast communication
+maxNrofSL-RxInfoSet-r17 INTEGER ::= 4 -- Max number of sidelink DRX configuration sets in sidelink DRX assistant
+ -- information
maxNrofSS-BlocksToAverage INTEGER ::= 16 -- Max number for the (max) number of SS blocks to average to determine cell measurement
maxNrofCondCells-r16 INTEGER ::= 8 -- Max number of conditional candidate SpCells
+maxNrofCondCells-1-r17 INTEGER ::= 7 -- Max number of conditional candidate SpCells minus 1
maxNrofCSI-RS-ResourcesToAverage INTEGER ::= 16 -- Max number for the (max) number of CSI-RS to average to determine cell measurement
maxNrofDL-Allocations INTEGER ::= 16 -- Maximum number of PDSCH time domain resource allocations
+maxNrofDL-AllocationsExt-r17 INTEGER ::= 64 -- Maximum number of PDSCH time domain resource allocations for multi-PDSCH
+ -- scheduling
+maxNrofPDU-Sessions-r17 INTEGER ::= 256 -- Maximum number of PDU Sessions
maxNrofSR-ConfigPerCellGroup INTEGER ::= 8 -- Maximum number of SR configurations per cell group
maxLCG-ID INTEGER ::= 7 -- Maximum value of LCG ID
+maxLCG-ID-IAB-r17 INTEGER ::= 255 -- Maximum value of LCG ID for IAB-MT
maxLC-ID INTEGER ::= 32 -- Maximum value of Logical Channel ID
maxLC-ID-Iab-r16 INTEGER ::= 65855 -- Maximum value of BH Logical Channel ID extension
maxLTE-CRS-Patterns-r16 INTEGER ::= 3 -- Maximum number of additional LTE CRS rate matching patterns
@@ -12868,6 +19005,8 @@ maxNrofControlResourceSets-1-r16 INTEGER ::= 15 -- Max number of CoR
maxNrofCoresetPools-r16 INTEGER ::= 2 -- Maximum number of CORESET pools
maxCoReSetDuration INTEGER ::= 3 -- Max number of OFDM symbols in a control resource set
maxNrofSearchSpaces-1 INTEGER ::= 39 -- Max number of Search Spaces minus 1
+maxNrofSearchSpacesLinks-1-r17 INTEGER ::= 39 -- Max number of Search Space links minus 1
+maxNrofBFDResourcePerSet-r17 INTEGER ::= 64 -- Max number of reference signal in one BFD set
maxSFI-DCI-PayloadSize INTEGER ::= 128 -- Max number payload of a DCI scrambled with SFI-RNTI
maxSFI-DCI-PayloadSize-1 INTEGER ::= 127 -- Max number payload of a DCI scrambled with SFI-RNTI minus 1
maxIAB-IP-Address-r16 INTEGER ::= 32 -- Max number of assigned IP addresses
@@ -12905,38 +19044,47 @@ maxNrofCSI-SSB-ResourcePerSet INTEGER ::= 64 -- Maximum number of
maxNrofCSI-SSB-ResourceSets INTEGER ::= 64 -- Maximum number of CSI SSB resource sets per cell
maxNrofCSI-SSB-ResourceSets-1 INTEGER ::= 63 -- Maximum number of CSI SSB resource sets per cell minus 1
maxNrofCSI-SSB-ResourceSetsPerConfig INTEGER ::= 1 -- Maximum number of CSI SSB resource sets per resource configuration
+maxNrofCSI-SSB-ResourceSetsPerConfigExt INTEGER ::= 2 -- Maximum number of CSI SSB resource sets per resource configuration
+ -- extended
maxNrofFailureDetectionResources INTEGER ::= 10 -- Maximum number of failure detection resources
maxNrofFailureDetectionResources-1 INTEGER ::= 9 -- Maximum number of failure detection resources minus 1
-maxNrofFreqSL-r16 INTEGER ::= 8 -- Maximum number of carrier frequncy for for NR sidelink communication
-maxNrofSL-BWPs-r16 INTEGER ::= 4 -- Maximum number of BWP for for NR sidelink communication
-maxFreqSL-EUTRA-r16 INTEGER ::= 8 -- Maximum number of EUTRA anchor carrier frequncy for NR sidelink communication
+maxNrofFailureDetectionResources-1-r17 INTEGER ::= 63 -- Maximum number of the enhanced failure detection resources minus 1
+maxNrofFreqSL-r16 INTEGER ::= 8 -- Maximum number of carrier frequency for NR sidelink communication
+maxNrofSL-BWPs-r16 INTEGER ::= 4 -- Maximum number of BWP for NR sidelink communication
+maxFreqSL-EUTRA-r16 INTEGER ::= 8 -- Maximum number of EUTRA anchor carrier frequency for NR sidelink communication
maxNrofSL-MeasId-r16 INTEGER ::= 64 -- Maximum number of sidelink measurement identity (RSRP) per destination
maxNrofSL-ObjectId-r16 INTEGER ::= 64 -- Maximum number of sidelink measurement objects (RSRP) per destination
maxNrofSL-ReportConfigId-r16 INTEGER ::= 64 -- Maximum number of sidelink measurement reporting configuration(RSRP) per destination
-maxNrofSL-PoolToMeasureNR-r16 INTEGER ::= 8 -- Maximum number of resoure pool for NR sidelink measurement to measure for
+maxNrofSL-PoolToMeasureNR-r16 INTEGER ::= 8 -- Maximum number of resource pool for NR sidelink measurement to measure for
-- each measurement object (for CBR)
-maxFreqSL-NR-r16 INTEGER ::= 8 -- Maximum number of NR anchor carrier frequncy for NR sidelink communication
+maxFreqSL-NR-r16 INTEGER ::= 8 -- Maximum number of NR anchor carrier frequency for NR sidelink communication
maxNrofSL-QFIs-r16 INTEGER ::= 2048 -- Maximum number of QoS flow for NR sidelink communication per UE
maxNrofSL-QFIsPerDest-r16 INTEGER ::= 64 -- Maximum number of QoS flow per destination for NR sidelink communication
maxNrofObjectId INTEGER ::= 64 -- Maximum number of measurement objects
maxNrofPageRec INTEGER ::= 32 -- Maximum number of page records
maxNrofPCI-Ranges INTEGER ::= 8 -- Maximum number of PCI ranges
-maxPLMN INTEGER ::= 12 -- Maximum number of PLMNs broadcast and reported by UE at establisghment
+maxPLMN INTEGER ::= 12 -- Maximum number of PLMNs broadcast and reported by UE at establishment
+maxTAC-r17 INTEGER ::= 12 -- Maximum number of Tracking Area Codes to which a cell belongs to
maxNrofCSI-RS-ResourcesRRM INTEGER ::= 96 -- Maximum number of CSI-RS resources per cell for an RRM measurement object
-maxNrofCSI-RS-ResourcesRRM-1 INTEGER ::= 95 -- Maximum number of CSI-RS resources per cell for an RRM measurement object minus 1
+maxNrofCSI-RS-ResourcesRRM-1 INTEGER ::= 95 -- Maximum number of CSI-RS resources per cell for an RRM measurement object
+ -- minus 1.
maxNrofMeasId INTEGER ::= 64 -- Maximum number of configured measurements
maxNrofQuantityConfig INTEGER ::= 2 -- Maximum number of quantity configurations
maxNrofCSI-RS-CellsRRM INTEGER ::= 96 -- Maximum number of cells with CSI-RS resources for an RRM measurement object
-maxNrofSL-Dest-r16 INTEGER ::= 32 -- Maximum number of destination for NR sidelink communication
-maxNrofSL-Dest-1-r16 INTEGER ::= 31 -- Highest index of destination for NR sidelink communication
+maxNrofSL-Dest-r16 INTEGER ::= 32 -- Maximum number of destination for NR sidelink communication and discovery
+maxNrofSL-Dest-1-r16 INTEGER ::= 31 -- Highest index of destination for NR sidelink communication and discovery
maxNrofSLRB-r16 INTEGER ::= 512 -- Maximum number of radio bearer for NR sidelink communication per UE
maxSL-LCID-r16 INTEGER ::= 512 -- Maximum number of RLC bearer for NR sidelink communication per UE
maxSL-SyncConfig-r16 INTEGER ::= 16 -- Maximum number of sidelink Sync configurations
-maxNrofRXPool-r16 INTEGER ::= 16 -- Maximum number of Rx resource poolfor NR sidelink communication
-maxNrofTXPool-r16 INTEGER ::= 8 -- Maximum number of Tx resourcepoolfor NR sidelink communication
-maxNrofPoolID-r16 INTEGER ::= 16 -- Maximum index of resource pool for NR sidelink communication
+maxNrofRXPool-r16 INTEGER ::= 16 -- Maximum number of Rx resource pool for NR sidelink communication and
+ -- discovery
+maxNrofTXPool-r16 INTEGER ::= 8 -- Maximum number of Tx resource pool for NR sidelink communication and
+ -- discovery
+maxNrofPoolID-r16 INTEGER ::= 16 -- Maximum index of resource pool for NR sidelink communication and
+ -- discovery
maxNrofSRS-PathlossReferenceRS-r16 INTEGER ::= 64 -- Maximum number of RSs used as pathloss reference for SRS power control.
-maxNrofSRS-PathlossReferenceRS-1-r16 INTEGER ::= 63 -- Maximum number of RSs used as pathloss reference for SRS power control-1.
+maxNrofSRS-PathlossReferenceRS-1-r16 INTEGER ::= 63 -- Maximum number of RSs used as pathloss reference for SRS power control
+ -- minus 1.
maxNrofSRS-ResourceSets INTEGER ::= 16 -- Maximum number of SRS resource sets in a BWP.
maxNrofSRS-ResourceSets-1 INTEGER ::= 15 -- Maximum number of SRS resource sets in a BWP minus 1.
maxNrofSRS-PosResourceSets-r16 INTEGER ::= 16 -- Maximum number of SRS Positioning resource sets in a BWP.
@@ -12944,14 +19092,14 @@ maxNrofSRS-PosResourceSets-1-r16 INTEGER ::= 15 -- Maximum number of
maxNrofSRS-Resources INTEGER ::= 64 -- Maximum number of SRS resources.
maxNrofSRS-Resources-1 INTEGER ::= 63 -- Maximum number of SRS resources minus 1.
maxNrofSRS-PosResources-r16 INTEGER ::= 64 -- Maximum number of SRS Positioning resources.
-maxNrofSRS-PosResources-1-r16 INTEGER ::= 63 -- Maximum number of SRS Positioning resources in an SRS Positioning
- -- resource set minus 1.
+maxNrofSRS-PosResources-1-r16 INTEGER ::= 63 -- Maximum number of SRS Positioning resources minus 1.
maxNrofSRS-ResourcesPerSet INTEGER ::= 16 -- Maximum number of SRS resources in an SRS resource set
maxNrofSRS-TriggerStates-1 INTEGER ::= 3 -- Maximum number of SRS trigger states minus 1, i.e., the largest code point.
maxNrofSRS-TriggerStates-2 INTEGER ::= 2 -- Maximum number of SRS trigger states minus 2.
maxRAT-CapabilityContainers INTEGER ::= 8 -- Maximum number of interworking RAT containers (incl NR and MRDC)
maxSimultaneousBands INTEGER ::= 32 -- Maximum number of simultaneously aggregated bands
-maxULTxSwitchingBandPairs INTEGER ::= 32 -- Maximum number of band pairs supporting dynamic UL Tx switching in a band combination
+maxULTxSwitchingBandPairs INTEGER ::= 32 -- Maximum number of band pairs supporting dynamic UL Tx switching in a band
+ -- combination.
maxNrofSlotFormatCombinationsPerSet INTEGER ::= 512 -- Maximum number of Slot Format Combinations in a SF-Set.
maxNrofSlotFormatCombinationsPerSet-1 INTEGER ::= 511 -- Maximum number of Slot Format Combinations in a SF-Set minus 1.
maxNrofTrafficPattern-r16 INTEGER ::= 8 -- Maximum number of Traffic Pattern for NR sidelink communication.
@@ -12962,37 +19110,50 @@ maxNrofPUCCH-ResourceSets-1 INTEGER ::= 3 -- Maximum number of
maxNrofPUCCH-ResourcesPerSet INTEGER ::= 32 -- Maximum number of PUCCH Resources per PUCCH-ResourceSet
maxNrofPUCCH-P0-PerSet INTEGER ::= 8 -- Maximum number of P0-pucch present in a p0-pucch set
maxNrofPUCCH-PathlossReferenceRSs INTEGER ::= 4 -- Maximum number of RSs used as pathloss reference for PUCCH power control.
-maxNrofPUCCH-PathlossReferenceRSs-1 INTEGER ::= 3 -- Maximum number of RSs used as pathloss reference for PUCCH power control minus 1.
-maxNrofPUCCH-PathlossReferenceRSs-r16 INTEGER ::= 64 -- Maximum number of RSs used as pathloss reference for PUCCH power control extended.
+maxNrofPUCCH-PathlossReferenceRSs-1 INTEGER ::= 3 -- Maximum number of RSs used as pathloss reference for PUCCH power control
+ -- minus 1.
+maxNrofPUCCH-PathlossReferenceRSs-r16 INTEGER ::= 64 -- Maximum number of RSs used as pathloss reference for PUCCH power control
+ -- extended.
maxNrofPUCCH-PathlossReferenceRSs-1-r16 INTEGER ::= 63 -- Maximum number of RSs used as pathloss reference for PUCCH power control
-- minus 1 extended.
+maxNrofPUCCH-PathlossReferenceRSs-1-r17 INTEGER ::= 7 -- Maximum number of RSs used as pathloss reference for PUCCH power control
+ -- minus 1.
maxNrofPUCCH-PathlossReferenceRSsDiff-r16 INTEGER ::= 60 -- Difference between the extended maximum and the non-extended maximum
maxNrofPUCCH-ResourceGroups-r16 INTEGER ::= 4 -- Maximum number of PUCCH resources groups.
maxNrofPUCCH-ResourcesPerGroup-r16 INTEGER ::= 128 -- Maximum number of PUCCH resources in a PUCCH group.
+maxNrofPowerControlSetInfos-r17 INTEGER ::= 8 -- Maximum number of PUCCH power control set infos
maxNrofMultiplePUSCHs-r16 INTEGER ::= 8 -- Maximum number of multiple PUSCHs in PUSCH TDRA list
-maxNrofP0-PUSCH-AlphaSets INTEGER ::= 30 -- Maximum number of P0-pusch-alpha-sets (see 38,213, clause 7.1)
-maxNrofP0-PUSCH-AlphaSets-1 INTEGER ::= 29 -- Maximum number of P0-pusch-alpha-sets minus 1 (see 38,213, clause 7.1)
+maxNrofP0-PUSCH-AlphaSets INTEGER ::= 30 -- Maximum number of P0-pusch-alpha-sets (see TS 38.213 [13], clause 7.1)
+maxNrofP0-PUSCH-AlphaSets-1 INTEGER ::= 29 -- Maximum number of P0-pusch-alpha-sets minus 1 (see TS 38.213 [13], clause 7.1)
maxNrofPUSCH-PathlossReferenceRSs INTEGER ::= 4 -- Maximum number of RSs used as pathloss reference for PUSCH power control.
-maxNrofPUSCH-PathlossReferenceRSs-1 INTEGER ::= 3 -- Maximum number of RSs used as pathloss reference for PUSCH power control minus 1.
-maxNrofPUSCH-PathlossReferenceRSs-r16 INTEGER ::= 64 -- Maximum number of RSs used as pathloss reference for PUSCH power control extended
-maxNrofPUSCH-PathlossReferenceRSs-1-r16 INTEGER ::= 63 -- Maximum number of RSs used as pathloss reference for PUSCH power control minus 1
+maxNrofPUSCH-PathlossReferenceRSs-1 INTEGER ::= 3 -- Maximum number of RSs used as pathloss reference for PUSCH power control
+ -- minus 1.
+maxNrofPUSCH-PathlossReferenceRSs-r16 INTEGER ::= 64 -- Maximum number of RSs used as pathloss reference for PUSCH power control
+ -- extended
+maxNrofPUSCH-PathlossReferenceRSs-1-r16 INTEGER ::= 63 -- Maximum number of RSs used as pathloss reference for PUSCH power control
+ -- extended minus 1
maxNrofPUSCH-PathlossReferenceRSsDiff-r16 INTEGER ::= 60 -- Difference between maxNrofPUSCH-PathlossReferenceRSs-r16 and
-- maxNrofPUSCH-PathlossReferenceRSs
+maxNrofPathlossReferenceRSs-r17 INTEGER ::= 64 -- Maximum number of RSs used as pathloss reference for PUSCH, PUCCH, SRS
+ -- power control for unified TCI state operation
+maxNrofPathlossReferenceRSs-1-r17 INTEGER ::= 63 -- Maximum number of RSs used as pathloss reference for PUSCH, PUCCH, SRS
+ -- power control for unified TCI state operation minus 1
maxNrofNAICS-Entries INTEGER ::= 8 -- Maximum number of supported NAICS capability set
maxBands INTEGER ::= 1024 -- Maximum number of supported bands in UE capability.
maxBandsMRDC INTEGER ::= 1280
maxBandsEUTRA INTEGER ::= 256
maxCellReport INTEGER ::= 8
-maxDRB INTEGER ::= 29 -- Maximum number of DRBs (that can be added in DRB-ToAddModLIst).
+maxDRB INTEGER ::= 29 -- Maximum number of DRBs (that can be added in DRB-ToAddModList).
maxFreq INTEGER ::= 8 -- Max number of frequencies.
maxFreqLayers INTEGER ::= 4 -- Max number of frequency layers.
+maxFreqPlus1 INTEGER ::= 9 -- Max number of frequencies for Slicing.
maxFreqIDC-r16 INTEGER ::= 128 -- Max number of frequencies for IDC indication.
maxCombIDC-r16 INTEGER ::= 128 -- Max number of reported UL CA for IDC indication.
maxFreqIDC-MRDC INTEGER ::= 32 -- Maximum number of candidate NR frequencies for MR-DC IDC indication
-maxNrofCandidateBeams INTEGER ::= 16 -- Max number of PRACH-ResourceDedicatedBFR that in BFR config.
+maxNrofCandidateBeams INTEGER ::= 16 -- Max number of PRACH-ResourceDedicatedBFR in BFR config.
maxNrofCandidateBeams-r16 INTEGER ::= 64 -- Max number of candidate beam resources in BFR config.
maxNrofCandidateBeamsExt-r16 INTEGER ::= 48 -- Max number of PRACH-ResourceDedicatedBFR in the CandidateBeamRSListExt
-maxNrofPCIsPerSMTC INTEGER ::= 64 -- Maximun number of PCIs per SMTC.
+maxNrofPCIsPerSMTC INTEGER ::= 64 -- Maximum number of PCIs per SMTC.
maxNrofQFIs INTEGER ::= 64
maxNrofResourceAvailabilityPerCombination-r16 INTEGER ::= 256
maxNrOfSemiPersistentPUSCH-Triggers INTEGER ::= 64 -- Maximum number of triggers for semi persistent reporting on PUSCH
@@ -13010,6 +19171,10 @@ maxNrofS-NSSAI INTEGER ::= 8 -- Maximum number of
maxNrofTCI-StatesPDCCH INTEGER ::= 64
maxNrofTCI-States INTEGER ::= 128 -- Maximum number of TCI states.
maxNrofTCI-States-1 INTEGER ::= 127 -- Maximum number of TCI states minus 1.
+maxUL-TCI-r17 INTEGER ::= 64 -- Maximum number of TCI states.
+maxUL-TCI-1-r17 INTEGER ::= 63 -- Maximum number of TCI states minus 1.
+maxNrofAdditionalPCI-r17 INTEGER ::= 7 -- Maximum number of additional PCI
+maxMPE-Resources-r17 INTEGER ::= 64 -- Maximum number of pooled MPE resources
maxNrofUL-Allocations INTEGER ::= 16 -- Maximum number of PUSCH time domain resource allocations.
maxQFI INTEGER ::= 63
maxRA-CSIRS-Resources INTEGER ::= 96
@@ -13023,8 +19188,9 @@ maxMBSFN-Allocations INTEGER ::= 8
maxNrofMultiBands INTEGER ::= 8
maxCellSFTD INTEGER ::= 3 -- Maximum number of cells for SFTD reporting
maxReportConfigId INTEGER ::= 64
-maxNrofCodebooks INTEGER ::= 16 -- Maximum number of codebooks suppoted by the UE
+maxNrofCodebooks INTEGER ::= 16 -- Maximum number of codebooks supported by the UE
maxNrofCSI-RS-ResourcesExt-r16 INTEGER ::= 16 -- Maximum number of codebook resources supported by the UE for eType2/Codebook combo
+maxNrofCSI-RS-ResourcesExt-r17 INTEGER ::= 8 -- Maximum number of codebook resources for fetype2R1 and fetype2R2
maxNrofCSI-RS-Resources INTEGER ::= 7 -- Maximum number of codebook resources supported by the UE
maxNrofCSI-RS-ResourcesAlt-r16 INTEGER ::= 512 -- Maximum number of alternative codebook resources supported by the UE
maxNrofCSI-RS-ResourcesAlt-1-r16 INTEGER ::= 511 -- Maximum number of alternative codebook resources supported by the UE minus 1
@@ -13032,12 +19198,14 @@ maxNrofSRI-PUSCH-Mappings INTEGER ::= 16
maxNrofSRI-PUSCH-Mappings-1 INTEGER ::= 15
maxSIB INTEGER::= 32 -- Maximum number of SIBs
maxSI-Message INTEGER::= 32 -- Maximum number of SI messages
+maxSIB-MessagePlus1-r17 INTEGER::= 33 -- Maximum number of SIB messages plus 1
maxPO-perPF INTEGER ::= 4 -- Maximum number of paging occasion per paging frame
+maxPEI-perPF-r17 INTEGER ::= 4 -- Maximum number of PEI occasion per paging frame
maxAccessCat-1 INTEGER ::= 63 -- Maximum number of Access Categories minus 1
maxBarringInfoSet INTEGER ::= 8 -- Maximum number of access control parameter sets
maxCellEUTRA INTEGER ::= 8 -- Maximum number of E-UTRA cells in SIB list
maxEUTRA-Carrier INTEGER ::= 8 -- Maximum number of E-UTRA carriers in SIB list
-maxPLMNIdentities INTEGER ::= 8 -- Maximum number of PLMN identites in RAN area configurations
+maxPLMNIdentities INTEGER ::= 8 -- Maximum number of PLMN identities in RAN area configurations
maxDownlinkFeatureSets INTEGER ::= 1024 -- (for NR DL) Total number of FeatureSets (size of the pool)
maxUplinkFeatureSets INTEGER ::= 1024 -- (for NR UL) Total number of FeatureSets (size of the pool)
maxEUTRA-DL-FeatureSets INTEGER ::= 256 -- (for E-UTRA) Total number of FeatureSets (size of the pool)
@@ -13046,12 +19214,16 @@ maxFeatureSetsPerBand INTEGER ::= 128 -- (for NR) The numb
maxPerCC-FeatureSets INTEGER ::= 1024 -- (for NR) Total number of CC-specific FeatureSets (size of the pool)
maxFeatureSetCombinations INTEGER ::= 1024 -- (for MR-DC/NR)Total number of Feature set combinations (size of the pool)
maxInterRAT-RSTD-Freq INTEGER ::= 3
+maxGIN-r17 INTEGER ::= 24 -- Maximum number of broadcast GINs
maxHRNN-Len-r16 INTEGER ::= 48 -- Maximum length of HRNNs
maxNPN-r16 INTEGER ::= 12 -- Maximum number of NPNs broadcast and reported by UE at establishment
maxNrOfMinSchedulingOffsetValues-r16 INTEGER ::= 2 -- Maximum number of min. scheduling offset (K0/K2) configurations
maxK0-SchedulingOffset-r16 INTEGER ::= 16 -- Maximum number of slots configured as min. scheduling offset (K0)
maxK2-SchedulingOffset-r16 INTEGER ::= 16 -- Maximum number of slots configured as min. scheduling offset (K2)
+maxK0-SchedulingOffset-r17 INTEGER ::= 64 -- Maximum number of slots configured as min. scheduling offset (K0)
+maxK2-SchedulingOffset-r17 INTEGER ::= 64 -- Maximum number of slots configured as min. scheduling offset (K2)
maxDCI-2-6-Size-r16 INTEGER ::= 140 -- Maximum size of DCI format 2-6
+maxDCI-2-7-Size-r17 INTEGER ::= 43 -- Maximum size of DCI format 2-7
maxDCI-2-6-Size-1-r16 INTEGER ::= 139 -- Maximum DCI format 2-6 size minus 1
maxNrofUL-Allocations-r16 INTEGER ::= 64 -- Maximum number of PUSCH time domain resource allocations
maxNrofP0-PUSCH-Set-r16 INTEGER ::= 2 -- Maximum number of P0 PUSCH set(s)
@@ -13059,6 +19231,7 @@ maxOnDemandSIB-r16 INTEGER ::= 8 -- Maximum number of
maxOnDemandPosSIB-r16 INTEGER ::= 32 -- Maximum number of posSIB(s) that can be requested on-demand
maxCI-DCI-PayloadSize-r16 INTEGER ::= 126 -- Maximum number of the DCI size for CI
maxCI-DCI-PayloadSize-1-r16 INTEGER ::= 125 -- Maximum number of the DCI size for CI minus 1
+maxUu-RelayRLC-ChannelID-r17 INTEGER ::= 32 -- Maximum value of Uu Relay RLC channel ID
maxWLAN-Id-Report-r16 INTEGER ::= 32 -- Maximum number of WLAN IDs to report
maxWLAN-Name-r16 INTEGER ::= 4 -- Maximum number of WLAN name
maxRAReport-r16 INTEGER ::= 8 -- Maximum number of RA procedures information to be included in the RA report
@@ -13069,6 +19242,7 @@ maxNrofCLI-RSSI-Resources-r16 INTEGER ::= 64 -- Maximum number of
maxNrofCLI-RSSI-Resources-1-r16 INTEGER ::= 63 -- Maximum number of CLI-RSSI resources for UE minus 1
maxNrofCLI-SRS-Resources-r16 INTEGER ::= 32 -- Maximum number of SRS resources for CLI measurement for UE
maxCLI-Report-r16 INTEGER ::= 8
+maxNrofCC-Group-r17 INTEGER ::= 16 -- Maximum number of CC groups for DC location report
maxNrofConfiguredGrantConfig-r16 INTEGER ::= 12 -- Maximum number of configured grant configurations per BWP
maxNrofConfiguredGrantConfig-1-r16 INTEGER ::= 11 -- Maximum number of configured grant configurations per BWP minus 1
maxNrofCG-Type2DeactivationState INTEGER ::= 16 -- Maximum number of deactivation state for type 2 configured grants per BWP
@@ -13076,10 +19250,59 @@ maxNrofConfiguredGrantConfigMAC-1-r16 INTEGER ::= 31 -- Maximum number of
maxNrofSPS-Config-r16 INTEGER ::= 8 -- Maximum number of SPS configurations per BWP
maxNrofSPS-Config-1-r16 INTEGER ::= 7 -- Maximum number of SPS configurations per BWP minus 1
maxNrofSPS-DeactivationState INTEGER ::= 16 -- Maximum number of deactivation state for SPS per BWP
-maxNrofDormancyGroups INTEGER ::= 5 --
-maxNrofPUCCH-ResourceGroups-1-r16 INTEGER ::= 3 --
+maxNrofPPW-Config-r17 INTEGER ::= 4 -- Maximum number of Preconfigured PRS processing windows per DL BWP
+maxNrofPPW-ID-1-r17 INTEGER ::= 15 -- Maximum number of Preconfigured PRS processing windows minus 1
+maxNrOfTxTEGReport-r17 INTEGER ::= 256 -- Maximum number of UE Tx Timing Error Group Report
+maxNrOfTxTEG-ID-1-r17 INTEGER ::= 7 -- Maximum number of UE Tx Timing Error Group ID minus 1
+maxNrofPagingSubgroups-r17 INTEGER ::= 8 -- Maximum number of paging subgroups per paging occasion
+maxNrofPUCCH-ResourceGroups-1-r16 INTEGER ::= 3
+maxNrofReqComDC-Location-r17 INTEGER ::= 128 -- Maximum number of requested carriers/BWPs combinations for DC location
+ -- report
maxNrofServingCellsTCI-r16 INTEGER ::= 32 -- Maximum number of serving cells in simultaneousTCI-UpdateList
maxNrofTxDC-TwoCarrier-r16 INTEGER ::= 64 -- Maximum number of UL Tx DC locations reported by the UE for 2CC uplink CA
+maxNrofRB-SetGroups-r17 INTEGER ::= 8 -- Maximum number of RB set groups
+maxNrofRB-Sets-r17 INTEGER ::= 8 -- Maximum number of RB sets
+maxNrofEnhType3HARQ-ACK-r17 INTEGER ::= 8 -- Maximum number of enhanced type 3 HARQ-ACK codebook
+maxNrofEnhType3HARQ-ACK-1-r17 INTEGER ::= 7 -- Maximum number of enhanced type 3 HARQ-ACK codebook minus 1
+maxNrofPRS-ResourcesPerSet-r17 INTEGER ::= 64 -- Maximum number of PRS resources for one set
+maxNrofPRS-ResourcesPerSet-1-r17 INTEGER ::= 63 -- Maximum number of PRS resources for one set minus 1
+maxNrofPRS-ResourceOffsetValue-1-r17 INTEGER ::= 511
+maxNrofGapId-r17 INTEGER ::= 8 -- Maximum number of measurement gap ID
+maxNrofPreConfigPosGapId-r17 INTEGER ::= 16 -- Maximum number of preconfigured positioning measurement gap
+maxNrOfGapPri-r17 INTEGER ::= 16 -- Maximum number of gap priority level
+maxCEFReport-r17 INTEGER ::= 4 -- Maximum number of CEF reports by the UE
+maxNrofMultiplePDSCHs-r17 INTEGER ::= 8 -- Maximum number of PDSCHs in PDSCH TDRA list
+maxSliceInfo-r17 INTEGER ::= 8 -- Maximum number of NSAGs
+maxCellSlice-r17 INTEGER ::= 16 -- Maximum number of cells supporting the NSAG
+maxNrofTRS-ResourceSets-r17 INTEGER ::= 64 -- Maximum number of TRS resource sets
+maxNrofSearchSpaceGroups-1-r17 INTEGER ::= 2 -- Maximum number of search space groups minus 1
+maxNrofRemoteUE-r17 INTEGER ::= 32 -- Maximum number of connected L2 U2N Remote UEs
+maxDCI-4-2-Size-r17 INTEGER ::= 140 -- Maximum size of DCI format 4-2
+maxFreqMBS-r17 INTEGER ::= 16 -- Maximum number of MBS frequencies reported in MBSInterestIndication
+maxNrofDRX-ConfigPTM-r17 INTEGER ::= 64 -- Max number of DRX configuration for PTM provided in MBS broadcast in a
+ -- cell
+maxNrofDRX-ConfigPTM-1-r17 INTEGER ::= 63 -- Max number of DRX configuration for PTM provided in MBS broadcast in a
+ -- cell minus 1
+maxNrofMBS-ServiceListPerUE-r17 INTEGER ::= 16 -- Maximum number of services which the UE can include in the MBS interest
+ -- indication
+maxNrofMBS-Session-r17 INTEGER ::= 1024 -- Maximum number of MBS sessions provided in MBS broadcast in a cell
+maxNrofMTCH-SSB-MappingWindow-r17 INTEGER ::= 16 -- Maximum number of MTCH to SSB beam mapping pattern
+maxNrofMTCH-SSB-MappingWindow-1-r17 INTEGER ::= 15 -- Maximum number of MTCH to SSB beam mapping pattern minus 1
+maxNrofMRB-Broadcast-r17 INTEGER ::= 4 -- Maximum number of broadcast MRBs configured for one MBS broadcast service
+maxNrofPageGroup-r17 INTEGER ::= 32 -- Maximum number of paging groups in a paging message
+maxNrofPDSCH-ConfigPTM-r17 INTEGER ::= 16 -- Maximum number of PDSCH configuration groups for PTM
+maxNrofPDSCH-ConfigPTM-1-r17 INTEGER ::= 15 -- Maximum number of PDSCH configuration groups for PTM minus 1
+maxG-RNTI-r17 INTEGER ::= 16 -- Maximum number of G-RNTI that can be configured for a UE.
+maxG-RNTI-1-r17 INTEGER ::= 15 -- Maximum number of G-RNTI that can be configured for a UE minus 1.
+maxG-CS-RNTI-r17 INTEGER ::= 8 -- Maximum number of G-CS-RNTI that can be configured for a UE.
+maxG-CS-RNTI-1-r17 INTEGER ::= 7 -- Maximum number of G-CS-RNTI that can be configured for a UE minus 1.
+maxMRB-r17 INTEGER ::= 32 -- Maximum number of multicast MRBs (that can be added in MRB-ToAddModLIst)
+maxFSAI-MBS-r17 INTEGER ::= 64 -- Maximum number of MBS frequency selection area identities
+maxNeighCellMBS-r17 INTEGER ::= 8 -- Maximum number of MBS broadcast neighbour cells
+maxNrofPdcch-BlindDetectionMixed-1-r16 INTEGER ::= 7 -- Maximum number of combinations of mixed Rel-16 and Rel-15 PDCCH
+ -- monitoring capabilities minus 1
+maxNrofPdcch-BlindDetection-r17 INTEGER ::= 16 -- Maximum number of combinations of PDCCH blind detection monitoring
+ -- capabilities
-- TAG-MULTIPLICITY-AND-TYPE-CONSTRAINT-DEFINITIONS-STOP
diff --git a/epan/dissectors/asn1/nr-rrc/NR-Sidelink-DiscoveryMessage.asn b/epan/dissectors/asn1/nr-rrc/NR-Sidelink-DiscoveryMessage.asn
new file mode 100644
index 0000000000..ab8037c343
--- /dev/null
+++ b/epan/dissectors/asn1/nr-rrc/NR-Sidelink-DiscoveryMessage.asn
@@ -0,0 +1,17 @@
+-- 3GPP TS 38.331 V17.7.0 (2023-12)
+
+NR-Sidelink-DiscoveryMessage DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+IMPORTS
+ CellAccessRelatedInfo,
+ SL-ServingCellInfo-r17
+FROM NR-RRC-Definitions;
+
+SL-AccessInfo-L2U2N-r17 ::= SEQUENCE {
+ cellAccessRelatedInfo-r17 CellAccessRelatedInfo,
+ sl-ServingCellInfo-r17 SL-ServingCellInfo-r17,
+ ...
+}
+
+END
diff --git a/epan/dissectors/asn1/nr-rrc/NR-Sidelink-Preconf.asn b/epan/dissectors/asn1/nr-rrc/NR-Sidelink-Preconf.asn
index 400f9e15a2..a6361dba92 100644
--- a/epan/dissectors/asn1/nr-rrc/NR-Sidelink-Preconf.asn
+++ b/epan/dissectors/asn1/nr-rrc/NR-Sidelink-Preconf.asn
@@ -1,21 +1,23 @@
--- 3GPP TS 38.331 V16.6.0 (2021-09)
+-- 3GPP TS 38.331 V17.7.0 (2023-12)
NR-Sidelink-Preconf DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
-SL-FreqConfigCommon-r16,
-SL-RadioBearerConfig-r16,
-SL-RLC-BearerConfig-r16,
-SL-EUTRA-AnchorCarrierFreqList-r16,
-SL-NR-AnchorCarrierFreqList-r16,
-SL-MeasConfigCommon-r16,
-SL-UE-SelectedConfig-r16,
-TDD-UL-DL-ConfigCommon,
-maxNrofFreqSL-r16,
-maxNrofSLRB-r16,
-maxSL-LCID-r16
+ SL-RemoteUE-Config-r17,
+ SL-DRX-ConfigGC-BC-r17,
+ SL-FreqConfigCommon-r16,
+ SL-RadioBearerConfig-r16,
+ SL-RLC-BearerConfig-r16,
+ SL-EUTRA-AnchorCarrierFreqList-r16,
+ SL-NR-AnchorCarrierFreqList-r16,
+ SL-MeasConfigCommon-r16,
+ SL-UE-SelectedConfig-r16,
+ TDD-UL-DL-ConfigCommon,
+ maxNrofFreqSL-r16,
+ maxNrofSLRB-r16,
+ maxSL-LCID-r16
FROM NR-RRC-Definitions;
-- TAG-NR-SIDELINK-PRECONF-DEFINITIONS-STOP
@@ -35,16 +37,25 @@ SidelinkPreconfigNR-r16 ::= SEQUENCE {
sl-MeasPreConfig-r16 SL-MeasConfigCommon-r16 OPTIONAL,
sl-OffsetDFN-r16 INTEGER (1..1000) OPTIONAL,
t400-r16 ENUMERATED{ms100, ms200, ms300, ms400, ms600, ms1000, ms1500, ms2000} OPTIONAL,
- sl-MaxNumConsecutiveDTX-r16 ENUMERATED {n1, n2, n3, n4, n6, n8, n16, n32} OPTIONAL,
+ sl-MaxNumConsecutiveDTX-r16 ENUMERATED {n1, n2, n3, n4, n6, n8, n16, n32} OPTIONAL,
sl-SSB-PriorityNR-r16 INTEGER (1..8) OPTIONAL,
sl-PreconfigGeneral-r16 SL-PreconfigGeneral-r16 OPTIONAL,
sl-UE-SelectedPreConfig-r16 SL-UE-SelectedConfig-r16 OPTIONAL,
sl-CSI-Acquisition-r16 ENUMERATED {enabled} OPTIONAL,
sl-RoHC-Profiles-r16 SL-RoHC-Profiles-r16 OPTIONAL,
sl-MaxCID-r16 INTEGER (1..16383) DEFAULT 15,
- ...
+ ...,
+ [[
+ sl-DRX-PreConfigGC-BC-r17 SL-DRX-ConfigGC-BC-r17 OPTIONAL,
+ sl-TxProfileList-r17 SL-TxProfileList-r17 OPTIONAL,
+ sl-PreconfigDiscConfig-r17 SL-RemoteUE-Config-r17 OPTIONAL
+ ]]
}
+SL-TxProfileList-r17 ::= SEQUENCE (SIZE (1..256)) OF SL-TxProfile-r17
+
+SL-TxProfile-r17 ::= ENUMERATED {drx-Compatible, drx-Incompatible, spare6, spare5, spare4, spare3,spare2, spare1}
+
SL-PreconfigGeneral-r16 ::= SEQUENCE {
sl-TDD-Configuration-r16 TDD-UL-DL-ConfigCommon OPTIONAL,
reservedBits-r16 BIT STRING (SIZE (2)) OPTIONAL,
diff --git a/epan/dissectors/asn1/nr-rrc/NR-UE-Variables.asn b/epan/dissectors/asn1/nr-rrc/NR-UE-Variables.asn
index 43a6a3e201..17995a9a38 100644
--- a/epan/dissectors/asn1/nr-rrc/NR-UE-Variables.asn
+++ b/epan/dissectors/asn1/nr-rrc/NR-UE-Variables.asn
@@ -1,13 +1,15 @@
--- 3GPP TS 38.331 V16.6.0 (2021-09)
+-- 3GPP TS 38.331 V17.7.0 (2023-12)
NR-UE-Variables DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
+ AreaConfiguration-r17,
ARFCN-ValueNR,
CellIdentity,
EUTRA-PhysCellId,
+ maxCEFReport-r17,
MeasId,
MeasIdToAddModList,
MeasIdleCarrierEUTRA-r16,
@@ -44,6 +46,7 @@ IMPORTS
WLAN-NameList-r16,
BT-NameList-r16,
PLMN-Identity,
+ maxNrofRelayMeas-r17,
maxPLMN,
RA-ReportList-r16,
VisitedCellInfoList-r16,
@@ -51,6 +54,8 @@ IMPORTS
LoggedEventTriggerConfig-r16,
LoggedPeriodicalReportConfig-r16,
Sensor-NameList-r16,
+ SL-SourceIdentity-r17,
+ SuccessHO-Report-r17,
PLMN-IdentityList2-r16,
AreaConfiguration-r16,
maxNrofSL-MeasId-r16,
@@ -58,7 +63,8 @@ IMPORTS
maxNrofCLI-RSSI-Resources-r16,
maxNrofCLI-SRS-Resources-r16,
RSSI-ResourceId-r16,
- SRS-ResourceId
+ SRS-ResourceId,
+ VisitedPSCellInfoList-r17
FROM NR-RRC-Definitions;
-- NR-UE-VARIABLES-STOP
@@ -68,7 +74,6 @@ VarConditionalReconfig ::= SEQUENCE {
condReconfigList CondReconfigToAddModList-r16 OPTIONAL
}
-
-- TAG-VARCONDITIONALRECONFIG-STOP
-- TAG-VARCONNESTFAILREPORT-START
@@ -78,6 +83,13 @@ VarConnEstFailReport-r16 ::= SEQUENCE {
}
-- TAG-VARCONNESTFAILREPORT-STOP
+-- TAG-VARCONNESTFAILREPORTLIST-START
+
+VarConnEstFailReportList-r17 ::= SEQUENCE {
+ connEstFailReportList-r17 SEQUENCE (SIZE (1..maxCEFReport-r17)) OF VarConnEstFailReport-r16
+}
+
+-- TAG-VARCONNESTFAILREPORTLIST-STOP
-- TAG-VARLOGMEASCONFIG-START
VarLogMeasConfig-r16-IEs ::= SEQUENCE {
@@ -89,7 +101,9 @@ VarLogMeasConfig-r16-IEs ::= SEQUENCE {
reportType CHOICE {
periodical LoggedPeriodicalReportConfig-r16,
eventTriggered LoggedEventTriggerConfig-r16
- }
+ },
+ earlyMeasIndication-r17 ENUMERATED {true} OPTIONAL,
+ areaConfiguration-r17 AreaConfiguration-r17 OPTIONAL
}
-- TAG-VARLOGMEASCONFIG-STOP
-- TAG-VARLOGMEASREPORT-START
@@ -100,7 +114,8 @@ VarLogMeasReport-r16 ::= SEQUENCE {
traceRecordingSessionRef-r16 OCTET STRING (SIZE (2)),
tce-Id-r16 OCTET STRING (SIZE (1)),
logMeasInfoList-r16 LogMeasInfoList-r16,
- plmn-IdentityList-r16 PLMN-IdentityList2-r16
+ plmn-IdentityList-r16 PLMN-IdentityList2-r16,
+ sigLoggedMeasType-r17 ENUMERATED {true}
}
-- TAG-VARLOGMEASREPORT-STOP
@@ -119,7 +134,6 @@ VarMeasConfig ::= SEQUENCE {
ssb-RSRP RSRP-Range,
csi-RSRP RSRP-Range
} OPTIONAL
-
}
-- TAG-VARMEASCONFIG-STOP
@@ -131,7 +145,7 @@ VarMeasConfigSL-r16 ::= SEQUENCE {
-- NR sidelink measurement objects
sl-MeasObjectList-r16 SL-MeasObjectList-r16 OPTIONAL,
-- NR sidelink reporting configurations
- sl-reportConfigList-r16 SL-ReportConfigList-r16 OPTIONAL,
+ sl-ReportConfigList-r16 SL-ReportConfigList-r16 OPTIONAL,
-- Other parameters
sl-QuantityConfig-r16 SL-QuantityConfig-r16 OPTIONAL
}
@@ -165,7 +179,8 @@ VarMeasReport ::= SEQUENCE {
cellsTriggeredList CellsTriggeredList OPTIONAL,
numberOfReportsSent INTEGER,
cli-TriggeredList-r16 CLI-TriggeredList-r16 OPTIONAL,
- tx-PoolMeasToAddModListNR-r16 Tx-PoolMeasList-r16 OPTIONAL
+ tx-PoolMeasToAddModListNR-r16 Tx-PoolMeasList-r16 OPTIONAL,
+ relaysTriggeredList-r17 RelaysTriggeredList-r17 OPTIONAL
}
CellsTriggeredList ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF CHOICE {
@@ -183,6 +198,8 @@ SRS-RSRP-TriggeredList-r16 ::= SEQUENCE (SIZE (1.. maxNrofCLI-SRS-Resources
CLI-RSSI-TriggeredList-r16 ::= SEQUENCE (SIZE (1.. maxNrofCLI-RSSI-Resources-r16)) OF RSSI-ResourceId-r16
+RelaysTriggeredList-r17 ::= SEQUENCE (SIZE (1.. maxNrofRelayMeas-r17)) OF SL-SourceIdentity-r17
+
-- TAG-VARMEASREPORTLIST-STOP
-- TAG-VARMEASREPORTLISTSL-START
@@ -200,6 +217,11 @@ VarMeasReportSL-r16 ::= SEQUENCE {
VarMobilityHistoryReport-r16 ::= VisitedCellInfoList-r16
+VarMobilityHistoryReport-r17 ::= SEQUENCE {
+ visitedCellInfoList-r16 VisitedCellInfoList-r16,
+ visitedPSCellInfoListReport-r17 VisitedPSCellInfoList-r17 OPTIONAL
+}
+
-- TAG-VARMOBILITYHISTORYREPORT-STOP
-- TAG-VARPENDINGRNA-UPDATE-START
@@ -224,7 +246,6 @@ VarResumeMAC-Input ::= SEQUENCE {
sourcePhysCellId PhysCellId,
targetCellIdentity CellIdentity,
source-c-RNTI RNTI-Value
-
}
-- TAG-VARRESUMEMAC-INPUT-STOP
@@ -245,5 +266,12 @@ VarShortMAC-Input ::= SEQUENCE {
}
-- TAG-VARSHORTMAC-INPUT-STOP
+-- TAG-VARSUCCESSHO-Report-START
+
+VarSuccessHO-Report-r17-IEs ::= SEQUENCE {
+ successHO-Report-r17 SuccessHO-Report-r17,
+ plmn-IdentityList-r17 PLMN-IdentityList2-r16
+}
+-- TAG-VARSUCCESSHO-Report-STOP
END
diff --git a/epan/dissectors/asn1/nr-rrc/PC5-RRC-Definitions.asn b/epan/dissectors/asn1/nr-rrc/PC5-RRC-Definitions.asn
index 8ad688298f..c45f2c816e 100644
--- a/epan/dissectors/asn1/nr-rrc/PC5-RRC-Definitions.asn
+++ b/epan/dissectors/asn1/nr-rrc/PC5-RRC-Definitions.asn
@@ -1,29 +1,42 @@
--- 3GPP TS 38.331 V16.6.0 (2021-09)
+-- 3GPP TS 38.331 V17.7.0 (2023-12)
PC5-RRC-Definitions DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
+ CellAccessRelatedInfo,
SetupRelease,
RRC-TransactionIdentifier,
SN-FieldLengthAM,
SN-FieldLengthUM,
LogicalChannelIdentity,
maxNrofSLRB-r16,
+ maxNrofSL-RxInfoSet-r17,
maxNrofSL-QFIs-r16,
maxNrofSL-QFIsPerDest-r16,
+ PagingCycle,
+ PagingRecord,
RSRP-Range,
SL-MeasConfig-r16,
SL-MeasId-r16,
FreqBandList,
FreqBandIndicatorNR,
+ maxNrofRelayMeas-r17,
maxSimultaneousBands,
maxBandComb,
maxBands,
+ maxSIB-MessagePlus1-r17,
+ maxSL-LCID-r16,
BandParametersSidelink-r16,
- RLC-ParametersSidelink-r16
-
+ RLC-ParametersSidelink-r16,
+ SIB1,
+ SL-DRX-ConfigUC-r17,
+ SL-DRX-ConfigUC-SemiStatic-r17,
+ SL-PagingIdentityRemoteUE-r17,
+ SL-RLC-ChannelID-r17,
+ SL-SourceIdentity-r17,
+ SystemInformation
FROM NR-RRC-Definitions;
-- TAG-PC5-RRC-DEFINITIONS-STOP
@@ -56,9 +69,17 @@ SCCH-MessageType ::= CHOICE {
rrcReconfigurationFailureSidelink RRCReconfigurationFailureSidelink,
ueCapabilityEnquirySidelink UECapabilityEnquirySidelink,
ueCapabilityInformationSidelink UECapabilityInformationSidelink,
- spare2 NULL, spare1 NULL
+ uuMessageTransferSidelink-r17 UuMessageTransferSidelink-r17,
+ remoteUEInformationSidelink-r17 RemoteUEInformationSidelink-r17
},
- messageClassExtension SEQUENCE {}
+ messageClassExtension CHOICE {
+ c2 CHOICE {
+ notificationMessageSidelink-r17 NotificationMessageSidelink-r17,
+ ueAssistanceInformationSidelink-r17 UEAssistanceInformationSidelink-r17,
+ spare6 NULL, spare5 NULL, spare4 NULL, spare3 NULL, spare2 NULL, spare1 NULL
+ },
+ messageClassExtensionFuture-r17 SEQUENCE {}
+ }
}
-- TAG-SCCH-MESSAGE-STOP
@@ -77,13 +98,13 @@ MasterInformationBlockSidelink ::= SEQUENCE {
MeasurementReportSidelink ::= SEQUENCE {
criticalExtensions CHOICE {
- measurementReportSidelink-r16 MeasurementReportSidelink-IEs-r16,
+ measurementReportSidelink-r16 MeasurementReportSidelink-r16-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
-MeasurementReportSidelink-IEs-r16 ::= SEQUENCE {
- sl-measResults-r16 SL-MeasResults-r16,
+MeasurementReportSidelink-r16-IEs ::= SEQUENCE {
+ sl-MeasResults-r16 SL-MeasResults-r16,
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
@@ -104,18 +125,74 @@ SL-MeasQuantityResult-r16 ::= SEQUENCE {
...
}
+SL-MeasResultListRelay-r17 ::= SEQUENCE (SIZE (1..maxNrofRelayMeas-r17)) OF SL-MeasResultRelay-r17
+
+SL-MeasResultRelay-r17 ::= SEQUENCE {
+ cellIdentity-r17 CellAccessRelatedInfo,
+ sl-RelayUE-Identity-r17 SL-SourceIdentity-r17,
+ sl-MeasResult-r17 SL-MeasResult-r16,
+ ...
+}
+
-- TAG-MEASUREMENTREPORTSIDELINK-STOP
+-- TAG-NOTIFICATIONMESSAGESIDELINK-START
+
+NotificationMessageSidelink-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ notificationMessageSidelink-r17 NotificationMessageSidelink-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+NotificationMessageSidelink-r17-IEs ::= SEQUENCE {
+ indicationType-r17 ENUMERATED {
+ relayUE-Uu-RLF, relayUE-HO, relayUE-CellReselection,
+ relayUE-Uu-RRC-Failure
+ } OPTIONAL, -- Need N
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- TAG-NOTIFICATIONMESSAGESIDELINK -STOP
+-- TAG-REMOTEUEINFORMATIONSIDELINK-START
+
+RemoteUEInformationSidelink-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ remoteUEInformationSidelink-r17 RemoteUEInformationSidelink-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+RemoteUEInformationSidelink-r17-IEs ::= SEQUENCE {
+ sl-RequestedSIB-List-r17 CHOICE {release NULL, setup SL-RequestedSIB-List-r17} OPTIONAL, -- Need M
+ sl-PagingInfo-RemoteUE-r17 CHOICE {release NULL, setup SL-PagingInfo-RemoteUE-r17} OPTIONAL, -- Need M
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+SL-RequestedSIB-List-r17 ::= SEQUENCE (SIZE (maxSIB-MessagePlus1-r17)) OF SL-SIB-ReqInfo-r17
+
+SL-PagingInfo-RemoteUE-r17 ::= SEQUENCE {
+ sl-PagingIdentityRemoteUE-r17 SL-PagingIdentityRemoteUE-r17,
+ sl-PagingCycleRemoteUE-r17 PagingCycle OPTIONAL -- Need M
+}
+
+SL-SIB-ReqInfo-r17 ::= ENUMERATED { sib1, sib2, sib3, sib4, sib5, sib6, sib7, sib8, sib9, sib10, sib11, sib12, sib13,
+ sib14, sib15, sib16, sib17, sib18, sib19, sib20, sib21, sibNotReq11, sibNotReq10, sibNotReq9,
+ sibNotReq8, sibNotReq7, sibNotReq6, sibNotReq5, sibNotReq4, sibNotReq3, sibNotReq2, sibNotReq1, ... }
+
+-- TAG-REMOTEUEINFORMATIONSIDELINK-STOP
-- TAG-RRCRECONFIGURATIONSIDELINK-START
RRCReconfigurationSidelink ::= SEQUENCE {
rrc-TransactionIdentifier-r16 RRC-TransactionIdentifier,
criticalExtensions CHOICE {
- rrcReconfigurationSidelink-r16 RRCReconfigurationSidelink-IEs-r16,
+ rrcReconfigurationSidelink-r16 RRCReconfigurationSidelink-r16-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
-RRCReconfigurationSidelink-IEs-r16 ::= SEQUENCE {
+RRCReconfigurationSidelink-r16-IEs ::= SEQUENCE {
slrb-ConfigToAddModList-r16 SEQUENCE (SIZE (1..maxNrofSLRB-r16)) OF SLRB-Config-r16 OPTIONAL, -- Need N
slrb-ConfigToReleaseList-r16 SEQUENCE (SIZE (1..maxNrofSLRB-r16)) OF SLRB-PC5-ConfigIndex-r16 OPTIONAL, -- Need N
sl-MeasConfig-r16 CHOICE {release NULL, setup SL-MeasConfig-r16} OPTIONAL, -- Need M
@@ -123,9 +200,19 @@ RRCReconfigurationSidelink-IEs-r16 ::= SEQUENCE {
sl-ResetConfig-r16 ENUMERATED {true} OPTIONAL, -- Need N
sl-LatencyBoundCSI-Report-r16 INTEGER (3..160) OPTIONAL, -- Need M
lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension RRCReconfigurationSidelink-v1700-IEs OPTIONAL
+}
+
+RRCReconfigurationSidelink-v1700-IEs ::= SEQUENCE {
+ sl-DRX-ConfigUC-PC5-r17 CHOICE {release NULL, setup SL-DRX-ConfigUC-r17 } OPTIONAL, -- Need M
+ sl-LatencyBoundIUC-Report-r17 CHOICE {release NULL, setup SL-LatencyBoundIUC-Report-r17 } OPTIONAL, -- Need M
+ sl-RLC-ChannelToReleaseListPC5-r17 SEQUENCE (SIZE (1..maxSL-LCID-r16)) OF SL-RLC-ChannelID-r17 OPTIONAL, -- Need N
+ sl-RLC-ChannelToAddModListPC5-r17 SEQUENCE (SIZE (1..maxSL-LCID-r16)) OF SL-RLC-ChannelConfigPC5-r17 OPTIONAL, -- Need N
nonCriticalExtension SEQUENCE {} OPTIONAL
}
+SL-LatencyBoundIUC-Report-r17::= INTEGER (3..160)
+
SLRB-Config-r16::= SEQUENCE {
slrb-PC5-ConfigIndex-r16 SLRB-PC5-ConfigIndex-r16,
sl-SDAP-ConfigPC5-r16 SL-SDAP-ConfigPC5-r16 OPTIONAL, -- Need M
@@ -181,20 +268,38 @@ SL-CSI-RS-Config-r16 ::= SEQUENCE {
...
}
+SL-RLC-ChannelConfigPC5-r17::= SEQUENCE {
+ sl-RLC-ChannelID-PC5-r17 SL-RLC-ChannelID-r17,
+ sl-RLC-ConfigPC5-r17 SL-RLC-ConfigPC5-r16 OPTIONAL, -- Need M
+ sl-MAC-LogicalChannelConfigPC5-r17 SL-LogicalChannelConfigPC5-r16 OPTIONAL, -- Need M
+ ...
+}
+
-- TAG-RRCRECONFIGURATIONSIDELINK-STOP
-- TAG-RRCRECONFIGURATIONCOMPLETESIDELINK-START
RRCReconfigurationCompleteSidelink ::= SEQUENCE {
rrc-TransactionIdentifier-r16 RRC-TransactionIdentifier,
criticalExtensions CHOICE {
- rrcReconfigurationCompleteSidelink-r16 RRCReconfigurationCompleteSidelink-IEs-r16,
+ rrcReconfigurationCompleteSidelink-r16 RRCReconfigurationCompleteSidelink-r16-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
-RRCReconfigurationCompleteSidelink-IEs-r16 ::= SEQUENCE {
+RRCReconfigurationCompleteSidelink-r16-IEs ::= SEQUENCE {
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE {} OPTIONAL
+ nonCriticalExtension RRCReconfigurationCompleteSidelink-v1710-IEs OPTIONAL
+}
+
+RRCReconfigurationCompleteSidelink-v1710-IEs ::= SEQUENCE {
+ dummy ENUMERATED {true},
+ nonCriticalExtension RRCReconfigurationCompleteSidelink-v1720-IEs OPTIONAL
+}
+
+
+RRCReconfigurationCompleteSidelink-v1720-IEs ::= SEQUENCE {
+ sl-DRX-ConfigReject-v1720 ENUMERATED {true} OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-RRCRECONFIGURATIONCOMPLETESIDELINK-STOP
@@ -203,28 +308,45 @@ RRCReconfigurationCompleteSidelink-IEs-r16 ::= SEQUENCE {
RRCReconfigurationFailureSidelink ::= SEQUENCE {
rrc-TransactionIdentifier-r16 RRC-TransactionIdentifier,
criticalExtensions CHOICE {
- rrcReconfigurationFailureSidelink-r16 RRCReconfigurationFailureSidelink-IEs-r16,
+ rrcReconfigurationFailureSidelink-r16 RRCReconfigurationFailureSidelink-r16-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
-RRCReconfigurationFailureSidelink-IEs-r16 ::= SEQUENCE {
+RRCReconfigurationFailureSidelink-r16-IEs ::= SEQUENCE {
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
-- TAG-RRCRECONFIGURATIONFAILURESIDELINK-STOP
+-- TAG-UEASSISTANCEINFORMATIONSIDELINK-START
+
+UEAssistanceInformationSidelink-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ ueAssistanceInformationSidelink-r17 UEAssistanceInformationSidelink-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+UEAssistanceInformationSidelink-r17-IEs ::= SEQUENCE {
+ sl-PreferredDRX-ConfigList-r17 SEQUENCE (SIZE (1..maxNrofSL-RxInfoSet-r17)) OF SL-DRX-ConfigUC-SemiStatic-r17
+ OPTIONAL, -- Need R
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- TAG-UEASSISTANCEINFORMATIONSIDELINK-STOP
-- TAG-UECAPABILITYENQUIRYSIDELINK-START
UECapabilityEnquirySidelink ::= SEQUENCE {
rrc-TransactionIdentifier-r16 RRC-TransactionIdentifier,
criticalExtensions CHOICE {
- ueCapabilityEnquirySidelink-r16 UECapabilityEnquirySidelink-IEs-r16,
+ ueCapabilityEnquirySidelink-r16 UECapabilityEnquirySidelink-r16-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
-UECapabilityEnquirySidelink-IEs-r16 ::= SEQUENCE {
+UECapabilityEnquirySidelink-r16-IEs ::= SEQUENCE {
frequencyBandListFilterSidelink-r16 FreqBandList OPTIONAL, -- Need N
ue-CapabilityInformationSidelink-r16 OCTET STRING OPTIONAL, -- Need N
lateNonCriticalExtension OCTET STRING OPTIONAL,
@@ -237,12 +359,12 @@ UECapabilityEnquirySidelink-IEs-r16 ::= SEQUENCE {
UECapabilityInformationSidelink ::= SEQUENCE {
rrc-TransactionIdentifier-r16 RRC-TransactionIdentifier,
criticalExtensions CHOICE {
- ueCapabilityInformationSidelink-r16 UECapabilityInformationSidelink-IEs-r16,
+ ueCapabilityInformationSidelink-r16 UECapabilityInformationSidelink-r16-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
-UECapabilityInformationSidelink-IEs-r16 ::= SEQUENCE {
+UECapabilityInformationSidelink-r16-IEs ::= SEQUENCE {
accessStratumReleaseSidelink-r16 AccessStratumReleaseSidelink-r16,
pdcp-ParametersSidelink-r16 PDCP-ParametersSidelink-r16 OPTIONAL,
rlc-ParametersSidelink-r16 RLC-ParametersSidelink-r16 OPTIONAL,
@@ -250,10 +372,21 @@ UECapabilityInformationSidelink-IEs-r16 ::= SEQUENCE {
supportedBandListSidelink-r16 SEQUENCE (SIZE (1..maxBands)) OF BandSidelinkPC5-r16 OPTIONAL,
appliedFreqBandListFilter-r16 FreqBandList OPTIONAL,
lateNonCriticalExtension OCTET STRING OPTIONAL,
- nonCriticalExtension SEQUENCE{} OPTIONAL
+ nonCriticalExtension UECapabilityInformationSidelink-v1700-IEs OPTIONAL
+}
+
+UECapabilityInformationSidelink-v1700-IEs ::= SEQUENCE {
+ mac-ParametersSidelink-r17 MAC-ParametersSidelink-r17 OPTIONAL,
+ supportedBandCombinationListSidelinkNR-v1710 BandCombinationListSidelinkNR-v1710 OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+MAC-ParametersSidelink-r17 ::= SEQUENCE {
+ drx-OnSidelink-r17 ENUMERATED {supported} OPTIONAL,
+ ...
}
-AccessStratumReleaseSidelink-r16 ::= ENUMERATED { rel16, spare7, spare6, spare5, spare4, spare3, spare2, spare1, ... }
+AccessStratumReleaseSidelink-r16 ::= ENUMERATED { rel16, rel17, spare6, spare5, spare4, spare3, spare2, spare1, ... }
PDCP-ParametersSidelink-r16 ::= SEQUENCE {
outOfOrderDeliverySidelink-r16 ENUMERATED {supported} OPTIONAL,
@@ -262,8 +395,19 @@ PDCP-ParametersSidelink-r16 ::= SEQUENCE {
BandCombinationListSidelinkNR-r16 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombinationParametersSidelinkNR-r16
+BandCombinationListSidelinkNR-v1710 ::= SEQUENCE (SIZE (1..maxBandComb)) OF BandCombinationParametersSidelinkNR-v1710
+
BandCombinationParametersSidelinkNR-r16 ::= SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParametersSidelink-r16
+BandCombinationParametersSidelinkNR-v1710 ::= SEQUENCE (SIZE (1..maxSimultaneousBands)) OF BandParametersSidelink-v1710
+
+BandParametersSidelink-v1710 ::= SEQUENCE {
+ --32-5a-1
+ tx-IUC-Scheme1-Mode2Sidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --32-5b-1
+ tx-IUC-Scheme2-Mode2Sidelink-r17 ENUMERATED {n4, n8, n16} OPTIONAL
+}
+
BandSidelinkPC5-r16 ::= SEQUENCE {
freqBandSidelink-r16 FreqBandIndicatorNR,
--15-1
@@ -299,9 +443,41 @@ BandSidelinkPC5-r16 ::= SEQUENCE {
sl-openLoopPC-RSRP-ReportSidelink-r16 ENUMERATED {supported} OPTIONAL,
--13-1
sl-Rx-256QAM-r16 ENUMERATED {supported} OPTIONAL
+ ]],
+ [[
+ --32-5a-2
+ rx-IUC-Scheme1-PreferredMode2Sidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --32-5a-3
+ rx-IUC-Scheme1-NonPreferredMode2Sidelink-r17 ENUMERATED {supported} OPTIONAL,
+ --32-5b-2
+ rx-IUC-Scheme2-Mode2Sidelink-r17 ENUMERATED {n5, n15, n25, n32, n35, n45, n50, n64} OPTIONAL,
+ --32-6-1
+ rx-IUC-Scheme1-SCI-r17 ENUMERATED {supported} OPTIONAL,
+ --32-6-2
+ rx-IUC-Scheme1-SCI-ExplicitReq-r17 ENUMERATED {supported} OPTIONAL,
+ --32-7
+ scheme2-ConflictDeterminationRSRP-r17 ENUMERATED {supported} OPTIONAL
]]
}
-- TAG-UECAPABILITYINFORMATIONSIDELINK-STOP
+-- TAG-UUMESSAGETRANSFERSIDELINK-START
+
+UuMessageTransferSidelink-r17 ::= SEQUENCE {
+ criticalExtensions CHOICE {
+ uuMessageTransferSidelink-r17 UuMessageTransferSidelink-r17-IEs,
+ criticalExtensionsFuture SEQUENCE {}
+ }
+}
+
+UuMessageTransferSidelink-r17-IEs ::= SEQUENCE {
+ sl-PagingDelivery-r17 OCTET STRING (CONTAINING PagingRecord) OPTIONAL, -- Need N
+ sl-SIB1-Delivery-r17 OCTET STRING (CONTAINING SIB1) OPTIONAL, -- Need N
+ sl-SystemInformationDelivery-r17 OCTET STRING (CONTAINING SystemInformation) OPTIONAL, -- Need N
+ lateNonCriticalExtension OCTET STRING OPTIONAL,
+ nonCriticalExtension SEQUENCE {} OPTIONAL
+}
+
+-- TAG-UUMESSAGETRANSFERSIDELINK-STOP
END
diff --git a/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf b/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf
index cf99fcac7c..5de06a6c0e 100644
--- a/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf
+++ b/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf
@@ -1,6 +1,6 @@
# nr-rrc.cnf
# nr-rrc conformation file
-# Copyright 2018-2021 Pascal Quantin
+# Copyright 2018-2024 Pascal Quantin
#.OPT
PER
@@ -24,8 +24,8 @@ DRX-Config/drx-RetransmissionTimerDL
DRX-Config/drx-RetransmissionTimerUL
DRX-Config/drx-LongCycleStartOffset
DRX-Config/shortDRX/drx-ShortCycle
-DRX-ConfigSecondaryGroup/drx-onDurationTimer/milliSeconds
-DRX-ConfigSecondaryGroup/drx-InactivityTimer
+DRX-ConfigSecondaryGroup-r16/drx-onDurationTimer-r16/milliSeconds
+DRX-ConfigSecondaryGroup-r16/drx-InactivityTimer-r16
DRX-Info/drx-LongCycleStartOffset
DRX-Info/shortDRX/drx-ShortCycle
DRX-Info2/drx-onDurationTimer/milliSeconds
@@ -62,29 +62,48 @@ CellGroupConfig_PDU
DRX-Config_PDU
CG-Config_PDU
CG-ConfigInfo_PDU
+CondReconfigExecCondSCG-r17_PDU
+ConfigRestrictInfoDAPS-r16_PDU
ConfigRestrictInfoSCG_PDU
FeatureSetEntryIndex_PDU
FreqBandList_PDU
HandoverCommand_PDU
HandoverPreparationInformation_PDU
+LocationMeasurementInfo_PDU
+MBS-NeighbourCellList-r17_PDU
+MBSInterestIndication-r17_PDU
MeasConfig_PDU
MeasGapConfig_PDU
MeasGapSharingConfig_PDU
+MeasObjectToAddMod_PDU
MeasResultSCG-Failure_PDU
MeasurementTimingConfiguration_PDU
MIB_PDU
+MRB-PDCP-ConfigBroadcast-r17_PDU
+MUSIM-GapConfig-r17_PDU
+NeedForGapsInfoNR-r16_PDU
+NeedForGapNCSG-InfoEUTRA-r17_PDU
+NeedForGapNCSG-InfoNR-r17_PDU
+NonCellDefiningSSB-r17_PDU
NZP-CSI-RS-Resource_PDU
+OverheatingAssistance_PDU
+OverheatingAssistance-r17_PDU
P-Max_PDU
PDCCH-ConfigSIB1_PDU
PH-TypeListMCG_PDU
PH-TypeListSCG_PDU
+PosMeasGapPreConfigToAddModList-r17_PDU
+PosMeasGapPreConfigToReleaseList-r17_PDU
RA-ReportList-r16_PDU
RACH-ConfigCommon_PDU
RadioBearerConfig_PDU
ReferenceTime-r16_PDU
+ReportConfigToAddMod_PDU
+RLC-BearerConfig_PDU
RRCReconfiguration_PDU
RRCReconfigurationComplete_PDU
SchedulingRequestResourceConfig_PDU
+SDT-MAC-PHY-CG-Config-r17_PDU
SIB1_PDU
SIB2_PDU
SIB3_PDU
@@ -99,10 +118,21 @@ SIB11-r16_PDU
SIB12-r16_PDU
SIB13-r16_PDU
SIB14-r16_PDU
+SIB15-r17_PDU
+SIB16-r17_PDU
+SIB17-r17_PDU
+SIB18-r17_PDU
+SIB19-r17_PDU
+SIB20-r17_PDU
+SIB21-r17_PDU
SidelinkParametersNR-r16_PDU
SidelinkUEInformationNR-r16_PDU
SL-ConfigDedicatedEUTRA-Info-r16_PDU
+SL-ConfigDedicatedNR-r16_PDU
SL-PHY-MAC-RLC-Config-r16_PDU
+SL-RLC-ChannelToAddModList-r17_PDU
+SRS-PosRRC-InactiveConfig-r17_PDU
+SuccessHO-Report-r17_PDU
TDD-UL-DL-ConfigCommon_PDU
UE-CapabilityRAT-ContainerList_PDU
UE-CapabilityRequestFilterCommon_PDU
@@ -112,7 +142,9 @@ UE-NR-Capability_PDU
UEAssistanceInformation_PDU
UERadioPagingInformation_PDU
UL-DCCH-Message_PDU
+UL-GapFR2-Config-r17_PDU
UplinkTxDirectCurrentList_PDU
+UplinkTxDirectCurrentTwoCarrierList-r16_PDU
VisitedCellInfoList-r16_PDU
#.PDU
@@ -122,6 +154,8 @@ BandParametersSidelink-r16
BCCH-BCH-Message @bcch.bch
BCCH-DL-SCH-Message @bcch.dl.sch
CellGroupConfig
+CondReconfigExecCondSCG-r17
+ConfigRestrictInfoDAPS-r16
CG-Config
CG-ConfigInfo
ConfigRestrictInfoSCG
@@ -132,31 +166,47 @@ FeatureSetEntryIndex
FreqBandList
HandoverCommand
HandoverPreparationInformation
+LocationMeasurementInfo
+MBS-NeighbourCellList-r17
+MBSInterestIndication-r17
+MCCH-Message-r17 @mcch
MeasConfig
MeasGapConfig
MeasGapSharingConfig
+MeasObjectToAddMod
MeasResultSCG-Failure
MeasurementTimingConfiguration
MIB
+MRB-PDCP-ConfigBroadcast-r17
+MUSIM-GapConfig-r17
+NeedForGapsInfoNR-r16
+NeedForGapNCSG-InfoEUTRA-r17
+NeedForGapNCSG-InfoNR-r17
+NonCellDefiningSSB-r17
NZP-CSI-RS-Resource
+OverheatingAssistance
+OverheatingAssistance-r17
P-Max
PCCH-Message @pcch
PDCCH-ConfigSIB1
PH-TypeListMCG
PH-TypeListSCG
+PosMeasGapPreConfigToAddModList-r17
+PosMeasGapPreConfigToReleaseList-r17
RA-ReportList-r16
RACH-ConfigCommon
RadioBearerConfig
ReferenceTime-r16
+ReportConfigToAddMod
+RLC-BearerConfig
RRCReconfiguration @rrc_reconf
-RRCReconfigurationComplete
+RRCReconfigurationComplete @rrc_reconf_compl
SBCCH-SL-BCH-Message @sbcch.sl.bch
SCCH-Message @scch
SchedulingRequestResourceConfig
+SDT-MAC-PHY-CG-Config-r17
SidelinkParametersNR-r16
SidelinkUEInformationNR-r16
-SL-ConfigDedicatedEUTRA-Info-r16
-SL-PHY-MAC-RLC-Config-r16
SIB1
SIB2
SIB3
@@ -171,6 +221,21 @@ SIB11-r16
SIB12-r16
SIB13-r16
SIB14-r16
+SIB15-r17
+SIB16-r17
+SIB17-r17
+SIB18-r17
+SIB19-r17
+SIB20-r17
+SIB21-r17
+SL-ConfigDedicatedEUTRA-Info-r16
+SL-ConfigDedicatedNR-r16
+SL-MeasResultListRelay-r17
+SL-MeasResultRelay-r17
+SL-PHY-MAC-RLC-Config-r16
+SL-RLC-ChannelToAddModList-r17
+SRS-PosRRC-InactiveConfig-r17
+SuccessHO-Report-r17
TDD-UL-DL-ConfigCommon
UE-CapabilityRAT-ContainerList
UE-CapabilityRequestFilterCommon
@@ -184,46 +249,31 @@ UERadioPagingInformation @ue_radio_paging_info
UL-CCCH-Message @ul.ccch
UL-CCCH1-Message @ul.ccch1
UL-DCCH-Message @ul.dcch
+UL-GapFR2-Config-r17
UplinkTxDirectCurrentList
+UplinkTxDirectCurrentTwoCarrierList-r16
VisitedCellInfoList-r16
#.END
#.OMIT_ASSIGNMENT
-CellsTriggeredList
-CLI-RSSI-TriggeredList-r16
-CLI-TriggeredList-r16
-PLMN-IdentityList-r16
+CG-CandidateInfo-r17
+CG-CandidateInfoId-r17
+CG-CandidateList
+CG-CandidateList-r17-IEs
SIB12-IEs-r16
-SidelinkPreconfigNR-r16
+SIB17-IEs-r17
SL-BWP-ConfigCommon-r16
+SL-BWP-DiscPoolConfigCommon-r17
SL-BWP-PoolConfigCommon-r16
SL-ConfigCommonNR-r16
+SL-DiscConfigCommon-r17
SL-EUTRA-AnchorCarrierFreqList-r16
SL-FreqConfigCommon-r16
SL-MeasConfigCommon-r16
SL-NR-AnchorCarrierFreqList-r16
-SL-PreconfigGeneral-r16
-SL-PreconfigurationNR-r16
-SL-RoHC-Profiles-r16
-SRS-RSRP-TriggeredList-r16
-VarConditionalReconfig
-VarConnEstFailReport-r16
-VarLogMeasConfig-r16-IEs
-VarLogMeasReport-r16
-VarMeasConfig
-VarMeasConfigSL-r16
-VarMeasIdleConfig-r16
-VarMeasIdleReport-r16
-VarMeasReport
-VarMeasReportList
-VarMeasReportListSL-r16
-VarMeasReportSL-r16
-VarMobilityHistoryReport-r16
-VarPendingRNA-Update
-VarRA-Report-r16
-VarResumeMAC-Input
-VarRLF-Report-r16
-VarShortMAC-Input
+SL-ServingCellInfo-r17
+TRS-ResourceSet-r17
+UE-TimersAndConstantsRemoteUE-r17
#.FIELD_RENAME
RRM-Config/eag_1/candidateCellInfoListSN-EUTRA rRM-Config_eag_1_candidateCellInfoListSN-EUTRA
@@ -329,7 +379,7 @@ MIMO-ParametersPerBand/maxNumberRxTxBeamSwitchDL/scs-60kHz
MIMO-ParametersPerBand/beamReportTiming/scs-60kHz mIMO-ParametersPerBand_beamReportTiming_scs-60kHz
MIMO-ParametersPerBand/ptrs-DensityRecommendationSetDL/scs-60kHz mIMO-ParametersPerBand_ptrs-DensityRecommendationSetDL_scs-60kHz
MIMO-ParametersPerBand/ptrs-DensityRecommendationSetUL/scs-60kHz mIMO-ParametersPerBand_ptrs-DensityRecommendationSetUL_scs-60kHz
-MIMO-ParametersPerBand/eag_1/beamSwitchTiming/scs-60kHz MmIMO-ParametersPerBand_eag_1_beamSwitchTiming_scs-60kHz
+MIMO-ParametersPerBand/eag_1/beamSwitchTiming/scs-60kHz mIMO-ParametersPerBand_eag_1_beamSwitchTiming_scs-60kHz
BandNR/channelBWs-DL/fr1/scs-60kHz bandNR_channelBWs-DL_fr1_scs-60kHz
BandNR/channelBWs-UL/fr1/scs-60kHz bandNR_channelBWs-UL_fr1_scs-60kHz
BandNR/channelBWs-DL/fr2/scs-60kHz bandNR_channelBWs-DL_fr2_scs-60kHz
@@ -718,6 +768,27 @@ RAT-Type TYPE_PREFIX
#.FN_HDR SIB14-r16
col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB14");
+#.FN_HDR SIB15-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB15");
+
+#.FN_HDR SIB16-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB16");
+
+#.FN_HDR SIB17-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB17");
+
+#.FN_HDR SIB18-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB18");
+
+#.FN_HDR SIB19-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB19");
+
+#.FN_HDR SIB20-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB20");
+
+#.FN_HDR SIB21-r17
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB21");
+
#.FN_HDR SIB1
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SIB1");
@@ -778,6 +849,16 @@ RAT-Type TYPE_PREFIX
#.FN_HDR RRCReestablishmentRequest
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reestablishment Request");
+ if (!PINFO_FD_VISITED(actx->pinfo)) {
+ /* Look for UE identifier */
+ guint16 *p_ueid = nr_rrc_get_ueid_from_lower_layers(wmem_file_scope(), actx->pinfo);
+
+ if (p_ueid != NULL) {
+ /* Inform PDCP about the RRCreestablishmentRequest */
+ set_pdcp_nr_rrc_reestablishment_request(*p_ueid);
+ }
+ }
+
#.FN_HDR RRCSystemInfoRequest
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC System Info Request");
@@ -803,16 +884,16 @@ RAT-Type TYPE_PREFIX
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Security Mode Complete");
#.FN_BODY SecurityModeFailure
- mac_nr_info *p_mac_nr_info;
+ guint16 *p_ueid;
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Security Mode Failure");
%(DEFAULT_BODY)s
/* Look for UE identifier */
- p_mac_nr_info = (mac_nr_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_nr, 0);
+ p_ueid = nr_rrc_get_ueid_from_lower_layers(wmem_file_scope(), actx->pinfo);
- if (p_mac_nr_info != NULL) {
+ if (p_ueid != NULL) {
/* Inform PDCP that the UE failed to execute the securityModeCommand */
- set_pdcp_nr_security_algorithms_failed(p_mac_nr_info->ueid);
+ set_pdcp_nr_security_algorithms_failed(*p_ueid);
}
#.FN_HDR ULInformationTransfer
@@ -863,6 +944,15 @@ RAT-Type TYPE_PREFIX
#.FN_HDR IABOtherInformation-r16
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IAB Other Information");
+#.FN_HDR MBSInterestIndication-r17
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBS Interest Indication");
+
+#.FN_HDR UEPositioningAssistanceInfo-r17
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UE Positioning Assistance Info");
+
+#.FN_HDR MeasurementReportAppLayer-r17
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Measurement Report App Layer");
+
#.FN_BODY MRDC-SecondaryCellGroupConfig/mrdc-SecondaryCellGroup/eutra-SCG VAL_PTR = &eutra_scg_tvb
tvbuff_t *eutra_scg_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1032,6 +1122,15 @@ SIB1/cellSelectionInfo/q-QualMinOffset DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS
dissect_UECapabilityInformationSidelink_PDU(sl_cap_info_sidelink_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY SL-TxResourceReqL2U2N-Relay-r17/sl-CapabilityInformationSidelink-r17 VAL_PTR = &sl_cap_info_sidelink_tvb
+ tvbuff_t *sl_cap_info_sidelink_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (sl_cap_info_sidelink_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_sl_CapabilityInformationSidelink);
+ dissect_UECapabilityInformationSidelink_PDU(sl_cap_info_sidelink_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.TYPE_ATTR
LogMeasInfo-r16/relativeTimeStamp-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
@@ -1047,12 +1146,27 @@ RLF-Report-r16/nr-RLF-Report-r16/timeConnFailure-r16 DISPLAY=BASE_CUSTOM STRINGS
dissect_lte_rrc_RLF_Report_r9_PDU(meas_result_rlf_report_eutra_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY RLF-Report-r16/eutra-RLF-Report-r16/eag_1/measResult-RLF-Report-EUTRA-v1690 VAL_PTR = &meas_result_rlf_report_eutra_v1690_tvb
+ tvbuff_t *meas_result_rlf_report_eutra_v1690_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (meas_result_rlf_report_eutra_v1690_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_measResult_RLF_Report_EUTRA_v1690);
+ dissect_lte_rrc_RLF_Report_v9e0_PDU(meas_result_rlf_report_eutra_v1690_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.TYPE_ATTR
TimeSinceFailure-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
#.TYPE_ATTR
TimeUntilReconnection-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+#.TYPE_ATTR
+TimeSinceCHO-Reconfig-r17 DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(nr_rrc_TimeSinceCHO_Reconfig_r17_fmt)
+
+#.TYPE_ATTR
+UPInterruptionTimeAtHO-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
+
#.FN_BODY ULInformationTransferIRAT-r16-IEs/ul-DCCH-MessageEUTRA-r16 VAL_PTR = &ul_dcch_msg_eutra_tvb
tvbuff_t *ul_dcch_msg_eutra_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1671,7 +1785,7 @@ T-Reselection DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
EUTRA-NS-PmaxValue/additionalPmax DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_dbm
#.TYPE_ATTR
-WLAN-Identifiers-r16/ssid-r16 TYPE=FT_STRING DISPLAY=STR_ASCII
+WLAN-Identifiers-r16/ssid-r16 TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY WLAN-Identifiers-r16/ssid-r16 VAL_PTR=&ssid_tvb HF_INDEX=-1
tvbuff_t *ssid_tvb = NULL;
@@ -1688,6 +1802,9 @@ WLAN-Identifiers-r16/hessid-r16 TYPE=FT_ETHER
#.TYPE_ATTR
VisitedCellInfo-r16/timeSpent-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+#.TYPE_ATTR
+VisitedPSCellInfo-r17/timeSpent-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item
nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_UNKNOWN;
@@ -1802,6 +1919,36 @@ VisitedCellInfo-r16/timeSpent-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&uni
#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib6-3-r16
nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_6_3;
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib1-9-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_1_9;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib1-10-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_1_10;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib2-24-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_2_24;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib2-25-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_2_25;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib6-4-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_6_4;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib6-5-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_6_5;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib6-6-v1700
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_6_6;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib2-17a-v1770
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_2_17a;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib2-18a-v1770
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_2_18a;
+
+#.FN_HDR PosSystemInformation-r16-IEs/posSIB-TypeAndInfo-r16/_item/posSib2-20a-v1770
+ nr_rrc_get_private_data(actx)->pos_sib_type = LPP_POS_SIB_TYPE_2_20a;
+
#.FN_BODY SIBpos-r16/assistanceDataSIB-Element-r16 VAL_PTR = &assist_data_sib_elem_tvb
tvbuff_t *assist_data_sib_elem_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1813,16 +1960,16 @@ VisitedCellInfo-r16/timeSpent-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&uni
}
#.FN_BODY RLC-BearerConfig
- struct mac_nr_info *p_mac_nr_info;
+ guint16 *p_ueid;
/* Get the struct and clear it out */
nr_drb_mac_rlc_mapping_t *drb_mapping = &nr_rrc_get_private_data(actx)->drb_rlc_mapping;
memset(drb_mapping, 0, sizeof(nr_drb_mac_rlc_mapping_t));
drb_mapping->active = TRUE;
%(DEFAULT_BODY)s
/* Need UE identifier */
- p_mac_nr_info = (mac_nr_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_nr, 0);
- if (p_mac_nr_info && drb_mapping->drbid) {
- drb_mapping->ueid = p_mac_nr_info->ueid;
+ p_ueid = nr_rrc_get_ueid_from_lower_layers(wmem_file_scope(), actx->pinfo);
+ if (p_ueid != NULL && drb_mapping->drbid) {
+ drb_mapping->ueid = *p_ueid;
/* Tell MAC about this mapping */
set_mac_nr_bearer_mapping(drb_mapping);
}
@@ -1879,11 +2026,11 @@ VisitedCellInfo-r16/timeSpent-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&uni
nr_drb_mac_rlc_mapping_t *mapping = &nr_rrc_get_private_data(actx)->drb_rlc_mapping;
if (mapping->tempDirection == DIRECTION_UPLINK) {
mapping->rlcUlSnLength_present = TRUE;
- mapping->rlcUlSnLength = (value=0) ? 6 : 12;
+ mapping->rlcUlSnLength = (value==0) ? 6 : 12;
}
else {
mapping->rlcDlSnLength_present = TRUE;
- mapping->rlcDlSnLength = (value=0) ? 6 : 12;
+ mapping->rlcDlSnLength = (value==0) ? 6 : 12;
}
#.FN_BODY SN-FieldLengthAM VAL_PTR=&value
@@ -1892,11 +2039,11 @@ VisitedCellInfo-r16/timeSpent-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&uni
nr_drb_mac_rlc_mapping_t *mapping = &nr_rrc_get_private_data(actx)->drb_rlc_mapping;
if (mapping->tempDirection == DIRECTION_UPLINK) {
mapping->rlcUlSnLength_present = TRUE;
- mapping->rlcUlSnLength = (value=0) ? 12 : 18;
+ mapping->rlcUlSnLength = (value==0) ? 12 : 18;
}
else {
mapping->rlcDlSnLength_present = TRUE;
- mapping->rlcDlSnLength = (value=0) ? 12 : 18;
+ mapping->rlcDlSnLength = (value==0) ? 12 : 18;
}
@@ -1905,12 +2052,12 @@ VisitedCellInfo-r16/timeSpent-r16 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&uni
memset(mapping, 0, sizeof(*mapping));
mapping->active = TRUE;
%(DEFAULT_BODY)s
- /* Need UE identifier. Use mac-nr. */
- mac_nr_info *p_mac_nr_info = (mac_nr_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_nr, 0);
- if (p_mac_nr_info) {
+ /* Need UE identifier. */
+ guint16 *p_ueid = nr_rrc_get_ueid_from_lower_layers(wmem_file_scope(), actx->pinfo);
+ if (p_ueid != NULL) {
/* Configure PDCP SN length(s) for this DRB */
if (mapping->pdcpUlSnLength_present || mapping->pdcpDlSnLength_present) {
- mapping->ueid = p_mac_nr_info->ueid;
+ mapping->ueid = *p_ueid;
set_rlc_nr_drb_pdcp_mapping(actx->pinfo, mapping);
}
}
@@ -2046,20 +2193,20 @@ CA-ParametersEUTRA-v1570/dl-1024QAM-TotalWeightedLayers DISPLAY=BASE_CUSTOM STRI
}
#.FN_BODY SecurityAlgorithmConfig
- mac_nr_info *p_mac_nr_info;
+ guint16 *p_ueid;
pdcp_nr_security_info_t *p_security_algorithms;
%(DEFAULT_BODY)s
p_security_algorithms = &(nr_rrc_get_private_data(actx)->pdcp_security);
- p_security_algorithms->configuration_frame = actx->pinfo->num;
- p_security_algorithms->previous_configuration_frame = 0;
+ p_security_algorithms->algorithm_configuration_frame = actx->pinfo->num;
+ p_security_algorithms->previous_algorithm_configuration_frame = 0;
p_security_algorithms->previous_integrity = nia0;
p_security_algorithms->previous_ciphering = nea0;
/* Look for UE identifier */
- p_mac_nr_info = (mac_nr_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_nr, 0);
- if (p_mac_nr_info != NULL) {
+ p_ueid = nr_rrc_get_ueid_from_lower_layers(wmem_file_scope(), actx->pinfo);
+ if (p_ueid != NULL) {
/* Configure algorithms */
- set_pdcp_nr_security_algorithms(p_mac_nr_info->ueid, p_security_algorithms);
+ set_pdcp_nr_security_algorithms(*p_ueid, p_security_algorithms);
}
#.FN_BODY CipheringAlgorithm VAL_PTR=&value
@@ -2094,6 +2241,54 @@ CA-ParametersEUTRA-v1570/dl-1024QAM-TotalWeightedLayers DISPLAY=BASE_CUSTOM STRI
dissect_lte_rrc_TDD_Config_PDU(tdd_config_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY UEInformationResponse-v1700-IEs/coarseLocationInfo-r17 VAL_PTR = &ellipsoid_point_tvb
+ tvbuff_t *ellipsoid_point_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ellipsoid_point_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_coarseLocationInfo_r17);
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MeasResults/measResultNeighCells/sl-MeasResultsCandRelay-r17 VAL_PTR = &sl_meas_result_list_relay_tvb
+ tvbuff_t *sl_meas_result_list_relay_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (sl_meas_result_list_relay_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_sl_MeasResultsCandRelay_r17);
+ dissect_SL_MeasResultListRelay_r17_PDU(sl_meas_result_list_relay_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MeasResults/eag_4/sl-MeasResultServingRelay-r17 VAL_PTR = &sl_meas_result_serving_relay_tvb
+ tvbuff_t *sl_meas_result_serving_relay_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (sl_meas_result_serving_relay_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_sl_MeasResultServingRelay_r17);
+ dissect_SL_MeasResultRelay_r17_PDU(sl_meas_result_serving_relay_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY MeasResults/eag_4/coarseLocationInfo-r17 VAL_PTR = &ellipsoid_point_tvb
+ tvbuff_t *ellipsoid_point_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ellipsoid_point_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_coarseLocationInfo_r17);
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.TYPE_ATTR
+TimeBetweenEvent-r17 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds
+
+#.FN_BODY ReferenceLocation-r17 VAL_PTR = &ellipsoid_point_tvb
+ tvbuff_t *ellipsoid_point_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ellipsoid_point_tvb) {
+ proto_tree *subtree;
+ subtree = proto_item_add_subtree(actx->created_item, ett_nr_ReferenceLocation_r17);
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_HDR SBCCH-SL-BCH-Message
proto_item *ti;
@@ -2132,3 +2327,15 @@ CA-ParametersEUTRA-v1570/dl-1024QAM-TotalWeightedLayers DISPLAY=BASE_CUSTOM STRI
#.FN_HDR UECapabilityInformationSidelink
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UE Capability Information Sidelink");
+
+#.FN_HDR MCCH-Message-r17
+ proto_item *ti;
+
+ col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_clear(actx->pinfo->cinfo, COL_INFO);
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ tree = proto_item_add_subtree(ti, ett_nr_rrc);
+
+#.FN_HDR MBSBroadcastConfiguration-r17
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBS Broadcast Configuration");
diff --git a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c
index 357b7b1c64..7a208a48f7 100644
--- a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c
+++ b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.c
@@ -1,8 +1,8 @@
/* packet-nr-rrc-template.c
* NR;
* Radio Resource Control (RRC) protocol specification
- * (3GPP TS 38.331 V16.6.0 Release 16) packet dissection
- * Copyright 2018-2021, Pascal Quantin
+ * (3GPP TS 38.331 V17.7.0 Release 17) packet dissection
+ * Copyright 2018-2024, Pascal Quantin
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -60,106 +60,117 @@ static reassembly_table nr_rrc_sib8_reassembly_table;
static gboolean nr_rrc_nas_in_root_tree;
extern int proto_mac_nr;
+extern int proto_rlc_nr;
extern int proto_pdcp_nr;
/* Include constants */
#include "packet-nr-rrc-val.h"
/* Initialize the protocol and registered fields */
-static int proto_nr_rrc = -1;
+static int proto_nr_rrc;
#include "packet-nr-rrc-hf.c"
-static int hf_nr_rrc_serialNumber_gs = -1;
-static int hf_nr_rrc_serialNumber_msg_code = -1;
-static int hf_nr_rrc_serialNumber_upd_nb = -1;
-static int hf_nr_rrc_warningType_value = -1;
-static int hf_nr_rrc_warningType_emergency_user_alert = -1;
-static int hf_nr_rrc_warningType_popup = -1;
-static int hf_nr_rrc_warningMessageSegment_nb_pages = -1;
-static int hf_nr_rrc_warningMessageSegment_decoded_page = -1;
-static int hf_nr_rrc_sib7_fragments = -1;
-static int hf_nr_rrc_sib7_fragment = -1;
-static int hf_nr_rrc_sib7_fragment_overlap = -1;
-static int hf_nr_rrc_sib7_fragment_overlap_conflict = -1;
-static int hf_nr_rrc_sib7_fragment_multiple_tails = -1;
-static int hf_nr_rrc_sib7_fragment_too_long_fragment = -1;
-static int hf_nr_rrc_sib7_fragment_error = -1;
-static int hf_nr_rrc_sib7_fragment_count = -1;
-static int hf_nr_rrc_sib7_reassembled_in = -1;
-static int hf_nr_rrc_sib7_reassembled_length = -1;
-static int hf_nr_rrc_sib7_reassembled_data = -1;
-static int hf_nr_rrc_sib8_fragments = -1;
-static int hf_nr_rrc_sib8_fragment = -1;
-static int hf_nr_rrc_sib8_fragment_overlap = -1;
-static int hf_nr_rrc_sib8_fragment_overlap_conflict = -1;
-static int hf_nr_rrc_sib8_fragment_multiple_tails = -1;
-static int hf_nr_rrc_sib8_fragment_too_long_fragment = -1;
-static int hf_nr_rrc_sib8_fragment_error = -1;
-static int hf_nr_rrc_sib8_fragment_count = -1;
-static int hf_nr_rrc_sib8_reassembled_in = -1;
-static int hf_nr_rrc_sib8_reassembled_length = -1;
-static int hf_nr_rrc_sib8_reassembled_data = -1;
-static int hf_nr_rrc_utc_time = -1;
-static int hf_nr_rrc_local_time = -1;
-static int hf_nr_rrc_absolute_time = -1;
+static int hf_nr_rrc_serialNumber_gs;
+static int hf_nr_rrc_serialNumber_msg_code;
+static int hf_nr_rrc_serialNumber_upd_nb;
+static int hf_nr_rrc_warningType_value;
+static int hf_nr_rrc_warningType_emergency_user_alert;
+static int hf_nr_rrc_warningType_popup;
+static int hf_nr_rrc_warningMessageSegment_nb_pages;
+static int hf_nr_rrc_warningMessageSegment_decoded_page;
+static int hf_nr_rrc_sib7_fragments;
+static int hf_nr_rrc_sib7_fragment;
+static int hf_nr_rrc_sib7_fragment_overlap;
+static int hf_nr_rrc_sib7_fragment_overlap_conflict;
+static int hf_nr_rrc_sib7_fragment_multiple_tails;
+static int hf_nr_rrc_sib7_fragment_too_long_fragment;
+static int hf_nr_rrc_sib7_fragment_error;
+static int hf_nr_rrc_sib7_fragment_count;
+static int hf_nr_rrc_sib7_reassembled_in;
+static int hf_nr_rrc_sib7_reassembled_length;
+static int hf_nr_rrc_sib7_reassembled_data;
+static int hf_nr_rrc_sib8_fragments;
+static int hf_nr_rrc_sib8_fragment;
+static int hf_nr_rrc_sib8_fragment_overlap;
+static int hf_nr_rrc_sib8_fragment_overlap_conflict;
+static int hf_nr_rrc_sib8_fragment_multiple_tails;
+static int hf_nr_rrc_sib8_fragment_too_long_fragment;
+static int hf_nr_rrc_sib8_fragment_error;
+static int hf_nr_rrc_sib8_fragment_count;
+static int hf_nr_rrc_sib8_reassembled_in;
+static int hf_nr_rrc_sib8_reassembled_length;
+static int hf_nr_rrc_sib8_reassembled_data;
+static int hf_nr_rrc_utc_time;
+static int hf_nr_rrc_local_time;
+static int hf_nr_rrc_absolute_time;
/* Initialize the subtree pointers */
-static gint ett_nr_rrc = -1;
+static gint ett_nr_rrc;
#include "packet-nr-rrc-ett.c"
-static gint ett_nr_rrc_DedicatedNAS_Message = -1;
-static gint ett_nr_rrc_targetRAT_MessageContainer = -1;
-static gint ett_nr_rrc_nas_Container = -1;
-static gint ett_nr_rrc_serialNumber = -1;
-static gint ett_nr_rrc_warningType = -1;
-static gint ett_nr_rrc_dataCodingScheme = -1;
-static gint ett_nr_rrc_sib7_fragment = -1;
-static gint ett_nr_rrc_sib7_fragments = -1;
-static gint ett_nr_rrc_sib8_fragment = -1;
-static gint ett_nr_rrc_sib8_fragments = -1;
-static gint ett_nr_rrc_warningMessageSegment = -1;
-static gint ett_nr_rrc_timeInfo = -1;
-static gint ett_nr_rrc_capabilityRequestFilter = -1;
-static gint ett_nr_rrc_sourceSCG_EUTRA_Config = -1;
-static gint ett_nr_rrc_scg_CellGroupConfigEUTRA = -1;
-static gint ett_nr_rrc_candidateCellInfoListSN_EUTRA = -1;
-static gint ett_nr_rrc_candidateCellInfoListMN_EUTRA = -1;
-static gint ett_nr_rrc_sourceConfigSCG_EUTRA = -1;
-static gint ett_nr_rrc_eutra_SCG = -1;
-static gint ett_nr_rrc_nr_SCG_Response = -1;
-static gint ett_nr_rrc_eutra_SCG_Response = -1;
-static gint ett_nr_rrc_measResultSCG_FailureMRDC = -1;
-static gint ett_nr_rrc_ul_DCCH_MessageNR = -1;
-static gint ett_nr_rrc_ul_DCCH_MessageEUTRA = -1;
-static gint ett_rr_rrc_nas_SecurityParamFromNR = -1;
-static gint ett_nr_rrc_sidelinkUEInformationNR = -1;
-static gint ett_nr_rrc_sidelinkUEInformationEUTRA = -1;
-static gint ett_nr_rrc_ueAssistanceInformationEUTRA = -1;
-static gint ett_nr_rrc_dl_DCCH_MessageNR = -1;
-static gint ett_nr_rrc_dl_DCCH_MessageEUTRA = -1;
-static gint ett_nr_rrc_sl_ConfigDedicatedEUTRA = -1;
-static gint ett_nr_rrc_sl_CapabilityInformationSidelink = -1;
-static gint ett_nr_rrc_measResult_RLF_Report_EUTRA = -1;
-static gint ett_nr_rrc_locationTimestamp_r16 = -1;
-static gint ett_nr_rrc_locationCoordinate_r16 = -1;
-static gint ett_nr_rrc_locationError_r16 = -1;
-static gint ett_nr_rrc_locationSource_r16 = -1;
-static gint ett_nr_rrc_velocityEstimate_r16 = -1;
-static gint ett_nr_rrc_sensor_MeasurementInformation_r16 = -1;
-static gint ett_nr_rrc_sensor_MotionInformation_r16 = -1;
-static gint ett_nr_rrc_bandParametersSidelinkEUTRA1_r16 = -1;
-static gint ett_nr_rrc_bandParametersSidelinkEUTRA2_r16 = -1;
-static gint ett_nr_rrc_sl_ParametersEUTRA1_r16 = -1;
-static gint ett_nr_rrc_sl_ParametersEUTRA2_r16 = -1;
-static gint ett_nr_rrc_sl_ParametersEUTRA3_r16 = -1;
-static gint ett_nr_rrc_absTimeInfo = -1;
-static gint ett_nr_rrc_assistanceDataSIB_Element_r16 = -1;
-static gint ett_nr_sl_V2X_ConfigCommon_r16 = -1;
-static gint ett_nr_tdd_Config_r16 = -1;
-
-static expert_field ei_nr_rrc_number_pages_le15 = EI_INIT;
+static gint ett_nr_rrc_DedicatedNAS_Message;
+static gint ett_nr_rrc_targetRAT_MessageContainer;
+static gint ett_nr_rrc_nas_Container;
+static gint ett_nr_rrc_serialNumber;
+static gint ett_nr_rrc_warningType;
+static gint ett_nr_rrc_dataCodingScheme;
+static gint ett_nr_rrc_sib7_fragment;
+static gint ett_nr_rrc_sib7_fragments;
+static gint ett_nr_rrc_sib8_fragment;
+static gint ett_nr_rrc_sib8_fragments;
+static gint ett_nr_rrc_warningMessageSegment;
+static gint ett_nr_rrc_timeInfo;
+static gint ett_nr_rrc_capabilityRequestFilter;
+static gint ett_nr_rrc_sourceSCG_EUTRA_Config;
+static gint ett_nr_rrc_scg_CellGroupConfigEUTRA;
+static gint ett_nr_rrc_candidateCellInfoListSN_EUTRA;
+static gint ett_nr_rrc_candidateCellInfoListMN_EUTRA;
+static gint ett_nr_rrc_sourceConfigSCG_EUTRA;
+static gint ett_nr_rrc_eutra_SCG;
+static gint ett_nr_rrc_nr_SCG_Response;
+static gint ett_nr_rrc_eutra_SCG_Response;
+static gint ett_nr_rrc_measResultSCG_FailureMRDC;
+static gint ett_nr_rrc_ul_DCCH_MessageNR;
+static gint ett_nr_rrc_ul_DCCH_MessageEUTRA;
+static gint ett_rr_rrc_nas_SecurityParamFromNR;
+static gint ett_nr_rrc_sidelinkUEInformationNR;
+static gint ett_nr_rrc_sidelinkUEInformationEUTRA;
+static gint ett_nr_rrc_ueAssistanceInformationEUTRA;
+static gint ett_nr_rrc_dl_DCCH_MessageNR;
+static gint ett_nr_rrc_dl_DCCH_MessageEUTRA;
+static gint ett_nr_rrc_sl_ConfigDedicatedEUTRA;
+static gint ett_nr_rrc_sl_CapabilityInformationSidelink;
+static gint ett_nr_rrc_measResult_RLF_Report_EUTRA;
+static gint ett_nr_rrc_measResult_RLF_Report_EUTRA_v1690;
+static gint ett_nr_rrc_locationTimestamp_r16;
+static gint ett_nr_rrc_locationCoordinate_r16;
+static gint ett_nr_rrc_locationError_r16;
+static gint ett_nr_rrc_locationSource_r16;
+static gint ett_nr_rrc_velocityEstimate_r16;
+static gint ett_nr_rrc_sensor_MeasurementInformation_r16;
+static gint ett_nr_rrc_sensor_MotionInformation_r16;
+static gint ett_nr_rrc_bandParametersSidelinkEUTRA1_r16;
+static gint ett_nr_rrc_bandParametersSidelinkEUTRA2_r16;
+static gint ett_nr_rrc_sl_ParametersEUTRA1_r16;
+static gint ett_nr_rrc_sl_ParametersEUTRA2_r16;
+static gint ett_nr_rrc_sl_ParametersEUTRA3_r16;
+static gint ett_nr_rrc_absTimeInfo;
+static gint ett_nr_rrc_assistanceDataSIB_Element_r16;
+static gint ett_nr_sl_V2X_ConfigCommon_r16;
+static gint ett_nr_tdd_Config_r16;
+static gint ett_nr_coarseLocationInfo_r17;
+static gint ett_nr_sl_MeasResultsCandRelay_r17;
+static gint ett_nr_sl_MeasResultServingRelay_r17;
+static gint ett_nr_ReferenceLocation_r17;
+
+static expert_field ei_nr_rrc_number_pages_le15;
/* Forward declarations */
static int dissect_UECapabilityInformationSidelink_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static int dissect_DL_DCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_DL_CCCH_Message_PDU(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_);
+static int dissect_UL_CCCH_Message_PDU(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_);
+static int dissect_UERadioAccessCapabilityInformation_PDU(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_);
+static int dissect_SL_MeasResultListRelay_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_SL_MeasResultRelay_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static const unit_name_string units_periodicities = { " periodicity", " periodicities" };
static const unit_name_string units_prbs = { " PRB", " PRBs" };
@@ -177,6 +188,29 @@ typedef struct {
pdcp_nr_security_info_t pdcp_security;
} nr_rrc_private_data_t;
+/* Helper function to get UE identifier from lower layers (in order MAC, RLC, PDCP) */
+static guint16*
+nr_rrc_get_ueid_from_lower_layers(wmem_allocator_t *scope, struct _packet_info* pinfo)
+{
+ /* Try MAC first */
+ mac_nr_info *p_mac_nr_info = (mac_nr_info *)p_get_proto_data(scope, pinfo, proto_mac_nr, 0);
+ if (p_mac_nr_info != NULL) {
+ return &p_mac_nr_info->ueid;
+ }
+ /* Not found, try RLC */
+ rlc_nr_info *p_rlc_nr_info = (rlc_nr_info *)p_get_proto_data(scope, pinfo, proto_rlc_nr, 0);
+ if (p_rlc_nr_info != NULL) {
+ return &p_rlc_nr_info->ueid;
+ }
+ /* Not found, try PDCP */
+ pdcp_nr_info *p_pdcp_nr_info = (pdcp_nr_info *)p_get_proto_data(scope, pinfo, proto_pdcp_nr, 0);
+ if (p_pdcp_nr_info != NULL) {
+ return &p_pdcp_nr_info->ueid;
+ }
+ /* Nothing found, give up */
+ return NULL;
+}
+
/* Helper function to get or create a struct that will be actx->private_data */
static nr_rrc_private_data_t*
nr_rrc_get_private_data(asn1_ctx_t *actx)
@@ -205,7 +239,7 @@ nr_rrc_q_RxLevMin_fmt(gchar *s, guint32 v)
{
gint32 d = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%d dB (%d)", 2*d, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%d dB (%d)", 2*d, d);
}
static const value_string nr_rrc_serialNumber_gs_vals[] = {
@@ -301,7 +335,7 @@ nr_rrc_localTimeOffset_fmt(gchar *s, guint32 v)
{
gint32 time_offset = (gint32) v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "UTC time %c %dhr %dmin (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "UTC time %c %dhr %dmin (%d)",
(time_offset < 0) ? '-':'+', abs(time_offset) >> 2,
(abs(time_offset) & 0x03) * 15, time_offset);
}
@@ -309,13 +343,13 @@ nr_rrc_localTimeOffset_fmt(gchar *s, guint32 v)
static void
nr_rrc_drx_SlotOffset_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g ms (%u)", 1./32 * v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g ms (%u)", 1./32 * v, v);
}
static void
nr_rrc_Hysteresis_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gdB (%u)", 0.5 * v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gdB (%u)", 0.5 * v, v);
}
static void
@@ -323,7 +357,7 @@ nr_rrc_msg3_DeltaPreamble_fmt(gchar *s, guint32 v)
{
gint32 d = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddB (%d)", 2 * d, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddB (%d)", 2 * d, d);
}
static void
@@ -331,18 +365,18 @@ nr_rrc_Q_RxLevMin_fmt(gchar *s, guint32 v)
{
gint32 d = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%d)", 2 * d, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%d)", 2 * d, d);
}
static void
nr_rrc_RSRP_RangeEUTRA_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
} else if (v < 97) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", v-141, v-140, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", v-141, v-140, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= RSRP (97)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= RSRP (97)");
}
}
@@ -350,11 +384,11 @@ static void
nr_rrc_RSRQ_RangeEUTRA_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
} else if (v < 34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", ((float)v/2)-20, (((float)v+1)/2)-20, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", ((float)v/2)-20, (((float)v+1)/2)-20, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
}
}
@@ -362,31 +396,31 @@ static void
nr_rrc_SINR_RangeEUTRA_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SINR < -23dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SINR < -23dB (0)");
} else if (v == 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "40dB <= SINR (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "40dB <= SINR (127)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
}
}
static void
nr_rrc_ReselectionThreshold_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%udB (%u)", 2 * v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%udB (%u)", 2 * v, v);
}
static void
nr_rrc_RSRP_Range_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRP < -156dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRP < -156dBm (0)");
} else if (v < 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SS-RSRP < %ddBm (%u)", v-157, v-156, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SS-RSRP < %ddBm (%u)", v-157, v-156, v);
} else if (v == 126) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-31dBm <= SS-RSRP (126)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-31dBm <= SS-RSRP (126)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "infinity (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "infinity (127)");
}
}
@@ -394,11 +428,11 @@ static void
nr_rrc_RSRQ_Range_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRQ < -43dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRQ < -43dB (0)");
} else if (v < 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-RSRQ < %.1fdB (%u)", (((float)v-1)/2)-43, ((float)v/2)-43, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-RSRQ < %.1fdB (%u)", (((float)v-1)/2)-43, ((float)v/2)-43, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-20dB <= SS-RSRQ (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "20dB <= SS-RSRQ (127)");
}
}
@@ -406,35 +440,35 @@ static void
nr_rrc_SINR_Range_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SS-SINR < -23dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SS-SINR < -23dB (0)");
} else if (v < 127) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "40dB <= SS-SINR (127)");
+ snprintf(s, ITEM_LABEL_LENGTH, "40dB <= SS-SINR (127)");
}
}
static void
nr_rrc_dl_1024QAM_TotalWeightedLayers_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%u (%u)", 10+(2*v), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%u (%u)", 10+(2*v), v);
}
static void
nr_rrc_timeConnFailure_r16_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ums (%u)", 100*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ums (%u)", 100*v, v);
}
static void
nr_rrc_RSSI_Range_r16_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
} else if (v < 76) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSSI < %ddBm (%u)", v-101, v-100, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSSI < %ddBm (%u)", v-101, v-100, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-25dBm <= RSSI (76)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-25dBm <= RSSI (76)");
}
}
@@ -444,19 +478,19 @@ nr_rrc_RSRQ_RangeEUTRA_r16_fmt(gchar *s, guint32 v)
gint32 d = (gint32)v;
if (d == -34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -36dB (-34)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -36dB (-34)");
} else if (d < 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", (((float)d-1)/2)-19, ((float)d/2)-19, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", (((float)d-1)/2)-19, ((float)d/2)-19, d);
} else if (d == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
} else if (d < 34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", (((float)d-1)/2)-19.5, ((float)d/2)-19.5, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", (((float)d-1)/2)-19.5, ((float)d/2)-19.5, d);
} else if (d == 34) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
} else if (d < 46) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", (((float)d-1)/2)-20, ((float)d/2)-20, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%d)", (((float)d-1)/2)-20, ((float)d/2)-20, d);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "2.5dB <= RSRQ (46)");
+ snprintf(s, ITEM_LABEL_LENGTH, "2.5dB <= RSRQ (46)");
}
}
@@ -466,11 +500,11 @@ nr_rrc_utra_FDD_RSCP_r16_fmt(gchar *s, guint32 v)
gint32 d = (gint32)v;
if (d == -5) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSCP < -120dBm (-5)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSCP < -120dBm (-5)");
} else if (d < 91) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSCP < %ddB (%d)", d-116, d-115, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSCP < %ddB (%d)", d-116, d-115, d);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-25dBm <= RSCP (91)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-25dBm <= RSCP (91)");
}
}
@@ -478,18 +512,18 @@ static void
nr_rrc_utra_FDD_EcN0_r16_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Ec/No < -24dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "Ec/No < -24dB (0)");
} else if (v < 49) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= Ec/No < %.1fdB (%u)", (((float)v-1)/2)-24, ((float)v/2)-24, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= Ec/No < %.1fdB (%u)", (((float)v-1)/2)-24, ((float)v/2)-24, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "0dB <= Ec/No (49)");
+ snprintf(s, ITEM_LABEL_LENGTH, "0dB <= Ec/No (49)");
}
}
static void
nr_rrc_averageDelay_r16_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/10, v);
}
static void
@@ -497,26 +531,26 @@ nr_rrc_measTriggerQuantity_utra_FDD_RSCP_r16_fmt(gchar *s, guint32 v)
{
gint32 d = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%d)", d-115, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%d)", d-115, d);
}
static void
nr_rrc_measTriggerQuantity_utra_FDD_EcN0_r16_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", (float)v/2-24.5, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", (float)v/2-24.5, v);
}
static void
nr_rrc_SRS_RSRP_r16_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "SRS-RSRP < -140dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "SRS-RSRP < -140dBm (0)");
} else if (v < 97) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SRS-RSRP < %ddB (%u)", v-141, v-140, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SRS-RSRP < %ddB (%u)", v-141, v-140, v);
} else if (v == 97) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= SRS-RSRP (97)");
+ snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= SRS-RSRP (97)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Infinity (98)");
+ snprintf(s, ITEM_LABEL_LENGTH, "Infinity (98)");
}
}
@@ -525,7 +559,13 @@ nr_rrc_MeasTriggerQuantityOffset_fmt(gchar *s, guint32 v)
{
gint32 d = (gint32)v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%d)", (float)d/2, d);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%d)", (float)d/2, d);
+}
+
+static void
+nr_rrc_TimeSinceCHO_Reconfig_r17_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fs (%u)", (float)v/10, v);
}
static int
@@ -599,6 +639,121 @@ dissect_nr_rrc_ul_dcch_message_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, pr
}
static int
+dissect_nr_rrc_dl_dcch_message_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "DL-DCCH-Message");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_DL_DCCH_Message_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+static int
+dissect_nr_rrc_dl_ccch_message_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "DL-CCCH-Message");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_DL_CCCH_Message_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+static int
+dissect_nr_rrc_ul_ccch_message_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "UL-CCCH-Message");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_UL_CCCH_Message_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+
+static int
+dissect_nr_rrc_cellgroupconfig_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "CellGroupConfig");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_nr_rrc_CellGroupConfig_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+static int
+dissect_ueradioaccesscapabilityinformation_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "UERadioAccessCapabilityInformation");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_UERadioAccessCapabilityInformation_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+static int
+dissect_nr_rrc_measconfig_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "MeasConfig");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_nr_rrc_MeasConfig_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+static int
+dissect_nr_rrc_measgapconfig_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "MeasGapConfig");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_nr_rrc_MeasGapConfig_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+static int
+dissect_nr_rrc_handoverpreparationinformation_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "HandoverPreparationInformation");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_nr_rrc_HandoverPreparationInformation_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+
+
+static int
dissect_nr_rrc_rrcreconfiguration_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
{
proto_item* ti;
@@ -614,6 +769,21 @@ dissect_nr_rrc_rrcreconfiguration_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_,
static int
+dissect_nr_rrc_rrcreconfigurationcomplete_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "RRCReconfigurationComplete");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_nr_rrc_RRCReconfigurationComplete_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+
+static int
dissect_nr_rrc_ue_capabilityrat_containerlist_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
{
proto_item* ti;
@@ -626,6 +796,22 @@ dissect_nr_rrc_ue_capabilityrat_containerlist_msg(tvbuff_t* tvb _U_, packet_info
sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
return dissect_nr_rrc_UE_CapabilityRAT_ContainerList_PDU(tvb, pinfo, sub_tree, NULL);
}
+
+static int
+dissect_nr_rrc_handovercommand_msg(tvbuff_t* tvb _U_, packet_info* pinfo _U_, proto_tree* tree _U_, void* data _U_)
+{
+ proto_item* ti;
+ proto_tree* sub_tree;
+
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "NR RRC");
+ col_set_str(pinfo->cinfo, COL_INFO, "HandoverCommand");
+
+ ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ sub_tree = proto_item_add_subtree(ti, ett_nr_rrc);
+ return dissect_nr_rrc_HandoverCommand_PDU(tvb, pinfo, sub_tree, NULL);
+}
+
+
#include "packet-nr-rrc-fn.c"
int
@@ -652,6 +838,18 @@ dissect_nr_rrc_subCarrierSpacingCommon_PDU(tvbuff_t *tvb _U_, packet_info *pinfo
return offset;
}
+int
+dissect_nr_rrc_rach_ConfigCommonIAB_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ proto_item *prot_ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
+ proto_item_set_hidden(prot_ti);
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
+ offset = dissect_nr_rrc_T_rach_ConfigCommonIAB_r16(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_BCCH_DL_SCH_Message_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
+
void
proto_register_nr_rrc(void) {
@@ -690,7 +888,7 @@ proto_register_nr_rrc(void) {
NULL, HFILL }},
{ &hf_nr_rrc_warningMessageSegment_decoded_page,
{ "Decoded Page", "nr-rrc.warningMessageSegment.decoded_page",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_nr_rrc_sib7_fragments,
{ "Fragments", "nr-rrc.warningMessageSegment.fragments",
@@ -830,6 +1028,7 @@ proto_register_nr_rrc(void) {
&ett_nr_rrc_sl_ConfigDedicatedEUTRA,
&ett_nr_rrc_sl_CapabilityInformationSidelink,
&ett_nr_rrc_measResult_RLF_Report_EUTRA,
+ &ett_nr_rrc_measResult_RLF_Report_EUTRA_v1690,
&ett_nr_rrc_locationTimestamp_r16,
&ett_nr_rrc_locationCoordinate_r16,
&ett_nr_rrc_locationError_r16,
@@ -845,7 +1044,11 @@ proto_register_nr_rrc(void) {
&ett_nr_rrc_absTimeInfo,
&ett_nr_rrc_assistanceDataSIB_Element_r16,
&ett_nr_sl_V2X_ConfigCommon_r16,
- &ett_nr_tdd_Config_r16
+ &ett_nr_tdd_Config_r16,
+ &ett_nr_coarseLocationInfo_r17,
+ &ett_nr_sl_MeasResultsCandRelay_r17,
+ &ett_nr_sl_MeasResultServingRelay_r17,
+ &ett_nr_ReferenceLocation_r17
};
static ei_register_info ei[] = {
@@ -868,10 +1071,20 @@ proto_register_nr_rrc(void) {
register_dissector("nr-rrc.cg_configinfo", dissect_nr_rrc_cg_configinfo_msg, proto_nr_rrc);
register_dissector("nr-rrc.radiobearerconfig", dissect_nr_rrc_radiobearerconfig_msg, proto_nr_rrc);
register_dissector("nr-rrc.rrc_reconf_msg", dissect_nr_rrc_rrcreconfiguration_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.rrc_reconf_compl_msg", dissect_nr_rrc_rrcreconfigurationcomplete_msg, proto_nr_rrc);
register_dissector("nr-rrc.ue_capabilityrat_containerlist", dissect_nr_rrc_ue_capabilityrat_containerlist_msg, proto_nr_rrc);
register_dissector("nr-rrc.ue_mrdc_cap_msg", dissect_nr_rrc_ue_mrdc_capability_msg, proto_nr_rrc);
register_dissector("nr-rrc.ue_nr_cap_msg", dissect_nr_rrc_ue_nr_capability_msg, proto_nr_rrc);
register_dissector("nr-rrc.ul.dcch_msg_msg", dissect_nr_rrc_ul_dcch_message_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.dl.dcch_msg_msg", dissect_nr_rrc_dl_dcch_message_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.ul.ccch_msg_msg", dissect_nr_rrc_ul_ccch_message_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.dl.ccch_msg_msg", dissect_nr_rrc_dl_ccch_message_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.cellgroupconfig_msg", dissect_nr_rrc_cellgroupconfig_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.ue_radio_access_cap_info_msg", dissect_ueradioaccesscapabilityinformation_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.measconfig_msg", dissect_nr_rrc_measconfig_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.measgapconfig_msg", dissect_nr_rrc_measgapconfig_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.handoverpreparationinformation_msg", dissect_nr_rrc_handoverpreparationinformation_msg, proto_nr_rrc);
+ register_dissector("nr-rrc.handovercommand_msg", dissect_nr_rrc_handovercommand_msg, proto_nr_rrc);
#include "packet-nr-rrc-dis-reg.c"
diff --git a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h
index fa5e1200a4..0241aa16cd 100644
--- a/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h
+++ b/epan/dissectors/asn1/nr-rrc/packet-nr-rrc-template.h
@@ -1,5 +1,5 @@
/* packet-nr-rrc-template.h
- * Copyright 2018-2021, Pascal Quantin
+ * Copyright 2018-2024, Pascal Quantin
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -14,4 +14,5 @@
#include "packet-nr-rrc-exp.h"
int dissect_nr_rrc_nr_RLF_Report_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
int dissect_nr_rrc_subCarrierSpacingCommon_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+int dissect_nr_rrc_rach_ConfigCommonIAB_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
#endif /* PACKET_NR_RRC_H */
diff --git a/epan/dissectors/asn1/nrppa/NRPPA-CommonDataTypes.asn b/epan/dissectors/asn1/nrppa/NRPPA-CommonDataTypes.asn
index c016d04b9b..5397cf1cd3 100644
--- a/epan/dissectors/asn1/nrppa/NRPPA-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/nrppa/NRPPA-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.455 V16.5.0 (2021-10)
+-- 3GPP TS 38.455 V17.6.0 (2023-12)
-- 9.3.6 Common definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
NRPPA-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) nrppa (4) version1 (1) nrppa-CommonDataTypes (3)}
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/nrppa/NRPPA-Constants.asn b/epan/dissectors/asn1/nrppa/NRPPA-Constants.asn
index f7a4c8baff..832c96a15b 100644
--- a/epan/dissectors/asn1/nrppa/NRPPA-Constants.asn
+++ b/epan/dissectors/asn1/nrppa/NRPPA-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.455 V16.5.0 (2021-10)
+-- 3GPP TS 38.455 V17.6.0 (2023-12)
-- 9.3.7 Constant definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
NRPPA-Constants {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) nrppa (4) version1 (1) nrppa-Constants (4) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -45,6 +45,9 @@ id-MeasurementFailureIndication ProcedureCode ::= 15
id-tRPInformationExchange ProcedureCode ::= 16
id-positioningActivation ProcedureCode ::= 17
id-positioningDeactivation ProcedureCode ::= 18
+id-pRSConfigurationExchange ProcedureCode ::= 19
+id-measurementPreconfiguration ProcedureCode ::= 20
+id-measurementActivation ProcedureCode ::= 21
-- **************************************************************
--
@@ -70,7 +73,7 @@ maxNoPath INTEGER ::= 2
maxNrOfPosSImessage INTEGER ::= 32
maxnoAssistInfoFailureListItems INTEGER ::= 32
maxNrOfSegments INTEGER ::= 64
-maxNrOfPosSIBs INTEGER ::= 32
+maxNrOfPosSIBs INTEGER ::= 32
maxNoOfMeasTRPs INTEGER ::= 64
maxnoTRPs INTEGER ::= 65535
maxnoTRPInfoTypes INTEGER ::= 64
@@ -93,6 +96,16 @@ maxPRS-ResourcesPerSet INTEGER ::= 64
maxNoSSBs INTEGER ::= 255
maxnoofPRSresourceSet INTEGER ::= 8
maxnoofPRSresource INTEGER ::= 64
+maxnoofULAoAs INTEGER ::= 8
+maxNoPathExtended INTEGER ::= 8
+maxnoARPs INTEGER ::= 16
+maxnoUETEGs INTEGER ::= 256
+maxnoTRPTEGs INTEGER ::= 8
+maxFreqLayers INTEGER ::= 4
+maxNumResourcesPerAngle INTEGER ::= 24
+maxnoAzimuthAngles INTEGER ::= 3600
+maxnoElevationAngles INTEGER ::= 1801
+maxnoPRSTRPs INTEGER ::= 256
@@ -162,5 +175,58 @@ id-CGI-NR ProtocolIE-ID ::= 58
id-SFNInitialisationTime-NR ProtocolIE-ID ::= 59
id-Cell-ID ProtocolIE-ID ::= 60
id-SrsFrequency ProtocolIE-ID ::= 61
+id-TRPType ProtocolIE-ID ::= 62
+id-SRSSpatialRelationPerSRSResource ProtocolIE-ID ::= 63
+id-MeasurementPeriodicityExtended ProtocolIE-ID ::= 64
+id-PRS-Resource-ID ProtocolIE-ID ::= 65
+id-PRSTRPList ProtocolIE-ID ::= 66
+id-PRSTransmissionTRPList ProtocolIE-ID ::= 67
+id-OnDemandPRS ProtocolIE-ID ::= 68
+id-AoA-SearchWindow ProtocolIE-ID ::= 69
+id-TRP-MeasurementUpdateList ProtocolIE-ID ::= 70
+id-ZoA ProtocolIE-ID ::= 71
+id-ResponseTime ProtocolIE-ID ::= 72
+id-UEReportingInformation ProtocolIE-ID ::= 73
+id-MultipleULAoA ProtocolIE-ID ::= 74
+id-UL-SRS-RSRPP ProtocolIE-ID ::= 75
+id-SRSResourcetype ProtocolIE-ID ::= 76
+id-ExtendedAdditionalPathList ProtocolIE-ID ::= 77
+id-ARPLocationInfo ProtocolIE-ID ::= 78
+id-ARP-ID ProtocolIE-ID ::= 79
+id-LoS-NLoSInformation ProtocolIE-ID ::= 80
+id-UETxTEGAssociationList ProtocolIE-ID ::= 81
+id-NumberOfTRPRxTEG ProtocolIE-ID ::= 82
+id-NumberOfTRPRxTxTEG ProtocolIE-ID ::= 83
+id-TRPTxTEGAssociation ProtocolIE-ID ::= 84
+id-TRPTEGInformation ProtocolIE-ID ::= 85
+id-TRP-Rx-TEGInformation ProtocolIE-ID ::= 86
+id-TRP-PRS-Information-List ProtocolIE-ID ::= 87
+id-PRS-Measurements-Info-List ProtocolIE-ID ::= 88
+id-PRSConfigRequestType ProtocolIE-ID ::= 89
+id-UE-TEG-Info-Request ProtocolIE-ID ::= 90
+id-MeasurementTimeOccasion ProtocolIE-ID ::= 91
+id-MeasurementCharacteristicsRequestIndicator ProtocolIE-ID ::= 92
+id-TRPBeamAntennaInformation ProtocolIE-ID ::= 93
+id-NR-TADV ProtocolIE-ID ::= 94
+id-MeasurementAmount ProtocolIE-ID ::= 95
+id-pathPower ProtocolIE-ID ::= 96
+id-PreconfigurationResult ProtocolIE-ID ::= 97
+id-RequestType ProtocolIE-ID ::= 98
+id-UE-TEG-ReportingPeriodicity ProtocolIE-ID ::= 99
+id-SRSPortIndex ProtocolIE-ID ::= 100
+id-procedure-code-101-not-to-be-used ProtocolIE-ID ::= 101
+id-procedure-code-102-not-to-be-used ProtocolIE-ID ::= 102
+id-procedure-code-103-not-to-be-used ProtocolIE-ID ::= 103
+id-UETxTimingErrorMargin ProtocolIE-ID ::= 104
+id-MeasurementPeriodicityNR-AoA ProtocolIE-ID ::= 105
+id-SRSTransmissionStatus ProtocolIE-ID ::= 106
+id-nrofSymbolsExtended ProtocolIE-ID ::= 107
+id-repetitionFactorExtended ProtocolIE-ID ::= 108
+id-StartRBHopping ProtocolIE-ID ::= 109
+id-StartRBIndex ProtocolIE-ID ::= 110
+id-transmissionCombn8 ProtocolIE-ID ::= 111
+
+
+
END
diff --git a/epan/dissectors/asn1/nrppa/NRPPA-Containers.asn b/epan/dissectors/asn1/nrppa/NRPPA-Containers.asn
index ec8b5cf8ba..233ae88afc 100644
--- a/epan/dissectors/asn1/nrppa/NRPPA-Containers.asn
+++ b/epan/dissectors/asn1/nrppa/NRPPA-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.455 V16.5.0 (2021-10)
+-- 3GPP TS 38.455 V17.6.0 (2023-12)
-- 9.3.8 Container definitions
--
-- **************************************************************
@@ -8,10 +8,10 @@
-- **************************************************************
NRPPA-Containers {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) nrppa (4) version1 (1) nrppa-Containers (5)}
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -28,7 +28,7 @@ IMPORTS
Criticality,
Presence,
PrivateIE-ID,
- ProtocolIE-ID
+ ProtocolIE-ID
FROM NRPPA-CommonDataTypes;
-- **************************************************************
@@ -94,11 +94,11 @@ WITH SYNTAX {
--
-- **************************************************************
-ProtocolIE-Container { NRPPA-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Container { NRPPA-PROTOCOL-IES : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IEsSetParam}}
-ProtocolIE-Single-Container { NRPPA-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Single-Container { NRPPA-PROTOCOL-IES : IEsSetParam} ::=
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field { NRPPA-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
@@ -123,7 +123,7 @@ ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, NRPPA-PROT
--
-- **************************************************************
-ProtocolExtensionContainer { NRPPA-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ProtocolExtensionContainer { NRPPA-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
@@ -139,7 +139,7 @@ ProtocolExtensionField { NRPPA-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUE
--
-- **************************************************************
-PrivateIE-Container { NRPPA-PRIVATE-IES : IEsSetParam} ::=
+PrivateIE-Container { NRPPA-PRIVATE-IES : IEsSetParam} ::=
SEQUENCE (SIZE (1..maxPrivateIEs)) OF
PrivateIE-Field {{IEsSetParam}}
diff --git a/epan/dissectors/asn1/nrppa/NRPPA-IEs.asn b/epan/dissectors/asn1/nrppa/NRPPA-IEs.asn
index 389ff4f0ca..9a7e0ff3d0 100644
--- a/epan/dissectors/asn1/nrppa/NRPPA-IEs.asn
+++ b/epan/dissectors/asn1/nrppa/NRPPA-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.455 V16.5.0 (2021-10)
+-- 3GPP TS 38.455 V17.6.0 (2023-12)
-- 9.3.5 Information Element definitions
-- **************************************************************
--
@@ -7,15 +7,15 @@
-- **************************************************************
NRPPA-IEs {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) nrppa (4) version1 (1) nrppa-IEs (2) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-IMPORTS
-
+IMPORTS
+
id-MeasurementQuantities-Item,
id-CGI-NR,
id-SFNInitialisationTime-NR,
@@ -71,9 +71,48 @@ IMPORTS
maxNoSSBs,
maxnoofPRSresourceSet,
maxnoofPRSresource,
+ maxnoofULAoAs,
+ maxNoPathExtended,
+ maxnoARPs,
+ maxnoTRPTEGs,
+ maxnoUETEGs,
+ maxFreqLayers,
+ maxnoPRSTRPs,
+ maxNumResourcesPerAngle,
+ maxnoAzimuthAngles,
+ maxnoElevationAngles,
id-Cell-ID,
id-TRPInformationTypeItem,
- id-SrsFrequency
+ id-SrsFrequency,
+ id-TRPType,
+ id-SRSSpatialRelationPerSRSResource,
+ id-PRS-Resource-ID,
+ id-OnDemandPRS,
+ id-AoA-SearchWindow,
+ id-ZoA,
+ id-MultipleULAoA,
+ id-UL-SRS-RSRPP,
+ id-SRSResourcetype,
+ id-ExtendedAdditionalPathList,
+ id-ARPLocationInfo,
+ id-ARP-ID,
+ id-LoS-NLoSInformation,
+ id-NumberOfTRPRxTEG,
+ id-NumberOfTRPRxTxTEG,
+ id-TRPTxTEGAssociation,
+ id-TRPTEGInformation,
+ id-TRP-Rx-TEGInformation,
+ id-TRPBeamAntennaInformation,
+ id-NR-TADV,
+ id-pathPower,
+ id-SRSPortIndex,
+ id-UETxTimingErrorMargin,
+ id-nrofSymbolsExtended,
+ id-repetitionFactorExtended,
+ id-StartRBHopping,
+ id-StartRBIndex,
+ id-transmissionCombn8
+
@@ -89,7 +128,7 @@ FROM NRPPA-CommonDataTypes
ProtocolExtensionContainer{},
ProtocolIE-Single-Container{},
-
+
NRPPA-PROTOCOL-EXTENSION,
NRPPA-PROTOCOL-IES
@@ -109,7 +148,7 @@ AbortTransmission-ExtIEs NRPPA-PROTOCOL-IES ::= {
ActiveULBWP ::= SEQUENCE {
locationAndBandwidth INTEGER (0..37949,...),
- subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,...},
+ subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,..., kHz480, kHz960},
cyclicPrefix ENUMERATED {normal, extended},
txDirectCurrentLocation INTEGER (0..3301,...),
shift7dot5kHz ENUMERATED {true, ...} OPTIONAL,
@@ -128,12 +167,41 @@ AdditionalPathList ::= SEQUENCE (SIZE (1.. maxNoPath)) OF AdditionalPathListItem
AdditionalPathListItem ::= SEQUENCE {
relativeTimeOfPath RelativePathDelay,
- pathQuality TrpMeasurementQuality OPTIONAL,
+ pathQuality TrpMeasurementQuality OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { AdditionalPathListItem-ExtIEs} } OPTIONAL,
...
}
AdditionalPathListItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-MultipleULAoA CRITICALITY ignore EXTENSION MultipleULAoA PRESENCE optional}|
+ { ID id-pathPower CRITICALITY ignore EXTENSION UL-SRS-RSRPP PRESENCE optional},
+ ...
+}
+
+ExtendedAdditionalPathList ::= SEQUENCE (SIZE (1.. maxNoPathExtended)) OF ExtendedAdditionalPathList-Item
+
+
+ExtendedAdditionalPathList-Item ::= SEQUENCE {
+ relativeTimeOfPath RelativePathDelay,
+ pathQuality TrpMeasurementQuality OPTIONAL,
+ multipleULAoA MultipleULAoA OPTIONAL,
+ pathPower UL-SRS-RSRPP OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ExtendedAdditionalPathList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ExtendedAdditionalPathList-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AoA-AssistanceInfo ::= SEQUENCE {
+ angleMeasurement AngleMeasurementType,
+ lCS-to-GCS-Translation LCS-to-GCS-Translation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { AoA-AssistanceInfo-ExtIEs } } OPTIONAL,
+ ...
+}
+
+AoA-AssistanceInfo-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
@@ -141,6 +209,84 @@ AperiodicSRSResourceTriggerList ::= SEQUENCE (SIZE(1..maxnoSRSTriggerStates)) OF
AperiodicSRSResourceTrigger ::= INTEGER (1..3)
+AngleMeasurementType ::= CHOICE {
+ expected-ULAoA Expected-UL-AoA,
+ expected-ZoA Expected-ZoA-only,
+ choice-extension ProtocolIE-Single-Container { { AngleMeasurementType-ExtIEs } }
+}
+
+AngleMeasurementType-ExtIEs NRPPA-PROTOCOL-IES ::= {
+...
+}
+
+Expected-UL-AoA ::= SEQUENCE {
+ expected-Azimuth-AoA Expected-Azimuth-AoA,
+ expected-Zenith-AoA Expected-Zenith-AoA OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { Expected-UL-AoA-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-UL-AoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Expected-ZoA-only ::= SEQUENCE {
+ expected-ZoA-only Expected-Zenith-AoA,
+ iE-extensions ProtocolExtensionContainer { { Expected-ZoA-only-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-ZoA-only-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Expected-Azimuth-AoA ::= SEQUENCE {
+ expected-Azimuth-AoA-value Expected-Value-AoA,
+ expected-Azimuth-AoA-uncertainty Uncertainty-range-AoA,
+ iE-extensions ProtocolExtensionContainer { { Expected-Azimuth-AoA-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-Azimuth-AoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Expected-Zenith-AoA ::= SEQUENCE {
+ expected-Zenith-AoA-value Expected-Value-ZoA,
+ expected-Zenith-AoA-uncertainty Uncertainty-range-ZoA,
+ iE-extensions ProtocolExtensionContainer { { Expected-Zenith-AoA-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Expected-Zenith-AoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ARP-ID ::= INTEGER (1..16, ...)
+
+ARPLocationInformation ::= SEQUENCE (SIZE (1..maxnoARPs)) OF ARPLocationInformation-Item
+
+ARPLocationInformation-Item ::= SEQUENCE {
+ aRP-ID ARP-ID,
+ aRPLocationType ARPLocationType,
+ iE-Extensions ProtocolExtensionContainer { { ARPLocationInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ARPLocationInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ARPLocationType ::= CHOICE {
+ aRPPositionRelativeGeodetic RelativeGeodeticLocation,
+ aRPPositionRelativeCartesian RelativeCartesianLocation,
+ choice-extension ProtocolIE-Single-Container { { ARPLocationType-ExtIEs } }
+}
+
+ARPLocationType-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ ...
+}
+
Assistance-Information ::= SEQUENCE {
systemInformation SystemInformation,
iE-Extensions ProtocolExtensionContainer { { Assistance-Information-ExtIEs} } OPTIONAL,
@@ -207,17 +353,28 @@ BroadcastPeriodicity ::= ENUMERATED {
...
}
-PositioningBroadcastCells ::= SEQUENCE (SIZE (1..maxnoBcastCell)) OF NG-RAN-CGI
+PositioningBroadcastCells ::= SEQUENCE (SIZE (1..maxnoBcastCell)) OF NG-RAN-CGI
BSSID ::= OCTET STRING (SIZE(6))
-- C
+CarrierFreq ::= SEQUENCE {
+ pointA INTEGER (0..3279165),
+ offsetToCarrier INTEGER (0..2199, ...),
+ iE-Extensions ProtocolExtensionContainer { {CarrierFreq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CarrierFreq-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
Cause ::= CHOICE {
radioNetwork CauseRadioNetwork,
protocol CauseProtocol,
misc CauseMisc,
- cause-Extension ProtocolIE-Single-Container {{ Cause-ExtensionIE }}
+ choice-Extension ProtocolIE-Single-Container {{ Cause-ExtensionIE }}
}
Cause-ExtensionIE NRPPA-PROTOCOL-IES ::= {
@@ -244,7 +401,9 @@ CauseRadioNetwork ::= ENUMERATED {
unspecified,
requested-item-not-supported,
requested-item-temporarily-not-available,
- ...
+ ...,
+ serving-NG-RAN-node-changed,
+ requested-item-not-supported-on-time
}
@@ -383,7 +542,7 @@ DL-PRSResourceSetARPLocation-ExtIEs NRPPA-PROTOCOL-IES ::= {
DLPRSResourceARP ::= SEQUENCE {
dl-PRSResourceID PRS-Resource-ID,
- dL-PRSResourceARPLocation DL-PRSResourceARPLocation,
+ dL-PRSResourceARPLocation DL-PRSResourceARPLocation,
iE-Extensions ProtocolExtensionContainer { { DLPRSResourceARP-ExtIEs } } OPTIONAL,
...
}
@@ -422,6 +581,11 @@ EUTRACellIdentifier ::= BIT STRING (SIZE (28))
EARFCN ::= INTEGER (0..262143, ...)
+Expected-Value-AoA ::= INTEGER (0..3599)
+
+Expected-Value-ZoA ::= INTEGER (0..1799)
+
+
-- F
-- G
@@ -434,6 +598,7 @@ GeographicalCoordinates ::= SEQUENCE {
}
GeographicalCoordinates-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-ARPLocationInfo CRITICALITY ignore EXTENSION ARPLocationInformation PRESENCE optional},
...
}
@@ -447,6 +612,8 @@ GNB-RxTxTimeDiff ::= SEQUENCE {
}
GNB-RxTxTimeDiff-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-ExtendedAdditionalPathList CRITICALITY ignore EXTENSION ExtendedAdditionalPathList PRESENCE optional}|
+ { ID id-TRPTEGInformation CRITICALITY ignore EXTENSION TRPTEGInformation PRESENCE optional },
...
}
@@ -459,7 +626,7 @@ GNBRxTxTimeDiffMeas ::= CHOICE {
k3 INTEGER (0.. 246257),
k4 INTEGER (0.. 123129),
k5 INTEGER (0.. 61565),
- choice-extension ProtocolIE-Single-Container { { GNBRxTxTimeDiffMeas-ExtIEs } }
+ choice-extension ProtocolIE-Single-Container { { GNBRxTxTimeDiffMeas-ExtIEs } }
}
GNBRxTxTimeDiffMeas-ExtIEs NRPPA-PROTOCOL-IES ::= {
@@ -478,15 +645,15 @@ HESSID ::= OCTET STRING (SIZE(6))
-- L
-LCS-to-GCS-TranslationAoA::= SEQUENCE {
+LCS-to-GCS-Translation::= SEQUENCE {
alpha INTEGER (0..3599),
beta INTEGER (0..3599),
gamma INTEGER (0..3599),
- iE-Extensions ProtocolExtensionContainer { { LCS-to-GCS-TranslationAoA-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { LCS-to-GCS-Translation-ExtIEs} } OPTIONAL,
...
}
-LCS-to-GCS-TranslationAoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+LCS-to-GCS-Translation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
@@ -518,11 +685,28 @@ LocationUncertainty-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+LoS-NLoSIndicatorHard ::= ENUMERATED {nlos, los}
+
+LoS-NLoSIndicatorSoft ::= INTEGER (0..10)
+
+LoS-NLoSInformation ::= CHOICE {
+ loS-NLoSIndicatorSoft LoS-NLoSIndicatorSoft,
+ loS-NLoSIndicatorHard LoS-NLoSIndicatorHard,
+ choice-Extension ProtocolIE-Single-Container {{ LoS-NLoSInformation-ExtIEs}}
+
+}
+
+LoS-NLoSInformation-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ ...
+}
+
-- M
Measurement-ID ::= INTEGER (1.. 65536, ...)
+MeasurementAmount ::= ENUMERATED {ma0, ma1, ma2, ma4, ma8, ma16, ma32, ma64}
+
MeasurementBeamInfoRequest ::= ENUMERATED {true, ...}
MeasurementBeamInfo ::= SEQUENCE {
@@ -554,7 +738,41 @@ MeasurementPeriodicity ::= ENUMERATED {
min60,
...,
ms20480,
- ms40960
+ ms40960,
+ extended
+}
+
+MeasurementPeriodicityExtended ::= ENUMERATED {
+ ms160,
+ ms320,
+ ms1280,
+ ms2560,
+ ms61440,
+ ms81920,
+ ms368640,
+ ms737280,
+ ms1843200,
+ ...
+
+}
+
+MeasurementPeriodicityNR-AoA ::= ENUMERATED {
+ ms160,
+ ms320,
+ ms640,
+ ms1280,
+ ms2560,
+ ms5120,
+ ms10240,
+ ms20480,
+ ms40960,
+ ms61440,
+ ms81920,
+ ms368640,
+ ms737280,
+ ms1843200,
+ ...
+
}
MeasurementQuantities ::= SEQUENCE (SIZE (1.. maxNoMeas)) OF ProtocolIE-Single-Container { {MeasurementQuantities-ItemIEs} }
@@ -585,18 +803,23 @@ MeasurementQuantitiesValue ::= ENUMERATED {
sS-RSRQ,
cSI-RSRP,
cSI-RSRQ,
- angleOfArrivalNR
+ angleOfArrivalNR,
+ timingAdvanceNR
}
+MeasurementTimeOccasion ::= ENUMERATED {o1, o4, ...}
+
+MeasurementCharacteristicsRequestIndicator ::= BIT STRING (SIZE (16))
+
MeasuredResults ::= SEQUENCE (SIZE (1.. maxNoMeas)) OF MeasuredResultsValue
-MeasuredResultsValue ::= CHOICE {
+MeasuredResultsValue ::= CHOICE {
valueAngleOfArrival-EUTRA INTEGER (0..719),
valueTimingAdvanceType1-EUTRA INTEGER (0..7690),
valueTimingAdvanceType2-EUTRA INTEGER (0..7690),
resultRSRP-EUTRA ResultRSRP-EUTRA,
resultRSRQ-EUTRA ResultRSRQ-EUTRA,
- measuredResultsValue-Extension ProtocolIE-Single-Container {{ MeasuredResultsValue-ExtensionIE }}
+ choice-Extension ProtocolIE-Single-Container {{ MeasuredResultsValue-ExtensionIE }}
}
MeasuredResultsValue-ExtensionIE NRPPA-PROTOCOL-IES ::= {
@@ -604,10 +827,34 @@ MeasuredResultsValue-ExtensionIE NRPPA-PROTOCOL-IES ::= {
{ ID id-ResultSS-RSRQ CRITICALITY ignore TYPE ResultSS-RSRQ PRESENCE mandatory }|
{ ID id-ResultCSI-RSRP CRITICALITY ignore TYPE ResultCSI-RSRP PRESENCE mandatory }|
{ ID id-ResultCSI-RSRQ CRITICALITY ignore TYPE ResultCSI-RSRQ PRESENCE mandatory }|
- { ID id-AngleOfArrivalNR CRITICALITY ignore TYPE UL-AoA PRESENCE mandatory },
+ { ID id-AngleOfArrivalNR CRITICALITY ignore TYPE UL-AoA PRESENCE mandatory }|
+ { ID id-NR-TADV CRITICALITY ignore TYPE NR-TADV PRESENCE mandatory },
+ ...
+}
+
+MultipleULAoA ::= SEQUENCE {
+ multipleULAoA MultipleULAoA-List,
+ iE-Extensions ProtocolExtensionContainer { { MultipleULAoA-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MultipleULAoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MultipleULAoA-List ::= SEQUENCE (SIZE(1.. maxnoofULAoAs)) OF MultipleULAoA-Item
+
+MultipleULAoA-Item ::= CHOICE {
+ uL-AoA UL-AoA,
+ ul-ZoA ZoA,
+ choice-extension ProtocolIE-Single-Container { { MultipleULAoA-Item-ExtIEs } }
+}
+
+MultipleULAoA-Item-ExtIEs NRPPA-PROTOCOL-IES ::= {
...
}
+
-- N
NarrowBandIndex ::= INTEGER (0..15,...)
@@ -640,7 +887,7 @@ NGRANHighAccuracyAccessPointPosition ::= SEQUENCE {
orientationOfMajorAxis INTEGER (0..179),
horizontalConfidence INTEGER (0..100),
uncertaintyAltitude INTEGER (0..255),
- verticalConfidence INTEGER (0..100),
+ verticalConfidence INTEGER (0..100),
iE-Extensions ProtocolExtensionContainer { { NGRANHighAccuracyAccessPointPosition-ExtIEs} } OPTIONAL,
...
}
@@ -663,7 +910,7 @@ NG-RAN-CGI-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
NG-RANCell ::= CHOICE {
eUTRA-CellID EUTRACellIdentifier,
nR-CellID NRCellIdentifier,
- nG-RANCell-Extension ProtocolIE-Single-Container {{ NG-RANCell-ExtensionIE }}
+ choice-Extension ProtocolIE-Single-Container {{ NG-RANCell-ExtensionIE }}
}
NG-RANCell-ExtensionIE NRPPA-PROTOCOL-IES ::= {
@@ -674,6 +921,8 @@ NR-ARFCN ::= INTEGER (0..3279165)
NRCellIdentifier ::= BIT STRING (SIZE (36))
+NrofSymbolsExtended ::= ENUMERATED {n8, n10, n12, n14, ...}
+
NR-PCI ::= INTEGER (0..1007)
NR-PRS-Beam-Information ::= SEQUENCE {
@@ -683,21 +932,23 @@ NR-PRS-Beam-Information ::= SEQUENCE {
...
}
-NR-PRS-Beam-Information-IEs NRPPA-PROTOCOL-EXTENSION ::= {
+NR-PRS-Beam-Information-IEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
NR-PRS-Beam-InformationItem ::= SEQUENCE {
pRSresourceSetID PRS-Resource-Set-ID,
- pRSAngleItem SEQUENCE (SIZE(1..maxPRS-ResourcesPerSet)) OF PRSAngleItem,
+ pRSAngle SEQUENCE (SIZE(1..maxPRS-ResourcesPerSet)) OF PRSAngleItem,
iE-Extensions ProtocolExtensionContainer { { NR-PRS-Beam-InformationItem-ExtIEs} } OPTIONAL,
...
}
-NR-PRS-Beam-InformationItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+NR-PRS-Beam-InformationItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+NR-TADV ::= INTEGER (0.. 7690)
+
NumberOfAntennaPorts-EUTRA ::= ENUMERATED {
n1-or-n2,
n4,
@@ -720,10 +971,29 @@ NumberOfFrequencyHoppingBands ::= ENUMERATED {
...
}
+NumberOfTRPRxTEG ::= ENUMERATED {two, three, four, six, eight, ...}
+
+NumberOfTRPRxTxTEG ::= ENUMERATED {two, three, four, six, eight, ...}
+
NZP-CSI-RS-ResourceID::= INTEGER (0..191)
-- O
+OnDemandPRS-Info ::= SEQUENCE {
+ onDemandPRSRequestAllowed BIT STRING (SIZE (16)),
+ allowedResourceSetPeriodicityValues BIT STRING (SIZE (24)) OPTIONAL,
+ allowedPRSBandwidthValues BIT STRING (SIZE (64)) OPTIONAL,
+ allowedResourceRepetitionFactorValues BIT STRING (SIZE (8)) OPTIONAL,
+ allowedResourceNumberOfSymbolsValues BIT STRING (SIZE (8)) OPTIONAL,
+ allowedCombSizeValues BIT STRING (SIZE (8)) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { OnDemandPRS-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+OnDemandPRS-Info-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
OTDOACells ::= SEQUENCE (SIZE (1.. maxCellinRANnode)) OF SEQUENCE {
oTDOACellInfo OTDOACell-Information,
iE-Extensions ProtocolExtensionContainer { {OTDOACells-ExtIEs} } OPTIONAL,
@@ -742,7 +1012,7 @@ OTDOACell-Information-Item ::= CHOICE {
tAC TAC,
eARFCN EARFCN,
pRS-Bandwidth-EUTRA PRS-Bandwidth-EUTRA,
- pRS-ConfigurationIndex-EUTRA PRS-ConfigurationIndex-EUTRA,
+ pRS-ConfigurationIndex-EUTRA PRS-ConfigurationIndex-EUTRA,
cPLength-EUTRA CPLength-EUTRA,
numberOfDlFrames-EUTRA NumberOfDlFrames-EUTRA,
numberOfAntennaPorts-EUTRA NumberOfAntennaPorts-EUTRA,
@@ -757,7 +1027,7 @@ OTDOACell-Information-Item ::= CHOICE {
dL-Bandwidth-EUTRA DL-Bandwidth-EUTRA,
pRSOccasionGroup-EUTRA PRSOccasionGroup-EUTRA,
pRSFrequencyHoppingConfiguration-EUTRA PRSFrequencyHoppingConfiguration-EUTRA,
- oTDOACell-Information-Item-Extension ProtocolIE-Single-Container {{ OTDOACell-Information-Item-ExtensionIE }}
+ choice-Extension ProtocolIE-Single-Container {{ OTDOACell-Information-Item-ExtensionIE }}
}
OTDOACell-Information-Item-ExtensionIE NRPPA-PROTOCOL-IES ::= {
@@ -784,7 +1054,7 @@ OTDOA-Information-Item ::= ENUMERATED {
tpid,
tpType,
crsCPlength,
- dlBandwidth,
+ dlBandwidth,
multipleprsConfigurationsperCell,
prsOccasionGroup,
prsFrequencyHoppingConfiguration,
@@ -820,7 +1090,7 @@ OtherRATMeasurementResult ::= SEQUENCE (SIZE (1.. maxNoMeas)) OF OtherRATMeasure
OtherRATMeasuredResultsValue ::= CHOICE {
resultGERAN ResultGERAN,
resultUTRAN ResultUTRAN,
- otherRATMeasuredResultsValue-Extension ProtocolIE-Single-Container {{ OtherRATMeasuredResultsValue-ExtensionIE }}
+ choice-Extension ProtocolIE-Single-Container {{ OtherRATMeasuredResultsValue-ExtensionIE }}
}
@@ -846,10 +1116,10 @@ PathlossReferenceInformation ::= SEQUENCE {
PathlossReferenceInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
-}
+}
-PathlossReferenceSignal ::= CHOICE {
+PathlossReferenceSignal ::= CHOICE {
sSB-Reference SSB,
dL-PRS-Reference DL-PRS,
choice-Extension ProtocolIE-Single-Container {{ PathlossReferenceSignal-ExtensionIE }}
@@ -899,46 +1169,51 @@ PosSIB-Segments-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
}
PosSIB-Type ::= ENUMERATED {
- posSibType1-1,
- posSibType1-2,
- posSibType1-3,
- posSibType1-4,
+ posSibType1-1,
+ posSibType1-2,
+ posSibType1-3,
+ posSibType1-4,
posSibType1-5,
- posSibType1-6,
+ posSibType1-6,
posSibType1-7,
- posSibType1-8,
- posSibType2-1,
- posSibType2-2,
+ posSibType1-8,
+ posSibType2-1,
+ posSibType2-2,
posSibType2-3,
- posSibType2-4,
- posSibType2-5,
- posSibType2-6,
- posSibType2-7,
+ posSibType2-4,
+ posSibType2-5,
+ posSibType2-6,
+ posSibType2-7,
posSibType2-8,
- posSibType2-9,
- posSibType2-10,
- posSibType2-11,
- posSibType2-12,
- posSibType2-13,
- posSibType2-14,
- posSibType2-15,
+ posSibType2-9,
+ posSibType2-10,
+ posSibType2-11,
+ posSibType2-12,
+ posSibType2-13,
+ posSibType2-14,
+ posSibType2-15,
posSibType2-16,
- posSibType2-17,
- posSibType2-18,
- posSibType2-19,
- posSibType2-20,
- posSibType2-21,
- posSibType2-22,
+ posSibType2-17,
+ posSibType2-18,
+ posSibType2-19,
+ posSibType2-20,
+ posSibType2-21,
+ posSibType2-22,
posSibType2-23,
posSibType2-24,
- posSibType2-25,
- posSibType3-1,
+ posSibType2-25,
+ posSibType3-1,
posSibType4-1,
posSibType5-1,
- posSibType6-1,
+ posSibType6-1,
posSibType6-2,
- posSibType6-3,
- ...
+ posSibType6-3,
+ ...,
+ posSibType1-9,
+ posSibType1-10,
+ posSibType6-4,
+ posSibType6-5,
+ posSibType6-6
}
PosSRSResource-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResources)) OF PosSRSResource-Item
@@ -963,14 +1238,16 @@ PosSRSResource-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
}
+PosSRSResourceID-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResources)) OF SRSPosResourceID
+
PosSRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResourceSets)) OF PosSRSResourceSet-Item
-PosSRSResourceID-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResourcePerSet)) OF SRSPosResourceID
-
+PosSRSResourceIDPerSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-PosResourcePerSet)) OF SRSPosResourceID
+
PosSRSResourceSet-Item ::= SEQUENCE {
possrsResourceSetID INTEGER(0..15),
- possRSResourceID-List PosSRSResourceID-List,
+ possRSResourceIDPerSet-List PosSRSResourceIDPerSet-List,
posresourceSetType PosResourceSetType,
iE-Extensions ProtocolExtensionContainer { { PosSRSResourceSet-Item-ExtIEs} } OPTIONAL,
...
@@ -1021,6 +1298,8 @@ PosResourceSetTypeAperiodic-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+PreconfigurationResult ::= BIT STRING (SIZE(8))
+
PRS-Bandwidth-EUTRA ::= ENUMERATED {
bw6,
bw15,
@@ -1042,11 +1321,12 @@ PRSAngleItem ::= SEQUENCE {
}
PRSAngleItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-PRS-Resource-ID CRITICALITY ignore EXTENSION PRS-Resource-ID PRESENCE optional },
...
}
PRSInformationPos ::= SEQUENCE {
- pRS-IDPos INTEGER(0..255),
+ pRS-IDPos INTEGER(0..255),
pRS-Resource-Set-IDPos INTEGER(0..7),
pRS-Resource-IDPos INTEGER(0..63) OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PRSInformationPos-ExtIEs} } OPTIONAL,
@@ -1057,8 +1337,10 @@ PRSInformationPos-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+PRSConfigRequestType ::= ENUMERATED {configure, off, ...}
+
PRSConfiguration ::= SEQUENCE {
- pRSResourceSet-List PRSResourceSet-List,
+ pRSResourceSet-List PRSResourceSet-List,
iE-Extensions ProtocolExtensionContainer { { PRSConfiguration-ExtIEs} } OPTIONAL,
...
}
@@ -1083,7 +1365,7 @@ PRSMutingConfiguration-EUTRA ::= CHOICE {
two-hundred-and-fifty-six BIT STRING (SIZE (256)),
five-hundred-and-twelve BIT STRING (SIZE (512)),
one-thousand-and-twenty-four BIT STRING (SIZE (1024)),
- pRSMutingConfiguration-EUTRA-Extension ProtocolIE-Single-Container {{ PRSMutingConfiguration-EUTRA-ExtensionIE }}
+ choice-Extension ProtocolIE-Single-Container {{ PRSMutingConfiguration-EUTRA-ExtensionIE }}
}
PRSMutingConfiguration-EUTRA-ExtensionIE NRPPA-PROTOCOL-IES ::= {
@@ -1112,9 +1394,25 @@ PRSFrequencyHoppingConfiguration-EUTRA-Item-IEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+PRS-Measurements-Info-List ::= SEQUENCE (SIZE(1..maxFreqLayers)) OF PRS-Measurements-Info-List-Item
+
+PRS-Measurements-Info-List-Item ::= SEQUENCE {
+ pointA INTEGER (0..3279165),
+ measPRSPeriodicity ENUMERATED {ms20, ms40, ms80, ms160, ...},
+ measPRSOffset INTEGER (0..159, ...),
+ measurementPRSLength ENUMERATED {ms1dot5, ms3, ms3dot5, ms4, ms5dot5, ms6, ms10, ms20},
+ iE-Extensions ProtocolExtensionContainer { { PRS-Measurements-Info-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRS-Measurements-Info-List-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
PRSMuting::= SEQUENCE {
- pRSMutingOption1 PRSMutingOption1,
- pRSMutingOption2 PRSMutingOption2,
+ pRSMutingOption1 PRSMutingOption1 OPTIONAL,
+ pRSMutingOption2 PRSMutingOption2 OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PRSMuting-ExtIEs} } OPTIONAL,
...
}
@@ -1160,7 +1458,7 @@ PRSResource-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
PRSResource-QCLInfo ::= CHOICE {
qCLSourceSSB PRSResource-QCLSourceSSB,
- qCLSourcePRS PRSResource-QCLSourcePRS,
+ qCLSourcePRS PRSResource-QCLSourcePRS,
choice-Extension ProtocolIE-Single-Container {{ PRSResource-QCLInfo-ExtIEs }}
}
@@ -1170,7 +1468,7 @@ PRSResource-QCLInfo-ExtIEs NRPPA-PROTOCOL-IES ::= {
PRSResource-QCLSourceSSB ::= SEQUENCE {
pCI-NR INTEGER(0..1007),
- sSB-Index SSB-Index OPTIONAL,
+ sSB-Index SSB-Index OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PRSResource-QCLSourceSSB-ExtIEs} } OPTIONAL,
...
}
@@ -1181,7 +1479,7 @@ PRSResource-QCLSourceSSB-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
PRSResource-QCLSourcePRS ::= SEQUENCE {
qCLSourcePRSResourceSetID PRS-Resource-Set-ID,
- qCLSourcePRSResourceID PRS-Resource-ID OPTIONAL,
+ qCLSourcePRSResourceID PRS-Resource-ID OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { PRSResource-QCLSourcePRS-ExtIEs} } OPTIONAL,
...
}
@@ -1201,14 +1499,14 @@ PRSResourceSet-Item ::= SEQUENCE {
pointA INTEGER (0..3279165),
combSize ENUMERATED{n2, n4, n6, n12, ...},
cPType ENUMERATED{normal, extended, ...},
- resourceSetPeriodicity ENUMERATED{n4,n5,n8,n10,n16,n20,n32,n40,n64,n80,n160,n320,n640,n1280,n2560,n5120,n10240,n20480,n40960, n81920,...},
+ resourceSetPeriodicity ENUMERATED{n4,n5,n8,n10,n16,n20,n32,n40,n64,n80,n160,n320,n640,n1280,n2560,n5120,n10240,n20480,n40960, n81920,..., n128, n256, n512},
resourceSetSlotOffset INTEGER(0..81919,...),
resourceRepetitionFactor ENUMERATED{rf1,rf2,rf4,rf6,rf8,rf16,rf32,...},
resourceTimeGap ENUMERATED{tg1,tg2,tg4,tg8,tg16,tg32,...},
resourceNumberofSymbols ENUMERATED{n2,n4,n6,n12,...},
pRSMuting PRSMuting OPTIONAL,
pRSResourceTransmitPower INTEGER(-60..50),
- pRSResource-List PRSResource-List,
+ pRSResource-List PRSResource-List,
iE-Extensions ProtocolExtensionContainer { { PRSResourceSet-Item-ExtIEs} } OPTIONAL,
...
}
@@ -1223,12 +1521,99 @@ PRS-Resource-Set-ID ::= INTEGER(0..7)
PRS-ID ::= INTEGER(0..255)
+PRSTransmissionOffIndication ::= CHOICE {
+ pRSTransmissionOffPerTRP NULL,
+ pRSTransmissionOffPerResourceSet PRSTransmissionOffPerResourceSet,
+ pRSTransmissionOffPerResource PRSTransmissionOffPerResource,
+ choice-Extension ProtocolIE-Single-Container {{ PRSTransmissionOffIndication-ExtIEs }}
+}
+
+PRSTransmissionOffIndication-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ ...
+}
+
+PRSTransmissionOffPerResource ::= SEQUENCE (SIZE (1..maxnoofPRSresourceSet)) OF PRSTransmissionOffPerResource-Item
+
+PRSTransmissionOffPerResource-Item ::= SEQUENCE {
+ pRSResourceSetID PRS-Resource-Set-ID,
+ pRSTransmissionOffIndicationPerResourceList SEQUENCE (SIZE(1.. maxnoofPRSresource)) OF PRSTransmissionOffIndicationPerResource-Item,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffPerResource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffPerResource-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTransmissionOffIndicationPerResource-Item ::= SEQUENCE {
+ pRSResourceID PRS-Resource-ID,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffIndicationPerResource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffIndicationPerResource-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTransmissionOffInformation ::= SEQUENCE {
+ pRSTransmissionOffIndication PRSTransmissionOffIndication,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTransmissionOffPerResourceSet ::= SEQUENCE (SIZE (1..maxnoofPRSresourceSet)) OF PRSTransmissionOffPerResourceSet-Item
+
+PRSTransmissionOffPerResourceSet-Item ::= SEQUENCE {
+ pRSResourceSetID PRS-Resource-Set-ID,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionOffPerResourceSet-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTransmissionOffPerResourceSet-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PRSTRPList ::= SEQUENCE (SIZE(1.. maxnoTRPs)) OF PRSTRPItem
+
+PRSTRPItem ::= SEQUENCE {
+ tRP-ID TRP-ID,
+ requestedDLPRSTransmissionCharacteristics RequestedDLPRSTransmissionCharacteristics OPTIONAL,
+-- The IE shall be present if the PRS Configuration Request Type IE is set to “configure” --
+ pRSTransmissionOffInformation PRSTransmissionOffInformation OPTIONAL,
+-- The IE shall be present if the PRS Configuration Request Type IE is set to “off” --
+ iE-Extensions ProtocolExtensionContainer { { PRSTRPItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTRPItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+PRSTransmissionTRPList ::= SEQUENCE (SIZE(1.. maxnoTRPs)) OF PRSTransmissionTRPItem
+
+PRSTransmissionTRPItem ::= SEQUENCE {
+ tRP-ID TRP-ID,
+ pRSConfiguration PRSConfiguration,
+ iE-Extensions ProtocolExtensionContainer { { PRSTransmissionTRPItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRSTransmissionTRPItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
-- Q
-- R
-ReferenceSignal ::= CHOICE {
+ReferenceSignal ::= CHOICE {
nZP-CSI-RS NZP-CSI-RS-ResourceID,
sSB SSB,
sRS SRSResourceID,
@@ -1253,8 +1638,8 @@ ReferencePoint-ExtIEs NRPPA-PROTOCOL-IES ::= {
}
CoordinateID ::= INTEGER (0..511, ...)
-RelativeGeodeticLocation ::= SEQUENCE {
- milli-Arc-SecondUnits ENUMERATED {zerodot03, zerodot3, three, ...}, heightUnits ENUMERATED {mm, cm, m, ...},
+RelativeGeodeticLocation ::= SEQUENCE {
+ milli-Arc-SecondUnits ENUMERATED {zerodot03, zerodot3, three, ...}, heightUnits ENUMERATED {mm, cm, m, ...},
deltaLatitude INTEGER (-1024.. 1023),
deltaLongitude INTEGER (-1024.. 1023),
deltaHeight INTEGER (-1024.. 1023),
@@ -1296,12 +1681,57 @@ RelativePathDelay-ExtIEs NRPPA-PROTOCOL-IES ::= {
...
}
+RepetitionFactorExtended ::= ENUMERATED {n3, n5, n6, n7, n8, n10, n12, n14, ...}
+
ReportCharacteristics ::= ENUMERATED {
onDemand,
periodic,
...
}
+RequestedDLPRSTransmissionCharacteristics ::= SEQUENCE {
+ requestedDLPRSResourceSet-List RequestedDLPRSResourceSet-List,
+ numberofFrequencyLayers INTEGER(1..4) OPTIONAL,
+ startTimeAndDuration StartTimeAndDuration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RequestedDLPRSTransmissionCharacteristics-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RequestedDLPRSTransmissionCharacteristics-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RequestedDLPRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoofPRSresourceSet)) OF RequestedDLPRSResourceSet-Item
+
+RequestedDLPRSResourceSet-Item ::= SEQUENCE {
+ pRSbandwidth INTEGER(1..63) OPTIONAL,
+ combSize ENUMERATED{n2, n4, n6, n12, ...} OPTIONAL,
+ resourceSetPeriodicity ENUMERATED{n4,n5,n8,n10,n16,n20,n32,n40,n64,n80,n160,n320,n640,n1280,n2560,n5120,n10240,n20480,n40960, n81920,..., n128, n256 ,n512} OPTIONAL,
+ resourceRepetitionFactor ENUMERATED{rf1,rf2,rf4,rf6,rf8,rf16,rf32,...} OPTIONAL,
+ resourceNumberofSymbols ENUMERATED{n2,n4,n6,n12,...} OPTIONAL,
+ requestedDLPRSResource-List RequestedDLPRSResource-List OPTIONAL,
+ resourceSetStartTimeAndDuration StartTimeAndDuration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RequestedDLPRSResourceSet-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RequestedDLPRSResourceSet-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RequestedDLPRSResource-List::= SEQUENCE (SIZE (1..maxnoofPRSresource)) OF RequestedDLPRSResource-Item
+
+RequestedDLPRSResource-Item ::= SEQUENCE {
+ qCLInfo PRSResource-QCLInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RequestedDLPRSResource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RequestedDLPRSResource-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
RequestedSRSTransmissionCharacteristics ::= SEQUENCE {
numberOfTransmissions INTEGER (0..500,...) OPTIONAL,
-- The IE shall be present if the Resource Type IE is set to “periodic” --
@@ -1319,7 +1749,7 @@ RequestedSRSTransmissionCharacteristics-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
}
-SRSResourceSet-Item ::= SEQUENCE {
+SRSResourceSet-Item ::= SEQUENCE {
numberOfSRSResourcePerSet INTEGER (1..16, ...) OPTIONAL,
periodicityList PeriodicityList OPTIONAL,
spatialRelationInformation SpatialRelationInfo OPTIONAL,
@@ -1329,9 +1759,12 @@ SRSResourceSet-Item ::= SEQUENCE {
}
SRSResourceSet-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSSpatialRelationPerSRSResource CRITICALITY ignore EXTENSION SpatialRelationPerSRSResource PRESENCE optional},
...
}
+RequestType ::= ENUMERATED {activate, deactivate, ...}
+
ResourceSetType ::= CHOICE {
periodic ResourceSetTypePeriodic,
semi-persistent ResourceSetTypeSemi-persistent,
@@ -1385,7 +1818,7 @@ ResourceType ::= CHOICE {
ResourceType-ExtIEs NRPPA-PROTOCOL-IES ::= {
...
}
-
+
ResourceTypePeriodic ::= SEQUENCE {
periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, ...},
offset INTEGER(0..2559, ...),
@@ -1431,7 +1864,7 @@ ResourceTypePos-ExtIEs NRPPA-PROTOCOL-IES ::= {
}
ResourceTypePeriodicPos ::= SEQUENCE {
-periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ...},
+periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ..., slot128, slot256, slot512, slot20480},
offset INTEGER(0..81919, ...),
iE-Extensions ProtocolExtensionContainer { { ResourceTypePeriodicPos-ExtIEs} } OPTIONAL,
...
@@ -1442,7 +1875,7 @@ ResourceTypePeriodicPos-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
}
ResourceTypeSemi-persistentPos ::= SEQUENCE {
-periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ...},
+periodicity ENUMERATED{slot1, slot2, slot4, slot5, slot8, slot10, slot16, slot20, slot32, slot40, slot64, slot80, slot160, slot320, slot640, slot1280, slot2560, slot5120, slot10240, slot40960, slot81920, ..., slot128, slot256, slot512, slot20480},
offset INTEGER(0..81919, ...),
iE-Extensions ProtocolExtensionContainer { { ResourceTypeSemi-persistentPos-ExtIEs} } OPTIONAL,
...
@@ -1462,6 +1895,18 @@ ResourceTypeAperiodicPos-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+ResponseTime ::= SEQUENCE {
+ time INTEGER (1..128,...),
+ timeUnit ENUMERATED {second, ten-seconds, ten-milliseconds,...},
+ iE-Extensions ProtocolExtensionContainer { { ResponseTime-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ResponseTime-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
ResultCSI-RSRP ::= SEQUENCE (SIZE (1.. maxCellReportNR)) OF ResultCSI-RSRP-Item
ResultCSI-RSRP-Item ::= SEQUENCE {
@@ -1681,11 +2126,13 @@ ResultUTRAN-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
RSSI ::= INTEGER (0..63, ...)
+RxTxTimingErrorMargin ::= ENUMERATED {tc0dot5, tc1, tc2, tc4, tc8, tc12, tc16, tc20, tc24, tc32, tc40, tc48, tc64, tc80, tc96, tc128, ...}
+
-- S
SCS-SpecificCarrier ::= SEQUENCE {
offsetToCarrier INTEGER (0..2199,...),
- subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,...},
+ subcarrierSpacing ENUMERATED {kHz15, kHz30, kHz60, kHz120,..., kHz480, kHz960},
carrierBandwidth INTEGER (1..275,...),
iE-Extensions ProtocolExtensionContainer { { SCS-SpecificCarrier-ExtIEs } } OPTIONAL,
...
@@ -1693,7 +2140,7 @@ iE-Extensions ProtocolExtensionContainer { { SCS-SpecificCarrier-ExtIEs } }
SCS-SpecificCarrier-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
-}
+}
Search-window-information ::= SEQUENCE {
@@ -1723,7 +2170,7 @@ SpatialDirectionInformation ::= SEQUENCE {
SpatialDirectionInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
-}
+}
SpatialRelationInfo ::= SEQUENCE {
@@ -1750,6 +2197,28 @@ SpatialRelationforResourceIDItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
}
+SpatialRelationPerSRSResource ::= SEQUENCE {
+ spatialRelationPerSRSResource-List SpatialRelationPerSRSResource-List,
+ iE-Extensions ProtocolExtensionContainer { { SpatialRelationPerSRSResource-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SpatialRelationPerSRSResource-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SpatialRelationPerSRSResource-List::= SEQUENCE(SIZE (1.. maxnoSRS-ResourcePerSet)) OF SpatialRelationPerSRSResourceItem
+
+SpatialRelationPerSRSResourceItem ::= SEQUENCE {
+ referenceSignal ReferenceSignal,
+ iE-Extensions ProtocolExtensionContainer { {SpatialRelationPerSRSResourceItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SpatialRelationPerSRSResourceItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SpatialRelationPos ::= CHOICE {
sSBPos SSB,
pRSInformationPos PRSInformationPos,
@@ -1759,7 +2228,7 @@ SpatialRelationPos ::= CHOICE {
SpatialInformationPos-ExtIEs NRPPA-PROTOCOL-IES ::= {
...
}
-
+
SRSConfig ::= SEQUENCE {
@@ -1799,32 +2268,39 @@ SRSConfiguration ::= SEQUENCE {
SRSConfiguration-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
-}
+}
SrsFrequency ::= INTEGER (0..3279165)
+SRSPortIndex ::= ENUMERATED{id1000, id1001, id1002, id1003, ...}
+
SRSPosResourceID ::= INTEGER (0..63)
SRSResource::= SEQUENCE {
- sRSResourceID SRSResourceID,
- nrofSRS-Ports ENUMERATED {port1, ports2, ports4},
+ sRSResourceID SRSResourceID,
+ nrofSRS-Ports ENUMERATED {port1, ports2, ports4},
transmissionComb TransmissionComb,
- startPosition INTEGER (0..13),
- nrofSymbols ENUMERATED {n1, n2, n4},
- repetitionFactor ENUMERATED {n1, n2, n4},
- freqDomainPosition INTEGER (0..67),
- freqDomainShift INTEGER (0..268),
- c-SRS INTEGER (0..63),
- b-SRS INTEGER (0..3),
- b-hop INTEGER (0..3),
- groupOrSequenceHopping ENUMERATED { neither, groupHopping, sequenceHopping },
+ startPosition INTEGER (0..13),
+ nrofSymbols ENUMERATED {n1, n2, n4},
+ repetitionFactor ENUMERATED {n1, n2, n4},
+ freqDomainPosition INTEGER (0..67),
+ freqDomainShift INTEGER (0..268),
+ c-SRS INTEGER (0..63),
+ b-SRS INTEGER (0..3),
+ b-hop INTEGER (0..3),
+ groupOrSequenceHopping ENUMERATED { neither, groupHopping, sequenceHopping },
resourceType ResourceType,
- sequenceId INTEGER (0..1023),
+ sequenceId INTEGER (0..1023),
iE-Extensions ProtocolExtensionContainer { { SRSResource-ExtIEs } } OPTIONAL,
...
}
SRSResource-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-nrofSymbolsExtended CRITICALITY ignore EXTENSION NrofSymbolsExtended PRESENCE optional}|
+ { ID id-repetitionFactorExtended CRITICALITY ignore EXTENSION RepetitionFactorExtended PRESENCE optional}|
+ { ID id-StartRBHopping CRITICALITY ignore EXTENSION StartRBHopping PRESENCE optional}|
+ { ID id-StartRBIndex CRITICALITY ignore EXTENSION StartRBIndex PRESENCE optional},
+
...
}
@@ -1832,7 +2308,7 @@ SRSResourceID ::= INTEGER (0..63)
SRSResource-List ::= SEQUENCE (SIZE (1..maxnoSRS-Resources)) OF SRSResource
-SRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-ResourceSets)) OF SRSResourceSet
+SRSResourceSet-List ::= SEQUENCE (SIZE (1..maxnoSRS-ResourceSets)) OF SRSResourceSet
SRSResourceID-List::= SEQUENCE (SIZE (1..maxnoSRS-ResourcePerSet)) OF SRSResourceID
@@ -1860,6 +2336,34 @@ SRSResourceTrigger-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+SRSResourcetype ::= SEQUENCE {
+ sRSResourceTypeChoice SRSResourceTypeChoice,
+ iE-Extensions ProtocolExtensionContainer { { SRSResourcetype-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SRSResourcetype-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSPortIndex CRITICALITY ignore EXTENSION SRSPortIndex PRESENCE optional},
+ ...
+}
+
+SRSResourceTypeChoice ::= CHOICE {
+ sRSResourceInfo SRSInfo,
+ posSRSResourceInfo PosSRSInfo,
+ ...
+}
+
+SRSInfo ::= SEQUENCE {
+ sRSResource SRSResourceID,
+ ...
+}
+
+SRSTransmissionStatus ::= ENUMERATED {stopped, ...}
+
+PosSRSInfo ::= SEQUENCE {
+ posSRSResourceID SRSPosResourceID,
+ ...
+}
SSBInfo ::= SEQUENCE {
@@ -1915,6 +2419,31 @@ SSB-Index ::= INTEGER(0..63)
SSID ::= OCTET STRING (SIZE(1..32))
+
+StartRBIndex ::= CHOICE{
+ freqScalingFactor2 INTEGER(0..1),
+ freqScalingFactor4 INTEGER(0..3),
+ choice-extension ProtocolIE-Single-Container { { StartRBIndex-ExtIEs} }
+}
+
+StartRBIndex-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ ...
+}
+
+StartRBHopping ::= ENUMERATED {enable}
+
+
+StartTimeAndDuration ::= SEQUENCE {
+ startTime RelativeTime1900 OPTIONAL,
+ duration INTEGER (0..90060, ...) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { StartTimeAndDuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+StartTimeAndDuration-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SystemFrameNumber ::= INTEGER (0..1023)
SystemInformation ::= SEQUENCE (SIZE (1.. maxNrOfPosSImessage)) OF SEQUENCE {
@@ -1943,10 +2472,44 @@ TDD-Config-EUTRA-Item-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+TRPTEGInformation ::= CHOICE {
+ rxTx-TEG RxTxTEG,
+ rx-TEG RxTEG,
+ choice-extension ProtocolIE-Single-Container { { TRPTEGInformation-ExtIEs} }
+}
+
+TRPTEGInformation-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ ...
+}
+
+RxTxTEG ::= SEQUENCE {
+ tRP-RxTx-TEGInformation TRP-RxTx-TEGInformation,
+ tRP-Tx-TEGInformation TRP-Tx-TEGInformation OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { RxTxTEG-ExtIEs } } OPTIONAL,
+ ...
+}
+
+RxTxTEG-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RxTEG ::= SEQUENCE {
+ tRP-Rx-TEGInformation TRP-Rx-TEGInformation,
+ tRP-Tx-TEGInformation TRP-Tx-TEGInformation,
+ iE-extensions ProtocolExtensionContainer { { RxTEG-ExtIEs } } OPTIONAL,
+ ...
+}
+
+RxTEG-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TimingErrorMargin ::= ENUMERATED {tc0, tc2, tc4, tc6, tc8, tc12, tc16, tc20, tc24, tc32, tc40, tc48, tc56, tc64, tc72, tc80, ...}
TF-Configuration ::= SEQUENCE {
sSB-frequency INTEGER (0..3279165),
- sSB-subcarrier-spacing ENUMERATED {kHz15, kHz30, kHz120, kHz240, ...},
+ sSB-subcarrier-spacing ENUMERATED {kHz15, kHz30, kHz120, kHz240, ..., kHz60, kHz480, kHz960},
+ -- The value kHz60 is not supported in this version of the specification.
sSB-Transmit-power INTEGER (-60..50),
sSB-periodicity ENUMERATED {ms5, ms10, ms20, ms40, ms80, ms160, ...},
sSB-half-frame-offset INTEGER(0..1),
@@ -2004,9 +2567,21 @@ TransmissionComb ::= CHOICE {
choice-extension ProtocolIE-Single-Container { { TransmissionComb-ExtIEs} }
}
TransmissionComb-ExtIEs NRPPA-PROTOCOL-IES ::= {
+{ ID id-transmissionCombn8 CRITICALITY reject TYPE TransmissionCombn8 PRESENCE mandatory},
...
}
+TransmissionCombn8 ::= SEQUENCE {
+ combOffset-n8 INTEGER (0..7),
+ cyclicShift-n8 INTEGER (0..5),
+ iE-Extensions ProtocolExtensionContainer { { TransmissionCombn8-ExtIEs } } OPTIONAL
+}
+
+TransmissionCombn8-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
TransmissionCombPos ::= CHOICE {
n2 SEQUENCE {
combOffset-n2 INTEGER (0..1),
@@ -2027,6 +2602,77 @@ TransmissionCombPos-ExtIEs NRPPA-PROTOCOL-IES ::= {
...
}
+TRPBeamAntennaInformation ::= SEQUENCE {
+ choice-TRP-Beam-Antenna-Info-Item Choice-TRP-Beam-Antenna-Info-Item,
+ iE-Extensions ProtocolExtensionContainer {{ TRPBeamAntennaInformation-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRPBeamAntennaInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Choice-TRP-Beam-Antenna-Info-Item ::= CHOICE {
+ reference TRP-ID,
+ explicit TRP-BeamAntennaExplicitInformation,
+ noChange NULL,
+ choice-extension ProtocolIE-Single-Container { { Choice-TRP-Beam-Info-Item-ExtIEs } }
+}
+
+Choice-TRP-Beam-Info-Item-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ ...
+}
+
+TRP-BeamAntennaExplicitInformation ::= SEQUENCE {
+ trp-BeamAntennaAngles TRP-BeamAntennaAngles,
+ lcs-to-gcs-translation LCS-to-GCS-Translation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-BeamAntennaExplicitInformation-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-BeamAntennaExplicitInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-BeamAntennaAngles ::= SEQUENCE (SIZE (1.. maxnoAzimuthAngles)) OF TRP-BeamAntennaAnglesList-Item
+
+TRP-BeamAntennaAnglesList-Item ::= SEQUENCE {
+ trp-azimuth-angle INTEGER (0..359),
+ trp-azimuth-angle-fine INTEGER (0..9) OPTIONAL,
+ trp-elevation-angle-list SEQUENCE (SIZE (1.. maxnoElevationAngles)) OF TRP-ElevationAngleList-Item,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-BeamAntennaAnglesList-Item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-BeamAntennaAnglesList-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-ElevationAngleList-Item ::= SEQUENCE {
+ trp-elevation-angle INTEGER (0..180),
+ trp-elevation-angle-fine INTEGER (0..9) OPTIONAL,
+ trp-beam-power-list SEQUENCE (SIZE (2..maxNumResourcesPerAngle)) OF TRP-Beam-Power-Item,
+ iE-Extensions ProtocolExtensionContainer {{ TRP-ElevationAngleList-Item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-ElevationAngleList-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-Beam-Power-Item ::= SEQUENCE {
+ pRSResourceSetID PRS-Resource-Set-ID OPTIONAL,
+ pRSResourceID PRS-Resource-ID,
+ relativePower INTEGER (0..30), --negative value
+ relativePowerFine INTEGER (0..9) OPTIONAL, --negative value
+ iE-Extensions ProtocolExtensionContainer {{ TRP-Beam-Power-Item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+TRP-Beam-Power-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TRPMeasurementQuantities ::= SEQUENCE (SIZE (1..maxnoPosMeas)) OF TRPMeasurementQuantitiesList-Item
TRPMeasurementQuantitiesList-Item ::= SEQUENCE {
@@ -2041,11 +2687,13 @@ TRPMeasurementQuantitiesList-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
}
TRPMeasurementQuantities-Item ::= ENUMERATED {
- gNB-RxTxTimeDiff,
- uL-SRS-RSRP,
- uL-AoA,
- uL-RTOA,
- ...
+ gNB-RxTxTimeDiff,
+ uL-SRS-RSRP,
+ uL-AoA,
+ uL-RTOA,
+ ...,
+ multiple-UL-AoA,
+ uL-SRS-RSRPP
}
TrpMeasurementResult ::= SEQUENCE (SIZE (1.. maxnoPosMeas)) OF TrpMeasurementResultItem
@@ -2059,6 +2707,9 @@ TrpMeasurementResultItem ::= SEQUENCE {
}
TrpMeasurementResultItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSResourcetype CRITICALITY ignore EXTENSION SRSResourcetype PRESENCE optional}|
+ { ID id-ARP-ID CRITICALITY ignore EXTENSION ARP-ID PRESENCE optional}|
+ { ID id-LoS-NLoSInformation CRITICALITY ignore EXTENSION LoS-NLoSInformation PRESENCE optional },
...
}
@@ -2071,6 +2722,9 @@ TrpMeasuredResultsValue ::= CHOICE {
}
TrpMeasuredResultsValue-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-ZoA CRITICALITY reject TYPE ZoA PRESENCE mandatory}|
+ { ID id-MultipleULAoA CRITICALITY reject TYPE MultipleULAoA PRESENCE mandatory}|
+ { ID id-UL-SRS-RSRPP CRITICALITY reject TYPE UL-SRS-RSRPP PRESENCE mandatory},
...
}
@@ -2111,21 +2765,24 @@ TrpMeasurementAngleQuality-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
TRP-MeasurementRequestList ::= SEQUENCE (SIZE (1..maxNoOfMeasTRPs)) OF TRP-MeasurementRequestItem
TRP-MeasurementRequestItem ::= SEQUENCE {
- tRP-ID TRP-ID,
- search-window-information Search-window-information OPTIONAL,
+ tRP-ID TRP-ID,
+ search-window-information Search-window-information OPTIONAL,
iE-extensions ProtocolExtensionContainer { { TRP-MeasurementRequestItem-ExtIEs } } OPTIONAL,
...
}
TRP-MeasurementRequestItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
- { ID id-Cell-ID CRITICALITY ignore EXTENSION CGI-NR PRESENCE optional },
+ { ID id-Cell-ID CRITICALITY ignore EXTENSION CGI-NR PRESENCE optional }|
+ { ID id-AoA-SearchWindow CRITICALITY ignore EXTENSION AoA-AssistanceInfo PRESENCE optional }|
+ { ID id-NumberOfTRPRxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTEG PRESENCE optional }|
+ { ID id-NumberOfTRPRxTxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTxTEG PRESENCE optional },
...
}
TRP-MeasurementResponseList ::= SEQUENCE (SIZE (1..maxNoOfMeasTRPs)) OF TRP-MeasurementResponseItem
TRP-MeasurementResponseItem ::= SEQUENCE {
- tRP-ID TRP-ID,
+ tRP-ID TRP-ID,
measurementResult TrpMeasurementResult,
iE-extensions ProtocolExtensionContainer { { TRP-MeasurementResponseItem-ExtIEs } } OPTIONAL,
...
@@ -2136,6 +2793,23 @@ TRP-MeasurementResponseItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+
+TRP-MeasurementUpdateList ::= SEQUENCE (SIZE (1..maxNoOfMeasTRPs)) OF TRP-MeasurementUpdateItem
+
+TRP-MeasurementUpdateItem ::= SEQUENCE {
+ tRP-ID TRP-ID,
+ aoA-window-information AoA-AssistanceInfo OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { TRP-MeasurementUpdateItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-MeasurementUpdateItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-NumberOfTRPRxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTEG PRESENCE optional }|
+ { ID id-NumberOfTRPRxTxTEG CRITICALITY ignore EXTENSION NumberOfTRPRxTxTEG PRESENCE optional },
+ ...
+}
+
+
TRPInformationListTRPResp ::= SEQUENCE (SIZE (1.. maxnoTRPs)) OF SEQUENCE {
tRPInformation TRPInformation,
iE-Extensions ProtocolExtensionContainer { {TRPInformationTRPResp-ExtIEs} } OPTIONAL,
@@ -2162,7 +2836,7 @@ TRPInformationTypeResponseList ::= SEQUENCE (SIZE (1..maxnoTRPInfoTypes)) OF TRP
TRPInformationTypeResponseItem ::= CHOICE {
pCI-NR INTEGER (0..1007),
cGI-NR CGI-NR,
- aRFCN INTEGER (0..3279165),
+ aRFCN INTEGER (0..3279165),
pRSConfiguration PRSConfiguration,
sSBinformation SSBInfo,
sFNInitialisationTime RelativeTime1900,
@@ -2172,6 +2846,10 @@ TRPInformationTypeResponseItem ::= CHOICE {
}
TRPInformationTypeResponseItem-ExtIEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-TRPType CRITICALITY reject TYPE TRPType PRESENCE mandatory }|
+ { ID id-OnDemandPRS CRITICALITY reject TYPE OnDemandPRS-Info PRESENCE mandatory}|
+ { ID id-TRPTxTEGAssociation CRITICALITY reject TYPE TRPTxTEGAssociation PRESENCE mandatory}|
+ { ID id-TRPBeamAntennaInformation CRITICALITY reject TYPE TRPBeamAntennaInformation PRESENCE mandatory },
...
}
@@ -2187,14 +2865,18 @@ TRPInformationTypeItemTRPReq NRPPA-PROTOCOL-IES ::= {
TRPInformationTypeItem ::= ENUMERATED {
nrPCI,
nG-RAN-CGI,
- arfcn,
+ arfcn,
pRSConfig,
sSBInfo,
sFNInitTime,
spatialDirectInfo,
geoCoord,
- ...
+ ...,
+ trp-type,
+ ondemandPRSInfo,
+ trpTxTeg,
+ beam-antenna-info
}
TRPList ::= SEQUENCE (SIZE(1.. maxnoTRPs)) OF TRPItem
@@ -2255,6 +2937,21 @@ TRPPositionReferenced-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
...
}
+TRP-PRS-Information-List ::= SEQUENCE (SIZE(1.. maxnoPRSTRPs)) OF TRP-PRS-Information-List-Item
+
+TRP-PRS-Information-List-Item ::= SEQUENCE {
+ tRP-ID TRP-ID,
+ nR-PCI NR-PCI,
+ cGI-NR CGI-NR OPTIONAL,
+ pRSConfiguration PRSConfiguration,
+ iE-Extensions ProtocolExtensionContainer { { TRP-PRS-Information-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TRP-PRS-Information-List-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TRPReferencePointType ::= CHOICE {
tRPPositionRelativeGeodetic RelativeGeodeticLocation,
tRPPositionRelativeCartesian RelativeCartesianLocation,
@@ -2265,6 +2962,73 @@ TRPReferencePointType-ExtIEs NRPPA-PROTOCOL-IES ::= {
...
}
+TRP-Rx-TEGInformation ::= SEQUENCE {
+ tRP-Rx-TEGID INTEGER (0..31),
+ tRP-Rx-TimingErrorMargin TimingErrorMargin,
+ iE-Extensions ProtocolExtensionContainer { { TRP-Rx-TEGInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-Rx-TEGInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-RxTx-TEGInformation ::= SEQUENCE {
+ tRP-RxTx-TEGID INTEGER (0..255),
+ tRP-RxTx-TimingErrorMargin RxTxTimingErrorMargin,
+ iE-Extensions ProtocolExtensionContainer { { TRP-RxTx-TEGInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-RxTx-TEGInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRP-Tx-TEGInformation ::= SEQUENCE {
+ tRP-Tx-TEGID INTEGER (0..7),
+ tRP-Tx-TimingErrorMargin TimingErrorMargin,
+ iE-Extensions ProtocolExtensionContainer { { TRP-Tx-TEGInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRP-Tx-TEGInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TRPTxTEGAssociation ::= SEQUENCE (SIZE(1.. maxnoTRPTEGs)) OF TRPTEGItem
+
+TRPTEGItem ::= SEQUENCE {
+ tRP-Tx-TEGInformation TRP-Tx-TEGInformation,
+ dl-PRSResourceSetID PRS-Resource-Set-ID,
+ dl-PRSResourceID-List SEQUENCE (SIZE(1.. maxPRS-ResourcesPerSet)) OF DLPRSResourceID-Item OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { TRPTEGItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+TRPTEGItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DLPRSResourceID-Item ::= SEQUENCE {
+ dl-PRSResourceID PRS-Resource-ID,
+ iE-Extensions ProtocolExtensionContainer { { DLPRSResource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DLPRSResource-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+TRPType ::= ENUMERATED {
+ prsOnlyTP,
+ srsOnlyRP,
+ tp,
+ rp,
+ trp,
+ ...
+}
+
TypeOfError ::= ENUMERATED {
not-understood,
@@ -2278,6 +3042,57 @@ UARFCN ::= INTEGER (0..16383, ...)
UE-Measurement-ID ::= INTEGER (1..15, ..., 16..256)
+UEReportingInformation::= SEQUENCE {
+ reportingAmount ENUMERATED {ma0, ma1, ma2, ma4, ma8, ma16, ma32, ma64},
+ reportingInterval ENUMERATED {none, one, two, four, eight, ten, sixteen, twenty, thirty-two, sixty-four, ...},
+ iE-extensions ProtocolExtensionContainer { { UEReportingInformation-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UEReportingInformation-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-TEG-ReportingPeriodicity ::= ENUMERATED {
+ ms160,
+ ms320,
+ ms1280,
+ ms2560,
+ ms61440,
+ ms81920,
+ ms368640,
+ ms737280,
+ ...
+}
+
+UETxTEGAssociationList ::= SEQUENCE (SIZE(1.. maxnoUETEGs)) OF UETxTEGAssociationItem
+
+UETxTEGAssociationItem ::= SEQUENCE {
+ uE-Tx-TEG-ID INTEGER (0..7),
+ posSRSResourceID-List PosSRSResourceID-List,
+ timeStamp TimeStamp,
+ carrierFreq CarrierFreq OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UETxTEGAssociationItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UETxTEGAssociationItem-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-UETxTimingErrorMargin CRITICALITY ignore EXTENSION TimingErrorMargin PRESENCE optional },
+ ...
+}
+
+SRSResourceID-Item ::= SEQUENCE {
+ sRSResourceID SRSResourceID,
+ iE-Extensions ProtocolExtensionContainer { { SRSResourceID-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SRSResourceID-Item-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-TEG-Info-Request ::= ENUMERATED {onDemand, periodic, stop, ...}
+
UTRA-EcN0 ::= INTEGER (0..49, ...)
UTRA-RSCP ::= INTEGER (-5..91, ...)
@@ -2286,7 +3101,7 @@ UTRA-RSCP ::= INTEGER (-5..91, ...)
UL-AoA ::= SEQUENCE {
azimuthAoA INTEGER (0..3599),
zenithAoA INTEGER (0..1799) OPTIONAL,
- lCS-to-GCS-TranslationAoA LCS-to-GCS-TranslationAoA OPTIONAL,
+ lCS-to-GCS-Translation LCS-to-GCS-Translation OPTIONAL,
iE-extensions ProtocolExtensionContainer { { UL-AoA-ExtIEs } } OPTIONAL,
...
}
@@ -2298,11 +3113,13 @@ UL-AoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
UL-RTOAMeasurement ::= SEQUENCE {
uLRTOAmeas ULRTOAMeas,
- additionalPathList AdditionalPathList OPTIONAL,
+ additionalPathList AdditionalPathList OPTIONAL,
iE-extensions ProtocolExtensionContainer { { UL-RTOAMeasurement-ExtIEs } } OPTIONAL, ...
}
UL-RTOAMeasurement-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-ExtendedAdditionalPathList CRITICALITY ignore EXTENSION ExtendedAdditionalPathList PRESENCE optional}|
+ { ID id-TRP-Rx-TEGInformation CRITICALITY ignore EXTENSION TRP-Rx-TEGInformation PRESENCE optional},
...
}
@@ -2312,7 +3129,7 @@ ULRTOAMeas::= CHOICE {
k2 INTEGER (0.. 492513),
k3 INTEGER (0.. 246257),
k4 INTEGER (0.. 123129),
- k5 INTEGER (0.. 61565),
+ k5 INTEGER (0.. 61565),
choice-extension ProtocolIE-Single-Container { { ULRTOAMeas-ExtIEs } }
}
ULRTOAMeas-ExtIEs NRPPA-PROTOCOL-IES ::= {
@@ -2321,9 +3138,24 @@ ULRTOAMeas-ExtIEs NRPPA-PROTOCOL-IES ::= {
UL-SRS-RSRP ::= INTEGER (0..126)
+UL-SRS-RSRPP ::= SEQUENCE {
+ firstPathRSRPP INTEGER (0..126),
+ iE-extensions ProtocolExtensionContainer { { UL-SRS-RSRPP-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UL-SRS-RSRPP-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
UplinkChannelBW-PerSCS-List ::= SEQUENCE (SIZE (1..maxnoSCSs)) OF SCS-SpecificCarrier
+Uncertainty-range-AoA ::= INTEGER (0..3599)
+
+Uncertainty-range-ZoA ::= INTEGER (0..1799)
+
+
-- V
ValueRSRP-EUTRA ::= INTEGER (0..97, ...)
@@ -2400,4 +3232,16 @@ WLANOperatingClass ::= INTEGER (0..255)
-- Z
+ZoA ::= SEQUENCE {
+ zenithAoA INTEGER (0..1799),
+ lCS-to-GCS-Translation LCS-to-GCS-Translation OPTIONAL,
+ iE-extensions ProtocolExtensionContainer { { ZoA-ExtIEs } } OPTIONAL,
+ ...
+}
+
+ZoA-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
END
diff --git a/epan/dissectors/asn1/nrppa/NRPPA-PDU-Contents.asn b/epan/dissectors/asn1/nrppa/NRPPA-PDU-Contents.asn
index c1c992716b..795f7c476c 100644
--- a/epan/dissectors/asn1/nrppa/NRPPA-PDU-Contents.asn
+++ b/epan/dissectors/asn1/nrppa/NRPPA-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.455 V16.5.0 (2021-10)
+-- 3GPP TS 38.455 V17.6.0 (2023-12)
--9.3.4 PDU Definitions
--
-- **************************************************************
@@ -8,10 +8,10 @@
-- **************************************************************
NRPPA-PDU-Contents {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) nrppa (4) version1 (1) nrppa-PDU-Contents (1) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -22,7 +22,7 @@ BEGIN
-- **************************************************************
IMPORTS
-
+
Cause,
CriticalityDiagnostics,
E-CID-MeasurementResult,
@@ -50,6 +50,7 @@ IMPORTS
TRPInformationListTRPResp,
TRP-MeasurementRequestList,
TRP-MeasurementResponseList,
+ TRP-MeasurementUpdateList,
MeasurementBeamInfoRequest,
PositioningBroadcastCells,
SRSResourceSetID,
@@ -59,9 +60,28 @@ IMPORTS
AbortTransmission,
SystemFrameNumber,
SlotNumber,
- RelativeTime1900
+ RelativeTime1900,
+ SpatialRelationPerSRSResource,
+ MeasurementPeriodicityExtended,
+ PRSTRPList,
+ PRSTransmissionTRPList,
+ ResponseTime,
+ UEReportingInformation,
+ UETxTEGAssociationList,
+ TRP-PRS-Information-List,
+ PRS-Measurements-Info-List,
+ UE-TEG-Info-Request,
+ MeasurementCharacteristicsRequestIndicator,
+ MeasurementTimeOccasion,
+ PRSConfigRequestType,
+ MeasurementAmount,
+ PreconfigurationResult,
+ RequestType,
+ UE-TEG-ReportingPeriodicity,
+ MeasurementPeriodicityNR-AoA,
+ SRSTransmissionStatus
+
-
FROM NRPPA-IEs
PrivateIE-Container{},
@@ -74,7 +94,7 @@ FROM NRPPA-IEs
NRPPA-PROTOCOL-IES
FROM NRPPA-Containers
-
+
maxnoOTDOAtypes,
id-Cause,
id-CriticalityDiagnostics,
@@ -107,6 +127,7 @@ FROM NRPPA-Containers
id-TRP-MeasurementRequestList,
id-TRP-MeasurementResponseList,
id-TRP-MeasurementReportList,
+ id-TRP-MeasurementUpdateList,
id-MeasurementBeamInfoRequest,
id-PositioningBroadcastCells,
id-SRSType,
@@ -114,14 +135,34 @@ FROM NRPPA-Containers
id-SRSResourceSetID,
id-TRPList,
id-SRSSpatialRelation,
- id-AbortTransmission,
+ id-AbortTransmission,
id-SystemFrameNumber,
id-SlotNumber,
id-SRSResourceTrigger,
- id-SFNInitialisationTime
+ id-SFNInitialisationTime,
+ id-SRSSpatialRelationPerSRSResource,
+ id-MeasurementPeriodicityExtended,
+ id-PRSTRPList,
+ id-PRSTransmissionTRPList,
+ id-ResponseTime,
+ id-UEReportingInformation,
+ id-UETxTEGAssociationList,
+ id-TRP-PRS-Information-List,
+ id-PRS-Measurements-Info-List,
+ id-UE-TEG-Info-Request,
+ id-MeasurementCharacteristicsRequestIndicator,
+ id-MeasurementTimeOccasion,
+ id-PRSConfigRequestType,
+ id-MeasurementAmount,
+ id-PreconfigurationResult,
+ id-RequestType,
+ id-UE-TEG-ReportingPeriodicity,
+ id-MeasurementPeriodicityNR-AoA,
+ id-SRSTransmissionStatus
+
+
-
FROM NRPPA-Constants;
-- **************************************************************
@@ -136,13 +177,15 @@ E-CIDMeasurementInitiationRequest ::= SEQUENCE {
}
E-CIDMeasurementInitiationRequest-IEs NRPPA-PROTOCOL-IES ::= {
- { ID id-LMF-UE-Measurement-ID CRITICALITY reject TYPE UE-Measurement-ID PRESENCE mandatory}|
+ { ID id-LMF-UE-Measurement-ID CRITICALITY reject TYPE UE-Measurement-ID PRESENCE mandatory}|
{ ID id-ReportCharacteristics CRITICALITY reject TYPE ReportCharacteristics PRESENCE mandatory}|
{ ID id-MeasurementPeriodicity CRITICALITY reject TYPE MeasurementPeriodicity PRESENCE conditional}|
-- The IE shall be present if the Report Characteritics IE is set to “periodic” --
{ ID id-MeasurementQuantities CRITICALITY reject TYPE MeasurementQuantities PRESENCE mandatory}|
{ ID id-OtherRATMeasurementQuantities CRITICALITY ignore TYPE OtherRATMeasurementQuantities PRESENCE optional}|
- { ID id-WLANMeasurementQuantities CRITICALITY ignore TYPE WLANMeasurementQuantities PRESENCE optional},
+ { ID id-WLANMeasurementQuantities CRITICALITY ignore TYPE WLANMeasurementQuantities PRESENCE optional}|
+ { ID id-MeasurementPeriodicityNR-AoA CRITICALITY reject TYPE MeasurementPeriodicityNR-AoA PRESENCE conditional},
+-- The IE shall be present if the Report Characteritics IE is set to “periodic” and the MeasurementQuantities-Item IE in the MeasurementQuantities IE is set to the value "angleOfArrivalNR" --
...
}
@@ -228,7 +271,7 @@ E-CIDMeasurementReport-IEs NRPPA-PROTOCOL-IES ::= {
-- **************************************************************
--
--- E-CID MEASUREMENT TERMINATION
+-- E-CID MEASUREMENT TERMINATION
--
-- **************************************************************
@@ -260,15 +303,15 @@ OTDOAInformationRequest-IEs NRPPA-PROTOCOL-IES ::= {
...
}
-OTDOA-Information-Type ::= SEQUENCE (SIZE(1..maxnoOTDOAtypes)) OF ProtocolIE-Single-Container { { OTDOA-Information-TypeIEs} }
+OTDOA-Information-Type ::= SEQUENCE (SIZE(1..maxnoOTDOAtypes)) OF ProtocolIE-Single-Container { { OTDOA-Information-Type-ItemIEs} }
-OTDOA-Information-TypeIEs NRPPA-PROTOCOL-IES ::= {
+OTDOA-Information-Type-ItemIEs NRPPA-PROTOCOL-IES ::= {
{ ID id-OTDOA-Information-Type-Item CRITICALITY reject TYPE OTDOA-Information-Type-Item PRESENCE mandatory},
...
}
OTDOA-Information-Type-Item ::= SEQUENCE {
- oTDOA-Information-Type-Item OTDOA-Information-Item,
+ oTDOA-Information-Item OTDOA-Information-Item,
iE-Extensions ProtocolExtensionContainer { { OTDOA-Information-Type-ItemExtIEs} } OPTIONAL,
...
}
@@ -361,7 +404,7 @@ ErrorIndication ::= SEQUENCE {
}
ErrorIndication-IEs NRPPA-PROTOCOL-IES ::= {
-
+
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional}|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
...
@@ -394,7 +437,11 @@ PositioningInformationRequest ::= SEQUENCE {
}
PositioningInformationRequest-IEs NRPPA-PROTOCOL-IES ::= {
- { ID id-RequestedSRSTransmissionCharacteristics CRITICALITY ignore TYPE RequestedSRSTransmissionCharacteristics PRESENCE optional},
+ { ID id-RequestedSRSTransmissionCharacteristics CRITICALITY ignore TYPE RequestedSRSTransmissionCharacteristics PRESENCE optional }|
+ { ID id-UEReportingInformation CRITICALITY ignore TYPE UEReportingInformation PRESENCE optional }|
+ { ID id-UE-TEG-Info-Request CRITICALITY ignore TYPE UE-TEG-Info-Request PRESENCE optional }|
+ { ID id-UE-TEG-ReportingPeriodicity CRITICALITY reject TYPE UE-TEG-ReportingPeriodicity PRESENCE conditional },
+-- The IE shall be present if the UE TEG Info Request IE is set to “periodic”
...
}
@@ -411,8 +458,9 @@ PositioningInformationResponse ::= SEQUENCE {
PositioningInformationResponse-IEs NRPPA-PROTOCOL-IES ::= {
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
- { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-UETxTEGAssociationList CRITICALITY ignore TYPE UETxTEGAssociationList PRESENCE optional},
...
}
@@ -446,7 +494,9 @@ PositioningInformationUpdate ::= SEQUENCE {
PositioningInformationUpdate-IEs NRPPA-PROTOCOL-IES ::= {
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
- { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional},
+ { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
+ { ID id-UETxTEGAssociationList CRITICALITY ignore TYPE UETxTEGAssociationList PRESENCE optional}|
+ { ID id-SRSTransmissionStatus CRITICALITY ignore TYPE SRSTransmissionStatus PRESENCE optional},
...
}
@@ -462,17 +512,23 @@ MeasurementRequest ::= SEQUENCE {
}
MeasurementRequest-IEs NRPPA-PROTOCOL-IES ::= {
- { ID id-LMF-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
- { ID id-TRP-MeasurementRequestList CRITICALITY reject TYPE TRP-MeasurementRequestList PRESENCE mandatory}|
+ { ID id-LMF-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-TRP-MeasurementRequestList CRITICALITY reject TYPE TRP-MeasurementRequestList PRESENCE mandatory}|
{ ID id-ReportCharacteristics CRITICALITY reject TYPE ReportCharacteristics PRESENCE mandatory}|
{ ID id-MeasurementPeriodicity CRITICALITY reject TYPE MeasurementPeriodicity PRESENCE conditional}|
-- The IE shall be present if the Report Characteritics IE is set to “periodic” –
- { ID id-TRPMeasurementQuantities CRITICALITY reject TYPE TRPMeasurementQuantities PRESENCE mandatory}|
- { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
+ { ID id-TRPMeasurementQuantities CRITICALITY reject TYPE TRPMeasurementQuantities PRESENCE mandatory}|
+ { ID id-SFNInitialisationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional}|
{ ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
{ ID id-MeasurementBeamInfoRequest CRITICALITY ignore TYPE MeasurementBeamInfoRequest PRESENCE optional}|
{ ID id-SystemFrameNumber CRITICALITY ignore TYPE SystemFrameNumber PRESENCE optional}|
- { ID id-SlotNumber CRITICALITY ignore TYPE SlotNumber PRESENCE optional},
+ { ID id-SlotNumber CRITICALITY ignore TYPE SlotNumber PRESENCE optional}|
+ { ID id-MeasurementPeriodicityExtended CRITICALITY reject TYPE MeasurementPeriodicityExtended PRESENCE conditional}|
+-- The IE shall be present the MeasurementPeriodicity IE is set to the value "extended"
+ { ID id-ResponseTime CRITICALITY ignore TYPE ResponseTime PRESENCE optional}|
+ { ID id-MeasurementCharacteristicsRequestIndicator CRITICALITY ignore TYPE MeasurementCharacteristicsRequestIndicator PRESENCE optional}|
+ { ID id-MeasurementTimeOccasion CRITICALITY ignore TYPE MeasurementTimeOccasion PRESENCE optional}|
+ { ID id-MeasurementAmount CRITICALITY ignore TYPE MeasurementAmount PRESENCE optional},
...
}
@@ -528,7 +584,7 @@ MeasurementReport-IEs NRPPA-PROTOCOL-IES ::= {
{ ID id-LMF-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
{ ID id-RAN-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
{ ID id-TRP-MeasurementReportList CRITICALITY reject TYPE TRP-MeasurementResponseList PRESENCE mandatory},
-
+
...
}
@@ -544,9 +600,12 @@ MeasurementUpdate ::= SEQUENCE {
}
MeasurementUpdate-IEs NRPPA-PROTOCOL-IES ::= {
- { ID id-LMF-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
- { ID id-RAN-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
- { ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional},
+ { ID id-LMF-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-RAN-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-SRSConfiguration CRITICALITY ignore TYPE SRSConfiguration PRESENCE optional}|
+ { ID id-TRP-MeasurementUpdateList CRITICALITY reject TYPE TRP-MeasurementUpdateList PRESENCE optional}|
+ { ID id-MeasurementCharacteristicsRequestIndicator CRITICALITY ignore TYPE MeasurementCharacteristicsRequestIndicator PRESENCE optional}|
+ { ID id-MeasurementTimeOccasion CRITICALITY ignore TYPE MeasurementTimeOccasion PRESENCE optional},
...
}
@@ -654,12 +713,12 @@ PositioningActivationRequestIEs NRPPA-PROTOCOL-IES ::= {
{ ID id-SRSType CRITICALITY reject TYPE SRSType PRESENCE mandatory } |
{ ID id-ActivationTime CRITICALITY ignore TYPE RelativeTime1900 PRESENCE optional },
...
-}
+}
SRSType ::= CHOICE {
semipersistentSRS SemipersistentSRS,
- aperiodicSRS AperiodicSRS,
- sRSType-extension ProtocolIE-Single-Container { { SRSType-ExtIEs} }
+ aperiodicSRS AperiodicSRS,
+ choice-Extension ProtocolIE-Single-Container { { SRSType-ExtIEs} }
}
SRSType-ExtIEs NRPPA-PROTOCOL-IES ::= {
@@ -672,14 +731,15 @@ SemipersistentSRS ::= SEQUENCE {
...
}
-SemipersistentSRS-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
-{ ID id-SRSSpatialRelation CRITICALITY ignore EXTENSION SpatialRelationInfo PRESENCE optional},
-...
+SemipersistentSRS-ExtIEs NRPPA-PROTOCOL-EXTENSION ::= {
+ { ID id-SRSSpatialRelation CRITICALITY ignore EXTENSION SpatialRelationInfo PRESENCE optional}|
+ { ID id-SRSSpatialRelationPerSRSResource CRITICALITY ignore EXTENSION SpatialRelationPerSRSResource PRESENCE optional},
+ ...
}
AperiodicSRS ::= SEQUENCE {
aperiodic ENUMERATED{true,...},
- sRSResourceTrigger SRSResourceTrigger OPTIONAL,
+ sRSResourceTrigger SRSResourceTrigger OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {AperiodicSRS-ExtIEs} } OPTIONAL,
...
}
@@ -742,7 +802,126 @@ PositioningDeactivation ::= SEQUENCE {
PositioningDeactivationIEs NRPPA-PROTOCOL-IES ::= {
{ ID id-AbortTransmission CRITICALITY ignore TYPE AbortTransmission PRESENCE mandatory } ,
...
-}
+}
+
+-- **************************************************************
+--
+-- PRS CONFIGURATION REQUEST
+--
+-- **************************************************************
+
+PRSConfigurationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PRSConfigurationRequest-IEs}},
+ ...
+}
+
+PRSConfigurationRequest-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-PRSConfigRequestType CRITICALITY reject TYPE PRSConfigRequestType PRESENCE mandatory}|
+ { ID id-PRSTRPList CRITICALITY ignore TYPE PRSTRPList PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- PRS CONFIGURATION RESPONSE
+--
+-- **************************************************************
+
+PRSConfigurationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PRSConfigurationResponse-IEs}},
+ ...
+}
+
+PRSConfigurationResponse-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-PRSTransmissionTRPList CRITICALITY ignore TYPE PRSTransmissionTRPList PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- PRS CONFIGURATION FAILURE
+--
+-- **************************************************************
+
+PRSConfigurationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PRSConfigurationFailure-IEs}},
+ ...
+}
+
+PRSConfigurationFailure-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MEASUREMENT PRECONFIGURATION REQUIRED
+--
+-- **************************************************************
+
+MeasurementPreconfigurationRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MeasurementPreconfigurationRequired-IEs}},
+ ...
+}
+
+MeasurementPreconfigurationRequired-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-TRP-PRS-Information-List CRITICALITY ignore TYPE TRP-PRS-Information-List PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- MEASUREMENT PRECONFIGURATION CONFIRM
+--
+-- **************************************************************
+
+MeasurementPreconfigurationConfirm::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MeasurementPreconfigurationConfirm-IEs}},
+ ...
+}
+
+MeasurementPreconfigurationConfirm-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-PreconfigurationResult CRITICALITY ignore TYPE PreconfigurationResult PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MEASUREMENT PRECONFIGURATION REFUSE
+--
+-- **************************************************************
+
+MeasurementPreconfigurationRefuse::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MeasurementPreconfigurationRefuse-IEs}},
+ ...
+}
+
+MeasurementPreconfigurationRefuse-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- MEASUREMENT ACTIVATION
+--
+-- **************************************************************
+
+MeasurementActivation::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MeasurementActivation-IEs} },
+ ...
+}
+
+MeasurementActivation-IEs NRPPA-PROTOCOL-IES ::= {
+ { ID id-RequestType CRITICALITY reject TYPE RequestType PRESENCE mandatory}|
+ { ID id-PRS-Measurements-Info-List CRITICALITY ignore TYPE PRS-Measurements-Info-List PRESENCE optional},
+ ...
+}
END
diff --git a/epan/dissectors/asn1/nrppa/NRPPA-PDU-Descriptions.asn b/epan/dissectors/asn1/nrppa/NRPPA-PDU-Descriptions.asn
index ef8f525a82..6912d8c7e4 100644
--- a/epan/dissectors/asn1/nrppa/NRPPA-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/nrppa/NRPPA-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.455 V16.5.0 (2021-10)
+-- 3GPP TS 38.455 V17.6.0 (2023-12)
--
-- ASN1START
-- **************************************************************
@@ -11,7 +11,7 @@ NRPPA-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) nrppa (4) version1 (1) nrppa-PDU-Descriptions (0) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -59,7 +59,14 @@ FROM NRPPA-CommonDataTypes
PositioningActivationRequest,
PositioningActivationResponse,
PositioningActivationFailure,
- PositioningDeactivation
+ PositioningDeactivation,
+ PRSConfigurationRequest,
+ PRSConfigurationResponse,
+ PRSConfigurationFailure,
+ MeasurementPreconfigurationRequired,
+ MeasurementPreconfigurationConfirm,
+ MeasurementPreconfigurationRefuse,
+ MeasurementActivation
FROM NRPPA-PDU-Contents
@@ -80,9 +87,12 @@ FROM NRPPA-PDU-Contents
id-MeasurementUpdate,
id-MeasurementAbort,
id-MeasurementFailureIndication,
- id-tRPInformationExchange,
+ id-tRPInformationExchange,
id-positioningActivation,
- id-positioningDeactivation
+ id-positioningDeactivation,
+ id-pRSConfigurationExchange,
+ id-measurementPreconfiguration,
+ id-measurementActivation
@@ -162,7 +172,10 @@ NRPPA-ELEMENTARY-PROCEDURES-CLASS-1 NRPPA-ELEMENTARY-PROCEDURE ::= {
positioningInformationExchange |
measurement |
tRPInformationExchange |
- positioningActivation,
+ positioningActivation |
+ pRSConfigurationExchange |
+ measurementPreconfiguration,
+
...
}
@@ -179,7 +192,8 @@ NRPPA-ELEMENTARY-PROCEDURES-CLASS-2 NRPPA-ELEMENTARY-PROCEDURE ::= {
measurementUpdate |
measurementAbort |
measurementFailureIndication |
- positioningDeactivation,
+ positioningDeactivation |
+ measurementActivation,
...
}
@@ -320,5 +334,27 @@ positioningDeactivation NRPPA-ELEMENTARY-PROCEDURE ::= {
CRITICALITY ignore
}
+pRSConfigurationExchange NRPPA-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PRSConfigurationRequest
+ SUCCESSFUL OUTCOME PRSConfigurationResponse
+ UNSUCCESSFUL OUTCOME PRSConfigurationFailure
+ PROCEDURE CODE id-pRSConfigurationExchange
+ CRITICALITY reject
+}
+
+measurementPreconfiguration NRPPA-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MeasurementPreconfigurationRequired
+ SUCCESSFUL OUTCOME MeasurementPreconfigurationConfirm
+ UNSUCCESSFUL OUTCOME MeasurementPreconfigurationRefuse
+ PROCEDURE CODE id-measurementPreconfiguration
+ CRITICALITY reject
+}
+
+measurementActivation NRPPA-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MeasurementActivation
+ PROCEDURE CODE id-measurementActivation
+ CRITICALITY ignore
+}
+
END
diff --git a/epan/dissectors/asn1/nrppa/nrppa.cnf b/epan/dissectors/asn1/nrppa/nrppa.cnf
index a5be09aa9f..d20918b431 100644
--- a/epan/dissectors/asn1/nrppa/nrppa.cnf
+++ b/epan/dissectors/asn1/nrppa/nrppa.cnf
@@ -15,6 +15,7 @@ ProtocolIE-ID
Presence
ProtocolIE-ContainerList
PRS-ID
+SRSResourceID-Item
#.EXPORTS
Assistance-Information_PDU
@@ -38,15 +39,17 @@ ProtocolExtensionField/id ext_id
#.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(nrppa_ProtocolIE_ID_vals), "unknown (%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2),
+ ": %s",
+ val_to_str(ProtocolIE_ID, VALS(nrppa_ProtocolIE_ID_vals), "unknown (%d)"));
}
#.END
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
#.FN_FTR ProcedureCode
- col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
- val_to_str(ProcedureCode, nrppa_ProcedureCode_vals,
- "unknown message"));
+ col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
+ val_to_str_const(ProcedureCode, nrppa_ProcedureCode_vals,
+ "unknown message"));
#.END
#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
@@ -62,6 +65,7 @@ ProtocolExtensionField/id ext_id
#.FN_HDR NRPPA-PDU
proto_tree_add_item(tree, proto_nrppa, tvb, 0, -1, ENC_NA);
+ add_per_encoded_label(tvb, actx->pinfo, tree);
col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "NRPPa");
#.END
@@ -100,69 +104,123 @@ id-MeasurementFailureIndication ProcedureCode
id-tRPInformationExchange ProcedureCode
id-positioningActivation ProcedureCode
id-positioningDeactivation ProcedureCode
+id-pRSConfigurationExchange ProcedureCode
+id-measurementPreconfiguration ProcedureCode
+id-measurementActivation ProcedureCode
# ProtocolIE-ID
-id-Cause ProtocolIE-ID
-id-CriticalityDiagnostics ProtocolIE-ID
-id-LMF-UE-Measurement-ID ProtocolIE-ID
-id-ReportCharacteristics ProtocolIE-ID
-id-MeasurementPeriodicity ProtocolIE-ID
-id-MeasurementQuantities ProtocolIE-ID
-id-RAN-UE-Measurement-ID ProtocolIE-ID
-id-E-CID-MeasurementResult ProtocolIE-ID
-id-OTDOACells ProtocolIE-ID
-id-OTDOA-Information-Type-Group ProtocolIE-ID
-id-OTDOA-Information-Type-Item ProtocolIE-ID
-id-MeasurementQuantities-Item ProtocolIE-ID
-id-RequestedSRSTransmissionCharacteristics ProtocolIE-ID
-id-Cell-Portion-ID ProtocolIE-ID
-id-OtherRATMeasurementQuantities ProtocolIE-ID
-id-OtherRATMeasurementQuantities-Item ProtocolIE-ID
-id-OtherRATMeasurementResult ProtocolIE-ID
-id-WLANMeasurementQuantities ProtocolIE-ID
-id-WLANMeasurementQuantities-Item ProtocolIE-ID
-id-WLANMeasurementResult ProtocolIE-ID
-id-TDD-Config-EUTRA-Item ProtocolIE-ID
-id-Assistance-Information ProtocolIE-ID
-id-Broadcast ProtocolIE-ID
-id-AssistanceInformationFailureList ProtocolIE-ID
-id-SRSConfiguration ProtocolIE-ID
-id-MeasurementResult ProtocolIE-ID
-id-TRP-ID ProtocolIE-ID
-id-TRPInformationTypeListTRPReq ProtocolIE-ID
-id-TRPInformationListTRPResp ProtocolIE-ID
-id-MeasurementBeamInfoRequest ProtocolIE-ID
-id-ResultSS-RSRP ProtocolIE-ID
-id-ResultSS-RSRQ ProtocolIE-ID
-id-ResultCSI-RSRP ProtocolIE-ID
-id-ResultCSI-RSRQ ProtocolIE-ID
-id-AngleOfArrivalNR ProtocolIE-ID
-id-GeographicalCoordinates ProtocolIE-ID
-id-PositioningBroadcastCells ProtocolIE-ID
-id-LMF-Measurement-ID ProtocolIE-ID
-id-RAN-Measurement-ID ProtocolIE-ID
-id-TRP-MeasurementRequestList ProtocolIE-ID
-id-TRP-MeasurementResponseList ProtocolIE-ID
-id-TRP-MeasurementReportList ProtocolIE-ID
-id-SRSType ProtocolIE-ID
-id-ActivationTime ProtocolIE-ID
-id-SRSResourceSetID ProtocolIE-ID
-id-TRPList ProtocolIE-ID
-id-SRSSpatialRelation ProtocolIE-ID
-id-SystemFrameNumber ProtocolIE-ID
-id-SlotNumber ProtocolIE-ID
-id-SRSResourceTrigger ProtocolIE-ID
-id-TRPMeasurementQuantities ProtocolIE-ID
-id-AbortTransmission ProtocolIE-ID
-id-SFNInitialisationTime ProtocolIE-ID
-id-ResultNR ProtocolIE-ID
-id-ResultEUTRA ProtocolIE-ID
-id-TRPInformationTypeItem ProtocolIE-ID
-id-CGI-NR ProtocolIE-ID
-id-SFNInitialisationTime-NR ProtocolIE-ID
-id-Cell-ID ProtocolIE-ID
-id-SrsFrequency ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-LMF-UE-Measurement-ID ProtocolIE-ID
+id-ReportCharacteristics ProtocolIE-ID
+id-MeasurementPeriodicity ProtocolIE-ID
+id-MeasurementQuantities ProtocolIE-ID
+id-RAN-UE-Measurement-ID ProtocolIE-ID
+id-E-CID-MeasurementResult ProtocolIE-ID
+id-OTDOACells ProtocolIE-ID
+id-OTDOA-Information-Type-Group ProtocolIE-ID
+id-OTDOA-Information-Type-Item ProtocolIE-ID
+id-MeasurementQuantities-Item ProtocolIE-ID
+id-RequestedSRSTransmissionCharacteristics ProtocolIE-ID
+id-Cell-Portion-ID ProtocolIE-ID
+id-OtherRATMeasurementQuantities ProtocolIE-ID
+id-OtherRATMeasurementQuantities-Item ProtocolIE-ID
+id-OtherRATMeasurementResult ProtocolIE-ID
+id-WLANMeasurementQuantities ProtocolIE-ID
+id-WLANMeasurementQuantities-Item ProtocolIE-ID
+id-WLANMeasurementResult ProtocolIE-ID
+id-TDD-Config-EUTRA-Item ProtocolIE-ID
+id-Assistance-Information ProtocolIE-ID
+id-Broadcast ProtocolIE-ID
+id-AssistanceInformationFailureList ProtocolIE-ID
+id-SRSConfiguration ProtocolIE-ID
+id-MeasurementResult ProtocolIE-ID
+id-TRP-ID ProtocolIE-ID
+id-TRPInformationTypeListTRPReq ProtocolIE-ID
+id-TRPInformationListTRPResp ProtocolIE-ID
+id-MeasurementBeamInfoRequest ProtocolIE-ID
+id-ResultSS-RSRP ProtocolIE-ID
+id-ResultSS-RSRQ ProtocolIE-ID
+id-ResultCSI-RSRP ProtocolIE-ID
+id-ResultCSI-RSRQ ProtocolIE-ID
+id-AngleOfArrivalNR ProtocolIE-ID
+id-GeographicalCoordinates ProtocolIE-ID
+id-PositioningBroadcastCells ProtocolIE-ID
+id-LMF-Measurement-ID ProtocolIE-ID
+id-RAN-Measurement-ID ProtocolIE-ID
+id-TRP-MeasurementRequestList ProtocolIE-ID
+id-TRP-MeasurementResponseList ProtocolIE-ID
+id-TRP-MeasurementReportList ProtocolIE-ID
+id-SRSType ProtocolIE-ID
+id-ActivationTime ProtocolIE-ID
+id-SRSResourceSetID ProtocolIE-ID
+id-TRPList ProtocolIE-ID
+id-SRSSpatialRelation ProtocolIE-ID
+id-SystemFrameNumber ProtocolIE-ID
+id-SlotNumber ProtocolIE-ID
+id-SRSResourceTrigger ProtocolIE-ID
+id-TRPMeasurementQuantities ProtocolIE-ID
+id-AbortTransmission ProtocolIE-ID
+id-SFNInitialisationTime ProtocolIE-ID
+id-ResultNR ProtocolIE-ID
+id-ResultEUTRA ProtocolIE-ID
+id-TRPInformationTypeItem ProtocolIE-ID
+id-CGI-NR ProtocolIE-ID
+id-SFNInitialisationTime-NR ProtocolIE-ID
+id-Cell-ID ProtocolIE-ID
+id-SrsFrequency ProtocolIE-ID
+id-TRPType ProtocolIE-ID
+id-SRSSpatialRelationPerSRSResource ProtocolIE-ID
+id-MeasurementPeriodicityExtended ProtocolIE-ID
+id-PRS-Resource-ID ProtocolIE-ID
+id-PRSTRPList ProtocolIE-ID
+id-PRSTransmissionTRPList ProtocolIE-ID
+id-OnDemandPRS ProtocolIE-ID
+id-AoA-SearchWindow ProtocolIE-ID
+id-TRP-MeasurementUpdateList ProtocolIE-ID
+id-ZoA ProtocolIE-ID
+id-ResponseTime ProtocolIE-ID
+id-UEReportingInformation ProtocolIE-ID
+id-MultipleULAoA ProtocolIE-ID
+id-UL-SRS-RSRPP ProtocolIE-ID
+id-SRSResourcetype ProtocolIE-ID
+id-ExtendedAdditionalPathList ProtocolIE-ID
+id-ARPLocationInfo ProtocolIE-ID
+id-ARP-ID ProtocolIE-ID
+id-LoS-NLoSInformation ProtocolIE-ID
+id-UETxTEGAssociationList ProtocolIE-ID
+id-NumberOfTRPRxTEG ProtocolIE-ID
+id-NumberOfTRPRxTxTEG ProtocolIE-ID
+id-TRPTxTEGAssociation ProtocolIE-ID
+id-TRPTEGInformation ProtocolIE-ID
+id-TRP-Rx-TEGInformation ProtocolIE-ID
+id-TRP-PRS-Information-List ProtocolIE-ID
+id-PRS-Measurements-Info-List ProtocolIE-ID
+id-PRSConfigRequestType ProtocolIE-ID
+id-UE-TEG-Info-Request ProtocolIE-ID
+id-MeasurementTimeOccasion ProtocolIE-ID
+id-MeasurementCharacteristicsRequestIndicator ProtocolIE-ID
+id-TRPBeamAntennaInformation ProtocolIE-ID
+id-NR-TADV ProtocolIE-ID
+id-MeasurementAmount ProtocolIE-ID
+id-pathPower ProtocolIE-ID
+id-PreconfigurationResult ProtocolIE-ID
+id-RequestType ProtocolIE-ID
+id-UE-TEG-ReportingPeriodicity ProtocolIE-ID
+id-SRSPortIndex ProtocolIE-ID
+id-procedure-code-101-not-to-be-used ProtocolIE-ID
+id-procedure-code-102-not-to-be-used ProtocolIE-ID
+id-procedure-code-103-not-to-be-used ProtocolIE-ID
+id-UETxTimingErrorMargin ProtocolIE-ID
+id-MeasurementPeriodicityNR-AoA ProtocolIE-ID
+id-SRSTransmissionStatus ProtocolIE-ID
+id-nrofSymbolsExtended ProtocolIE-ID
+id-repetitionFactorExtended ProtocolIE-ID
+id-StartRBHopping ProtocolIE-ID
+id-StartRBIndex ProtocolIE-ID
+id-transmissionCombn8 ProtocolIE-ID
+
#.REGISTER
#NRPPA-PROTOCOL-IES
@@ -219,12 +277,60 @@ CGI-NR N nrppa.ies id-CGI-NR
SFNInitialisationTime-EUTRA N nrppa.ies id-SFNInitialisationTime-NR
CGI-NR N nrppa.ies id-Cell-ID
SrsFrequency N nrppa.ies id-SrsFrequency
+TRPType N nrppa.ies id-TRPType
+MeasurementPeriodicityExtended N nrppa.ies id-MeasurementPeriodicityExtended
+PRSTRPList N nrppa.ies id-PRSTRPList
+PRSTransmissionTRPList N nrppa.ies id-PRSTransmissionTRPList
+OnDemandPRS-Info N nrppa.ies id-OnDemandPRS
+TRP-MeasurementUpdateList N nrppa.ies id-TRP-MeasurementUpdateList
+ZoA N nrppa.ies id-ZoA
+ResponseTime N nrppa.ies id-ResponseTime
+UEReportingInformation N nrppa.ies id-UEReportingInformation
+MultipleULAoA N nrppa.ies id-MultipleULAoA
+UL-SRS-RSRPP N nrppa.ies id-UL-SRS-RSRPP
+UETxTEGAssociationList N nrppa.ies id-UETxTEGAssociationList
+TRPTxTEGAssociation N nrppa.ies id-TRPTxTEGAssociation
+TRP-PRS-Information-List N nrppa.ies id-TRP-PRS-Information-List
+PRS-Measurements-Info-List N nrppa.ies id-PRS-Measurements-Info-List
+PRSConfigRequestType N nrppa.ies id-PRSConfigRequestType
+UE-TEG-Info-Request N nrppa.ies id-UE-TEG-Info-Request
+MeasurementTimeOccasion N nrppa.ies id-MeasurementTimeOccasion
+MeasurementCharacteristicsRequestIndicator N nrppa.ies id-MeasurementCharacteristicsRequestIndicator
+TRPBeamAntennaInformation N nrppa.ies id-TRPBeamAntennaInformation
+NR-TADV N nrppa.ies id-NR-TADV
+MeasurementAmount N nrppa.ies id-MeasurementAmount
+PreconfigurationResult N nrppa.ies id-PreconfigurationResult
+RequestType N nrppa.ies id-RequestType
+UE-TEG-ReportingPeriodicity N nrppa.ies id-UE-TEG-ReportingPeriodicity
+MeasurementPeriodicityNR-AoA N nrppa.ies id-MeasurementPeriodicityNR-AoA
+SRSTransmissionStatus N nrppa.ies id-SRSTransmissionStatus
#NRPPA-PROTOCOL-EXTENSION
GeographicalCoordinates N nrppa.extension id-GeographicalCoordinates
SpatialRelationInfo N nrppa.extension id-SRSSpatialRelation
+SpatialRelationPerSRSResource N nrppa.extension id-SRSSpatialRelationPerSRSResource
+PRS-Resource-ID N nrppa.extension id-PRS-Resource-ID
+AoA-AssistanceInfo N nrppa.extension id-AoA-SearchWindow
+MultipleULAoA N nrppa.extension id-MultipleULAoA
+SRSResourcetype N nrppa.extension id-SRSResourcetype
+ExtendedAdditionalPathList N nrppa.extension id-ExtendedAdditionalPathList
+ARPLocationInformation N nrppa.extension id-ARPLocationInfo
+ARP-ID N nrppa.extension id-ARP-ID
+LoS-NLoSInformation N nrppa.extension id-LoS-NLoSInformation
+NumberOfTRPRxTEG N nrppa.extension id-NumberOfTRPRxTEG
+NumberOfTRPRxTxTEG N nrppa.extension id-NumberOfTRPRxTxTEG
+TRPTEGInformation N nrppa.extension id-TRPTEGInformation
+TRP-Rx-TEGInformation N nrppa.extension id-TRP-Rx-TEGInformation
+UL-SRS-RSRPP N nrppa.extension id-pathPower
+SRSPortIndex N nrppa.extension id-SRSPortIndex
+TimingErrorMargin N nrppa.extension id-UETxTimingErrorMargin
+NrofSymbolsExtended N nrppa.extension id-nrofSymbolsExtended
+RepetitionFactorExtended N nrppa.extension id-repetitionFactorExtended
+StartRBHopping N nrppa.extension id-StartRBHopping
+StartRBIndex N nrppa.extension id-StartRBIndex
+TransmissionCombn8 N nrppa.extension id-transmissionCombn8
#LPPA-ELEMENTARY-PROCEDURE
@@ -277,3 +383,13 @@ PositioningActivationResponse N nrppa.proc.sout id-positioningActiv
PositioningActivationFailure N nrppa.proc.uout id-positioningActivation
PositioningDeactivation N nrppa.proc.imsg id-positioningDeactivation
+
+PRSConfigurationRequest N nrppa.proc.imsg id-pRSConfigurationExchange
+PRSConfigurationResponse N nrppa.proc.sout id-pRSConfigurationExchange
+PRSConfigurationFailure N nrppa.proc.uout id-pRSConfigurationExchange
+
+MeasurementPreconfigurationRequired N nrppa.proc.imsg id-measurementPreconfiguration
+MeasurementPreconfigurationConfirm N nrppa.proc.sout id-measurementPreconfiguration
+MeasurementPreconfigurationRefuse N nrppa.proc.uout id-measurementPreconfiguration
+
+MeasurementActivation N nrppa.proc.imsg id-measurementActivation
diff --git a/epan/dissectors/asn1/nrppa/packet-nrppa-template.c b/epan/dissectors/asn1/nrppa/packet-nrppa-template.c
index dc2b0fc5a7..386617754f 100644
--- a/epan/dissectors/asn1/nrppa/packet-nrppa-template.c
+++ b/epan/dissectors/asn1/nrppa/packet-nrppa-template.c
@@ -8,8 +8,8 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * Ref 3GPP TS 38.455 V16.5.0 (2021-10)
- * http://www.3gpp.org
+ * Ref 3GPP TS 38.455 V17.6.0 (2023-12)
+ * https://www.3gpp.org
*/
#include "config.h"
@@ -28,12 +28,12 @@ void proto_register_nrppa(void);
void proto_reg_handoff_nrppa(void);
/* Initialize the protocol and registered fields */
-static int proto_nrppa = -1;
+static int proto_nrppa;
#include "packet-nrppa-hf.c"
/* Initialize the subtree pointers */
-static gint ett_nrppa = -1;
+static gint ett_nrppa;
#include "packet-nrppa-ett.c"
/* Global variables */
@@ -88,13 +88,12 @@ void proto_register_nrppa(void) {
/* List of fields */
static hf_register_info hf[] = {
-
#include "packet-nrppa-hfarr.c"
};
/* List of subtrees */
static gint *ett[] = {
- &ett_nrppa,
+ &ett_nrppa,
#include "packet-nrppa-ettarr.c"
};
diff --git a/epan/dissectors/asn1/ns_cert_exts/packet-ns_cert_exts-template.c b/epan/dissectors/asn1/ns_cert_exts/packet-ns_cert_exts-template.c
index 14013c83d7..1af7f2d603 100644
--- a/epan/dissectors/asn1/ns_cert_exts/packet-ns_cert_exts-template.c
+++ b/epan/dissectors/asn1/ns_cert_exts/packet-ns_cert_exts-template.c
@@ -23,7 +23,7 @@ void proto_register_ns_cert_exts(void);
void proto_reg_handoff_ns_cert_exts(void);
/* Initialize the protocol and registered fields */
-static int proto_ns_cert_exts = -1;
+static int proto_ns_cert_exts;
#include "packet-ns_cert_exts-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/ocsp/ocsp.cnf b/epan/dissectors/asn1/ocsp/ocsp.cnf
index eeeb51beae..1c9f04255c 100644
--- a/epan/dissectors/asn1/ocsp/ocsp.cnf
+++ b/epan/dissectors/asn1/ocsp/ocsp.cnf
@@ -42,7 +42,7 @@ Version
#.FN_BODY ResponseBytes/response
gint8 appclass;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
/* skip past the T and L */
diff --git a/epan/dissectors/asn1/ocsp/packet-ocsp-template.c b/epan/dissectors/asn1/ocsp/packet-ocsp-template.c
index dd1736d273..f32ff92571 100644
--- a/epan/dissectors/asn1/ocsp/packet-ocsp-template.c
+++ b/epan/dissectors/asn1/ocsp/packet-ocsp-template.c
@@ -29,13 +29,16 @@
void proto_register_ocsp(void);
void proto_reg_handoff_ocsp(void);
+static dissector_handle_t ocsp_request_handle;
+static dissector_handle_t ocsp_response_handle;
+
/* Initialize the protocol and registered fields */
-int proto_ocsp = -1;
-static int hf_ocsp_responseType_id = -1;
+int proto_ocsp;
+static int hf_ocsp_responseType_id;
#include "packet-ocsp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_ocsp = -1;
+static gint ett_ocsp;
#include "packet-ocsp-ett.c"
#include "packet-ocsp-fn.c"
@@ -109,16 +112,13 @@ void proto_register_ocsp(void) {
proto_register_field_array(proto_ocsp, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ /* Register dissectors */
+ ocsp_request_handle = register_dissector(PFNAME "_req", dissect_ocsp_request, proto_ocsp);
+ ocsp_response_handle = register_dissector(PFNAME "_res", dissect_ocsp_response, proto_ocsp);
}
/*--- proto_reg_handoff_ocsp -------------------------------------------*/
void proto_reg_handoff_ocsp(void) {
- dissector_handle_t ocsp_request_handle;
- dissector_handle_t ocsp_response_handle;
-
- ocsp_request_handle = create_dissector_handle(dissect_ocsp_request, proto_ocsp);
- ocsp_response_handle = create_dissector_handle(dissect_ocsp_response, proto_ocsp);
-
dissector_add_string("media_type", "application/ocsp-request", ocsp_request_handle);
dissector_add_string("media_type", "application/ocsp-response", ocsp_response_handle);
diff --git a/epan/dissectors/asn1/ocsp/packet-ocsp-template.h b/epan/dissectors/asn1/ocsp/packet-ocsp-template.h
index 4b2409c5eb..f51f430bbb 100644
--- a/epan/dissectors/asn1/ocsp/packet-ocsp-template.h
+++ b/epan/dissectors/asn1/ocsp/packet-ocsp-template.h
@@ -15,7 +15,7 @@
/*#include "packet-ocsp-exp.h"*/
extern int proto_ocsp;
-int dissect_ocsp_OCSPResponse(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_ocsp_OCSPResponse(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
#endif /* PACKET_OCSP_H */
diff --git a/epan/dissectors/asn1/p1/p1.cnf b/epan/dissectors/asn1/p1/p1.cnf
index 4da5be4c53..bed9cab2de 100644
--- a/epan/dissectors/asn1/p1/p1.cnf
+++ b/epan/dissectors/asn1/p1/p1.cnf
@@ -1271,21 +1271,21 @@ MessageToken B "2.6.1.7.36" "id-hat-forwarded-token"
actx->subtree.tree = NULL;
#.TYPE_ATTR
-RecipientNumberForAdvice DISPLAY = STR_UNICODE
-TeletexCommonName DISPLAY = STR_UNICODE
-TeletexOrganizationName DISPLAY = STR_UNICODE
-TeletexPersonalName/surname DISPLAY = STR_UNICODE
-TeletexPersonalName/given-name DISPLAY = STR_UNICODE
-TeletexPersonalName/initials DISPLAY = STR_UNICODE
-TeletexPersonalName/generation-qualifier DISPLAY = STR_UNICODE
-TeletexOrganizationalUnitName DISPLAY = STR_UNICODE
-UnformattedPostalAddress/teletex-string DISPLAY = STR_UNICODE
-PDSParameter/teletex-string DISPLAY = STR_UNICODE
-TeletexDomainDefinedAttribute/type DISPLAY = STR_UNICODE
-TeletexDomainDefinedAttribute/value DISPLAY = STR_UNICODE
-TeletexNonBasicParameters/graphic-character-sets DISPLAY = STR_UNICODE
-TeletexNonBasicParameters/control-character-sets DISPLAY = STR_UNICODE
-TeletexNonBasicParameters/miscellaneous-terminal-capabilities DISPLAY = STR_UNICODE
+RecipientNumberForAdvice DISPLAY = BASE_NONE
+TeletexCommonName DISPLAY = BASE_NONE
+TeletexOrganizationName DISPLAY = BASE_NONE
+TeletexPersonalName/surname DISPLAY = BASE_NONE
+TeletexPersonalName/given-name DISPLAY = BASE_NONE
+TeletexPersonalName/initials DISPLAY = BASE_NONE
+TeletexPersonalName/generation-qualifier DISPLAY = BASE_NONE
+TeletexOrganizationalUnitName DISPLAY = BASE_NONE
+UnformattedPostalAddress/teletex-string DISPLAY = BASE_NONE
+PDSParameter/teletex-string DISPLAY = BASE_NONE
+TeletexDomainDefinedAttribute/type DISPLAY = BASE_NONE
+TeletexDomainDefinedAttribute/value DISPLAY = BASE_NONE
+TeletexNonBasicParameters/graphic-character-sets DISPLAY = BASE_NONE
+TeletexNonBasicParameters/control-character-sets DISPLAY = BASE_NONE
+TeletexNonBasicParameters/miscellaneous-terminal-capabilities DISPLAY = BASE_NONE
#.END
diff --git a/epan/dissectors/asn1/p1/packet-p1-template.c b/epan/dissectors/asn1/p1/packet-p1-template.c
index b4b3b77e42..5033ef6f3f 100644
--- a/epan/dissectors/asn1/p1/packet-p1-template.c
+++ b/epan/dissectors/asn1/p1/packet-p1-template.c
@@ -36,33 +36,33 @@
#define PFNAME "p1"
/* Initialize the protocol and registered fields */
-static int proto_p1 = -1;
-static int proto_p3 = -1;
+static int proto_p1;
+static int proto_p3;
-static int hf_p1_MTS_APDU_PDU = -1;
-static int hf_p1_MTABindArgument_PDU = -1;
-static int hf_p1_MTABindResult_PDU = -1;
-static int hf_p1_MTABindError_PDU = -1;
+static int hf_p1_MTS_APDU_PDU;
+static int hf_p1_MTABindArgument_PDU;
+static int hf_p1_MTABindResult_PDU;
+static int hf_p1_MTABindError_PDU;
#include "packet-p1-hf.c"
/* Initialize the subtree pointers */
-static gint ett_p1 = -1;
-static gint ett_p3 = -1;
-static gint ett_p1_content_unknown = -1;
-static gint ett_p1_bilateral_information = -1;
-static gint ett_p1_additional_information = -1;
-static gint ett_p1_unknown_standard_extension = -1;
-static gint ett_p1_unknown_extension_attribute_type = -1;
-static gint ett_p1_unknown_tokendata_type = -1;
+static gint ett_p1;
+static gint ett_p3;
+static gint ett_p1_content_unknown;
+static gint ett_p1_bilateral_information;
+static gint ett_p1_additional_information;
+static gint ett_p1_unknown_standard_extension;
+static gint ett_p1_unknown_extension_attribute_type;
+static gint ett_p1_unknown_tokendata_type;
#include "packet-p1-ett.c"
-static expert_field ei_p1_unknown_extension_attribute_type = EI_INIT;
-static expert_field ei_p1_unknown_standard_extension = EI_INIT;
-static expert_field ei_p1_unknown_built_in_content_type = EI_INIT;
-static expert_field ei_p1_unknown_tokendata_type = EI_INIT;
-static expert_field ei_p1_unsupported_pdu = EI_INIT;
-static expert_field ei_p1_zero_pdu = EI_INIT;
+static expert_field ei_p1_unknown_extension_attribute_type;
+static expert_field ei_p1_unknown_standard_extension;
+static expert_field ei_p1_unknown_built_in_content_type;
+static expert_field ei_p1_unknown_tokendata_type;
+static expert_field ei_p1_unsupported_pdu;
+static expert_field ei_p1_zero_pdu;
/* Dissector tables */
static dissector_table_t p1_extension_dissector_table;
@@ -228,7 +228,7 @@ dissect_p1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* dat
proto_item *item;
proto_tree *tree;
struct SESSION_DATA_STRUCTURE* session;
- int (*p1_dissector)(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) = NULL;
+ int (*p1_dissector)(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_) = NULL;
const char *p1_op_name;
int hf_p1_index = -1;
asn1_ctx_t asn1_ctx;
diff --git a/epan/dissectors/asn1/p22/p22.cnf b/epan/dissectors/asn1/p22/p22.cnf
index 451a297673..eb7dc492b2 100644
--- a/epan/dissectors/asn1/p22/p22.cnf
+++ b/epan/dissectors/asn1/p22/p22.cnf
@@ -265,16 +265,16 @@ IpnSecurityResponse B "2.6.1.18.1" "id-sec-security-common-fields"
tvb_reported_length(subject), ENC_T61));
#.TYPE_ATTR
-SubjectField DISPLAY = STR_UNICODE
+SubjectField DISPLAY = BASE_NONE
#.TYPE_ATTR
-TeletexData/_item DISPLAY = STR_UNICODE
+TeletexData/_item DISPLAY = BASE_NONE
#.TYPE_ATTR
-FreeFormName DISPLAY = STR_UNICODE
+FreeFormName DISPLAY = BASE_NONE
#.TYPE_ATTR
-VideotexData DISPLAY = STR_UNICODE
+VideotexData DISPLAY = BASE_NONE
#.FN_PARS CharacterSetRegistration
VAL_PTR=&crs
@@ -284,7 +284,7 @@ VideotexData DISPLAY = STR_UNICODE
%(DEFAULT_BODY)s
if(actx->created_item)
- proto_item_append_text(actx->created_item, " (%%s)", val_to_str(crs, charsetreg_vals, "unknown"));
+ proto_item_append_text(actx->created_item, " (%%s)", val_to_str_const(crs, charsetreg_vals, "unknown"));
#.FN_BODY Interchange-Data-Element
/* XXX Not implemented yet */
diff --git a/epan/dissectors/asn1/p22/packet-p22-template.c b/epan/dissectors/asn1/p22/packet-p22-template.c
index f0cf69afbd..33ecfc274b 100644
--- a/epan/dissectors/asn1/p22/packet-p22-template.c
+++ b/epan/dissectors/asn1/p22/packet-p22-template.c
@@ -14,6 +14,7 @@
#include <epan/packet.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-acse.h"
@@ -32,7 +33,7 @@
#define PFNAME "p22"
/* Initialize the protocol and registered fields */
-static int proto_p22 = -1;
+static int proto_p22;
static const value_string charsetreg_vals [] = {
{ 1, "C0: (ISO/IEC 6429)"},
@@ -68,7 +69,7 @@ static const value_string charsetreg_vals [] = {
#include "packet-p22-hf.c"
/* Initialize the subtree pointers */
-static gint ett_p22 = -1;
+static gint ett_p22;
#include "packet-p22-ett.c"
#include "packet-p22-fn.c"
diff --git a/epan/dissectors/asn1/p7/CMakeLists.txt b/epan/dissectors/asn1/p7/CMakeLists.txt
index 1f6632cffd..f95b06ae15 100644
--- a/epan/dissectors/asn1/p7/CMakeLists.txt
+++ b/epan/dissectors/asn1/p7/CMakeLists.txt
@@ -37,7 +37,7 @@ set( SRC_FILES
${EXT_ASN_FILE_LIST}
)
-set( A2W_FLAGS -b -L -C )
+set( A2W_FLAGS -b -C )
set( EXTRA_CNF
"${CMAKE_CURRENT_BINARY_DIR}/../p1/p1-exp.cnf"
diff --git a/epan/dissectors/asn1/p7/packet-p7-template.c b/epan/dissectors/asn1/p7/packet-p7-template.c
index 4df623bac0..04851e18f9 100644
--- a/epan/dissectors/asn1/p7/packet-p7-template.c
+++ b/epan/dissectors/asn1/p7/packet-p7-template.c
@@ -15,6 +15,7 @@
#include <epan/prefs.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-acse.h"
@@ -35,14 +36,14 @@ void proto_reg_handoff_p7(void);
static int seqno = 0;
/* Initialize the protocol and registered fields */
-static int proto_p7 = -1;
+static int proto_p7;
#include "packet-p7-val.h"
#include "packet-p7-hf.c"
/* Initialize the subtree pointers */
-static gint ett_p7 = -1;
+static gint ett_p7;
#include "packet-p7-ett.c"
#include "packet-p7-table.c" /* operation and error codes */
diff --git a/epan/dissectors/asn1/p772/packet-p772-template.c b/epan/dissectors/asn1/p772/packet-p772-template.c
index 4b20d84e15..93b7c2e235 100644
--- a/epan/dissectors/asn1/p772/packet-p772-template.c
+++ b/epan/dissectors/asn1/p772/packet-p772-template.c
@@ -31,14 +31,14 @@ void proto_reg_handoff_p772(void);
/* Initialize the protocol and registered fields */
-static int proto_p772 = -1;
+static int proto_p772;
#include "packet-p772-val.h"
#include "packet-p772-hf.c"
/* Initialize the subtree pointers */
-static gint ett_p772 = -1;
+static gint ett_p772;
#include "packet-p772-ett.c"
#include "packet-p772-fn.c"
diff --git a/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn b/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn
index d2f448e1c5..a8e6d15b9c 100644
--- a/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/pcap/PCAP-CommonDataTypes.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 25.453 V11.0.0 (2012-09)
+-- 3GPP TS 25.453 V17.0.0 (2022-04)
--
--9.3.5 Common Definitions
-- **************************************************************
@@ -9,10 +9,10 @@
-- **************************************************************
PCAP-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) pcap(4) version1 (1) pcap-CommonDataTypes (3) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/pcap/PCAP-Constants.asn b/epan/dissectors/asn1/pcap/PCAP-Constants.asn
index 2f72c09009..b1537ba49b 100644
--- a/epan/dissectors/asn1/pcap/PCAP-Constants.asn
+++ b/epan/dissectors/asn1/pcap/PCAP-Constants.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 25.453 V11.0.0 (2012-09)
+-- 3GPP TS 25.453 V17.0.0 (2022-04)
--
-- 9.3.6 Constant Definitions
-- **************************************************************
@@ -8,11 +8,11 @@
--
-- **************************************************************
-PCAP-Constants {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
-umts-Access (20) modules (3) pcap(4) version1 (1) pcap-Constants (4) }
+PCAP-Constants {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+umts-Access (20) modules (3) pcap(4) version1 (1) pcap-Constants (4) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -62,7 +62,7 @@ maxNrOfSets INTEGER ::= 3
maxRateMatching INTEGER ::= 256
maxNrOfTFs INTEGER ::= 32
maxTTI-count INTEGER ::= 4
-maxTS-1 INTEGER ::= 13
+maxTS-1 INTEGER ::= 13
maxCCTrCH INTEGER ::= 8
maxTF INTEGER ::= 32
maxTFC INTEGER ::= 1024
@@ -84,6 +84,11 @@ maxGANSSClockMod INTEGER ::= 4
maxGANSS-1 INTEGER ::= 7
maxNrOfIRATMeasurements INTEGER ::= 16
maxReportedGERANCells INTEGER ::= 6
+maxIonGridInfo INTEGER ::= 320
+maxAddPos INTEGER ::= 8
+maxBeacons INTEGER ::= 64
+maxBTs INTEGER ::= 32
+maxWLANs INTEGER ::= 64
-- **************************************************************
--
@@ -164,7 +169,7 @@ id-GANSS-CommonAssistanceData ProtocolIE-ID ::= 69
id-GANSS-GenericAssistanceDataList ProtocolIE-ID ::= 70
id-GANSS-MeasuredResultsList ProtocolIE-ID ::= 71
id-GANSS-UTRAN-TRU ProtocolIE-ID ::= 72
-id-GANSSPositioning ProtocolIE-ID ::= 73
+id-GANSSPositioning ProtocolIE-ID ::= 73
id-GANSS-PositioningDataSet ProtocolIE-ID ::= 74
id-GNSS-PositioningMethod ProtocolIE-ID ::= 75
id-NetworkAssistedGANSSSuport ProtocolIE-ID ::= 76
@@ -175,8 +180,8 @@ id-angleOfArrivalLCR ProtocolIE-ID ::= 80
id-extendedTimingAdvanceLCR ProtocolIE-ID ::= 81
id-additionalMeasurementInforLCR ProtocolIE-ID ::= 82
id-timingAdvanceLCR-R7 ProtocolIE-ID ::= 83
-id-rxTimingDeviationLCR ProtocolIE-ID ::= 84
-id-GPSReferenceTimeUncertainty ProtocolIE-ID ::= 85
+id-rxTimingDeviationLCR ProtocolIE-ID ::= 84
+id-GPSReferenceTimeUncertainty ProtocolIE-ID ::= 85
id-GANSS-AddIonoModelReq ProtocolIE-ID ::= 86
id-GANSS-EarthOrientParaReq ProtocolIE-ID ::= 87
id-GANSS-Additional-Ionospheric-Model ProtocolIE-ID ::= 88
@@ -217,7 +222,23 @@ id-GANSS-Day-Cycle ProtocolIE-ID ::= 122
id-ganss-Delta-T ProtocolIE-ID ::= 123
id-requestedCellIDGERANMeasurements ProtocolIE-ID ::= 124
id-CellId-IRATMeasuredResultsSets ProtocolIE-ID ::= 125
-id-IMSI ProtocolIE-ID ::= 126
-id-IMEI ProtocolIE-ID ::= 127
+-- WS extension
+id-Unknown-126 ProtocolIE-ID ::= 126
+id-Unknown-127 ProtocolIE-ID ::= 127
+id-IMSI ProtocolIE-ID ::= 128
+id-IMEI ProtocolIE-ID ::= 129
+id-GANSS-alm-keplerianBDSAlmanac ProtocolIE-ID ::= 130
+id-BDS-Ionospheric-Grid-Model ProtocolIE-ID ::= 131
+id-DBDS-Correction-Information ProtocolIE-ID ::= 132
+id-BDSIonosphericGridModel ProtocolIE-ID ::= 133
+id-DBDSCorrection ProtocolIE-ID ::= 134
+id-Confidence ProtocolIE-ID ::= 135
+id-ExtraDopplerInfoExtension ProtocolIE-ID ::= 136
+id-GANSS-Confidence ProtocolIE-ID ::= 137
+id-GANSS-ExtraDopplerExtension ProtocolIE-ID ::= 138
+id-Additional-PositioningDataSet ProtocolIE-ID ::= 139
+id-Additional-PositioningMethod ProtocolIE-ID ::= 140
+id-AddPos-MeasuredResults ProtocolIE-ID ::= 141
+id-AddPosSupport ProtocolIE-ID ::= 142
END
diff --git a/epan/dissectors/asn1/pcap/PCAP-Containers.asn b/epan/dissectors/asn1/pcap/PCAP-Containers.asn
index fea32ba24d..f495f8af48 100644
--- a/epan/dissectors/asn1/pcap/PCAP-Containers.asn
+++ b/epan/dissectors/asn1/pcap/PCAP-Containers.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 25.453 V11.0.0 (2012-09)
+-- 3GPP TS 25.453 V17.0.0 (2022-04)
--
-- 9.3.7 Container Definitions
-- **************************************************************
@@ -9,10 +9,10 @@
-- **************************************************************
PCAP-Containers {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) pcap(4) version1 (1) pcap-Containers (5) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -95,11 +95,11 @@ WITH SYNTAX {
--
-- **************************************************************
-ProtocolIE-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IEsSetParam}}
-ProtocolIE-Single-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Single-Container {PCAP-PROTOCOL-IES : IEsSetParam} ::=
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field {PCAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
@@ -124,7 +124,7 @@ ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, PCAP-PROTO
--
-- **************************************************************
-ProtocolExtensionContainer {PCAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ProtocolExtensionContainer {PCAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
@@ -140,7 +140,7 @@ ProtocolExtensionField {PCAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENC
--
-- **************************************************************
-PrivateIE-Container {PCAP-PRIVATE-IES : IEsSetParam } ::=
+PrivateIE-Container {PCAP-PRIVATE-IES : IEsSetParam } ::=
SEQUENCE (SIZE (1.. maxPrivateIEs)) OF
PrivateIE-Field {{IEsSetParam}}
diff --git a/epan/dissectors/asn1/pcap/PCAP-IEs.asn b/epan/dissectors/asn1/pcap/PCAP-IEs.asn
index 3e04f9dafe..d88e85c4cf 100644
--- a/epan/dissectors/asn1/pcap/PCAP-IEs.asn
+++ b/epan/dissectors/asn1/pcap/PCAP-IEs.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 25.453 V11.0.0 (2012-09)
+-- 3GPP TS 25.453 V17.0.0 (2022-04
--
-- 9.3.4 Information Element Definitions
-- **************************************************************
@@ -51,6 +51,11 @@ IMPORTS
maxGANSS-1,
maxNrOfIRATMeasurements,
maxReportedGERANCells,
+ maxIonGridInfo,
+ maxAddPos,
+ maxBeacons,
+ maxBTs,
+ maxWLANs,
id-UTRAN-GPSReferenceTime,
@@ -115,7 +120,20 @@ IMPORTS
id-GPS-Week-Cycle,
id-GANSS-Day-Cycle,
id-ganss-Delta-T,
- id-requestedCellIDGERANMeasurements
+ id-requestedCellIDGERANMeasurements,
+ id-GANSS-alm-keplerianBDSAlmanac,
+ id-BDS-Ionospheric-Grid-Model,
+ id-DBDS-Correction-Information,
+ id-BDSIonosphericGridModel,
+ id-DBDSCorrection,
+ id-Confidence,
+ id-ExtraDopplerInfoExtension,
+ id-GANSS-Confidence,
+ id-GANSS-ExtraDopplerExtension,
+ id-Additional-PositioningDataSet,
+ id-Additional-PositioningMethod,
+ id-AddPos-MeasuredResults,
+ id-AddPosSupport
FROM PCAP-Constants
@@ -163,6 +181,105 @@ AdditionalMethodType ::= ENUMERATED {
...
}
+-- **************************************************************
+--
+-- Additional Positioning Measured Results
+--
+-- **************************************************************
+
+AddPos-MeasuredResults ::= SEQUENCE (SIZE (1..maxAddPos)) OF AddPos-MeasuredResults-Element
+
+AddPos-MeasuredResults-Element ::= SEQUENCE {
+ timestamp UTCTime OPTIONAL,
+ type CHOICE {
+ barometricPressure SEQUENCE {
+ uncompensatedBarometricPressure BaroMeasurement,
+ iE-Extensions ProtocolExtensionContainer { { BarometricPressure-ExtIEs } } OPTIONAL,
+ ...
+ },
+ wlan SEQUENCE {
+ wlanMeasurementList WLANMeasurementList,
+ iE-Extensions ProtocolExtensionContainer { { WLANMeasurementList-ExtIEs } } OPTIONAL,
+ ...
+ },
+ bt SEQUENCE {
+ btMeasurementList BTMeasurementList,
+ iE-Extensions ProtocolExtensionContainer { { BTMeasurementList-ExtIEs } } OPTIONAL,
+ ...
+ },
+ mbs SEQUENCE {
+ mbsMeasurementList MBSMeasurementList,
+ iE-Extensions ProtocolExtensionContainer { { MBSMeasurementList-ExtIEs } } OPTIONAL,
+ ...
+ },
+ ...
+ },
+ ...
+}
+
+BarometricPressure-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+WLANMeasurementList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BTMeasurementList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSMeasurementList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+WLANMeasurementList ::= SEQUENCE (SIZE (1..maxWLANs)) OF WLANMeasurementList-Element
+
+WLANMeasurementList-Element ::= SEQUENCE {
+ wlanBSSID OCTET STRING (SIZE (6)),
+ wlanSSID OCTET STRING (SIZE(1..32)) OPTIONAL,
+ wlanRSSI INTEGER(-127..128) OPTIONAL,
+ wlanRTTvalue INTEGER(0..16777215) OPTIONAL,
+ wlanRTTunits ENUMERATED { microseconds,hundredsofnanoseconds, tensofnanoseconds, nanoseconds, tenthsofnanosecond, ...} OPTIONAL,
+ wlanRTTaccuracy INTEGER(0..255) OPTIONAL,
+ wlanAPChannelFrequency INTEGER(0..256) OPTIONAL,
+ wlanServingFlag BOOLEAN OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { WLANMeasurementList-Element-ExtIEs } } OPTIONAL,
+ ...
+}
+
+WLANMeasurementList-Element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BTMeasurementList ::= SEQUENCE (SIZE (1..maxBTs)) OF BTMeasurementList-Element
+
+BTMeasurementList-Element ::= SEQUENCE {
+ btADDR OCTET STRING (SIZE(6)),
+ btRSSI INTEGER(-127..128) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BTMeasurementList-Element-ExtIEs } } OPTIONAL,
+ ...
+}
+
+BTMeasurementList-Element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBSMeasurementList ::= SEQUENCE (SIZE (1..maxBeacons)) OF MBSMeasurementList-Element
+
+MBSMeasurementList-Element ::= SEQUENCE {
+ transmitterID INTEGER(0..32767),
+ codephase INTEGER(0..2097151),
+ codephaseRMS INTEGER(0..63),
+ iE-Extensions ProtocolExtensionContainer { { MBSMeasurementList-Element-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSMeasurementList-Element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BaroMeasurement ::= INTEGER(30000..115000)
-- **************************************************************
--
@@ -229,7 +346,10 @@ CauseRadioNetwork ::= ENUMERATED {
position-calculation-error-invalid-GANSS-measured-results,
position-calculation-error-AGANSS-positioning-method-not-supported,
ue-positioning-error-Not-enough-GANSS-Satellites,
- ue-positioning-error-Not-Accomplished-GANSS-Timing-of-Cell-Frames
+ ue-positioning-error-Not-Accomplished-GANSS-Timing-of-Cell-Frames,
+ position-calculation-error-invalid-BDS-measured-results,
+ ue-Positioning-Error-Not-enough-BDS-Satellites,
+ position-calculation-error-A-BDS-positioning-method-not-supported
}
CauseTransport ::= ENUMERATED {
@@ -590,6 +710,7 @@ ClientType ::= ENUMERATED {
plmn-operator-target-ms-service-support,
...
}
+
-- **************************************************************
--
-- CriticalityDiagnostics
@@ -726,11 +847,11 @@ RRC ::= INTEGER (-127..127)
-- IMEI
-IMEI ::= OCTET STRING (SIZE (3..8))
+IMEI ::= OCTET STRING (SIZE (8))
-- IMSI
-IMSI ::= OCTET STRING (SIZE (8))
+IMSI ::= OCTET STRING (SIZE (3..8))
-- **************************************************************
@@ -896,7 +1017,7 @@ Extension-ReferenceTimeChoice-IE PCAP-PROTOCOL-IES ::= {
}
-Cell-Timing ::= SEQUENCE {
+Cell-Timing ::= SEQUENCE {
sfn INTEGER (0..4095),
uC-ID UC-ID,
iE-Extensions ProtocolExtensionContainer { { Cell-Timing-ExtIEs } } OPTIONAL,
@@ -937,13 +1058,14 @@ PositionDataUEbased-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
PositionData ::= SEQUENCE {
positioningDataDiscriminator PositioningDataDiscriminator,
positioningDataSet PositioningDataSet OPTIONAL,
--- This IE shall be present if the PositioningDataDiscriminator IE is set to the value "0000" --
+-- This IE shall be present if the PositioningDataDiscriminator IE is set to the value "0000" --
iE-Extensions ProtocolExtensionContainer { {PositionData-ExtIEs} } OPTIONAL,
...
}
PositionData-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
- { ID id-GANSS-PositioningDataSet CRITICALITY ignore EXTENSION GANSS-PositioningDataSet PRESENCE optional },
+ { ID id-GANSS-PositioningDataSet CRITICALITY ignore EXTENSION GANSS-PositioningDataSet PRESENCE optional}|
+ { ID id-Additional-PositioningDataSet CRITICALITY ignore EXTENSION Additional-PositioningDataSet PRESENCE optional},
...
}
@@ -957,6 +1079,11 @@ PositioningDataSet ::= SEQUENCE(SIZE(1..maxSet)) OF PositioningMethodAndUsage
PositioningMethodAndUsage ::= OCTET STRING (SIZE(1))
+Additional-PositioningDataSet ::= SEQUENCE(SIZE(1..maxAddPos)) OF Additional-PositioningMethodAndUsage
+
+Additional-PositioningMethodAndUsage ::= OCTET STRING (SIZE(1))
+
+
-- **************************************************************
--
-- GPS-AcquisitionAssistance:
@@ -972,8 +1099,9 @@ GPS-AcquisitionAssistance ::= SEQUENCE {
}
GPS-AcquisitionAssistance-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
- {ID id-UTRAN-GPSReferenceTime CRITICALITY ignore EXTENSION UTRAN-GPSReferenceTime PRESENCE optional} |
- {ID id-GPSReferenceTimeUncertainty CRITICALITY ignore EXTENSION GPSReferenceTimeUncertainty PRESENCE optional} ,
+ {ID id-UTRAN-GPSReferenceTime CRITICALITY ignore EXTENSION UTRAN-GPSReferenceTime PRESENCE optional}|
+ {ID id-GPSReferenceTimeUncertainty CRITICALITY ignore EXTENSION GPSReferenceTimeUncertainty PRESENCE optional}|
+ {ID id-Confidence CRITICALITY ignore EXTENSION Confidence PRESENCE optional},
...
}
@@ -994,6 +1122,7 @@ AcquisitionSatInfo ::= SEQUENCE {
}
AcquisitionSatInfo-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ {ID id-ExtraDopplerInfoExtension CRITICALITY ignore EXTENSION ExtraDopplerInfoExtension PRESENCE optional},
...
}
@@ -1008,9 +1137,23 @@ ExtraDopplerInfo-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+ExtraDopplerInfoExtension ::= SEQUENCE {
+ doppler1stOrder INTEGER (-42..21),
+ dopplerUncertaintyExtension DopplerUncertaintyExtension,
+ iE-Extensions ProtocolExtensionContainer { { ExtraDopplerInfoExtension-ExtIEs } } OPTIONAL,
+ ...
+}
+
+ExtraDopplerInfoExtension-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
DopplerUncertainty ::= ENUMERATED {
hz12-5, hz25, hz50, hz100, hz200, ...}
+DopplerUncertaintyExtension ::= ENUMERATED {
+ hz300, hz400, hz500, hz600, noInformation, ...}
+
CodePhaseSearchWindow ::= ENUMERATED {
w1023, w1, w2, w3, w4, w6, w8,
w12, w16, w24, w32, w48, w64,
@@ -1039,6 +1182,8 @@ AzimuthAndElevationLSB-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+Confidence ::= INTEGER(0..100)
+
-- **************************************************************
--
-- GANSS Elements
@@ -1060,7 +1205,7 @@ AuxInfoGANSS-ID1-element-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
AuxInfoGANSS-ID3 ::= SEQUENCE (SIZE(1.. maxGANSSSat)) OF AuxInfoGANSS-ID3-element
-AuxInfoGANSS-ID3-element ::= SEQUENCE {
+AuxInfoGANSS-ID3-element ::= SEQUENCE {
svID INTEGER(0..63),
signalsAvailable BIT STRING (SIZE(8)),
channelNumber INTEGER (-7..13),
@@ -1146,7 +1291,7 @@ DGANSS-SignalInformationItem ::= SEQUENCE {
}
DGANSS-SignalInformationItem-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
- {ID id-DGNSS-ValidityPeriod CRITICALITY ignore EXTENSION DGNSS-ValidityPeriod PRESENCE optional},
+ {ID id-DGNSS-ValidityPeriod CRITICALITY ignore EXTENSION DGNSS-ValidityPeriod PRESENCE optional},
...
}
@@ -1155,7 +1300,8 @@ GANSS-AddClockModels ::= CHOICE {
cnavClockModel CNAVclockModel,
glonassClockModel GLONASSclockModel,
sbasClockModel SBASclockModel,
- ...
+ ...,
+ bDSClockModel BDSClockModel
}
GANSS-AddOrbitModels ::= CHOICE {
@@ -1163,7 +1309,8 @@ GANSS-AddOrbitModels ::= CHOICE {
cnavKeplerianSet NavModel-CNAVKeplerianSet,
glonassECEF NavModel-GLONASSecef,
sbasECEF NavModel-SBASecef,
- ...
+ ...,
+ bDSKeplerianSet NavModel-BDSKeplerianSet
}
GANSS-Additional-Ionospheric-Model ::= SEQUENCE {
@@ -1194,6 +1341,41 @@ GANSS-Additional-UTC-Models ::= CHOICE {
utcModel1 UTCmodelSet1,
utcModel2 UTCmodelSet2,
utcModel3 UTCmodelSet3,
+ ...,
+ utcModel4 UTCmodelSet4
+}
+
+GANSS-ALM-BDSKeplericanset ::= SEQUENCE {
+ satellite-Information-BDS-KP-List Satellite-Information-BDS-KP-List,
+ ie-Extensions ProtocolExtensionContainer { { GANSS-ALM-BDSKeplericanset-ExtIEs } } OPTIONAL,
+ ...
+}
+
+GANSS-ALM-BDSKeplericanset-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Satellite-Information-BDS-KP-List ::= SEQUENCE (SIZE (1..maxGANSSSatAlmanac)) OF Satellite-Information-BDS-KP-Item
+
+Satellite-Information-BDS-KP-Item ::= SEQUENCE {
+ sVID-BDS INTEGER (0..63),
+ tOA-BDS BIT STRING( SIZE(8) ),
+ a21-BDS BIT STRING( SIZE(24) ),
+ e-BDS BIT STRING( SIZE(17) ),
+ omg-lower-BDS BIT STRING( SIZE(24) ),
+ m0-BDS BIT STRING( SIZE(24) ),
+ omg-0-BDS BIT STRING( SIZE(24) ),
+ omg-upper-BDS BIT STRING( SIZE(17) ),
+ delta-i-BDS BIT STRING( SIZE(16) ),
+ a0-BDS BIT STRING( SIZE(11) ),
+ a1-BDS BIT STRING( SIZE(11) ),
+-- The following IE is mandatory present if the sVID-BDS is between 0 and 29 and not needed otherwise.
+ hea-BDS BIT STRING( SIZE(9) ) OPTIONAL,
+ ie-Extensions ProtocolExtensionContainer { { Satellite-Information-BDS-KP-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+Satellite-Information-BDS-KP-Item-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -1274,11 +1456,12 @@ GANSS-AlmanacModel ::= CHOICE {
Extension-GANSS-AlmanacModel ::= ProtocolIE-Single-Container {{ Extension-GANSS-AlmanacModel-IE }}
Extension-GANSS-AlmanacModel-IE PCAP-PROTOCOL-IES ::= {
- { ID id-GANSS-alm-keplerianNAVAlmanac CRITICALITY ignore TYPE GANSS-ALM-NAVKeplerianSet PRESENCE mandatory}|
- { ID id-GANSS-alm-keplerianReducedAlmanac CRITICALITY ignore TYPE GANSS-ALM-ReducedKeplerianSet PRESENCE mandatory}|
- { ID id-GANSS-alm-keplerianMidiAlmanac CRITICALITY ignore TYPE GANSS-ALM-MidiAlmanacSet PRESENCE mandatory}|
- { ID id-GANSS-alm-keplerianGLONASS CRITICALITY ignore TYPE GANSS-ALM-GlonassAlmanacSet PRESENCE mandatory}|
- { ID id-GANSS-alm-ecefSBASAlmanac CRITICALITY ignore TYPE GANSS-ALM-ECEFsbasAlmanacSet PRESENCE mandatory}
+ { ID id-GANSS-alm-keplerianNAVAlmanac CRITICALITY ignore TYPE GANSS-ALM-NAVKeplerianSet PRESENCE mandatory}|
+ { ID id-GANSS-alm-keplerianReducedAlmanac CRITICALITY ignore TYPE GANSS-ALM-ReducedKeplerianSet PRESENCE mandatory}|
+ { ID id-GANSS-alm-keplerianMidiAlmanac CRITICALITY ignore TYPE GANSS-ALM-MidiAlmanacSet PRESENCE mandatory}|
+ { ID id-GANSS-alm-keplerianGLONASS CRITICALITY ignore TYPE GANSS-ALM-GlonassAlmanacSet PRESENCE mandatory}|
+ { ID id-GANSS-alm-ecefSBASAlmanac CRITICALITY ignore TYPE GANSS-ALM-ECEFsbasAlmanacSet PRESENCE mandatory}|
+ { ID id-GANSS-alm-keplerianBDSAlmanac CRITICALITY ignore TYPE GANSS-ALM-BDSKeplericanset PRESENCE mandatory}
}
@@ -1384,6 +1567,17 @@ GANSS-ExtraDoppler-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+GANSS-ExtraDopplerExtension ::= SEQUENCE {
+ dopplerFirstOrder INTEGER(-42..21),
+ dopplerUncertaintyExtension ENUMERATED{dH60,dH80,dH100,dH120,noInformation},
+ ie-Extensions ProtocolExtensionContainer { { GANSS-ExtraDopplerExtension-ExtIEs } } OPTIONAL,
+ ...
+}
+
+GANSS-ExtraDopplerExtension-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
GANSS-GenericAssistanceDataList ::= SEQUENCE (SIZE (1..maxGANSS)) OF GANSSGenericAssistanceData
GANSSGenericAssistanceData ::= SEQUENCE{
@@ -1402,11 +1596,73 @@ GANSSGenericAssistanceData ::= SEQUENCE{
GANSSGenericAssistance-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
{ ID id-GANSS-Additional-Time-Models CRITICALITY ignore EXTENSION GANSS-Additional-Time-Models PRESENCE optional }|
- { ID id-GANSS-Additional-Navigation-Models CRITICALITY ignore EXTENSION GANSS-Additional-Navigation-Models PRESENCE optional }|
- { ID id-GANSS-Additional-UTC-Models CRITICALITY ignore EXTENSION GANSS-Additional-UTC-Models PRESENCE optional }|
- { ID id-GANSS-Auxiliary-Information CRITICALITY ignore EXTENSION GANSS-Auxiliary-Information PRESENCE optional }|
- -- the following IE shall be present if 'GANSSID' in 'GANSSGenericAssistanceData' is '0' (SBAS)
- { ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional },
+ { ID id-GANSS-Additional-Navigation-Models CRITICALITY ignore EXTENSION GANSS-Additional-Navigation-Models PRESENCE optional }|
+ { ID id-GANSS-Additional-UTC-Models CRITICALITY ignore EXTENSION GANSS-Additional-UTC-Models PRESENCE optional }|
+ { ID id-GANSS-Auxiliary-Information CRITICALITY ignore EXTENSION GANSS-Auxiliary-Information PRESENCE optional }|
+ -- the following IE shall be present if ‘GANSSID’ in ‘GANSSGenericAssistanceData’ is ‘0’ (SBAS)
+ { ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional }|
+ { ID id-BDS-Ionospheric-Grid-Model CRITICALITY ignore EXTENSION BDS-Ionospheric-Grid-Model PRESENCE optional }|
+ { ID id-DBDS-Correction-Information CRITICALITY ignore EXTENSION DBDS-Correction-Information PRESENCE optional },
+ ...
+}
+
+BDS-Ionospheric-Grid-Model ::= SEQUENCE {
+ bDS-Reference-Time BDS-Reference-Time,
+ bDS-Ionospheric-Grid-Information BDS-Ionospheric-Grid-Information,
+ ie-Extensions ProtocolExtensionContainer { { BDS-Ionospheric-Grid-Model-ExtIEs } } OPTIONAL,
+ ...
+}
+
+BDS-Ionospheric-Grid-Model-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BDS-Reference-Time ::= INTEGER(0..3570) -- by step of 30
+
+BDS-Ionospheric-Grid-Information ::= SEQUENCE(SIZE(1.. maxIonGridInfo)) OF SEQUENCE {
+ iGP-number-BDS INTEGER (1..320),
+ vertical-Delay-BDS BIT STRING ( SIZE(9)),
+ gIVEI-BDS BIT STRING ( SIZE(4)),
+ ie-Extensions ProtocolExtensionContainer { { BDS-Ionospheric-Grid-Information-ExtIEs } } OPTIONAL,
+ ...
+}
+
+BDS-Ionospheric-Grid-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DBDS-Correction-Information ::= SEQUENCE {
+ bDS-Reference-Time BDS-Reference-Time,
+ dBDS-Information DBDS-Information,
+ ie-Extensions ProtocolExtensionContainer { { DBDS-Correction-Information-ExtIEs } } OPTIONAL,
+ ...
+}
+
+DBDS-Correction-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DBDS-Information ::= SEQUENCE(SIZE(1..maxSgnType)) OF SEQUENCE {
+ dBDS-Signal-ID GANSSID OPTIONAL,
+ dGANSS-Signal-Information DGANSS-Signal-Information,
+ ie-Extensions ProtocolExtensionContainer { { DBDS-Information-ExtIEs } } OPTIONAL,
+ ...
+}
+
+DBDS-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DGANSS-Signal-Information ::= SEQUENCE(SIZE(1.. maxGANSSSat)) OF SEQUENCE {
+ sat-ID-BDS INTEGER(0..63),
+ uDREI-BDS INTEGER(0..15),
+ rURAI-BDS INTEGER(0..15),
+ delta-t-BDS BIT STRING (SIZE (13)),
+ ie-Extensions ProtocolExtensionContainer { { DGANSS-Signal-Information-ExtIEs } } OPTIONAL,
+ ...
+}
+
+DGANSS-Signal-Information-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -1457,9 +1713,9 @@ GanssCodePhaseAmbiguityExt-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
GANSS-Ionospheric-Model ::= SEQUENCE {
- alpha-zero-ionos BIT STRING (SIZE (12)),
- alpha-one-ionos BIT STRING (SIZE (12)),
- alpha-two-ionos BIT STRING (SIZE (12)),
+ alpha-zero-ionos BIT STRING (SIZE (11)),
+ alpha-one-ionos BIT STRING (SIZE (11)),
+ alpha-two-ionos BIT STRING (SIZE (14)),
gANSS-IonosphereRegionalStormFlags GANSS-IonosphereRegionalStormFlags OPTIONAL,
ie-Extensions ProtocolExtensionContainer { { GANSS-Ionospheric-Model-ExtIEs } } OPTIONAL,
...
@@ -1484,8 +1740,8 @@ GANSS-IonosphereRegionalStormFlags-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
}
GANSS-KeplerianParametersAlm ::= SEQUENCE {
- t-oa INTEGER(0..255),
- iod-a INTEGER(0..3),
+ t-oa INTEGER(0..1023),
+ iod-a INTEGER(0..15),
gANSS-SatelliteInformationKP GANSS-SatelliteInformationKP,
ie-Extensions ProtocolExtensionContainer { { GANSS-KeplerianParametersAlm-ExtIEs } } OPTIONAL,
...
@@ -1617,6 +1873,7 @@ GANSS-ReferenceMeasurementInfo ::= SEQUENCE {
}
GANSS-ReferenceMeasurementInfo-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ {ID id-GANSS-Confidence CRITICALITY ignore EXTENSION Confidence PRESENCE optional},
...
}
@@ -1652,10 +1909,11 @@ GANSS-ReferenceTimeOnly-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
GANSS-SatelliteClockModelItem ::= SEQUENCE {
t-oc BIT STRING (SIZE(14)),
- a-i2 BIT STRING (SIZE(12)),
- a-i1 BIT STRING (SIZE(18)),
- a-i0 BIT STRING (SIZE(28)),
+ a-i2 BIT STRING (SIZE(6)),
+ a-i1 BIT STRING (SIZE(21)),
+ a-i0 BIT STRING (SIZE(31)),
t-gd BIT STRING (SIZE(10)) OPTIONAL,
+ sisa BIT STRING (SIZE(8)),
model-id INTEGER(0..3) OPTIONAL,
ie-Extensions ProtocolExtensionContainer { { GANSS-SatelliteClockModelItem-ExtIEs } } OPTIONAL,
...
@@ -1680,6 +1938,7 @@ GANSS-SatelliteInformationItem ::= SEQUENCE {
}
GANSS-SatelliteInformationItem-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ {ID id-GANSS-ExtraDopplerExtension CRITICALITY ignore EXTENSION GANSS-ExtraDopplerExtension PRESENCE optional},
...
}
@@ -1690,13 +1949,14 @@ GANSS-SatelliteInformationKPItem ::= SEQUENCE {
ganss-e-alm BIT STRING (SIZE (11)),
ganss-delta-I-alm BIT STRING (SIZE (11)),
ganss-omegadot-alm BIT STRING (SIZE (11)),
- ganss-svhealth-alm BIT STRING (SIZE (4)),
- ganss-delta-a-sqrt-alm BIT STRING (SIZE (17)),
+ ganss-svStatusINAV-alm BIT STRING (SIZE (4)),
+ ganss-svStatusFNAV-alm BIT STRING (SIZE (2)) OPTIONAL,
+ ganss-delta-a-sqrt-alm BIT STRING (SIZE (13)),
ganss-omegazero-alm BIT STRING (SIZE (16)),
ganss-m-zero-alm BIT STRING (SIZE (16)),
ganss-omega-alm BIT STRING (SIZE (16)),
- ganss-af-zero-alm BIT STRING (SIZE (14)),
- ganss-af-one-alm BIT STRING (SIZE (11)),
+ ganss-af-zero-alm BIT STRING (SIZE (16)),
+ ganss-af-one-alm BIT STRING (SIZE (13)),
ie-Extensions ProtocolExtensionContainer { { GANSS-SatelliteInformationKPItem-ExtIEs } } OPTIONAL,
...
}
@@ -1830,7 +2090,7 @@ Ganss-Sat-Info-AddNavList-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
GANSS-Sat-Info-Nav ::= SEQUENCE (SIZE(1..maxGANSSSat)) OF SEQUENCE {
satId INTEGER(0..63),
- svHealth BIT STRING (SIZE(5)),
+ svHealth BIT STRING (SIZE(9)),
iod BIT STRING (SIZE(10)),
ganssClockModel GANSS-Clock-Model,
ganssOrbitModel GANSS-Orbit-Model,
@@ -1868,7 +2128,7 @@ GANSS-Time-Model ::= SEQUENCE {
ganss-t-a0 INTEGER(-2147483648..2147483647),
ganss-t-a1 INTEGER(-8388608..8388607) OPTIONAL,
ganss-t-a2 INTEGER(-64..63) OPTIONAL,
- gnss-to-id ENUMERATED{gps,...,galileo,qzss,glonass},
+ gnss-to-id ENUMERATED{gps,...,galileo,qzss,glonass,bds},
ganss-wk-number INTEGER(0..8191) OPTIONAL,
ie-Extensions ProtocolExtensionContainer { { GANSS-Time-Model-ExtIEs } } OPTIONAL,
...
@@ -2035,7 +2295,7 @@ NavModel-NAVKeplerianSet-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
}
NavModel-SBASecef ::= SEQUENCE {
- -- the following IE shall be present if 'SBASclockModel' in 'GANSS-AddClockModels' is not included in 'Ganss-Sat-Info-AddNavList'
+ -- the following IE shall be present if ‘SBASclockModel’ in ‘GANSS-AddClockModels’ is not included in ‘Ganss-Sat-Info-AddNavList’
sbasTo BIT STRING (SIZE (13)) OPTIONAL,
sbasAccuracy BIT STRING (SIZE (4)),
sbasXg BIT STRING (SIZE (30)),
@@ -2055,6 +2315,33 @@ NavModel-SBASecef-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+NavModel-BDSKeplerianSet ::= SEQUENCE {
+ uRAIndex-BDS BIT STRING (SIZE (4)),
+ tOA-BDS BIT STRING (SIZE (17)),
+ a1-2-BDS BIT STRING (SIZE (32)),
+ e-BDS BIT STRING (SIZE (32)),
+ oMG-BDS BIT STRING (SIZE (32)),
+ dLTn-BDS BIT STRING (SIZE (16)),
+ m0-BDS BIT STRING (SIZE (32)),
+ oMG0-BDS BIT STRING (SIZE (32)),
+ oMGdot-BDS BIT STRING (SIZE (24)),
+ i0-BDS BIT STRING (SIZE (32)),
+ iDOT-BDS BIT STRING (SIZE (14)),
+ cuc-BDS BIT STRING (SIZE (18)),
+ cus-BDS BIT STRING (SIZE (18)),
+ crc-BDS BIT STRING (SIZE (18)),
+ crs-BDS BIT STRING (SIZE (18)),
+ cic-BDS BIT STRING (SIZE (18)),
+ cis-BDS BIT STRING (SIZE (18)),
+ aODE-BDS BIT STRING (SIZE (5)),
+ ie-Extensions ProtocolExtensionContainer { { NavModel-BDSKeplerianSet-ExtIEs } } OPTIONAL,
+ ...
+}
+
+NavModel-BDSKeplerianSet-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SBASclockModel ::= SEQUENCE {
sbasTo BIT STRING (SIZE (13)),
sbasAgfo BIT STRING (SIZE (12)),
@@ -2067,6 +2354,21 @@ SBASclockModel-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+BDSClockModel ::= SEQUENCE {
+ toc-BDS BIT STRING (SIZE (17) ),
+ a0-BDS BIT STRING (SIZE (24) ),
+ a1-BDS BIT STRING (SIZE (22) ),
+ a2-BDS BIT STRING (SIZE (11) ),
+ tGD1-BDS BIT STRING (SIZE (10) ),
+ aODC-BDS BIT STRING (SIZE (5) ),
+ ie-Extensions ProtocolExtensionContainer { { BDSClockModel-ExtIEs } } OPTIONAL,
+ ...
+}
+
+BDSClockModel-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
UTCmodelSet1 ::= SEQUENCE {
utcA0 BIT STRING (SIZE(16)),
utcA1 BIT STRING (SIZE(13)),
@@ -2116,6 +2418,23 @@ UTCmodelSet3-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+UTCmodelSet4 ::= SEQUENCE {
+ utca0-BDS BIT STRING (SIZE(32)),
+ utca1-BDS BIT STRING (SIZE(24)),
+ utcDeltatLS-BDS BIT STRING (SIZE(8)),
+ utcWNt BIT STRING (SIZE(8)),
+ utcDeltaTls BIT STRING (SIZE(8)),
+ utcWNlsf-BDS BIT STRING (SIZE(8)),
+ utcDN-BDS BIT STRING (SIZE(8)),
+ utcDeltaTlsf-BDS BIT STRING (SIZE(8)),
+ ie-Extensions ProtocolExtensionContainer { { UTCmodelSet4-ExtIEs } } OPTIONAL,
+ ...
+}
+
+UTCmodelSet4-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
UTRAN-GANSSReferenceTimeDL ::= SEQUENCE {
utran-GANSSTimingOfCellFrames INTEGER(0..3999999),
uC-ID UC-ID OPTIONAL,
@@ -2428,7 +2747,7 @@ UTRAN-GPS-DriftRate ::= ENUMERATED {
utran-GPSDrift25, utran-GPSDrift50, utran-GPSDrift-1,
utran-GPSDrift-2, utran-GPSDrift-5, utran-GPSDrift-10,
utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50,
- ...}
+ ...}
-- **************************************************************
--
@@ -2575,11 +2894,25 @@ GanssReqGenericData ::= SEQUENCE {
...}
GanssReqGenericData-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
- {ID id-ganssAddNavigationModel-req CRITICALITY ignore EXTENSION GANSS-AddNavigationModel-Req PRESENCE optional}|
- {ID id-ganssAddUTCModel-req CRITICALITY ignore EXTENSION GANSS-AddUTCModel-Req PRESENCE optional}|
- {ID id-ganssAuxInfo-req CRITICALITY ignore EXTENSION GANSS-AuxInfo-req PRESENCE optional}|
- {ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional}|
- {ID id-GANSS-AddADchoices CRITICALITY ignore EXTENSION GANSS-AddADchoices PRESENCE optional},
+ {ID id-ganssAddNavigationModel-req CRITICALITY ignore EXTENSION GANSS-AddNavigationModel-Req PRESENCE optional}|
+ {ID id-ganssAddUTCModel-req CRITICALITY ignore EXTENSION GANSS-AddUTCModel-Req PRESENCE optional}|
+ {ID id-ganssAuxInfo-req CRITICALITY ignore EXTENSION GANSS-AuxInfo-req PRESENCE optional}|
+ {ID id-GANSS-SBAS-ID CRITICALITY ignore EXTENSION GANSS-SBAS-ID PRESENCE optional}|
+ {ID id-GANSS-AddADchoices CRITICALITY ignore EXTENSION GANSS-AddADchoices PRESENCE optional}|
+ {ID id-BDSIonosphericGridModel CRITICALITY ignore EXTENSION BDSIonosphericGridModel PRESENCE optional}|
+ {ID id-DBDSCorrection CRITICALITY ignore EXTENSION DBDSCorrection PRESENCE optional},
+ ...
+}
+
+BDSIonosphericGridModel ::= BOOLEAN
+
+DBDSCorrection ::= SEQUENCE {
+ dGANSSSignalBDS BIT STRING (SIZE (8)),
+ iE-Extensions ProtocolExtensionContainer { { DBDSCorrection-ExtIEs } } OPTIONAL,
+ ...
+}
+
+DBDSCorrection-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -2771,8 +3104,10 @@ GANSSGenericDataReq ::= SEQUENCE {
ganss-AddNavModelsReq AddNavigationModelsGANSS OPTIONAL,
ganss-AddUtcModelsReq GANSS-AddUtcModelsReq OPTIONAL,
ganss-AuxInfoReq GANSS-AuxInfoReq OPTIONAL,
- -- the following IE shall be present if GANSSID is '0' (SBAS)
- ganss-SBAS-ID GANSS-SBAS-ID OPTIONAL
+ -- the following IE shall be present if GANSSID is ‘0’ (SBAS)
+ ganss-SBAS-ID GANSS-SBAS-ID OPTIONAL,
+ dBDS-Corrections DBDS-Corrections OPTIONAL,
+ bDS-Ionospheric-Grid-Model-Request BDS-Ionospheric-Grid-Model-Request OPTIONAL
}
AddNavigationModelsGANSS ::= SEQUENCE {
@@ -2801,6 +3136,22 @@ AddSatelliteRelatedDataGANSS-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
...
}
+BDS-Ionospheric-Grid-Model-Request ::= ENUMERATED {
+ requested,
+ ...
+}
+
+DBDS-Corrections ::= SEQUENCE {
+ transmissionGanssTimeIndicator TransmissionGanssTimeIndicator OPTIONAL,
+ dGANSS-Signal BIT STRING( SIZE (8)),
+ iE-Extensions ProtocolExtensionContainer { { DBDS-Corrections-ExtIEs } } OPTIONAL,
+ ...
+}
+
+DBDS-Corrections-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
GANSS-AddUtcModelsReq ::= SEQUENCE {
transmissionGanssTimeIndicator TransmissionGanssTimeIndicator OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { GANSS-AddUtcModelsReq-ExtIEs} } OPTIONAL,
@@ -3329,13 +3680,17 @@ PositioningMethod ::= SEQUENCE {
PositioningMethod-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
--- The following IE shall be present if the Selected Position Method IE value is set to "GNSS" or "OTDOA or GNSS"
- { ID id-GNSS-PositioningMethod CRITICALITY ignore EXTENSION GNSS-PositioningMethod PRESENCE conditional },
+-- The following IE shall be present if the Selected Position Method IE value is set to "GNSS" or “OTDOA or GNSS”
+ { ID id-GNSS-PositioningMethod CRITICALITY ignore EXTENSION GNSS-PositioningMethod PRESENCE conditional}|
+-- This IE shall be present if the Selected Position Method IE value is set to “GPS and AddPos” or “OTDOA or GPS and AddPos”
+ { ID id-Additional-PositioningMethod CRITICALITY ignore EXTENSION Additional-PositioningMethod PRESENCE conditional},
...
}
GNSS-PositioningMethod ::= BIT STRING (SIZE(9))
+Additional-PositioningMethod ::= BIT STRING (SIZE(8))
+
SelectedPositionMethod ::= ENUMERATED {
oTDOA,
gPS,
@@ -3344,7 +3699,9 @@ SelectedPositionMethod ::= ENUMERATED {
uTDOA,
...,
gNSS,
- oTDOA-or-GNSS
+ oTDOA-or-GNSS,
+ gPS-and-AddPos,
+ oTDOA-or-GPS-and-AddPos
}
-- **************************************************************
@@ -3500,7 +3857,8 @@ UE-PositioningCapability ::= SEQUENCE {
}
UE-PositioningCapability-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
- { ID id-NetworkAssistedGANSSSuport CRITICALITY ignore EXTENSION NetworkAssistedGANSSSupport PRESENCE optional },
+ { ID id-NetworkAssistedGANSSSuport CRITICALITY ignore EXTENSION NetworkAssistedGANSSSupport PRESENCE optional}|
+ { ID id-AddPosSupport CRITICALITY ignore EXTENSION AddPosSupport PRESENCE optional},
...
}
@@ -3519,8 +3877,27 @@ NetworkAssistedGANSSSupport ::= SEQUENCE (SIZE (1..maxGANSS)) OF SEQUENCE {
...
}
+AddPosSupport ::= SEQUENCE (SIZE (1..maxAddPos)) OF AddPosSupport-Element
+
+AddPosSupport-Element ::= SEQUENCE {
+ addPosID ENUMERATED {
+ barometricPressure,
+ wLAN,
+ bluetooth,
+ mBS,
+ ...
+ },
+ addPosMode ENUMERATED {
+ standalone,
+ ue-assisted,
+ both,
+ ...
+ },
+ ...
+}
+
NetworkAssistedGANSSSuport-ExtIEs PCAP-PROTOCOL-EXTENSION ::= {
- -- the following IE shall be present if 'GANSSID' in 'NetworkAssistedGANSSSupport' is '0' (SBAS)
+ -- the following IE shall be present if ‘GANSSID’ in ‘NetworkAssistedGANSSSupport’ is ‘0’ (SBAS)
{ ID id-GANSS-SBAS-IDs CRITICALITY ignore EXTENSION GANSS-SBAS-IDs PRESENCE optional }|
{ ID id-GANSS-Signal-IDs CRITICALITY ignore EXTENSION GANSS-Signal-IDs PRESENCE optional }|
{ ID id-supportGANSSNonNativeADchoices CRITICALITY ignore EXTENSION SupportGANSSNonNativeADchoices PRESENCE optional },
@@ -3858,6 +4235,7 @@ SFN-SFN-Drift ::= ENUMERATED {
FineSFNSFN ::= INTEGER (0..15)
-- Range 0..0.9375 step size 0.0625
+
-- **************************************************************
--
-- Vertical Accuracy Code
@@ -3939,7 +4317,7 @@ UTDOA-CELLDCH ::= SEQUENCE {
compressedModeAssistanceData Compressed-Mode-Assistance-Data OPTIONAL,
dCH-Information DCH-Information OPTIONAL,
e-DPCH-Information E-DPCH-Information OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { UTDOA-CELLDCH-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UTDOA-CELLDCH-ExtIEs} } OPTIONAL,
...
}
@@ -4101,7 +4479,7 @@ TrChInfoList ::= SEQUENCE (SIZE(1..maxTrCH)) OF
UL-TrCHInfo ::= SEQUENCE {
uL-TrCHtype UL-TrCHType,
tfs TransportFormatSet,
- iE-Extensions ProtocolExtensionContainer { { UL-TrCHInfo-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UL-TrCHInfo-ExtIEs} } OPTIONAL,
...
}
@@ -4566,7 +4944,7 @@ UschParameters ::= SEQUENCE {
uL-Timeslot-Information UL-Timeslot-Information,
tFCS TFCS,
trChInfo TrChInfoList,
- iE-Extensions ProtocolExtensionContainer { { UschParameters-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UschParameters-ExtIEs} } OPTIONAL,
...
}
diff --git a/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn b/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn
index a9d5b2c32b..dc759c404b 100644
--- a/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/pcap/PCAP-PDU-Contents.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 25.453 V11.0.0 (2012-09)
+-- 3GPP TS 25.453 V17.0.0 (2022-04)
--
--9.3.3 PDU Definitions
-- **************************************************************
@@ -9,10 +9,10 @@
-- **************************************************************
PCAP-PDU-Contents {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) pcap(4) version1 (1) pcap-PDU-Contents (1) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -39,8 +39,8 @@ IMPORTS
HorizontalAccuracyCode,
VerticalAccuracyCode,
RequestType,
- UE-PositioningCapability,
- UC-ID,
+ UE-PositioningCapability,
+ UC-ID,
ResponseTime,
PositioningPriority,
ClientType,
@@ -71,7 +71,9 @@ IMPORTS
OTDOA-ReferenceCellInfoSAS-centric,
CellId-IRATMeasuredResultsSets,
IMSI,
- IMEI
+ IMEI,
+ AddPos-MeasuredResults
+
FROM PCAP-IEs
@@ -110,7 +112,7 @@ FROM PCAP-Containers
id-HorizontalAccuracyCode,
id-VerticalAccuracyCode,
id-RequestType,
- id-UE-PositioningCapability,
+ id-UE-PositioningCapability,
id-UC-id,
id-ResponseTime,
id-PositioningPriority,
@@ -143,14 +145,15 @@ FROM PCAP-Containers
id-OTDOA-ReferenceCellInfo,
id-CellId-IRATMeasuredResultsSets,
id-IMSI,
- id-IMEI
+ id-IMEI,
+ id-AddPos-MeasuredResults
FROM PCAP-Constants;
-- **************************************************************
--
--- POSITION CALCULATION REQUEST
+-- Position Calculation Request
--
-- **************************************************************
@@ -184,7 +187,7 @@ PositionCalculationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
--
--- POSITION CALCULATION RESPONSE
+-- Position Calculation Response
--
-- **************************************************************
@@ -208,7 +211,7 @@ PositionCalculationResponseExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
--
--- POSITION CALCULATION FAILURE
+-- Position Calculation Failure
--
-- **************************************************************
@@ -364,8 +367,8 @@ InformationExchangeInitiationFailure-Extensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PositionInitiationRequest ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PositionInitiationRequestIEs} },
- protocolExtensions ProtocolExtensionContainer { {PositionInitiationRequestExtensions} } OPTIONAL,
+ protocolIEs ProtocolIE-Container { {PositionInitiationRequestIEs} },
+ protocolExtensions ProtocolExtensionContainer { {PositionInitiationRequestExtensions} } OPTIONAL,
...
}
@@ -444,8 +447,8 @@ PositionInitiationFailureExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PositionActivationRequest ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PositionActivationRequestIEs} },
- protocolExtensions ProtocolExtensionContainer { {PositionActivationRequestExtensions} } OPTIONAL,
+ protocolIEs ProtocolIE-Container { {PositionActivationRequestIEs} },
+ protocolExtensions ProtocolExtensionContainer { {PositionActivationRequestExtensions} } OPTIONAL,
...
}
@@ -460,7 +463,7 @@ PositionActivationRequestIEs PCAP-PROTOCOL-IES ::= {
...
}
-PositionActivationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= {
+PositionActivationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= {
{ ID id-IncludeVelocity CRITICALITY ignore EXTENSION IncludeVelocity PRESENCE optional } |
{ ID id-AmountOfReporting CRITICALITY ignore EXTENSION AmountOfReporting PRESENCE optional } |
{ ID id-CellIDPositioning CRITICALITY ignore EXTENSION CellIDPositioning PRESENCE optional }|
@@ -472,18 +475,18 @@ PositionActivationRequestExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
--
-- POSITION ACTIVATION RESPONSE
---
+--
-- **************************************************************
PositionActivationResponse ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PositionActivationResponseIEs} },
- protocolExtensions ProtocolExtensionContainer { {PositionActivationResponseExtensions} } OPTIONAL,
+ protocolIEs ProtocolIE-Container { {PositionActivationResponseIEs} },
+ protocolExtensions ProtocolExtensionContainer { {PositionActivationResponseExtensions} } OPTIONAL,
...
}
PositionActivationResponseIEs PCAP-PROTOCOL-IES ::= {
{ ID id-UE-PositionEstimateInfo CRITICALITY ignore TYPE UE-PositionEstimateInfo PRESENCE optional } |
- { ID id-GPS-MeasuredResultsList CRITICALITY reject TYPE MeasuredResultsList PRESENCE optional } |
+ { ID id-GPS-MeasuredResultsList CRITICALITY reject TYPE MeasuredResultsList PRESENCE optional } |
{ ID id-CellId-MeasuredResultsSets CRITICALITY reject TYPE CellId-MeasuredResultsSets PRESENCE optional } |
{ ID id-OTDOA-MeasuredResultsSets CRITICALITY reject TYPE OTDOA-MeasuredResultsSets PRESENCE optional } |
{ ID id-UTDOA-Group CRITICALITY reject TYPE UTDOA-Group PRESENCE optional },
@@ -491,13 +494,14 @@ PositionActivationResponseIEs PCAP-PROTOCOL-IES ::= {
}
PositionActivationResponseExtensions PCAP-PROTOCOL-EXTENSION ::= {
- { ID id-VelocityEstimate CRITICALITY ignore EXTENSION VelocityEstimate PRESENCE optional } |
- { ID id-MeasInstructionsUsed CRITICALITY ignore EXTENSION MeasInstructionsUsed PRESENCE optional } |
- { ID id-GANSS-MeasuredResultsList CRITICALITY reject EXTENSION GANSS-MeasuredResultsList PRESENCE optional } |
- { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional } |
- { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional } |
- { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional } |
- { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional },
+ { ID id-VelocityEstimate CRITICALITY ignore EXTENSION VelocityEstimate PRESENCE optional}|
+ { ID id-MeasInstructionsUsed CRITICALITY ignore EXTENSION MeasInstructionsUsed PRESENCE optional}|
+ { ID id-GANSS-MeasuredResultsList CRITICALITY reject EXTENSION GANSS-MeasuredResultsList PRESENCE optional}|
+ { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional}|
+ { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional}|
+ { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional}|
+ { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional}|
+ { ID id-AddPos-MeasuredResults CRITICALITY reject EXTENSION AddPos-MeasuredResults PRESENCE optional},
...
}
@@ -509,8 +513,8 @@ PositionActivationResponseExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PositionActivationFailure ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PositionActivationFailureIEs} },
- protocolExtensions ProtocolExtensionContainer { {PositionActivationFailureExtensions} } OPTIONAL,
+ protocolIEs ProtocolIE-Container { {PositionActivationFailureIEs} },
+ protocolExtensions ProtocolExtensionContainer { {PositionActivationFailureExtensions} } OPTIONAL,
...
}
@@ -611,7 +615,7 @@ InformationExchangeFailureIndication-Extensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
--
--- ERROR INDICATION
+-- Error Indication
--
-- **************************************************************
@@ -638,8 +642,8 @@ ErrorIndicationExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PositionParameterModification ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {PositionParameterModificationIEs} },
- protocolExtensions ProtocolExtensionContainer { {PositionParameterModificationExtensions} } OPTIONAL,
+ protocolIEs ProtocolIE-Container { {PositionParameterModificationIEs} },
+ protocolExtensions ProtocolExtensionContainer { {PositionParameterModificationExtensions} } OPTIONAL,
...
}
@@ -661,7 +665,7 @@ PositionParameterModificationExtensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PrivateMessage ::= SEQUENCE {
- privateIEs PrivateIE-Container {{PrivateMessage-IEs}},
+ privateIEs PrivateIE-Container {{PrivateMessage-IEs}},
...
}
@@ -676,8 +680,8 @@ PrivateMessage-IEs PCAP-PRIVATE-IES ::= {
-- **************************************************************
Abort ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {AbortIEs} },
- protocolExtensions ProtocolExtensionContainer { {AbortExtensions} } OPTIONAL,
+ protocolIEs ProtocolIE-Container { {AbortIEs} },
+ protocolExtensions ProtocolExtensionContainer { {AbortExtensions} } OPTIONAL,
...
}
@@ -686,7 +690,7 @@ AbortIEs PCAP-PROTOCOL-IES ::= {
...
}
-AbortExtensions PCAP-PROTOCOL-EXTENSION ::= {
+AbortExtensions PCAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -707,7 +711,7 @@ PositionPeriodicReport ::= SEQUENCE {
PositionPeriodicReport-IEs PCAP-PROTOCOL-IES ::= {
{ ID id-UE-PositionEstimateInfo CRITICALITY ignore TYPE UE-PositionEstimateInfo PRESENCE optional } |
{ ID id-VelocityEstimate CRITICALITY ignore TYPE VelocityEstimate PRESENCE optional } |
- { ID id-GPS-MeasuredResultsList CRITICALITY ignore TYPE MeasuredResultsList PRESENCE optional } |
+ { ID id-GPS-MeasuredResultsList CRITICALITY ignore TYPE MeasuredResultsList PRESENCE optional } |
{ ID id-CellId-MeasuredResultsSets CRITICALITY ignore TYPE CellId-MeasuredResultsSets PRESENCE optional } |
{ ID id-OTDOA-MeasuredResultsSets CRITICALITY ignore TYPE OTDOA-MeasuredResultsSets PRESENCE optional } |
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional } ,
@@ -715,11 +719,12 @@ PositionPeriodicReport-IEs PCAP-PROTOCOL-IES ::= {
}
PositionPeriodicReport-Extensions PCAP-PROTOCOL-EXTENSION ::= {
- { ID id-GANSS-MeasuredResultsList CRITICALITY ignore EXTENSION GANSS-MeasuredResultsList PRESENCE optional } |
- { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional } |
- { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional } |
- { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional } |
- { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional },
+ { ID id-GANSS-MeasuredResultsList CRITICALITY ignore EXTENSION GANSS-MeasuredResultsList PRESENCE optional}|
+ { ID id-AdditionalGPSAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGPSAssistDataRequired PRESENCE optional}|
+ { ID id-AdditionalGanssAssistDataRequired CRITICALITY ignore EXTENSION AdditionalGanssAssistDataRequired PRESENCE optional}|
+ { ID id-OTDOA-ReferenceCellInfo CRITICALITY reject EXTENSION OTDOA-ReferenceCellInfoSAS-centric PRESENCE optional}|
+ { ID id-CellId-IRATMeasuredResultsSets CRITICALITY ignore EXTENSION CellId-IRATMeasuredResultsSets PRESENCE optional}|
+ { ID id-AddPos-MeasuredResults CRITICALITY ignore EXTENSION AddPos-MeasuredResults PRESENCE optional},
...
}
@@ -730,8 +735,8 @@ PositionPeriodicReport-Extensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PositionPeriodicResult ::= SEQUENCE {
- protocolIEs ProtocolIE-Container {{PositionPeriodicResult-IEs}},
- protocolExtensions ProtocolExtensionContainer {{PositionPeriodicResult-Extensions}} OPTIONAL,
+ protocolIEs ProtocolIE-Container {{PositionPeriodicResult-IEs}},
+ protocolExtensions ProtocolExtensionContainer {{PositionPeriodicResult-Extensions}} OPTIONAL,
...
}
@@ -755,8 +760,8 @@ PositionPeriodicResult-Extensions PCAP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
PositionPeriodicTermination ::= SEQUENCE {
- protocolIEs ProtocolIE-Container {{PositionPeriodicTermination-IEs}},
- protocolExtensions ProtocolExtensionContainer {{PositionPeriodicTermination-Extensions}} OPTIONAL,
+ protocolIEs ProtocolIE-Container {{PositionPeriodicTermination-IEs}},
+ protocolExtensions ProtocolExtensionContainer {{PositionPeriodicTermination-Extensions}} OPTIONAL,
...
}
@@ -765,7 +770,7 @@ PositionPeriodicTermination-IEs PCAP-PROTOCOL-IES ::= {
...
}
-PositionPeriodicTermination-Extensions PCAP-PROTOCOL-EXTENSION ::= {
+PositionPeriodicTermination-Extensions PCAP-PROTOCOL-EXTENSION ::= {
...
}
END
diff --git a/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn b/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn
index f67bdd2817..b9fb0c4af1 100644
--- a/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/pcap/PCAP-PDU-Descriptions.asn
@@ -1,5 +1,5 @@
--
--- 3GPP TS 25.453 V11.0.0 (2012-09)
+-- 3GPP TS 25.453 V17.0.0 (2022-04)
--
-- 9.3.2 Elementary Procedure Definitions
-- **************************************************************
@@ -8,11 +8,11 @@
--
-- **************************************************************
-PCAP-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+PCAP-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) pcap(4) version1 (1) pcap-PDU-Descriptions (0)}
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/pcap/packet-pcap-template.c b/epan/dissectors/asn1/pcap/packet-pcap-template.c
index 0e365859f2..779924c552 100644
--- a/epan/dissectors/asn1/pcap/packet-pcap-template.c
+++ b/epan/dissectors/asn1/pcap/packet-pcap-template.c
@@ -11,7 +11,7 @@
*
* Based on the RANAP dissector
*
- * References: ETSI TS 125 453 V7.9.0 (2008-02)
+ * References: ETSI TS 125 453 V17.0.0 (2022-04)
*/
#include "config.h"
@@ -40,21 +40,17 @@
void proto_register_pcap(void);
void proto_reg_handoff_pcap(void);
-static range_t *global_ssn_range;
-
-static dissector_table_t sccp_ssn_table;
-
#include "packet-pcap-val.h"
static dissector_handle_t pcap_handle = NULL;
/* Initialize the protocol and registered fields */
-static int proto_pcap = -1;
+static int proto_pcap;
#include "packet-pcap-hf.c"
/* Initialize the subtree pointers */
-static int ett_pcap = -1;
+static int ett_pcap;
#include "packet-pcap-ett.c"
@@ -133,19 +129,8 @@ dissect_pcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_
void
proto_reg_handoff_pcap(void)
{
- static gboolean prefs_initialized = FALSE;
- static range_t *ssn_range;
-
- if (! prefs_initialized) {
- sccp_ssn_table = find_dissector_table("sccp.ssn");
- prefs_initialized = TRUE;
#include "packet-pcap-dis-tab.c"
- } else {
- dissector_delete_uint_range("sccp.ssn", ssn_range, pcap_handle);
- wmem_free(wmem_epan_scope(), ssn_range);
- }
- ssn_range = range_copy(wmem_epan_scope(), global_ssn_range);
- dissector_add_uint_range("sccp.ssn", ssn_range, pcap_handle);
+ dissector_add_for_decode_as_with_preference("sccp.ssn", pcap_handle);
}
/*--- proto_register_pcap -------------------------------------------*/
@@ -164,7 +149,7 @@ void proto_register_pcap(void) {
#include "packet-pcap-ettarr.c"
};
- module_t *pcap_module;
+ /* module_t *pcap_module; */
/* Register protocol */
proto_pcap = proto_register_protocol(PNAME, PSNAME, PFNAME);
@@ -172,7 +157,7 @@ void proto_register_pcap(void) {
proto_register_field_array(proto_pcap, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
- pcap_module = prefs_register_protocol(proto_pcap, proto_reg_handoff_pcap);
+ /* pcap_module = prefs_register_protocol(proto_pcap, NULL); */
/* Register dissector */
pcap_handle = register_dissector("pcap", dissect_pcap, proto_pcap);
@@ -188,13 +173,6 @@ void proto_register_pcap(void) {
pcap_proc_out_dissector_table = register_dissector_table("pcap.proc.out", "PCAP-ELEMENTARY-PROCEDURE Outcome", proto_pcap, FT_UINT32, BASE_DEC);
- /* Preferences */
- /* Set default SSNs */
- range_convert_str(wmem_epan_scope(), &global_ssn_range, "", MAX_SSN);
-
- prefs_register_range_preference(pcap_module, "ssn", "SCCP SSNs",
- "SCCP (and SUA) SSNs to decode as PCAP",
- &global_ssn_range, MAX_SSN);
}
diff --git a/epan/dissectors/asn1/pcap/pcap.cnf b/epan/dissectors/asn1/pcap/pcap.cnf
index c5c99a0049..5d51704652 100644
--- a/epan/dissectors/asn1/pcap/pcap.cnf
+++ b/epan/dissectors/asn1/pcap/pcap.cnf
@@ -70,7 +70,8 @@ GANSS-PositioningInstructions/additionalAssistanceDataRequest ABBREV=gANSS-Posit
#.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, &pcap_ProtocolIE_ID_vals_ext, "unknown (%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
+ val_to_str_ext(ProtocolIE_ID, &pcap_ProtocolIE_ID_vals_ext, "unknown (%d)"));
}
#.END
@@ -83,8 +84,8 @@ GANSS-PositioningInstructions/additionalAssistanceDataRequest ABBREV=gANSS-Posit
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
#.FN_FTR ProcedureCode
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
- val_to_str(ProcedureCode, pcap_ProcedureCode_vals,
- "unknown message"));
+ val_to_str_const(ProcedureCode, pcap_ProcedureCode_vals,
+ "unknown message"));
#.END
#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
@@ -274,6 +275,19 @@ id-requestedCellIDGERANMeasurements ProtocolIE-ID
id-CellId-IRATMeasuredResultsSets ProtocolIE-ID
id-IMSI ProtocolIE-ID
id-IMEI ProtocolIE-ID
+id-GANSS-alm-keplerianBDSAlmanac ProtocolIE-ID
+id-BDS-Ionospheric-Grid-Model ProtocolIE-ID
+id-DBDS-Correction-Information ProtocolIE-ID
+id-BDSIonosphericGridModel ProtocolIE-ID
+id-DBDSCorrection ProtocolIE-ID
+id-Confidence ProtocolIE-ID
+id-ExtraDopplerInfoExtension ProtocolIE-ID
+id-GANSS-Confidence ProtocolIE-ID
+id-GANSS-ExtraDopplerExtension ProtocolIE-ID
+id-Additional-PositioningDataSet ProtocolIE-ID
+id-Additional-PositioningMethod ProtocolIE-ID
+id-AddPos-MeasuredResults ProtocolIE-ID
+id-AddPosSupport ProtocolIE-ID
#.END
@@ -316,6 +330,7 @@ UE-PositionEstimateInfo N pcap.ies id-UE-PositionEstimateInfo
OTDOA-MeasuredResultsSets N pcap.ies id-OTDOA-MeasuredResultsSets
PeriodicPosCalcInfo N pcap.ies id-PeriodicPosCalcInfo
PeriodicTerminationCause N pcap.ies id-PeriodicTerminationCause
+GANSS-ALM-BDSKeplericanset N pcap.ies id-GANSS-alm-keplerianBDSAlmanac
#PCAP-PROTOCOL-EXTENSION
CellId-MeasuredResultsSets N pcap.extension id-CellId-MeasuredResultsSets
@@ -396,7 +411,18 @@ RequestedCellIDGERANMeasurements N pcap.extension id-requestedCellIDGERANMeas
CellId-IRATMeasuredResultsSets N pcap.extension id-CellId-IRATMeasuredResultsSets
IMSI N pcap.extension id-IMSI
IMEI N pcap.extension id-IMEI
-
+BDS-Ionospheric-Grid-Model N pcap.extension id-BDS-Ionospheric-Grid-Model
+DBDS-Correction-Information N pcap.extension id-DBDS-Correction-Information
+BDSIonosphericGridModel N pcap.extension id-BDSIonosphericGridModel
+DBDSCorrection N pcap.extension id-DBDSCorrection
+Confidence N pcap.extension id-Confidence
+ExtraDopplerInfoExtension N pcap.extension id-ExtraDopplerInfoExtension
+Confidence N pcap.extension id-GANSS-Confidence
+GANSS-ExtraDopplerExtension N pcap.extension id-GANSS-ExtraDopplerExtension
+Additional-PositioningDataSet N pcap.extension id-Additional-PositioningDataSet
+Additional-PositioningMethod N pcap.extension id-Additional-PositioningMethod
+AddPos-MeasuredResults N pcap.extension id-AddPos-MeasuredResults
+AddPosSupport N pcap.extension id-AddPosSupport
#PCAP-ELEMENTARY-PROCEDURE
diff --git a/epan/dissectors/asn1/pkcs1/packet-pkcs1-template.c b/epan/dissectors/asn1/pkcs1/packet-pkcs1-template.c
index 21712bd85b..712944015e 100644
--- a/epan/dissectors/asn1/pkcs1/packet-pkcs1-template.c
+++ b/epan/dissectors/asn1/pkcs1/packet-pkcs1-template.c
@@ -27,7 +27,7 @@ void proto_register_pkcs1(void);
void proto_reg_handoff_pkcs1(void);
/* Initialize the protocol and registered fields */
-static int proto_pkcs1 = -1;
+static int proto_pkcs1;
#include "packet-pkcs1-hf.c"
/* Initialize the subtree pointers */
@@ -87,6 +87,9 @@ void proto_reg_handoff_pkcs1(void) {
/* ECDSA SHA-1 algorithm from RFC 3279 */
register_ber_oid_dissector("1.2.840.10045.4.1", dissect_ber_oid_NULL_callback, proto_pkcs1, "ecdsa-with-SHA1");
+ /* SM2-with-SM3 from GM/T 0006 Cryptographic application identifier criterion specification */
+ register_ber_oid_dissector("1.2.156.10197.1.501", dissect_ber_oid_NULL_callback, proto_pkcs1, "SM2-with-SM3");
+
/* ECDSA SHA2 algorithms from X9.62, RFC5480, RFC 5758, RFC 5912 */
register_ber_oid_dissector("1.2.840.10045.4.3.1", dissect_ber_oid_NULL_callback, proto_pkcs1, "ecdsa-with-SHA224");
register_ber_oid_dissector("1.2.840.10045.4.3.2", dissect_ber_oid_NULL_callback, proto_pkcs1, "ecdsa-with-SHA256");
@@ -113,11 +116,59 @@ void proto_reg_handoff_pkcs1(void) {
oid_add_from_string("sect571k1","1.3.132.0.38");
oid_add_from_string("sect571r1","1.3.132.0.39");
+ /* SM2 from GM/T 0006 Cryptographic application identifier criterion specification */
+ oid_add_from_string("sm2","1.2.156.10197.1.301");
+
/* sha2 family, see RFC3447 and http://www.oid-info.com/get/2.16.840.1.101.3.4.2 */
oid_add_from_string("sha256", "2.16.840.1.101.3.4.2.1");
oid_add_from_string("sha384", "2.16.840.1.101.3.4.2.2");
oid_add_from_string("sha512", "2.16.840.1.101.3.4.2.3");
oid_add_from_string("sha224", "2.16.840.1.101.3.4.2.4");
+ /* SM3 from GM/T 0006 Cryptographic application identifier criterion specification */
+ oid_add_from_string("sm3","1.2.156.10197.1.401");
+
+ /* PQC digital signature algorithms from OQS-OpenSSL,
+ see https://github.com/open-quantum-safe/openssl/blob/OQS-OpenSSL_1_1_1-stable/oqs-template/oqs-sig-info.md */
+ oid_add_from_string("dilithium2", "1.3.6.1.4.1.2.267.7.4.4");
+ oid_add_from_string("p256_dilithium2", "1.3.9999.2.7.1");
+ oid_add_from_string("rsa3072_dilithium2", "1.3.9999.2.7.2");
+ oid_add_from_string("dilithium3", "1.3.6.1.4.1.2.267.7.6.5");
+ oid_add_from_string("p384_dilithium3", "1.3.9999.2.7.3");
+ oid_add_from_string("dilithium5", "1.3.6.1.4.1.2.267.7.8.7");
+ oid_add_from_string("p521_dilithium5", "1.3.9999.2.7.4");
+ oid_add_from_string("dilithium2_aes", "1.3.6.1.4.1.2.267.11.4.4");
+ oid_add_from_string("p256_dilithium2_aes", "1.3.9999.2.11.1");
+ oid_add_from_string("rsa3072_dilithium2_aes", "1.3.9999.2.11.2");
+ oid_add_from_string("dilithium3_aes", "1.3.6.1.4.1.2.267.11.6.5");
+ oid_add_from_string("p384_dilithium3_aes", "1.3.9999.2.11.3");
+ oid_add_from_string("dilithium5_aes", "1.3.6.1.4.1.2.267.11.8.7");
+ oid_add_from_string("p521_dilithium5_aes", "1.3.9999.2.11.4");
+ oid_add_from_string("falcon512", "1.3.9999.3.1");
+ oid_add_from_string("p256_falcon512", "1.3.9999.3.2");
+ oid_add_from_string("rsa3072_falcon512", "1.3.9999.3.3");
+ oid_add_from_string("falcon1024", "1.3.9999.3.4");
+ oid_add_from_string("p521_falcon1024", "1.3.9999.3.5");
+ oid_add_from_string("picnicl1full", "1.3.6.1.4.1.311.89.2.1.7");
+ oid_add_from_string("p256_picnicl1full", "1.3.6.1.4.1.311.89.2.1.8");
+ oid_add_from_string("rsa3072_picnicl1full", "1.3.6.1.4.1.311.89.2.1.9");
+ oid_add_from_string("picnic3l1", "1.3.6.1.4.1.311.89.2.1.21");
+ oid_add_from_string("p256_picnic3l1", "1.3.6.1.4.1.311.89.2.1.22");
+ oid_add_from_string("rsa3072_picnic3l1", "1.3.6.1.4.1.311.89.2.1.23");
+ oid_add_from_string("rainbowIclassic", "1.3.9999.5.1.1.1");
+ oid_add_from_string("p256_rainbowIclassic", "1.3.9999.5.1.2.1");
+ oid_add_from_string("rsa3072_rainbowIclassic", "1.3.9999.5.1.3.1");
+ oid_add_from_string("rainbowVclassic", "1.3.9999.5.3.1.1");
+ oid_add_from_string("p521_rainbowVclassic", "1.3.9999.5.3.2.1");
+ oid_add_from_string("sphincsharaka128frobust", "1.3.9999.6.1.1");
+ oid_add_from_string("p256_sphincsharaka128frobust", "1.3.9999.6.1.2");
+ oid_add_from_string("rsa3072_sphincsharaka128frobust", "1.3.9999.6.1.3");
+ oid_add_from_string("sphincssha256128frobust", "1.3.9999.6.4.1");
+ oid_add_from_string("p256_sphincssha256128frobust", "1.3.9999.6.4.2");
+ oid_add_from_string("rsa3072_sphincssha256128frobust", "1.3.9999.6.4.3");
+ oid_add_from_string("sphincsshake256128frobust", "1.3.9999.6.7.1");
+ oid_add_from_string("p256_sphincsshake256128frobust", "1.3.9999.6.7.2");
+ oid_add_from_string("rsa3072_sphincsshake256128frobust", "1.3.9999.6.7.3");
+
}
diff --git a/epan/dissectors/asn1/pkcs10/packet-pkcs10-template.c b/epan/dissectors/asn1/pkcs10/packet-pkcs10-template.c
index df5e81381d..33302dba51 100644
--- a/epan/dissectors/asn1/pkcs10/packet-pkcs10-template.c
+++ b/epan/dissectors/asn1/pkcs10/packet-pkcs10-template.c
@@ -40,8 +40,10 @@
void proto_register_pkcs10(void);
+static dissector_handle_t csr_handle;
+
/* Initialize the protocol and registered fields */
-static int proto_pkcs10 = -1;
+static int proto_pkcs10;
#include "packet-pkcs10-hf.c"
/* Initialize the subtree pointers */
@@ -67,6 +69,7 @@ void proto_register_pkcs10(void) {
proto_register_field_array(proto_pkcs10, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ csr_handle = register_dissector(PFNAME, dissect_CertificationRequest_PDU, proto_pkcs10);
register_ber_syntax_dissector("CertificationRequest", proto_pkcs10, dissect_CertificationRequest_PDU);
register_ber_oid_syntax(".p10", NULL, "CertificationRequest");
register_ber_oid_syntax(".csr", NULL, "CertificationRequest");
@@ -75,12 +78,10 @@ void proto_register_pkcs10(void) {
/*--- proto_reg_handoff_pkcs10 -------------------------------------------*/
void proto_reg_handoff_pkcs10(void) {
- dissector_handle_t csr_handle;
#include "packet-pkcs10-dis-tab.c"
- csr_handle = create_dissector_handle(dissect_CertificationRequest_PDU, proto_pkcs10);
dissector_add_string("media_type", "application/pkcs10", csr_handle); /* RFC 5967 */
dissector_add_string("rfc7468.preeb_label", "CERTIFICATE REQUEST", csr_handle); /* RFC 7468 */
- dissector_add_string("rfc7468.preeb_label", "NEW CERTIFICATE REQUEST", csr_handle); /* RFC 7468 Appendix A. Non-conforming expample*/
+ dissector_add_string("rfc7468.preeb_label", "NEW CERTIFICATE REQUEST", csr_handle); /* RFC 7468 Appendix A. Non-conforming example*/
}
diff --git a/epan/dissectors/asn1/pkcs12/packet-pkcs12-template.c b/epan/dissectors/asn1/pkcs12/packet-pkcs12-template.c
index cde3e2773d..8202b09cbc 100644
--- a/epan/dissectors/asn1/pkcs12/packet-pkcs12-template.c
+++ b/epan/dissectors/asn1/pkcs12/packet-pkcs12-template.c
@@ -41,13 +41,13 @@ void proto_register_pkcs12(void);
void proto_reg_handoff_pkcs12(void);
/* Initialize the protocol and registered fields */
-static int proto_pkcs12 = -1;
+static int proto_pkcs12;
-static int hf_pkcs12_X509Certificate_PDU = -1;
-static int hf_pkcs12_AuthenticatedSafe_PDU = -1; /* AuthenticatedSafe */
-static gint ett_decrypted_pbe = -1;
+static int hf_pkcs12_X509Certificate_PDU;
+static int hf_pkcs12_AuthenticatedSafe_PDU; /* AuthenticatedSafe */
+static gint ett_decrypted_pbe;
-static expert_field ei_pkcs12_octet_string_expected = EI_INIT;
+static expert_field ei_pkcs12_octet_string_expected;
static const char *object_identifier_id = NULL;
@@ -363,7 +363,7 @@ int PBE_decrypt_data(const char *object_identifier_id_param _U_, tvbuff_t *encry
static int strip_octet_string(tvbuff_t *tvb)
{
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
int offset = 0;
diff --git a/epan/dissectors/asn1/pkinit/PKINIT.asn b/epan/dissectors/asn1/pkinit/PKINIT.asn
index ff25738fb8..686ff9b400 100644
--- a/epan/dissectors/asn1/pkinit/PKINIT.asn
+++ b/epan/dissectors/asn1/pkinit/PKINIT.asn
@@ -1,8 +1,8 @@
---NOTE: we have to accomodate BOTH existing users of early drafts, such as
+--NOTE: we have to accommodate BOTH existing users of early drafts, such as
--packetcable as well as new users once the protocol is standardized.
--
--This asn1 file is based on draft-ietf-cat-kerberos-pk-init-20.txt
---but has been modified to acocmodate the Wireshark asn2wrs compiler
+--but has been modified to accommodate the Wireshark asn2wrs compiler
--and our environment
--
--new structures are uncommented and added on demand as they are required
@@ -18,13 +18,13 @@
--ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
--INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
--INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
---WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+--WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
--
KerberosV5-PK-INIT-SPEC {
iso(1) identified-organization(3) dod(6) internet(1)
- security(5) kerberosV5(2) modules(4) pkinit(5) }
-DEFINITIONS EXPLICIT TAGS ::=
+ security(5) kerberosV5(2) modules(4) pkinit(5) }
+DEFINITIONS EXPLICIT TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/pkinit/packet-pkinit-template.c b/epan/dissectors/asn1/pkinit/packet-pkinit-template.c
index 43f2e40aa0..2806f401cf 100644
--- a/epan/dissectors/asn1/pkinit/packet-pkinit-template.c
+++ b/epan/dissectors/asn1/pkinit/packet-pkinit-template.c
@@ -13,6 +13,7 @@
#include <epan/packet.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include "packet-ber.h"
#include "packet-pkinit.h"
@@ -28,16 +29,16 @@ void proto_register_pkinit(void);
void proto_reg_handoff_pkinit(void);
/* Initialize the protocol and registered fields */
-static int proto_pkinit = -1;
+static int proto_pkinit;
#include "packet-pkinit-hf.c"
/* Initialize the subtree pointers */
#include "packet-pkinit-ett.c"
-static int dissect_KerberosV5Spec2_KerberosTime(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
-static int dissect_KerberosV5Spec2_Realm(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
-static int dissect_KerberosV5Spec2_PrincipalName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
-static int dissect_pkinit_PKAuthenticator_Win2k(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
+static int dissect_KerberosV5Spec2_KerberosTime(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+static int dissect_KerberosV5Spec2_Realm(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+static int dissect_KerberosV5Spec2_PrincipalName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+static int dissect_pkinit_PKAuthenticator_Win2k(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
#include "packet-pkinit-fn.c"
@@ -54,19 +55,19 @@ dissect_pkinit_PA_PK_AS_REP(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ct
}
static int
-dissect_KerberosV5Spec2_KerberosTime(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
+dissect_KerberosV5Spec2_KerberosTime(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
offset = dissect_krb5_ctime(tree, tvb, offset, actx);
return offset;
}
static int
-dissect_KerberosV5Spec2_Realm(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
+dissect_KerberosV5Spec2_Realm(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
offset = dissect_krb5_realm(tree, tvb, offset, actx);
return offset;
}
static int
-dissect_KerberosV5Spec2_PrincipalName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
+dissect_KerberosV5Spec2_PrincipalName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
offset = dissect_krb5_cname(tree, tvb, offset, actx);
return offset;
}
diff --git a/epan/dissectors/asn1/pkinit/pkinit.cnf b/epan/dissectors/asn1/pkinit/pkinit.cnf
index a64c322c37..d30c964e37 100644
--- a/epan/dissectors/asn1/pkinit/pkinit.cnf
+++ b/epan/dissectors/asn1/pkinit/pkinit.cnf
@@ -13,8 +13,20 @@ PaPkAsRep
PA-PK-AS-REQ-Win2k
PA-PK-AS-REP-Win2k
-#.FN_BODY PKAuthenticator
+#.FN_BODY PA-PK-AS-REQ-Win2k
+ guint8 v = 1;
+
+ if (kerberos_is_win2k_pkinit(actx)) {
+ p_set_proto_data(actx->pinfo->pool, actx->pinfo, proto_pkinit, 0, &v);
+ }
+%(DEFAULT_BODY)s
if (kerberos_is_win2k_pkinit(actx)) {
+ p_remove_proto_data(actx->pinfo->pool, actx->pinfo, proto_pkinit, 0);
+ }
+
+#.FN_BODY PKAuthenticator
+
+ if (p_get_proto_data(actx->pinfo->pool, actx->pinfo, proto_pkinit, 0)) {
return dissect_pkinit_PKAuthenticator_Win2k(implicit_tag, tvb, offset, actx, tree, hf_index);
}
%(DEFAULT_BODY)s
diff --git a/epan/dissectors/asn1/pkix1explicit/PKIX1EXPLICIT93.asn b/epan/dissectors/asn1/pkix1explicit/PKIX1EXPLICIT93.asn
index 6cc643e6ad..9ee85d600e 100644
--- a/epan/dissectors/asn1/pkix1explicit/PKIX1EXPLICIT93.asn
+++ b/epan/dissectors/asn1/pkix1explicit/PKIX1EXPLICIT93.asn
@@ -32,18 +32,18 @@
--
--
--NOTE: This ASN1 definition have been significantly modified from the original
---version in RFC2459 in order to accomodate the featuresets available
+--version in RFC2459 in order to accommodate the feature sets available
--in the Wireshark projects asn2wrs compiler.
--It has also been modified and structures have been commented out that
--are already implemented in the X509 dissectors.
---Dissectors present already in the X509 dissectors should be implemented in
+--Dissectors present already in the X509 dissectors should be implemented in
--the template by hand as stubs that will just call the original
--dissector functions in X509 in order not to duplicate code.
--
---Structures and constructs in this definition are uncommented and
+--Structures and constructs in this definition are uncommented and
--implemented on-demand when someone needs them.
--
---If you export new types from this file, make sure to update the
+--If you export new types from this file, make sure to update the
--pkix1explicit_exp.cnf file with the proper definitions
@@ -151,7 +151,7 @@ Extensions ::= SEQUENCE OF Extension
Extension ::= SEQUENCE {
extnId OBJECT IDENTIFIER,
critical BOOLEAN DEFAULT FALSE,
- extnValue OCTET STRING
+ extnValue OCTET STRING
}
-- contains a DER encoding of a value of type
@@ -187,7 +187,7 @@ Extension ::= SEQUENCE {
-- Certificate Revocation List
--
--CertificateList ::= SIGNED { SEQUENCE {
--- version Version OPTIONAL,
+-- version Version OPTIONAL,
-- if present, shall be v2
-- signature AlgorithmIdentifier,
-- issuer Name,
@@ -207,7 +207,7 @@ Extension ::= SEQUENCE {
-- extnValue OCTET STRING }
-- contains a DER encoding of a value of type
-- &ExtnType for the
--- extension object identified by extnId
+-- extension object identified by extnId
--
-- The following information object set is defined to constrain the
-- set of legal CRL extensions.
@@ -228,7 +228,7 @@ Extension ::= SEQUENCE {
-- extnValue OCTET STRING }
-- contains a DER encoding of a value of type
-- &ExtnType for the
--- extension object identified by extnId
+-- extension object identified by extnId
--
-- The following information object set is defined to constrain the
-- set of legal CRL entry extensions.
@@ -238,10 +238,10 @@ Extension ::= SEQUENCE {
-- invalidityDate |
-- certificateIssuer }
--
--- information object classes used in the defintion
--- of certificates and CRLs
+-- information object classes used in the definition
+-- of certificates and CRLs
--
--- Parameterized Type SIGNED
+-- Parameterized Type SIGNED
--
-- SIGNED { ToBeSigned } ::= SEQUENCE {
-- toBeSigned ToBeSigned,
@@ -257,7 +257,7 @@ Extension ::= SEQUENCE {
--AlgorithmIdentifier ::= SEQUENCE {
-- algorithm ALGORITHM.&id({SupportedAlgorithms}),
-- parameters ALGORITHM.&Type({SupportedAlgorithms}
--- { @algorithm}) OPTIONAL
+-- { @algorithm}) OPTIONAL
--}
-- Definition of ALGORITHM
@@ -284,7 +284,7 @@ Extension ::= SEQUENCE {
-- the set is specified as extensible, since additional algorithms
-- may be supported
--
---SupportedAlgorithms ALGORITHM-ID ::= { ...,
+--SupportedAlgorithms ALGORITHM-ID ::= { ...,
-- rsaPublicKey |
-- rsaSHA-1 |
-- rsaMD5 |
@@ -334,9 +334,9 @@ dhpublicnumber OBJECT IDENTIFIER ::= {
iso(1) member-body(2) us(840) ansi-x942(10046) number-type(2) 1 }
DomainParameters ::= SEQUENCE {
- p INTEGER,
- g INTEGER,
- q INTEGER,
+ p INTEGER,
+ g INTEGER,
+ q INTEGER,
j INTEGER OPTIONAL,
validationParms ValidationParms OPTIONAL }
@@ -355,7 +355,7 @@ ValidationParms ::= SEQUENCE {
-- The ASN.1 in this section supports the Name type
-- and the directoryAttribute extension
--
--- attribute data types
+-- attribute data types
--
--Attribute ::= SEQUENCE {
-- type ATTRIBUTE.&id ({SupportedAttributes}),
@@ -378,8 +378,8 @@ AttributeTypeAndValue ::= SEQUENCE {
-- This one is implemented in the template as just a call to the
-- corresponding function in x509
---Name ::= CHOICE {
--- rdnSequence RDNSequence
+--Name ::= CHOICE {
+-- rdnSequence RDNSequence
--}
@@ -478,11 +478,11 @@ RelativeDistinguishedName ::= SET OF AttributeTypeAndValue
--
-- object identifiers for Name type and directory attribute support
--
--- Object identifier assignments
+-- Object identifier assignments
--
--id-at OBJECT IDENTIFIER ::= {joint-iso-ccitt(2) ds(5) 4}
--
--- Attributes
+-- Attributes
--
--id-at-commonName OBJECT IDENTIFIER ::= {id-at 3}
--id-at-surname OBJECT IDENTIFIER ::= {id-at 4}
@@ -498,8 +498,8 @@ RelativeDistinguishedName ::= SET OF AttributeTypeAndValue
--id-at-generationQualifier OBJECT IDENTIFIER ::= {id-at 44}
--id-at-dnQualifier OBJECT IDENTIFIER ::= {id-at 46}
--
--- Directory string type, used extensively in Name types
---Make it a PrintableString will amke it look prettier
+-- Directory string type, used extensively in Name types
+--Make it a PrintableString will make it look prettier
DirectoryString ::= PrintableString
--DirectoryString { INTEGER:maxSize } ::= CHOICE {
-- teletexString TeletexString (SIZE (1..maxSize)),
@@ -509,11 +509,11 @@ DirectoryString ::= PrintableString
-- utf8String UTF8String (SIZE(1..maxSize))
-- }
--
--- End of ASN.1 for Name type and directory attribute support
+-- End of ASN.1 for Name type and directory attribute support
--
--- The ASN.1 in this section supports X.400 style names
--- for implementations that use the x400Address component
--- of GeneralName.
+-- The ASN.1 in this section supports X.400 style names
+-- for implementations that use the x400Address component
+-- of GeneralName.
--
--ORAddress ::= SEQUENCE {
-- built-in-standard-attributes BuiltInStandardAttributes,
@@ -542,7 +542,7 @@ DirectoryString ::= PrintableString
-- personal-name [5] PersonalName OPTIONAL,
-- see also teletex-personal-name
-- organizational-unit-names [6] OrganizationalUnitNames OPTIONAL
--- see also teletex-organizational-unit-names
+-- see also teletex-organizational-unit-names
-- }
--
--CountryName ::= [APPLICATION 1] CHOICE {
diff --git a/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.c b/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.c
index e4d9199c92..c60e08b630 100644
--- a/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.c
+++ b/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.c
@@ -34,12 +34,12 @@ void proto_register_pkix1explicit(void);
void proto_reg_handoff_pkix1explicit(void);
/* Initialize the protocol and registered fields */
-static int proto_pkix1explicit = -1;
-static int hf_pkix1explicit_object_identifier_id = -1;
-static int hf_pkix1explicit_addressFamily_afn = -1;
-static int hf_pkix1explicit_addressFamily_safi = -1;
+static int proto_pkix1explicit;
+static int hf_pkix1explicit_object_identifier_id;
+static int hf_pkix1explicit_addressFamily_afn;
+static int hf_pkix1explicit_addressFamily_safi;
-static int ett_pkix1explicit_addressFamily = -1;
+static int ett_pkix1explicit_addressFamily;
#include "packet-pkix1explicit-hf.c"
@@ -47,38 +47,38 @@ static int ett_pkix1explicit_addressFamily = -1;
#include "packet-pkix1explicit-ett.c"
int
-dissect_pkix1explicit_Certificate(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_pkix1explicit_Certificate(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_x509af_Certificate(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
}
int
-dissect_pkix1explicit_CertificateList(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_pkix1explicit_CertificateList(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_x509af_CertificateList(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
}
int
-dissect_pkix1explicit_GeneralName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_pkix1explicit_GeneralName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_x509ce_GeneralName(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
}
int
-dissect_pkix1explicit_Name(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_pkix1explicit_Name(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_x509if_Name(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
}
int
-dissect_pkix1explicit_AlgorithmIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_pkix1explicit_AlgorithmIdentifier(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_x509af_AlgorithmIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
}
int
-dissect_pkix1explicit_SubjectPublicKeyInfo(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_pkix1explicit_SubjectPublicKeyInfo(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_x509af_SubjectPublicKeyInfo(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
diff --git a/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.h b/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.h
index 7eb3ba6784..61b77b4385 100644
--- a/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.h
+++ b/epan/dissectors/asn1/pkix1explicit/packet-pkix1explicit-template.h
@@ -11,15 +11,15 @@
#ifndef PACKET_PKIX1EXPLICIT_H
#define PACKET_PKIX1EXPLICIT_H
-int dissect_pkix1explicit_Certificate(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
-int dissect_pkix1explicit_CertificateList(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_Certificate(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_CertificateList(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
#if 0
-int dissect_pkix1explicit_CertificateSerialNumber(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_CertificateSerialNumber(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
#endif
-int dissect_pkix1explicit_Name(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
-int dissect_pkix1explicit_GeneralName(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
-int dissect_pkix1explicit_AlgorithmIdentifier(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,proto_tree *tree, int hf_index);
-int dissect_pkix1explicit_SubjectPublicKeyInfo(gboolean implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_Name(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_GeneralName(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_AlgorithmIdentifier(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx,proto_tree *tree, int hf_index);
+int dissect_pkix1explicit_SubjectPublicKeyInfo(bool implicit_tag, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
#include "packet-pkix1explicit-exp.h"
diff --git a/epan/dissectors/asn1/pkix1explicit/pkix1explicit.cnf b/epan/dissectors/asn1/pkix1explicit/pkix1explicit.cnf
index 29bc5f3cf5..c40477d4c3 100644
--- a/epan/dissectors/asn1/pkix1explicit/pkix1explicit.cnf
+++ b/epan/dissectors/asn1/pkix1explicit/pkix1explicit.cnf
@@ -61,7 +61,7 @@ Extensions B "1.2.840.113549.1.9.14" "pkcs-9-at-extensionRequest"
#.FN_BODY Extension/extnValue
gint8 appclass;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
/* skip past the T and L */
@@ -87,10 +87,10 @@ Extensions B "1.2.840.113549.1.9.14" "pkcs-9-at-extensionRequest"
proto_tree_add_item(subtree, hf_pkix1explicit_addressFamily_safi, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
#.TYPE_ATTR
-TeletexDomainDefinedAttribute/type DISPLAY = STR_UNICODE
+TeletexDomainDefinedAttribute/type DISPLAY = BASE_NONE
#.TYPE_ATTR
-TeletexDomainDefinedAttribute/value DISPLAY = STR_UNICODE
+TeletexDomainDefinedAttribute/value DISPLAY = BASE_NONE
#.TYPE_ATTR
Features/_item TYPE = FT_UINT16 STRINGS = VALS(tls_hello_extension_types) BLURB = "TLS Extension that MUST be supported by the server"
diff --git a/epan/dissectors/asn1/pkix1implicit/PKIX1IMPLICIT93.asn b/epan/dissectors/asn1/pkix1implicit/PKIX1IMPLICIT93.asn
index 23b8a402f1..2856cc7b4a 100644
--- a/epan/dissectors/asn1/pkix1implicit/PKIX1IMPLICIT93.asn
+++ b/epan/dissectors/asn1/pkix1implicit/PKIX1IMPLICIT93.asn
@@ -32,18 +32,18 @@
--
--
--NOTE: This ASN1 definition have been significantly modified from the original
---version in RFC2459 in order to accomodate the featuresets available
+--version in RFC2459 in order to accommodate the feature sets available
--in the Wireshark projects asn2wrs compiler.
--It has also been modified and structures have been commented out that
--are already implemented in the X509 dissectors.
---Dissectors present already in the X509 dissectors should be implemented in
+--Dissectors present already in the X509 dissectors should be implemented in
--the template by hand as stubs that will just call the original
--dissector functions in X509 in order not to duplicate code.
--
---Structures and constructs in this definition are uncommented and
+--Structures and constructs in this definition are uncommented and
--implemented on-demand when someone needs them.
--
---If you export new types from this file, make sure to update the
+--If you export new types from this file, make sure to update the
--pkix1implicit_exp.cnf file with the proper definitions
@@ -172,7 +172,7 @@ Dummy ::= NULL
-- issuerDomainPolicy CertPolicyId,
-- subjectDomainPolicy CertPolicyId }
--
--- Certificate subject and certificate issuer attributes extensions
+-- Certificate subject and certificate issuer attributes extensions
--
--subjectAltName EXTENSION ::= {
-- SYNTAX GeneralNames
@@ -190,7 +190,7 @@ Dummy ::= NULL
-- ediPartyName [5] EDIPartyName,
-- uniformResourceIdentifier [6] IA5String,
-- iPAddress [7] OCTET STRING,
--- registeredID [8] OBJECT IDENTIFIER
+-- registeredID [8] OBJECT IDENTIFIER
--}
--OTHER-NAME ::= TYPE-IDENTIFIER
@@ -209,7 +209,7 @@ EDIPartyName ::= SEQUENCE {
--
--AttributesSyntax ::= SEQUENCE SIZE (1..MAX) OF Attribute
--
--- Certification path constraints extensions
+-- Certification path constraints extensions
--
--basicConstraints EXTENSION ::= {
-- SYNTAX BasicConstraintsSyntax
@@ -247,7 +247,7 @@ EDIPartyName ::= SEQUENCE {
--
--SkipCerts ::= INTEGER (0..MAX)
--
--- Basic CRL extensions
+-- Basic CRL extensions
--
--cRLNumber EXTENSION ::= {
-- SYNTAX CRLNumber
@@ -290,7 +290,7 @@ EDIPartyName ::= SEQUENCE {
-- SYNTAX GeneralizedTime
-- IDENTIFIED BY id-ce-invalidityDate }
--
--- CRL distribution points and delta-CRL extensions
+-- CRL distribution points and delta-CRL extensions
--
--cRLDistributionPoints EXTENSION ::= {
--
@@ -338,7 +338,7 @@ EDIPartyName ::= SEQUENCE {
--
--BaseCRLNumber ::= CRLNumber
--
--- Object identifier assignments for ISO certificate extensions
+-- Object identifier assignments for ISO certificate extensions
--id-ce OBJECT IDENTIFIER ::= {joint-iso-ccitt(2) ds(5) 29}
--
--id-ce-subjectDirectoryAttributes OBJECT IDENTIFIER ::= {id-ce 9}
diff --git a/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.c b/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.c
index 3202420371..53aeccdf00 100644
--- a/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.c
+++ b/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.c
@@ -18,7 +18,7 @@
#include "packet-pkix1explicit.h"
#include "packet-x509ce.h"
-#define PNAME "PKIX1Implitit"
+#define PNAME "PKIX1Implicit"
#define PSNAME "PKIX1IMPLICIT"
#define PFNAME "pkix1implicit"
@@ -26,7 +26,7 @@ void proto_register_pkix1implicit(void);
void proto_reg_handoff_pkix1implicit(void);
/* Initialize the protocol and registered fields */
-static int proto_pkix1implicit = -1;
+static int proto_pkix1implicit;
#include "packet-pkix1implicit-hf.c"
/* Initialize the subtree pointers */
@@ -34,13 +34,13 @@ static int proto_pkix1implicit = -1;
int
-dissect_pkix1implicit_ReasonFlags(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
+dissect_pkix1implicit_ReasonFlags(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
offset = dissect_x509ce_ReasonFlags(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
}
int
-dissect_pkix1implicit_GeneralName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
+dissect_pkix1implicit_GeneralName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_) {
offset = dissect_x509ce_GeneralName(implicit_tag, tvb, offset, actx, tree, hf_index);
return offset;
diff --git a/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.h b/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.h
index 345e4195ac..894ce3ac61 100644
--- a/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.h
+++ b/epan/dissectors/asn1/pkix1implicit/packet-pkix1implicit-template.h
@@ -11,8 +11,8 @@
#ifndef PACKET_PKIX1IMPLICIT_H
#define PACKET_PKIX1IMPLICIT_H
-int dissect_pkix1implicit_GeneralName(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
-int dissect_pkix1implicit_ReasonFlags(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+int dissect_pkix1implicit_GeneralName(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+int dissect_pkix1implicit_ReasonFlags(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
#include "packet-pkix1implicit-exp.h"
diff --git a/epan/dissectors/asn1/pkixac/packet-pkixac-template.c b/epan/dissectors/asn1/pkixac/packet-pkixac-template.c
index e66153fa32..f111574674 100644
--- a/epan/dissectors/asn1/pkixac/packet-pkixac-template.c
+++ b/epan/dissectors/asn1/pkixac/packet-pkixac-template.c
@@ -30,11 +30,11 @@ void proto_register_pkixac(void);
void proto_reg_handoff_pkixac(void);
/* Initialize the protocol and registered fields */
-static int proto_pkixac = -1;
+static int proto_pkixac;
#include "packet-pkixac-hf.c"
/* Initialize the subtree pointers */
-static gint ett_pkixac = -1;
+static gint ett_pkixac;
#include "packet-pkixac-ett.c"
static const char *object_identifier_id;
diff --git a/epan/dissectors/asn1/pkixproxy/packet-pkixproxy-template.c b/epan/dissectors/asn1/pkixproxy/packet-pkixproxy-template.c
index 99fb419b45..ba3b927957 100644
--- a/epan/dissectors/asn1/pkixproxy/packet-pkixproxy-template.c
+++ b/epan/dissectors/asn1/pkixproxy/packet-pkixproxy-template.c
@@ -26,7 +26,7 @@ void proto_register_pkixproxy(void);
void proto_reg_handoff_pkixproxy(void);
/* Initialize the protocol and registered fields */
-static int proto_pkixproxy = -1;
+static int proto_pkixproxy;
#include "packet-pkixproxy-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/pkixqualified/packet-pkixqualified-template.c b/epan/dissectors/asn1/pkixqualified/packet-pkixqualified-template.c
index 2d4ebc3f96..c16acb701c 100644
--- a/epan/dissectors/asn1/pkixqualified/packet-pkixqualified-template.c
+++ b/epan/dissectors/asn1/pkixqualified/packet-pkixqualified-template.c
@@ -29,7 +29,7 @@ void proto_reg_handoff_pkixqualified(void);
/* Initialize the protocol and registered fields */
-static int proto_pkixqualified = -1;
+static int proto_pkixqualified;
#include "packet-pkixqualified-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/pkixqualified/pkixqualified.cnf b/epan/dissectors/asn1/pkixqualified/pkixqualified.cnf
index 36f71f9e97..a162dc7f45 100644
--- a/epan/dissectors/asn1/pkixqualified/pkixqualified.cnf
+++ b/epan/dissectors/asn1/pkixqualified/pkixqualified.cnf
@@ -26,6 +26,9 @@ SRVName B "1.3.6.1.5.5.7.8.7" "id-on-dnsSRV"
#.FIELD_RENAME
+#.FN_HDR QCStatement
+ object_identifier_id = NULL;
+
#.FN_PARS QCStatement/statementId
FN_VARIANT = _str HF_INDEX = hf_pkixqualified_statementId VAL_PTR = &object_identifier_id
diff --git a/epan/dissectors/asn1/pkixtsp/packet-pkixtsp-template.c b/epan/dissectors/asn1/pkixtsp/packet-pkixtsp-template.c
index e08ddd537c..bf5bb98047 100644
--- a/epan/dissectors/asn1/pkixtsp/packet-pkixtsp-template.c
+++ b/epan/dissectors/asn1/pkixtsp/packet-pkixtsp-template.c
@@ -27,12 +27,15 @@
void proto_register_pkixtsp(void);
void proto_reg_handoff_pkixtsp(void);
+static dissector_handle_t timestamp_reply_handle;
+static dissector_handle_t timestamp_query_handle;
+
/* Initialize the protocol and registered fields */
-static int proto_pkixtsp = -1;
+static int proto_pkixtsp;
#include "packet-pkixtsp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_pkixtsp = -1;
+static gint ett_pkixtsp;
#include "packet-pkixtsp-ett.c"
@@ -103,6 +106,9 @@ void proto_register_pkixtsp(void) {
proto_register_field_array(proto_pkixtsp, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ timestamp_reply_handle = register_dissector(PFNAME "_reply", dissect_timestamp_reply, proto_pkixtsp);
+ timestamp_query_handle = register_dissector(PFNAME "_query", dissect_timestamp_query, proto_pkixtsp);
+
register_ber_syntax_dissector("TimeStampReq", proto_pkixtsp, dissect_TimeStampReq_PDU);
register_ber_syntax_dissector("TimeStampResp", proto_pkixtsp, dissect_TimeStampResp_PDU);
@@ -113,13 +119,7 @@ void proto_register_pkixtsp(void) {
/*--- proto_reg_handoff_pkixtsp -------------------------------------------*/
void proto_reg_handoff_pkixtsp(void) {
- dissector_handle_t timestamp_reply_handle;
- dissector_handle_t timestamp_query_handle;
-
- timestamp_reply_handle = create_dissector_handle(dissect_timestamp_reply, proto_pkixtsp);
dissector_add_string("media_type", "application/timestamp-reply", timestamp_reply_handle);
-
- timestamp_query_handle = create_dissector_handle(dissect_timestamp_query, proto_pkixtsp);
dissector_add_string("media_type", "application/timestamp-query", timestamp_query_handle);
#include "packet-pkixtsp-dis-tab.c"
diff --git a/epan/dissectors/asn1/pres/packet-pres-template.c b/epan/dissectors/asn1/pres/packet-pres-template.c
index 1b3c3fc569..6fa6ff85a9 100644
--- a/epan/dissectors/asn1/pres/packet-pres-template.c
+++ b/epan/dissectors/asn1/pres/packet-pres-template.c
@@ -39,10 +39,10 @@ void proto_register_pres(void);
void proto_reg_handoff_pres(void);
/* Initialize the protocol and registered fields */
-static int proto_pres = -1;
+static int proto_pres;
/* Initialize the connectionles protocol */
-static int proto_clpres = -1;
+static int proto_clpres;
/* pointers for acse dissector */
proto_tree *global_tree = NULL;
@@ -67,22 +67,22 @@ typedef struct _pres_user_t {
static pres_user_t *pres_users;
static guint num_pres_users;
-static int hf_pres_CP_type = -1;
-static int hf_pres_CPA_PPDU = -1;
-static int hf_pres_Abort_type = -1;
-static int hf_pres_CPR_PPDU = -1;
-static int hf_pres_Typed_data_type = -1;
+static int hf_pres_CP_type;
+static int hf_pres_CPA_PPDU;
+static int hf_pres_Abort_type;
+static int hf_pres_CPR_PPDU;
+static int hf_pres_Typed_data_type;
#include "packet-pres-hf.c"
/* Initialize the subtree pointers */
-static gint ett_pres = -1;
+static gint ett_pres;
#include "packet-pres-ett.c"
-static expert_field ei_pres_dissector_not_available = EI_INIT;
-static expert_field ei_pres_wrong_spdu_type = EI_INIT;
-static expert_field ei_pres_invalid_offset = EI_INIT;
+static expert_field ei_pres_dissector_not_available;
+static expert_field ei_pres_wrong_spdu_type;
+static expert_field ei_pres_invalid_offset;
UAT_DEC_CB_DEF(pres_users, ctx_id, pres_user_t)
UAT_CSTRING_CB_DEF(pres_users, oid, pres_user_t)
diff --git a/epan/dissectors/asn1/q932-ros/packet-q932-ros-template.c b/epan/dissectors/asn1/q932-ros/packet-q932-ros-template.c
index e8074eea95..fb148cbeea 100644
--- a/epan/dissectors/asn1/q932-ros/packet-q932-ros-template.c
+++ b/epan/dissectors/asn1/q932-ros/packet-q932-ros-template.c
@@ -26,13 +26,13 @@ void proto_register_q932_ros(void);
void proto_reg_handoff_q932_ros(void);
/* Initialize the protocol and registered fields */
-static int proto_q932_ros = -1;
+static int proto_q932_ros;
#include "packet-q932-ros-hf.c"
/* Initialize the subtree pointers */
#include "packet-q932-ros-ett.c"
-static expert_field ei_ros_undecoded = EI_INIT;
+static expert_field ei_ros_undecoded;
/* Preferences */
diff --git a/epan/dissectors/asn1/q932/packet-q932-template.c b/epan/dissectors/asn1/q932/packet-q932-template.c
index 8b258ba626..e34c5f1512 100644
--- a/epan/dissectors/asn1/q932/packet-q932-template.c
+++ b/epan/dissectors/asn1/q932/packet-q932-template.c
@@ -27,23 +27,23 @@
void proto_register_q932(void);
/* Initialize the protocol and registered fields */
-static int proto_q932 = -1;
-static int hf_q932_ie_type = -1;
-static int hf_q932_ie_len = -1;
-static int hf_q932_ie_data = -1;
-static int hf_q932_pp = -1;
-static int hf_q932_nd = -1;
+static int proto_q932;
+static int hf_q932_ie_type;
+static int hf_q932_ie_len;
+static int hf_q932_ie_data;
+static int hf_q932_pp;
+static int hf_q932_nd;
#include "packet-q932-hf.c"
/* Initialize the subtree pointers */
-static gint ett_q932 = -1;
-static gint ett_q932_ie = -1;
+static gint ett_q932;
+static gint ett_q932_ie;
#include "packet-q932-ett.c"
-static expert_field ei_q932_dse_not_supported = EI_INIT;
-static expert_field ei_q932_acse_not_supported = EI_INIT;
-static expert_field ei_q932_unknown_component = EI_INIT;
-static expert_field ei_q932_asn1_encoded = EI_INIT;
+static expert_field ei_q932_dse_not_supported;
+static expert_field ei_q932_acse_not_supported;
+static expert_field ei_q932_unknown_component;
+static expert_field ei_q932_asn1_encoded;
/* Preferences */
@@ -64,6 +64,9 @@ dissector_table_t etsi_err_local_dissector_table;
static gint g_facility_encoding = FACILITY_QSIG;
void proto_reg_handoff_q932(void);
+
+static dissector_handle_t q932_ie_handle;
+
/* Subdissectors */
static dissector_handle_t q932_ros_handle;
@@ -133,7 +136,7 @@ static const value_string str_nd[] = {
static void
dissect_q932_facility_ie(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, int length) {
gint8 appclass;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
int hoffset, eoffset;
@@ -326,6 +329,7 @@ void proto_register_q932(void) {
/* Register protocol and dissector */
proto_q932 = proto_register_protocol(PNAME, PSNAME, PFNAME);
register_dissector("q932.apdu", dissect_q932_apdu, proto_q932);
+ q932_ie_handle = register_dissector("q932.ie", dissect_q932_ie, proto_q932);
/* Register fields and subtrees */
proto_register_field_array(proto_q932, hf, array_length(hf));
@@ -336,9 +340,9 @@ void proto_register_q932(void) {
rose_ctx_init(&q932_rose_ctx);
/* Register dissector tables */
- q932_rose_ctx.arg_global_dissector_table = register_dissector_table("q932.ros.global.arg", "Q.932 Operation Argument (global opcode)", proto_q932, FT_STRING, BASE_NONE);
- q932_rose_ctx.res_global_dissector_table = register_dissector_table("q932.ros.global.res", "Q.932 Operation Result (global opcode)", proto_q932, FT_STRING, BASE_NONE);
- q932_rose_ctx.err_global_dissector_table = register_dissector_table("q932.ros.global.err", "Q.932 Error (global opcode)", proto_q932, FT_STRING, BASE_NONE);
+ q932_rose_ctx.arg_global_dissector_table = register_dissector_table("q932.ros.global.arg", "Q.932 Operation Argument (global opcode)", proto_q932, FT_STRING, STRING_CASE_SENSITIVE);
+ q932_rose_ctx.res_global_dissector_table = register_dissector_table("q932.ros.global.res", "Q.932 Operation Result (global opcode)", proto_q932, FT_STRING, STRING_CASE_SENSITIVE);
+ q932_rose_ctx.err_global_dissector_table = register_dissector_table("q932.ros.global.err", "Q.932 Error (global opcode)", proto_q932, FT_STRING, STRING_CASE_SENSITIVE);
qsig_arg_local_dissector_table = register_dissector_table("q932.ros.local.arg", "Q.932 Operation Argument (local opcode)", proto_q932, FT_UINT32, BASE_HEX);
qsig_res_local_dissector_table = register_dissector_table("q932.ros.local.res", "Q.932 Operation Result (local opcode)", proto_q932, FT_UINT32, BASE_HEX);
@@ -358,17 +362,16 @@ void proto_register_q932(void) {
/*--- proto_reg_handoff_q932 ------------------------------------------------*/
void proto_reg_handoff_q932(void) {
- dissector_handle_t q932_ie_handle;
-
static gboolean q931_prefs_initialized = FALSE;
if (!q931_prefs_initialized) {
- q932_ie_handle = create_dissector_handle(dissect_q932_ie, proto_q932);
/* Facility */
dissector_add_uint("q931.ie", (0x00 << 8) | Q932_IE_FACILITY, q932_ie_handle);
/* Notification indicator */
dissector_add_uint("q931.ie", (0x00 << 8) | Q932_IE_NOTIFICATION_INDICATOR, q932_ie_handle);
q932_ros_handle = find_dissector_add_dependency("q932.ros", proto_q932);
+
+ q931_prefs_initialized = TRUE;
}
if(g_facility_encoding == FACILITY_QSIG){
diff --git a/epan/dissectors/asn1/qsig/packet-qsig-template.c b/epan/dissectors/asn1/qsig/packet-qsig-template.c
index 25b32442f1..54deedf269 100644
--- a/epan/dissectors/asn1/qsig/packet-qsig-template.c
+++ b/epan/dissectors/asn1/qsig/packet-qsig-template.c
@@ -40,6 +40,12 @@
void proto_register_qsig(void);
void proto_reg_handoff_qsig(void);
+static dissector_handle_t qsig_arg_handle;
+static dissector_handle_t qsig_res_handle;
+static dissector_handle_t qsig_err_handle;
+static dissector_handle_t qsig_ie4_handle;
+static dissector_handle_t qsig_ie5_handle;
+
static const value_string qsig_str_ie_type_cs4[] = {
{ QSIG_IE_TRANSIT_COUNTER , "Transit counter" },
{ 0, NULL}
@@ -267,17 +273,17 @@ static const value_string qsig_str_error[] = {
};
/* Initialize the protocol and registered fields */
-static int proto_qsig = -1;
-static int hf_qsig_operation = -1;
-static int hf_qsig_service = -1;
-static int hf_qsig_error = -1;
-static int hf_qsig_ie_type = -1;
-static int hf_qsig_ie_type_cs4 = -1;
-static int hf_qsig_ie_type_cs5 = -1;
-static int hf_qsig_ie_len = -1;
-static int hf_qsig_ie_data = -1;
-static int hf_qsig_tc = -1;
-static int hf_qsig_pc = -1;
+static int proto_qsig;
+static int hf_qsig_operation;
+static int hf_qsig_service;
+static int hf_qsig_error;
+static int hf_qsig_ie_type;
+static int hf_qsig_ie_type_cs4;
+static int hf_qsig_ie_type_cs5;
+static int hf_qsig_ie_len;
+static int hf_qsig_ie_data;
+static int hf_qsig_tc;
+static int hf_qsig_pc;
#include "packet-qsig-hf.c"
static int *hf_qsig_ie_type_arr[] = {
@@ -292,15 +298,15 @@ static int *hf_qsig_ie_type_arr[] = {
};
/* Initialize the subtree pointers */
-static gint ett_qsig = -1;
-static gint ett_qsig_ie = -1;
-static gint ett_qsig_unknown_extension = -1;
+static gint ett_qsig;
+static gint ett_qsig_ie;
+static gint ett_qsig_unknown_extension;
#include "packet-qsig-ett.c"
-static gint ett_cnq_PSS1InformationElement = -1;
+static gint ett_cnq_PSS1InformationElement;
-/* static expert_field ei_qsig_unsupported_arg_type = EI_INIT; */
-static expert_field ei_qsig_unsupported_result_type = EI_INIT;
-static expert_field ei_qsig_unsupported_error_type = EI_INIT;
+/* static expert_field ei_qsig_unsupported_arg_type; */
+static expert_field ei_qsig_unsupported_result_type;
+static expert_field ei_qsig_unsupported_error_type;
/* Preferences */
@@ -603,7 +609,7 @@ void proto_register_qsig(void) {
FT_UINT8, BASE_DEC, VALS(qsig_str_operation), 0x0,
NULL, HFILL }},
{ &hf_qsig_service, { "Service", "qsig.service",
- FT_UINT8, BASE_DEC, VALS(qsig_str_service), 0x0,
+ FT_UINT16, BASE_DEC, VALS(qsig_str_service), 0x0,
"Supplementary Service", HFILL }},
{ &hf_qsig_error, { "Error", "qsig.error",
FT_UINT8, BASE_DEC, VALS(qsig_str_error), 0x0,
@@ -660,8 +666,15 @@ void proto_register_qsig(void) {
expert_qsig = expert_register_protocol(proto_qsig);
expert_register_field_array(expert_qsig, ei, array_length(ei));
+ /* Register dissectors */
+ qsig_arg_handle = register_dissector(PFNAME "_arg", dissect_qsig_arg, proto_qsig);
+ qsig_res_handle = register_dissector(PFNAME "_res", dissect_qsig_res, proto_qsig);
+ qsig_err_handle = register_dissector(PFNAME "_err", dissect_qsig_err, proto_qsig);
+ qsig_ie4_handle = register_dissector(PFNAME "_ie_cs4", dissect_qsig_ie_cs4, proto_qsig);
+ qsig_ie5_handle = register_dissector(PFNAME "_ie_cs5", dissect_qsig_ie_cs5, proto_qsig);
+
/* Register dissector tables */
- extension_dissector_table = register_dissector_table("qsig.ext", "QSIG Extension", proto_qsig, FT_STRING, BASE_NONE);
+ extension_dissector_table = register_dissector_table("qsig.ext", "QSIG Extension", proto_qsig, FT_STRING, STRING_CASE_SENSITIVE);
}
@@ -670,16 +683,10 @@ void proto_reg_handoff_qsig(void) {
int i;
gchar *oid;
dissector_handle_t q931_handle;
- dissector_handle_t qsig_arg_handle;
- dissector_handle_t qsig_res_handle;
- dissector_handle_t qsig_err_handle;
- dissector_handle_t qsig_ie_handle;
q931_handle = find_dissector_add_dependency("q931", proto_qsig);
q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_qsig);
- qsig_arg_handle = create_dissector_handle(dissect_qsig_arg, proto_qsig);
- qsig_res_handle = create_dissector_handle(dissect_qsig_res, proto_qsig);
for (i=0; i<(int)array_length(qsig_op_tab); i++) {
dissector_add_uint("q932.ros.local.arg", qsig_op_tab[i].opcode, qsig_arg_handle);
dissector_add_uint("q932.ros.local.res", qsig_op_tab[i].opcode, qsig_res_handle);
@@ -689,18 +696,15 @@ void proto_reg_handoff_qsig(void) {
dissector_add_string("q932.ros.global.res", oid, qsig_res_handle);
wmem_free(NULL, oid);
}
- qsig_err_handle = create_dissector_handle(dissect_qsig_err, proto_qsig);
for (i=0; i<(int)array_length(qsig_err_tab); i++) {
dissector_add_uint("q932.ros.local.err", qsig_err_tab[i].errcode, qsig_err_handle);
}
- qsig_ie_handle = create_dissector_handle(dissect_qsig_ie_cs4, proto_qsig);
/* QSIG-TC - Transit counter */
- dissector_add_uint("q931.ie", CS4 | QSIG_IE_TRANSIT_COUNTER, qsig_ie_handle);
+ dissector_add_uint("q931.ie", CS4 | QSIG_IE_TRANSIT_COUNTER, qsig_ie4_handle);
- qsig_ie_handle = create_dissector_handle(dissect_qsig_ie_cs5, proto_qsig);
/* SSIG-BC - Party category */
- dissector_add_uint("q931.ie", CS5 | QSIG_IE_PARTY_CATEGORY, qsig_ie_handle);
+ dissector_add_uint("q931.ie", CS5 | QSIG_IE_PARTY_CATEGORY, qsig_ie5_handle);
/* RFC 3204, 3.2 QSIG Media Type */
dissector_add_string("media_type", "application/qsig", q931_handle);
diff --git a/epan/dissectors/asn1/ranap/packet-ranap-template.c b/epan/dissectors/asn1/ranap/packet-ranap-template.c
index 43789d8283..87bd1c32a0 100644
--- a/epan/dissectors/asn1/ranap/packet-ranap-template.c
+++ b/epan/dissectors/asn1/ranap/packet-ranap-template.c
@@ -51,7 +51,7 @@ void proto_register_ranap(void);
void proto_reg_handoff_ranap(void);
/* Initialize the protocol and registered fields */
-static int proto_ranap = -1;
+static int proto_ranap;
/* initialise sub-dissector handles */
static dissector_handle_t rrc_s_to_trnc_handle = NULL;
@@ -59,16 +59,16 @@ static dissector_handle_t rrc_t_to_srnc_handle = NULL;
static dissector_handle_t rrc_ho_to_utran_cmd = NULL;
static dissector_handle_t bssgp_handle = NULL;
-static int hf_ranap_transportLayerAddress_ipv4 = -1;
-static int hf_ranap_transportLayerAddress_ipv6 = -1;
-static int hf_ranap_transportLayerAddress_nsap = -1;
+static int hf_ranap_transportLayerAddress_ipv4;
+static int hf_ranap_transportLayerAddress_ipv6;
+static int hf_ranap_transportLayerAddress_nsap;
#include "packet-ranap-hf.c"
/* Initialize the subtree pointers */
-static int ett_ranap = -1;
-static int ett_ranap_transportLayerAddress = -1;
-static int ett_ranap_transportLayerAddress_nsap = -1;
+static int ett_ranap;
+static int ett_ranap_transportLayerAddress;
+static int ett_ranap_transportLayerAddress_nsap;
#include "packet-ranap-ett.c"
@@ -99,7 +99,7 @@ static ranap_private_data_t* ranap_get_private_data(asn1_ctx_t *actx)
return private_data;
}
-/* Helper function to reset the the private data struct */
+/* Helper function to reset the private data struct */
static void ranap_reset_private_data(packet_info *pinfo)
{
p_remove_proto_data(pinfo->pool, pinfo, proto_ranap, 0);
@@ -165,9 +165,6 @@ static dissector_handle_t ranap_handle;
int pdu_type = 0; /* 0 means wildcard */
-/* Initialise the Preferences */
-static gint global_ranap_sccp_ssn = SCCP_SSN_RANAP;
-
/* Dissector tables */
static dissector_table_t ranap_ies_dissector_table;
static dissector_table_t ranap_ies_p1_dissector_table;
@@ -305,7 +302,7 @@ dissect_ranap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data)
sccp_msg_lcl->data.co.assoc->payload = SCCP_PLOAD_RANAP;
if (! sccp_msg_lcl->data.co.label && ProcedureCode != 0xFFFFFFFF) {
- const gchar* str = val_to_str(ProcedureCode, ranap_ProcedureCode_vals,"Unknown RANAP");
+ const gchar* str = val_to_str_const(ProcedureCode, ranap_ProcedureCode_vals, "Unknown RANAP");
sccp_msg_lcl->data.co.label = wmem_strdup(wmem_file_scope(), str);
}
}
@@ -440,10 +437,7 @@ void proto_register_ranap(void) {
nas_pdu_dissector_table = register_dissector_table("ranap.nas_pdu", "RANAP NAS PDU", proto_ranap, FT_UINT8, BASE_DEC);
- ranap_module = prefs_register_protocol(proto_ranap, proto_reg_handoff_ranap);
- prefs_register_uint_preference(ranap_module, "sccp_ssn", "SCCP SSN for RANAP",
- "The SCCP SubSystem Number for RANAP (default 142)", 10,
- &global_ranap_sccp_ssn);
+ ranap_module = prefs_register_protocol(proto_ranap, NULL);
prefs_register_bool_preference(ranap_module, "dissect_rrc_container",
"Attempt to dissect RRC-Container",
"Attempt to dissect RRC message embedded in RRC-Container IE",
@@ -455,24 +449,15 @@ void proto_register_ranap(void) {
void
proto_reg_handoff_ranap(void)
{
- static gboolean initialized = FALSE;
- static gint local_ranap_sccp_ssn;
-
- if (!initialized) {
- rrc_s_to_trnc_handle = find_dissector_add_dependency("rrc.s_to_trnc_cont", proto_ranap);
- rrc_t_to_srnc_handle = find_dissector_add_dependency("rrc.t_to_srnc_cont", proto_ranap);
- rrc_ho_to_utran_cmd = find_dissector_add_dependency("rrc.irat.ho_to_utran_cmd", proto_ranap);
- bssgp_handle = find_dissector("bssgp");
- heur_dissector_add("sccp", dissect_sccp_ranap_heur, "RANAP over SCCP", "ranap_sccp", proto_ranap, HEURISTIC_ENABLE);
- heur_dissector_add("sua", dissect_sccp_ranap_heur, "RANAP over SUA", "ranap_sua", proto_ranap, HEURISTIC_ENABLE);
- initialized = TRUE;
+ rrc_s_to_trnc_handle = find_dissector_add_dependency("rrc.s_to_trnc_cont", proto_ranap);
+ rrc_t_to_srnc_handle = find_dissector_add_dependency("rrc.t_to_srnc_cont", proto_ranap);
+ rrc_ho_to_utran_cmd = find_dissector_add_dependency("rrc.irat.ho_to_utran_cmd", proto_ranap);
+ bssgp_handle = find_dissector("bssgp");
+ heur_dissector_add("sccp", dissect_sccp_ranap_heur, "RANAP over SCCP", "ranap_sccp", proto_ranap, HEURISTIC_ENABLE);
+ heur_dissector_add("sua", dissect_sccp_ranap_heur, "RANAP over SUA", "ranap_sua", proto_ranap, HEURISTIC_ENABLE);
+ dissector_add_uint_with_preference("sccp.ssn", SCCP_SSN_RANAP, ranap_handle);
#include "packet-ranap-dis-tab.c"
- } else {
- dissector_delete_uint("sccp.ssn", local_ranap_sccp_ssn, ranap_handle);
- }
- dissector_add_uint("sccp.ssn", global_ranap_sccp_ssn, ranap_handle);
- local_ranap_sccp_ssn = global_ranap_sccp_ssn;
}
/*
diff --git a/epan/dissectors/asn1/rnsap/packet-rnsap-template.c b/epan/dissectors/asn1/rnsap/packet-rnsap-template.c
index 82cf856c6b..276e642d1b 100644
--- a/epan/dissectors/asn1/rnsap/packet-rnsap-template.c
+++ b/epan/dissectors/asn1/rnsap/packet-rnsap-template.c
@@ -23,6 +23,7 @@
#include "packet-isup.h"
#include "packet-per.h"
#include "packet-ber.h"
+#include "packet-e212.h"
#ifdef _MSC_VER
/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */
@@ -53,17 +54,18 @@ static dissector_handle_t rrc_dl_ccch_handle = NULL;
static dissector_handle_t rrc_ul_ccch_handle = NULL;
/* Initialize the protocol and registered fields */
-static int proto_rnsap = -1;
+static int proto_rnsap;
-static int hf_rnsap_transportLayerAddress_ipv4 = -1;
-static int hf_rnsap_transportLayerAddress_ipv6 = -1;
-static int hf_rnsap_transportLayerAddress_nsap = -1;
+static int hf_rnsap_transportLayerAddress_ipv4;
+static int hf_rnsap_transportLayerAddress_ipv6;
+static int hf_rnsap_transportLayerAddress_nsap;
#include "packet-rnsap-hf.c"
/* Initialize the subtree pointers */
-static int ett_rnsap = -1;
-static int ett_rnsap_transportLayerAddress = -1;
-static int ett_rnsap_transportLayerAddress_nsap = -1;
+static int ett_rnsap;
+static int ett_rnsap_transportLayerAddress;
+static int ett_rnsap_transportLayerAddress_nsap;
+static int ett_rnsap_IMSI;
#include "packet-rnsap-ett.c"
@@ -261,6 +263,7 @@ void proto_register_rnsap(void) {
&ett_rnsap,
&ett_rnsap_transportLayerAddress,
&ett_rnsap_transportLayerAddress_nsap,
+ &ett_rnsap_IMSI,
#include "packet-rnsap-ettarr.c"
};
@@ -277,9 +280,9 @@ void proto_register_rnsap(void) {
/* Register dissector tables */
rnsap_ies_dissector_table = register_dissector_table("rnsap.ies", "RNSAP-PROTOCOL-IES", proto_rnsap, FT_UINT32, BASE_DEC);
rnsap_extension_dissector_table = register_dissector_table("rnsap.extension", "RNSAP-PROTOCOL-EXTENSION", proto_rnsap, FT_UINT32, BASE_DEC);
- rnsap_proc_imsg_dissector_table = register_dissector_table("rnsap.proc.imsg", "RNSAP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_rnsap, FT_STRING, BASE_NONE);
- rnsap_proc_sout_dissector_table = register_dissector_table("rnsap.proc.sout", "RNSAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_rnsap, FT_STRING, BASE_NONE);
- rnsap_proc_uout_dissector_table = register_dissector_table("rnsap.proc.uout", "RNSAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_rnsap, FT_STRING, BASE_NONE);
+ rnsap_proc_imsg_dissector_table = register_dissector_table("rnsap.proc.imsg", "RNSAP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_rnsap, FT_STRING, STRING_CASE_SENSITIVE);
+ rnsap_proc_sout_dissector_table = register_dissector_table("rnsap.proc.sout", "RNSAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_rnsap, FT_STRING, STRING_CASE_SENSITIVE);
+ rnsap_proc_uout_dissector_table = register_dissector_table("rnsap.proc.uout", "RNSAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_rnsap, FT_STRING, STRING_CASE_SENSITIVE);
}
diff --git a/epan/dissectors/asn1/rnsap/rnsap.cnf b/epan/dissectors/asn1/rnsap/rnsap.cnf
index 060d6ee68a..dad130413d 100644
--- a/epan/dissectors/asn1/rnsap/rnsap.cnf
+++ b/epan/dissectors/asn1/rnsap/rnsap.cnf
@@ -118,7 +118,7 @@ ProtocolIE-ContainerPairList
switch (pdata->ProcedureCode) {
case RNSAP_ID_DOWNLINKSIGNALLINGTRANSFER:
- /* TODO: seperate into Iur and Iur-g cases: */
+ /* TODO: separate into Iur and Iur-g cases: */
/* For the Iur-g interface, L3 message is a GERAN-RRC message for which a dissector does not currently exist */
/* For the Iur interface, L3 message is a UMTS RRC DL-CCCH message */
parameter_handle = rrc_dl_ccch_handle;
@@ -247,6 +247,14 @@ TAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
}
+#.FN_BODY IMSI VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_rnsap_IMSI);
+ dissect_e212_imsi(parameter_tvb, actx->pinfo, subtree, 0, tvb_reported_length(parameter_tvb), FALSE);
+ }
+
#.REGISTER
#RNSAP-PROTOCOL-IES
diff --git a/epan/dissectors/asn1/ros/packet-ros-template.c b/epan/dissectors/asn1/ros/packet-ros-template.c
index 317dafaa6a..69bf44b991 100644
--- a/epan/dissectors/asn1/ros/packet-ros-template.c
+++ b/epan/dissectors/asn1/ros/packet-ros-template.c
@@ -28,7 +28,7 @@ void proto_register_ros(void);
void proto_reg_handoff_ros(void);
/* Initialize the protocol and registered fields */
-static int proto_ros = -1;
+static int proto_ros;
static proto_tree *top_tree=NULL;
static guint32 opcode;
@@ -49,28 +49,28 @@ typedef struct ros_call_response {
guint invokeId;
} ros_call_response_t;
-static int hf_ros_response_in = -1;
-static int hf_ros_response_to = -1;
-static int hf_ros_time = -1;
+static int hf_ros_response_in;
+static int hf_ros_response_to;
+static int hf_ros_time;
#include "packet-ros-hf.c"
/* Initialize the subtree pointers */
-static gint ett_ros = -1;
-static gint ett_ros_unknown = -1;
-static gint ett_ros_invoke_argument = -1;
-static gint ett_ros_return_result = -1;
-static gint ett_ros_bind_invoke = -1;
-static gint ett_ros_bind_result = -1;
-static gint ett_ros_bind_error = -1;
-static gint ett_ros_unbind_invoke = -1;
-static gint ett_ros_unbind_result = -1;
-static gint ett_ros_unbind_error = -1;
+static gint ett_ros;
+static gint ett_ros_unknown;
+static gint ett_ros_invoke_argument;
+static gint ett_ros_return_result;
+static gint ett_ros_bind_invoke;
+static gint ett_ros_bind_result;
+static gint ett_ros_bind_error;
+static gint ett_ros_unbind_invoke;
+static gint ett_ros_unbind_result;
+static gint ett_ros_unbind_error;
#include "packet-ros-ett.c"
-static expert_field ei_ros_dissector_oid_not_implemented = EI_INIT;
-static expert_field ei_ros_unknown_ros_pdu = EI_INIT;
+static expert_field ei_ros_dissector_oid_not_implemented;
+static expert_field ei_ros_unknown_ros_pdu;
static dissector_table_t ros_oid_dissector_table=NULL;
@@ -296,7 +296,7 @@ ros_match_call_response(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gui
/* we haven't found a match - try and match it up */
if(isInvoke) {
- /* this a a request - add it to the unmatched list */
+ /* this is a request - add it to the unmatched list */
/* check that we don't already have one of those in the
unmatched list and if so remove it */
@@ -477,7 +477,7 @@ void proto_register_ros(void) {
expert_ros = expert_register_protocol(proto_ros);
expert_register_field_array(expert_ros, ei, array_length(ei));
- ros_oid_dissector_table = register_dissector_table("ros.oid", "ROS OID Dissectors", proto_ros, FT_STRING, BASE_NONE);
+ ros_oid_dissector_table = register_dissector_table("ros.oid", "ROS OID Dissectors", proto_ros, FT_STRING, STRING_CASE_SENSITIVE);
protocol_table = wmem_map_new(wmem_epan_scope(), wmem_str_hash, g_str_equal);
}
diff --git a/epan/dissectors/asn1/ros/ros-rej.cnf b/epan/dissectors/asn1/ros/ros-rej.cnf
index a573f08f84..9b7a7639ce 100644
--- a/epan/dissectors/asn1/ros/ros-rej.cnf
+++ b/epan/dissectors/asn1/ros/ros-rej.cnf
@@ -3,7 +3,7 @@
# Copyright 2007 Tomas Kukosa
#.FN_HDR Reject
- const gchar *descr = "";
+ const gchar *descr;
problem_str[0] = '\0';
#.FN_FTR Reject
diff --git a/epan/dissectors/asn1/rrc/Constant-definitions.asn b/epan/dissectors/asn1/rrc/Constant-definitions.asn
index 3a0bffc8d8..5a3cde0662 100644
--- a/epan/dissectors/asn1/rrc/Constant-definitions.asn
+++ b/epan/dissectors/asn1/rrc/Constant-definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 25.331 V16.1.0 (2020-09)
+-- 3GPP TS 25.331 V17.1.0 (2022-06)
--
-- 11.4 Constant definitions
--
@@ -193,10 +193,10 @@ maxTrCHConcat INTEGER ::= 3
-- maxTrCHpreconf should be 16 but has been set to 32 for compatibility
maxTrCHpreconf INTEGER ::= 32
maxTS INTEGER ::= 14
-maxTS-1 INTEGER ::= 13
+maxTS-1 INTEGER ::= 13
maxTS-2 INTEGER ::= 12
maxTS-LCR INTEGER ::= 6
-maxTS-LCR-1 INTEGER ::= 5
+maxTS-LCR-1 INTEGER ::= 5
maxURA INTEGER ::= 8
maxURNTI-Group INTEGER ::= 8
maxWLANID INTEGER ::= 16
diff --git a/epan/dissectors/asn1/rrc/InformationElements.asn b/epan/dissectors/asn1/rrc/InformationElements.asn
index e3e5245700..67dccd7a30 100644
--- a/epan/dissectors/asn1/rrc/InformationElements.asn
+++ b/epan/dissectors/asn1/rrc/InformationElements.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 25.331 V16.1.0 (2020-09)
+-- 3GPP TS 25.331 V17.1.0 (2022-06)
--
-- 11.3 Information element definitions
--
@@ -284,10 +284,10 @@ EAB-Parameters ::= CHOICE {
EAB-ParametersPerPLMN ::= SEQUENCE {
domainSpecificEAB-Parameters DomainSpecificEAB-Parameters OPTIONAL
-}
+}
EAB-ParametersPerPLMN-List ::= SEQUENCE (SIZE (1..6)) OF EAB-ParametersPerPLMN
-
+
Ec-N0forANR ::= SEQUENCE {
ec-N0 INTEGER (-24..0) OPTIONAL
}
@@ -525,7 +525,7 @@ CellSelectReselectInfoSIB-3-4 ::= SEQUENCE {
rat-List RAT-TDD-InfoList OPTIONAL,
q-RxlevMin Q-RxlevMin
}
- },
+ },
q-Hyst-l-S Q-Hyst-S,
t-Reselection-S T-Reselection-S,
hcs-ServingCellInformation HCS-ServingCellInformation OPTIONAL,
@@ -577,7 +577,7 @@ DomainSpecificAccessRestrictionList-v670ext ::= SEQUENCE {
DomainSpecificAccessRestrictionParam-v670ext OPTIONAL
}
-DomainSpecificAccessRestrictionParam-v670ext ::= SEQUENCE {
+DomainSpecificAccessRestrictionParam-v670ext ::= SEQUENCE {
cSDomainSpecificAccessRestriction DomainSpecificAccessRestriction-v670ext,
pSDomainSpecificAccessRestriction DomainSpecificAccessRestriction-v670ext
}
@@ -684,7 +684,7 @@ PriorityLevel-r11 ::= SEQUENCE {
utraTDD SEQUENCE (SIZE (1..maxNumTDDFreqs)) OF SEQUENCE{
uarfcn UARFCN
},
- eutra SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
+ eutra SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
EARFCNRange,
gsm SEQUENCE {
gsm-CellGroup GSM-CellGroup
@@ -701,7 +701,7 @@ PriorityLevel-r13 ::= SEQUENCE {
utraTDD SEQUENCE (SIZE (1..maxNumTDDFreqs)) OF SEQUENCE{
uarfcn UARFCN
},
- eutra SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
+ eutra SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
EARFCNRange,
gsm SEQUENCE {
gsm-CellGroup GSM-CellGroup
@@ -888,7 +888,7 @@ CapabilityUpdateRequirement-r12 ::= SEQUENCE {
-- If the IE CellUpdateCause has the value 'cellUpdateCause-ext', the actual value is
-- defined in the IE CellUpdateCause-ext.
-CellUpdateCause ::= ENUMERATED {
+CellUpdateCause ::= ENUMERATED {
cellReselection,
periodicalCellUpdate,
uplinkDataTransmission,
@@ -1229,7 +1229,7 @@ DL-PhysChCapabilityTDD ::= SEQUENCE {
maxPhysChPerFrame MaxPhysChPerFrame,
minimumSF MinimumSF-DL,
supportOfPDSCH BOOLEAN,
- maxPhysChPerTS MaxPhysChPerTS
+ maxPhysChPerTS MaxPhysChPerTS
}
DL-PhysChCapabilityTDD-LCR-r4 ::= SEQUENCE {
@@ -1315,7 +1315,7 @@ ESN-DS-41 ::= BIT STRING (SIZE (32))
EstablishmentCause ::= ENUMERATED {
originatingConversationalCall,
- originatingStreamingCall,
+ originatingStreamingCall,
originatingInteractiveCall,
originatingBackgroundCall,
originatingSubscribedTrafficCall,
@@ -1372,7 +1372,7 @@ FailureCauseWithProtErr ::= CHOICE {
}
FailureCauseWithProtErrTrId ::= SEQUENCE {
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
failureCause FailureCauseWithProtErr
}
@@ -1548,7 +1548,7 @@ IntegrityProtectionModeCommand ::= CHOICE {
IntegrityProtectionModeInfo ::= SEQUENCE {
-- TABULAR: DL integrity protection activation info and Integrity
- -- protection intialisation number have been nested inside
+ -- protection intialisation number have been nested inside
-- IntegrityProtectionModeCommand.
integrityProtectionModeCommand IntegrityProtectionModeCommand,
integrityProtectionAlgorithm IntegrityProtectionAlgorithm OPTIONAL
@@ -1556,7 +1556,7 @@ IntegrityProtectionModeInfo ::= SEQUENCE {
IntegrityProtectionModeInfo-r7 ::= SEQUENCE {
-- TABULAR: DL integrity protection activation info and Integrity
- -- protection intialisation number have been nested inside
+ -- protection intialisation number have been nested inside
-- IntegrityProtectionModeCommand.
integrityProtectionModeCommand IntegrityProtectionModeCommand,
integrityProtectionAlgorithm IntegrityProtectionAlgorithm-r7 OPTIONAL
@@ -1567,7 +1567,7 @@ IntegrityProtInitNumber ::= BIT STRING (SIZE (32))
-- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
MaxHcContextSpace ::= ENUMERATED {
- dummy, by1024, by2048, by4096,
+ dummy, by1024, by2048, by4096,
by8192 }
MaxHcContextSpace-r5-ext ::= ENUMERATED {
@@ -1579,7 +1579,7 @@ MaxROHC-ContextSessions-r4 ::= ENUMERATED {
s64, s128, s256, s512, s1024, s16384 }
MaximumAM-EntityNumberRLC-Cap ::= ENUMERATED {
- dummy, am4, am5, am6,
+ dummy, am4, am5, am6,
am8, am16, am30 }
-- Actual value MaximumBitRate = IE value * 16
@@ -1588,7 +1588,7 @@ MaximumBitRate ::= INTEGER (0..32)
MaximumRLC-WindowSize ::= ENUMERATED { mws2047, mws4095 }
MaxNoDPDCH-BitsTransmitted ::= ENUMERATED {
- b600, b1200, b2400, b4800,
+ b600, b1200, b2400, b4800,
b9600, b19200, b28800, b38400,
b48000, b57600 }
@@ -1598,9 +1598,9 @@ MaxNoBits ::= ENUMERATED {
b20480, b40960, b81920, b163840 }
MaxNoPhysChBitsReceived ::= ENUMERATED {
- dummy, b1200, b2400, b3600,
- b4800, b7200, b9600, b14400,
- b19200, b28800, b38400, b48000,
+ dummy, b1200, b2400, b3600,
+ b4800, b7200, b9600, b14400,
+ b19200, b28800, b38400, b48000,
b57600, b67200, b76800 }
MaxNoSCCPCH-RL ::= ENUMERATED {
@@ -1611,14 +1611,14 @@ MaxNumberOfTF ::= ENUMERATED {
tf512, tf1024 }
MaxNumberOfTFC-DL ::= ENUMERATED {
- tfc16, tfc32, tfc48, tfc64, tfc96,
+ tfc16, tfc32, tfc48, tfc64, tfc96,
tfc128, tfc256, tfc512, tfc1024 }
MaxNumberOfTFC-UL ::= ENUMERATED {
- dummy1, dummy2, tfc16, tfc32, tfc48, tfc64,
+ dummy1, dummy2, tfc16, tfc32, tfc48, tfc64,
tfc96, tfc128, tfc256, tfc512, tfc1024 }
--- the values 1 to 4 for MaxPhysChPerFrame are not used in this version of the protocol
+-- the values 1 to 4 for MaxPhysChPerFrame are not used in this version of the protocol
MaxPhysChPerFrame ::= INTEGER (1..224)
MaxPhysChPerFrame-768 ::= INTEGER (1..448)
@@ -1630,7 +1630,7 @@ MaxPhysChPerTimeslot ::= ENUMERATED {
MaxPhysChPerTimeslot-LCR-r7 ::= INTEGER (1..4)
--- the values 1 to 4 for MaxPhysChPerTS are not used in this version of the protocol
+-- the values 1 to 4 for MaxPhysChPerTS are not used in this version of the protocol
MaxPhysChPerTS ::= INTEGER (1..16)
MaxPhysChPerTS-768 ::= INTEGER (1..32)
@@ -1659,7 +1659,7 @@ MaxTS-PerSubFrame-r4 ::= INTEGER (1..6)
-- the conditional fields have been left mandatory for now.
MeasurementCapability ::= SEQUENCE {
downlinkCompressedMode CompressedModeMeasCapability,
- uplinkCompressedMode CompressedModeMeasCapability
+ uplinkCompressedMode CompressedModeMeasCapability
}
MeasurementCapabilityExt ::= SEQUENCE{
@@ -1779,7 +1779,7 @@ MultiModeCapability ::= ENUMERATED {
MultiRAT-Capability ::= SEQUENCE {
supportOfGSM BOOLEAN,
supportOfMulticarrier BOOLEAN
-}
+}
MultiModeRAT-Capability-v590ext ::= SEQUENCE {
supportOfUTRAN-ToGERAN-NACC BOOLEAN
@@ -1889,7 +1889,7 @@ NetworkAssistedGANSS-Supported-List-v860ext ::= SEQUENCE (SIZE (1..maxGANSS)) OF
}
NetworkAssistedGPS-Supported ::= ENUMERATED {
- networkBased,
+ networkBased,
ue-Based,
bothNetworkAndUE-Based,
noNetworkAssistedGPS }
@@ -2110,7 +2110,7 @@ PhysicalChannelCapability-LCR-r4 ::= SEQUENCE {
PhysicalChannelCapability-hspdsch-r5 ::= SEQUENCE {
fdd-hspdsch CHOICE {
supported SEQUENCE {
- -- hsdsch-physical-layer-category values shall be restricted to the range [1..12]
+ -- hsdsch-physical-layer-category values shall be restricted to the range [1..12]
-- even if the UE physical capability category is above 12.
hsdsch-physical-layer-category HSDSCH-physical-layer-category,
-- dummy and dummy2 are not used in this version of the specification
@@ -2156,8 +2156,8 @@ ProtocolErrorIndicator ::= ENUMERATED {
ProtocolErrorIndicatorWithMoreInfo ::= CHOICE {
noError NULL,
- errorOccurred SEQUENCE {
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ errorOccurred SEQUENCE {
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
protocolErrorInformation ProtocolErrorInformation
}
}
@@ -2172,8 +2172,8 @@ ProtocolErrorMoreInformation ::= SEQUENCE {
ie-ValueNotComprehended IdentificationOfReceivedMessage,
conditionalInformationElementError IdentificationOfReceivedMessage,
messageExtensionNotComprehended IdentificationOfReceivedMessage,
- spare1 NULL,
- spare2 NULL
+ spare1 NULL,
+ spare2 NULL
},
spare NULL
}
@@ -2189,8 +2189,8 @@ RadioFrequencyBandFDD ::= ENUMERATED {
-- fdd2100, fdd1900, fdd1800 correspond to Band I, Band II and Band III respectively
fdd2100,
fdd1900,
- fdd1800,
- bandVI,
+ fdd1800,
+ bandVI,
bandIV,
bandV,
bandVII,
@@ -2206,7 +2206,7 @@ RadioFrequencyBandFDD2 ::= ENUMERATED {
bandXIV,
bandXV,
bandXVI,
- bandXVII,
+ bandXVII,
bandXVIII,
bandXIX,
bandXX,
@@ -2306,8 +2306,8 @@ RF-Capability-r4-ext ::= SEQUENCE {
}
RF-Capability-v770ext ::= SEQUENCE {
- -- If TDD384 and/or TDD128 RF capability is indicated in IEs 'RF-Capability' or
- -- 'RF-Capability-r4-ext', the corresponding IE 'RadioFrequencyBandTDDList-r7' shall
+ -- If TDD384 and/or TDD128 RF capability is indicated in IEs 'RF-Capability' or
+ -- 'RF-Capability-r4-ext', the corresponding IE 'RadioFrequencyBandTDDList-r7' shall
-- be included in this IE.
tdd384RF-Capability RadioFrequencyBandTDDList-r7 OPTIONAL,
tdd768RF-Capability SEQUENCE {
@@ -2427,7 +2427,7 @@ SecurityCapability ::= SEQUENCE {
SecondaryServingEDCHCell-Info ::= SEQUENCE {
primary-E-RNTI E-RNTI OPTIONAL,
secondary-E-RNTI E-RNTI OPTIONAL
- }
+ }
SecondaryEDCH-Info-Common ::= SEQUENCE {
frequencyInfo FrequencyInfo,
@@ -2485,7 +2485,7 @@ Serving-HSDSCH-CellInformation ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
dl-hspdsch-Information DL-HSPDSCH-Information OPTIONAL,
harqInfo HARQ-Info OPTIONAL,
- mac-hsResetIndicator ENUMERATED { true } OPTIONAL
+ mac-hsResetIndicator ENUMERATED { true } OPTIONAL
}
Serving-HSDSCH-CellInformation-r7 ::= SEQUENCE {
@@ -2544,9 +2544,9 @@ SimultaneousSCCPCH-DPCH-Reception ::= CHOICE {
notSupported NULL,
supported SEQUENCE {
maxNoSCCPCH-RL MaxNoSCCPCH-RL,
- -- simultaneousSCCPCH-DPCH-DPDCH-Reception is applicable only if
+ -- simultaneousSCCPCH-DPCH-DPDCH-Reception is applicable only if
-- the IE Support of PDSCH = TRUE
- -- Note: the reference to DPDCH in the element name below is incorrect (see tabular). The
+ -- Note: the reference to DPDCH in the element name below is incorrect (see tabular). The
-- name is not changed, to keep it aligned with R99.
simultaneousSCCPCH-DPCH-DPDCH-Reception BOOLEAN
}
@@ -2586,13 +2586,13 @@ SystemSpecificCapUpdateReq-r8 ::= ENUMERATED {
gsm, geranIu, eutra, spare5,
spare4, spare3, spare2, spare1 }
-SystemSpecificCapUpdateReqList ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF
+SystemSpecificCapUpdateReqList ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF
SystemSpecificCapUpdateReq
-SystemSpecificCapUpdateReqList-r5 ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF
+SystemSpecificCapUpdateReqList-r5 ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF
SystemSpecificCapUpdateReq-r5
-SystemSpecificCapUpdateReqList-r8 ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF
+SystemSpecificCapUpdateReqList-r8 ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF
SystemSpecificCapUpdateReq-r8
T-300 ::= ENUMERATED {
@@ -2614,7 +2614,7 @@ T-302 ::= ENUMERATED {
ms6000, ms8000, spare }
T-304 ::= ENUMERATED {
- ms100, ms200, ms400,
+ ms100, ms200, ms400,
ms1000, ms2000, spare3, spare2, spare1 }
T-305 ::= ENUMERATED {
@@ -2713,7 +2713,7 @@ TransmissionProbability ::= INTEGER (1..8)
TransportChannelCapability ::= SEQUENCE {
dl-TransChCapability DL-TransChCapability,
- ul-TransChCapability UL-TransChCapability
+ ul-TransChCapability UL-TransChCapability
}
TurboSupport ::= CHOICE {
@@ -2779,7 +2779,7 @@ UE-AddPos-element ::= SEQUENCE{
spare4, spare3, spare2, spare1 },
addPos-Mode ENUMERATED {standalone, ue-assisted,
both, spare1 }
-
+
}
UE-BasedNetworkPerformanceMeasurementsParameters ::= SEQUENCE {
@@ -2825,7 +2825,7 @@ UE-CapabilityContainer-IEs ::= SEQUENCE {
va80NonCriticalExtensions SEQUENCE {
ue-RadioAccessCapability-va80ext
UE-RadioAccessCapability-va80ext-IEs,
- laterNonCriticalExtensions
+ laterNonCriticalExtensions
UE-RadioAccessCapability-LaterNonCriticalExtensions OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -2935,10 +2935,10 @@ UE-RadioAccessCapability-LaterNonCriticalExtensions ::= SEQUENCE {
vb80NonCriticalExtensions SEQUENCE {
ue-RadioAccessCapability-vb80ext UE-RadioAccessCapability-vb80ext-IEs,
vc50NonCriticalExtensions SEQUENCE {
- ue-RadioAccessCapability-vc50ext
+ ue-RadioAccessCapability-vc50ext
UE-RadioAccessCapability-vc50ext-IEs,
vd20NonCriticalExtensions SEQUENCE {
- ue-RadioAccessCapability-vd20ext
+ ue-RadioAccessCapability-vd20ext
UE-RadioAccessCapability-vd20ext-IEs,
ve30NonCriticalExtensions UE-RadioAccessCapability-ve30ext-IEs OPTIONAL
} OPTIONAL
@@ -2960,7 +2960,7 @@ UE-RadioAccessCapability-va40ext-IEs ::= SEQUENCE {
measurementCapability MeasurementCapability-va40ext OPTIONAL,
supportOfMUMIMO ENUMERATED { uplink, uplink-and-downlink } OPTIONAL,
supportForDualCellMimoInDifferentBands ENUMERATED { true } OPTIONAL,
- ue-BasedNetworkPerformanceMeasurementsParameters
+ ue-BasedNetworkPerformanceMeasurementsParameters
UE-BasedNetworkPerformanceMeasurementsParameters OPTIONAL,
supportOfUTRANANR ENUMERATED { true } OPTIONAL,
-- UE radio access capability extension
@@ -3040,23 +3040,23 @@ UE-RadioAccessCapability-vd20ext-IEs ::= SEQUENCE {
-- the capability is for FDD only
supportofRetrievableConfigurations ENUMERATED { true } OPTIONAL,
supportofURAPCHwithSeamlessTransition ENUMERATED { true } OPTIONAL,
- supportofImprovedSynchronizedRRCProcedures ENUMERATED { true } OPTIONAL,
+ supportofImprovedSynchronizedRRCProcedures ENUMERATED { true } OPTIONAL,
supportofEnhancedStateTransition ENUMERATED { true } OPTIONAL
}
-UE-RadioAccessCapability-ve30ext-IEs ::= SEQUENCE {
+UE-RadioAccessCapability-ve30ext-IEs ::= SEQUENCE {
measurementCapability MeasurementCapability-ve30ext OPTIONAL,
supportofSimultaneousSetupandReleaseofRABsRBs ENUMERATED { true } OPTIONAL,
physicalChannelCapability PhysicalChannelCapability-ve30ext OPTIONAL,
ue-RadioAccessCapability-vf10ext UE-RadioAccessCapability-vf10ext-IEs OPTIONAL
}
-UE-RadioAccessCapability-vf10ext-IEs ::= SEQUENCE {
+UE-RadioAccessCapability-vf10ext-IEs ::= SEQUENCE {
physicalChannelCapability PhysicalChannelCapability-vf10ext OPTIONAL,
ue-RadioAccessCapability-vf20ext-IEs UE-RadioAccessCapability-vf20ext-IEs OPTIONAL
}
-UE-RadioAccessCapability-vf20ext-IEs ::= SEQUENCE {
+UE-RadioAccessCapability-vf20ext-IEs ::= SEQUENCE {
measurementCapability MeasurementCapability-vf20ext OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
}
@@ -3171,7 +3171,7 @@ UE-IdleTimersAndConstants ::= SEQUENCE {
t-312 T-312,
-- n-312 shall be ignored if n-312 in UE-IdleTimersAndConstants-v3a0ext is present, and the
-- value of that element shall be used instead.
- n-312 N-312
+ n-312 N-312
}
UE-HSPA-Identities-r6 ::= SEQUENCE {
@@ -3195,8 +3195,8 @@ UE-PowerClassExt ::= ENUMERATED {class1, class2, class3, class4,
spare4, spare3, spare2, spare1 }
UE-RadioAccessCapability ::= SEQUENCE {
- -- UE-RadioAccessCapability is compatible with R99, although accessStratumReleaseIndicator
- -- is removed from this IE, since its encoding did not result in bits. The
+ -- UE-RadioAccessCapability is compatible with R99, although accessStratumReleaseIndicator
+ -- is removed from this IE, since its encoding did not result in bits. The
-- accessStratumReleaseIndicator is provided in the relevant REL-4 extension IEs.
pdcp-Capability PDCP-Capability,
rlc-Capability RLC-Capability,
@@ -3367,8 +3367,8 @@ UE-RadioAccessCapabBandFDD2 ::= SEQUENCE {
}
UE-RadioAccessCapabBandFDD3 ::= SEQUENCE {
- -- UE may omit both IEs if this IE indicates the same EUTRA compressed
- -- mode capability for all supported UTRA bands
+ -- UE may omit both IEs if this IE indicates the same EUTRA compressed
+ -- mode capability for all supported UTRA bands
-- Otherwise, the UE shall include either one of the following OPTIONAL IEs.
radioFrequencyBandFDD RadioFrequencyBandFDD OPTIONAL,
radioFrequencyBandFDD2 RadioFrequencyBandFDD2 OPTIONAL,
@@ -3377,7 +3377,7 @@ UE-RadioAccessCapabBandFDD3 ::= SEQUENCE {
UE-RadioAccessCapabBandFDD4 ::= SEQUENCE {
-- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
- -- capability for all supported UTRA bands
+ -- capability for all supported UTRA bands
-- Otherwise, the UE shall include either one of the following OPTIONAL IEs.
radioFrequencyBandFDD RadioFrequencyBandFDD OPTIONAL,
radioFrequencyBandFDD2 RadioFrequencyBandFDD2 OPTIONAL,
@@ -3391,8 +3391,8 @@ UE-RadioAccessCapabBandFDD4-va60ext ::= SEQUENCE {
}
UE-RadioAccessCapabBandFDD4-va80ext ::= SEQUENCE {
- -- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
- -- capability for all supported UTRA bands
+ -- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
+ -- capability for all supported UTRA bands
-- Otherwise, the UE shall include either one of the following OPTIONAL IEs.
radioFrequencyBandFDD RadioFrequencyBandFDD OPTIONAL,
radioFrequencyBandFDD2 RadioFrequencyBandFDD2 OPTIONAL,
@@ -3412,8 +3412,8 @@ UE-RadioAccessCapabBandFDD5 ::= SEQUENCE {
}
UE-RadioAccessCapabBandFDD6 ::= SEQUENCE {
- -- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
- -- capability for all supported UTRA bands
+ -- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
+ -- capability for all supported UTRA bands
-- Otherwise, the UE shall include either one of the following OPTIONAL IEs.
radioFrequencyBandFDD RadioFrequencyBandFDD OPTIONAL,
radioFrequencyBandFDD2 RadioFrequencyBandFDD2 OPTIONAL,
@@ -3428,8 +3428,8 @@ UE-RadioAccessCapabBandFDD6 ::= SEQUENCE {
}
UE-RadioAccessCapabBandFDD7 ::= SEQUENCE {
- -- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
- -- capability for all supported UTRA bands
+ -- UE may omit all the radioFrequencyBand IEs if this IE indicates the same
+ -- capability for all supported UTRA bands
-- Otherwise, the UE shall include either one of the following OPTIONAL IEs.
radioFrequencyBandFDD RadioFrequencyBandFDD OPTIONAL,
radioFrequencyBandFDD2 RadioFrequencyBandFDD2 OPTIONAL,
@@ -3467,10 +3467,10 @@ UE-RadioAccessCapabBandCombList ::= SEQUENCE (SIZE (1..16)) OF BandComb
UE-RadioAccessCapabBandFDDList ::= SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
UE-RadioAccessCapabBandFDD
-UE-RadioAccessCapabBandFDDList-ext ::= SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
+UE-RadioAccessCapabBandFDDList-ext ::= SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
UE-RadioAccessCapabBandFDD-ext
-UE-RadioAccessCapabBandFDDList-ext2 ::= SEQUENCE (SIZE (1..maxFreqBandsFDD2)) OF
+UE-RadioAccessCapabBandFDDList-ext2 ::= SEQUENCE (SIZE (1..maxFreqBandsFDD2)) OF
UE-RadioAccessCapabBandFDD-ext2
UE-RadioAccessCapabBandFDD ::= SEQUENCE{
@@ -3651,7 +3651,7 @@ RF-CapabBandListFDDComp-ext2 ::= SEQUENCE (SIZE (1..maxFreqBandsFDD-ext2)) OF
UE-RadioAccessCapabBandCombList-va40ext ::= SEQUENCE (SIZE (1..16)) OF SupportedCarrierCombination
-UE-RadioAccessCapabBandCombList-vb50ext ::= SEQUENCE (SIZE (1..16)) OF
+UE-RadioAccessCapabBandCombList-vb50ext ::= SEQUENCE (SIZE (1..16)) OF
SupportedCarrierCombination-ext
@@ -3720,7 +3720,7 @@ UL-PhysChCapabilityFDD ::= SEQUENCE {
maxNoDPDCH-BitsTransmitted MaxNoDPDCH-BitsTransmitted,
-- dummy is not used in this version of the specification and
-- it should be ignored by the receiver.
- dummy BOOLEAN
+ dummy BOOLEAN
}
UL-PhysChCapabilityFDD-r6 ::= SEQUENCE {
@@ -3763,7 +3763,7 @@ UL-PhysChCapabilityTDD ::= SEQUENCE {
maxTS-PerFrame MaxTS-PerFrame,
maxPhysChPerTimeslot MaxPhysChPerTimeslot,
minimumSF MinimumSF-UL,
- supportOfPUSCH BOOLEAN
+ supportOfPUSCH BOOLEAN
}
UL-PhysChCapabilityTDD-384-v770ext ::= SEQUENCE {
@@ -3934,9 +3934,9 @@ UE-SpecificCapabilityInformation-LCRTDD ::= ENUMERATED {
spare2,
spare1 }
-URA-UpdateCause ::= ENUMERATED {
- changeOfURA,
- periodicURAUpdate,
+URA-UpdateCause ::= ENUMERATED {
+ changeOfURA,
+ periodicURAUpdate,
dummy,
spare1 }
@@ -3996,7 +3996,7 @@ DefaultConfigIdentity-r4 ::= INTEGER (0..12)
DefaultConfigIdentity-r5 ::= INTEGER (0..13)
--- DefaultConfigIdentity-r6 values 25..31 are spare and shall not be used in this version of
+-- DefaultConfigIdentity-r6 values 25..31 are spare and shall not be used in this version of
-- the protocol
DefaultConfigIdentity-r6 ::= INTEGER (0..31)
@@ -4120,7 +4120,7 @@ DL-RLC-Mode-r11 ::= CHOICE {
DL-RLC-StatusInfo ::= SEQUENCE {
timerStatusProhibit TimerStatusProhibit OPTIONAL,
- -- dummy is not used in this version of the specification, it should not be sent
+ -- dummy is not used in this version of the specification, it should not be sent
-- and if received they should be ignored.
dummy TimerEPC OPTIONAL,
missingPDU-Indicator BOOLEAN,
@@ -4155,7 +4155,7 @@ DL-TransportChannelType-r5 ::= CHOICE {
-- The choice "dsch" should not be used in FDD mode, and if received
-- the UE behaviour is unspecified.
dsch TransportChannelIdentity,
- -- The choice "dch-and-dsch" should not be used in FDD mode, and if received the UE
+ -- The choice "dch-and-dsch" should not be used in FDD mode, and if received the UE
-- behaviour is unspecified
dch-and-dsch TransportChannelIdentityDCHandDSCH,
hsdsch MAC-d-FlowIdentity,
@@ -4168,7 +4168,7 @@ DL-TransportChannelType-r7 ::= CHOICE {
-- The choice "dsch" should not be used in FDD mode, and if received
-- the UE behaviour is unspecified.
dsch TransportChannelIdentity,
- -- The choice "dch-and-dsch" should not be used in FDD mode, and if received the UE
+ -- The choice "dch-and-dsch" should not be used in FDD mode, and if received the UE
-- behaviour is unspecified
dch-and-dsch TransportChannelIdentityDCHandDSCH,
hsdsch CHOICE {
@@ -4298,7 +4298,7 @@ PDCP-ROHC-TargetMode ::= ENUMERATED { o-Mode, r-Mode }
PDCP-SN-Info ::= INTEGER (0..65535)
Poll-PDU ::= ENUMERATED {
- pdu1, pdu2, pdu4, pdu8, pdu16,
+ pdu1, pdu2, pdu4, pdu8, pdu16,
pdu32, pdu64, pdu128 }
Poll-SDU ::= ENUMERATED {
@@ -4316,7 +4316,7 @@ PollingInfo ::= SEQUENCE {
}
PollWindow ::= ENUMERATED {
- pw50, pw60, pw70, pw80, pw85,
+ pw50, pw60, pw70, pw80, pw85,
pw90, pw95, pw99 }
PredefinedConfigIdentity ::= INTEGER (0..15)
@@ -4544,7 +4544,7 @@ RAB-InformationSetupList-r11 ::= SEQUENCE (SIZE (1..maxRABsetup)) OF
RB-ActivationTimeInfo ::= SEQUENCE {
rb-Identity RB-Identity,
rlc-SequenceNumber RLC-SequenceNumber
-}
+}
RB-ActivationTimeInfoList ::= SEQUENCE (SIZE (1..maxRB)) OF
RB-ActivationTimeInfo
@@ -4842,7 +4842,7 @@ RB-WithPDCP-InfoList ::= SEQUENCE (SIZE (1..maxRBallRABs)) OF
ReceivingWindowSize ::= ENUMERATED {
rw1, rw8, rw16, rw32, rw64, rw128, rw256,
- rw512, rw768, rw1024, rw1536, rw2047,
+ rw512, rw768, rw1024, rw1536, rw2047,
rw2560, rw3072, rw3584, rw4095 }
RetrievableConfig ::= SEQUENCE {
@@ -5097,8 +5097,8 @@ TimerEPC ::= ENUMERATED {
te900 }
TimerMRW ::= ENUMERATED {
- te50, te60, te70, te80, te90, te100,
- te120, te140, te160, te180, te200,
+ te50, te60, te70, te80, te90, te100,
+ te120, te140, te160, te180, te200,
te300, te400, te500, te700, te900 }
TimerOSD-r6 ::= ENUMERATED {
@@ -5143,7 +5143,7 @@ TimerReordering ::= ENUMERATED {
tr50, tr100, tr150, tr200, tr400, tr600, tr800, tr1000 }
TimerRST ::= ENUMERATED {
- tr50, tr100, tr150, tr200, tr250, tr300,
+ tr50, tr100, tr150, tr200, tr250, tr300,
tr350, tr400, tr450, tr500, tr550,
tr600, tr700, tr800, tr900, tr1000 }
@@ -5175,11 +5175,11 @@ TransmissionRLC-Discard ::= CHOICE {
TransmissionWindowSize ::= ENUMERATED {
tw1, tw8, tw16, tw32, tw64, tw128, tw256,
- tw512, tw768, tw1024, tw1536, tw2047,
+ tw512, tw768, tw1024, tw1536, tw2047,
tw2560, tw3072, tw3584, tw4095 }
-- Actual bit rate per each value is defined in [62] and [63]
-UL-AMR-Rate ::= ENUMERATED {
+UL-AMR-Rate ::= ENUMERATED {
t0, t1, t2, t3, t4, t5, t6, t7, t8, spare7, spare6, spare5,
spare4, spare3, spare2, spare1 }
@@ -5363,7 +5363,7 @@ AddOrReconfMAC-dFlow ::= SEQUENCE {
AddOrReconfMAC-ehs-ReordQ ::= SEQUENCE {
mac-ehs-AddReconfQueue-List MAC-ehs-AddReconfReordQ-List OPTIONAL,
- -- dummy is not used in this version of the specification, it should
+ -- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
dummy MAC-ehs-DelReordQ-List OPTIONAL
}
@@ -5408,12 +5408,12 @@ BitModeRLC-SizeInfo ::= CHOICE {
-- Actual value BLER-QualityValue = IE value * 0.1
BLER-QualityValue ::= INTEGER (-63..0)
-ChannelCodingType ::= CHOICE {
+ChannelCodingType ::= CHOICE {
-- noCoding is only used for TDD in this version of the specification,
-- otherwise it should be ignored
noCoding NULL,
convolutional CodingRate,
- turbo NULL
+ turbo NULL
}
CodingRate ::= ENUMERATED {
@@ -5452,7 +5452,7 @@ CommonDynamicTF-Info ::= SEQUENCE {
}
}
},
- numberOfTbSizeList SEQUENCE (SIZE (1..maxTF)) OF
+ numberOfTbSizeList SEQUENCE (SIZE (1..maxTF)) OF
NumberOfTransportBlocks,
logicalChannelList LogicalChannelList
}
@@ -5520,7 +5520,7 @@ Concurrent-Deployment-2ms-10ms-TTI ::= SEQUENCE {
CPCH-SetID ::= INTEGER (1..maxCPCHsets)
-CRC-Size ::= ENUMERATED {
+CRC-Size ::= ENUMERATED {
crc0, crc8, crc12, crc16, crc24 }
DedicatedDynamicTF-Info ::= SEQUENCE {
@@ -5530,7 +5530,7 @@ DedicatedDynamicTF-Info ::= SEQUENCE {
},
numberOfTbSizeList SEQUENCE (SIZE (1..maxTF)) OF
NumberOfTransportBlocks,
- logicalChannelList LogicalChannelList
+ logicalChannelList LogicalChannelList
}
DedicatedDynamicTF-Info-DynamicTTI ::= SEQUENCE {
@@ -5539,7 +5539,7 @@ DedicatedDynamicTF-Info-DynamicTTI ::= SEQUENCE {
octetModeType1 OctetModeRLC-SizeInfoType1
},
numberOfTbSizeAndTTIList NumberOfTbSizeAndTTIList,
- logicalChannelList LogicalChannelList
+ logicalChannelList LogicalChannelList
}
DedicatedDynamicTF-InfoList ::= SEQUENCE (SIZE (1..maxTF)) OF
@@ -5592,8 +5592,8 @@ DL-AddReconfTransChInfoList-TDD128-v9c0ext ::= SEQUENCE (SIZE (1..maxTrCHpreconf
DL-AddReconfTransChInformation-TDD128-v9c0ext
--- ASN.1 for IE "Added or Reconfigured DL TrCH information"
--- in case of messages other than: Radio Bearer Release message and
+-- ASN.1 for IE "Added or Reconfigured DL TrCH information"
+-- in case of messages other than: Radio Bearer Release message and
-- Radio Bearer Reconfiguration message
DL-AddReconfTransChInformation ::= SEQUENCE {
dl-TransportChannelType DL-TrCH-Type,
@@ -5603,7 +5603,7 @@ DL-AddReconfTransChInformation ::= SEQUENCE {
sameAsULTrCH UL-TransportChannelIdentity
},
dch-QualityTarget QualityTarget OPTIONAL,
- -- dummy is not used in this version of the specification, it should
+ -- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
dummy TM-SignallingInfo OPTIONAL
}
@@ -5672,8 +5672,8 @@ DL-AddReconfTransChInformation-TDD128-v9c0ext ::= SEQUENCE {
hsdsch HSDSCH-Info-TDD128-v9c0ext OPTIONAL
}
--- ASN.1 for IE "Added or Reconfigured DL TrCH information"
--- in case of Radio Bearer Release message and
+-- ASN.1 for IE "Added or Reconfigured DL TrCH information"
+-- in case of Radio Bearer Release message and
-- Radio Bearer Reconfiguration message
DL-AddReconfTransChInformation2 ::= SEQUENCE {
dl-TransportChannelType DL-TrCH-Type,
@@ -5687,7 +5687,7 @@ DL-AddReconfTransChInformation2 ::= SEQUENCE {
DL-CommonTransChInfo ::= SEQUENCE {
sccpch-TFCS TFCS OPTIONAL,
- -- modeSpecificInfo should be optional. A new version of this IE should be defined
+ -- modeSpecificInfo should be optional. A new version of this IE should be defined
-- to be used in later versions of messages using this IE
modeSpecificInfo CHOICE {
fdd SEQUENCE {
@@ -5781,7 +5781,7 @@ DRAC-StaticInformation ::= SEQUENCE {
drac-ClassIdentity DRAC-ClassIdentity
}
-DRAC-StaticInformationList ::= SEQUENCE (SIZE (1..maxTrCH)) OF
+DRAC-StaticInformationList ::= SEQUENCE (SIZE (1..maxTrCH)) OF
DRAC-StaticInformation
E-DCH-AddReconf-MAC-d-Flow ::= SEQUENCE {
@@ -6014,7 +6014,7 @@ IndividualUL-CCTrCH-InfoList ::= SEQUENCE (SIZE (1..maxCCTrCH)) OF
IndividualUL-CCTrCH-Info
LogicalChannelByRB ::= SEQUENCE {
- rb-Identity RB-Identity,
+ rb-Identity RB-Identity,
logChOfRb INTEGER (0..1) OPTIONAL
}
@@ -6022,7 +6022,7 @@ LogicalChannelList ::= CHOICE {
allSizes NULL,
configured NULL,
explicitList SEQUENCE (SIZE (1..15)) OF
- LogicalChannelByRB
+ LogicalChannelByRB
}
MAC-d-FlowIdentityDCHandHSDSCH ::= SEQUENCE {
@@ -6124,7 +6124,7 @@ MAC-ehs-WindowSize-TDD128-v9c0ext ::= ENUMERATED {
MAC-hs-WindowSize-r11 ::= ENUMERATED {
mws4, mws6, mws8, mws12, mws16, mws24, mws32,
- mws64, mws128, mws256, spare6, spare5, spare4,
+ mws64, mws128, mws256, spare6, spare5, spare4,
spare3, spare2, spare1 }
NumberOfTbSizeAndTTIList ::= SEQUENCE (SIZE (1..maxTF)) OF SEQUENCE {
@@ -6206,7 +6206,7 @@ PreDefTransChConfiguration ::= SEQUENCE {
ul-AddReconfTrChInfoList UL-AddReconfTransChInfoList,
dl-CommonTransChInfo DL-CommonTransChInfo,
dl-TrChInfoList DL-AddReconfTransChInfoList
-}
+}
QualityTarget ::= SEQUENCE {
bler-QualityValue BLER-QualityValue
@@ -6540,7 +6540,7 @@ UL-AddReconfTransChInformation-r14 ::= CHOICE {
}
UL-CommonTransChInfo ::= SEQUENCE {
- -- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual
+ -- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual
-- CCTrCH Info.
tfc-Subset TFC-Subset OPTIONAL,
prach-TFCS TFCS OPTIONAL,
@@ -6557,7 +6557,7 @@ UL-CommonTransChInfo ::= SEQUENCE {
}
UL-CommonTransChInfo-r4 ::= SEQUENCE {
- -- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual
+ -- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual
-- CCTrCH Info.
tfc-Subset TFC-Subset OPTIONAL,
prach-TFCS TFCS OPTIONAL,
@@ -6573,7 +6573,7 @@ UL-CommonTransChInfo-r4 ::= SEQUENCE {
}
UL-CommonTransChInfo-r12 ::= SEQUENCE {
- -- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual
+ -- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual
-- CCTrCH Info.
tfc-Subset TFC-Subset OPTIONAL,
prach-TFCS TFCS OPTIONAL,
@@ -6673,22 +6673,22 @@ AccessServiceClass-TDD ::= SEQUENCE {
},
size4 SEQUENCE {
subchannels BIT STRING {
- subCh3(0),
- subCh2(1),
- subCh1(2),
- subCh0(3)
+ subCh3(0),
+ subCh2(1),
+ subCh1(2),
+ subCh0(3)
} (SIZE(4)) OPTIONAL
},
size8 SEQUENCE {
subchannels BIT STRING {
- subCh7(0),
- subCh6(1),
- subCh5(2),
- subCh4(3),
- subCh3(4),
- subCh2(5),
- subCh1(6),
- subCh0(7)
+ subCh7(0),
+ subCh6(1),
+ subCh5(2),
+ subCh4(3),
+ subCh3(4),
+ subCh2(5),
+ subCh1(6),
+ subCh0(7)
} (SIZE(8)) OPTIONAL
}
}
@@ -6781,26 +6781,26 @@ AccessServiceClass-TDD-LCR-r4 ::= SEQUENCE {
},
size4 SEQUENCE {
subchannels BIT STRING {
- subCh3(0),
- subCh2(1),
- subCh1(2),
- subCh0(3)
+ subCh3(0),
+ subCh2(1),
+ subCh1(2),
+ subCh0(3)
} (SIZE(4)) OPTIONAL
},
size8 SEQUENCE {
subchannels BIT STRING {
- subCh7(0),
- subCh6(1),
- subCh5(2),
- subCh4(3),
- subCh3(4),
- subCh2(5),
- subCh1(6),
- subCh0(7)
+ subCh7(0),
+ subCh6(1),
+ subCh5(2),
+ subCh4(3),
+ subCh3(4),
+ subCh2(5),
+ subCh1(6),
+ subCh0(7)
} (SIZE(8)) OPTIONAL
}
}
-
+
}
ActivationTimeOffset ::= INTEGER (0 .. 255)
@@ -6950,7 +6950,7 @@ ASCSetting-TDD-LCR-r4 ::= SEQUENCE {
-- TABULAR: accessServiceClass-TDD-LCR is MD in tabular description
-- Default value is previous ASC
-- If this is the first ASC, the default value is all available SYNC_UL codes and
- -- all available sub-channels with subchannelSize=size1.
+ -- all available sub-channels with subchannelSize=size1.
accessServiceClass-TDD-LCR AccessServiceClass-TDD-LCR-r4 OPTIONAL
}
@@ -7166,7 +7166,7 @@ CommonEDCHSystemInfoFDD ::= SEQUENCE {
-- Actual value dl-FDPCH-TPCcommandErrorRate = IE value * 0.01
dl-FDPCH-TPCcommandErrorRate INTEGER (1..10),
additional-E-DCH-TransmitBackoff INTEGER (0..15),
- max-CCCH-ResourceAllocation ENUMERATED {
+ max-CCCH-ResourceAllocation ENUMERATED {
tti8, tti12, tti16, tti20, tti24, tti32,
tti40, tti80 },
max-PeriodForCollisionResolution INTEGER (8..24),
@@ -7180,7 +7180,7 @@ CommonEDCHSystemInfoFDD ::= SEQUENCE {
}
CommonEDCHSystemInfoParamConcurrentTTI ::= SEQUENCE {
- common-E-DCH-MAC-d-Flow-Info-List-ConcurrentTTI
+ common-E-DCH-MAC-d-Flow-Info-List-ConcurrentTTI
Common-E-DCH-MAC-d-Flow-Info-List-ConcurrentTTI OPTIONAL,
initialServingGrantValue INTEGER (0..37) OPTIONAL,
e-agch-Information E-AGCH-Information OPTIONAL,
@@ -7189,7 +7189,7 @@ CommonEDCHSystemInfoParamConcurrentTTI ::= SEQUENCE {
e-DPCCH-DPCCH-PowerOffset E-DPCCH-DPCCH-PowerOffset OPTIONAL,
e-dpdch-Info E-DPDCH-Info-r8,
additional-E-DCH-TransmitBackoff INTEGER (0..15) OPTIONAL,
- max-CCCH-ResourceAllocation ENUMERATED {
+ max-CCCH-ResourceAllocation ENUMERATED {
tti8, tti12, tti16, tti20, tti24, tti32,
tti40, tti80 } OPTIONAL,
max-PeriodForCollisionResolution INTEGER (8..24) OPTIONAL,
@@ -7267,7 +7267,7 @@ ControlChannelDRXInfo-TDD128-r8 ::= SEQUENCE {
CPCH-PersistenceLevels ::= SEQUENCE {
cpch-SetID CPCH-SetID,
- dynamicPersistenceLevelTF-List DynamicPersistenceLevelTF-List
+ dynamicPersistenceLevelTF-List DynamicPersistenceLevelTF-List
}
CPCH-PersistenceLevelsList ::= SEQUENCE (SIZE (1..maxCPCHsets)) OF
@@ -7366,9 +7366,9 @@ DCH-Enhancements-Info-FDD ::= SEQUENCE {
}
}
--- DefaultDPCH-OffsetValueFDD and DefaultDPCH-OffsetValueTDD corresponds to
+-- DefaultDPCH-OffsetValueFDD and DefaultDPCH-OffsetValueTDD corresponds to
-- IE "Default DPCH Offset Value" depending on the mode.
--- Actual value DefaultDPCH-OffsetValueFDD = IE value * 512
+-- Actual value DefaultDPCH-OffsetValueFDD = IE value * 512
DefaultDPCH-OffsetValueFDD ::= INTEGER (0..599)
@@ -7402,7 +7402,7 @@ DL-CCTrCh ::= SEQUENCE {
timeInfo TimeInfo,
commonTimeslotInfo CommonTimeslotInfo OPTIONAL,
dl-CCTrCH-TimeslotsCodes DownlinkTimeslotsCodes OPTIONAL,
- ul-CCTrChTPCList UL-CCTrChTPCList OPTIONAL
+ ul-CCTrChTPCList UL-CCTrChTPCList OPTIONAL
}
DL-CCTrCh-r4 ::= SEQUENCE {
@@ -7743,7 +7743,7 @@ DL-DPCH-InfoCommon-r4 ::= SEQUENCE {
dl-DPCH-PowerControlInfo DL-DPCH-PowerControlInfo OPTIONAL
}
},
--- The IE mac-d-HFN-initial-value should be absent in the RRCConnectionSetup-r4-IEs or
+-- The IE mac-d-HFN-initial-value should be absent in the RRCConnectionSetup-r4-IEs or
-- RRCConnectionSetup-r5-IEs or HandoverToUTRANCommand-r4-IEs or HandoverToUTRANCommand-r5-IEs and
-- if the IE is included, the general error handling for conditional IEs applies.
mac-d-HFN-initial-value MAC-d-HFN-initial-value OPTIONAL
@@ -8010,7 +8010,7 @@ DL-FDPCH-InfoCommon-r6 ::= SEQUENCE {
},
dl-FDPCH-PowerControlInfo DL-DPCH-PowerControlInfo OPTIONAL,
-- Actual value dl-FDPCH-TPCcommandErrorRate = IE value * 0.01
- -- dl-FDPCH-TPCcommandErrorRate values 11..16 are spare and shall not be used in this version of
+ -- dl-FDPCH-TPCcommandErrorRate values 11..16 are spare and shall not be used in this version of
-- the protocol.
-- In addition, this IE shall always be included otherwise the UE behaviour is unspecified.
dl-FDPCH-TPCcommandErrorRate INTEGER (1..16) OPTIONAL
@@ -8697,7 +8697,7 @@ DL-TPC-PowerOffsetPerRL ::= SEQUENCE {
powerOffsetTPC-pdpdch PowerOffsetTPC-pdpdch OPTIONAL
}
--- NOTE: The radio links in the following list have a one-to-one mapping with the
+-- NOTE: The radio links in the following list have a one-to-one mapping with the
-- radio links in the message.
DL-TPC-PowerOffsetPerRL-List ::= SEQUENCE (SIZE (1..maxRL)) OF
DL-TPC-PowerOffsetPerRL
@@ -8915,7 +8915,7 @@ DownlinkTimeslotsCodes-r7 ::= SEQUENCE {
DPC-Mode ::= ENUMERATED {
singleTPC,
- tpcTripletInSoft }
+ tpcTripletInSoft }
DPCCH2Info ::= SEQUENCE {
dpcch2TxPowerOffset Dpcch2TxPowerOffset
@@ -8929,7 +8929,7 @@ DPCCH2InfoFDD ::= SEQUENCE {
f-dpchInfo F-DPCHInfo OPTIONAL,
extended-E-DPCCH-DPCCHPO Extended-E-DPCCH-DPCCH-PowerOffset OPTIONAL,
designatedNonServingHS-DSCHCellInfo DesignatedNonServingHS-DSCHCellInfo OPTIONAL
- }
+ }
}
}
@@ -9714,7 +9714,7 @@ EARFCNExtension ::= INTEGER (65536..262143)
EARFCNExtension2 ::= INTEGER (0..262143)
EARFCNRange ::= SEQUENCE {
--- If the IE earfcn is set to a value of 65535, then the EARFCN
+-- If the IE earfcn is set to a value of 65535, then the EARFCN
-- value for that instance shall be read from the IE earfcnExt.
earfcn EARFCN,
earfcnExt EARFCNExtension OPTIONAL
@@ -9781,8 +9781,8 @@ Feedback-cycle ::= ENUMERATED {
fc0, fc2, fc4, fc8, fc10, fc20, fc40, fc80, fc160}
Feedback-cycle2 ::= ENUMERATED {
- fc0, fc8, fc10, fc16,
- fc20, f32, fc40, f64,
+ fc0, fc8, fc10, fc16,
+ fc20, f32, fc40, f64,
fc80, fc160, spare6, spare5,
spare4, spare3, spare2, spare1}
@@ -9851,7 +9851,7 @@ FrequencyIndexForEnhancedMeas ::= INTEGER (0..maxCellMeas-1)
FrequencyIndexForEnhancedMeas-r12 ::= INTEGER (0..maxCellMeas-ext-1)
-HappyBit-DelayCondition ::= ENUMERATED {
+HappyBit-DelayCondition ::= ENUMERATED {
ms2, ms10, ms20, ms50, ms100, ms200, ms500, ms1000 }
HARQ-Preamble-Mode ::= INTEGER (0..1)
@@ -10017,7 +10017,7 @@ HS-SCCH-Info ::= SEQUENCE {
},
tdd CHOICE {
tdd384 SEQUENCE {
- nack-ack-power-offset INTEGER (-7..8),
+ nack-ack-power-offset INTEGER (-7..8),
hs-SICH-PowerControl-Info HS-SICH-Power-Control-Info-TDD384,
hS-SCCH-SetConfiguration SEQUENCE (SIZE (1..maxHSSCCHs)) OF
HS-SCCH-TDD384
@@ -10037,7 +10037,7 @@ HS-SCCH-Info-r6 ::= SEQUENCE {
},
tdd CHOICE {
tdd384 SEQUENCE {
- nack-ack-power-offset INTEGER (-7..8),
+ nack-ack-power-offset INTEGER (-7..8),
hs-SICH-PowerControl-Info HS-SICH-Power-Control-Info-TDD384,
dhs-sync DHS-Sync OPTIONAL,
bler-target Bler-Target,
@@ -10065,7 +10065,7 @@ HS-SCCH-Info-r7 ::= SEQUENCE {
},
tdd CHOICE {
tdd384 SEQUENCE {
- nack-ack-power-offset INTEGER (-7..8),
+ nack-ack-power-offset INTEGER (-7..8),
hs-SICH-PowerControl-Info HS-SICH-Power-Control-Info-TDD384,
dhs-sync DHS-Sync OPTIONAL,
bler-target Bler-Target,
@@ -10073,7 +10073,7 @@ HS-SCCH-Info-r7 ::= SEQUENCE {
HS-SCCH-TDD384-r6
},
tdd768 SEQUENCE {
- nack-ack-power-offset INTEGER (-7..8),
+ nack-ack-power-offset INTEGER (-7..8),
hs-SICH-PowerControl-Info HS-SICH-Power-Control-Info-TDD768,
dhs-sync DHS-Sync OPTIONAL,
bler-target Bler-Target,
@@ -10116,7 +10116,7 @@ HS-SCCH-Info-r9 ::= SEQUENCE {
},
tdd CHOICE {
tdd384 SEQUENCE {
- nack-ack-power-offset INTEGER (-7..8),
+ nack-ack-power-offset INTEGER (-7..8),
hs-SICH-PowerControl-Info HS-SICH-Power-Control-Info-TDD384,
dhs-sync DHS-Sync OPTIONAL,
bler-target Bler-Target,
@@ -10124,7 +10124,7 @@ HS-SCCH-Info-r9 ::= SEQUENCE {
HS-SCCH-TDD384-r6
},
tdd768 SEQUENCE {
- nack-ack-power-offset INTEGER (-7..8),
+ nack-ack-power-offset INTEGER (-7..8),
hs-SICH-PowerControl-Info HS-SICH-Power-Control-Info-TDD768,
dhs-sync DHS-Sync OPTIONAL,
bler-target Bler-Target,
@@ -10529,7 +10529,7 @@ MidambleConfigurationBurstType2 ::= ENUMERATED {ms3, ms6}
MidambleConfigurationBurstType2-VHCR ::= ENUMERATED {ms4, ms8}
MidambleShiftAndBurstType ::= SEQUENCE {
- burstType CHOICE {
+ burstType CHOICE {
type1 SEQUENCE {
midambleConfigurationBurstType1and3 MidambleConfigurationBurstType1and3,
midambleAllocationMode CHOICE {
@@ -10635,7 +10635,7 @@ MidambleShiftAndBurstType-r7 ::= SEQUENCE {
}
MidambleShiftAndBurstType-DL ::= SEQUENCE {
- burstType CHOICE {
+ burstType CHOICE {
type1 SEQUENCE {
midambleConfigurationBurstType1and3 MidambleConfigurationBurstType1and3,
midambleAllocationMode CHOICE {
@@ -10660,7 +10660,7 @@ MidambleShiftAndBurstType-DL ::= SEQUENCE {
}
MidambleShiftAndBurstType-DL-VHCR ::= SEQUENCE {
- burstType CHOICE {
+ burstType CHOICE {
type1 SEQUENCE {
midambleConfigurationBurstType1and3 MidambleConfigurationBurstType1and3,
midambleAllocationMode CHOICE {
@@ -10916,7 +10916,7 @@ Non-ScheduledTransGrantInfoTDD ::= CHOICE {
Non-ScheduledTransGrantInfoTDD-ext ::= CHOICE {
tdd384-768 NULL,
tdd128 SEQUENCE {
- t-SI-nst ENUMERATED {
+ t-SI-nst ENUMERATED {
everyEDCHTTI, ms20, ms40, ms60, ms80, ms160,
ms200 } OPTIONAL
}
@@ -10950,7 +10950,7 @@ Non-ScheduledTransGrantInfoTDD-r9 ::= CHOICE {
midambleConfiguration INTEGER (1..8),
signatureSequenceGroupIndex INTEGER (0..19)
},
- t-SI-nst ENUMERATED {
+ t-SI-nst ENUMERATED {
everyEDCHTTI, ms20, ms40, ms60, ms80, ms160,
ms200 } OPTIONAL
}
@@ -11122,7 +11122,7 @@ PDSCH-CodeMapping ::= SEQUENCE {
explicit-config PDSCH-CodeInfoList,
replace ReplacedPDSCH-CodeInfoList
}
-}
+}
PDSCH-Identity ::= INTEGER (1..hiPDSCHidentities)
@@ -11272,7 +11272,7 @@ PICH-Info ::= CHOICE {
pagingIndicatorLength PagingIndicatorLength DEFAULT pi4,
n-GAP N-GAP DEFAULT f4,
n-PCH N-PCH DEFAULT 2
- }
+ }
}
PICH-Info-HCR-VHCR-r7 ::= SEQUENCE {
@@ -11376,14 +11376,14 @@ PRACH-Midamble ::= ENUMERATED {
PRACH-Partitioning ::= CHOICE {
fdd SEQUENCE (SIZE (1..maxASC)) OF
- -- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-FDD are listed,
+ -- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-FDD are listed,
-- the remaining (NumASC+2 through maxASC) ASCs are unspecified.
ASCSetting-FDD,
tdd SEQUENCE (SIZE (1..maxASC)) OF
- -- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-TDD are listed,
+ -- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-TDD are listed,
-- the remaining (NumASC+2 through maxASC) ASCs are unspecified.
ASCSetting-TDD
-}
+}
PRACH-Partitioning-r7 ::= CHOICE {
fdd SEQUENCE (SIZE (1..maxASC)) OF
@@ -11397,7 +11397,7 @@ PRACH-Partitioning-r7 ::= CHOICE {
}
PRACH-Partitioning-LCR-r4 ::= SEQUENCE (SIZE (1..maxASC)) OF
- -- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-TDD-LCR-r4 are listed,
+ -- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-TDD-LCR-r4 are listed,
-- the remaining (NumASC+2 through maxASC) ASCs are unspecified.
ASCSetting-TDD-LCR-r4
@@ -11487,7 +11487,7 @@ PRACH-SystemInformation ::= SEQUENCE {
aich-Info AICH-Info OPTIONAL
},
tdd NULL
- }
+ }
}
PRACH-SystemInformation-VHCR-r7 ::= SEQUENCE {
@@ -11589,7 +11589,7 @@ PrimaryCCPCH-Info-LCR-r4-ext ::= SEQUENCE {
PrimaryCCPCH-InfoPost ::= SEQUENCE {
syncCase CHOICE {
syncCase1 SEQUENCE {
- timeslot TimeslotNumber
+ timeslot TimeslotNumber
},
syncCase2 SEQUENCE {
timeslotSync2 TimeslotSync2
@@ -11808,7 +11808,7 @@ RadioLinkswithoutDPCHFDPCHInfo ::= SEQUENCE {
frameOffset DPCH-FrameOffset
}
-ReducedScramblingCodeNumber ::= INTEGER (0..8191)
+ReducedScramblingCodeNumber ::= INTEGER (0..8191)
Reference-Beta-QPSK ::= SEQUENCE {
reference-Code-Rate INTEGER (0..10),
@@ -11880,14 +11880,14 @@ ReplacedPDSCH-CodeInfoList ::= SEQUENCE (SIZE (1..maxTFCI-2-Combs)) OF
ReplacedPDSCH-CodeInfo
RepPerLengthOffset-PICH ::= CHOICE {
- rpp4-2 INTEGER (0..3),
- rpp8-2 INTEGER (0..7),
+ rpp4-2 INTEGER (0..3),
+ rpp8-2 INTEGER (0..7),
rpp8-4 INTEGER (0..7),
- rpp16-2 INTEGER (0..15),
- rpp16-4 INTEGER (0..15),
- rpp32-2 INTEGER (0..31),
- rpp32-4 INTEGER (0..31),
- rpp64-2 INTEGER (0..63),
+ rpp16-2 INTEGER (0..15),
+ rpp16-4 INTEGER (0..15),
+ rpp32-2 INTEGER (0..31),
+ rpp32-4 INTEGER (0..31),
+ rpp64-2 INTEGER (0..63),
rpp64-4 INTEGER (0..63)
}
@@ -12505,24 +12505,24 @@ SF512-AndCodeNumber ::= CHOICE {
-- SF512-AndPilot encodes both "Spreading factor" and "Number of bits for Pilot bits"
SF512-AndPilot ::= CHOICE {
- sfd4 NULL,
- sfd8 NULL,
- sfd16 NULL,
+ sfd4 NULL,
+ sfd8 NULL,
+ sfd16 NULL,
sfd32 NULL,
- sfd64 NULL,
- sfd128 PilotBits128,
- sfd256 PilotBits256,
+ sfd64 NULL,
+ sfd128 PilotBits128,
+ sfd256 PilotBits256,
sfd512 NULL
}
SF512-AndPilot-r12 ::= CHOICE {
- sfd4 NULL,
- sfd8 NULL,
- sfd16 NULL,
+ sfd4 NULL,
+ sfd8 NULL,
+ sfd16 NULL,
sfd32 NULL,
- sfd64 NULL,
- sfd128 PilotBits128-r12,
- sfd256 PilotBits256-r12,
+ sfd64 NULL,
+ sfd128 PilotBits128-r12,
+ sfd256 PilotBits256-r12,
sfd512 NULL
}
@@ -12666,7 +12666,7 @@ TargetCellPreconfigInfo-r9 ::= SEQUENCE {
mimoParameters MIMO-Parameters-r9 OPTIONAL,
dl-SecondaryCellInfoFDD DL-SecondaryCellInfoFDD-r9 OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL
}
@@ -12686,7 +12686,7 @@ TargetCellPreconfigInfo-r10 ::= SEQUENCE {
dl-SecondaryCellInfoFDD DL-SecondaryCellInfoFDD-r10 OPTIONAL,
additionalDLSecCellInfoListFDD AdditionalDLSecCellInfoListFDD OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL
}
@@ -12710,7 +12710,7 @@ TargetCellPreconfigInfo-r11 ::= SEQUENCE {
additionalDLSecCellInfoListFDD AdditionalDLSecCellInfoListFDD-r11 OPTIONAL,
additionalDLSecCellInfoListFDD2 AdditionalDLSecCellInfoListFDD2 OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
ul-CLTD-InfoFDD UL-CLTD-InfoFDD OPTIONAL,
f-tpich-ReconfigurationInfo F-TPICH-ReconfigurationInfo OPTIONAL,
@@ -12736,7 +12736,7 @@ TargetCellPreconfigInfo-r12 ::= SEQUENCE {
additionalDLSecCellInfoListFDD AdditionalDLSecCellInfoListFDD-r11 OPTIONAL,
additionalDLSecCellInfoListFDD2 AdditionalDLSecCellInfoListFDD2 OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD-r12 OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
ul-CLTD-InfoFDD UL-CLTD-InfoFDD OPTIONAL,
f-tpich-ReconfigurationInfo F-TPICH-ReconfigurationInfo OPTIONAL,
@@ -12763,7 +12763,7 @@ TargetCellPreconfigInfo-r13 ::= SEQUENCE {
additionalDLSecCellInfoListFDD AdditionalDLSecCellInfoListFDD-r11 OPTIONAL,
additionalDLSecCellInfoListFDD2 AdditionalDLSecCellInfoListFDD2 OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD-r13 OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
ul-CLTD-InfoFDD UL-CLTD-InfoFDD OPTIONAL,
f-tpich-ReconfigurationInfo F-TPICH-ReconfigurationInfo OPTIONAL,
@@ -12827,7 +12827,7 @@ TDD-PRACH-CCode-LCR-r4 ::= ENUMERATED {
cc16-13, cc16-14, cc16-15, cc16-16 }
TDD-PRACH-CCodeList ::= CHOICE {
- sf8 SEQUENCE (SIZE (1..8)) OF
+ sf8 SEQUENCE (SIZE (1..8)) OF
TDD-PRACH-CCode8,
-- Channelisation codes cc16-9, cc16-10, cc16-11, cc16-12, cc16-13, cc16-14,
-- cc16-15 and cc16-16 shall not be used
@@ -12848,7 +12848,7 @@ TDD768-PRACH-CCode32 ::= ENUMERATED {
cc32-13, cc32-14, cc32-15, cc32-16 }
TDD768-PRACH-CCodeList ::= CHOICE {
- sf32 SEQUENCE (SIZE (1..16)) OF
+ sf32 SEQUENCE (SIZE (1..16)) OF
TDD768-PRACH-CCode32,
-- Channelisation codes cc32-17, cc32-18, cc32-19, cc32-20, cc32-21, cc32-22,
-- cc32-23, cc32-24, cc32-25, cc32-26, cc32-27, cc32-28, cc32-29, cc32-30, cc32-31
@@ -12863,7 +12863,7 @@ TFC-ControlDuration ::= ENUMERATED {
tfc-cd48, tfc-cd64, tfc-cd128,
tfc-cd192, tfc-cd256, tfc-cd512 }
-TFCI-Coding ::= ENUMERATED {
+TFCI-Coding ::= ENUMERATED {
tfci-bits-4, tfci-bits-8,
tfci-bits-16, tfci-bits-32 }
@@ -12876,7 +12876,7 @@ TGL ::= INTEGER (1..14)
TGMP ::= ENUMERATED {
tdd-Measurement, fdd-Measurement,
- gsm-CarrierRSSIMeasurement,
+ gsm-CarrierRSSIMeasurement,
gsm-initialBSICIdentification, gsmBSICReconfirmation,
multi-carrier }
@@ -13378,7 +13378,7 @@ UL-ChannelRequirementWithCPCH-SetID ::= CHOICE {
-- changed to keep it aligned with R99.
UL-ChannelRequirementWithCPCH-SetID-r4 ::= CHOICE {
ul-DPCH-Info UL-DPCH-Info-r4,
- -- dummy1 and dummy2 are not used in this version of the specification, they
+ -- dummy1 and dummy2 are not used in this version of the specification, they
-- should not be sent and if received the UE behaviour is not specified.
dummy1 CPCH-SetInfo,
dummy2 CPCH-SetID
@@ -13407,7 +13407,7 @@ UL-CLTD-InfoFDD ::= SEQUENCE {
}
UL-CompressedModeMethod ::= ENUMERATED {
- sf-2,
+ sf-2,
higherLayerScheduling }
UL-DL-Mode ::= CHOICE {
@@ -13639,8 +13639,8 @@ UL-DPCH-PowerControlInfo ::= CHOICE {
individuallySignalled SEQUENCE {
individualTS-InterferenceList IndividualTS-InterferenceList,
dpch-ConstantValue ConstantValueTdd,
- primaryCCPCH-TX-Power PrimaryCCPCH-TX-Power
- }
+ primaryCCPCH-TX-Power PrimaryCCPCH-TX-Power
+ }
} OPTIONAL
}
}
@@ -14104,7 +14104,7 @@ UL-TS-ChannelisationCodeList-VHCR ::= SEQUENCE (SIZE (1..2)) OF
Uplink-DPCCH-Slot-Format-Information ::= ENUMERATED {
slot-format-1,
- -- dummy is not used in this version of
+ -- dummy is not used in this version of
-- specification, it should not be sent and if
-- received it should be ignored.
dummy,
@@ -14216,7 +14216,7 @@ UplinkTimeslotsCodes-LCR-r7 ::= SEQUENCE {
noMore NULL,
additionalTimeslots CHOICE {
consecutive SEQUENCE {
- -- the choice of 'consecutive' is not needed because there is only 1 option.
+ -- the choice of 'consecutive' is not needed because there is only 1 option.
numAdditionalTimeslots INTEGER (1..maxTS-LCR-1)
},
timeslotList SEQUENCE (SIZE (1..maxTS-LCR-1)) OF
@@ -14245,7 +14245,7 @@ AcquisitionSatInfo ::= SEQUENCE {
gps-BitNumber INTEGER (0..3),
codePhaseSearchWindow CodePhaseSearchWindow,
azimuthAndElevation AzimuthAndElevation OPTIONAL
-}
+}
AcquisitionSatInfo-va40ext ::= SEQUENCE {
azimuthAndElevation AzimuthAndElevation-va40ext OPTIONAL
@@ -14264,7 +14264,7 @@ AcquisitionSatInfo-r10 ::= SEQUENCE {
}
AcquisitionSatInfo-vc50ext ::= SEQUENCE {
extraDopplerInfoExtension ExtraDopplerInfoExtension OPTIONAL
-}
+}
AcquisitionSatInfo-r12 ::= SEQUENCE {
satID SatID,
@@ -14380,7 +14380,7 @@ AverageRLC-BufferPayload ::= ENUMERATED {
pla512k, pla1024k, spare12, spare11,
spare10, spare9, spare8, spare7, spare6,
spare5, spare4, spare3, spare2, spare1 }
-
+
AzimuthAndElevation ::= SEQUENCE {
-- Actual value azimuth = IE value * 11.25 + IE value of azimuthLSB * 0.703125 degrees
azimuth INTEGER (0..31),
@@ -14428,11 +14428,11 @@ BDS-IGPInfoList ::= SEQUENCE (SIZE (1..maxIGPInfo)) OF SEQUENCE {
DBDS-InfoList ::= SEQUENCE (SIZE (1..maxSgnType)) OF DBDS-Info
DBDS-Info ::= SEQUENCE {
- bds-SignalID GANSS-Signal-Id OPTIONAL,
+ bds-SignalID GANSS-Signal-Id OPTIONAL,
dbds-SignalInfoList DBDS-SignalInfoList
}
-DBDS-SignalInfoList ::= SEQUENCE (SIZE (1..maxGANSSSat)) OF
+DBDS-SignalInfoList ::= SEQUENCE (SIZE (1..maxGANSSSat)) OF
DBDS-SignalInfo
DBDS-SignalInfo ::= SEQUENCE {
@@ -14502,7 +14502,7 @@ CellInfo ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info,
@@ -14521,7 +14521,7 @@ CellInfo-r4 ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info-r4,
@@ -14545,7 +14545,7 @@ CellInfo-r9 ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info-r4,
@@ -14554,13 +14554,13 @@ CellInfo-r9 ::= SEQUENCE {
readSFN-Indicator BOOLEAN
}
},
- -- For 1.28 Mcps TDD, cellSelectionReselectionInfo is optional present when sent
+ -- For 1.28 Mcps TDD, cellSelectionReselectionInfo is optional present when sent
-- in Measurement Control.For FDD, this IE is not needed.
cellSelectionReselectionInfo CellSelectReselectInfoMC-RSCP OPTIONAL
}
CellInfoListToBeExcluded::= SEQUENCE (SIZE (1..maxExcludedDetectedSetCells )) OF
- PrimaryCPICH-Info
+ PrimaryCPICH-Info
CellInfoSI-RSCP ::= SEQUENCE {
cellIndividualOffset CellIndividualOffset DEFAULT 0,
@@ -14570,7 +14570,7 @@ CellInfoSI-RSCP ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info,
@@ -14600,7 +14600,7 @@ CellInfoSI-ECN0 ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info,
@@ -14630,7 +14630,7 @@ CellInfoSI-HCS-RSCP ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info,
@@ -14660,7 +14660,7 @@ CellInfoSI-HCS-ECN0 ::= SEQUENCE {
primaryCPICH-Info PrimaryCPICH-Info OPTIONAL,
primaryCPICH-TX-Power PrimaryCPICH-TX-Power OPTIONAL,
readSFN-Indicator BOOLEAN,
- tx-DiversityIndicator BOOLEAN
+ tx-DiversityIndicator BOOLEAN
},
tdd SEQUENCE {
primaryCCPCH-Info PrimaryCCPCH-Info,
@@ -14927,12 +14927,12 @@ CellSynchronisationInfo ::= SEQUENCE {
modeSpecificInfo CHOICE {
fdd SEQUENCE {
countC-SFN-Frame-difference CountC-SFN-Frame-difference OPTIONAL,
- tm INTEGER(0..38399)
+ tm INTEGER(0..38399)
},
tdd SEQUENCE {
countC-SFN-Frame-difference CountC-SFN-Frame-difference OPTIONAL
}
- }
+ }
}
CellToReport ::= SEQUENCE {
@@ -15178,7 +15178,7 @@ DopplerUncertaintyExt ::= ENUMERATED {
hz300, hz400, hz500, hz600, noInformation,
spare3, spare2, spare1 }
-EllipsoidPoint ::= SEQUENCE {
+EllipsoidPoint ::= SEQUENCE {
latitudeSign ENUMERATED { north, south },
latitude INTEGER (0..8388607),
longitude INTEGER (-8388608..8388607)
@@ -15294,7 +15294,7 @@ EUTRA-FrequencyAndPriorityInfo ::= SEQUENCE {
threshXhigh INTEGER (0..31),
-- Actual value = IE value * 2
threshXlow INTEGER (0..31),
- eutra-blackListedCellList EUTRA-BlacklistedCellPerFreqList OPTIONAL,
+ eutra-exclude-ListedCellList EUTRA-Exclude-listedCellPerFreqList OPTIONAL,
eutraDetection BOOLEAN
}
@@ -15330,7 +15330,7 @@ EUTRA-FrequencyAndPriorityInfoExtension-vb50ext ::= SEQUENCE {
qqualMinEUTRA INTEGER (-34..-3) OPTIONAL,
threshXhigh2 INTEGER (0..31) OPTIONAL,
threshXlow2 INTEGER (0..31) OPTIONAL,
- eutra-blackListedCellList EUTRA-BlacklistedCellPerFreqList OPTIONAL,
+ eutra-exclude-listedCellList EUTRA-Exclude-listedCellPerFreqList OPTIONAL,
eutraDetection BOOLEAN
}
@@ -15527,7 +15527,7 @@ EUTRA-FrequencyInfoList-r12 ::= SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
EUTRA-FrequencyInfo ::= SEQUENCE {
earfcn EARFCN,
measurementBandwidth EUTRA-MeasurementBandwidth OPTIONAL,
- eutra-blackListedCellList EUTRA-BlacklistedCellPerFreqList OPTIONAL
+ eutra-exclude-listedCellList EUTRA-Exclude-listedCellPerFreqList OPTIONAL
}
EUTRA-FrequencyInfo-r11 ::= SEQUENCE {
@@ -15536,7 +15536,7 @@ EUTRA-FrequencyInfo-r11 ::= SEQUENCE {
earfcn EARFCN,
earfcnExt EARFCNExtension OPTIONAL,
measurementBandwidth EUTRA-MeasurementBandwidth OPTIONAL,
- eutra-blackListedCellList EUTRA-BlacklistedCellPerFreqList OPTIONAL,
+ eutra-exclude-listedCellList EUTRA-Exclude-listedCellPerFreqList OPTIONAL,
widebandRSRQMeasurements ENUMERATED {true} OPTIONAL
}
@@ -15544,7 +15544,7 @@ EUTRA-FrequencyInfo-r12 ::= SEQUENCE {
earfcn EARFCNExtension2,
reducedMeasurementPerformance ENUMERATED {true} OPTIONAL,
measurementBandwidth EUTRA-MeasurementBandwidth OPTIONAL,
- eutra-blackListedCellList EUTRA-BlacklistedCellPerFreqList OPTIONAL,
+ eutra-exclude-listedCellList EUTRA-Exclude-listedCellPerFreqList OPTIONAL,
widebandRSRQMeasurements ENUMERATED {true} OPTIONAL
}
@@ -15552,8 +15552,8 @@ EUTRA-FrequencyRACHReportingInfo ::= SEQUENCE {
eutra-FrequencyListIndicator BIT STRING (SIZE (maxNumEUTRAFreqs)),
eutra-FrequencyRepQuantityRACH ENUMERATED { rsrp, rsrq },
eutra-FrequencyRACHReportingThreshold INTEGER (0..97),
- rachReportingPriority ENUMERATED { intraEUTRAInter, interIntraEUTRA,
- interEUTRAIntra, eUTRAIntraInter,
+ rachReportingPriority ENUMERATED { intraEUTRAInter, interIntraEUTRA,
+ interEUTRAIntra, eUTRAIntraInter,
eUTRAInterIntra, spare3,
spare2, spare1 } OPTIONAL
}
@@ -15853,7 +15853,7 @@ Event2f ::= SEQUENCE {
hysteresis HysteresisInterFreq,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-}
+}
Event2f-r6 ::= SEQUENCE {
usedFreqThreshold Threshold-r6,
@@ -15886,28 +15886,28 @@ Event3a ::= SEQUENCE {
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-}
+}
Event3b ::= SEQUENCE {
thresholdOtherSystem Threshold,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-
-}
+
+}
Event3c ::= SEQUENCE {
thresholdOtherSystem Threshold,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-}
+}
Event3d ::= SEQUENCE {
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-}
+}
Event3a-r12 ::= SEQUENCE {
thresholdOwnSystem Threshold,
@@ -15916,22 +15916,22 @@ Event3a-r12 ::= SEQUENCE {
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-}
+}
Event3b-r12 ::= SEQUENCE {
thresholdOtherSystem Threshold-r12,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-
-}
+
+}
Event3c-r12 ::= SEQUENCE {
thresholdOtherSystem Threshold-r12,
hysteresis Hysteresis,
timeToTrigger TimeToTrigger,
reportingCellStatus ReportingCellStatus OPTIONAL
-}
+}
EventIDInterFreq ::= ENUMERATED {
e2a, e2b, e2c, e2d, e2e, e2f, e2g, spare1 }
@@ -16016,8 +16016,8 @@ FACH-MeasurementOccasionInfo-LCR-r4-ext ::= SEQUENCE {
}
FilterCoefficient ::= ENUMERATED {
- fc0, fc1, fc2, fc3, fc4, fc5,
- fc6, fc7, fc8, fc9, fc11, fc13,
+ fc0, fc1, fc2, fc3, fc4, fc5,
+ fc6, fc7, fc8, fc9, fc11, fc13,
fc15, fc17, fc19, spare1 }
FilteredUEPowerHeadroomReportInfo ::= SEQUENCE {
@@ -16152,7 +16152,7 @@ GANSSGenericData-va40ext ::= SEQUENCE {
GANSSGenericData-vc50ext ::= SEQUENCE {
uePositioningDBDSCorrections UE-Positioning-DBDSCorrections OPTIONAL,
uePositioningBDSIonoGridModel UE-Positioning-BDS-IonoGridModel OPTIONAL,
- ue-positioning-GANSS-AddNavigationModels
+ ue-positioning-GANSS-AddNavigationModels
UE-Positioning-GANSS-AddNavigationModels-vc50ext
OPTIONAL, uePositioningGANSSReferenceMeasurementInfo
UE-Positioning-GANSS-ReferenceMeasurementInfo-vc50ext
@@ -16305,7 +16305,7 @@ GanssReqGenericData-v860ext ::= SEQUENCE {
GanssReqGenericData-vc50ext ::= SEQUENCE {
bdsIonoGridModelReq ENUMERATED { true } OPTIONAL,
- bdsCorrectionsReq DGANSS-Sig-Id-Req OPTIONAL
+ bdsCorrectionsReq DGANSS-Sig-Id-Req OPTIONAL
}
GanssRequestedGenericAssistanceDataList ::= SEQUENCE (SIZE (1..maxGANSS)) OF
@@ -16383,7 +16383,7 @@ GANSSTimeModelsList-r10 ::= SEQUENCE (SIZE (1..maxGANSS-1)) OF
GANSS-SAT-Info-Almanac-BDSkp ::= SEQUENCE {
svID INTEGER(0..63),
- bdsAlmToa BIT STRING (SIZE (8)),
+ bdsAlmToa BIT STRING (SIZE (8)),
bdsAlmSqrtA BIT STRING (SIZE (24)),
bdsAlmE BIT STRING (SIZE (17)),
bdsAlmW BIT STRING (SIZE (24)),
@@ -16519,7 +16519,7 @@ Ganss-Sat-Info-AddNav-r12 ::= SEQUENCE {
Ganss-Sat-Info-AddNav-vc50ext ::= SEQUENCE {
ganssClockModel UE-Positioning-GANSS-AddClockModels-vc50ext,
- ganssOrbitModel UE-Positioning-GANSS-AddOrbitModels-vc50ext
+ ganssOrbitModel UE-Positioning-GANSS-AddOrbitModels-vc50ext
}
Ganss-Sat-Info-Nav ::= SEQUENCE {
@@ -16611,7 +16611,7 @@ GSM-MeasuredResults ::= SEQUENCE {
}
GSM-MeasuredResultsList ::= SEQUENCE (SIZE (1..maxReportedGSMCells)) OF
- GSM-MeasuredResults
+ GSM-MeasuredResults
GPS-TOW-1msec ::= INTEGER (0..604799999)
@@ -16919,7 +16919,7 @@ Inter-FreqEventCriteriaList-v590ext ::= SEQUENCE (SIZE (1..maxMeasEvent)) OF
--The order of the list corresponds to the order of relevant events in Intra-FreqEventCriteriaList
--i.e. the first element of the list corresponds to the first occurance of event 1e, 1f, 1h, 1i,
---the second element of the list corresponds to the second occurance of event 1e, 1f, 1h, 1i
+--the second element of the list corresponds to the second occurance of event 1e, 1f, 1h, 1i
Intra-FreqEventCriteriaList-v590ext ::= SEQUENCE (SIZE (1..maxMeasEvent)) OF
DeltaRSCP
@@ -17049,10 +17049,10 @@ InterFreqRACHReportingInfo ::= SEQUENCE {
maxReportedCellsOnRACHinterFreq MaxReportedCellsOnRACHinterFreq
}
-InterFreqBlacklistedCellsList-r12 ::= SEQUENCE (SIZE (1..maxFreq)) OF
- InterFreqBlacklistedCells-r12
+InterFreqExclude-listedCellsList-r12 ::= SEQUENCE (SIZE (1..maxFreq)) OF
+ InterFreqExclude-listedCells-r12
-InterFreqBlacklistedCells-r12 ::= SEQUENCE {
+InterFreqExclude-listedCells-r12 ::= SEQUENCE {
frequencyInfo FrequencyInfo,
excludedCellInfoList CellInfoListToBeExcluded
}
@@ -17132,7 +17132,7 @@ InterFreqReportingCriteria-r11 ::= SEQUENCE {
InterFreqReportingCriteria-r12 ::= SEQUENCE {
interFreqEventList InterFreqEventList-r12 OPTIONAL,
- interFreqBlacklistedCellsList InterFreqBlacklistedCellsList-r12 OPTIONAL
+ interFreqExclude-listedCellsList InterFreqExclude-listedCellsList-r12 OPTIONAL
}
InterFreqReportingQuantity ::= SEQUENCE {
@@ -17351,7 +17351,7 @@ InterRATMeasQuantity ::= SEQUENCE {
softSlope INTEGER (0..63) OPTIONAL,
addIntercept INTEGER (0..63) OPTIONAL
}
- }
+ }
}
InterRATMeasQuantity-r8 ::= SEQUENCE {
@@ -17372,7 +17372,7 @@ InterRATMeasQuantity-r8 ::= SEQUENCE {
measurementQuantity MeasurementQuantityEUTRA,
filterCoefficient FilterCoefficient DEFAULT fc0
}
- }
+ }
}
InterRATMeasuredResults ::= CHOICE {
@@ -17461,13 +17461,13 @@ InterRATReportCriteria ::= CHOICE {
interRATReportingCriteria InterRATReportingCriteria,
periodicalReportingCriteria PeriodicalWithReportingCellStatus,
noReporting ReportingCellStatusOpt
-}
+}
InterRATReportCriteria-r12 ::= CHOICE {
interRATReportingCriteria InterRATReportingCriteria-r12,
periodicalReportingCriteria PeriodicalWithReportingCellStatus,
noReporting ReportingCellStatusOpt
-}
+}
InterRATReportingCriteria ::= SEQUENCE {
interRATEventList InterRATEventList OPTIONAL
@@ -17497,7 +17497,7 @@ InterRATReportingQuantity-r8 ::= SEQUENCE {
gsm-Carrier-RSSI BOOLEAN
},
eutra SEQUENCE {
- reportingQuantity ENUMERATED { measurementQuantity,
+ reportingQuantity ENUMERATED { measurementQuantity,
both }
}
}
@@ -17758,7 +17758,7 @@ IntraFreqMeasQuantity ::= SEQUENCE {
}
}
--- If IntraFreqMeasQuantity-FDD is used in InterRATMeasQuantity, then only
+-- If IntraFreqMeasQuantity-FDD is used in InterRATMeasQuantity, then only
-- cpich-Ec-N0 and cpich-RSCP are allowed.
-- dummy is not used in this version of the specification, it should
-- not be sent and if received the UE behaviour is not specified.
@@ -17961,7 +17961,7 @@ IntraFreqReportingQuantityForRACH-vc50ext ::= SEQUENCE {
}
IntraFreqRepQuantityRACH-FDD ::= ENUMERATED {
- cpich-EcN0, cpich-RSCP,
+ cpich-EcN0, cpich-RSCP,
pathloss, noReport }
IntraFreqRepQuantityRACH-TDD ::= ENUMERATED {
@@ -18175,7 +18175,7 @@ ConnectionEstablishmentFailureReport ::= SEQUENCE {
modeSpecificInfo CHOICE {
fdd SEQUENCE {
loggedConnectionEstablishmentFailureInfo
- LoggedConnectionEstablishmentFailureInfo-FDD
+ LoggedConnectionEstablishmentFailureInfo-FDD
},
tdd SEQUENCE {
loggedConnectionEstablishmentFailureInfo
@@ -18189,7 +18189,7 @@ ConnectionEstablishmentFailureReport-r11 ::= SEQUENCE {
modeSpecificInfo CHOICE {
fdd SEQUENCE {
loggedConnectionEstablishmentFailureInfo
- LoggedConnectionEstablishmentFailureInfo-FDD-r11
+ LoggedConnectionEstablishmentFailureInfo-FDD-r11
},
tdd SEQUENCE {
loggedConnectionEstablishmentFailureInfo
@@ -18202,7 +18202,7 @@ ConnectionEstablishmentFailureReport-vc50ext ::= SEQUENCE {
modeSpecificInfo CHOICE {
fdd SEQUENCE {
loggedConnectionEstablishmentFailureInfo
- LoggedConnectionEstablishmentFailureInfo-FDD-vc50ext
+ LoggedConnectionEstablishmentFailureInfo-FDD-vc50ext
},
tdd SEQUENCE {
loggedConnectionEstablishmentFailureInfo
@@ -18230,7 +18230,7 @@ LoggedGSMCellInfo ::= SEQUENCE {
gsmCellIdentity BIT STRING (SIZE (16)),
bcch-ARFCN BCCH-ARFCN,
bandIndicator Frequency-Band,
- bsic BSIC
+ bsic BSIC
}
LoggedMeasurementsConfigurationInfo ::= SEQUENCE {
@@ -18272,7 +18272,7 @@ LoggedMeasInterfreqList-FDD ::= SEQUENCE (SIZE (1..maxNumFDDFreqs)) OF
LoggedMeasInterfreqInfo-FDD ::= SEQUENCE {
frequencyInfo FrequencyInfo,
- loggedMeasInterfreqNeighbourList SEQUENCE (SIZE (1..maxnumLoggedMeas)) OF
+ loggedMeasInterfreqNeighbourList SEQUENCE (SIZE (1..maxnumLoggedMeas)) OF
LoggedMeasNeighbourInfo-FDD
}
@@ -18299,7 +18299,7 @@ LoggedMeasInterRATNeighbourMeas-r11 ::= SEQUENCE {
loggedMeasGSMNeighbourCellsList LoggedMeasGSMNeighbourCellsList OPTIONAL
}
-LoggedMeasIntrafreqNeighbourList-FDD ::= SEQUENCE (SIZE (1..maxnumLoggedMeas)) OF
+LoggedMeasIntrafreqNeighbourList-FDD ::= SEQUENCE (SIZE (1..maxnumLoggedMeas)) OF
LoggedMeasNeighbourInfo-FDD
LoggedMeasNeighbourInfo-FDD ::= SEQUENCE {
@@ -18316,7 +18316,7 @@ LoggedMeasNeighbourMeas-TDD128 ::= SEQUENCE {
primaryCCPCH-RSCP PrimaryCCPCH-RSCP
}
-LoggedMeasGSMNeighbourCellsList ::= SEQUENCE (SIZE (1..maxnumLoggedMeas)) OF
+LoggedMeasGSMNeighbourCellsList ::= SEQUENCE (SIZE (1..maxnumLoggedMeas)) OF
LoggedMeasGSMNeighbourCellsinfo
LoggedMeasGSMNeighbourCellsinfo ::= SEQUENCE {
@@ -18326,7 +18326,7 @@ LoggedMeasGSMNeighbourCellsinfo ::= SEQUENCE {
gsm-CarrierRSSI GSM-CarrierRSSI
}
-LoggedMeasEUTRAFreqList ::= SEQUENCE (SIZE (1..maxNumEUTRAFreqs))OF
+LoggedMeasEUTRAFreqList ::= SEQUENCE (SIZE (1..maxNumEUTRAFreqs))OF
LoggedMeasEUTRAFreqInfo
LoggedMeasEUTRAFreqList-vb50ext ::= SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
@@ -18340,7 +18340,7 @@ LoggedMeasEUTRAFreqList-vc50ext ::= SEQUENCE (SIZE (1..maxNumEUTRAFreqs)) OF
LoggedMeasEUTRAFreqInfo ::= SEQUENCE {
earfcn EARFCN,
- loggedMeasEUTRAFreqNeighbourInfoList SEQUENCE (SIZE (1.. maxnumLoggedMeas)) OF
+ loggedMeasEUTRAFreqNeighbourInfoList SEQUENCE (SIZE (1.. maxnumLoggedMeas)) OF
LoggedMeasEUTRAFreqNeighbourInfo
}
@@ -18350,20 +18350,20 @@ LoggedMeasEUTRAFreqInfo-vb50ext ::= SEQUENCE {
LoggedMeasEUTRAFreqInfo-r11 ::= SEQUENCE {
earfcn EARFCNRange,
- loggedMeasEUTRAFreqNeighbourInfoList SEQUENCE (SIZE (1.. maxnumLoggedMeas)) OF
+ loggedMeasEUTRAFreqNeighbourInfoList SEQUENCE (SIZE (1.. maxnumLoggedMeas)) OF
LoggedMeasEUTRAFreqNeighbourInfo
}
LoggedMeasEUTRAFreqInfo-vc50ext ::= SEQUENCE {
rSRQType RsrqType OPTIONAL,
- loggedMeasEUTRAFreqNeighbourInfoList SEQUENCE (SIZE (1.. maxnumLoggedMeas)) OF
+ loggedMeasEUTRAFreqNeighbourInfoList SEQUENCE (SIZE (1.. maxnumLoggedMeas)) OF
LoggedMeasEUTRAFreqNeighbourInfo-vc50ext
}
LoggedMeasEUTRAFreqNeighbourInfo ::= SEQUENCE {
physicalCellIdentity EUTRA-PhysicalCellIdentity,
rSRP INTEGER (0..97) ,
- rSRQ INTEGER (0..33)
+ rSRQ INTEGER (0..33)
}
LoggedMeasEUTRAFreqNeighbourInfo-vc50ext ::= SEQUENCE {
@@ -18616,10 +18616,10 @@ MeasuredResults-ve30ext ::= CHOICE {
}
-MeasuredResultsList-v920ext ::= SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
+MeasuredResultsList-v920ext ::= SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
MeasuredResults-v920ext
-MeasuredResultsList-vc50ext ::= SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
+MeasuredResultsList-vc50ext ::= SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
MeasuredResults-vc50ext
MeasuredResultsList-vd20ext ::= SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
@@ -18681,7 +18681,7 @@ MeasuredResultsOnRACH ::= SEQUENCE {
cpich-Ec-N0 CPICH-Ec-N0,
cpich-RSCP CPICH-RSCP,
pathloss Pathloss,
- cpich-Ec-N0-RSCP CPICH-Ec-N0-RSCP
+ cpich-Ec-N0-RSCP CPICH-Ec-N0-RSCP
}
},
tdd SEQUENCE {
@@ -18710,7 +18710,7 @@ MeasuredResultsOnRACHFDD-r11 ::= SEQUENCE {
cpich-Ec-N0 CPICH-Ec-N0,
cpich-RSCP CPICH-RSCP,
pathloss Pathloss,
- cpich-Ec-N0-RSCP CPICH-Ec-N0-RSCP
+ cpich-Ec-N0-RSCP CPICH-Ec-N0-RSCP
}
},
measuredResultsUsedFreq MonitoredCellRACH-ListFDD-r11 OPTIONAL,
@@ -19220,7 +19220,7 @@ MeasurementType-Relocation-r15 ::= CHOICE {
eutraMeasurementForCELLFACH EUTRA-MeasurementForCELLFACH-r12,
applicationLayerMeasurement NULL,
applicationLayerMeasurement-r15 NULL
-
+
}
MeasurementValidity ::= SEQUENCE {
@@ -19292,7 +19292,7 @@ MultipleEUTRAFrequencyInfoExtensionList ::= SEQUENCE (SIZE (1.. maxNumEUTRAFreqs
MultipleEUTRAFrequencyBandExtensionInfo
MultipleFrequencyBandIndicatorListFDD::= SEQUENCE (SIZE (1..maxMultipleFrequencyBandsFDD)) OF
- FrequencyBandsIndicatorFDD
+ FrequencyBandsIndicatorFDD
MultipleFrequencyBandInfo ::= SEQUENCE {
multipleFrequencyBandIndicatorListFDD MultipleFrequencyBandIndicatorListFDD OPTIONAL
@@ -19459,7 +19459,7 @@ Neighbour ::= SEQUENCE {
tdd SEQUENCE {
neighbourAndChannelIdentity CellAndChannelIdentity OPTIONAL
}
- },
+ },
neighbourQuality NeighbourQuality,
sfn-SFN-ObsTimeDifference2 SFN-SFN-ObsTimeDifference2}
@@ -19545,7 +19545,7 @@ NewInterFreqCell-r10 ::= SEQUENCE {
tdd128 SEQUENCE {
intraSecondaryFreqIndicator BOOLEAN,
sNPLMonitorSetIndicator-TDD128 BIT STRING (SIZE (5)) OPTIONAL
- }
+ }
}
}
@@ -19558,7 +19558,7 @@ NewInterFreqCell-r12 ::= SEQUENCE {
tdd128 SEQUENCE {
intraSecondaryFreqIndicator BOOLEAN,
sNPLMonitorSetIndicator-TDD128 BIT STRING (SIZE (5)) OPTIONAL
- }
+ }
}
}
@@ -19946,7 +19946,7 @@ ApplicationLayerMeasurementReporting ::= SEQUENCE {
ApplicationLayerMeasurementReporting-r15 ::= SEQUENCE {
containerForApplicationLayerMeasurementReporting OCTET STRING ( SIZE (1..8000)),
- serviceType ENUMERATED { qoe, qoemtsi }
+ serviceType ENUMERATED { qoe, qoemtsi }
}
ObservedTimeDifferenceToGSM ::= INTEGER (0..4095)
@@ -20238,11 +20238,11 @@ ReportingCellStatus ::= CHOICE{
withinMonitoredSetNonUsedFreq MaxNumberOfReportingCellsType1,
withinMonitoredAndOrVirtualActiveSetNonUsedFreq
MaxNumberOfReportingCellsType1,
- allVirtualActSetplusMonitoredSetNonUsedFreq
+ allVirtualActSetplusMonitoredSetNonUsedFreq
MaxNumberOfReportingCellsType3,
withinActSetOrVirtualActSet-InterRATcells
MaxNumberOfReportingCellsType2,
- withinActSetAndOrMonitoredUsedFreqOrVirtualActSetAndOrMonitoredNonUsedFreq
+ withinActSetAndOrMonitoredUsedFreqOrVirtualActSetAndOrMonitoredNonUsedFreq
MaxNumberOfReportingCellsType2
}
@@ -20261,13 +20261,13 @@ ReportingCellStatus-r10 ::= CHOICE{
withinMonitoredSetNonUsedFreq MaxNumberOfReportingCellsType1,
withinMonitoredAndOrVirtualActiveSetNonUsedFreq
MaxNumberOfReportingCellsType1,
- allVirtualActSetplusMonitoredSetNonUsedFreq
+ allVirtualActSetplusMonitoredSetNonUsedFreq
MaxNumberOfReportingCellsType3,
withinActSetOrVirtualActSet-InterRATcells
MaxNumberOfReportingCellsType2,
- withinActSetAndOrMonitoredUsedFreqOrVirtualActSetAndOrMonitoredNonUsedFreq
+ withinActSetAndOrMonitoredUsedFreqOrVirtualActSetAndOrMonitoredNonUsedFreq
MaxNumberOfReportingCellsType2,
- allVirtualActSetplusMonitoredSetplusDetectedSetNonUsedFreq
+ allVirtualActSetplusMonitoredSetplusDetectedSetNonUsedFreq
MaxNumberOfReportingCellsType3
}
@@ -20292,7 +20292,7 @@ ReportingInfoForCellDCH-LCR-r4 ::= SEQUENCE {
}
ReportingInterval ::= ENUMERATED {
- noPeriodicalreporting, ri0-25,
+ noPeriodicalreporting, ri0-25,
ri0-5, ri1, ri2, ri4, ri8, ri16 }
ReportingIntervalLong ::= ENUMERATED {
@@ -20344,7 +20344,7 @@ RsrqType ::= SEQUENCE{
allSymbols BOOLEAN,
wideBand BOOLEAN
}
-
+
SatData ::= SEQUENCE{
satID SatID,
@@ -20687,15 +20687,15 @@ TrafficVolumeReportingQuantity ::= SEQUENCE {
TrafficVolumeThreshold ::= ENUMERATED {
th8, th16, th32, th64, th128,
- th256, th512, th1024, th2k, th3k,
- th4k, th6k, th8k, th12k, th16k,
- th24k, th32k, th48k, th64k, th96k,
- th128k, th192k, th256k, th384k,
+ th256, th512, th1024, th2k, th3k,
+ th4k, th6k, th8k, th12k, th16k,
+ th24k, th32k, th48k, th64k, th96k,
+ th128k, th192k, th256k, th384k,
th512k, th768k }
TransChCriteria ::= SEQUENCE {
ul-transportChannelID UL-TrCH-Identity OPTIONAL,
- eventSpecificParameters SEQUENCE (SIZE (1..maxMeasParEvent)) OF
+ eventSpecificParameters SEQUENCE (SIZE (1..maxMeasParEvent)) OF
TrafficVolumeEventParam OPTIONAL
}
@@ -20779,7 +20779,7 @@ UE-6HI-Event ::= SEQUENCE {
UE-AutonomousUpdateMode ::= CHOICE {
dummy NULL,
onWithNoReporting NULL,
- dummy2 RL-InformationLists
+ dummy2 RL-InformationLists
}
UE-InternalEventParam ::= CHOICE {
@@ -21046,8 +21046,8 @@ UL-TrCH-Identity ::= CHOICE{
UE-Positioning-Accuracy ::= BIT STRING (SIZE (7))
UE-Positioning-DBDSCorrections ::= SEQUENCE {
- bds-RefTime INTEGER (0..119),
- bds-DBDS-InfoList DBDS-InfoList
+ bds-RefTime INTEGER (0..119),
+ bds-DBDS-InfoList DBDS-InfoList
}
UE-Positioning-CipherParameters ::= SEQUENCE {
@@ -21716,7 +21716,7 @@ UE-Positioning-GPS-AssistanceData-r10 ::= SEQUENCE {
UE-Positioning-GPS-AcquisitionAssistance-r10
OPTIONAL,
ue-positioning-GPS-Real-timeIntegrity BadSatList OPTIONAL
-}
+}
UE-Positioning-GPS-AssistanceData-vc50ext ::= SEQUENCE {
ue-positioning-GPS-AcquisitionAssistance
@@ -21895,7 +21895,7 @@ UE-Positioning-IPDL-Parameters-TDD-r4-ext ::= SEQUENCE {
UE-Positioning-MeasuredResults ::= SEQUENCE {
ue-positioning-OTDOA-Measurement UE-Positioning-OTDOA-Measurement OPTIONAL,
- -- Extended 'ue-positioning-PositionEstimateInfo' information may be provided using IE
+ -- Extended 'ue-positioning-PositionEstimateInfo' information may be provided using IE
-- 'UE-Positioning-PositionEstimateInfo-v770ext' in IE 'UE-Positioning-MeasuredResults-v770ext'.
ue-positioning-PositionEstimateInfo UE-Positioning-PositionEstimateInfo OPTIONAL,
ue-positioning-GPS-Measurement UE-Positioning-GPS-MeasurementResults OPTIONAL,
@@ -22062,7 +22062,7 @@ UE-Positioning-OTDOA-AssistanceData-r4ext ::= SEQUENCE {
ue-Positioning-IPDL-Parameters-TDD-r4-ext
UE-Positioning-IPDL-Parameters-TDD-r4-ext OPTIONAL,
-- These IPDL parameters shall be used for the neighbour cells in case of TDD instead of
- -- IPDL Parameters in IE UE-Positioning-OTDOA-NeighbourCellInfoList. The cells shall be
+ -- IPDL Parameters in IE UE-Positioning-OTDOA-NeighbourCellInfoList. The cells shall be
-- listed in the same order as in IE UE-Positioning-OTDOA-NeighbourCellInfoList
ue-Positioning-IPDL-Parameters-TDDList-r4-ext
UE-Positioning-IPDL-Parameters-TDDList-r4-ext OPTIONAL
@@ -22238,7 +22238,7 @@ UE-Positioning-OTDOA-Quality ::= SEQUENCE {
stdResolution BIT STRING (SIZE (2)),
numberOfOTDOA-Measurements BIT STRING (SIZE (3)),
stdOfOTDOA-Measurements BIT STRING (SIZE (5))
-}
+}
UE-Positioning-OTDOA-ReferenceCellInfo ::= SEQUENCE {
sfn INTEGER (0..4095) OPTIONAL,
@@ -22461,12 +22461,12 @@ UE-Positioning-ResponseTime ::= ENUMERATED {
s1, s2, s4, s8, s16,
s32, s64, s128 }
-UE-Positioning-AddPos-MeasuredResults ::= SEQUENCE (SIZE (1..maxAddPos)) OF
+UE-Positioning-AddPos-MeasuredResults ::= SEQUENCE (SIZE (1..maxAddPos)) OF
UE-Positioning-AddPos-MeasuredResults-element
UE-Positioning-AddPos-MeasuredResults-element ::=SEQUENCE {
timestamp UTCTime OPTIONAL,
- addPos-ID CHOICE {
+ addPos-ID CHOICE {
barometricPressure UE-Positioning-BarometricPressureMeasurement,
wlan UE-Positioning-WLANMeasurementList,
bt UE-Positioning-BTMeasurementList,
@@ -22482,7 +22482,7 @@ UE-Positioning-BarometricPressureMeasurement ::= SEQUENCE {
ubpMeasurement INTEGER (30000..115000)
}
-UE-Positioning-WLANMeasurementList ::= SEQUENCE (SIZE (1..maxWLANs))OF
+UE-Positioning-WLANMeasurementList ::= SEQUENCE (SIZE (1..maxWLANs))OF
UE-Positioning-WLANMeasurementList-element
UE-Positioning-WLANMeasurementList-element ::= SEQUENCE {
@@ -22499,7 +22499,7 @@ UE-Positioning-WLANMeasurementList-element ::= SEQUENCE {
wlanServingFlag BOOLEAN OPTIONAL
}
-UE-Positioning-BTMeasurementList ::= SEQUENCE (SIZE (1..maxBTs)) OF
+UE-Positioning-BTMeasurementList ::= SEQUENCE (SIZE (1..maxBTs)) OF
UE-Positioning-BTMeasurementList-element
UE-Positioning-BTMeasurementList-element ::= SEQUENCE {
@@ -22508,7 +22508,7 @@ UE-Positioning-BTMeasurementList-element ::= SEQUENCE {
btRSSI INTEGER(-127..128) OPTIONAL
}
-UE-Positioning-MBSMeasurementList ::= SEQUENCE (SIZE (1..maxBeacons)) OF
+UE-Positioning-MBSMeasurementList ::= SEQUENCE (SIZE (1..maxBeacons)) OF
UE-Positioning-MBSMeasurementList-element
UE-Positioning-MBSMeasurementList-element ::= SEQUENCE {
@@ -22618,7 +22618,7 @@ UTRAN-GPS-DriftRate ::= ENUMERATED {
utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50}
UTRAN-GPSReferenceTime ::= SEQUENCE {
- -- For utran-GPSTimingOfCell values above 2322431999999 are not
+ -- For utran-GPSTimingOfCell values above 2322431999999 are not
-- used in this version of the specification
-- Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part
utran-GPSTimingOfCell SEQUENCE {
@@ -22637,7 +22637,7 @@ UTRAN-GPSReferenceTime ::= SEQUENCE {
}
UTRAN-GPSReferenceTimeResult ::= SEQUENCE {
- -- For ue-GPSTimingOfCell values above 37158911999999 are not
+ -- For ue-GPSTimingOfCell values above 37158911999999 are not
-- used in this version of the specification
-- Actual value ue-GPSTimingOfCell = (ms-part * 4294967296) + ls-part
ue-GPSTimingOfCell SEQUENCE {
@@ -22674,8 +22674,8 @@ UTRA-PriorityInfoList-v920ext ::= SEQUENCE {
}
VarianceOfRLC-BufferPayload ::= ENUMERATED {
- plv0, plv4, plv8, plv16, plv32, plv64,
- plv128, plv256, plv512, plv1024,
+ plv0, plv4, plv8, plv16, plv32, plv64,
+ plv128, plv256, plv512, plv1024,
plv2k, plv4k, plv8k, plv16k, spare2, spare1 }
VelocityEstimate ::= CHOICE {
@@ -22711,7 +22711,7 @@ ACDC-ParametersForAll ::= SEQUENCE {
acdcApplicableForRoamer ENUMERATED { true } OPTIONAL
}
-ACDC-ParametersPerPLMN-List ::= SEQUENCE (SIZE (1..6)) OF
+ACDC-ParametersPerPLMN-List ::= SEQUENCE (SIZE (1..6)) OF
SEQUENCE {
plmnSpecificACDC-Parameters SpecificACDC-BarringInformation OPTIONAL,
acdcApplicableForRoamer ENUMERATED { true } OPTIONAL
@@ -22786,7 +22786,7 @@ DataVolumePerRB ::= SEQUENCE {
DataVolumePerRB-List ::= SEQUENCE (SIZE (1..maxRB)) OF DataVolumePerRB
DeferredMeasurementControlReadingSupport ::= SEQUENCE {
- -- If modeSpecificInfo is not present, deferred SIB11, SIB11bis and SIB12 reading
+ -- If modeSpecificInfo is not present, deferred SIB11, SIB11bis and SIB12 reading
-- with default measurement quantities applies
modeSpecificInfo CHOICE {
fdd SEQUENCE {
@@ -22807,12 +22807,12 @@ ETWS-Information ::= SEQUENCE {
-- This IE is not used in the specification.
ETWS-WarningSecurityInfo ::= OCTET STRING
-EUTRA-BlacklistedCell ::= SEQUENCE {
+EUTRA-Exclude-listedCell ::= SEQUENCE {
physicalCellIdentity EUTRA-PhysicalCellIdentity
}
-EUTRA-BlacklistedCellPerFreqList ::= SEQUENCE (SIZE (1..maxEUTRACellPerFreq)) OF
- EUTRA-BlacklistedCell
+EUTRA-Exclude-listedCellPerFreqList ::= SEQUENCE (SIZE (1..maxEUTRACellPerFreq)) OF
+ EUTRA-Exclude-listedCell
EUTRA-PhysicalCellIdentity ::= INTEGER (0..503)
@@ -22828,14 +22828,14 @@ EUTRA-TargetFreqInfoList-vb50ext ::= SEQUENCE (SIZE (1..maxEUTRATargetFreqs)) OF
EUTRA-TargetFreqInfo ::= SEQUENCE {
dlEUTRACarrierFreq EARFCN,
- eutraBlacklistedCellPerFreqList EUTRA-BlacklistedCellPerFreqList OPTIONAL
+ eutraExclude-listedCellPerFreqList EUTRA-Exclude-listedCellPerFreqList OPTIONAL
}
EUTRA-TargetFreqInfo-vb50ext ::= SEQUENCE {
earfcn EARFCNExtension OPTIONAL
}
---Actual value = 2^(IE value)
+--Actual value = 2^(IE value)
ExpirationTimeFactor ::= INTEGER (1..8)
ExpirationTimeFactor2 ::= INTEGER (0..15)
@@ -22848,7 +22848,7 @@ ExtGANSS-SchedulingInfo ::= SEQUENCE {
}
-- For each extended GANSS SIB type the value tag information is added at the end
-ExtGANSS-SIBTypeInfoSchedulingInfoList ::= SEQUENCE (SIZE (1..maxGANSS)) OF
+ExtGANSS-SIBTypeInfoSchedulingInfoList ::= SEQUENCE (SIZE (1..maxGANSS)) OF
ExtGANSS-SIBTypeInfoSchedulingInfo
ExtGANSS-SIBTypeInfoSchedulingInfo ::= SEQUENCE {
@@ -22912,11 +22912,11 @@ GSM-BA-Range-List ::= SEQUENCE (SIZE (1..maxNumGSMFreqRanges)) OF
GSM-BA-Range
--- This IE is formatted as 'TLV' and is coded in the same way as the Mobile Station Classmark 2
+-- This IE is formatted as 'TLV' and is coded in the same way as the Mobile Station Classmark 2
-- information element in [5]. The first octet is the Mobile station classmark 2 IEI and its value
--- shall be set to 33H. The second octet is the Length of mobile station classmark 2 and its value
--- shall be set to 3. The octet 3 contains the first octet of the value part of the Mobile Station
--- Classmark 2 information element, the octet 4 contains the second octet of the value part of the
+-- shall be set to 33H. The second octet is the Length of mobile station classmark 2 and its value
+-- shall be set to 3. The octet 3 contains the first octet of the value part of the Mobile Station
+-- Classmark 2 information element, the octet 4 contains the second octet of the value part of the
-- Mobile Station Classmark 2 information element and so on. For each of these octets, the first/
-- leftmost/ most significant bit of the octet contains b8 of the corresponding octet of the Mobile
-- Station Classmark 2.
@@ -22973,7 +22973,7 @@ InterRAT-ChangeFailureCause ::= CHOICE {
spare3 NULL,
spare2 NULL,
spare1 NULL
-}
+}
GERANIu-MessageList ::= SEQUENCE (SIZE (1..maxInterSysMessages)) OF
BIT STRING (SIZE (1..32768))
@@ -23032,7 +23032,7 @@ InterRAT-HO-FailureCause ::= CHOICE {
spare3 NULL,
spare2 NULL,
spare1 NULL
-}
+}
MasterInformationBlock ::= SEQUENCE {
mib-ValueTag MIB-ValueTag,
@@ -23264,7 +23264,7 @@ SIBSb-ReferenceList ::= SEQUENCE (SIZE (1..maxSIB)) OF
SIBSb-ReferenceList2 ::= SEQUENCE (SIZE (1..maxSIB)) OF
SchedulingInformationSIBSb2
-SIB-ReferenceListFACH ::= SEQUENCE (SIZE (1..maxSIB-FACH)) OF
+SIB-ReferenceListFACH ::= SEQUENCE (SIZE (1..maxSIB-FACH)) OF
SchedulingInformationSIB
SIB-Type ::= ENUMERATED {
@@ -23300,7 +23300,7 @@ SIB-Type ::= ENUMERATED {
schedulingBlock1,
schedulingBlock2,
systemInformationBlockType15-5,
- systemInformationBlockType5bis,
+ systemInformationBlockType5bis,
extensionType }
SIB-Type2 ::= ENUMERATED {
@@ -23310,7 +23310,7 @@ SIB-Type2 ::= ENUMERATED {
systemInformationBlockType3,
systemInformationBlockType4,
systemInformationBlockType5,
- systemInformationBlockType5bis,
+ systemInformationBlockType5bis,
systemInformationBlockType6,
systemInformationBlockType7,
systemInformationBlockType11,
@@ -23351,7 +23351,7 @@ SIB-Type2 ::= ENUMERATED {
spare20, spare19, spare18,
spare17, spare16, spare15, spare14, spare13, spare12,
spare11, spare10, spare9, spare8, spare7, spare6,
- spare5,
+ spare5,
spare4, spare3, spare2, spare1 }
SIB-TypeAndTag ::= CHOICE {
@@ -23370,7 +23370,7 @@ SIB-TypeAndTag ::= CHOICE {
sysInfoType11 CellValueTag,
sysInfoType12 CellValueTag,
sysInfoType13 CellValueTag,
- sysInfoType13-1 CellValueTag,
+ sysInfoType13-1 CellValueTag,
sysInfoType13-2 CellValueTag,
sysInfoType13-3 CellValueTag,
sysInfoType13-4 CellValueTag,
@@ -23404,7 +23404,7 @@ SIB-TypeAndTag2 ::= CHOICE {
sysInfoType11bis CellValueTag,
sysInfoType12 CellValueTag,
sysInfoType13 CellValueTag,
- sysInfoType13-1 CellValueTag,
+ sysInfoType13-1 CellValueTag,
sysInfoType13-2 CellValueTag,
sysInfoType13-3 CellValueTag,
sysInfoType13-4 CellValueTag,
@@ -23474,7 +23474,7 @@ SIBSb-TypeAndTag ::= CHOICE {
sysInfoType11 CellValueTag,
sysInfoType12 CellValueTag,
sysInfoType13 CellValueTag,
- sysInfoType13-1 CellValueTag,
+ sysInfoType13-1 CellValueTag,
sysInfoType13-2 CellValueTag,
sysInfoType13-3 CellValueTag,
sysInfoType13-4 CellValueTag,
@@ -23583,7 +23583,7 @@ SpecificACDC-BarringInformation ::= SEQUENCE (SIZE (1.. maxNumAcdcCategory)) OF
SysInfoType1 ::= SEQUENCE {
-- Core network IEs
- cn-CommonGSM-MAP-NAS-SysInfo NAS-SystemInformationGSM-MAP,
+ cn-CommonGSM-MAP-NAS-SysInfo NAS-SystemInformationGSM-MAP,
cn-DomainSysInfoList CN-DomainSysInfoList,
-- User equipment IEs
ue-ConnTimersAndConstants UE-ConnTimersAndConstants OPTIONAL,
@@ -23621,7 +23621,7 @@ SysInfoType3 ::= SEQUENCE {
cellSelectReselectInfo CellSelectReselectInfoSIB-3-4,
cellAccessRestriction CellAccessRestriction,
-- Extension mechanism for non- release99 information
- v4b0NonCriticalExtensions SEQUENCE {
+ v4b0NonCriticalExtensions SEQUENCE {
sysInfoType3-v4b0ext SysInfoType3-v4b0ext-IEs,
v590NonCriticalExtension SEQUENCE {
sysInfoType3-v590ext SysInfoType3-v590ext,
@@ -23712,7 +23712,7 @@ SysInfoType4 ::= SEQUENCE {
cellSelectReselectInfo CellSelectReselectInfoSIB-3-4,
cellAccessRestriction CellAccessRestriction,
-- Extension mechanism for non- release99 information
- v4b0NonCriticalExtensions SEQUENCE {
+ v4b0NonCriticalExtensions SEQUENCE {
sysInfoType4-v4b0ext SysInfoType4-v4b0ext-IEs,
v590NonCriticalExtension SEQUENCE {
sysInfoType4-v590ext SysInfoType4-v590ext,
@@ -23756,8 +23756,8 @@ SysInfoType5 ::= SEQUENCE {
tdd SEQUENCE {
-- If PDSCH/PUSCH is configured for 1.28Mcps or 7.68Mcps TDD, the following IEs should be absent
-- and the info included in the respective tdd128SpecificInfo or tdd768SpecificInfo instead.
- -- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should also be
- -- included.
+ -- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should also be
+ -- included.
pusch-SysInfoList-SFN PUSCH-SysInfoList-SFN OPTIONAL,
pdsch-SysInfoList-SFN PDSCH-SysInfoList-SFN OPTIONAL,
openLoopPowerControl-TDD OpenLoopPowerControl-TDD
@@ -23794,7 +23794,7 @@ SysInfoType5 ::= SEQUENCE {
sysInfoType5-v8d0ext
SysInfoType5-v8d0ext-IEs,
va40NonCriticalExtensions SEQUENCE {
- sysInfoType5-va40ext
+ sysInfoType5-va40ext
SysInfoType5-va40ext-IEs,
va80NonCriticalExtensions SEQUENCE {
sysInfoType5-va80ext SysInfoType5-va80ext-IEs,
@@ -23822,10 +23822,10 @@ SysInfoType5-v4b0ext-IEs ::= SEQUENCE {
-- IE up-IPDL-Parameter in up-OTDOA-AssistanceData.
openLoopPowerControl-IPDL-TDD OpenLoopPowerControl-IPDL-TDD-r4 OPTIONAL,
-- If SysInfoType5 is sent to describe a 1.28Mcps TDD cell, the IE PRACH-RACH-Info included in
--- PRACH-SystemInformationList shall be ignored, the IE PRACH-Partitioning and the
--- IE rach-TransportFormatSet shall be absent and the corresponding IE in the following
+-- PRACH-SystemInformationList shall be ignored, the IE PRACH-Partitioning and the
+-- IE rach-TransportFormatSet shall be absent and the corresponding IE in the following
-- PRACH-SystemInformationList-LCR-r4 shall be used
- prach-SystemInformationList-LCR-r4 PRACH-SystemInformationList-LCR-r4 OPTIONAL,
+ prach-SystemInformationList-LCR-r4 PRACH-SystemInformationList-LCR-r4 OPTIONAL,
tdd128SpecificInfo SEQUENCE {
pusch-SysInfoList-SFN PUSCH-SysInfoList-SFN-LCR-r4 OPTIONAL,
pdsch-SysInfoList-SFN PDSCH-SysInfoList-SFN-LCR-r4 OPTIONAL,
@@ -23883,7 +23883,7 @@ SysInfoType5-v770ext-IEs ::= SEQUENCE {
prach-SystemInformationList PRACH-SystemInformationList-LCR-v770ext OPTIONAL
}
} OPTIONAL,
- -- If SysInfoType5 is sent to configure a 7.68 Mcps TDD cell (in any mode) or a 3.84 Mcps TDD
+ -- If SysInfoType5 is sent to configure a 7.68 Mcps TDD cell (in any mode) or a 3.84 Mcps TDD
-- cell operating in MBSFN mode, IE SCCPCH-SystemInformationList-HCR-VHCR-r7 is used, otherwise
-- IE SCCPCH-SystemInformationList-r6 is used.
sccpch-SystemInformationList SCCPCH-SystemInformationList-HCR-VHCR-r7 OPTIONAL,
@@ -23980,7 +23980,7 @@ SysInfoType6 ::= SEQUENCE {
-- If PDSCH/PUSCH is configured for 7.68Mcps TDD, pusch-SysInfoList-SFN
-- and pdsch-SysInfoList-SFN should be absent and the info included in the
-- tdd768SpecificInfo instead.
- -- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should
+ -- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should
-- also be included.
pusch-SysInfoList-SFN PUSCH-SysInfoList-SFN OPTIONAL,
pdsch-SysInfoList-SFN PDSCH-SysInfoList-SFN OPTIONAL,
@@ -24009,7 +24009,7 @@ SysInfoType6 ::= SEQUENCE {
sysInfoType6-va40ext SysInfoType6-va40ext-IEs,
va80NonCriticalExtensions SEQUENCE {
sysInfoType6-va80ext SysInfoType6-va80ext-IEs,
- ve30NonCriticalExtensions SysInfoType6-NonCriticalExtensions-ve30-IEs OPTIONAL
+ ve30NonCriticalExtensions SysInfoType6-NonCriticalExtensions-ve30-IEs OPTIONAL
} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -24032,10 +24032,10 @@ SysInfoType6-v4b0ext-IEs ::= SEQUENCE {
-- openLoopPowerControl-IPDL-TDD is present only if IPDLs are applied for TDD
openLoopPowerControl-IPDL-TDD OpenLoopPowerControl-IPDL-TDD-r4 OPTIONAL,
-- If SysInfoType6 is sent to describe a 1.28Mcps TDD cell, the IE PRACH-RACH-Info included
- -- in PRACH-SystemInformationList shall be ignored, the IE PRACH-Partitioning and the
- -- IE rach-TransportFormatSet shall be absent and the corresponding IEs in the following
+ -- in PRACH-SystemInformationList shall be ignored, the IE PRACH-Partitioning and the
+ -- IE rach-TransportFormatSet shall be absent and the corresponding IEs in the following
-- PRACH-SystemInformationList-LCR-r4 shall be used
- prach-SystemInformationList-LCR-r4 PRACH-SystemInformationList-LCR-r4 OPTIONAL,
+ prach-SystemInformationList-LCR-r4 PRACH-SystemInformationList-LCR-r4 OPTIONAL,
tdd128SpecificInfo SEQUENCE {
pusch-SysInfoList-SFN PUSCH-SysInfoList-SFN-LCR-r4 OPTIONAL,
pdsch-SysInfoList-SFN PDSCH-SysInfoList-SFN-LCR-r4 OPTIONAL,
@@ -24228,7 +24228,7 @@ SysInfoType11-vc50ext-IEs ::= SEQUENCE {
measurementScalingFactor MeasurementScalingFactor OPTIONAL
}
-MeasurementScalingFactor ::= ENUMERATED {
+MeasurementScalingFactor ::= ENUMERATED {
sf-utra-cf1, sf-utra-cf2}
@@ -24362,7 +24362,7 @@ SysInfoType13 ::= SEQUENCE {
ue-IdleTimersAndConstants UE-IdleTimersAndConstants OPTIONAL,
capabilityUpdateRequirement CapabilityUpdateRequirement OPTIONAL,
-- Extension mechanism for non- release99 information
- v3a0NonCriticalExtensions SEQUENCE {
+ v3a0NonCriticalExtensions SEQUENCE {
sysInfoType13-v3a0ext SysInfoType13-v3a0ext-IEs,
v4b0NonCriticalExtensions SEQUENCE {
sysInfoType13-v4b0ext SysInfoType13-v4b0ext-IEs,
@@ -24431,10 +24431,10 @@ SysInfoType15 ::= SEQUENCE {
ue-positioning-GPS-ReferenceTime UE-Positioning-GPS-ReferenceTime,
ue-positioning-GPS-Real-timeIntegrity BadSatList OPTIONAL,
-- Extension mechanism for non- release99 information
- v4b0NonCriticalExtensions SEQUENCE {
+ v4b0NonCriticalExtensions SEQUENCE {
sysInfoType15-v4b0ext SysInfoType15-v4b0ext-IEs,
-- Extension mechanism for non- release4 information
- v770NonCriticalExtensions SEQUENCE {
+ v770NonCriticalExtensions SEQUENCE {
sysInfoType15-v770ext SysInfoType15-v770ext-IEs,
va40NonCriticalExtensions SEQUENCE {
sysInfoType15-va40ext SysInfoType15-va40ext-IEs,
@@ -24489,7 +24489,7 @@ SysInfoType15-1 ::= SEQUENCE {
-- DGPS corrections
ue-positioning-GPS-DGPS-Corrections UE-Positioning-GPS-DGPS-Corrections,
-- Extension mechanism for non- release99 information
- v920NonCriticalExtensions SEQUENCE {
+ v920NonCriticalExtensions SEQUENCE {
sysInfoType15-1-v920ext SysInfoType15-1-v920ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -24504,7 +24504,7 @@ SysInfoType15-1bis ::= SEQUENCE {
-- Measurement IEs
ue-positioning-GANSS-DGANSS-Corrections UE-Positioning-DGANSSCorrections,
-- Extension mechanism for non-release99 information
- v920NonCriticalExtensions SEQUENCE {
+ v920NonCriticalExtensions SEQUENCE {
sysInfoType15-1bis-v920ext SysInfoType15-1bis-v920ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -24512,7 +24512,7 @@ SysInfoType15-1bis ::= SEQUENCE {
SysInfoType15-1bis-v920ext-IEs ::= SEQUENCE {
-- Measurement IEs
- ue-positioning-GANSS-DGANSS-Corrections UE-Positioning-DGANSSCorrections-v920ext
+ ue-positioning-GANSS-DGANSS-Corrections UE-Positioning-DGANSSCorrections-v920ext
}
SysInfoType15-1ter ::= SEQUENCE {
@@ -24543,7 +24543,7 @@ SysInfoType15-2ter ::= SEQUENCE {
-- Measurement IEs
ue-positioning-GANSS-AddNavigationModels UE-Positioning-GANSS-AddNavigationModels,
-- Extension mechanism for non-release99 information
- vc50NonCriticalExtensions SEQUENCE {
+ vc50NonCriticalExtensions SEQUENCE {
sysInfoType15-2ter-vc50ext SysInfoType15-2ter-vc50ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -24662,7 +24662,7 @@ SysInfoType15-6 ::= SEQUENCE {
UE-Positioning-GANSS-ReferenceMeasurementInfo,
-- Extension mechanism for non-release99 information
va40NonCriticalExtensions SEQUENCE {
- sysInfoType15-6-va40ext SysInfoType15-6-va40ext-IEs,
+ sysInfoType15-6-va40ext SysInfoType15-6-va40ext-IEs,
vc50NonCriticalExtensions SEQUENCE {
sysInfoType15-6-vc50ext SysInfoType15-6-vc50ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -24671,12 +24671,12 @@ SysInfoType15-6 ::= SEQUENCE {
}
SysInfoType15-6-va40ext-IEs ::= SEQUENCE {
- ue-positioning-GANSS-ReferenceMeasurementInformation
+ ue-positioning-GANSS-ReferenceMeasurementInformation
UE-Positioning-GANSS-ReferenceMeasurementInfo-va40ext
}
SysInfoType15-6-vc50ext-IEs ::= SEQUENCE {
- ue-positioning-GANSS-ReferenceMeasurementInformation
+ ue-positioning-GANSS-ReferenceMeasurementInformation
UE-Positioning-GANSS-ReferenceMeasurementInfo-vc50ext
}
@@ -24721,7 +24721,7 @@ SysInfoType17 ::= SEQUENCE {
-- If PDSCH/PUSCH is configured for 1.28Mcps or 7.68Mcps TDD, pusch-SysInfoList and
-- pdsch-SysInfoList should be absent and the info included in the respective
-- tdd128SpecificInfo or tdd768SpecificInfo instead.
- -- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should also be
+ -- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should also be
-- included.
pusch-SysInfoList PUSCH-SysInfoList OPTIONAL,
pdsch-SysInfoList PDSCH-SysInfoList OPTIONAL,
@@ -24766,7 +24766,7 @@ SysInfoType18 ::= SEQUENCE {
v6b0NonCriticalExtensions SEQUENCE {
sysInfoType18-v6b0ext SysInfoType18-v6b0ext,
v860NonCriticalExtensions SEQUENCE {
- sysInfoType18-v860ext SysInfoType18-v860ext,
+ sysInfoType18-v860ext SysInfoType18-v860ext,
vc50NonCriticalExtensions SEQUENCE {
sysInfoType18-vc50ext SysInfoType18-vc50ext,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -24851,13 +24851,13 @@ SysInfoType19-vb80ext ::= SEQUENCE {
SysInfoType19-vc50ext ::= SEQUENCE {
eutra-FrequencyRACHReportingInfo-vc50ext EUTRA-FrequencyRACHReportingInfo-vc50ext OPTIONAL,
eutra-FrequencyAndPriorityInfoList-vc50ext EUTRA-FrequencyAndPriorityInfoList-vc50ext OPTIONAL,
- eutra-FrequencyAndPriorityInfoExtensionList-vc50ext
+ eutra-FrequencyAndPriorityInfoExtensionList-vc50ext
EUTRA-FrequencyAndPriorityInfoExtensionList-vc50ext OPTIONAL
}
SysInfoType19-vd20ext ::= SEQUENCE {
eutra-FrequencyAndPriorityInfoList-vd20ext EUTRA-FrequencyAndPriorityInfoList-vd20ext OPTIONAL,
- eutra-FrequencyAndPriorityInfoExtensionList-vd20ext
+ eutra-FrequencyAndPriorityInfoExtensionList-vd20ext
EUTRA-FrequencyAndPriorityInfoExtensionList-vd20ext OPTIONAL
}
@@ -24874,14 +24874,14 @@ SysInfoType21 ::= SEQUENCE {
SysInfoType22 ::= SEQUENCE {
-- In the Tabular there are separate definitions for prach-PreambleForEnhancedUplinkListType1Ext
-- and prach-PreambleForEnhancedUplinkListType2Ext/prach-PreambleForEnhancedUplinkListType3Ext even
--- though the contents are the same. The only difference is in how the IE “Weight” is used in
+-- though the contents are the same. The only difference is in how the IE “Weight” is used in
-- calculating the weight for each signalled PRACH Control Parameters.
--- To simplify the ASN.1, a single definition is used here for all three cases.
+-- To simplify the ASN.1, a single definition is used here for all three cases.
prach-PreambleForEnhancedUplinkListType1Ext
PRACH-PreambleForEnhancedUplinkExtList OPTIONAL,
- prach-PreambleForEnhancedUplinkListType2Ext
+ prach-PreambleForEnhancedUplinkListType2Ext
PRACH-PreambleForEnhancedUplinkExtList OPTIONAL,
- prach-PreambleForEnhancedUplinkListType3Ext
+ prach-PreambleForEnhancedUplinkListType3Ext
PRACH-PreambleForEnhancedUplinkExtList OPTIONAL,
concurrent-Deployment-2ms-10ms-TTI Concurrent-Deployment-2ms-10ms-TTI OPTIONAL,
nodeB-Trigger-HS-DPCCH-Transmission NodeB-Trigger-HS-DPCCH-Transmission OPTIONAL,
@@ -24927,7 +24927,7 @@ SysInfoTypeSB1 ::= SEQUENCE {
v860NonCriticalExtensions SEQUENCE {
sysInfoTypeSB1-v860ext SysInfoTypeSB1-v860ext,
vc50NonCriticalExtensions SEQUENCE {
- sysInfoTypeSB1-vc50ext SysInfoTypeSB1-vc50ext,
+ sysInfoTypeSB1-vc50ext SysInfoTypeSB1-vc50ext,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -24958,7 +24958,7 @@ SysInfoTypeSB2 ::= SEQUENCE {
v860NonCriticalExtensions SEQUENCE {
sysInfoTypeSB2-v860ext SysInfoTypeSB2-v860ext,
vc50NonCriticalExtensions SEQUENCE {
- sysInfoTypeSB2-vc50ext SysInfoTypeSB2-vc50ext,
+ sysInfoTypeSB2-vc50ext SysInfoTypeSB2-vc50ext,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -24996,7 +24996,7 @@ TxFailParams ::= SEQUENCE {
modeSpecificInfo CHOICE {
fdd SEQUENCE {
connEstFailCount ENUMERATED {n1, n2, n3, n4},
- offsetValidity ENUMERATED {s30, s60, s120, s240,
+ offsetValidity ENUMERATED {s30, s60, s120, s240,
s300, s420, s600, s900},
connEstFailTempQoffset INTEGER (0..15) OPTIONAL
},
@@ -25273,8 +25273,8 @@ MBMS-ModifiedService-LCR-v7c0ext ::= SEQUENCE {
rbReleaseCause MBMS-PTM-RBReleaseCause-LCR-r7 OPTIONAL
}
--- IE 'MBMS-ModifiedServiceList-v770ext' contains a list of extension data
--- associated with the MBMS transmission identities at the corresponding
+-- IE 'MBMS-ModifiedServiceList-v770ext' contains a list of extension data
+-- associated with the MBMS transmission identities at the corresponding
-- positions in IE 'MBMS-ModifedServiceList-r6'
MBMS-ModifiedServiceList-v770ext ::= SEQUENCE (SIZE (1..maxMBMSservModif)) OF
MBMS-ModifiedService-v770ext
@@ -25578,8 +25578,8 @@ MBMS-UnmodifiedService-v770ext ::= SEQUENCE {
mbsfnClusterFrequency MBSFN-ClusterFrequency-r7 OPTIONAL
}
--- IE 'MBMS-UnmodifiedServiceList-v770ext' contains a list of extension data
--- associated with the MBMS transmission identities at the corresponding
+-- IE 'MBMS-UnmodifiedServiceList-v770ext' contains a list of extension data
+-- associated with the MBMS transmission identities at the corresponding
-- positions in IE 'MBMS-UnmodifiedServiceList-r6'
MBMS-UnmodifiedServiceList-v770ext ::= SEQUENCE (SIZE (1..maxMBMSservUnmodif)) OF
MBMS-UnmodifiedService-v770ext
@@ -25654,14 +25654,14 @@ MBSFN-TDM-Info ::= SEQUENCE {
MBSFN-TDM-Info-List ::= SEQUENCE (SIZE (1..maxMBMSservUnmodif)) OF
MBSFN-TDM-Info
-
+
-- ***************************************************
--
-- WLAN Offload INFORMATION ELEMENTS (10.3.9b)
--
-- ***************************************************
-WLANOffloadConfig ::= SEQUENCE {
+WLANOffloadConfig ::= SEQUENCE {
threshServingRSCP WLANThreshServingRSCP OPTIONAL,
threshServingECNO WLANThreshServingECNO OPTIONAL,
threshChannelUtilization WLANThreshChannelUtilization OPTIONAL,
diff --git a/epan/dissectors/asn1/rrc/Internode-definitions.asn b/epan/dissectors/asn1/rrc/Internode-definitions.asn
index 8394dc71c0..95f96cdb71 100644
--- a/epan/dissectors/asn1/rrc/Internode-definitions.asn
+++ b/epan/dissectors/asn1/rrc/Internode-definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 25.331 V16.1.0 (2020-09)
+-- 3GPP TS 25.331 V17.1.0 (2022-06)
--
-- 11.5 RRC information between network nodes
--
@@ -255,7 +255,7 @@ TargetRNC-ToSourceRNC-Container ::= CHOICE {
InterRATHandoverInfoWithInterRATCapabilities-r3 ::= CHOICE {
r3 SEQUENCE {
- -- IE InterRATHandoverInfoWithInterRATCapabilities-r3-IEs also
+ -- IE InterRATHandoverInfoWithInterRATCapabilities-r3-IEs also
-- includes non critical extensions
interRATHandoverInfo-r3 InterRATHandoverInfoWithInterRATCapabilities-r3-IEs,
v390NonCriticalExtensions SEQUENCE {
@@ -285,7 +285,7 @@ InterRATHandoverInfoWithInterRATCapabilities-r3-IEs ::= SEQUENCE {
-- but has been chosen to simplify the handling of the information in the BSC
-- Other IEs
ue-RATSpecificCapability InterRAT-UE-RadioAccessCapabilityList OPTIONAL,
- -- interRATHandoverInfo, Octet string is used to obtain 8 bit length field prior to
+ -- interRATHandoverInfo, Octet string is used to obtain 8 bit length field prior to
-- actual information. This makes it possible for BSS to transparently handle information
-- received via GSM air interface even when it includes non critical extensions.
-- The octet string shall include the InterRATHandoverInfo information
@@ -538,10 +538,10 @@ SRNC-RelocationInfo-r3 ::= CHOICE {
v8d0NonCriticalExtensions SEQUENCE {
sRNC-RelocationInfo-v8d0ext SRNC-RelocationInfo-v8d0ext-IEs,
v970NonCriticalExtensions SEQUENCE {
- sRNC-RelocationInfo-v970ext
+ sRNC-RelocationInfo-v970ext
SRNC-RelocationInfo-v970ext-IEs,
v9c0NonCriticalExtensions SEQUENCE {
- sRNC-RelocationInfo-v9c0ext
+ sRNC-RelocationInfo-v9c0ext
SRNC-RelocationInfo-v9c0ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -553,10 +553,10 @@ SRNC-RelocationInfo-r3 ::= CHOICE {
sRNC-RelocationInfo-r10 SRNC-RelocationInfo-r10-IEs,
sRNC-RelocationInfo-r10-add-ext BIT STRING OPTIONAL,
v9c0NonCriticalExtensions SEQUENCE {
- sRNC-RelocationInfo-v9c0ext
+ sRNC-RelocationInfo-v9c0ext
SRNC-RelocationInfo-v9c0ext-IEs,
vab0NonCriticalExtensions SEQUENCE {
- sRNC-RelocationInfo-vab0ext
+ sRNC-RelocationInfo-vab0ext
SRNC-RelocationInfo-vab0ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -655,7 +655,7 @@ SRNC-RelocationInfo-r3-IEs ::= SEQUENCE {
SRNC-RelocationInfo-v380ext-IEs ::= SEQUENCE {
-- Ciphering related information IEs
- -- In the SRNC-RelocationInfo-r3-IEs, the IE 'cn-DomainIdentity' is used to represent the
+ -- In the SRNC-RelocationInfo-r3-IEs, the IE 'cn-DomainIdentity' is used to represent the
-- IE 'Latest configured CN domain' in the tabular.
cn-DomainIdentity CN-DomainIdentity,
cipheringStatusList CipheringStatusList
@@ -680,9 +680,9 @@ SRNC-RelocationInfo-v3a0ext-IEs ::= SEQUENCE {
SRNC-RelocationInfo-v3b0ext-IEs ::= SEQUENCE {
-- cn-domain identity for IE startValueForCiphering-v3a0ext included in previous extension
cn-DomainIdentity CN-DomainIdentity,
- -- the IE startValueForCiphering-v3b0ext contains the start values for each CN Domain. The
+ -- the IE startValueForCiphering-v3b0ext contains the start values for each CN Domain. The
-- value of start indicated by the IE startValueForCiphering-v3a0ext should be set to the
- -- same value as the start-Value for the corresponding cn-DomainIdentity in the IE
+ -- same value as the start-Value for the corresponding cn-DomainIdentity in the IE
-- startValueForCiphering-v3b0ext
startValueForCiphering-v3b0ext STARTList2 OPTIONAL
}
@@ -930,10 +930,10 @@ SRNC-RelocationInfo-v690ext-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -984,10 +984,10 @@ SRNC-RelocationInfo-r6-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1076,10 +1076,10 @@ SRNC-RelocationInfo-r7-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1178,10 +1178,10 @@ SRNC-RelocationInfo-r8-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1274,10 +1274,10 @@ SRNC-RelocationInfo-r9-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1367,10 +1367,10 @@ SRNC-RelocationInfo-r10-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1418,7 +1418,7 @@ SRNC-RelocationInfo-r10-IEs ::= SEQUENCE {
}
SRNC-RelocationInfo-vab0ext-IEs ::= SRNC-RelocationInfo-v970ext-IEs
-
+
SRNC-RelocationInfo-r11-IEs ::= SEQUENCE {
-- Non-RRC IEs
-- IE rb-IdentityForHOMessage includes the identity of the RB used by the source SRNC
@@ -1453,10 +1453,10 @@ SRNC-RelocationInfo-r11-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1537,10 +1537,10 @@ SRNC-RelocationInfo-r12-IEs ::= SEQUENCE {
-- received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
- -- transparent transfer of capability information received from the UE that was introduced
- -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
- -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- transparent transfer of capability information received from the UE that was introduced
+ -- in a release independent manner, i.e., transferred within a VLEC. These UE capabilities
+ -- are included both in the RRC CONNECTION SETUP COMPLETE and the UE CAPABILITY INFORMATION
-- messages. Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1575,7 +1575,7 @@ SRNC-RelocationInfo-r12-IEs ::= SEQUENCE {
e-RGCH-CombinationInfoList E-RGCH-CombinationInfoList OPTIONAL,
storedCompressedModeInfo StoredCompressedModeInfo-r8 OPTIONAL,
secondary-tpc-CombinationInfoList TPC-CombinationInfoList-r9 OPTIONAL,
- secondary-e-RGCH-CombinationInfoList E-RGCH-CombinationInfoList-r9 OPTIONAL,
+ secondary-e-RGCH-CombinationInfoList E-RGCH-CombinationInfoList-r9 OPTIONAL,
serving-HSDSCH-CellInformation Serving-HSDSCH-CellInformation-r12 OPTIONAL,
dtx-drx-Info DTX-DRX-Info-r12 OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD-r12 OPTIONAL,
@@ -1627,11 +1627,11 @@ SRNC-RelocationInfo-r13-IEs ::= SEQUENCE {
-- information received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
-- transparent transfer of capability information received from the UE that was
- -- introduced in a release independent manner, i.e., transferred within a VLEC.
- -- These UE capabilities are included both in the RRC CONNECTION SETUP COMPLETE and
- -- the UE CAPABILITY INFORMATION messages.
+ -- introduced in a release independent manner, i.e., transferred within a VLEC.
+ -- These UE capabilities are included both in the RRC CONNECTION SETUP COMPLETE and
+ -- the UE CAPABILITY INFORMATION messages.
-- Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1666,7 +1666,7 @@ SRNC-RelocationInfo-r13-IEs ::= SEQUENCE {
e-RGCH-CombinationInfoList E-RGCH-CombinationInfoList OPTIONAL,
storedCompressedModeInfo StoredCompressedModeInfo-r8 OPTIONAL,
secondary-tpc-CombinationInfoList TPC-CombinationInfoList-r9 OPTIONAL,
- secondary-e-RGCH-CombinationInfoList E-RGCH-CombinationInfoList-r9 OPTIONAL,
+ secondary-e-RGCH-CombinationInfoList E-RGCH-CombinationInfoList-r9 OPTIONAL,
serving-HSDSCH-CellInformation Serving-HSDSCH-CellInformation-r12 OPTIONAL,
dtx-drx-Info DTX-DRX-Info-r12 OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD-r13 OPTIONAL,
@@ -1740,11 +1740,11 @@ SRNC-RelocationInfo-r14-IEs ::= SEQUENCE {
-- information received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
-- transparent transfer of capability information received from the UE that was
- -- introduced in a release independent manner, i.e., transferred within a VLEC.
- -- These UE capabilities are included both in the RRC CONNECTION SETUP COMPLETE and
- -- the UE CAPABILITY INFORMATION messages.
+ -- introduced in a release independent manner, i.e., transferred within a VLEC.
+ -- These UE capabilities are included both in the RRC CONNECTION SETUP COMPLETE and
+ -- the UE CAPABILITY INFORMATION messages.
-- Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1831,11 +1831,11 @@ SRNC-RelocationInfo-r15-IEs ::= SEQUENCE {
-- information received from the UE
ueCapabilityContainer BIT STRING
(CONTAINING UE-CapabilityContainer-IEs) OPTIONAL,
- -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
+ -- IE ueCapabilityContainer-RSC and IE ueCapabilityContainer-UCI are used for the
-- transparent transfer of capability information received from the UE that was
- -- introduced in a release independent manner, i.e., transferred within a VLEC.
- -- These UE capabilities are included both in the RRC CONNECTION SETUP COMPLETE and
- -- the UE CAPABILITY INFORMATION messages.
+ -- introduced in a release independent manner, i.e., transferred within a VLEC.
+ -- These UE capabilities are included both in the RRC CONNECTION SETUP COMPLETE and
+ -- the UE CAPABILITY INFORMATION messages.
-- Only the VLEC of one message needs to be included i.e. the one from these
-- messages that was last received.
-- Case 1: If the last received message was a RRC CONNECTION SETUP COMPLETE (RSC)
@@ -1907,7 +1907,7 @@ CipheringInfoPerRB-r4 ::= SEQUENCE {
ul-HFN BIT STRING (SIZE (20..25))
}
--- TABULAR: CipheringInfoPerRB-List, multiplicity value numberOfRadioBearers
+-- TABULAR: CipheringInfoPerRB-List, multiplicity value numberOfRadioBearers
-- has been replaced with maxRB.
CipheringInfoPerRB-List ::= SEQUENCE (SIZE (1..maxRB)) OF
CipheringInfoPerRB
@@ -1951,7 +1951,7 @@ COUNT-C-List ::= SEQUENCE (SIZE (1..maxCNdomains)) OF
COUNT-CSingle ::= SEQUENCE {
cn-DomainIdentity CN-DomainIdentity,
- count-C BIT STRING (SIZE (32))
+ count-C BIT STRING (SIZE (32))
}
DL-PhysChCapabilityFDD-r4 ::= SEQUENCE {
@@ -2061,13 +2061,13 @@ IntraFreqReportingCriteria-r6-ext ::= SEQUENCE {
-- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
-MaxHcContextSpace-r5 ::= ENUMERATED {
- dummy, by1024, by2048, by4096, by8192,
+MaxHcContextSpace-r5 ::= ENUMERATED {
+ dummy, by1024, by2048, by4096, by8192,
by16384, by32768, by65536, by131072 }
MeasurementCapability-r4 ::= SEQUENCE {
downlinkCompressedMode CompressedModeMeasCapability-r4,
- uplinkCompressedMode CompressedModeMeasCapability-r4
+ uplinkCompressedMode CompressedModeMeasCapability-r4
}
MeasurementCommandWithType ::= CHOICE {
@@ -2203,19 +2203,19 @@ OngoingMeasRep-r9 ::= SEQUENCE {
measurementCommandWithType MeasurementCommandWithType-r9,
measurementReportingMode MeasurementReportingMode OPTIONAL,
-- if any of the additional measurement ID is within the range 17 to 32,
- -- "OngoingMeasRep-v970ext-IEs" should be present and should include
+ -- "OngoingMeasRep-v970ext-IEs" should be present and should include
-- the IE "measurementIdentity" and "additionalMeasurementID-List".
-- The value of the IE "measurementIdentity" in "OngoingMeasRep-v970ext-IEs"
-- should be the same as the "measurementIdentity" value in "OngoingMeasRep-r9",
-- and "additionalMeasurementID-List" should contain the complete list.
- -- The IE "additionalMeasurementID-List" in "OngoingMeasRep-r9" should still
+ -- The IE "additionalMeasurementID-List" in "OngoingMeasRep-r9" should still
-- contain the additional measurement ID which value is within the range 1 to 16.
additionalMeasurementID-List AdditionalMeasurementID-List OPTIONAL
}
--- The IE "OngoingMeasRep-v970ext-IEs" should be included to report
--- measurementIdentity values within the range 17 to 32 and when a
--- "measurementIdentity" in "OngoingMeasRep-r9" needs to contain one of the
+-- The IE "OngoingMeasRep-v970ext-IEs" should be included to report
+-- measurementIdentity values within the range 17 to 32 and when a
+-- "measurementIdentity" in "OngoingMeasRep-r9" needs to contain one of the
-- values within the range 17 to 32 in the IE "additionalMeasurementID-List".
OngoingMeasRep-v970ext-IEs ::= SEQUENCE {
@@ -2228,14 +2228,14 @@ OngoingMeasRep-r10 ::= SEQUENCE {
measurementCommandWithType MeasurementCommandWithType-r10,
measurementReportingMode MeasurementReportingMode OPTIONAL,
-- if any of the additional measurement ID is within the range 17 to 32,
- -- "OngoingMeasRep-v970ext-IEs" (in SRNC-RelocationInfo-vab0ext-IEs)should be present
- -- and should include the IE "measurementIdentity" and
+ -- "OngoingMeasRep-v970ext-IEs" (in SRNC-RelocationInfo-vab0ext-IEs)should be present
+ -- and should include the IE "measurementIdentity" and
-- "additionalMeasurementID-List". In this case, the value of the IE "measurementIdentity" in
- -- "OngoingMeasRep-v970ext-IEs" (in SRNC-RelocationInfo-vab0ext-IEs) should be the same as the
+ -- "OngoingMeasRep-v970ext-IEs" (in SRNC-RelocationInfo-vab0ext-IEs) should be the same as the
-- "measurementIdentity" value in "OngoingMeasRep-r10", and "additionalMeasurementID-List"
-- should contain the complete list.
- -- The IE "additionalMeasurementID-List" in "OngoingMeasRep-r10" should still
- -- contain the additional measurement ID which value is within the range 1 to 16.
+ -- The IE "additionalMeasurementID-List" in "OngoingMeasRep-r10" should still
+ -- contain the additional measurement ID which value is within the range 1 to 16.
additionalMeasurementID-List AdditionalMeasurementID-List OPTIONAL
}
@@ -2456,11 +2456,11 @@ StateOfRRC-Procedure ::= ENUMERATED {
-- dummy is not used in this version of specification
-- It should not be sent
dummy,
- otherStates
+ otherStates
}
-TotalRLC-AM-BufferSize-r5 ::= ENUMERATED {
- kb10, kb50, kb100, kb150, kb200,
+TotalRLC-AM-BufferSize-r5 ::= ENUMERATED {
+ kb10, kb50, kb100, kb150, kb200,
kb300, kb400, kb500, kb750, kb1000 }
TPC-Combination-Info ::= SEQUENCE {
@@ -2490,7 +2490,7 @@ UE-Positioning-Capability-r4 ::= SEQUENCE {
sfn-sfnType2Capability ENUMERATED { true } OPTIONAL
}
-UE-Positioning-LastKnownPos ::= SEQUENCE {
+UE-Positioning-LastKnownPos ::= SEQUENCE {
sfn INTEGER (0..4095),
cell-id CellIdentity,
positionEstimate PositionEstimate
diff --git a/epan/dissectors/asn1/rrc/PDU-definitions.asn b/epan/dissectors/asn1/rrc/PDU-definitions.asn
index 5a92a63c8a..fca2613f9d 100644
--- a/epan/dissectors/asn1/rrc/PDU-definitions.asn
+++ b/epan/dissectors/asn1/rrc/PDU-definitions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 25.331 V16.1.0 (2020-09)
+-- 3GPP TS 25.331 V17.1.0 (2022-06)
--
-- 11.2 PDU definitions
--
@@ -144,7 +144,7 @@ IMPORTS
UE-RadioAccessCapabilityComp2-v7f0ext,
UE-RadioAccessCapabilityComp2-v860ext,
UE-RadioAccessCapabilityComp2-v920ext,
- UE-RadioAccessCapabilityComp2-va40ext,
+ UE-RadioAccessCapabilityComp2-va40ext,
UE-RadioAccessCapabilityComp2-vb50ext,
UE-RadioAccessCapabilityComp2-vc50ext,
UE-RadioAccessCapabilityComp2-vd20ext,
@@ -303,7 +303,7 @@ IMPORTS
DL-InformationPerRL-List-r4,
DL-InformationPerRL-List-r5,
DL-InformationPerRL-List-r5bis,
- DL-InformationPerRL-List-r6,
+ DL-InformationPerRL-List-r6,
DL-InformationPerRL-List-r7,
DL-InformationPerRL-List-r8,
DL-InformationPerRL-List-v6b0ext,
@@ -374,7 +374,7 @@ IMPORTS
PrimaryCPICH-Info,
PrimaryCCPCH-TX-Power,
PUSCH-CapacityAllocationInfo,
- PUSCH-CapacityAllocationInfo-r4,
+ PUSCH-CapacityAllocationInfo-r4,
PUSCH-CapacityAllocationInfo-r7,
PUSCH-Identity,
PUSCH-SysInfoList-HCR-r5,
@@ -428,7 +428,7 @@ IMPORTS
UL-CLTD-InfoFDD,
UL-MIMO-InfoFDD,
UL-DPCH-Info,
- UL-DPCH-Info-r4,
+ UL-DPCH-Info-r4,
UL-DPCH-Info-r5,
UL-DPCH-Info-r6,
UL-DPCH-Info-r7,
@@ -545,7 +545,7 @@ IMPORTS
UE-Positioning-GPS-AssistanceData,
UE-Positioning-GPS-AssistanceData-v770ext,
UE-Positioning-GPS-AssistanceData-v920ext,
- UE-Positioning-GPS-AssistanceData-va40ext,
+ UE-Positioning-GPS-AssistanceData-va40ext,
UE-Positioning-GPS-AssistanceData-vc50ext,
UE-Positioning-GPS-ReferenceTimeUncertainty,
UE-Positioning-Measurement-v390ext,
@@ -741,7 +741,7 @@ ActiveSetUpdate ::= CHOICE {
criticalExtensions CHOICE {
r10 SEQUENCE {
activeSetUpdate-r10 ActiveSetUpdate-r10-IEs,
- -- Container for adding non critical extensions after freezing
+ -- Container for adding non critical extensions after freezing
-- REL-11
activeSetUpdate-r10-add-ext BIT STRING OPTIONAL,
vb50NonCriticalExtensions SEQUENCE {
@@ -752,15 +752,15 @@ ActiveSetUpdate ::= CHOICE {
criticalExtensions CHOICE {
r11 SEQUENCE {
activeSetUpdate-r11 ActiveSetUpdate-r11-IEs,
- -- Container for adding non critical extensions after freezing
+ -- Container for adding non critical extensions after freezing
-- REL-12
activeSetUpdate-r11-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
- },
+ },
criticalExtensions CHOICE {
r12 SEQUENCE {
activeSetUpdate-r12 ActiveSetUpdate-r12-IEs,
- -- Container for adding non critical extensions after freezing
+ -- Container for adding non critical extensions after freezing
-- REL-13
activeSetUpdate-r12-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -768,7 +768,7 @@ ActiveSetUpdate ::= CHOICE {
criticalExtensions CHOICE {
r13 SEQUENCE {
activeSetUpdate-r13 ActiveSetUpdate-r13-IEs,
- -- Container for adding non critical extensions after freezing
+ -- Container for adding non critical extensions after freezing
-- REL-14
activeSetUpdate-r13-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -949,14 +949,14 @@ ActiveSetUpdate-r9-IEs ::= SEQUENCE {
mimoParameters MIMO-Parameters-r9 OPTIONAL,
maxAllowedUL-TX-Power MaxAllowedUL-TX-Power OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
rl-AdditionInformationList RL-AdditionInformationList-r9 OPTIONAL,
- rl-AdditionInformationList-SecULFreq
+ rl-AdditionInformationList-SecULFreq
RL-AdditionInformationList-SecULFreq OPTIONAL,
servingCellChangeParameters ServingCellChangeParameters OPTIONAL,
rl-RemovalInformationList RL-RemovalInformationList OPTIONAL,
- rl-RemovalInformationList-SecULFreq
+ rl-RemovalInformationList-SecULFreq
RL-RemovalInformationList-SecULFreq OPTIONAL,
tx-DiversityMode TX-DiversityMode OPTIONAL,
dpc-Mode DPC-Mode OPTIONAL,
@@ -991,14 +991,14 @@ ActiveSetUpdate-r10-IEs ::= SEQUENCE {
mimoParameters MIMO-Parameters-r9 OPTIONAL,
maxAllowedUL-TX-Power MaxAllowedUL-TX-Power OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
rl-AdditionInformationList RL-AdditionInformationList-r10 OPTIONAL,
- rl-AdditionInformationList-SecULFreq
+ rl-AdditionInformationList-SecULFreq
RL-AdditionInformationList-SecULFreq OPTIONAL,
servingCellChangeParameters ServingCellChangeParameters OPTIONAL,
rl-RemovalInformationList RL-RemovalInformationList OPTIONAL,
- rl-RemovalInformationList-SecULFreq
+ rl-RemovalInformationList-SecULFreq
RL-RemovalInformationList-SecULFreq OPTIONAL,
tx-DiversityMode TX-DiversityMode OPTIONAL,
dpc-Mode DPC-Mode OPTIONAL,
@@ -1034,17 +1034,17 @@ ActiveSetUpdate-r11-IEs ::= SEQUENCE {
mimo4x4Parameters MIMO4x4-Parameters OPTIONAL,
maxAllowedUL-TX-Power MaxAllowedUL-TX-Power OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
ul-CLTD-InfoFDD UL-CLTD-InfoFDD OPTIONAL,
f-tpich-ReconfigurationInfo F-TPICH-ReconfigurationInfo OPTIONAL,
ul-OLTD-InfoFDD UL-OLTD-InfoFDD OPTIONAL,
rl-AdditionInformationList RL-AdditionInformationList-r11 OPTIONAL,
- rl-AdditionInformationList-SecULFreq
+ rl-AdditionInformationList-SecULFreq
RL-AdditionInformationList-SecULFreq OPTIONAL,
servingCellChangeParameters ServingCellChangeParameters OPTIONAL,
rl-RemovalInformationList RL-RemovalInformationList OPTIONAL,
- rl-RemovalInformationList-SecULFreq
+ rl-RemovalInformationList-SecULFreq
RL-RemovalInformationList-SecULFreq OPTIONAL,
tx-DiversityMode TX-DiversityMode OPTIONAL,
dpc-Mode DPC-Mode OPTIONAL,
@@ -1079,17 +1079,17 @@ ActiveSetUpdate-r12-IEs ::= SEQUENCE {
dch-Enhancements-Info-FDD DCH-Enhancements-Info-FDD OPTIONAL,
maxAllowedUL-TX-Power MaxAllowedUL-TX-Power OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD-r12 OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
ul-CLTD-InfoFDD UL-CLTD-InfoFDD OPTIONAL,
f-tpich-ReconfigurationInfo F-TPICH-ReconfigurationInfo OPTIONAL,
ul-OLTD-InfoFDD UL-OLTD-InfoFDD OPTIONAL,
rl-AdditionInformationList RL-AdditionInformationList-r12 OPTIONAL,
- rl-AdditionInformationList-SecULFreq
+ rl-AdditionInformationList-SecULFreq
RL-AdditionInformationList-SecULFreq-r12 OPTIONAL,
servingCellChangeParameters ServingCellChangeParameters-r12 OPTIONAL,
rl-RemovalInformationList RL-RemovalInformationList OPTIONAL,
- rl-RemovalInformationList-SecULFreq
+ rl-RemovalInformationList-SecULFreq
RL-RemovalInformationList-SecULFreq OPTIONAL,
tx-DiversityMode TX-DiversityMode OPTIONAL,
dpc-Mode DPC-Mode OPTIONAL,
@@ -1126,17 +1126,17 @@ ActiveSetUpdate-r13-IEs ::= SEQUENCE {
dch-Enhancements-Info-FDD DCH-Enhancements-Info-FDD OPTIONAL,
maxAllowedUL-TX-Power MaxAllowedUL-TX-Power OPTIONAL,
ul-SecondaryCellInfoFDD UL-SecondaryCellInfoFDD-r13 OPTIONAL,
- e-dch-ReconfigurationInfo-SecULFrequency
+ e-dch-ReconfigurationInfo-SecULFrequency
E-DCH-ReconfigurationInfo-SecULFrequency OPTIONAL,
ul-CLTD-InfoFDD UL-CLTD-InfoFDD OPTIONAL,
f-tpich-ReconfigurationInfo F-TPICH-ReconfigurationInfo OPTIONAL,
ul-OLTD-InfoFDD UL-OLTD-InfoFDD OPTIONAL,
rl-AdditionInformationList RL-AdditionInformationList-r13 OPTIONAL,
- rl-AdditionInformationList-SecULFreq
+ rl-AdditionInformationList-SecULFreq
RL-AdditionInformationList-SecULFreq-r13 OPTIONAL,
servingCellChangeParameters ServingCellChangeParameters-r12 OPTIONAL,
rl-RemovalInformationList RL-RemovalInformationList OPTIONAL,
- rl-RemovalInformationList-SecULFreq
+ rl-RemovalInformationList-SecULFreq
RL-RemovalInformationList-SecULFreq OPTIONAL,
tx-DiversityMode TX-DiversityMode OPTIONAL,
dpc-Mode DPC-Mode OPTIONAL,
@@ -1208,7 +1208,7 @@ AssistanceDataDelivery ::= CHOICE {
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
assistanceDataDelivery-r3-add-ext BIT STRING OPTIONAL,
- v4b0NonCriticalExtensions SEQUENCE {
+ v4b0NonCriticalExtensions SEQUENCE {
assistanceDataDelivery-v4b0ext AssistanceDataDelivery-v4b0ext-IEs,
v770NonCriticalExtension SEQUENCE {
assistanceDataDelivery-v770ext AssistanceDataDelivery-v770ext-IEs,
@@ -1217,10 +1217,10 @@ AssistanceDataDelivery ::= CHOICE {
v920NonCriticalExtension SEQUENCE {
assistanceDataDelivery-v920ext AssistanceDataDelivery-v920ext-IEs,
va40NonCriticalExtension SEQUENCE {
- assistanceDataDelivery-va40ext
+ assistanceDataDelivery-va40ext
AssistanceDataDelivery-va40ext-IEs,
vc50NonCriticalExtension SEQUENCE {
- assistanceDataDelivery-vc50ext
+ assistanceDataDelivery-vc50ext
AssistanceDataDelivery-vc50ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -1257,9 +1257,9 @@ AssistanceDataDelivery-v4b0ext-IEs ::= SEQUENCE {
AssistanceDataDelivery-v770ext-IEs ::= SEQUENCE {
ue-Positioning-OTDOA-AssistanceData-UEB-ext
UE-Positioning-OTDOA-AssistanceData-UEB-ext OPTIONAL,
- ue-Positioning-GPS-AssistanceData
+ ue-Positioning-GPS-AssistanceData
UE-Positioning-GPS-AssistanceData-v770ext OPTIONAL,
- ue-positioning-GANSS-AssistanceData
+ ue-positioning-GANSS-AssistanceData
UE-Positioning-GANSS-AssistanceData OPTIONAL
}
@@ -1269,21 +1269,21 @@ AssistanceDataDelivery-v860ext-IEs ::= SEQUENCE {
}
AssistanceDataDelivery-v920ext-IEs ::= SEQUENCE {
- ue-positioning-GPS-AssistanceData-v920ext
+ ue-positioning-GPS-AssistanceData-v920ext
UE-Positioning-GPS-AssistanceData-v920ext OPTIONAL,
ue-positioning-GANSS-AssistanceData-v920ext
UE-Positioning-GANSS-AssistanceData-v920ext OPTIONAL
}
AssistanceDataDelivery-va40ext-IEs ::= SEQUENCE {
- ue-positioning-GPS-AssistanceData-va40ext
+ ue-positioning-GPS-AssistanceData-va40ext
UE-Positioning-GPS-AssistanceData-va40ext OPTIONAL,
ue-positioning-GANSS-AssistanceData-va40ext
UE-Positioning-GANSS-AssistanceData-va40ext OPTIONAL
}
AssistanceDataDelivery-vc50ext-IEs ::= SEQUENCE {
- ue-positioning-GPS-AssistanceData-vc50ext
+ ue-positioning-GPS-AssistanceData-vc50ext
UE-Positioning-GPS-AssistanceData-vc50ext OPTIONAL,
ue-positioning-GANSS-AssistanceData-vc50ext
UE-Positioning-GANSS-AssistanceData-vc50ext OPTIONAL
@@ -1327,8 +1327,8 @@ CellChangeOrderFromUTRAN-r3-IEs ::= SEQUENCE {
interRAT-TargetCellDescription InterRAT-TargetCellDescription
}
-CellChangeOrderFromUTRAN-v590ext-IEs ::= SEQUENCE {
- geran-SystemInfoType CHOICE {
+CellChangeOrderFromUTRAN-v590ext-IEs ::= SEQUENCE {
+ geran-SystemInfoType CHOICE {
sI GERAN-SystemInformation,
pSI GERAN-SystemInformation
} OPTIONAL
@@ -1387,13 +1387,13 @@ CellUpdate ::= SEQUENCE {
measuredResultsOnRACH MeasuredResultsOnRACH OPTIONAL,
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
- -- The cellUpdate-r3-add-ext can be omitted if its inclusion would result in the
+ -- The cellUpdate-r3-add-ext can be omitted if its inclusion would result in the
-- size of the message exceeding the maximum PDU size possible for CCCH
-- transmission
cellUpdate-r3-add-ext BIT STRING
(CONTAINING CellUpdate-r3-add-ext-IEs) OPTIONAL,
v590NonCriticalExtensions SEQUENCE {
- cellUpdate-v590ext CellUpdate-v590ext,
+ cellUpdate-v590ext CellUpdate-v590ext,
v690NonCriticalExtensions SEQUENCE {
cellUpdate-v690ext CellUpdate-v690ext-IEs,
v6b0NonCriticalExtensions SEQUENCE {
@@ -1452,7 +1452,7 @@ CellUpdate-v690ext-IEs ::= SEQUENCE {
CellUpdate-v6b0ext-IEs ::= SEQUENCE {
-- MBMS IEs
- -- The mbmsSelectedServices can be omitted if its inclusion would result in the
+ -- The mbmsSelectedServices can be omitted if its inclusion would result in the
-- size of the message exceeding the maximum PDU size possible for CCCH transmission
mbmsSelectedServices MBMS-SelectedServicesShort OPTIONAL
}
@@ -1487,14 +1487,14 @@ CellUpdate-v860ext-IEs ::= SEQUENCE {
CellUpdate-va40ext-IEs ::= SEQUENCE {
-- User equipment IEs
- securityRevertStatusIndicator
+ securityRevertStatusIndicator
ENUMERATED { revertedBack, normalOperation } OPTIONAL,
-- Other IEs
loggedMeasAvailable ENUMERATED { true } OPTIONAL,
loggedANRResultsAvailable ENUMERATED { true } OPTIONAL
}
--- TABULAR: TDD related IEs, MBMS IEs, and supportForTwoDRXSchemesInPCH are omitted compared to
+-- TABULAR: TDD related IEs, MBMS IEs, and supportForTwoDRXSchemesInPCH are omitted compared to
-- tabular for the purpose of coding optimisation
CellUpdateFDD-r11 ::= SEQUENCE {
-- User equipment IEs
@@ -1653,7 +1653,7 @@ CellUpdateConfirm ::= CHOICE {
criticalExtensions CHOICE {
r9 SEQUENCE {
cellUpdateConfirm-r9 CellUpdateConfirm-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
cellUpdateConfirm-r9-add-ext BIT STRING OPTIONAL,
v950NonCriticalExtensions SEQUENCE {
@@ -1667,7 +1667,7 @@ CellUpdateConfirm ::= CHOICE {
criticalExtensions CHOICE {
r10 SEQUENCE {
cellUpdateConfirm-r10 CellUpdateConfirm-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
cellUpdateConfirm-r10-add-ext BIT STRING OPTIONAL,
v9c0NonCriticalExtensions SEQUENCE {
@@ -1682,27 +1682,27 @@ CellUpdateConfirm ::= CHOICE {
criticalExtensions CHOICE {
r11 SEQUENCE {
cellUpdateConfirm-r11 CellUpdateConfirm-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
- cellUpdateConfirm-r11-add-ext
+ cellUpdateConfirm-r11-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r12 SEQUENCE {
cellUpdateConfirm-r12 CellUpdateConfirm-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
- cellUpdateConfirm-r12-add-ext
+ cellUpdateConfirm-r12-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r13 SEQUENCE {
cellUpdateConfirm-r13 CellUpdateConfirm-r13-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-14
- cellUpdateConfirm-r13-add-ext
+ cellUpdateConfirm-r13-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
@@ -2669,7 +2669,7 @@ CellUpdateConfirm-CCCH ::= CHOICE {
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
- },
+ },
criticalExtensions CHOICE {
r6 SEQUENCE {
cellUpdateConfirm-r6 CellUpdateConfirm-r6-IEs,
@@ -2705,7 +2705,7 @@ CellUpdateConfirm-CCCH ::= CHOICE {
cellUpdateConfirm-v8a0ext
CellUpdateConfirm-v8a0ext-IEs,
v7f0NonCriticalExtensions SEQUENCE {
- cellUpdateConfirm-v7f0ext
+ cellUpdateConfirm-v7f0ext
CellUpdateConfirm-v7f0ext-IEs,
v7g0NonCriticalExtensions SEQUENCE {
cellUpdateConfirm-v7g0ext
@@ -2720,7 +2720,7 @@ CellUpdateConfirm-CCCH ::= CHOICE {
criticalExtensions CHOICE {
r9 SEQUENCE {
cellUpdateConfirm-r9 CellUpdateConfirm-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
cellUpdateConfirm-r9-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -2728,7 +2728,7 @@ CellUpdateConfirm-CCCH ::= CHOICE {
criticalExtensions CHOICE {
r10 SEQUENCE {
cellUpdateConfirm-r10 CellUpdateConfirm-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
cellUpdateConfirm-r10-add-ext BIT STRING OPTIONAL,
vb50NonCriticalExtensions SEQUENCE {
@@ -2740,7 +2740,7 @@ CellUpdateConfirm-CCCH ::= CHOICE {
criticalExtensions CHOICE {
r11 SEQUENCE {
cellUpdateConfirm-r11 CellUpdateConfirm-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
cellUpdateConfirm-r11-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -2748,17 +2748,17 @@ CellUpdateConfirm-CCCH ::= CHOICE {
criticalExtensions CHOICE {
r12 SEQUENCE {
cellUpdateConfirm-r12 CellUpdateConfirm-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
- cellUpdateConfirm-r12-add-ext
+ cellUpdateConfirm-r12-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
}, criticalExtensions CHOICE {
r13 SEQUENCE {
cellUpdateConfirm-r13 CellUpdateConfirm-r13-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-14
- cellUpdateConfirm-r13-add-ext
+ cellUpdateConfirm-r13-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
}, criticalExtensions SEQUENCE {}
@@ -3693,7 +3693,7 @@ HandoverToUTRANCommand-r12-IEs ::= SEQUENCE {
dch-Enhancements-Info-FDD DCH-Enhancements-Info-FDD OPTIONAL,
frequencyInfo FrequencyInfo,
multi-frequencyInfo Multi-frequencyInfo-LCR-r7 OPTIONAL,
- dl-SecondaryCellInfoFDD
+ dl-SecondaryCellInfoFDD
DL-SecondaryCellInfoFDD-HandoverToUtran OPTIONAL,
ulSecondaryCellInfoFDD UL-SecondaryCellInfoFDD OPTIONAL,
additionalDLSecCellInfoHandoverToUtranListFDD AdditionalDLSecCellInfoHandoverToUtranListFDD OPTIONAL
@@ -3796,7 +3796,7 @@ InitialDirectTransfer ::= SEQUENCE {
initialDirectTransfer-v3a0ext InitialDirectTransfer-v3a0ext,
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
- initialDirectTransfer-r3-add-ext BIT STRING
+ initialDirectTransfer-r3-add-ext BIT STRING
(CONTAINING InitialDirectTransfer-r3-add-ext-IEs) OPTIONAL,
v590NonCriticalExtensions SEQUENCE {
initialDirectTransfer-v590ext InitialDirectTransfer-v590ext,
@@ -3882,7 +3882,7 @@ HandoverFromUTRANCommand-GSM ::= CHOICE {
r3 SEQUENCE {
handoverFromUTRANCommand-GSM-r3
HandoverFromUTRANCommand-GSM-r3-IEs,
- -- UTRAN should not include the IE laterNonCriticalExtensions when it sets the IE
+ -- UTRAN should not include the IE laterNonCriticalExtensions when it sets the IE
-- gsm-message included in handoverFromUTRANCommand-GSM-r3 to single-GSM-Message. The UE
-- behaviour upon receiving a message with this combination of IE values is unspecified.
laterNonCriticalExtensions SEQUENCE {
@@ -3929,9 +3929,9 @@ HandoverFromUTRANCommand-GSM-r3-IEs ::= SEQUENCE {
gsm-message CHOICE {
-- In the single-GSM-Message case the following rules apply:
-- 1> the GSM message directly follows the basic production; the final padding that
- -- results when PER encoding the abstract syntax value is removed prior to appending
+ -- results when PER encoding the abstract syntax value is removed prior to appending
-- the GSM message.
- -- 2> the RRC message excluding the GSM part, does not contain a length determinant;
+ -- 2> the RRC message excluding the GSM part, does not contain a length determinant;
-- there is no explicit parameter indicating the size of the included GSM message.
-- 3> depending on need, final padding (all "0"s) is added to ensure the final result
-- comprises a full number of octets
@@ -3953,9 +3953,9 @@ HandoverFromUTRANCommand-GSM-r6-IEs ::= SEQUENCE {
gsm-message CHOICE {
-- In the single-GSM-Message case the following rules apply:
-- 1> the GSM message directly follows the basic production; the final padding that
- -- results when PER encoding the abstract syntax value is removed prior to appending
+ -- results when PER encoding the abstract syntax value is removed prior to appending
-- the GSM message.
- -- 2> the RRC message excluding the GSM part, does not contain a length determinant;
+ -- 2> the RRC message excluding the GSM part, does not contain a length determinant;
-- there is no explicit parameter indicating the size of the included GSM message.
-- 3> depending on need, final padding (all "0"s) is added to ensure the final result
-- comprises a full number of octets
@@ -3964,14 +3964,14 @@ HandoverFromUTRANCommand-GSM-r6-IEs ::= SEQUENCE {
gsm-Messages GSM-MessageList
}
},
- geran-SystemInfoType CHOICE {
+ geran-SystemInfoType CHOICE {
sI GERAN-SystemInformation,
pSI GERAN-SystemInformation
} OPTIONAL
}
HandoverFromUTRANCommand-GSM-v690ext-IEs ::= SEQUENCE {
- geran-SystemInfoType CHOICE {
+ geran-SystemInfoType CHOICE {
sI GERAN-SystemInformation,
pSI GERAN-SystemInformation
} OPTIONAL
@@ -3988,7 +3988,7 @@ HandoverFromUTRANCommand-GERANIu ::= SEQUENCE {
handoverFromUTRANCommand-GERANIu-r5
HandoverFromUTRANCommand-GERANIu-r5-IEs,
-- UTRAN should not include the IE nonCriticalExtensions when it sets
- -- the IE geranIu-message included in handoverFromUTRANCommand-GERANIu-r5 to
+ -- the IE geranIu-message included in handoverFromUTRANCommand-GERANIu-r5 to
-- single-GERANIu-Message
-- The UE behaviour upon receiving a message including this combination of IE values is
-- not specified
@@ -4009,9 +4009,9 @@ HandoverFromUTRANCommand-GERANIu-r5-IEs ::= SEQUENCE {
geranIu-Message CHOICE {
-- In the single-GERANIu-Message case the following rules apply:
-- 1> the GERAN Iu message directly follows the basic production; the final padding that
- -- results when PER encoding the abstract syntax value is removed prior to appending
+ -- results when PER encoding the abstract syntax value is removed prior to appending
-- the GERAN Iu message.
- -- 2> the RRC message excluding the GERAN Iu part does not contain a length determinant;
+ -- 2> the RRC message excluding the GERAN Iu part does not contain a length determinant;
-- there is no explicit parameter indicating the size of the included GERAN Iu
-- message.
-- 3> depending on need, final padding (all "0"s) is added to ensure the final result
@@ -4028,7 +4028,7 @@ HandoverFromUTRANCommand-CDMA2000 ::= CHOICE {
handoverFromUTRANCommand-CDMA2000-r3
HandoverFromUTRANCommand-CDMA2000-r3-IEs,
laterNonCriticalExtensions SEQUENCE {
- -- Container for additional R99 extensions
+ -- Container for additional R99 extensions
handoverFromUTRANCommand-CDMA2000-r3-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -4153,7 +4153,7 @@ InterRATHandoverInfo ::= SEQUENCE {
},
ue-CapabilityContainer CHOICE {
absent NULL,
- -- present is an octet aligned string containing Ie UE-RadioAccessCapabilityInfo
+ -- present is an octet aligned string containing IE UE-RadioAccessCapabilityInfo
present OCTET STRING (SIZE (0..63))
},
-- Non critical extensions
@@ -4181,7 +4181,7 @@ InterRATHandoverInfo ::= SEQUENCE {
v690NonCriticalExtensions SEQUENCE {
interRATHandoverInfo-v690ext
InterRATHandoverInfo-v690ext-IEs,
- v6b0NonCriticalExtensions
+ v6b0NonCriticalExtensions
InterRATHandoverInfo-NonCriticalExtension-v6b0-IEs OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -4207,7 +4207,7 @@ InterRATHandoverInfo-v3a0ext-IEs ::= SEQUENCE {
InterRATHandoverInfo-v3d0ext-IEs ::= SEQUENCE {
-- User equipment IEs
- uESpecificBehaviourInformation1interRAT
+ uESpecificBehaviourInformation1interRAT
UESpecificBehaviourInformation1interRAT OPTIONAL
}
@@ -4381,11 +4381,11 @@ InterRATHandoverInfo-va80ext-IEs ::= SEQUENCE {
}
InterRATHandoverInfo-vb50ext-IEs ::= SEQUENCE {
- ue-RadioAccessCapabilityInfo-vb50ext
+ ue-RadioAccessCapabilityInfo-vb50ext
UE-RadioAccessCapability-vb50ext OPTIONAL,
- ue-RadioAccessCapabilityComp2
+ ue-RadioAccessCapabilityComp2
UE-RadioAccessCapabilityComp2-vb50ext OPTIONAL,
- ue-RadioAccessCapabilityInfo-TDD128
+ ue-RadioAccessCapabilityInfo-TDD128
UE-RadioAccessCapabilityInfo-TDD128-vb50ext OPTIONAL
}
@@ -4437,9 +4437,9 @@ MeasurementControl ::= CHOICE {
-- Container for additional R99 extensions
measurementControl-r3-add-ext BIT STRING OPTIONAL,
v4b0NonCriticalExtensions SEQUENCE{
- -- The content of the v4b0 non-critical extension has been removed. If sent
- -- to a UE of AS release 4, the UE behaviour is unspecified. A UE of AS
- -- release 5 onward shall comply with the v4b0 and later extensions in this
+ -- The content of the v4b0 non-critical extension has been removed. If sent
+ -- to a UE of AS release 4, the UE behaviour is unspecified. A UE of AS
+ -- release 5 onward shall comply with the v4b0 and later extensions in this
-- branch of the message.
v590NonCriticalExtensions SEQUENCE {
measurementControl-v590ext MeasurementControl-v590ext-IEs,
@@ -4513,29 +4513,29 @@ MeasurementControl ::= CHOICE {
-- Container for adding non critical extensions after freezing REL-10
measurementControl-r9-add-ext BIT STRING OPTIONAL,
v970NonCriticalExtensions SEQUENCE {
- measurementControl-v970ext
+ measurementControl-v970ext
MeasurementControl-v970ext-IEs,
vb50NonCriticalExtensions SEQUENCE {
- measurementControl-vb50ext
+ measurementControl-vb50ext
MeasurementControl-vb50ext-IEs,
- nonCriticalExtensions SEQUENCE {} OPTIONAL
+ nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
},
criticalExtensions CHOICE {
r10 SEQUENCE {
- measurementControl-r10 MeasurementControl-r10-IEs,
+ measurementControl-r10 MeasurementControl-r10-IEs,
-- Container for adding non critical extensions after
-- freezing REL-11
- measurementControl-r10-add-ext BIT STRING OPTIONAL,
+ measurementControl-r10-add-ext BIT STRING OPTIONAL,
vaa0NonCriticalExtensions SEQUENCE {
- measurementControl-vaa0ext
+ measurementControl-vaa0ext
MeasurementControl-vaa0ext-IEs,
vab0NonCriticalExtensions SEQUENCE {
- measurementControl-vab0ext
+ measurementControl-vab0ext
MeasurementControl-vab0ext-IEs,
vb50NonCriticalExtensions SEQUENCE {
- measurementControl-vb50ext
+ measurementControl-vb50ext
MeasurementControl-vb50ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -4544,8 +4544,8 @@ MeasurementControl ::= CHOICE {
},
criticalExtensions CHOICE {
r11 SEQUENCE {
- measurementControl-r11
- MeasurementControl-r11-IEs,
+ measurementControl-r11
+ MeasurementControl-r11-IEs,
-- Container for adding non critical extensions after
-- freezing REL-12
measurementControl-r11-add-ext BIT STRING OPTIONAL,
@@ -4553,25 +4553,25 @@ MeasurementControl ::= CHOICE {
},
criticalExtensions CHOICE {
r12 SEQUENCE {
- measurementControl-r12
- MeasurementControl-r12-IEs,
- -- Container for adding non critical extensions
+ measurementControl-r12
+ MeasurementControl-r12-IEs,
+ -- Container for adding non critical extensions
-- after freezing REL-13
measurementControl-r12-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r13 SEQUENCE {
- measurementControl-r13
- MeasurementControl-r13-IEs,
- -- Container for adding non critical extensions
+ measurementControl-r13
+ MeasurementControl-r13-IEs,
+ -- Container for adding non critical extensions
-- after freezing REL-14
measurementControl-r13-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r14 SEQUENCE {
- measurementControl-r14
+ measurementControl-r14
MeasurementControl-r14-IEs,
-- Container for adding non critical extensions
-- after freezing REL-15
@@ -4607,7 +4607,7 @@ MeasurementControl-r3-IEs ::= SEQUENCE {
}
MeasurementControl-v390ext ::= SEQUENCE {
- ue-Positioning-Measurement-v390ext
+ ue-Positioning-Measurement-v390ext
UE-Positioning-Measurement-v390ext OPTIONAL
}
@@ -4696,14 +4696,14 @@ MeasurementControl-v8a0ext-IEs ::= SEQUENCE {
MeasurementControl-r9-IEs ::= SEQUENCE {
-- Measurement IEs
- -- if the UE supports extended measurements, "measurementIdentity"
+ -- if the UE supports extended measurements, "measurementIdentity"
-- shall be ignored if "measurementIdentity" in MeasurementControl-v970ext-IEs
-- is present, and the value of that element shall be used instead.
measurementIdentity MeasurementIdentity,
-- TABULAR: The measurement type is included in measurementCommand.
measurementCommand MeasurementCommand-r9,
measurementReportingMode MeasurementReportingMode OPTIONAL,
- -- if the UE supports extended measurements, "additionalMeasurementList"
+ -- if the UE supports extended measurements, "additionalMeasurementList"
-- shall be ignored if "additionalMeasurementList" in MeasurementControl-v970ext-IEs
-- is present, and the value of that element shall be used instead.
additionalMeasurementList AdditionalMeasurementID-List OPTIONAL,
@@ -4720,14 +4720,14 @@ MeasurementControl-v970ext-IEs ::= SEQUENCE {
MeasurementControl-r10-IEs ::= SEQUENCE {
-- Measurement IEs
- -- if the UE supports extended measurements, "measurementIdentity"
+ -- if the UE supports extended measurements, "measurementIdentity"
-- shall be ignored if "measurementIdentity" in MeasurementControl-vab0ext-IEs
-- is present, and the value of that element shall be used instead.
measurementIdentity MeasurementIdentity,
-- TABULAR: The measurement type is included in measurementCommand.
measurementCommand MeasurementCommand-r10,
measurementReportingMode MeasurementReportingMode OPTIONAL,
- -- if the UE supports extended measurements, "additionalMeasurementList"
+ -- if the UE supports extended measurements, "additionalMeasurementList"
-- shall be ignored if "additionalMeasurementList" in MeasurementControl-vab0ext-IEs
-- is present, and the value of that element shall be used instead.
additionalMeasurementList AdditionalMeasurementID-List OPTIONAL,
@@ -4866,13 +4866,13 @@ MeasurementControlFailure-v590ext-IEs ::= SEQUENCE {
-- Most significant part of extended "RRC transaction identifier" (MSP):
-- extended "RRC transaction identifier" =
-- rrc-TransactionIdentifier-MSP-v590ext * 4 + rrc-TransactionIdentifier
- -- If the rrc-TransactionIdentifier-MSP-v590ext was not received in the MEASUREMENT CONTROL
+ -- If the rrc-TransactionIdentifier-MSP-v590ext was not received in the MEASUREMENT CONTROL
-- message, then the rrc-TransactionIdentifier-MSP-v590ext shall be set to zero
rrc-TransactionIdentifier-MSP-v590ext RRC-TransactionIdentifier
}
MeasurementControlFailure-vc50ext-IEs ::= SEQUENCE {
- measurementIdentity MeasurementIdentity-r9 OPTIONAL
+ measurementIdentity MeasurementIdentity-r9 OPTIONAL
}
-- ***************************************************
--
@@ -4882,7 +4882,7 @@ MeasurementControlFailure-vc50ext-IEs ::= SEQUENCE {
MeasurementReport ::= SEQUENCE {
-- Measurement IEs
- -- if the UE supports extended measurements, "measurementIdentity"
+ -- if the UE supports extended measurements, "measurementIdentity"
-- shall be ignored if "measurementIdentity" in MeasurementReport-v970ext-IEs
-- is present, and the value of that element shall be used instead.
measurementIdentity MeasurementIdentity,
@@ -4912,13 +4912,13 @@ MeasurementReport ::= SEQUENCE {
v920NonCriticalExtensions SEQUENCE {
measurementReport-v920ext MeasurementReport-v920ext-IEs,
v970NonCriticalExtensions SEQUENCE {
- measurementReport-v970ext-IE
+ measurementReport-v970ext-IE
MeasurementReport-v970ext-IEs,
va40NonCriticalExtensions SEQUENCE {
- measurementReport-va40ext
+ measurementReport-va40ext
MeasurementReport-va40ext-IEs,
vb50NonCriticalExtensions SEQUENCE {
- measurementReport-vb50ext
+ measurementReport-vb50ext
MeasurementReport-vb50ext-IEs,
laterNonCriticalExtensions
MeasurementReport-LaterNonCriticalExtensions OPTIONAL
@@ -5045,7 +5045,7 @@ MeasurementReport-ve30ext-IEs ::= SEQUENCE {
MeasurementReport-vf20ext-IEs ::= SEQUENCE {
-- Measurement IEs
applicationLayerMeasurementReporting-r15 ApplicationLayerMeasurementReporting-r15 OPTIONAL,
- nonCriticalExtensions SEQUENCE {} OPTIONAL
+ nonCriticalExtensions SEQUENCE {} OPTIONAL
}
-- ***************************************************
@@ -5131,7 +5131,7 @@ PhysicalChannelReconfiguration ::= CHOICE {
physicalChannelReconfiguration-v590ext
PhysicalChannelReconfiguration-v590ext-IEs,
v690NonCriticalExtensions SEQUENCE {
- physicalChannelReconfiguration-v690ext
+ physicalChannelReconfiguration-v690ext
PhysicalChannelReconfiguration-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
physicalChannelReconfiguration-v770ext
@@ -5157,7 +5157,7 @@ PhysicalChannelReconfiguration ::= CHOICE {
physicalChannelReconfiguration-v590ext
PhysicalChannelReconfiguration-v590ext-IEs,
v690NonCriticalExtensions SEQUENCE {
- physicalChannelReconfiguration-v690ext
+ physicalChannelReconfiguration-v690ext
PhysicalChannelReconfiguration-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
physicalChannelReconfiguration-v770ext
@@ -5175,7 +5175,7 @@ PhysicalChannelReconfiguration ::= CHOICE {
-- Container for adding non critical extensions after freezing REL-6
physicalChannelReconfiguration-r5-add-ext BIT STRING OPTIONAL,
v690NonCriticalExtensions SEQUENCE {
- physicalChannelReconfiguration-v690ext
+ physicalChannelReconfiguration-v690ext
PhysicalChannelReconfiguration-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
physicalChannelReconfiguration-v770ext
@@ -5256,7 +5256,7 @@ PhysicalChannelReconfiguration ::= CHOICE {
r9 SEQUENCE {
physicalChannelReconfiguration-r9
PhysicalChannelReconfiguration-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
physicalChannelReconfiguration-r9-add-ext
BIT STRING OPTIONAL,
@@ -5270,7 +5270,7 @@ PhysicalChannelReconfiguration ::= CHOICE {
r10 SEQUENCE {
physicalChannelReconfiguration-r10
PhysicalChannelReconfiguration-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
physicalChannelReconfiguration-r10-add-ext
BIT STRING OPTIONAL,
@@ -5284,18 +5284,18 @@ PhysicalChannelReconfiguration ::= CHOICE {
r11 SEQUENCE {
physicalChannelReconfiguration-r11
PhysicalChannelReconfiguration-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
physicalChannelReconfiguration-r11-add-ext
BIT STRING OPTIONAL,
- nonCriticalExtensions
+ nonCriticalExtensions
SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r12 SEQUENCE {
physicalChannelReconfiguration-r12
PhysicalChannelReconfiguration-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
physicalChannelReconfiguration-r12-add-ext
BIT STRING OPTIONAL,
@@ -5305,7 +5305,7 @@ PhysicalChannelReconfiguration ::= CHOICE {
r13 SEQUENCE {
physicalChannelReconfiguration-r13
PhysicalChannelReconfiguration-r13-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-14
physicalChannelReconfiguration-r13-add-ext
BIT STRING OPTIONAL,
@@ -6038,7 +6038,7 @@ PhysicalSharedChannelAllocation-r3-IEs ::= SEQUENCE {
pusch-CapacityAllocationInfo PUSCH-CapacityAllocationInfo OPTIONAL,
pdsch-CapacityAllocationInfo PDSCH-CapacityAllocationInfo OPTIONAL,
-- TABULAR: If confirmRequest is not present, the default value "No Confirm"
- -- shall be used as specified in 10.2.25.
+ -- shall be used as specified in 10.2.25.
confirmRequest ENUMERATED {
confirmPDSCH, confirmPUSCH } OPTIONAL,
trafficVolumeReportRequest INTEGER (0..255) OPTIONAL,
@@ -6053,7 +6053,7 @@ PhysicalSharedChannelAllocation-r4-IEs ::= SEQUENCE {
pusch-CapacityAllocationInfo PUSCH-CapacityAllocationInfo-r4 OPTIONAL,
pdsch-CapacityAllocationInfo PDSCH-CapacityAllocationInfo-r4 OPTIONAL,
-- TABULAR: If confirmRequest is not present, the default value "No Confirm"
- -- shall be used as specified in 10.2.25.
+ -- shall be used as specified in 10.2.25.
confirmRequest ENUMERATED {
confirmPDSCH, confirmPUSCH } OPTIONAL,
trafficVolumeReportRequest INTEGER (0..255) OPTIONAL,
@@ -6120,10 +6120,10 @@ RadioBearerReconfiguration ::= CHOICE {
-- Container for additional R99 extensions
radioBearerReconfiguration-r3-add-ext BIT STRING OPTIONAL,
v4b0NonCriticalExtensions SEQUENCE {
- radioBearerReconfiguration-v4b0ext
+ radioBearerReconfiguration-v4b0ext
RadioBearerReconfiguration-v4b0ext-IEs,
v590NonCriticalExtensions SEQUENCE {
- radioBearerReconfiguration-v590ext
+ radioBearerReconfiguration-v590ext
RadioBearerReconfiguration-v590ext-IEs,
v5d0NonCriticalExtenstions SEQUENCE {
radioBearerReconfiguration-v5d0ext
@@ -6152,7 +6152,7 @@ RadioBearerReconfiguration ::= CHOICE {
-- Container for adding non critical extensions after freezing REL-5
radioBearerReconfiguration-r4-add-ext BIT STRING OPTIONAL,
v590NonCriticalExtensions SEQUENCE {
- radioBearerReconfiguration-v590ext
+ radioBearerReconfiguration-v590ext
RadioBearerReconfiguration-v590ext-IEs,
v5d0NonCriticalExtenstions SEQUENCE {
radioBearerReconfiguration-v5d0ext
@@ -6263,15 +6263,15 @@ RadioBearerReconfiguration ::= CHOICE {
r9 SEQUENCE {
radioBearerReconfiguration-r9
RadioBearerReconfiguration-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
radioBearerReconfiguration-r9-add-ext
BIT STRING OPTIONAL,
v950NonCriticalExtensions SEQUENCE {
- radioBearerReconfiguration-v950ext
+ radioBearerReconfiguration-v950ext
RadioBearerReconfiguration-v950ext-IEs,
v9c0NonCriticalExtensions SEQUENCE {
- radioBearerReconfiguration-v9c0ext
+ radioBearerReconfiguration-v9c0ext
RadioBearerReconfiguration-v9c0ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -6281,12 +6281,12 @@ RadioBearerReconfiguration ::= CHOICE {
r10 SEQUENCE {
radioBearerReconfiguration-r10
RadioBearerReconfiguration-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
radioBearerReconfiguration-r10-add-ext
BIT STRING OPTIONAL,
v9c0NonCriticalExtensions SEQUENCE {
- radioBearerReconfiguration-v9c0ext
+ radioBearerReconfiguration-v9c0ext
RadioBearerReconfiguration-v9c0ext-IEs,
vaa0NonCriticalExtensions SEQUENCE {
radioBearerReconfiguration-vaa0ext
@@ -6303,7 +6303,7 @@ RadioBearerReconfiguration ::= CHOICE {
r11 SEQUENCE {
radioBearerReconfiguration-r11
RadioBearerReconfiguration-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
radioBearerReconfiguration-r11-add-ext
BIT STRING OPTIONAL,
@@ -6313,7 +6313,7 @@ RadioBearerReconfiguration ::= CHOICE {
r12 SEQUENCE {
radioBearerReconfiguration-r12
RadioBearerReconfiguration-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
radioBearerReconfiguration-r12-add-ext
BIT STRING OPTIONAL,
@@ -6323,7 +6323,7 @@ RadioBearerReconfiguration ::= CHOICE {
r13 SEQUENCE {
radioBearerReconfiguration-r13
RadioBearerReconfiguration-r13-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-14
radioBearerReconfiguration-r13-add-ext
BIT STRING OPTIONAL,
@@ -6333,7 +6333,7 @@ RadioBearerReconfiguration ::= CHOICE {
r14 SEQUENCE {
radioBearerReconfiguration-r14
RadioBearerReconfiguration-r14-IEs,
- -- Container for adding non critical
+ -- Container for adding non critical
-- extensions after freezing REL-15
radioBearerReconfiguration-r14-add-ext
BIT STRING OPTIONAL,
@@ -6498,7 +6498,7 @@ RadioBearerReconfiguration-r5-IEs ::= SEQUENCE {
activationTime ActivationTime OPTIONAL,
new-U-RNTI U-RNTI OPTIONAL,
new-C-RNTI C-RNTI OPTIONAL,
- -- The IE "new-DSCH-RNTI" should not be included in FDD mode, and if received
+ -- The IE "new-DSCH-RNTI" should not be included in FDD mode, and if received
-- the UE behaviour is unspecified
new-DSCH-RNTI DSCH-RNTI OPTIONAL,
new-H-RNTI H-RNTI OPTIONAL,
@@ -7402,7 +7402,7 @@ RadioBearerReconfiguration-r14-IEs ::= SEQUENCE {
sps-Information-TDD128 SPS-Information-TDD128-r8 OPTIONAL,
mu-MIMO-Info-TDD128 MU-MIMO-Info-TDD128 OPTIONAL,
nonrectResAllocInd-TDD128 Non-rectResAllocInd-TDD128 OPTIONAL,
- nonrectResSpecTSset-TDD128 Non-rectResSpecTSset-TDD128 OPTIONAL,
+ nonrectResSpecTSset-TDD128 Non-rectResSpecTSset-TDD128 OPTIONAL,
hs-scch-DrxCellfach-info HS-SCCH-DrxCellfach-info OPTIONAL,
-- MBMS IEs
mbms-PL-ServiceRestrictInfo MBMS-PL-ServiceRestrictInfo-r6 OPTIONAL,
@@ -7414,7 +7414,7 @@ RadioBearerReconfiguration-LaterCriticalExtensions-r15-IEs ::= SEQUENCE {
r15 SEQUENCE {
radioBearerReconfiguration-r15
RadioBearerReconfiguration-r15-IEs,
- -- Container for adding non critical
+ -- Container for adding non critical
-- extensions after freezing REL-16
radioBearerReconfiguration-r15-add-ext
BIT STRING OPTIONAL,
@@ -7522,7 +7522,7 @@ RadioBearerReconfiguration-r15-IEs ::= SEQUENCE {
sps-Information-TDD128 SPS-Information-TDD128-r8 OPTIONAL,
mu-MIMO-Info-TDD128 MU-MIMO-Info-TDD128 OPTIONAL,
nonrectResAllocInd-TDD128 Non-rectResAllocInd-TDD128 OPTIONAL,
- nonrectResSpecTSset-TDD128 Non-rectResSpecTSset-TDD128 OPTIONAL,
+ nonrectResSpecTSset-TDD128 Non-rectResSpecTSset-TDD128 OPTIONAL,
hs-scch-DrxCellfach-info HS-SCCH-DrxCellfach-info OPTIONAL,
simplified-HS-SCCH-type1-operation ENUMERATED { true } OPTIONAL,
@@ -7674,7 +7674,7 @@ RadioBearerRelease ::= CHOICE {
v7f0NonCriticalExtensions SEQUENCE {
radioBearerRelease-v7f0ext RadioBearerRelease-v7f0ext-IEs,
v7g0NonCriticalExtensions SEQUENCE {
- radioBearerRelease-v7g0ext
+ radioBearerRelease-v7g0ext
RadioBearerRelease-v7g0ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -7695,12 +7695,12 @@ RadioBearerRelease ::= CHOICE {
radioBearerRelease-v890ext
RadioBearerRelease-v890ext-IEs,
v7g0NonCriticalExtensions SEQUENCE {
- radioBearerRelease-v7g0ext
+ radioBearerRelease-v7g0ext
RadioBearerRelease-v7g0ext-IEs,
v8a0NonCriticalExtensions SEQUENCE {
radioBearerRelease-v8a0ext
RadioBearerRelease-v8a0ext-IEs,
- nonCriticalExtensions
+ nonCriticalExtensions
SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -7711,7 +7711,7 @@ RadioBearerRelease ::= CHOICE {
criticalExtensions CHOICE {
r9 SEQUENCE {
radioBearerRelease-r9 RadioBearerRelease-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
radioBearerRelease-r9-add-ext BIT STRING OPTIONAL,
v950NonCriticalExtensions SEQUENCE {
@@ -7728,7 +7728,7 @@ RadioBearerRelease ::= CHOICE {
criticalExtensions CHOICE {
r10 SEQUENCE {
radioBearerRelease-r10 RadioBearerRelease-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
radioBearerRelease-r10-add-ext BIT STRING OPTIONAL,
v9c0NonCriticalExtensions SEQUENCE {
@@ -7742,35 +7742,35 @@ RadioBearerRelease ::= CHOICE {
},
criticalExtensions CHOICE {
r11 SEQUENCE {
- radioBearerRelease-r11
+ radioBearerRelease-r11
RadioBearerRelease-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
- radioBearerRelease-r11-add-ext
+ radioBearerRelease-r11-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r12 SEQUENCE {
- radioBearerRelease-r12
+ radioBearerRelease-r12
RadioBearerRelease-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
- radioBearerRelease-r11-add-ext
+ radioBearerRelease-r11-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
criticalExtensions CHOICE {
r13 SEQUENCE {
- radioBearerRelease-r13
+ radioBearerRelease-r13
RadioBearerRelease-r13-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-14
- radioBearerRelease-r13-add-ext
+ radioBearerRelease-r13-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
- laterCriticalExtensions
+ laterCriticalExtensions
RadioBearerRelease-LaterCriticalExtensions-r15-IEs
}
}
@@ -8802,7 +8802,7 @@ RadioBearerSetup ::= CHOICE {
criticalExtensions CHOICE {
r9 SEQUENCE {
radioBearerSetup-r9 RadioBearerSetup-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
radioBearerSetup-r9-add-ext BIT STRING OPTIONAL,
v950NonCriticalExtensions SEQUENCE {
@@ -8816,7 +8816,7 @@ RadioBearerSetup ::= CHOICE {
criticalExtensions CHOICE {
r10 SEQUENCE {
radioBearerSetup-r10 RadioBearerSetup-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
radioBearerSetup-r10-add-ext BIT STRING OPTIONAL,
v9c0NonCriticalExtensions SEQUENCE {
@@ -8831,7 +8831,7 @@ RadioBearerSetup ::= CHOICE {
criticalExtensions CHOICE {
r11 SEQUENCE {
radioBearerSetup-r11 RadioBearerSetup-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
radioBearerSetup-r11-add-ext BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -8839,9 +8839,9 @@ RadioBearerSetup ::= CHOICE {
criticalExtensions CHOICE {
r12 SEQUENCE {
radioBearerSetup-r12 RadioBearerSetup-r12-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-13
- radioBearerSetup-r13-add-ext
+ radioBearerSetup-r13-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
@@ -8850,7 +8850,7 @@ RadioBearerSetup ::= CHOICE {
radioBearerSetup-r13 RadioBearerSetup-r13-IEs,
-- Container for adding non critical extensions
-- after freezing REL-14
- radioBearerSetup-r13-add-ext
+ radioBearerSetup-r13-add-ext
BIT STRING OPTIONAL,
nonCriticalExtensions SEQUENCE {} OPTIONAL
},
@@ -9612,9 +9612,9 @@ RadioBearerSetup-r13-IEs ::= SEQUENCE {
ul-AddReconfTransChInfoList UL-AddReconfTransChInfoList-r8 OPTIONAL,
dl-CommonTransChInfo DL-CommonTransChInfo-r4 OPTIONAL,
dl-DeletedTransChInfoList DL-DeletedTransChInfoList-r7 OPTIONAL,
- dl-AddReconfTransChInfoList DL-AddReconfTransChInfoList-r13 OPTIONAL,
+ dl-AddReconfTransChInfoList DL-AddReconfTransChInfoList-r13 OPTIONAL,
-- Retrievable configuration
- retrievableConfigInfo RetrievableConfigInfo OPTIONAL,
+ retrievableConfigInfo RetrievableConfigInfo OPTIONAL,
-- Physical channel IEs
frequencyInfo FrequencyInfo OPTIONAL,
multi-frequencyInfo Multi-frequencyInfo-LCR-r7 OPTIONAL,
@@ -9699,9 +9699,9 @@ RadioBearerSetup-r15-IEs ::= SEQUENCE {
ul-AddReconfTransChInfoList UL-AddReconfTransChInfoList-r8 OPTIONAL,
dl-CommonTransChInfo DL-CommonTransChInfo-r4 OPTIONAL,
dl-DeletedTransChInfoList DL-DeletedTransChInfoList-r7 OPTIONAL,
- dl-AddReconfTransChInfoList DL-AddReconfTransChInfoList-r13 OPTIONAL,
+ dl-AddReconfTransChInfoList DL-AddReconfTransChInfoList-r13 OPTIONAL,
-- Retrievable configuration
- retrievableConfigInfo RetrievableConfigInfo OPTIONAL,
+ retrievableConfigInfo RetrievableConfigInfo OPTIONAL,
-- Physical channel IEs
frequencyInfo FrequencyInfo OPTIONAL,
multi-frequencyInfo Multi-frequencyInfo-LCR-r7 OPTIONAL,
@@ -9873,7 +9873,7 @@ RRCConnectionRelease ::= CHOICE {
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
rrcConnectionRelease-r3-add-ext BIT STRING OPTIONAL,
- v690NonCriticalExtensions SEQUENCE {
+ v690NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v690ext RRCConnectionRelease-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v770ext RRCConnectionRelease-v770ext-IEs,
@@ -9903,10 +9903,10 @@ RRCConnectionRelease ::= CHOICE {
v860NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v860ext RRCConnectionRelease-v860ext-IEs,
va40NonCriticalExtensions SEQUENCE {
- rrcConnectionRelease-va40ext
+ rrcConnectionRelease-va40ext
RRCConnectionRelease-va40ext-IEs,
vb50NonCriticalExtensions SEQUENCE {
- rrcConnectionRelease-vb50ext
+ rrcConnectionRelease-vb50ext
RRCConnectionRelease-vb50ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -9973,7 +9973,7 @@ RRCConnectionRelease-CCCH ::= CHOICE {
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
rrcConnectionRelease-CCCH-r3-add-ext BIT STRING OPTIONAL,
- v690NonCriticalExtensions SEQUENCE {
+ v690NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v690ext RRCConnectionRelease-CCCH-v690ext-IEs,
v860NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v860ext RRCConnectionRelease-CCCH-v860ext-IEs,
@@ -9994,12 +9994,12 @@ RRCConnectionRelease-CCCH ::= CHOICE {
v4d0NonCriticalExtensions SEQUENCE {
-- Container for adding non critical extensions after freezing REL-5
rrcConnectionRelease-CCCH-r4-add-ext BIT STRING OPTIONAL,
- v690NonCriticalExtensions SEQUENCE {
+ v690NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v690ext RRCConnectionRelease-CCCH-v690ext-IEs,
v860NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v860ext RRCConnectionRelease-CCCH-v860ext-IEs,
va40NonCriticalExtensions SEQUENCE {
- rrcConnectionRelease-va40ext
+ rrcConnectionRelease-va40ext
RRCConnectionRelease-va40ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -10008,9 +10008,9 @@ RRCConnectionRelease-CCCH ::= CHOICE {
} OPTIONAL
},
criticalExtensions SEQUENCE {
- -- TABULAR: CHOICE IdentityType (U-RNTI, GroupIdentity) is replaced with the
+ -- TABULAR: CHOICE IdentityType (U-RNTI, GroupIdentity) is replaced with the
-- optional element groupIdentity, since the U-RNTI is mandatory in ASN.1.
- -- In case CHOICE IdentityType is equal to GroupIdentity the value of the U-RNTI
+ -- In case CHOICE IdentityType is equal to GroupIdentity the value of the U-RNTI
-- shall be ignored by a UE complying with this version of the message.
groupIdentity SEQUENCE ( SIZE (1 .. maxURNTI-Group) ) OF
GroupReleaseInformation OPTIONAL,
@@ -10019,16 +10019,16 @@ RRCConnectionRelease-CCCH ::= CHOICE {
rrcConnectionRelease-CCCH-r5 RRCConnectionRelease-CCCH-r5-IEs,
-- Container for adding non critical extensions after freezing REL-6
rrcConnectionRelease-CCCH-r5-add-ext BIT STRING OPTIONAL,
- v690NonCriticalExtensions SEQUENCE {
+ v690NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v690ext RRCConnectionRelease-CCCH-v690ext-IEs,
v860NonCriticalExtensions SEQUENCE {
rrcConnectionRelease-v860ext
RRCConnectionRelease-CCCH-v860ext-IEs,
va40NonCriticalExtensions SEQUENCE {
- rrcConnectionRelease-va40ext
- RRCConnectionRelease-va40ext-IEs,
+ rrcConnectionRelease-va40ext
+ RRCConnectionRelease-va40ext-IEs,
vd20NonCriticalExtensions SEQUENCE {
- rrcConnectionRelease-vd20ext
+ rrcConnectionRelease-vd20ext
RRCConnectionRelease-CCCH-vd20ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -10140,7 +10140,7 @@ RRCConnectionRequest ::= SEQUENCE {
rrcConnectionRequest-v940ext
RRCConnectionRequest-v940ext-IEs,
va40NonCriticalExtensions
- RRCConnectionRequest-NonCriticalExts-va40-IEs
+ RRCConnectionRequest-NonCriticalExts-va40-IEs
OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -10285,9 +10285,9 @@ RRCConnectionSetup ::= CHOICE {
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
rrcConnectionSetup-r3-add-ext BIT STRING OPTIONAL,
- v4b0NonCriticalExtensions SEQUENCE {
+ v4b0NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-v4b0ext RRCConnectionSetup-v4b0ext-IEs,
- v590NonCriticalExtensions SEQUENCE {
+ v590NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-v590ext RRCConnectionSetup-v590ext-IEs,
v690NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-v690ext RRCConnectionSetup-v690ext-IEs,
@@ -10306,7 +10306,7 @@ RRCConnectionSetup ::= CHOICE {
v4d0NonCriticalExtensions SEQUENCE {
-- Container for adding non critical extensions after freezing REL-5
rrcConnectionSetup-r4-add-ext BIT STRING OPTIONAL,
- v590NonCriticalExtensions SEQUENCE {
+ v590NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-v590ext RRCConnectionSetup-v590ext-IEs,
v690NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-v690ext RRCConnectionSetup-v690ext-IEs,
@@ -10369,7 +10369,7 @@ RRCConnectionSetup ::= CHOICE {
criticalExtensions CHOICE {
r9 SEQUENCE {
rrcConnectionSetup-r9 RRCConnectionSetup-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
rrcConnectionSetup-r9-add-ext
BIT STRING OPTIONAL,
@@ -10381,10 +10381,10 @@ RRCConnectionSetup ::= CHOICE {
criticalExtensions CHOICE {
r10 SEQUENCE {
rrcConnectionSetup-r10 RRCConnectionSetup-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
rrcConnectionSetup-r10-add-ext
- BIT STRING OPTIONAL,
+ BIT STRING OPTIONAL,
vaj0NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-vaj0ext RRCConnectionSetup-vaj0ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -10392,12 +10392,12 @@ RRCConnectionSetup ::= CHOICE {
},
criticalExtensions CHOICE {
r11 SEQUENCE {
- rrcConnectionSetup-r11
+ rrcConnectionSetup-r11
RRCConnectionSetup-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
rrcConnectionSetup-r11-add-ext
- BIT STRING OPTIONAL,
+ BIT STRING OPTIONAL,
vaj0NonCriticalExtensions SEQUENCE {
rrcConnectionSetup-vaj0ext RRCConnectionSetup-vaj0ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
@@ -10405,9 +10405,9 @@ RRCConnectionSetup ::= CHOICE {
},
criticalExtensions CHOICE {
r12 SEQUENCE {
- rrcConnectionSetup-r12
+ rrcConnectionSetup-r12
RRCConnectionSetup-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
rrcConnectionSetup-r12-add-ext
BIT STRING OPTIONAL,
@@ -11071,7 +11071,7 @@ RRCConnectionSetupComplete-r3-add-ext-IEs ::= SEQUENCE {
va40NonCriticalExtensions SEQUENCE {
rrcConnectionSetupCompleteBand-va40ext
RRCConnectionSetupCompleteBand-va40ext-IEs,
- nonCriticalExtensions SEQUENCE {} OPTIONAL
+ nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -11646,13 +11646,13 @@ TransportChannelReconfiguration ::= CHOICE {
-- Container for additional R99 extensions
transportChannelReconfiguration-r3-add-ext BIT STRING OPTIONAL,
v4b0NonCriticalExtensions SEQUENCE {
- transportChannelReconfiguration-v4b0ext
+ transportChannelReconfiguration-v4b0ext
TransportChannelReconfiguration-v4b0ext-IEs,
v590NonCriticalExtensions SEQUENCE {
- transportChannelReconfiguration-v590ext
+ transportChannelReconfiguration-v590ext
TransportChannelReconfiguration-v590ext-IEs,
v690NonCriticalExtensions SEQUENCE {
- transportChannelReconfiguration-v690ext
+ transportChannelReconfiguration-v690ext
TransportChannelReconfiguration-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
transportChannelReconfiguration-v770ext
@@ -11675,10 +11675,10 @@ TransportChannelReconfiguration ::= CHOICE {
-- Container for adding non critical extensions after freezing REL-5
transportChannelReconfiguration-r4-add-ext BIT STRING OPTIONAL,
v590NonCriticalExtensions SEQUENCE {
- transportChannelReconfiguration-v590ext
+ transportChannelReconfiguration-v590ext
TransportChannelReconfiguration-v590ext-IEs,
v690NonCriticalExtensions SEQUENCE {
- transportChannelReconfiguration-v690ext
+ transportChannelReconfiguration-v690ext
TransportChannelReconfiguration-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
transportChannelReconfiguration-v770ext
@@ -11696,7 +11696,7 @@ TransportChannelReconfiguration ::= CHOICE {
-- Container for adding non critical extensions after freezing REL-6
transportChannelReconfiguration-r5-add-ext BIT STRING OPTIONAL,
v690NonCriticalExtensions SEQUENCE {
- transportChannelReconfiguration-v690ext
+ transportChannelReconfiguration-v690ext
TransportChannelReconfiguration-v690ext-IEs,
v770NonCriticalExtensions SEQUENCE {
transportChannelReconfiguration-v770ext
@@ -11767,7 +11767,7 @@ TransportChannelReconfiguration ::= CHOICE {
v8a0NonCriticalExtensions SEQUENCE {
transportChannelReconfiguration-v8a0ext
TransportChannelReconfiguration-v8a0ext-IEs,
- nonCriticalExtensions
+ nonCriticalExtensions
SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -11779,7 +11779,7 @@ TransportChannelReconfiguration ::= CHOICE {
r9 SEQUENCE {
transportChannelReconfiguration-r9
TransportChannelReconfiguration-r9-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-10
transportChannelReconfiguration-r9-add-ext
BIT STRING OPTIONAL,
@@ -11797,7 +11797,7 @@ TransportChannelReconfiguration ::= CHOICE {
r10 SEQUENCE {
transportChannelReconfiguration-r10
TransportChannelReconfiguration-r10-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-11
transportChannelReconfiguration-r10-add-ext
BIT STRING OPTIONAL,
@@ -11815,7 +11815,7 @@ TransportChannelReconfiguration ::= CHOICE {
r11 SEQUENCE {
transportChannelReconfiguration-r11
TransportChannelReconfiguration-r11-IEs,
- -- Container for adding non critical extensions after
+ -- Container for adding non critical extensions after
-- freezing REL-12
transportChannelReconfiguration-r11-add-ext
BIT STRING OPTIONAL,
@@ -11825,7 +11825,7 @@ TransportChannelReconfiguration ::= CHOICE {
r12 SEQUENCE {
transportChannelReconfiguration-r12
TransportChannelReconfiguration-r12-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-13
transportChannelReconfiguration-r12-add-ext
BIT STRING OPTIONAL,
@@ -11835,7 +11835,7 @@ TransportChannelReconfiguration ::= CHOICE {
r13 SEQUENCE {
transportChannelReconfiguration-r13
TransportChannelReconfiguration-r13-IEs,
- -- Container for adding non critical extensions
+ -- Container for adding non critical extensions
-- after freezing REL-14
transportChannelReconfiguration-r13-add-ext
BIT STRING OPTIONAL,
@@ -12599,7 +12599,7 @@ TransportFormatCombinationControl ::= SEQUENCE {
fdd NULL,
tdd SEQUENCE {
tfcs-ID TFCS-Identity OPTIONAL
- }
+ }
},
dpch-TFCS-InUplink TFC-Subset,
activationTimeForTFCSubset ActivationTime OPTIONAL,
@@ -12649,7 +12649,7 @@ UECapabilityEnquiry ::= CHOICE {
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
ueCapabilityEnquiry-r3-add-ext BIT STRING OPTIONAL,
- v4b0NonCriticalExtensions SEQUENCE {
+ v4b0NonCriticalExtensions SEQUENCE {
ueCapabilityEnquiry-v4b0ext UECapabilityEnquiry-v4b0ext-IEs,
v590NonCriticalExtensions SEQUENCE {
ueCapabilityEnquiry-v590ext UECapabilityEnquiry-v590ext-IEs,
@@ -12770,7 +12770,7 @@ UECapabilityInformation-r3-add-ext-IEs ::= SEQUENCE {
va40NonCriticalExtensions SEQUENCE {
ueCapabilityInformation-va40ext
UECapabilityInformation-va40ext-IEs,
- nonCriticalExtensions SEQUENCE {} OPTIONAL
+ nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
} OPTIONAL
} OPTIONAL
@@ -12978,7 +12978,7 @@ UplinkPhysicalChannelControl ::= CHOICE {
UplinkPhysicalChannelControl-r3-IEs ::= SEQUENCE {
-- User equipment IEs
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
-- Physical channel IEs
ccTrCH-PowerControlInfo CCTrCH-PowerControlInfo OPTIONAL,
timingAdvance UL-TimingAdvanceControl OPTIONAL,
@@ -13173,7 +13173,7 @@ URAUpdateConfirm ::= CHOICE {
URAUpdateConfirm-r3-IEs ::= SEQUENCE {
-- User equipment IEs
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
integrityProtectionModeInfo IntegrityProtectionModeInfo OPTIONAL,
cipheringModeInfo CipheringModeInfo OPTIONAL,
new-U-RNTI U-RNTI OPTIONAL,
@@ -13317,7 +13317,7 @@ UTRANMobilityInformation ::= CHOICE {
v860NonCriticalExtensions SEQUENCE {
utranMobilityInformation-v860ext UTRANMobilityInformation-v860ext2-IEs,
vb50NonCriticalExtentions SEQUENCE {
- utranMobilityInformation-vb50ext
+ utranMobilityInformation-vb50ext
UTRANMobilityInformation-vb50ext-IEs,
nonCriticalExtensions SEQUENCE {} OPTIONAL
} OPTIONAL
@@ -13356,7 +13356,7 @@ UTRANMobilityInformation ::= CHOICE {
UTRANMobilityInformation-r3-IEs ::= SEQUENCE {
-- User equipment IEs
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
integrityProtectionModeInfo IntegrityProtectionModeInfo OPTIONAL,
cipheringModeInfo CipheringModeInfo OPTIONAL,
new-U-RNTI U-RNTI OPTIONAL,
@@ -13520,7 +13520,7 @@ UTRANMobilityInformation-r13-IEs ::= SEQUENCE {
UTRANMobilityInformationConfirm ::= SEQUENCE {
-- User equipment IEs
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
ul-IntegProtActivationInfo IntegrityProtActivationInfo OPTIONAL,
-- Radio bearer IEs
count-C-ActivationTime ActivationTime OPTIONAL,
@@ -13559,7 +13559,7 @@ UTRANMobilityInformationConfirm-va40ext-IEs ::= SEQUENCE {
UTRANMobilityInformationFailure ::= SEQUENCE {
-- UE information elements
- rrc-TransactionIdentifier RRC-TransactionIdentifier,
+ rrc-TransactionIdentifier RRC-TransactionIdentifier,
failureCause FailureCauseWithProtErr,
laterNonCriticalExtensions SEQUENCE {
-- Container for additional R99 extensions
@@ -13780,7 +13780,7 @@ MBMSNeighbouringCellPTMRBInformation ::= SEQUENCE {
}
MBMSNeighbouringCellPTMRBInformation-v770ext-IEs ::= SEQUENCE {
- -- The "choice_PhyCH" in the tabular is realized by using the following IE due to the
+ -- The "choice_PhyCH" in the tabular is realized by using the following IE due to the
-- constraint in the ASN.1 implementation.
neighbouringCellSCCPCHList MBMS-NeighbouringCellSCCPCHList-v770ext OPTIONAL
}
@@ -13919,13 +13919,13 @@ UEInformationResponse-vb50ext-IEs ::= SEQUENCE {
}
UEInformationResponse-vbb0ext-IEs ::= SEQUENCE {
- connectionEstablishmentFailureReport
+ connectionEstablishmentFailureReport
ConnectionEstablishmentFailureReport-r11 OPTIONAL
}
UEInformationResponse-vc50ext-IEs ::= SEQUENCE {
loggedMeasReport LoggedMeasReport-vc50ext OPTIONAL,
- connectionEstablishmentFailureReport
+ connectionEstablishmentFailureReport
ConnectionEstablishmentFailureReport-vc50ext OPTIONAL
}
diff --git a/epan/dissectors/asn1/rrc/packet-rrc-template.c b/epan/dissectors/asn1/rrc/packet-rrc-template.c
index 74d934c313..6beca58356 100644
--- a/epan/dissectors/asn1/rrc/packet-rrc-template.c
+++ b/epan/dissectors/asn1/rrc/packet-rrc-template.c
@@ -10,7 +10,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*
- * Ref: 3GPP TS 25.331 V16.1.0 (2020-09)
+ * Ref: 3GPP TS 25.331 V17.1.0 (2022-06)
*/
/**
@@ -312,7 +312,7 @@ static int dissect_SysInfoType22_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tr
#include "packet-rrc-val.h"
/* Initialize the protocol and registered fields */
-int proto_rrc = -1;
+int proto_rrc;
static int hf_test;
static int hf_urnti;
static int hf_urnti_new;
@@ -320,31 +320,31 @@ static int hf_urnti_current;
#include "packet-rrc-hf.c"
/* Initialize the subtree pointers */
-static int ett_rrc = -1;
+static int ett_rrc;
#include "packet-rrc-ett.c"
-static gint ett_rrc_eutraFeatureGroupIndicators = -1;
-static gint ett_rrc_cn_CommonGSM_MAP_NAS_SysInfo = -1;
-static gint ett_rrc_ims_info = -1;
-static gint ett_rrc_cellIdentity = -1;
-static gint ett_rrc_sib_data_var = -1;
+static gint ett_rrc_eutraFeatureGroupIndicators;
+static gint ett_rrc_cn_CommonGSM_MAP_NAS_SysInfo;
+static gint ett_rrc_ims_info;
+static gint ett_rrc_cellIdentity;
+static gint ett_rrc_sib_data_var;
-static expert_field ei_rrc_no_hrnti = EI_INIT;
+static expert_field ei_rrc_no_hrnti;
/* Global variables */
static proto_tree *top_tree;
-static int hf_rrc_eutra_feat_group_ind_1 = -1;
-static int hf_rrc_eutra_feat_group_ind_2 = -1;
-static int hf_rrc_eutra_feat_group_ind_3 = -1;
-static int hf_rrc_eutra_feat_group_ind_4 = -1;
-static int hf_rrc_ims_info_atgw_trans_det_cont_type = -1;
-static int hf_rrc_ims_info_atgw_udp_port = -1;
-static int hf_rrc_ims_info_atgw_ipv4 = -1;
-static int hf_rrc_ims_info_atgw_ipv6 = -1;
-static int hf_rrc_cellIdentity_rnc_id = -1;
-static int hf_rrc_cellIdentity_c_id = -1;
+static int hf_rrc_eutra_feat_group_ind_1;
+static int hf_rrc_eutra_feat_group_ind_2;
+static int hf_rrc_eutra_feat_group_ind_3;
+static int hf_rrc_eutra_feat_group_ind_4;
+static int hf_rrc_ims_info_atgw_trans_det_cont_type;
+static int hf_rrc_ims_info_atgw_udp_port;
+static int hf_rrc_ims_info_atgw_ipv4;
+static int hf_rrc_ims_info_atgw_ipv6;
+static int hf_rrc_cellIdentity_rnc_id;
+static int hf_rrc_cellIdentity_c_id;
static const true_false_string rrc_eutra_feat_group_ind_1_val = {
"UTRA CELL_PCH to EUTRA RRC_IDLE cell reselection - Supported",
@@ -430,6 +430,11 @@ get_or_create_cipher_info(fp_info *fpinf, rlc_info *rlcinf) {
cipher_info->seq_no[i][0] = -1;
cipher_info->seq_no[i][1] = -1;
}
+
+ /* Set algorithms to 'unknown' since 0s are valid values */
+ cipher_info->ciphering_algorithm = -1;
+ cipher_info->integrity_algorithm = -1;
+
g_tree_insert(rrc_ciph_info_tree, GINT_TO_POINTER((gint)rlcinf->ueid[fpinf->cur_tb]), cipher_info);
}
return cipher_info;
diff --git a/epan/dissectors/asn1/rrc/packet-rrc-template.h b/epan/dissectors/asn1/rrc/packet-rrc-template.h
index 009bbefd0b..2b38d2734d 100644
--- a/epan/dissectors/asn1/rrc/packet-rrc-template.h
+++ b/epan/dissectors/asn1/rrc/packet-rrc-template.h
@@ -54,8 +54,8 @@ typedef struct rrc_ciphering_info
int seq_no[31][2]; /*Indicates for each Rbid when ciphering starts - Indexers are [BearerID][Direction]*/
GTree * /*guint32*/ start_cs; /*Start value for CS counter*/
GTree * /*guint32*/ start_ps; /*Start value for PS counter*/
- guint32 conf_algo_indicator; /*Indicates which type of ciphering algorithm used*/
- guint32 int_algo_indiccator; /*Indicates which type of integrity algorithm used*/
+ gint32 ciphering_algorithm; /*Indicates which type of ciphering algorithm used*/
+ gint32 integrity_algorithm; /*Indicates which type of integrity algorithm used*/
guint32 setup_frame[2]; /*Store which frame contained this information - Indexer is [Direction]*/
guint32 ps_conf_counters[31][2]; /*This should also be made for CS*/
diff --git a/epan/dissectors/asn1/rrc/rrc.cnf b/epan/dissectors/asn1/rrc/rrc.cnf
index f0946fb854..fc68ecb978 100644
--- a/epan/dissectors/asn1/rrc/rrc.cnf
+++ b/epan/dissectors/asn1/rrc/rrc.cnf
@@ -817,7 +817,6 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
proto_tree_add_bits_item(subtree, hf_rrc_eutra_feat_group_ind_3, eutraFeatureGroupIndicators_tvb, curr_bit_offset, 1, ENC_BIG_ENDIAN);
curr_bit_offset++;
proto_tree_add_bits_item(subtree, hf_rrc_eutra_feat_group_ind_4, eutraFeatureGroupIndicators_tvb, curr_bit_offset, 1, ENC_BIG_ENDIAN);
- curr_bit_offset++;
}
#.FN_BODY PLMN-Identity
@@ -829,7 +828,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
/* Reset the digits string in the private data struct */
/* Maximal length: 7 = 3 digits MCC + 3 digits MNC + trailing '\0' */
- mcc_mnc_strbuf = wmem_strbuf_sized_new(actx->pinfo->pool,7,7);
+ mcc_mnc_strbuf = wmem_strbuf_new_sized(actx->pinfo->pool,7);
private_data_set_digits_strbuf(actx, mcc_mnc_strbuf);
/* Reset parsing failure flag*/
private_data_set_digits_strbuf_parsing_failed_flag(actx, FALSE);
@@ -847,7 +846,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
if(string_len >= 3)
{
/* 3 MCC digits were found, keep for later in case MCC is missing in other PLMN ids*/
- mcc_strbuf = wmem_strbuf_sized_new(actx->pinfo->pool,4,4);
+ mcc_strbuf = wmem_strbuf_new_sized(actx->pinfo->pool,4);
wmem_strbuf_append_c(mcc_strbuf,mcc_mnc_string[0]);
wmem_strbuf_append_c(mcc_strbuf,mcc_mnc_string[1]);
wmem_strbuf_append_c(mcc_strbuf,mcc_mnc_string[2]);
@@ -872,7 +871,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
/* Reset the digits string in the private data struct */
/* Maximal length: 7 = 3 digits MCC + 3 digits MNC + trailing '\0' */
- mcc_mnc_strbuf = wmem_strbuf_sized_new(actx->pinfo->pool,7,7);
+ mcc_mnc_strbuf = wmem_strbuf_new_sized(actx->pinfo->pool,7);
private_data_set_digits_strbuf(actx, mcc_mnc_strbuf);
/* Reset parsing failure flag*/
private_data_set_digits_strbuf_parsing_failed_flag(actx, FALSE);
@@ -889,7 +888,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
if (string_len > 3) {
/* 3 MCC digits and at least 1 MNC digit were found, keep MCC for later
in case it's missing in other PLMN ids*/
- temp_strbuf = wmem_strbuf_sized_new(actx->pinfo->pool,4,4);
+ temp_strbuf = wmem_strbuf_new_sized(actx->pinfo->pool,4);
wmem_strbuf_append_c(temp_strbuf,mcc_mnc_string[0]);
wmem_strbuf_append_c(temp_strbuf,mcc_mnc_string[1]);
wmem_strbuf_append_c(temp_strbuf,mcc_mnc_string[2]);
@@ -903,7 +902,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
if(last_mcc_strbuf)
{
/* Concat MCC and MNC in temp buffer */
- temp_strbuf = wmem_strbuf_sized_new(actx->pinfo->pool,7,7);
+ temp_strbuf = wmem_strbuf_new_sized(actx->pinfo->pool,7);
wmem_strbuf_append_printf(temp_strbuf,"%%s",wmem_strbuf_get_str(last_mcc_strbuf));
wmem_strbuf_append_printf(temp_strbuf,"%%s",mcc_mnc_string);
/* Update length of recovered MCC-MNC pair */
@@ -930,7 +929,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
tvbuff_t* imsi_tvb;
/* Reset the digits string in the private data struct */
- imsi_strbuf = wmem_strbuf_sized_new(actx->pinfo->pool,16,16);
+ imsi_strbuf = wmem_strbuf_new_sized(actx->pinfo->pool,16);
private_data_set_digits_strbuf(actx, imsi_strbuf);
/* Reset parsing failure flag*/
private_data_set_digits_strbuf_parsing_failed_flag(actx, FALSE);
@@ -1141,7 +1140,7 @@ HandoverFromUTRANCommand-GSM-r6-IEs/gsm-message/single-GSM-Message single-GSM-Me
}
#.TYPE_ATTR
-HNBName TYPE=FT_STRING DISPLAY=STR_UNICODE
+HNBName TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY HNBName VAL_PTR = &hnbname_tvb HF_INDEX = -1
tvbuff_t *hnbname_tvb = NULL;
@@ -1152,7 +1151,8 @@ HNBName TYPE=FT_STRING DISPLAY=STR_UNICODE
#.FN_BODY CN-DomainIdentity VAL_PTR = &nas_sys_info
guint32 nas_sys_info;
%(DEFAULT_BODY)s
- col_append_fstr(actx->pinfo->cinfo, COL_INFO, "(%%s)", val_to_str_const(nas_sys_info,rrc_CN_DomainIdentity_vals,"Unknown"));
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, "(%%s)",
+ val_to_str_const(nas_sys_info,rrc_CN_DomainIdentity_vals, "Unknown"));
nas_sys_info++; /* CS = 0, PS = 1 but the enum defines 0 as Unknown and CS = 1, PS = 2 */
private_data_set_cn_domain(actx, (enum nas_sys_info_gsm_map) nas_sys_info);
@@ -1314,7 +1314,7 @@ HNBName TYPE=FT_STRING DISPLAY=STR_UNICODE
/* Finding FP conversation info */
p_conv = (conversation_t *)find_conversation(actx->pinfo->num, &actx->pinfo->net_dst, &actx->pinfo->net_src,
- conversation_pt_to_endpoint_type(actx->pinfo->ptype),
+ conversation_pt_to_conversation_type(actx->pinfo->ptype),
actx->pinfo->destport, actx->pinfo->srcport, NO_ADDR_B);
/* If the current FP channel is FACH, Adding the C-RNTI / U-RNTI match to the FACH's RNTIs map*/
@@ -1531,6 +1531,54 @@ guint32 rlc_ciphering_sqn;
%(DEFAULT_BODY)s
private_data_set_rlc_ciphering_sqn(actx, rlc_ciphering_sqn);
+#.FN_BODY CipheringAlgorithm VAL_PTR = &ciphering_algo
+ rrc_ciphering_info *ciphering_info;
+ gint32 ciphering_algo;
+
+%(DEFAULT_BODY)s
+
+ ciphering_info = private_data_get_ciphering_info(actx);
+ if (ciphering_info == NULL) {
+ return offset;
+ }
+ ciphering_info->ciphering_algorithm = ciphering_algo;
+
+#.FN_BODY CipheringAlgorithm-r7 VAL_PTR = &ciphering_algo
+ rrc_ciphering_info *ciphering_info;
+ gint32 ciphering_algo;
+
+%(DEFAULT_BODY)s
+
+ ciphering_info = private_data_get_ciphering_info(actx);
+ if (ciphering_info == NULL) {
+ return offset;
+ }
+ ciphering_info->ciphering_algorithm = ciphering_algo;
+
+#.FN_BODY IntegrityProtectionAlgorithm VAL_PTR = &integrity_algo
+ rrc_ciphering_info *ciphering_info;
+ gint32 integrity_algo;
+
+%(DEFAULT_BODY)s
+
+ ciphering_info = private_data_get_ciphering_info(actx);
+ if (ciphering_info == NULL) {
+ return offset;
+ }
+ ciphering_info->integrity_algorithm = integrity_algo;
+
+#.FN_BODY IntegrityProtectionAlgorithm-r7 VAL_PTR = &integrity_algo
+ rrc_ciphering_info *ciphering_info;
+ gint32 integrity_algo;
+
+%(DEFAULT_BODY)s
+
+ ciphering_info = private_data_get_ciphering_info(actx);
+ if (ciphering_info == NULL) {
+ return offset;
+ }
+ ciphering_info->integrity_algorithm = integrity_algo;
+
#.FN_BODY DL-DCCH-MessageType VAL_PTR = &msg_type
%(DEFAULT_BODY)s
@@ -1552,7 +1600,7 @@ private_data_set_rlc_ciphering_sqn(actx, rlc_ciphering_sqn);
guint32 value;
%(DEFAULT_BODY)s
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [cause=%%s]",
- val_to_str(value, rrc_ReleaseCause_vals, "Unknown"));
+ val_to_str_const(value, rrc_ReleaseCause_vals, "Unknown"));
#.FN_BODY MasterInformationBlock
col_append_str(actx->pinfo->cinfo, COL_INFO, "MasterInformationBlock");
diff --git a/epan/dissectors/asn1/rrlp/packet-rrlp-template.c b/epan/dissectors/asn1/rrlp/packet-rrlp-template.c
index 622542f002..ae669405fa 100644
--- a/epan/dissectors/asn1/rrlp/packet-rrlp-template.c
+++ b/epan/dissectors/asn1/rrlp/packet-rrlp-template.c
@@ -36,13 +36,13 @@ void proto_register_rrlp(void);
void proto_reg_handoff_rrlp(void);
/* Initialize the protocol and registered fields */
-static int proto_rrlp = -1;
+static int proto_rrlp;
#include "packet-rrlp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_rrlp = -1;
+static gint ett_rrlp;
#include "packet-rrlp-ett.c"
/* Include constants */
diff --git a/epan/dissectors/asn1/rtse/packet-rtse-template.c b/epan/dissectors/asn1/rtse/packet-rtse-template.c
index 920fac87b7..3ac04ceefd 100644
--- a/epan/dissectors/asn1/rtse/packet-rtse-template.c
+++ b/epan/dissectors/asn1/rtse/packet-rtse-template.c
@@ -34,7 +34,7 @@ void proto_register_rtse(void);
void proto_reg_handoff_rtse(void);
/* Initialize the protocol and registered fields */
-static int proto_rtse = -1;
+static int proto_rtse;
static gboolean open_request=FALSE;
static guint32 app_proto=0;
@@ -47,33 +47,33 @@ static gboolean rtse_reassemble = TRUE;
#include "packet-rtse-hf.c"
/* Initialize the subtree pointers */
-static gint ett_rtse = -1;
+static gint ett_rtse;
#include "packet-rtse-ett.c"
-static expert_field ei_rtse_dissector_oid_not_implemented = EI_INIT;
-static expert_field ei_rtse_unknown_rtse_pdu = EI_INIT;
-static expert_field ei_rtse_abstract_syntax = EI_INIT;
+static expert_field ei_rtse_dissector_oid_not_implemented;
+static expert_field ei_rtse_unknown_rtse_pdu;
+static expert_field ei_rtse_abstract_syntax;
static dissector_table_t rtse_oid_dissector_table=NULL;
static dissector_handle_t rtse_handle = NULL;
-static gint ett_rtse_unknown = -1;
+static gint ett_rtse_unknown;
static reassembly_table rtse_reassembly_table;
-static int hf_rtse_segment_data = -1;
-static int hf_rtse_fragments = -1;
-static int hf_rtse_fragment = -1;
-static int hf_rtse_fragment_overlap = -1;
-static int hf_rtse_fragment_overlap_conflicts = -1;
-static int hf_rtse_fragment_multiple_tails = -1;
-static int hf_rtse_fragment_too_long_fragment = -1;
-static int hf_rtse_fragment_error = -1;
-static int hf_rtse_fragment_count = -1;
-static int hf_rtse_reassembled_in = -1;
-static int hf_rtse_reassembled_length = -1;
-
-static gint ett_rtse_fragment = -1;
-static gint ett_rtse_fragments = -1;
+static int hf_rtse_segment_data;
+static int hf_rtse_fragments;
+static int hf_rtse_fragment;
+static int hf_rtse_fragment_overlap;
+static int hf_rtse_fragment_overlap_conflicts;
+static int hf_rtse_fragment_multiple_tails;
+static int hf_rtse_fragment_too_long_fragment;
+static int hf_rtse_fragment_error;
+static int hf_rtse_fragment_count;
+static int hf_rtse_reassembled_in;
+static int hf_rtse_reassembled_length;
+
+static gint ett_rtse_fragment;
+static gint ett_rtse_fragments;
static const fragment_items rtse_frag_items = {
/* Fragment subtrees */
@@ -151,7 +151,7 @@ call_rtse_oid_callback(const char *oid, tvbuff_t *tvb, int offset, packet_info *
}
static int
-call_rtse_external_type_callback(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
+call_rtse_external_type_callback(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
{
const char *oid = NULL;
@@ -373,7 +373,7 @@ void proto_register_rtse(void) {
" \"Allow subdissectors to reassemble TCP streams\""
" in the TCP protocol settings.", &rtse_reassemble);
- rtse_oid_dissector_table = register_dissector_table("rtse.oid", "RTSE OID Dissectors", proto_rtse, FT_STRING, BASE_NONE);
+ rtse_oid_dissector_table = register_dissector_table("rtse.oid", "RTSE OID Dissectors", proto_rtse, FT_STRING, STRING_CASE_SENSITIVE);
}
diff --git a/epan/dissectors/asn1/rtse/rtse.cnf b/epan/dissectors/asn1/rtse/rtse.cnf
index bfaff0346b..8bf5a8c97a 100644
--- a/epan/dissectors/asn1/rtse/rtse.cnf
+++ b/epan/dissectors/asn1/rtse/rtse.cnf
@@ -120,7 +120,7 @@ RTSE-apdus
tvb_reported_length(string), ENC_T61));
#.TYPE_ATTR
-CallingSSuserReference/t61String DISPLAY = STR_UNICODE
+CallingSSuserReference/t61String DISPLAY = BASE_NONE
#.FN_PARS CommonReference
VAL_PTR=&string
@@ -181,6 +181,6 @@ CallingSSuserReference/t61String DISPLAY = STR_UNICODE
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%s)", val_to_str(reason, rtse_AbortReason_vals, "reason(%%d)"));
#.TYPE_ATTR
-AdditionalReferenceInformation DISPLAY = STR_UNICODE
+AdditionalReferenceInformation DISPLAY = BASE_NONE
#.END
diff --git a/epan/dissectors/asn1/rua/packet-rua-template.c b/epan/dissectors/asn1/rua/packet-rua-template.c
index fd3ffcd989..896d6e52b8 100644
--- a/epan/dissectors/asn1/rua/packet-rua-template.c
+++ b/epan/dissectors/asn1/rua/packet-rua-template.c
@@ -29,19 +29,19 @@
#define PSNAME "RUA"
#define PFNAME "rua"
/* Dissector to use SCTP PPID 19 or a configured SCTP port. IANA assigned port = 29169*/
-#define SCTP_PORT_RUA 29169;
+#define SCTP_PORT_RUA 29169
void proto_register_rua(void);
#include "packet-rua-val.h"
/* Initialize the protocol and registered fields */
-static int proto_rua = -1;
+static int proto_rua;
#include "packet-rua-hf.c"
/* Initialize the subtree pointers */
-static int ett_rua = -1;
+static int ett_rua;
/* initialise sub-dissector handles */
static dissector_handle_t ranap_handle = NULL;
@@ -51,7 +51,6 @@ static int ett_rua = -1;
/* Global variables */
static guint32 ProcedureCode;
static guint32 ProtocolIE_ID;
-static guint global_sctp_port = SCTP_PORT_RUA
/* Dissector tables */
static dissector_table_t rua_ies_dissector_table;
@@ -115,7 +114,6 @@ dissect_rua(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
/*--- proto_register_rua -------------------------------------------*/
void proto_register_rua(void) {
-module_t *rua_module;
/* List of fields */
@@ -147,8 +145,7 @@ module_t *rua_module;
rua_proc_sout_dissector_table = register_dissector_table("rua.proc.sout", "RUA-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_rua, FT_UINT32, BASE_DEC);
rua_proc_uout_dissector_table = register_dissector_table("rua.proc.uout", "RUA-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_rua, FT_UINT32, BASE_DEC);
- rua_module = prefs_register_protocol(proto_rua, proto_reg_handoff_rua);
- prefs_register_uint_preference(rua_module, "port", "RUA SCTP Port", "Set the port for RUA messages (Default of 29169)", 10, &global_sctp_port);
+ /* rua_module = prefs_register_protocol(proto_rua, NULL); */
}
@@ -157,19 +154,8 @@ module_t *rua_module;
void
proto_reg_handoff_rua(void)
{
- static gboolean initialized = FALSE;
- static guint sctp_port;
-
- if (!initialized) {
- ranap_handle = find_dissector_add_dependency("ranap", proto_rua);
- dissector_add_uint("sctp.ppi", RUA_PAYLOAD_PROTOCOL_ID, rua_handle);
- initialized = TRUE;
+ ranap_handle = find_dissector_add_dependency("ranap", proto_rua);
+ dissector_add_uint("sctp.ppi", RUA_PAYLOAD_PROTOCOL_ID, rua_handle);
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_RUA, rua_handle);
#include "packet-rua-dis-tab.c"
-
- } else {
- dissector_delete_uint("sctp.port", sctp_port, rua_handle);
- }
- /* Set our port number for future use */
- sctp_port = global_sctp_port;
- dissector_add_uint("sctp.port", sctp_port, rua_handle);
}
diff --git a/epan/dissectors/asn1/rua/rua.cnf b/epan/dissectors/asn1/rua/rua.cnf
index f173d7d70c..3446eb5459 100644
--- a/epan/dissectors/asn1/rua/rua.cnf
+++ b/epan/dissectors/asn1/rua/rua.cnf
@@ -39,7 +39,8 @@ ProtocolIE-Single-Container
#.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(rua_ProtocolIE_ID_vals), "unknown (%d)"));
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
+ val_to_str(ProtocolIE_ID, VALS(rua_ProtocolIE_ID_vals), "unknown (%d)"));
}
#.END
@@ -49,7 +50,7 @@ ProtocolIE-Single-Container
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
#.FN_FTR ProcedureCode
- if (strcmp(val_to_str(ProcedureCode, rua_ProcedureCode_vals, "Unknown"), "Unknown") == 0) {
+ if (strcmp(val_to_str_const(ProcedureCode, rua_ProcedureCode_vals, "Unknown"), "Unknown") == 0) {
col_set_str(actx->pinfo->cinfo, COL_INFO,
"Unknown Message ");
} /* Known Procedures should be included below and broken out as ELEMENTARY names to avoid confusion */
diff --git a/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn b/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn
index 7250d76974..6f03db3c0f 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- 9.3.5 Common Definitions
-- **************************************************************
--
diff --git a/epan/dissectors/asn1/s1ap/S1AP-Constants.asn b/epan/dissectors/asn1/s1ap/S1AP-Constants.asn
index 4452b2275d..3e111932e8 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-Constants.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- 9.3.6 Constant Definitions
-- **************************************************************
--
@@ -116,53 +116,56 @@ maxProtocolIEs INTEGER ::= 65535
--
-- **************************************************************
-maxnoofCSGs INTEGER ::= 256
-maxnoofE-RABs INTEGER ::= 256
-maxnoofTAIs INTEGER ::= 256
-maxnoofTACs INTEGER ::= 256
-maxnoofErrors INTEGER ::= 256
-maxnoofBPLMNs INTEGER ::= 6
-maxnoofPLMNsPerMME INTEGER ::= 32
-maxnoofEPLMNs INTEGER ::= 15
-maxnoofEPLMNsPlusOne INTEGER ::= 16
-maxnoofForbLACs INTEGER ::= 4096
-maxnoofForbTACs INTEGER ::= 4096
-maxnoofIndividualS1ConnectionsToReset INTEGER ::= 256
-maxnoofCellsinUEHistoryInfo INTEGER ::= 16
-maxnoofCellsineNB INTEGER ::= 256
-maxnoofTAIforWarning INTEGER ::= 65535
-maxnoofCellID INTEGER ::= 65535
-maxnoofDCNs INTEGER ::= 32
-maxnoofEmergencyAreaID INTEGER ::= 65535
-maxnoofCellinTAI INTEGER ::= 65535
-maxnoofCellinEAI INTEGER ::= 65535
-maxnoofeNBX2TLAs INTEGER ::= 2
-maxnoofeNBX2ExtTLAs INTEGER ::= 16
-maxnoofeNBX2GTPTLAs INTEGER ::= 16
-maxnoofRATs INTEGER ::= 8
-maxnoofGroupIDs INTEGER ::= 65535
-maxnoofMMECs INTEGER ::= 256
-maxnoofCellIDforMDT INTEGER ::= 32
-maxnoofTAforMDT INTEGER ::= 8
-maxnoofMDTPLMNs INTEGER ::= 16
-maxnoofCellsforRestart INTEGER ::= 256
-maxnoofRestartTAIs INTEGER ::= 2048
-maxnoofRestartEmergencyAreaIDs INTEGER ::= 256
-maxEARFCN INTEGER ::= 262143
-maxnoofMBSFNAreaMDT INTEGER ::= 8
-maxnoofRecommendedCells INTEGER ::= 16
-maxnoofRecommendedENBs INTEGER ::= 16
-maxnooftimeperiods INTEGER ::= 2
-maxnoofCellIDforQMC INTEGER ::= 32
-maxnoofTAforQMC INTEGER ::= 8
-maxnoofPLMNforQMC INTEGER ::= 16
-maxnoofBluetoothName INTEGER ::= 4
-maxnoofWLANName INTEGER ::= 4
-maxnoofConnectedengNBs INTEGER ::= 256
-maxnoofPC5QoSFlows INTEGER ::= 2048
-maxnooffrequencies INTEGER ::= 64
-maxNARFCN INTEGER ::= 32
-maxRS-IndexCellQual INTEGER ::= 16
+maxnoofCSGs INTEGER ::= 256
+maxnoofE-RABs INTEGER ::= 256
+maxnoofTAIs INTEGER ::= 256
+maxnoofTACs INTEGER ::= 256
+maxnoofErrors INTEGER ::= 256
+maxnoofBPLMNs INTEGER ::= 6
+maxnoofPLMNsPerMME INTEGER ::= 32
+maxnoofEPLMNs INTEGER ::= 15
+maxnoofEPLMNsPlusOne INTEGER ::= 16
+maxnoofForbLACs INTEGER ::= 4096
+maxnoofForbTACs INTEGER ::= 4096
+maxnoofIndividualS1ConnectionsToReset INTEGER ::= 256
+maxnoofCellsinUEHistoryInfo INTEGER ::= 16
+maxnoofCellsineNB INTEGER ::= 256
+maxnoofTAIforWarning INTEGER ::= 65535
+maxnoofCellID INTEGER ::= 65535
+maxnoofDCNs INTEGER ::= 32
+maxnoofEmergencyAreaID INTEGER ::= 65535
+maxnoofCellinTAI INTEGER ::= 65535
+maxnoofCellinEAI INTEGER ::= 65535
+maxnoofeNBX2TLAs INTEGER ::= 2
+maxnoofeNBX2ExtTLAs INTEGER ::= 16
+maxnoofeNBX2GTPTLAs INTEGER ::= 16
+maxnoofRATs INTEGER ::= 8
+maxnoofGroupIDs INTEGER ::= 65535
+maxnoofMMECs INTEGER ::= 256
+maxnoofCellIDforMDT INTEGER ::= 32
+maxnoofTAforMDT INTEGER ::= 8
+maxnoofMDTPLMNs INTEGER ::= 16
+maxnoofCellsforRestart INTEGER ::= 256
+maxnoofRestartTAIs INTEGER ::= 2048
+maxnoofRestartEmergencyAreaIDs INTEGER ::= 256
+maxEARFCN INTEGER ::= 262143
+maxnoofMBSFNAreaMDT INTEGER ::= 8
+maxnoofRecommendedCells INTEGER ::= 16
+maxnoofRecommendedENBs INTEGER ::= 16
+maxnooftimeperiods INTEGER ::= 2
+maxnoofCellIDforQMC INTEGER ::= 32
+maxnoofTAforQMC INTEGER ::= 8
+maxnoofPLMNforQMC INTEGER ::= 16
+maxnoofBluetoothName INTEGER ::= 4
+maxnoofWLANName INTEGER ::= 4
+maxnoofConnectedengNBs INTEGER ::= 256
+maxnoofPC5QoSFlows INTEGER ::= 2048
+maxnooffrequencies INTEGER ::= 64
+maxNARFCN INTEGER ::= 3279165
+maxRS-IndexCellQual INTEGER ::= 16
+maxnoofPSCellsPerPrimaryCellinUEHistoryInfo INTEGER ::= 8
+maxnoofTACsInNTN INTEGER ::= 12
+maxnoofSensorName INTEGER ::= 3
-- **************************************************************
@@ -331,7 +334,7 @@ id-CellAccessMode ProtocolIE-ID ::= 145
id-CSGMembershipStatus ProtocolIE-ID ::= 146
id-LPPa-PDU ProtocolIE-ID ::= 147
id-Routing-ID ProtocolIE-ID ::= 148
-id-Time-Synchronisation-Info ProtocolIE-ID ::= 149
+id-Time-Synchronisation-Info ProtocolIE-ID ::= 149
id-PS-ServiceNotAvailable ProtocolIE-ID ::= 150
id-PagingPriority ProtocolIE-ID ::= 151
id-x2TNLConfigurationInfo ProtocolIE-ID ::= 152
@@ -512,5 +515,25 @@ id-WUS-Assistance-Information ProtocolIE-ID ::= 323
id-NB-IoT-PagingDRX ProtocolIE-ID ::= 324
id-TraceCollectionEntityURI ProtocolIE-ID ::= 325
id-EmergencyIndicator ProtocolIE-ID ::= 326
+id-UERadioCapabilityForPaging-NR-Format ProtocolIE-ID ::= 327
+id-SourceTransportLayerAddress ProtocolIE-ID ::= 328
+id-lastVisitedPSCellList ProtocolIE-ID ::= 329
+id-RACSIndication ProtocolIE-ID ::= 330
+id-PagingCause ProtocolIE-ID ::= 331
+id-SecurityIndication ProtocolIE-ID ::= 332
+id-SecurityResult ProtocolIE-ID ::= 333
+id-E-RABSecurityResultItem ProtocolIE-ID ::= 334
+id-E-RABSecurityResultList ProtocolIE-ID ::= 335
+id-RAT-Restrictions ProtocolIE-ID ::= 336
+id-UEContextReferenceatSourceeNB ProtocolIE-ID ::= 337
+--WS extension
+id-Unknown-338 ProtocolIE-ID ::= 338
+id-LTE-NTN-TAI-Information ProtocolIE-ID ::= 339
+id-SourceNodeTransportLayerAddress ProtocolIE-ID ::= 340
+id-E-RABToBeUpdatedList ProtocolIE-ID ::= 341
+id-E-RABToBeUpdatedItem ProtocolIE-ID ::= 342
+id-SourceSNID ProtocolIE-ID ::= 343
+id-LoggedMDTTrigger ProtocolIE-ID ::= 344
+id-SensorMeasurementConfiguration ProtocolIE-ID ::= 345
END
diff --git a/epan/dissectors/asn1/s1ap/S1AP-Containers.asn b/epan/dissectors/asn1/s1ap/S1AP-Containers.asn
index 41f042ba2b..9b53fe64cf 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-Containers.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- 9.3.7 Container Definitions
-- **************************************************************
--
diff --git a/epan/dissectors/asn1/s1ap/S1AP-IEs.asn b/epan/dissectors/asn1/s1ap/S1AP-IEs.asn
index e79f8c4135..ab6c5a8aa0 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-IEs.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- 9.3.4 Information Element Definitions
-- **************************************************************
--
@@ -84,6 +84,20 @@ IMPORTS
id-Bearers-SubjectToEarlyStatusTransfer-Item,
id-TraceCollectionEntityURI,
id-EmergencyIndicator,
+ id-SourceTransportLayerAddress,
+ id-lastVisitedPSCellList,
+ id-RACSIndication,
+ id-SecurityIndication,
+ id-E-RABSecurityResultItem,
+ id-E-RABSecurityResultList,
+ id-RAT-Restrictions,
+ id-UEContextReferenceatSourceeNB,
+ id-LTE-NTN-TAI-Information,
+ id-SourceNodeTransportLayerAddress,
+ id-SourceSNID,
+ id-Direct-Forwarding-Path-Availability,
+ id-LoggedMDTTrigger,
+ id-SensorMeasurementConfiguration,
maxnoofCSGs,
maxnoofE-RABs,
maxnoofErrors,
@@ -128,7 +142,10 @@ IMPORTS
maxnoofPC5QoSFlows,
maxnooffrequencies,
maxNARFCN,
- maxRS-IndexCellQual
+ maxRS-IndexCellQual,
+ maxnoofPSCellsPerPrimaryCellinUEHistoryInfo,
+ maxnoofTACsInNTN,
+ maxnoofSensorName
@@ -419,7 +436,9 @@ CauseRadioNetwork ::= ENUMERATED {
invalid-CSG-Id,
release-due-to-pre-emption,
n26-interface-not-available,
- insufficient-ue-capabilities
+ insufficient-ue-capabilities,
+ maximum-bearer-pre-emption-rate-exceeded,
+ up-integrity-protection-not-possible
}
@@ -435,7 +454,8 @@ CauseNas ::= ENUMERATED {
detach,
unspecified,
...,
- csg-subscription-expiry
+ csg-subscription-expiry,
+ uE-not-in-PLMN-serving-area
}
CellAccessMode ::= ENUMERATED {
@@ -454,7 +474,6 @@ CellIdentifierAndCELevelForCECapableUEs-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
--- Coverage Enhancement level encoded according to TS 36.331 [16] --
CELevel ::= OCTET STRING
CE-mode-B-SupportIndicator ::= ENUMERATED {
@@ -975,7 +994,7 @@ EN-DCSONConfigurationTransfer ::= SEQUENCE {
transfertype EN-DCSONTransferType,
sONInformation SONInformation,
x2TNLConfigInfo X2TNLConfigurationInfo OPTIONAL,
- -- This IE shall be present if the SON Information IE contains the SON Information Request IE and the SON Information Request IE is set to “X2TNL Configuration Info” --
+ -- This IE shall be present if the SON Information IE contains the SON Information Request IE and the SON Information Request IE is set to "X2TNL Configuration Info" --
iE-Extensions ProtocolExtensionContainer { {EN-DCSONConfigurationTransfer-ExtIEs} } OPTIONAL,
...
}
@@ -1079,7 +1098,10 @@ E-RABInformationListItem ::= SEQUENCE {
}
E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
- { ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional },
+ { ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional }|
+ { ID id-SourceTransportLayerAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY ignore EXTENSION SecurityIndication PRESENCE optional }|
+ { ID id-SourceNodeTransportLayerAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1110,6 +1132,25 @@ E-RABLevelQoSParameters ::= SEQUENCE {
...
}
+
+E-RABSecurityResultList ::= SEQUENCE (SIZE (1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { E-RABSecurityResultListIEs } }
+
+E-RABSecurityResultListIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABSecurityResultItem CRITICALITY ignore TYPE E-RABSecurityResultItem PRESENCE mandatory },
+ ...
+}
+
+E-RABSecurityResultItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ securityResult SecurityResult,
+ iE-Extensions ProtocolExtensionContainer { { E-RABSecurityResultItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABSecurityResultItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
E-RABUsageReportList ::= SEQUENCE (SIZE(1..maxnooftimeperiods)) OF ProtocolIE-SingleContainer { {E-RABUsageReportItemIEs} }
E-RABUsageReportItemIEs S1AP-PROTOCOL-IES ::= {
@@ -1131,7 +1172,7 @@ E-RABUsageReportItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
}
E-RABQoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
--- Extended for introduction of downlink and uplink packet loss rate for enhanced Voice performance –-
+-- Extended for introduction of downlink and uplink packet loss rate for enhanced Voice performance --
{ ID id-DownlinkPacketLossRate CRITICALITY ignore EXTENSION Packet-LossRate PRESENCE optional}|
{ ID id-UplinkPacketLossRate CRITICALITY ignore EXTENSION Packet-LossRate PRESENCE optional},
...
@@ -1155,6 +1196,28 @@ EUTRAN-CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
EUTRANRoundTripDelayEstimationInfo ::= INTEGER (0..2047)
+EventL1LoggedMDTConfig ::= SEQUENCE {
+ l1Threshold MeasurementThresholdL1LoggedMDT,
+ hysteresis Hysteresis,
+ timeToTrigger TimeToTrigger,
+ iE-Extensions ProtocolExtensionContainer { { EventL1LoggedMDTConfig-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EventL1LoggedMDTConfig-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EventTrigger::= CHOICE {
+ outOfCoverage ENUMERATED {true, ...},
+ eventL1LoggedMDTConfig EventL1LoggedMDTConfig,
+ choice-Extensions ProtocolIE-SingleContainer { { EventTrigger-ExtIEs} }
+}
+
+EventTrigger-ExtIEs S1AP-PROTOCOL-IES ::= {
+ ...
+}
+
ExpectedUEBehaviour ::= SEQUENCE {
expectedActivity ExpectedUEActivityBehaviour OPTIONAL,
expectedHOInterval ExpectedHOInterval OPTIONAL,
@@ -1326,9 +1389,10 @@ HandoverRestrictionList ::= SEQUENCE {
HandoverRestrictionList-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
{ ID id-NRrestrictioninEPSasSecondaryRAT CRITICALITY ignore EXTENSION NRrestrictioninEPSasSecondaryRAT PRESENCE optional}|
{ ID id-UnlicensedSpectrumRestriction CRITICALITY ignore EXTENSION UnlicensedSpectrumRestriction PRESENCE optional}|
- { ID id-CNTypeRestrictions CRITICALITY ignore EXTENSION CNTypeRestrictions PRESENCE optional}|
- { ID id-NRrestrictionin5GS CRITICALITY ignore EXTENSION NRrestrictionin5GS PRESENCE optional}|
- { ID id-LastNG-RANPLMNIdentity CRITICALITY ignore EXTENSION PLMNidentity PRESENCE optional},
+ { ID id-CNTypeRestrictions CRITICALITY ignore EXTENSION CNTypeRestrictions PRESENCE optional}|
+ { ID id-NRrestrictionin5GS CRITICALITY ignore EXTENSION NRrestrictionin5GS PRESENCE optional}|
+ { ID id-LastNG-RANPLMNIdentity CRITICALITY ignore EXTENSION PLMNidentity PRESENCE optional}|
+ { ID id-RAT-Restrictions CRITICALITY ignore EXTENSION RAT-Restrictions PRESENCE optional},
...
}
@@ -1349,6 +1413,8 @@ HFNModified ::= INTEGER (0..131071)
HFNforPDCP-SNlength18 ::= INTEGER (0..16383)
+Hysteresis ::= INTEGER (0..30)
+
-- I
Masked-IMEISV ::= BIT STRING (SIZE (64))
@@ -1372,7 +1438,8 @@ ImmediateMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
{ ID id-M6Configuration CRITICALITY ignore EXTENSION M6Configuration PRESENCE conditional}|
{ ID id-M7Configuration CRITICALITY ignore EXTENSION M7Configuration PRESENCE conditional}|
{ ID id-BluetoothMeasurementConfiguration CRITICALITY ignore EXTENSION BluetoothMeasurementConfiguration PRESENCE optional}|
- { ID id-WLANMeasurementConfiguration CRITICALITY ignore EXTENSION WLANMeasurementConfiguration PRESENCE optional},
+ { ID id-WLANMeasurementConfiguration CRITICALITY ignore EXTENSION WLANMeasurementConfiguration PRESENCE optional}|
+ { ID id-SensorMeasurementConfiguration CRITICALITY ignore EXTENSION SensorMeasurementConfiguration PRESENCE optional},
...
}
@@ -1391,6 +1458,19 @@ InformationOnRecommendedCellsAndENBsForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::=
IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16,...))
+IntegrityProtectionIndication ::= ENUMERATED {
+ required,
+ preferred,
+ not-needed,
+ ...
+}
+
+IntegrityProtectionResult ::= ENUMERATED {
+ performed,
+ not-performed,
+ ...
+}
+
IntendedNumberOfPagingAttempts ::= INTEGER (1..16, ...)
InterfacesToTrace ::= BIT STRING (SIZE (8))
@@ -1422,14 +1502,14 @@ InterSystemMeasurementList ::= SEQUENCE (SIZE(1.. maxnooffrequencies)) OF InterS
InterSystemMeasurementItem ::= SEQUENCE {
freqBandIndicatorNR INTEGER (1..1024),
sSBfrequencies INTEGER (0..maxNARFCN),
- subcarrierSpacingSSB ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, ...},
+ subcarrierSpacingSSB ENUMERATED {kHz15, kHz30, kHz60, kHz120, kHz240, ..., kHz480, kHz960},
maxRSIndexCellQual INTEGER (1..maxRS-IndexCellQual) OPTIONAL,
sMTC OCTET STRING OPTIONAL,
threshRS-Index-r15 OCTET STRING OPTIONAL,
sSBToMeasure OCTET STRING OPTIONAL,
sSRSSIMeasurement OCTET STRING OPTIONAL,
quantityConfigNR-R15 OCTET STRING OPTIONAL,
- blackCellsToAddModList OCTET STRING OPTIONAL,
+ excludedCellsToAddModList OCTET STRING OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { InterSystemMeasurementItem-ExtIEs} } OPTIONAL
}
@@ -1498,7 +1578,22 @@ LastVisitedEUTRANCellInformation ::= SEQUENCE {
LastVisitedEUTRANCellInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Rel-11 to support enhanced granularity for time UE stayed in cell --
{ ID id-Time-UE-StayedInCell-EnhancedGranularity CRITICALITY ignore EXTENSION Time-UE-StayedInCell-EnhancedGranularity PRESENCE optional}|
- { ID id-HO-Cause CRITICALITY ignore EXTENSION Cause PRESENCE optional},
+ { ID id-HO-Cause CRITICALITY ignore EXTENSION Cause PRESENCE optional}|
+ { ID id-lastVisitedPSCellList CRITICALITY ignore EXTENSION LastVisitedPSCellList PRESENCE optional},
+ ...
+}
+
+LastVisitedPSCellList ::= SEQUENCE (SIZE(1.. maxnoofPSCellsPerPrimaryCellinUEHistoryInfo)) OF LastVisitedPSCellInformation
+
+
+LastVisitedPSCellInformation ::= SEQUENCE {
+ pSCellID PSCellInformation OPTIONAL,
+ timeStay INTEGER (0..40950),
+ iE-Extensions ProtocolExtensionContainer { { LastVisitedPSCellInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LastVisitedPSCellInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -1540,11 +1635,13 @@ LoggedMDT ::= SEQUENCE {
LoggedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
{ ID id-BluetoothMeasurementConfiguration CRITICALITY ignore EXTENSION BluetoothMeasurementConfiguration PRESENCE optional}|
- { ID id-WLANMeasurementConfiguration CRITICALITY ignore EXTENSION WLANMeasurementConfiguration PRESENCE optional},
+ { ID id-WLANMeasurementConfiguration CRITICALITY ignore EXTENSION WLANMeasurementConfiguration PRESENCE optional}|
+ { ID id-LoggedMDTTrigger CRITICALITY ignore EXTENSION LoggedMDTTrigger PRESENCE optional}|
+ { ID id-SensorMeasurementConfiguration CRITICALITY ignore EXTENSION SensorMeasurementConfiguration PRESENCE optional},
...
}
-LoggingInterval ::= ENUMERATED {ms128, ms256, ms512, ms1024, ms2048, ms3072, ms4096, ms6144}
+LoggingInterval ::= ENUMERATED {ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440}
LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120}
@@ -1560,8 +1657,26 @@ LoggedMBSFNMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
+LoggedMDTTrigger ::= CHOICE{
+ periodical NULL,
+ eventTrigger EventTrigger,
+ ...
+}
+
LTE-M-Indication ::= ENUMERATED {lte-m, ... }
+LTE-NTN-TAI-Information ::= SEQUENCE {
+ servingPLMN PLMNidentity,
+ tACList-In-LTE-NTN TACList-In-LTE-NTN,
+ uE-Location-Derived-TAC TAC OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {LTE-NTN-TAI-Information-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LTE-NTN-TAI-Information-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
-- M
M3Configuration ::= SEQUENCE {
@@ -1605,7 +1720,7 @@ M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
M6Configuration ::= SEQUENCE {
m6report-Interval M6report-Interval,
m6delay-threshold M6delay-threshold OPTIONAL,
--- This IE shall be present if the M6 Links to log IE is set to “uplink” or to “both-uplink-and-downlink” --
+-- This IE shall be present if the M6 Links to log IE is set to "uplink" or to "both-uplink-and-downlink" --
m6-links-to-log Links-to-log,
iE-Extensions ProtocolExtensionContainer { { M6Configuration-ExtIEs} } OPTIONAL,
...
@@ -1698,6 +1813,16 @@ MeasurementThresholdA2 ::= CHOICE {
...
}
+MeasurementThresholdL1LoggedMDT ::= CHOICE {
+ threshold-RSRP Threshold-RSRP,
+ threshold-RSRQ Threshold-RSRQ,
+ choice-Extensions ProtocolIE-SingleContainer { { MeasurementThresholdL1LoggedMDT-ExtIEs} }
+}
+
+MeasurementThresholdL1LoggedMDT-ExtIEs S1AP-PROTOCOL-IES ::= {
+ ...
+}
+
MessageIdentifier ::= BIT STRING (SIZE (16))
MobilityInformation ::= BIT STRING (SIZE(32))
@@ -1930,6 +2055,8 @@ PagingPriority ::= ENUMERATED {
PagingProbabilityInformation ::= ENUMERATED {p00, p05, p10, p15, p20, p25, p30, p35, p40, p45, p50, p55, p60, p65, p70, p75, p80, p85, p90, p95, p100, ...}
+PagingCause::= ENUMERATED {voice, ...}
+
PC5QoSParameters ::= SEQUENCE {
pc5QoSFlowList PC5QoSFlowList,
pc5LinkAggregatedBitRates BitRate OPTIONAL,
@@ -2067,6 +2194,8 @@ QCI ::= INTEGER (0..255)
-- R
+RACSIndication ::= ENUMERATED {true, ...}
+
RAN-UE-NGAP-ID ::= INTEGER (0..4294967295)
Range ::= ENUMERATED {m50, m80, m180, m200, m350, m400, m500, m700, m1000, ...}
@@ -2141,9 +2270,30 @@ RelayNode-Indicator ::= ENUMERATED {
RAC ::= OCTET STRING (SIZE (1))
+RAT-Restrictions ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF RAT-RestrictionsItem
+
+RAT-RestrictionsItem ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ rAT-RestrictionInformation BIT STRING (SIZE(8, ...)),
+ iE-Extensions ProtocolExtensionContainer { { RAT-RestrictionsItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RAT-RestrictionsItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
RAT-Type ::= ENUMERATED {
nbiot,
- ...
+ ...,
+ nbiot-leo,
+ nbiot-meo,
+ nbiot-geo,
+ nbiot-othersat,
+ eutran-leo,
+ eutran-meo,
+ eutran-geo,
+ eutran-othersat
}
ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, rinfinity}
@@ -2284,6 +2434,60 @@ SecondaryRATDataUsageReportItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
+SecurityIndication ::= SEQUENCE {
+ integrityProtectionIndication IntegrityProtectionIndication,
+ iE-Extensions ProtocolExtensionContainer { { SecurityIndication-ExtIEs } } OPTIONAL,
+ ...
+}
+
+SecurityIndication-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SecurityResult ::= SEQUENCE {
+ integrityProtectionResult IntegrityProtectionResult,
+ iE-Extensions ProtocolExtensionContainer { {SecurityResult-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SecurityResult-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SensorMeasConfig::= ENUMERATED {setup,...}
+
+SensorMeasConfigNameItem ::= SEQUENCE {
+ sensorNameConfig SensorNameConfig,
+ iE-Extensions ProtocolExtensionContainer { { SensorMeasConfigNameItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+SensorMeasConfigNameItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SensorMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofSensorName)) OF SensorMeasConfigNameItem
+
+SensorMeasurementConfiguration ::= SEQUENCE {
+ sensorMeasConfig SensorMeasConfig,
+ sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {SensorMeasurementConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SensorMeasurementConfiguration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SensorNameConfig ::= CHOICE {
+ uncompensatedBarometricConfig ENUMERATED {true, ...},
+ choice-Extensions ProtocolIE-SingleContainer { {SensorNameConfig-ExtIEs} }
+}
+
+SensorNameConfig-ExtIEs S1AP-PROTOCOL-IES ::= {
+ ...
+}
+
SerialNumber ::= BIT STRING (SIZE (16))
ServiceType ::= ENUMERATED{
@@ -2341,10 +2545,10 @@ SONConfigurationTransfer ::= SEQUENCE {
SONConfigurationTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Release 10 to transfer the IP addresses of the eNB initiating the ANR action --
{ID id-x2TNLConfigurationInfo CRITICALITY ignore EXTENSION X2TNLConfigurationInfo PRESENCE conditional
- -- This IE shall be present if the SON Information IE contains the SON Information Request IE and the SON Information Request IE is set to “X2TNL Configuration Info” --}|
+ -- This IE shall be present if the SON Information IE contains the SON Information Request IE and the SON Information Request IE is set to "X2TNL Configuration Info" --}|
-- Extension for Release 12 to transfer information concerning the source cell of synchronisation and the aggressor cell --
{ID id-Synchronisation-Information CRITICALITY ignore EXTENSION SynchronisationInformation PRESENCE conditional
- -- This IE shall be present if the SON Information IE contains the SON Information Request IE set to “ Activate Muting ” --},
+ -- This IE shall be present if the SON Information IE contains the SON Information Request IE set to " Activate Muting " --},
...
}
@@ -2417,14 +2621,17 @@ SourceeNB-ToTargeteNB-TransparentContainer ::= SEQUENCE {
}
SourceeNB-ToTargeteNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
- {ID id-MobilityInformation CRITICALITY ignore EXTENSION MobilityInformation PRESENCE optional}|
- {ID id-uE-HistoryInformationFromTheUE CRITICALITY ignore EXTENSION UE-HistoryInformationFromTheUE PRESENCE optional}|
- {ID id-IMSvoiceEPSfallbackfrom5G CRITICALITY ignore EXTENSION IMSvoiceEPSfallbackfrom5G PRESENCE optional}|
+ {ID id-MobilityInformation CRITICALITY ignore EXTENSION MobilityInformation PRESENCE optional}|
+ {ID id-uE-HistoryInformationFromTheUE CRITICALITY ignore EXTENSION UE-HistoryInformationFromTheUE PRESENCE optional}|
+ {ID id-IMSvoiceEPSfallbackfrom5G CRITICALITY ignore EXTENSION IMSvoiceEPSfallbackfrom5G PRESENCE optional}|
{ID id-AdditionalRRMPriorityIndex CRITICALITY ignore EXTENSION AdditionalRRMPriorityIndex PRESENCE optional}|
- {ID id-ContextatSource CRITICALITY ignore EXTENSION ContextatSource PRESENCE optional}|
+ {ID id-ContextatSource CRITICALITY ignore EXTENSION ContextatSource PRESENCE optional}|
{ID id-IntersystemMeasurementConfiguration CRITICALITY ignore EXTENSION IntersystemMeasurementConfiguration PRESENCE optional}|
- {ID id-SourceNodeID CRITICALITY ignore EXTENSION SourceNodeID PRESENCE optional}|
- {ID id-EmergencyIndicator CRITICALITY ignore EXTENSION EmergencyIndicator PRESENCE optional},
+ {ID id-SourceNodeID CRITICALITY ignore EXTENSION SourceNodeID PRESENCE optional}|
+ {ID id-EmergencyIndicator CRITICALITY ignore EXTENSION EmergencyIndicator PRESENCE optional}|
+ {ID id-UEContextReferenceatSourceeNB CRITICALITY ignore EXTENSION ENB-UE-S1AP-ID PRESENCE optional}|
+ {ID id-SourceSNID CRITICALITY ignore EXTENSION Global-RAN-NODE-ID PRESENCE optional}|
+ {ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore EXTENSION Direct-Forwarding-Path-Availability PRESENCE optional},
...
}
@@ -2541,6 +2748,8 @@ S-TMSI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
TAC ::= OCTET STRING (SIZE (2))
+TACList-In-LTE-NTN ::= SEQUENCE (SIZE(1..maxnoofTACsInNTN)) OF TAC
+
TAIBasedMDT ::= SEQUENCE {
tAIListforMDT TAIListforMDT,
iE-Extensions ProtocolExtensionContainer { {TAIBasedMDT-ExtIEs} } OPTIONAL,
@@ -2737,7 +2946,10 @@ TargeteNB-ToSourceeNB-TransparentContainer ::= SEQUENCE {
}
TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
- { ID id-DAPSResponseInfoList CRITICALITY ignore EXTENSION DAPSResponseInfoList PRESENCE optional},
+ { ID id-DAPSResponseInfoList CRITICALITY ignore EXTENSION DAPSResponseInfoList PRESENCE optional}|
+ { ID id-RACSIndication CRITICALITY ignore EXTENSION RACSIndication PRESENCE optional }|
+ { ID id-E-RABSecurityResultList CRITICALITY ignore EXTENSION E-RABSecurityResultList PRESENCE optional}|
+ { ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore EXTENSION Direct-Forwarding-Path-Availability PRESENCE optional },
...
}
@@ -2768,6 +2980,8 @@ Threshold-RSRP ::= INTEGER(0..97)
Threshold-RSRQ ::= INTEGER(0..34)
+TimeToTrigger ::= ENUMERATED {ms0, ms40, ms64, ms80, ms100, ms128, ms160, ms256, ms320, ms480, ms512, ms640, ms1024, ms1280, ms2560, ms5120}
+
TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}
Time-UE-StayedInCell ::= INTEGER (0..4095)
@@ -2796,7 +3010,7 @@ traceCollectionEntityIPAddress TransportLayerAddress,
TraceActivation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Rel-10 to support MDT --
{ ID id-MDTConfiguration CRITICALITY ignore EXTENSION MDT-Configuration PRESENCE optional }|
--- Extension for Rel-15 to support QMC –
+-- Extension for Rel-15 to support QMC --
{ ID id-UEAppLayerMeasConfig CRITICALITY ignore EXTENSION UEAppLayerMeasConfig PRESENCE optional }|
{ ID id-MDTConfigurationNR CRITICALITY ignore EXTENSION MDT-ConfigurationNR PRESENCE optional }|
{ ID id-TraceCollectionEntityURI CRITICALITY ignore EXTENSION URI-Address PRESENCE optional },
@@ -2907,7 +3121,6 @@ UEIdentityIndexValue ::= BIT STRING (SIZE (10))
UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCellsinUEHistoryInfo)) OF LastVisitedCell-Item
UE-HistoryInformationFromTheUE ::= OCTET STRING
--- This IE is a transparent container and shall be encoded as the VisitedCellInfoList field contained in the UEInformationResponse message as defined in TS 36.331 [16]
UEPagingID ::= CHOICE {
s-TMSI S-TMSI,
@@ -2922,10 +3135,8 @@ UERadioCapabilityForPaging ::= OCTET STRING
UERadioCapabilityID ::= OCTET STRING
UE-RLF-Report-Container ::= OCTET STRING
--- This IE is a transparent container and shall be encoded as the rlf-Report-r9 field contained in the UEInformationResponse message as defined in TS 36.331 [16]
UE-RLF-Report-Container-for-extended-bands ::= OCTET STRING
--- This IE is a transparent container and shall be encoded as the rlf-Report-v9e0 contained in the UEInformationResponse message as defined in TS 36.331 [16]
UESecurityCapabilities ::= SEQUENCE {
encryptionAlgorithms EncryptionAlgorithms,
@@ -2981,7 +3192,8 @@ UserLocationInformation ::= SEQUENCE {
}
UserLocationInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
- { ID id-PSCellInformation CRITICALITY ignore EXTENSION PSCellInformation PRESENCE optional},
+ { ID id-PSCellInformation CRITICALITY ignore EXTENSION PSCellInformation PRESENCE optional}|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore EXTENSION LTE-NTN-TAI-Information PRESENCE optional},
...
}
diff --git a/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn b/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn
index 9dd8c5ff04..f781fd7ad0 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- 9.3.3 PDU Definitions
-- **************************************************************
--
@@ -200,7 +200,11 @@ IMPORTS
NotifySourceeNB,
ENB-EarlyStatusTransfer-TransparentContainer,
WUS-Assistance-Information,
- NB-IoT-PagingDRX
+ NB-IoT-PagingDRX,
+ PagingCause,
+ SecurityIndication,
+ SecurityResult,
+ LTE-NTN-TAI-Information
@@ -476,9 +480,14 @@ FROM S1AP-Containers
id-NotifySourceeNB,
id-eNB-EarlyStatusTransfer-TransparentContainer,
id-WUS-Assistance-Information,
- id-NB-IoT-PagingDRX
-
-
+ id-NB-IoT-PagingDRX,
+ id-UERadioCapabilityForPaging-NR-Format,
+ id-PagingCause,
+ id-SecurityIndication,
+ id-SecurityResult,
+ id-LTE-NTN-TAI-Information,
+ id-E-RABToBeUpdatedList,
+ id-E-RABToBeUpdatedItem
FROM S1AP-Constants;
@@ -672,7 +681,8 @@ E-RABToBeSetupItemHOReq ::= SEQUENCE {
E-RABToBeSetupItemHOReq-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
{ ID id-Data-Forwarding-Not-Possible CRITICALITY ignore EXTENSION Data-Forwarding-Not-Possible PRESENCE optional}|
{ ID id-BearerType CRITICALITY reject EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
...
}
@@ -786,7 +796,8 @@ HandoverNotifyIEs S1AP-PROTOCOL-IES ::= {
{ ID id-Tunnel-Information-for-BBF CRITICALITY ignore TYPE TunnelInformation PRESENCE optional}|
{ ID id-LHN-ID CRITICALITY ignore TYPE LHN-ID PRESENCE optional}|
{ ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional }|
- { ID id-NotifySourceeNB CRITICALITY ignore TYPE NotifySourceeNB PRESENCE optional},
+ { ID id-NotifySourceeNB CRITICALITY ignore TYPE NotifySourceeNB PRESENCE optional}|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
...
}
@@ -823,7 +834,8 @@ PathSwitchRequestIEs S1AP-PROTOCOL-IES ::= {
{ ID id-LHN-ID CRITICALITY ignore TYPE LHN-ID PRESENCE optional}|
{ ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRC-Establishment-Cause PRESENCE optional }|
{ ID id-NRUESecurityCapabilities CRITICALITY ignore TYPE NRUESecurityCapabilities PRESENCE optional}|
- { ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional },
+ { ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional }|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
...
}
@@ -843,6 +855,7 @@ E-RABToBeSwitchedDLItem ::= SEQUENCE {
}
E-RABToBeSwitchedDLItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SecurityIndication CRITICALITY ignore EXTENSION SecurityIndication PRESENCE optional},
...
}
@@ -858,31 +871,33 @@ PathSwitchRequestAcknowledge ::= SEQUENCE {
}
PathSwitchRequestAcknowledgeIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
- { ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
- { ID id-uEaggregateMaximumBitrate CRITICALITY ignore TYPE UEAggregateMaximumBitrate PRESENCE optional}|
- { ID id-E-RABToBeSwitchedULList CRITICALITY ignore TYPE E-RABToBeSwitchedULList PRESENCE optional}|
- { ID id-E-RABToBeReleasedList CRITICALITY ignore TYPE E-RABList PRESENCE optional}|
- { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory}|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
- { ID id-MME-UE-S1AP-ID-2 CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE optional}|
- { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
- { ID id-ProSeAuthorized CRITICALITY ignore TYPE ProSeAuthorized PRESENCE optional}|
- { ID id-UEUserPlaneCIoTSupportIndicator CRITICALITY ignore TYPE UEUserPlaneCIoTSupportIndicator PRESENCE optional}|
- { ID id-V2XServicesAuthorized CRITICALITY ignore TYPE V2XServicesAuthorized PRESENCE optional}|
+ { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY ignore TYPE UEAggregateMaximumBitrate PRESENCE optional}|
+ { ID id-E-RABToBeSwitchedULList CRITICALITY ignore TYPE E-RABToBeSwitchedULList PRESENCE optional}|
+ { ID id-E-RABToBeReleasedList CRITICALITY ignore TYPE E-RABList PRESENCE optional}|
+ { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-MME-UE-S1AP-ID-2 CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
+ { ID id-ProSeAuthorized CRITICALITY ignore TYPE ProSeAuthorized PRESENCE optional}|
+ { ID id-UEUserPlaneCIoTSupportIndicator CRITICALITY ignore TYPE UEUserPlaneCIoTSupportIndicator PRESENCE optional}|
+ { ID id-V2XServicesAuthorized CRITICALITY ignore TYPE V2XServicesAuthorized PRESENCE optional}|
{ ID id-UESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE UESidelinkAggregateMaximumBitrate PRESENCE optional}|
- { ID id-EnhancedCoverageRestricted CRITICALITY ignore TYPE EnhancedCoverageRestricted PRESENCE optional}|
- { ID id-NRUESecurityCapabilities CRITICALITY ignore TYPE NRUESecurityCapabilities PRESENCE optional}|
- { ID id-CE-ModeBRestricted CRITICALITY ignore TYPE CE-ModeBRestricted PRESENCE optional}|
- { ID id-AerialUEsubscriptionInformation CRITICALITY ignore TYPE AerialUEsubscriptionInformation PRESENCE optional}|
- { ID id-PendingDataIndication CRITICALITY ignore TYPE PendingDataIndication PRESENCE optional}|
+ { ID id-EnhancedCoverageRestricted CRITICALITY ignore TYPE EnhancedCoverageRestricted PRESENCE optional}|
+ { ID id-NRUESecurityCapabilities CRITICALITY ignore TYPE NRUESecurityCapabilities PRESENCE optional}|
+ { ID id-CE-ModeBRestricted CRITICALITY ignore TYPE CE-ModeBRestricted PRESENCE optional}|
+ { ID id-AerialUEsubscriptionInformation CRITICALITY ignore TYPE AerialUEsubscriptionInformation PRESENCE optional}|
+ { ID id-PendingDataIndication CRITICALITY ignore TYPE PendingDataIndication PRESENCE optional}|
{ ID id-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
- { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional}|
- { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional }|
- { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
- { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
- { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional},
+ { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional}|
+ { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional }|
+ { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
+ { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional}|
+ { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE optional}|
+ { ID id-E-RABToBeUpdatedList CRITICALITY ignore TYPE E-RABToBeUpdatedList PRESENCE optional},
...
}
@@ -902,9 +917,27 @@ E-RABToBeSwitchedULItem ::= SEQUENCE {
}
E-RABToBeSwitchedULItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+
...
}
+E-RABToBeUpdatedList ::= E-RAB-IE-ContainerList { {E-RABToBeUpdatedItemIEs} }
+
+E-RABToBeUpdatedItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeUpdatedItem CRITICALITY ignore TYPE E-RABToBeUpdatedItem PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeUpdatedItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ securityIndication SecurityIndication OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { E-RABToBeUpdatedItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABToBeUpdatedItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
-- **************************************************************
--
@@ -1085,7 +1118,8 @@ E-RABToBeSetupItemBearerSUReqExtIEs S1AP-PROTOCOL-EXTENSION ::= {
{ ID id-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-SIPTO-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-BearerType CRITICALITY reject EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
...
}
@@ -1106,7 +1140,8 @@ E-RABSetupResponseIEs S1AP-PROTOCOL-IES ::= {
{ ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
{ ID id-E-RABSetupListBearerSURes CRITICALITY ignore TYPE E-RABSetupListBearerSURes PRESENCE optional }|
{ ID id-E-RABFailedToSetupListBearerSURes CRITICALITY ignore TYPE E-RABList PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional },
...
}
@@ -1199,7 +1234,8 @@ E-RABModifyResponseIEs S1AP-PROTOCOL-IES ::= {
{ ID id-E-RABModifyListBearerModRes CRITICALITY ignore TYPE E-RABModifyListBearerModRes PRESENCE optional }|
{ ID id-E-RABFailedToModifyList CRITICALITY ignore TYPE E-RABList PRESENCE optional }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
- { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional },
+ { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional }|
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional },
...
}
@@ -1405,7 +1441,8 @@ E-RABToBeSetupItemCtxtSUReqExtIEs S1AP-PROTOCOL-EXTENSION ::= {
{ ID id-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-SIPTO-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-BearerType CRITICALITY reject EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
...
}
@@ -1498,7 +1535,7 @@ PagingIEs S1AP-PROTOCOL-IES ::= {
{ ID id-CSG-IdList CRITICALITY ignore TYPE CSG-IdList PRESENCE optional}|
{ ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional}|
{ ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional}|
--- Extension for Release 13 to support Paging Optimisation and Coverage Enhancement paging –-
+-- Extension for Release 13 to support Paging Optimisation and Coverage Enhancement paging --
{ ID id-AssistanceDataForPaging CRITICALITY ignore TYPE AssistanceDataForPaging PRESENCE optional}|
{ ID id-Paging-eDRXInformation CRITICALITY ignore TYPE Paging-eDRXInformation PRESENCE optional}|
{ ID id-extended-UEIdentityIndexValue CRITICALITY ignore TYPE Extended-UEIdentityIndexValue PRESENCE optional}|
@@ -1508,7 +1545,8 @@ PagingIEs S1AP-PROTOCOL-IES ::= {
{ ID id-CE-ModeBRestricted CRITICALITY ignore TYPE CE-ModeBRestricted PRESENCE optional}|
{ ID id-DataSize CRITICALITY ignore TYPE DataSize PRESENCE optional}|
{ ID id-WUS-Assistance-Information CRITICALITY ignore TYPE WUS-Assistance-Information PRESENCE optional}|
- { ID id-NB-IoT-PagingDRX CRITICALITY ignore TYPE NB-IoT-PagingDRX PRESENCE optional},
+ { ID id-NB-IoT-PagingDRX CRITICALITY ignore TYPE NB-IoT-PagingDRX PRESENCE optional}|
+ { ID id-PagingCause CRITICALITY ignore TYPE PagingCause PRESENCE optional},
...
}
@@ -1592,7 +1630,7 @@ UEContextReleaseComplete-IEs S1AP-PROTOCOL-IES ::= {
{ ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional}|
-- Extension for Release 13 to support Paging Optimisation
{ ID id-InformationOnRecommendedCellsAndENBsForPaging CRITICALITY ignore TYPE InformationOnRecommendedCellsAndENBsForPaging PRESENCE optional}|
--- Extension for Release 13 to support coverage enhancement paging –
+-- Extension for Release 13 to support coverage enhancement paging --
{ ID id-CellIdentifierAndCELevelForCECapableUEs CRITICALITY ignore TYPE CellIdentifierAndCELevelForCECapableUEs PRESENCE optional}|
{ ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional }|
{ ID id-TimeSinceSecondaryNodeRelease CRITICALITY ignore TYPE TimeSinceSecondaryNodeRelease PRESENCE optional },
@@ -1748,16 +1786,17 @@ DownlinkNASTransport-IEs S1AP-PROTOCOL-IES ::= {
{ ID id-SubscriberProfileIDforRFP CRITICALITY ignore TYPE SubscriberProfileIDforRFP PRESENCE optional}|
{ ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional}|
{ ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional}|
- { ID id-DLNASPDUDeliveryAckRequest CRITICALITY ignore TYPE DLNASPDUDeliveryAckRequest PRESENCE optional}|
+ { ID id-DLNASPDUDeliveryAckRequest CRITICALITY ignore TYPE DLNASPDUDeliveryAckRequest PRESENCE optional}|
{ ID id-EnhancedCoverageRestricted CRITICALITY ignore TYPE EnhancedCoverageRestricted PRESENCE optional}|
{ ID id-NRUESecurityCapabilities CRITICALITY ignore TYPE NRUESecurityCapabilities PRESENCE optional}|
{ ID id-CE-ModeBRestricted CRITICALITY ignore TYPE CE-ModeBRestricted PRESENCE optional}|
- { ID id-UECapabilityInfoRequest CRITICALITY ignore TYPE UECapabilityInfoRequest PRESENCE optional}|
+ { ID id-UECapabilityInfoRequest CRITICALITY ignore TYPE UECapabilityInfoRequest PRESENCE optional}|
{ ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional}|
{ ID id-PendingDataIndication CRITICALITY ignore TYPE PendingDataIndication PRESENCE optional}|
{ ID id-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
{ ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional}|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional},
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional}|
+ { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
...
}
@@ -1797,7 +1836,8 @@ InitialUEMessage-IEs S1AP-PROTOCOL-IES ::= {
{ ID id-Coverage-Level CRITICALITY ignore TYPE Coverage-Level PRESENCE optional}|
{ ID id-UE-Application-Layer-Measurement-Capability CRITICALITY ignore TYPE UE-Application-Layer-Measurement-Capability PRESENCE optional}|
{ ID id-EDT-Session CRITICALITY ignore TYPE EDT-Session PRESENCE optional}|
- { ID id-IAB-Node-Indication CRITICALITY reject TYPE IAB-Node-Indication PRESENCE optional},
+ { ID id-IAB-Node-Indication CRITICALITY reject TYPE IAB-Node-Indication PRESENCE optional}|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
...
}
@@ -1822,7 +1862,8 @@ UplinkNASTransport-IEs S1AP-PROTOCOL-IES ::= {
{ ID id-GW-TransportLayerAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE optional}|
{ ID id-SIPTO-L-GW-TransportLayerAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE optional}|
{ ID id-LHN-ID CRITICALITY ignore TYPE LHN-ID PRESENCE optional}|
- { ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional },
+ { ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional }|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
...
}
-- **************************************************************
@@ -2260,7 +2301,8 @@ UECapabilityInfoIndicationIEs S1AP-PROTOCOL-IES ::= {
{ ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional}|
{ ID id-UE-Application-Layer-Measurement-Capability CRITICALITY ignore TYPE UE-Application-Layer-Measurement-Capability PRESENCE optional}|
{ ID id-LTE-M-Indication CRITICALITY ignore TYPE LTE-M-Indication PRESENCE optional}|
- { ID id-UERadioCapability-NR-Format CRITICALITY ignore TYPE UERadioCapability PRESENCE optional},
+ { ID id-UERadioCapability-NR-Format CRITICALITY ignore TYPE UERadioCapability PRESENCE optional}|
+ { ID id-UERadioCapabilityForPaging-NR-Format CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional},
...
}
@@ -2466,7 +2508,8 @@ LocationReportIEs S1AP-PROTOCOL-IES ::= {
{ ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory }|
{ ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory }|
{ ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE mandatory }|
- { ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional },
+ { ID id-PSCellInformation CRITICALITY ignore TYPE PSCellInformation PRESENCE optional }|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
...
}
@@ -3178,8 +3221,8 @@ ConnectionEstablishmentIndicationIEs S1AP-PROTOCOL-IES ::= {
{ ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional}|
{ ID id-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
{ ID id-UE-Level-QoS-Parameters CRITICALITY ignore TYPE E-RABLevelQoSParameters PRESENCE optional}|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional}
-,
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional}|
+ { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
...
}
@@ -3216,7 +3259,8 @@ UEInformationTransferIEs S1AP-PROTOCOL-IES ::= {
{ ID id-UE-Level-QoS-Parameters CRITICALITY ignore TYPE E-RABLevelQoSParameters PRESENCE optional}|
{ ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional}|
{ ID id-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
- { ID id-PendingDataIndication CRITICALITY ignore TYPE PendingDataIndication PRESENCE optional},
+ { ID id-PendingDataIndication CRITICALITY ignore TYPE PendingDataIndication PRESENCE optional}|
+ { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
...
}
@@ -3237,7 +3281,8 @@ ENBCPRelocationIndicationIEs S1AP-PROTOCOL-IES ::= {
{ ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE mandatory}|
{ ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
{ ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
- { ID id-UL-CP-SecurityInformation CRITICALITY reject TYPE UL-CP-SecurityInformation PRESENCE mandatory},
+ { ID id-UL-CP-SecurityInformation CRITICALITY reject TYPE UL-CP-SecurityInformation PRESENCE mandatory}|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
...
}
diff --git a/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn b/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn
index fe0048d843..f3956daa01 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- 9.3.2 Elementary Procedure Definitions
-- **************************************************************
--
diff --git a/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn b/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn
index 1e9612f3b7..73d734feb7 100644
--- a/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn
+++ b/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.413 V16.7.0 (2021-10)
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
-- B.2 ASN.1 definition
-- **************************************************************
--
@@ -286,7 +286,7 @@ FailureEventReport::= CHOICE {
}
TooEarlyInterRATHOReportReportFromEUTRAN ::= SEQUENCE {
- uERLFReportContainer OCTET STRING, -- as defined in TS 36.331 [16] --
+ uERLFReportContainer OCTET STRING,
mobilityInformation MobilityInformation OPTIONAL,
...
}
diff --git a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
index 1b3ce9294a..aa1143c979 100644
--- a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
+++ b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
@@ -10,7 +10,7 @@
*
* Based on the RANAP dissector
*
- * References: 3GPP TS 36.413 V16.7.0 (2021-10)
+ * References: 3GPP TS 36.413 V17.5.0 (2023-06)
*/
#include "config.h"
@@ -61,108 +61,116 @@ static dissector_handle_t lte_rrc_ue_radio_access_cap_info_nb_handle;
static dissector_handle_t nr_rrc_ue_radio_access_cap_info_handle;
static dissector_handle_t lte_rrc_ue_radio_paging_info_handle;
static dissector_handle_t lte_rrc_ue_radio_paging_info_nb_handle;
+static dissector_handle_t nr_rrc_ue_radio_paging_info_handle;
#include "packet-s1ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_s1ap = -1;
-
-static int hf_s1ap_transportLayerAddressIPv4 = -1;
-static int hf_s1ap_transportLayerAddressIPv6 = -1;
-static int hf_s1ap_E_UTRAN_Trace_ID_TraceID = -1;
-static int hf_s1ap_E_UTRAN_Trace_ID_TraceRecordingSessionReference = -1;
-static int hf_s1ap_interfacesToTrace_S1_MME = -1;
-static int hf_s1ap_interfacesToTrace_X2 = -1;
-static int hf_s1ap_interfacesToTrace_Uu = -1;
-static int hf_s1ap_interfacesToTrace_F1_C = -1;
-static int hf_s1ap_interfacesToTrace_E1 = -1;
-static int hf_s1ap_interfacesToTrace_Reserved = -1;
-static int hf_s1ap_encryptionAlgorithms_EEA1 = -1;
-static int hf_s1ap_encryptionAlgorithms_EEA2 = -1;
-static int hf_s1ap_encryptionAlgorithms_EEA3 = -1;
-static int hf_s1ap_encryptionAlgorithms_Reserved = -1;
-static int hf_s1ap_integrityProtectionAlgorithms_EIA1 = -1;
-static int hf_s1ap_integrityProtectionAlgorithms_EIA2 = -1;
-static int hf_s1ap_integrityProtectionAlgorithms_EIA3 = -1;
-static int hf_s1ap_integrityProtectionAlgorithms_Reserved = -1;
-static int hf_s1ap_SerialNumber_gs = -1;
-static int hf_s1ap_SerialNumber_msg_code = -1;
-static int hf_s1ap_SerialNumber_upd_nb = -1;
-static int hf_s1ap_WarningType_value = -1;
-static int hf_s1ap_WarningType_emergency_user_alert = -1;
-static int hf_s1ap_WarningType_popup = -1;
-static int hf_s1ap_WarningMessageContents_nb_pages = -1;
-static int hf_s1ap_WarningMessageContents_decoded_page = -1;
-static int hf_s1ap_measurementsToActivate_M1 = -1;
-static int hf_s1ap_measurementsToActivate_M2 = -1;
-static int hf_s1ap_measurementsToActivate_M3 = -1;
-static int hf_s1ap_measurementsToActivate_M4 = -1;
-static int hf_s1ap_measurementsToActivate_M5 = -1;
-static int hf_s1ap_measurementsToActivate_LoggingM1FromEventTriggered = -1;
-static int hf_s1ap_measurementsToActivate_M6 = -1;
-static int hf_s1ap_measurementsToActivate_M7 = -1;
-static int hf_s1ap_MDT_Location_Info_GNSS = -1;
-static int hf_s1ap_MDT_Location_Info_E_CID = -1;
-static int hf_s1ap_MDT_Location_Info_Reserved = -1;
-static int hf_s1ap_NRencryptionAlgorithms_NEA1 = -1;
-static int hf_s1ap_NRencryptionAlgorithms_NEA2 = -1;
-static int hf_s1ap_NRencryptionAlgorithms_NEA3 = -1;
-static int hf_s1ap_NRencryptionAlgorithms_Reserved = -1;
-static int hf_s1ap_NRintegrityProtectionAlgorithms_NIA1 = -1;
-static int hf_s1ap_NRintegrityProtectionAlgorithms_NIA2 = -1;
-static int hf_s1ap_NRintegrityProtectionAlgorithms_NIA3 = -1;
-static int hf_s1ap_NRintegrityProtectionAlgorithms_Reserved = -1;
-static int hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_streaming_service = -1;
-static int hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_MTSI_service = -1;
-static int hf_s1ap_UE_Application_Layer_Measurement_Capability_Reserved = -1;
+static int proto_s1ap;
+
+static int hf_s1ap_transportLayerAddressIPv4;
+static int hf_s1ap_transportLayerAddressIPv6;
+static int hf_s1ap_E_UTRAN_Trace_ID_TraceID;
+static int hf_s1ap_E_UTRAN_Trace_ID_TraceRecordingSessionReference;
+static int hf_s1ap_interfacesToTrace_S1_MME;
+static int hf_s1ap_interfacesToTrace_X2;
+static int hf_s1ap_interfacesToTrace_Uu;
+static int hf_s1ap_interfacesToTrace_F1_C;
+static int hf_s1ap_interfacesToTrace_E1;
+static int hf_s1ap_interfacesToTrace_Reserved;
+static int hf_s1ap_encryptionAlgorithms_EEA1;
+static int hf_s1ap_encryptionAlgorithms_EEA2;
+static int hf_s1ap_encryptionAlgorithms_EEA3;
+static int hf_s1ap_encryptionAlgorithms_Reserved;
+static int hf_s1ap_integrityProtectionAlgorithms_EIA1;
+static int hf_s1ap_integrityProtectionAlgorithms_EIA2;
+static int hf_s1ap_integrityProtectionAlgorithms_EIA3;
+static int hf_s1ap_integrityProtectionAlgorithms_EIA7;
+static int hf_s1ap_integrityProtectionAlgorithms_Reserved;
+static int hf_s1ap_SerialNumber_gs;
+static int hf_s1ap_SerialNumber_msg_code;
+static int hf_s1ap_SerialNumber_upd_nb;
+static int hf_s1ap_WarningType_value;
+static int hf_s1ap_WarningType_emergency_user_alert;
+static int hf_s1ap_WarningType_popup;
+static int hf_s1ap_WarningMessageContents_nb_pages;
+static int hf_s1ap_WarningMessageContents_decoded_page;
+static int hf_s1ap_measurementsToActivate_M1;
+static int hf_s1ap_measurementsToActivate_M2;
+static int hf_s1ap_measurementsToActivate_M3;
+static int hf_s1ap_measurementsToActivate_M4;
+static int hf_s1ap_measurementsToActivate_M5;
+static int hf_s1ap_measurementsToActivate_LoggingM1FromEventTriggered;
+static int hf_s1ap_measurementsToActivate_M6;
+static int hf_s1ap_measurementsToActivate_M7;
+static int hf_s1ap_MDT_Location_Info_GNSS;
+static int hf_s1ap_MDT_Location_Info_E_CID;
+static int hf_s1ap_MDT_Location_Info_Reserved;
+static int hf_s1ap_NRencryptionAlgorithms_NEA1;
+static int hf_s1ap_NRencryptionAlgorithms_NEA2;
+static int hf_s1ap_NRencryptionAlgorithms_NEA3;
+static int hf_s1ap_NRencryptionAlgorithms_Reserved;
+static int hf_s1ap_NRintegrityProtectionAlgorithms_NIA1;
+static int hf_s1ap_NRintegrityProtectionAlgorithms_NIA2;
+static int hf_s1ap_NRintegrityProtectionAlgorithms_NIA3;
+static int hf_s1ap_NRintegrityProtectionAlgorithms_Reserved;
+static int hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_streaming_service;
+static int hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_MTSI_service;
+static int hf_s1ap_UE_Application_Layer_Measurement_Capability_Reserved;
+static int hf_s1ap_rAT_RestrictionInformation_LEO;
+static int hf_s1ap_rAT_RestrictionInformation_MEO;
+static int hf_s1ap_rAT_RestrictionInformation_GEO;
+static int hf_s1ap_rAT_RestrictionInformation_OTHERSAT;
+static int hf_s1ap_rAT_RestrictionInformation_Reserved;
#include "packet-s1ap-hf.c"
/* Initialize the subtree pointers */
-static int ett_s1ap = -1;
-static int ett_s1ap_TransportLayerAddress = -1;
-static int ett_s1ap_ToTargetTransparentContainer = -1;
-static int ett_s1ap_ToSourceTransparentContainer = -1;
-static int ett_s1ap_RRCContainer = -1;
-static int ett_s1ap_UERadioCapability = -1;
-static int ett_s1ap_RIMInformation = -1;
-static int ett_s1ap_Cdma2000PDU = -1;
-static int ett_s1ap_Cdma2000SectorID = -1;
-static int ett_s1ap_UERadioPagingInformation = -1;
-static int ett_s1ap_UE_HistoryInformationFromTheUE = -1;
-static int ett_s1ap_CELevel = -1;
-static int ett_s1ap_UE_RLF_Report_Container = -1;
-static int ett_s1ap_UE_RLF_Report_Container_for_extended_bands = -1;
-static int ett_s1ap_S1_Message = -1;
-static int ett_s1ap_E_UTRAN_Trace_ID = -1;
-static int ett_s1ap_InterfacesToTrace = -1;
-static int ett_s1ap_EncryptionAlgorithms = -1;
-static int ett_s1ap_IntegrityProtectionAlgorithms = -1;
-static int ett_s1ap_LastVisitedNGRANCellInformation = -1;
-static int ett_s1ap_LastVisitedUTRANCellInformation = -1;
-static int ett_s1ap_SerialNumber = -1;
-static int ett_s1ap_WarningType = -1;
-static int ett_s1ap_DataCodingScheme = -1;
-static int ett_s1ap_WarningMessageContents = -1;
-static int ett_s1ap_MSClassmark = -1;
-static int ett_s1ap_MeasurementsToActivate = -1;
-static int ett_s1ap_MDT_Location_Info = -1;
-static int ett_s1ap_IMSI = -1;
-static int ett_s1ap_NASSecurityParameters = -1;
-static int ett_s1ap_NRencryptionAlgorithms = -1;
-static int ett_s1ap_NRintegrityProtectionAlgorithms = -1;
-static int ett_s1ap_UE_Application_Layer_Measurement_Capability = -1;
-static int ett_s1ap_sMTC = -1;
-static int ett_s1ap_threshRS_Index_r15 = -1;
-static int ett_s1ap_sSBToMeasure = -1;
-static int ett_s1ap_sSRSSIMeasurement = -1;
-static int ett_s1ap_quantityConfigNR_R15 = -1;
-static int ett_s1ap_blackCellsToAddModList = -1;
-static int ett_s1ap_NB_IoT_RLF_Report_Container = -1;
-static int ett_s1ap_MDT_ConfigurationNR = -1;
-static int ett_s1ap_IntersystemSONConfigurationTransfer = -1;
+static int ett_s1ap;
+static int ett_s1ap_TransportLayerAddress;
+static int ett_s1ap_ToTargetTransparentContainer;
+static int ett_s1ap_ToSourceTransparentContainer;
+static int ett_s1ap_RRCContainer;
+static int ett_s1ap_UERadioCapability;
+static int ett_s1ap_RIMInformation;
+static int ett_s1ap_Cdma2000PDU;
+static int ett_s1ap_Cdma2000SectorID;
+static int ett_s1ap_UERadioPagingInformation;
+static int ett_s1ap_UE_HistoryInformationFromTheUE;
+static int ett_s1ap_CELevel;
+static int ett_s1ap_UE_RLF_Report_Container;
+static int ett_s1ap_UE_RLF_Report_Container_for_extended_bands;
+static int ett_s1ap_S1_Message;
+static int ett_s1ap_E_UTRAN_Trace_ID;
+static int ett_s1ap_InterfacesToTrace;
+static int ett_s1ap_EncryptionAlgorithms;
+static int ett_s1ap_IntegrityProtectionAlgorithms;
+static int ett_s1ap_LastVisitedNGRANCellInformation;
+static int ett_s1ap_LastVisitedUTRANCellInformation;
+static int ett_s1ap_SerialNumber;
+static int ett_s1ap_WarningType;
+static int ett_s1ap_DataCodingScheme;
+static int ett_s1ap_WarningMessageContents;
+static int ett_s1ap_MSClassmark;
+static int ett_s1ap_MeasurementsToActivate;
+static int ett_s1ap_MDT_Location_Info;
+static int ett_s1ap_IMSI;
+static int ett_s1ap_NASSecurityParameters;
+static int ett_s1ap_NRencryptionAlgorithms;
+static int ett_s1ap_NRintegrityProtectionAlgorithms;
+static int ett_s1ap_UE_Application_Layer_Measurement_Capability;
+static int ett_s1ap_sMTC;
+static int ett_s1ap_threshRS_Index_r15;
+static int ett_s1ap_sSBToMeasure;
+static int ett_s1ap_sSRSSIMeasurement;
+static int ett_s1ap_quantityConfigNR_R15;
+static int ett_s1ap_excludedCellsToAddModList;
+static int ett_s1ap_NB_IoT_RLF_Report_Container;
+static int ett_s1ap_MDT_ConfigurationNR;
+static int ett_s1ap_IntersystemSONConfigurationTransfer;
+static int ett_s1ap_rAT_RestrictionInformation;
#include "packet-s1ap-ett.c"
-static expert_field ei_s1ap_number_pages_le15 = EI_INIT;
+static expert_field ei_s1ap_number_pages_le15;
enum{
INITIATING_MESSAGE,
@@ -221,7 +229,6 @@ enum {
};
/* Global variables */
-static guint gbl_s1apSctpPort=SCTP_PORT_S1AP;
static gboolean g_s1ap_dissect_container = TRUE;
static gint g_s1ap_dissect_lte_container_as = S1AP_LTE_CONTAINER_AUTOMATIC;
@@ -257,24 +264,25 @@ static int dissect_TargetBSS_ToSourceBSS_TransparentContainer_PDU(tvbuff_t *tvb,
static void
s1ap_Threshold_RSRP_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-140, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-140, v);
}
static void
s1ap_Threshold_RSRQ_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-20, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-20, v);
}
-static const true_false_string s1ap_tfs_interfacesToTrace = {
- "Should be traced",
- "Should not be traced"
-};
+static void
+s1ap_Hysteresis_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", (float)v/2, v);
+}
static void
s1ap_Time_UE_StayedInCell_EnhancedGranularity_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
}
const value_string s1ap_serialNumber_gs_vals[] = {
@@ -326,7 +334,7 @@ dissect_s1ap_warningMessageContents(tvbuff_t *warning_msg_tvb, proto_tree *tree,
static void
s1ap_EUTRANRoundTripDelayEstimationInfo_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uTs (%u)", 16*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs (%u)", 16*v, v);
}
static const true_false_string s1ap_tfs_activate_do_not_activate = {
@@ -337,25 +345,25 @@ static const true_false_string s1ap_tfs_activate_do_not_activate = {
static void
s1ap_Packet_LossRate_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v);
}
static void
s1ap_threshold_nr_rsrp_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
}
static void
s1ap_threshold_nr_rsrq_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
}
static void
s1ap_threshold_nr_sinr_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
}
static struct s1ap_private_data*
@@ -465,14 +473,9 @@ dissect_s1ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_
proto_tree *s1ap_tree = NULL;
conversation_t *conversation;
struct s1ap_private_data* s1ap_data;
- wmem_list_frame_t *prev_layer;
/* make entry in the Protocol column on summary display */
col_set_str(pinfo->cinfo, COL_PROTOCOL, "S1AP");
- /* ensure that parent dissector is not S1AP before clearing fence */
- prev_layer = wmem_list_frame_prev(wmem_list_tail(pinfo->layers));
- if (prev_layer && GPOINTER_TO_INT(wmem_list_frame_data(prev_layer)) != proto_s1ap)
- col_clear_fence(pinfo->cinfo, COL_INFO);
col_clear(pinfo->cinfo, COL_INFO);
/* create the s1ap protocol tree */
@@ -497,33 +500,19 @@ dissect_s1ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_
void
proto_reg_handoff_s1ap(void)
{
- static gboolean Initialized=FALSE;
- static guint SctpPort;
-
- if (!Initialized) {
- gcsna_handle = find_dissector_add_dependency("gcsna", proto_s1ap);
- nas_eps_handle = find_dissector_add_dependency("nas-eps", proto_s1ap);
- lppa_handle = find_dissector_add_dependency("lppa", proto_s1ap);
- bssgp_handle = find_dissector_add_dependency("bssgp", proto_s1ap);
- lte_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info", proto_s1ap);
- lte_rrc_ue_radio_access_cap_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info.nb", proto_s1ap);
- nr_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_access_cap_info", proto_s1ap);
- lte_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info", proto_s1ap);
- lte_rrc_ue_radio_paging_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info.nb", proto_s1ap);
- dissector_add_for_decode_as("sctp.port", s1ap_handle);
- dissector_add_uint("sctp.ppi", S1AP_PAYLOAD_PROTOCOL_ID, s1ap_handle);
- Initialized=TRUE;
+ gcsna_handle = find_dissector_add_dependency("gcsna", proto_s1ap);
+ nas_eps_handle = find_dissector_add_dependency("nas-eps", proto_s1ap);
+ lppa_handle = find_dissector_add_dependency("lppa", proto_s1ap);
+ bssgp_handle = find_dissector_add_dependency("bssgp", proto_s1ap);
+ lte_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info", proto_s1ap);
+ lte_rrc_ue_radio_access_cap_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_access_cap_info.nb", proto_s1ap);
+ nr_rrc_ue_radio_access_cap_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_access_cap_info", proto_s1ap);
+ lte_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info", proto_s1ap);
+ lte_rrc_ue_radio_paging_info_nb_handle = find_dissector_add_dependency("lte-rrc.ue_radio_paging_info.nb", proto_s1ap);
+ nr_rrc_ue_radio_paging_info_handle = find_dissector_add_dependency("nr-rrc.ue_radio_paging_info", proto_s1ap);
+ dissector_add_uint("sctp.ppi", S1AP_PAYLOAD_PROTOCOL_ID, s1ap_handle);
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_S1AP, s1ap_handle);
#include "packet-s1ap-dis-tab.c"
- } else {
- if (SctpPort != 0) {
- dissector_delete_uint("sctp.port", SctpPort, s1ap_handle);
- }
- }
-
- SctpPort=gbl_s1apSctpPort;
- if (SctpPort != 0) {
- dissector_add_uint("sctp.port", SctpPort, s1ap_handle);
- }
}
/*--- proto_register_s1ap -------------------------------------------*/
@@ -550,23 +539,23 @@ void proto_register_s1ap(void) {
NULL, HFILL }},
{ &hf_s1ap_interfacesToTrace_S1_MME,
{ "S1-MME", "s1ap.interfacesToTrace.S1_MME",
- FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x80,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x80,
NULL, HFILL }},
{ &hf_s1ap_interfacesToTrace_X2,
{ "X2", "s1ap.interfacesToTrace.X2",
- FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x40,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x40,
NULL, HFILL }},
{ &hf_s1ap_interfacesToTrace_Uu,
{ "Uu", "s1ap.interfacesToTrace.Uu",
- FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x20,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x20,
NULL, HFILL }},
{ &hf_s1ap_interfacesToTrace_F1_C,
{ "F1-C", "s1ap.interfacesToTrace.F1_C",
- FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x10,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x10,
NULL, HFILL }},
{ &hf_s1ap_interfacesToTrace_E1,
{ "E1", "s1ap.interfacesToTrace.E1",
- FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x08,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x08,
NULL, HFILL }},
{ &hf_s1ap_interfacesToTrace_Reserved,
{ "Reserved", "s1ap.interfacesToTrace.Reserved",
@@ -600,9 +589,13 @@ void proto_register_s1ap(void) {
{ "128-EIA3", "s1ap.integrityProtectionAlgorithms.EIA3",
FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x2000,
NULL, HFILL }},
+ { &hf_s1ap_integrityProtectionAlgorithms_EIA7,
+ { "EIA7", "s1ap.integrityProtectionAlgorithms.EIA7",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x0200,
+ NULL, HFILL }},
{ &hf_s1ap_integrityProtectionAlgorithms_Reserved,
{ "Reserved", "s1ap.integrityProtectionAlgorithms.Reserved",
- FT_UINT16, BASE_HEX, NULL, 0x1fff,
+ FT_UINT16, BASE_HEX, NULL, 0x1dff,
NULL, HFILL }},
{ &hf_s1ap_SerialNumber_gs,
{ "Geographical Scope", "s1ap.SerialNumber.gs",
@@ -634,7 +627,7 @@ void proto_register_s1ap(void) {
NULL, HFILL }},
{ &hf_s1ap_WarningMessageContents_decoded_page,
{ "Decoded Page", "s1ap.WarningMessageContents.decoded_page",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_s1ap_measurementsToActivate_M1,
{ "M1", "s1ap.measurementsToActivate.M1",
@@ -724,6 +717,26 @@ void proto_register_s1ap(void) {
{ "Reserved", "s1ap.UE_Application_Layer_Measurement_Capability.Reserved",
FT_UINT8, BASE_HEX, NULL, 0x3f,
NULL, HFILL }},
+ { &hf_s1ap_rAT_RestrictionInformation_LEO,
+ { "LEO", "s1ap.rAT_RestrictionInformation.LEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x80,
+ NULL, HFILL }},
+ { &hf_s1ap_rAT_RestrictionInformation_MEO,
+ { "MEO", "s1ap.rAT_RestrictionInformation.MEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x40,
+ NULL, HFILL }},
+ { &hf_s1ap_rAT_RestrictionInformation_GEO,
+ { "GEO", "s1ap.rAT_RestrictionInformation.GEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x20,
+ NULL, HFILL }},
+ { &hf_s1ap_rAT_RestrictionInformation_OTHERSAT,
+ { "OTHERSAT", "s1ap.rAT_RestrictionInformation.OTHERSAT",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x10,
+ NULL, HFILL }},
+ { &hf_s1ap_rAT_RestrictionInformation_Reserved,
+ { "Reserved", "s1ap.rAT_RestrictionInformation.Reserved",
+ FT_UINT8, BASE_HEX, NULL, 0x0f,
+ NULL, HFILL }},
#include "packet-s1ap-hfarr.c"
};
@@ -767,10 +780,11 @@ void proto_register_s1ap(void) {
&ett_s1ap_sSBToMeasure,
&ett_s1ap_sSRSSIMeasurement,
&ett_s1ap_quantityConfigNR_R15,
- &ett_s1ap_blackCellsToAddModList,
+ &ett_s1ap_excludedCellsToAddModList,
&ett_s1ap_NB_IoT_RLF_Report_Container,
&ett_s1ap_MDT_ConfigurationNR,
&ett_s1ap_IntersystemSONConfigurationTransfer,
+ &ett_s1ap_rAT_RestrictionInformation,
#include "packet-s1ap-ettarr.c"
};
@@ -802,13 +816,8 @@ void proto_register_s1ap(void) {
s1ap_proc_uout_dissector_table = register_dissector_table("s1ap.proc.uout", "S1AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_s1ap, FT_UINT32, BASE_DEC);
/* Register configuration options for ports */
- s1ap_module = prefs_register_protocol(proto_s1ap, proto_reg_handoff_s1ap);
+ s1ap_module = prefs_register_protocol(proto_s1ap, NULL);
- prefs_register_uint_preference(s1ap_module, "sctp.port",
- "S1AP SCTP Port",
- "Set the SCTP port for S1AP messages",
- 10,
- &gbl_s1apSctpPort);
prefs_register_bool_preference(s1ap_module, "dissect_container", "Dissect TransparentContainer", "Dissect TransparentContainers that are opaque to S1AP", &g_s1ap_dissect_container);
prefs_register_enum_preference(s1ap_module, "dissect_lte_container_as", "Dissect LTE TransparentContainer as",
"Select whether LTE TransparentContainer should be dissected as NB-IOT or legacy LTE",
diff --git a/epan/dissectors/asn1/s1ap/s1ap.cnf b/epan/dissectors/asn1/s1ap/s1ap.cnf
index 80bb2291a4..61cde3a23a 100644
--- a/epan/dissectors/asn1/s1ap/s1ap.cnf
+++ b/epan/dissectors/asn1/s1ap/s1ap.cnf
@@ -26,10 +26,11 @@ EUTRAN-CGI_PDU
Global-ENB-ID_PDU
Global-ENB-ID
HandoverRestrictionList_PDU
-ImmediateMDT_PDU
+IntersystemSONConfigurationTransfer_PDU
LastVisitedEUTRANCellInformation_PDU
LastVisitedGERANCellInformation_PDU
MDTMode_PDU
+PSCellInformation_PDU
SourceeNB-ToTargeteNB-TransparentContainer_PDU
SONConfigurationTransfer_PDU
SONtransferApplicationIdentity_PDU
@@ -46,10 +47,11 @@ EN-DCSONConfigurationTransfer
ENB-StatusTransfer-TransparentContainer
EUTRAN-CGI
HandoverRestrictionList
-ImmediateMDT
+IntersystemSONConfigurationTransfer
LastVisitedEUTRANCellInformation
LastVisitedGERANCellInformation
MDTMode
+PSCellInformation
S1AP-PDU
SourceeNB-ToTargeteNB-TransparentContainer
SONConfigurationTransfer
@@ -244,7 +246,7 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
# PLMNidentity ::= TBCD-STRING (SIZE (3))
# TBCD-STRING ::= OCTET STRING
-#.FN_BODY PLMNidentity VAL_PTR = parameter_tvb
+#.FN_BODY PLMNidentity VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
e212_number_type_t number_type = s1ap_data->number_type;
@@ -266,7 +268,7 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
}
#.END
-#.FN_BODY ENBname VAL_PTR = parameter_tvb
+#.FN_BODY ENBname VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
int length;
gboolean is_ascii;
@@ -282,7 +284,7 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
if (is_ascii)
proto_item_append_text(actx->created_item," (%%s)",tvb_format_text(actx->pinfo->pool, parameter_tvb, 0, length));
-#.FN_BODY MMEname VAL_PTR = parameter_tvb
+#.FN_BODY MMEname VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb=NULL;
int length;
gboolean is_ascii;
@@ -409,7 +411,7 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
show_exception(tvb, actx->pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
- offset = _offset;
+ offset = _offset;
@@ -489,8 +491,8 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
}
#.FN_BODY TargeteNB-ToSourceeNB-TransparentContainer
- struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
- volatile guint32 _offset;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ volatile guint32 _offset;
s1ap_data->transparent_container_type = TARGET_TO_SOURCE_TRANSPARENT_CONTAINER;
_offset = offset;
@@ -502,7 +504,7 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
show_exception(tvb, actx->pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
- offset = _offset;
+ offset = _offset;
#.FN_BODY Target-ToSource-TransparentContainer VAL_PTR = &parameter_tvb
# I think the message is "directly encoded" into the octet string(no "double encoding")
@@ -612,6 +614,7 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
if (g_s1ap_dissect_container) {
struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_RRCContainer);
+ volatile int saved_offset = offset;
switch(s1ap_data->transparent_container_type){
case SOURCE_TO_TARGET_TRANSPARENT_CONTAINER:
@@ -648,6 +651,7 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
default:
break;
}
+ offset = saved_offset;
}
#.FN_BODY UE-HistoryInformationFromTheUE VAL_PTR = &parameter_tvb
@@ -684,7 +688,7 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
if (s1ap_data->protocol_ie_id == id_UERadioCapability_NR_Format) {
handle = nr_rrc_ue_radio_access_cap_info_handle;
} else if ((s1ap_is_nbiot_ue(actx->pinfo) && (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_AUTOMATIC)) ||
- (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_NBIOT)) {
+ (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_NBIOT)) {
handle = lte_rrc_ue_radio_access_cap_info_nb_handle;
} else {
handle = lte_rrc_ue_radio_access_cap_info_handle;
@@ -706,6 +710,25 @@ Threshold-RSRP DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_Threshold_RSRP_fmt)
#.TYPE_ATTR
Threshold-RSRQ DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_Threshold_RSRQ_fmt)
+#.TYPE_ATTR
+Hysteresis DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_Hysteresis_fmt)
+
+#.FN_BODY RAT-RestrictionsItem/rAT-RestrictionInformation VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_rAT_RestrictionInformation_LEO,
+ &hf_s1ap_rAT_RestrictionInformation_MEO,
+ &hf_s1ap_rAT_RestrictionInformation_GEO,
+ &hf_s1ap_rAT_RestrictionInformation_OTHERSAT,
+ &hf_s1ap_rAT_RestrictionInformation_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_rAT_RestrictionInformation);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
+ }
+
# 9.2.3.24 RIM Information
# Contains the BSSGP RIM PDU
#.FN_BODY RIMInformation VAL_PTR = &parameter_tvb
@@ -769,10 +792,13 @@ if (gcsna_handle) {
return offset;
if (g_s1ap_dissect_container) {
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
volatile dissector_handle_t handle;
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UERadioPagingInformation);
- if ((s1ap_is_nbiot_ue(actx->pinfo) && (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_AUTOMATIC)) ||
- (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_NBIOT)) {
+ if (s1ap_data->protocol_ie_id == id_UERadioCapabilityForPaging_NR_Format) {
+ handle = nr_rrc_ue_radio_paging_info_handle;
+ } else if ((s1ap_is_nbiot_ue(actx->pinfo) && (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_AUTOMATIC)) ||
+ (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_NBIOT)) {
handle = lte_rrc_ue_radio_paging_info_nb_handle;
} else {
handle = lte_rrc_ue_radio_paging_info_handle;
@@ -799,6 +825,7 @@ if (gcsna_handle) {
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_CELevel);
+ volatile int saved_offset = offset;
if ((s1ap_is_nbiot_ue(actx->pinfo) && (g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_AUTOMATIC)) ||
(g_s1ap_dissect_lte_container_as == S1AP_LTE_CONTAINER_NBIOT)) {
TRY {
@@ -817,6 +844,7 @@ if (gcsna_handle) {
}
ENDTRY;
}
+ offset = saved_offset;
}
#.FN_BODY UE-RLF-Report-Container VAL_PTR = &parameter_tvb
@@ -830,13 +858,15 @@ if (gcsna_handle) {
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UE_RLF_Report_Container);
- TRY {
- dissect_lte_rrc_RLF_Report_r9_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- }
- CATCH_BOUNDS_ERRORS {
- show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
- }
- ENDTRY;
+ volatile int saved_offset = offset;
+ TRY {
+ dissect_lte_rrc_RLF_Report_r9_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ offset = saved_offset;
}
#.FN_BODY UE-RLF-Report-Container-for-extended-bands VAL_PTR = &parameter_tvb
@@ -850,6 +880,7 @@ if (gcsna_handle) {
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UE_RLF_Report_Container_for_extended_bands);
+ volatile int saved_offset = offset;
TRY {
dissect_lte_rrc_RLF_Report_v9e0_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
@@ -857,6 +888,7 @@ if (gcsna_handle) {
show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
+ offset = saved_offset;
}
#.FN_BODY NB-IoT-RLF-Report-Container VAL_PTR = &parameter_tvb
@@ -868,6 +900,7 @@ if (gcsna_handle) {
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_NB_IoT_RLF_Report_Container);
+ volatile int saved_offset = offset;
TRY {
dissect_lte_rrc_RLF_Report_NB_r16_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
@@ -875,6 +908,7 @@ if (gcsna_handle) {
show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
+ offset = saved_offset;
}
#.FN_BODY TooEarlyInterRATHOReportReportFromEUTRAN/uERLFReportContainer VAL_PTR = &parameter_tvb
@@ -888,6 +922,7 @@ if (gcsna_handle) {
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UE_RLF_Report_Container);
+ volatile int saved_offset = offset;
TRY {
dissect_lte_rrc_RLF_Report_r9_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
@@ -895,6 +930,7 @@ if (gcsna_handle) {
show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
+ offset = saved_offset;
}
#.TYPE_ATTR
@@ -994,12 +1030,12 @@ BitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_sec
dissect_lte_rrc_QuantityConfigNR_r15_PDU(quantity_config_nr_tvb, actx->pinfo, subtree, NULL);
}
-#.FN_BODY InterSystemMeasurementItem/blackCellsToAddModList VAL_PTR = &black_cells_list_tvb
- tvbuff_t *black_cells_list_tvb = NULL;
+#.FN_BODY InterSystemMeasurementItem/excludedCellsToAddModList VAL_PTR = &excluded_cells_list_tvb
+ tvbuff_t *excluded_cells_list_tvb = NULL;
%(DEFAULT_BODY)s
- if (black_cells_list_tvb) {
- proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_blackCellsToAddModList);
- dissect_lte_rrc_CellsToAddModListNR_r15_PDU(black_cells_list_tvb, actx->pinfo, subtree, NULL);
+ if (excluded_cells_list_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_excludedCellsToAddModList);
+ dissect_lte_rrc_CellsToAddModListNR_r15_PDU(excluded_cells_list_tvb, actx->pinfo, subtree, NULL);
}
#.FN_BODY GUMMEI
@@ -1048,6 +1084,7 @@ MME-Group-ID TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
&hf_s1ap_integrityProtectionAlgorithms_EIA1,
&hf_s1ap_integrityProtectionAlgorithms_EIA2,
&hf_s1ap_integrityProtectionAlgorithms_EIA3,
+ &hf_s1ap_integrityProtectionAlgorithms_EIA7,
&hf_s1ap_integrityProtectionAlgorithms_Reserved,
NULL
};
@@ -1071,6 +1108,12 @@ Time-UE-StayedInCell-EnhancedGranularity DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC
#.TYPE_ATTR
TimeSinceSecondaryNodeRelease TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+#.TYPE_ATTR
+LastVisitedPSCellInformation/timeStay DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+RecommendedCellItem/timeStayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
#.FN_BODY LastVisitedNGRANCellInformation VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
proto_tree *subtree;
@@ -1080,6 +1123,7 @@ TimeSinceSecondaryNodeRelease TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_UNIT_STRING S
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_LastVisitedNGRANCellInformation);
+ volatile int saved_offset = offset;
TRY {
dissect_ngap_LastVisitedNGRANCellInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
@@ -1087,6 +1131,7 @@ TimeSinceSecondaryNodeRelease TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_UNIT_STRING S
show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
+ offset = saved_offset;
}
#.FN_BODY LastVisitedUTRANCellInformation VAL_PTR = &parameter_tvb
@@ -1098,6 +1143,7 @@ TimeSinceSecondaryNodeRelease TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_UNIT_STRING S
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_LastVisitedUTRANCellInformation);
+ volatile int saved_offset = offset;
TRY {
dissect_ranap_LastVisitedUTRANCell_Item_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
@@ -1105,6 +1151,7 @@ TimeSinceSecondaryNodeRelease TYPE=FT_UINT32 DISPLAY=BASE_DEC|BASE_UNIT_STRING S
show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
}
ENDTRY;
+ offset = saved_offset;
}
#.TYPE_ATTR
@@ -1219,7 +1266,7 @@ ExtendedRepetitionPeriod DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_second
}
#.TYPE_ATTR
-LHN-ID TYPE=FT_STRING DISPLAY = STR_UNICODE
+LHN-ID TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY LHN-ID VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1410,7 +1457,7 @@ M-TMSI TYPE = FT_UINT32 DISPLAY = BASE_DEC_HEX
guint32 rat_type = 0xffffffff;
struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
%(DEFAULT_BODY)s
- if (s1ap_data->s1ap_conv && s1ap_data->supported_ta && (rat_type == nbiot)) {
+ if (s1ap_data->s1ap_conv && s1ap_data->supported_ta && rat_type <= nbiot_othersat) {
guint64 *key;
guint i;
@@ -1471,7 +1518,7 @@ M-TMSI TYPE = FT_UINT32 DISPLAY = BASE_DEC_HEX
Packet-LossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_Packet_LossRate_fmt)
#.TYPE_ATTR
-BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
+BluetoothName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY BluetoothName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1479,7 +1526,7 @@ BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
#.END
#.TYPE_ATTR
-WLANName TYPE=FT_STRING DISPLAY = STR_UNICODE
+WLANName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY WLANName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -1893,6 +1940,24 @@ id-WUS-Assistance-Information ProtocolIE-ID
id-NB-IoT-PagingDRX ProtocolIE-ID
id-TraceCollectionEntityURI ProtocolIE-ID
id-EmergencyIndicator ProtocolIE-ID
+id-UERadioCapabilityForPaging-NR-Format ProtocolIE-ID
+id-SourceTransportLayerAddress ProtocolIE-ID
+id-lastVisitedPSCellList ProtocolIE-ID
+id-RACSIndication ProtocolIE-ID
+id-PagingCause ProtocolIE-ID
+id-SecurityIndication ProtocolIE-ID
+id-SecurityResult ProtocolIE-ID
+id-E-RABSecurityResultItem ProtocolIE-ID
+id-E-RABSecurityResultList ProtocolIE-ID
+id-RAT-Restrictions ProtocolIE-ID
+id-UEContextReferenceatSourceeNB ProtocolIE-ID
+id-LTE-NTN-TAI-Information ProtocolIE-ID
+id-SourceNodeTransportLayerAddress ProtocolIE-ID
+id-E-RABToBeUpdatedList ProtocolIE-ID
+id-E-RABToBeUpdatedItem ProtocolIE-ID
+id-SourceSNID ProtocolIE-ID
+id-LoggedMDTTrigger ProtocolIE-ID
+id-SensorMeasurementConfiguration ProtocolIE-ID
#.END
@@ -2141,6 +2206,12 @@ ENB-EarlyStatusTransfer-TransparentContainer N s1ap.ies id-eNB-EarlyStatusTra
Bearers-SubjectToEarlyStatusTransfer-Item N s1ap.ies id-Bearers-SubjectToEarlyStatusTransfer-Item
WUS-Assistance-Information N s1ap.ies id-WUS-Assistance-Information
NB-IoT-PagingDRX N s1ap.ies id-NB-IoT-PagingDRX
+UERadioCapabilityForPaging N s1ap.ies id-UERadioCapabilityForPaging-NR-Format
+PagingCause N s1ap.ies id-PagingCause
+E-RABSecurityResultItem N s1ap.ies id-E-RABSecurityResultItem
+LTE-NTN-TAI-Information N s1ap.ies id-LTE-NTN-TAI-Information
+E-RABToBeUpdatedList N s1ap.ies id-E-RABToBeUpdatedList
+E-RABToBeUpdatedItem N s1ap.ies id-E-RABToBeUpdatedItem
#S1AP-PROTOCOL-IES-PAIR
#RAB-SetupOrModifyItemFirst N s1ap.ies.pair.first id-RAB-SetupOrModifyItem
@@ -2201,7 +2272,7 @@ NRrestrictionin5GS N s1ap.extension id-NRrestrictionin5GS
PLMNidentity N s1ap.extension id-LastNG-RANPLMNIdentity
PSCellInformation N s1ap.extension id-PSCellInformation
IMSvoiceEPSfallbackfrom5G N s1ap.extension id-IMSvoiceEPSfallbackfrom5G
-RequestTypeAdditionalInfo N s1ap.extension id-TimeSinceSecondaryNodeRelease
+RequestTypeAdditionalInfo N s1ap.extension id-RequestTypeAdditionalInfo
ContextatSource N s1ap.extension id-ContextatSource
Ethernet-Type N s1ap.extension id-Ethernet-Type
IntersystemMeasurementConfiguration N s1ap.extension id-IntersystemMeasurementConfiguration
@@ -2212,6 +2283,18 @@ DAPSRequestInfo N s1ap.extension id-DAPSRequestInfo
DAPSResponseInfoList N s1ap.extension id-DAPSResponseInfoList
URI-Address N s1ap.extension id-TraceCollectionEntityURI
EmergencyIndicator N s1ap.extension id-EmergencyIndicator
+TransportLayerAddress N s1ap.extension id-SourceTransportLayerAddress
+LastVisitedPSCellList N s1ap.extension id-lastVisitedPSCellList
+RACSIndication N s1ap.extension id-RACSIndication
+SecurityIndication N s1ap.extension id-SecurityIndication
+E-RABSecurityResultList N s1ap.extension id-E-RABSecurityResultList
+RAT-Restrictions N s1ap.extension id-RAT-Restrictions
+ENB-UE-S1AP-ID N s1ap.extension id-UEContextReferenceatSourceeNB
+LTE-NTN-TAI-Information N s1ap.extension id-LTE-NTN-TAI-Information
+TransportLayerAddress N s1ap.extension id-SourceNodeTransportLayerAddress
+Global-RAN-NODE-ID N s1ap.extension id-SourceSNID
+LoggedMDTTrigger N s1ap.extension id-LoggedMDTTrigger
+SensorMeasurementConfiguration N s1ap.extension id-SensorMeasurementConfiguration
#S1AP-ELEMENTARY-PROCEDURE
HandoverRequired N s1ap.proc.imsg id-HandoverPreparation
@@ -2618,13 +2701,12 @@ MMEEarlyStatusTransfer N s1ap.proc.imsg id-MMEEarlyStatusTransf
%(DEFAULT_BODY)s
#.FIELD_ATTR
-EUTRAN-CGI/cell-ID ABBREV=CellIdentity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+EUTRAN-CGI/cell-ID ABBREV=CellIdentity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FN_BODY CellIdentity VAL_PTR = &cell_id_tvb HF_INDEX=-1
tvbuff_t *cell_id_tvb = NULL;
%(DEFAULT_BODY)s
if (cell_id_tvb) {
- guint32 cell_id = tvb_get_bits32(cell_id_tvb, 0, 28, ENC_BIG_ENDIAN);
- actx->created_item = proto_tree_add_uint(tree, hf_index, cell_id_tvb, 0, 4, cell_id);
+ actx->created_item = proto_tree_add_item(tree, hf_index, cell_id_tvb, 0, 4, ENC_BIG_ENDIAN);
}
#.END
diff --git a/epan/dissectors/asn1/sabp/packet-sabp-template.c b/epan/dissectors/asn1/sabp/packet-sabp-template.c
index 2f10494a7f..2ba18a36e3 100644
--- a/epan/dissectors/asn1/sabp/packet-sabp-template.c
+++ b/epan/dissectors/asn1/sabp/packet-sabp-template.c
@@ -35,23 +35,23 @@ void proto_register_sabp(void);
void proto_reg_handoff_sabp(void);
/* Initialize the protocol and registered fields */
-static int proto_sabp = -1;
+static int proto_sabp;
-static int hf_sabp_no_of_pages = -1;
-static int hf_sabp_cb_inf_len = -1;
-static int hf_sabp_cb_msg_inf_page = -1;
-static int hf_sabp_cbs_page_content = -1;
+static int hf_sabp_no_of_pages;
+static int hf_sabp_cb_inf_len;
+static int hf_sabp_cb_msg_inf_page;
+static int hf_sabp_cbs_page_content;
#include "packet-sabp-hf.c"
/* Initialize the subtree pointers */
-static int ett_sabp = -1;
-static int ett_sabp_e212 = -1;
-static int ett_sabp_cbs_data_coding = -1;
-static int ett_sabp_bcast_msg = -1;
-static int ett_sabp_cbs_serial_number = -1;
-static int ett_sabp_cbs_new_serial_number = -1;
-static int ett_sabp_cbs_page = -1;
-static int ett_sabp_cbs_page_content = -1;
+static int ett_sabp;
+static int ett_sabp_e212;
+static int ett_sabp_cbs_data_coding;
+static int ett_sabp_bcast_msg;
+static int ett_sabp_cbs_serial_number;
+static int ett_sabp_cbs_new_serial_number;
+static int ett_sabp_cbs_page;
+static int ett_sabp_cbs_page_content;
#include "packet-sabp-ett.c"
@@ -145,7 +145,7 @@ dissect_sabp_cb_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (unpacked_tvb != NULL){
if (tree != NULL){
proto_tree *cbs_page_subtree = proto_item_add_subtree(cbs_page_item, ett_sabp_cbs_page_content);
- proto_tree_add_item(cbs_page_subtree, hf_sabp_cbs_page_content, unpacked_tvb, 0, len, ENC_UTF_8|ENC_NA);
+ proto_tree_add_item(cbs_page_subtree, hf_sabp_cbs_page_content, unpacked_tvb, 0, len, ENC_UTF_8);
}
}
@@ -228,7 +228,7 @@ void proto_register_sabp(void) {
NULL, HFILL }},
{ &hf_sabp_cbs_page_content,
{ "CBS Page Content", "sabp.cb_page_content",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
{ &hf_sabp_cb_inf_len,
{ "CBS-Message-Information-Length", "sabp.cb_inf_len",
diff --git a/epan/dissectors/asn1/sabp/sabp.cnf b/epan/dissectors/asn1/sabp/sabp.cnf
index 2630514e4a..4359328c27 100644
--- a/epan/dissectors/asn1/sabp/sabp.cnf
+++ b/epan/dissectors/asn1/sabp/sabp.cnf
@@ -42,7 +42,8 @@ MessageStructure/_item/repetitionNumber repetitionNumber1
#.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)"));
+ 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
@@ -55,8 +56,8 @@ MessageStructure/_item/repetitionNumber repetitionNumber1
#.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"));
+ val_to_str_ext_const(ProcedureCode, &sabp_ProcedureCode_vals_ext,
+ "unknown message"));
#.END
#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
diff --git a/epan/dissectors/asn1/sbc-ap/packet-sbc-ap-template.c b/epan/dissectors/asn1/sbc-ap/packet-sbc-ap-template.c
index fb29eb6ccb..0bf0c836d7 100644
--- a/epan/dissectors/asn1/sbc-ap/packet-sbc-ap-template.c
+++ b/epan/dissectors/asn1/sbc-ap/packet-sbc-ap-template.c
@@ -42,24 +42,24 @@ static dissector_handle_t sbc_ap_handle=NULL;
#include "packet-sbc-ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_sbc_ap = -1;
-
-static int hf_sbc_ap_Serial_Number_gs = -1;
-static int hf_sbc_ap_Serial_Number_msg_code = -1;
-static int hf_sbc_ap_Serial_Number_upd_nb = -1;
-static int hf_sbc_ap_Warning_Type_value = -1;
-static int hf_sbc_ap_Warning_Type_emergency_user_alert = -1;
-static int hf_sbc_ap_Warning_Type_popup = -1;
-static int hf_sbc_ap_Warning_Message_Contents_nb_pages = -1;
-static int hf_sbc_ap_Warning_Message_Contents_decoded_page = -1;
+static int proto_sbc_ap;
+
+static int hf_sbc_ap_Serial_Number_gs;
+static int hf_sbc_ap_Serial_Number_msg_code;
+static int hf_sbc_ap_Serial_Number_upd_nb;
+static int hf_sbc_ap_Warning_Type_value;
+static int hf_sbc_ap_Warning_Type_emergency_user_alert;
+static int hf_sbc_ap_Warning_Type_popup;
+static int hf_sbc_ap_Warning_Message_Contents_nb_pages;
+static int hf_sbc_ap_Warning_Message_Contents_decoded_page;
#include "packet-sbc-ap-hf.c"
/* Initialize the subtree pointers */
-static int ett_sbc_ap = -1;
-static int ett_sbc_ap_Serial_Number = -1;
-static int ett_sbc_ap_Warning_Type = -1;
-static int ett_sbc_ap_Data_Coding_Scheme = -1;
-static int ett_sbc_ap_Warning_Message_Contents = -1;
+static int ett_sbc_ap;
+static int ett_sbc_ap_Serial_Number;
+static int ett_sbc_ap_Warning_Type;
+static int ett_sbc_ap_Data_Coding_Scheme;
+static int ett_sbc_ap_Warning_Message_Contents;
#include "packet-sbc-ap-ett.c"
@@ -197,7 +197,7 @@ void proto_register_sbc_ap(void) {
NULL, HFILL }},
{ &hf_sbc_ap_Warning_Message_Contents_decoded_page,
{ "Decoded Page", "sbc-ap.WarningMessageContents.decoded_page",
- FT_STRING, STR_UNICODE, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
NULL, HFILL }},
#include "packet-sbc-ap-hfarr.c"
};
@@ -219,6 +219,8 @@ void proto_register_sbc_ap(void) {
proto_register_field_array(proto_sbc_ap, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
+ /* Register dissector */
+ sbc_ap_handle = register_dissector(PFNAME, dissect_sbc_ap, proto_sbc_ap);
/* Register dissector tables */
sbc_ap_ies_dissector_table = register_dissector_table("sbc_ap.ies", "SBC-AP-PROTOCOL-IES", proto_sbc_ap, FT_UINT32, BASE_DEC);
@@ -239,7 +241,6 @@ proto_reg_handoff_sbc_ap(void)
static guint SctpPort;
if( !inited ) {
- sbc_ap_handle = create_dissector_handle(dissect_sbc_ap, proto_sbc_ap);
dissector_add_uint("sctp.ppi", SBC_AP_PAYLOAD_PROTOCOL_ID, sbc_ap_handle);
inited = TRUE;
#include "packet-sbc-ap-dis-tab.c"
diff --git a/epan/dissectors/asn1/smrse/packet-smrse-template.c b/epan/dissectors/asn1/smrse/packet-smrse-template.c
index ebdd04d8a8..040040150d 100644
--- a/epan/dissectors/asn1/smrse/packet-smrse-template.c
+++ b/epan/dissectors/asn1/smrse/packet-smrse-template.c
@@ -26,16 +26,18 @@
void proto_register_smrse(void);
void proto_reg_handoff_smrse(void);
+static dissector_handle_t smrse_handle;
+
/* Initialize the protocol and registered fields */
-static int proto_smrse = -1;
-static int hf_smrse_reserved = -1;
-static int hf_smrse_tag = -1;
-static int hf_smrse_length = -1;
-static int hf_smrse_Octet_Format = -1;
+static int proto_smrse;
+static int hf_smrse_reserved;
+static int hf_smrse_tag;
+static int hf_smrse_length;
+static int hf_smrse_Octet_Format;
#include "packet-smrse-hf.c"
/* Initialize the subtree pointers */
-static gint ett_smrse = -1;
+static gint ett_smrse;
#include "packet-smrse-ett.c"
@@ -154,6 +156,9 @@ void proto_register_smrse(void) {
/* Register protocol */
proto_smrse = proto_register_protocol(PNAME, PSNAME, PFNAME);
+ /* Register dissector */
+ smrse_handle = register_dissector(PFNAME, dissect_smrse, proto_smrse);
+
/* Register fields and subtrees */
proto_register_field_array(proto_smrse, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
@@ -163,9 +168,6 @@ void proto_register_smrse(void) {
/*--- proto_reg_handoff_smrse -------------------------------------------*/
void proto_reg_handoff_smrse(void) {
- dissector_handle_t smrse_handle;
-
- smrse_handle = create_dissector_handle(dissect_smrse, proto_smrse);
dissector_add_uint_with_preference("tcp.port",TCP_PORT_SMRSE, smrse_handle);
}
diff --git a/epan/dissectors/asn1/smrse/smrse.cnf b/epan/dissectors/asn1/smrse/smrse.cnf
index 7aec8fd20e..7794027cb9 100644
--- a/epan/dissectors/asn1/smrse/smrse.cnf
+++ b/epan/dissectors/asn1/smrse/smrse.cnf
@@ -19,7 +19,7 @@ SemiOctetString
char *strp,tmpstr[21];
guint32 i, start_offset;
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
static char n2a[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
@@ -41,9 +41,6 @@ SemiOctetString
*strp=0;
proto_tree_add_string(tree, hf_smrse_Octet_Format, tvb, start_offset, offset-start_offset, tmpstr);
-
- return offset;
-
#.END
diff --git a/epan/dissectors/asn1/snmp/packet-snmp-template.c b/epan/dissectors/asn1/snmp/packet-snmp-template.c
index dd47331c85..003b1ed2de 100644
--- a/epan/dissectors/asn1/snmp/packet-snmp-template.c
+++ b/epan/dissectors/asn1/snmp/packet-snmp-template.c
@@ -69,9 +69,9 @@
#define SNMP_NUM_PROCEDURES 8
/* Initialize the protocol and registered fields */
-static int snmp_tap = -1;
-static int proto_snmp = -1;
-static int proto_smux = -1;
+static int snmp_tap;
+static int proto_snmp;
+static int proto_smux;
static gboolean display_oid = TRUE;
static gboolean snmp_var_in_tree = TRUE;
@@ -89,7 +89,7 @@ static tvbuff_t* snmp_usm_priv_aes128(snmp_usm_params_t*, tvbuff_t*, packet_info
static tvbuff_t* snmp_usm_priv_aes192(snmp_usm_params_t*, tvbuff_t*, packet_info *pinfo, gchar const**);
static tvbuff_t* snmp_usm_priv_aes256(snmp_usm_params_t*, tvbuff_t*, packet_info *pinfo, gchar const**);
-static gboolean snmp_usm_auth(const packet_info *pinfo, const snmp_usm_auth_model_t model, snmp_usm_params_t* p, guint8**, guint*, gchar const**);
+static bool snmp_usm_auth(const packet_info *pinfo, const snmp_usm_auth_model_t model, snmp_usm_params_t* p, guint8**, guint*, gchar const**);
static const value_string auth_types[] = {
{SNMP_USM_AUTH_MD5,"MD5"},
@@ -182,107 +182,109 @@ tvbuff_t *oid_tvb=NULL;
tvbuff_t *value_tvb=NULL;
static dissector_handle_t snmp_handle;
+static dissector_handle_t snmp_tcp_handle;
static dissector_handle_t data_handle;
+static dissector_handle_t smux_handle;
static next_tvb_list_t *var_list;
-static int hf_snmp_response_in = -1;
-static int hf_snmp_response_to = -1;
-static int hf_snmp_time = -1;
-
-static int hf_snmp_v3_flags_auth = -1;
-static int hf_snmp_v3_flags_crypt = -1;
-static int hf_snmp_v3_flags_report = -1;
-
-static int hf_snmp_engineid_conform = -1;
-static int hf_snmp_engineid_enterprise = -1;
-static int hf_snmp_engineid_format = -1;
-static int hf_snmp_engineid_ipv4 = -1;
-static int hf_snmp_engineid_ipv6 = -1;
-static int hf_snmp_engineid_cisco_type = -1;
-static int hf_snmp_engineid_mac = -1;
-static int hf_snmp_engineid_text = -1;
-static int hf_snmp_engineid_time = -1;
-static int hf_snmp_engineid_data = -1;
-static int hf_snmp_decryptedPDU = -1;
-static int hf_snmp_msgAuthentication = -1;
-
-static int hf_snmp_noSuchObject = -1;
-static int hf_snmp_noSuchInstance = -1;
-static int hf_snmp_endOfMibView = -1;
-static int hf_snmp_unSpecified = -1;
-
-static int hf_snmp_integer32_value = -1;
-static int hf_snmp_octetstring_value = -1;
-static int hf_snmp_oid_value = -1;
-static int hf_snmp_null_value = -1;
-static int hf_snmp_ipv4_value = -1;
-static int hf_snmp_ipv6_value = -1;
-static int hf_snmp_anyaddress_value = -1;
-static int hf_snmp_unsigned32_value = -1;
-static int hf_snmp_unknown_value = -1;
-static int hf_snmp_opaque_value = -1;
-static int hf_snmp_nsap_value = -1;
-static int hf_snmp_counter_value = -1;
-static int hf_snmp_timeticks_value = -1;
-static int hf_snmp_big_counter_value = -1;
-static int hf_snmp_gauge32_value = -1;
-
-static int hf_snmp_objectname = -1;
-static int hf_snmp_scalar_instance_index = -1;
-
-static int hf_snmp_var_bind_str = -1;
-static int hf_snmp_agentid_trailer = -1;
+static int hf_snmp_response_in;
+static int hf_snmp_response_to;
+static int hf_snmp_time;
+
+static int hf_snmp_v3_flags_auth;
+static int hf_snmp_v3_flags_crypt;
+static int hf_snmp_v3_flags_report;
+
+static int hf_snmp_engineid_conform;
+static int hf_snmp_engineid_enterprise;
+static int hf_snmp_engineid_format;
+static int hf_snmp_engineid_ipv4;
+static int hf_snmp_engineid_ipv6;
+static int hf_snmp_engineid_cisco_type;
+static int hf_snmp_engineid_mac;
+static int hf_snmp_engineid_text;
+static int hf_snmp_engineid_time;
+static int hf_snmp_engineid_data;
+static int hf_snmp_decryptedPDU;
+static int hf_snmp_msgAuthentication;
+
+static int hf_snmp_noSuchObject;
+static int hf_snmp_noSuchInstance;
+static int hf_snmp_endOfMibView;
+static int hf_snmp_unSpecified;
+
+static int hf_snmp_integer32_value;
+static int hf_snmp_octetstring_value;
+static int hf_snmp_oid_value;
+static int hf_snmp_null_value;
+static int hf_snmp_ipv4_value;
+static int hf_snmp_ipv6_value;
+static int hf_snmp_anyaddress_value;
+static int hf_snmp_unsigned32_value;
+static int hf_snmp_unknown_value;
+static int hf_snmp_opaque_value;
+static int hf_snmp_nsap_value;
+static int hf_snmp_counter_value;
+static int hf_snmp_timeticks_value;
+static int hf_snmp_big_counter_value;
+static int hf_snmp_gauge32_value;
+
+static int hf_snmp_objectname;
+static int hf_snmp_scalar_instance_index;
+
+static int hf_snmp_var_bind_str;
+static int hf_snmp_agentid_trailer;
#include "packet-snmp-hf.c"
/* Initialize the subtree pointers */
-static gint ett_smux = -1;
-static gint ett_snmp = -1;
-static gint ett_engineid = -1;
-static gint ett_msgFlags = -1;
-static gint ett_encryptedPDU = -1;
-static gint ett_decrypted = -1;
-static gint ett_authParameters = -1;
-static gint ett_internet = -1;
-static gint ett_varbind = -1;
-static gint ett_name = -1;
-static gint ett_value = -1;
-static gint ett_decoding_error = -1;
+static gint ett_smux;
+static gint ett_snmp;
+static gint ett_engineid;
+static gint ett_msgFlags;
+static gint ett_encryptedPDU;
+static gint ett_decrypted;
+static gint ett_authParameters;
+static gint ett_internet;
+static gint ett_varbind;
+static gint ett_name;
+static gint ett_value;
+static gint ett_decoding_error;
#include "packet-snmp-ett.c"
-static expert_field ei_snmp_failed_decrypted_data_pdu = EI_INIT;
-static expert_field ei_snmp_decrypted_data_bad_formatted = EI_INIT;
-static expert_field ei_snmp_verify_authentication_error = EI_INIT;
-static expert_field ei_snmp_authentication_ok = EI_INIT;
-static expert_field ei_snmp_authentication_error = EI_INIT;
-static expert_field ei_snmp_varbind_not_uni_class_seq = EI_INIT;
-static expert_field ei_snmp_varbind_has_indicator = EI_INIT;
-static expert_field ei_snmp_objectname_not_oid = EI_INIT;
-static expert_field ei_snmp_objectname_has_indicator = EI_INIT;
-static expert_field ei_snmp_value_not_primitive_encoding = EI_INIT;
-static expert_field ei_snmp_invalid_oid = EI_INIT;
-static expert_field ei_snmp_varbind_wrong_tag = EI_INIT;
-static expert_field ei_snmp_varbind_response = EI_INIT;
-static expert_field ei_snmp_no_instance_subid = EI_INIT;
-static expert_field ei_snmp_wrong_num_of_subids = EI_INIT;
-static expert_field ei_snmp_index_suboid_too_short = EI_INIT;
-static expert_field ei_snmp_unimplemented_instance_index = EI_INIT;
-static expert_field ei_snmp_index_suboid_len0 = EI_INIT;
-static expert_field ei_snmp_index_suboid_too_long = EI_INIT;
-static expert_field ei_snmp_index_string_too_long = EI_INIT;
-static expert_field ei_snmp_column_parent_not_row = EI_INIT;
-static expert_field ei_snmp_uint_too_large = EI_INIT;
-static expert_field ei_snmp_int_too_large = EI_INIT;
-static expert_field ei_snmp_integral_value0 = EI_INIT;
-static expert_field ei_snmp_missing_mib = EI_INIT;
-static expert_field ei_snmp_varbind_wrong_length_value = EI_INIT;
-static expert_field ei_snmp_varbind_wrong_class_tag = EI_INIT;
-static expert_field ei_snmp_rfc1910_non_conformant = EI_INIT;
-static expert_field ei_snmp_rfc3411_non_conformant = EI_INIT;
-static expert_field ei_snmp_version_unknown = EI_INIT;
-static expert_field ei_snmp_trap_pdu_obsolete = EI_INIT;
+static expert_field ei_snmp_failed_decrypted_data_pdu;
+static expert_field ei_snmp_decrypted_data_bad_formatted;
+static expert_field ei_snmp_verify_authentication_error;
+static expert_field ei_snmp_authentication_ok;
+static expert_field ei_snmp_authentication_error;
+static expert_field ei_snmp_varbind_not_uni_class_seq;
+static expert_field ei_snmp_varbind_has_indicator;
+static expert_field ei_snmp_objectname_not_oid;
+static expert_field ei_snmp_objectname_has_indicator;
+static expert_field ei_snmp_value_not_primitive_encoding;
+static expert_field ei_snmp_invalid_oid;
+static expert_field ei_snmp_varbind_wrong_tag;
+static expert_field ei_snmp_varbind_response;
+static expert_field ei_snmp_no_instance_subid;
+static expert_field ei_snmp_wrong_num_of_subids;
+static expert_field ei_snmp_index_suboid_too_short;
+static expert_field ei_snmp_unimplemented_instance_index;
+static expert_field ei_snmp_index_suboid_len0;
+static expert_field ei_snmp_index_suboid_too_long;
+static expert_field ei_snmp_index_string_too_long;
+static expert_field ei_snmp_column_parent_not_row;
+static expert_field ei_snmp_uint_too_large;
+static expert_field ei_snmp_int_too_large;
+static expert_field ei_snmp_integral_value0;
+static expert_field ei_snmp_missing_mib;
+static expert_field ei_snmp_varbind_wrong_length_value;
+static expert_field ei_snmp_varbind_wrong_class_tag;
+static expert_field ei_snmp_rfc1910_non_conformant;
+static expert_field ei_snmp_rfc3411_non_conformant;
+static expert_field ei_snmp_version_unknown;
+static expert_field ei_snmp_trap_pdu_obsolete;
static const true_false_string auth_flags = {
"OK",
@@ -323,7 +325,7 @@ static const value_string smux_types[] = {
#endif
/* Procedure names (used in Service Response Time) */
-const value_string snmp_procedure_names[] = {
+static const value_string snmp_procedure_names[] = {
{ 0, "Get" },
{ 1, "GetNext" },
{ 3, "Set" },
@@ -356,6 +358,9 @@ typedef struct snmp_conv_info_t {
wmem_map_t *request_response;
} snmp_conv_info_t;
+static snmp_conv_info_t*
+snmp_find_conversation_and_get_conv_data(packet_info *pinfo);
+
static snmp_request_response_t *
snmp_get_request_response_pointer(wmem_map_t *map, guint32 requestId)
{
@@ -441,7 +446,7 @@ snmpstat_init(struct register_srt* srt _U_, GArray* srt_array)
/* This is called only if request and response was matched -> no need to return anything than TAP_PACKET_REDRAW */
static tap_packet_status
-snmpstat_packet(void *psnmp, packet_info *pinfo, epan_dissect_t *edt _U_, const void *psi)
+snmpstat_packet(void *psnmp, packet_info *pinfo, epan_dissect_t *edt _U_, const void *psi, tap_flags_t flags _U_)
{
guint i = 0;
srt_stat_table *snmp_srt_table;
@@ -476,7 +481,7 @@ static int
dissect_snmp_variable_string(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
- proto_tree_add_item(tree, hf_snmp_var_bind_str, tvb, 0, -1, ENC_ASCII|ENC_NA);
+ proto_tree_add_item(tree, hf_snmp_var_bind_str, tvb, 0, -1, ENC_ASCII);
return tvb_captured_length(tvb);
}
@@ -636,15 +641,15 @@ dissect_snmp_variable_date_and_time(proto_tree *tree, packet_info *pinfo, int hf
*/
static int
-dissect_snmp_VarBind(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,
+dissect_snmp_VarBind(bool implicit_tag _U_, tvbuff_t *tvb, int offset,
asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
{
int seq_offset, name_offset, value_offset, value_start;
guint32 seq_len, name_len, value_len;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
- gboolean ind;
+ bool ind;
guint32* subids;
guint8* oid_bytes;
oid_info_t* oid_info = NULL;
@@ -657,7 +662,7 @@ dissect_snmp_VarBind(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,
char* valstr;
int hfid = -1;
int min_len = 0, max_len = 0;
- gboolean oid_info_is_ok;
+ bool oid_info_is_ok;
const char* oid_string = NULL;
enum {BER_NO_ERROR, BER_WRONG_LENGTH, BER_WRONG_TAG} format_error = BER_NO_ERROR;
@@ -839,7 +844,7 @@ dissect_snmp_VarBind(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,
goto indexing_done;
}
case OID_KEY_TYPE_INTEGER: {
- if (IS_FT_INT(k->ft_type)) {
+ if (FT_IS_INT(k->ft_type)) {
proto_tree_add_int(pt_name,k->hfid,tvb,name_offset,name_len,(guint)subids[key_start]);
} else { /* if it's not an unsigned int let proto_tree_add_uint throw a warning */
proto_tree_add_uint64(pt_name,k->hfid,tvb,name_offset,name_len,(guint)subids[key_start]);
@@ -996,8 +1001,14 @@ indexing_done:
format_error = BER_WRONG_LENGTH;
}
- if (format_error == BER_NO_ERROR)
- pi_value = proto_tree_add_item(pt_varbind,oid_info->value_hfid,tvb,value_offset,value_len,ENC_BIG_ENDIAN);
+ if (format_error == BER_NO_ERROR) {
+ /* Special case DATE AND TIME */
+ if((oid_info->value_type)&&(oid_info->value_type->keytype == OID_KEY_TYPE_DATE_AND_TIME)&&(value_len > 7)){
+ pi_value = dissect_snmp_variable_date_and_time(pt_varbind, actx->pinfo, oid_info->value_hfid, tvb, value_offset, value_len);
+ } else {
+ pi_value = proto_tree_add_item(pt_varbind,oid_info->value_hfid,tvb,value_offset,value_len,ENC_BIG_ENDIAN);
+ }
+ }
}
} else {
switch(ber_class|(tag<<4)) {
@@ -1211,6 +1222,7 @@ static const true_false_string tfs_snmp_engineid_conform = {
#define SNMP_ENGINEID_FORMAT_MACADDRESS 0x03
#define SNMP_ENGINEID_FORMAT_TEXT 0x04
#define SNMP_ENGINEID_FORMAT_OCTETS 0x05
+#define SNMP_ENGINEID_FORMAT_LOCAL 0x06
static const value_string snmp_engineid_format_vals[] = {
{ SNMP_ENGINEID_FORMAT_IPV4, "IPv4 address" },
@@ -1218,6 +1230,7 @@ static const value_string snmp_engineid_format_vals[] = {
{ SNMP_ENGINEID_FORMAT_MACADDRESS, "MAC address" },
{ SNMP_ENGINEID_FORMAT_TEXT, "Text, administratively assigned" },
{ SNMP_ENGINEID_FORMAT_OCTETS, "Octets, administratively assigned" },
+ { SNMP_ENGINEID_FORMAT_LOCAL, "Local engine" },
{ 0, NULL }
};
@@ -1278,7 +1291,8 @@ dissect_snmp_engineid(proto_tree *tree, packet_info *pinfo, tvbuff_t *tvb, int o
if (len_remain<1) return offset;
format = tvb_get_guint8(tvb, offset);
item = proto_tree_add_uint_format(tree, hf_snmp_engineid_format, tvb, offset, 1, format, "Engine ID Format: %s (%d)",
- val_to_str(format, snmp_engineid_format_vals, "Reserved/Enterprise-specific"), format);
+ val_to_str_const(format, snmp_engineid_format_vals, "Reserved/Enterprise-specific"),
+ format);
offset+=1;
len_remain-=1;
@@ -1316,11 +1330,13 @@ dissect_snmp_engineid(proto_tree *tree, packet_info *pinfo, tvbuff_t *tvb, int o
case SNMP_ENGINEID_FORMAT_TEXT:
/* max. 27-byte string, administratively assigned */
if (len_remain<=27) {
- proto_tree_add_item(tree, hf_snmp_engineid_text, tvb, offset, len_remain, ENC_ASCII|ENC_NA);
+ proto_tree_add_item(tree, hf_snmp_engineid_text, tvb, offset, len_remain, ENC_ASCII);
offset+=len_remain;
len_remain=0;
}
break;
+ case SNMP_ENGINEID_FORMAT_LOCAL:
+ break;
case 128:
/* most common enterprise-specific format: (ucd|net)-snmp random */
if ((enterpriseid==2021)||(enterpriseid==8072)) {
@@ -1347,7 +1363,7 @@ dissect_snmp_engineid(proto_tree *tree, packet_info *pinfo, tvbuff_t *tvb, int o
case SNMP_ENGINEID_FORMAT_OCTETS:
default:
/* max. 27 bytes, administratively assigned or unknown format */
- if (len_remain<=27) {
+ if (len_remain>0 && len_remain<=27) {
proto_tree_add_item(tree, hf_snmp_engineid_data, tvb, offset, len_remain, ENC_NA);
offset+=len_remain;
len_remain=0;
@@ -1500,7 +1516,7 @@ snmp_users_free_cb(void* p)
g_free(ue->engine.data);
}
-static gboolean
+static bool
snmp_users_update_cb(void* p _U_, char** err)
{
snmp_ue_assoc_t* ue = (snmp_ue_assoc_t*)p;
@@ -1666,7 +1682,7 @@ get_user_assoc(tvbuff_t* engine_tvb, tvbuff_t* user_tvb, packet_info *pinfo)
return NULL;
}
-static gboolean
+static bool
snmp_usm_auth(const packet_info *pinfo, const snmp_usm_auth_model_t model, snmp_usm_params_t* p, guint8** calc_auth_p,
guint* calc_auth_len_p, gchar const** error)
{
@@ -1887,7 +1903,7 @@ check_ScopedPdu(tvbuff_t* tvb)
{
int offset;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
int hoffset, eoffset;
guint32 len;
@@ -1924,16 +1940,27 @@ check_ScopedPdu(tvbuff_t* tvb)
static snmp_conv_info_t*
snmp_find_conversation_and_get_conv_data(packet_info *pinfo) {
- conversation_t *conversation;
+ conversation_t *conversation = NULL;
snmp_conv_info_t *snmp_info = NULL;
- conversation = find_conversation(pinfo->fd->num, &pinfo->src, &pinfo->dst, conversation_pt_to_endpoint_type(pinfo->ptype),
- pinfo->srcport, pinfo->destport, 0);
-
- if( (conversation == NULL) || (conversation_get_dissector(conversation, pinfo->num)!=snmp_handle) ) {
- conversation = conversation_new(pinfo->num, &pinfo->src, &pinfo->dst, conversation_pt_to_endpoint_type(pinfo->ptype),
- pinfo->srcport, pinfo->destport, 0);
- conversation_set_dissector(conversation, snmp_handle);
+ /* Get the conversation with the wildcarded port, if it exists
+ * and is associated with SNMP, so that requests and responses
+ * can be matched even if the response comes from a different,
+ * ephemeral, source port, as originally done in OS/400.
+ * On UDP, we do not automatically call conversation_set_port2()
+ * and we do not want to do so. Possibly this should eventually
+ * use find_conversation_full and separate the "SNMP conversation"
+ * from "the transport layer conversation that carries SNMP."
+ */
+ if (pinfo->destport == UDP_PORT_SNMP) {
+ conversation = find_conversation(pinfo->fd->num, &pinfo->src, &pinfo->dst, conversation_pt_to_conversation_type(pinfo->ptype),
+ pinfo->srcport, 0, NO_PORT_B);
+ } else if (pinfo->srcport == UDP_PORT_SNMP) {
+ conversation = find_conversation(pinfo->fd->num, &pinfo->dst, &pinfo->src, conversation_pt_to_conversation_type(pinfo->ptype),
+ pinfo->destport, 0, NO_PORT_B);
+ }
+ if ((conversation == NULL) || (conversation_get_dissector(conversation, pinfo->num) != snmp_handle)) {
+ conversation = find_or_create_conversation(pinfo);
}
snmp_info = (snmp_conv_info_t *)conversation_get_proto_data(conversation, proto_snmp);
@@ -1953,7 +1980,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
guint length_remaining;
gint8 ber_class;
- gboolean pc, ind = 0;
+ bool pc, ind = 0;
gint32 tag;
guint32 len;
guint message_length;
@@ -2026,7 +2053,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
*/
pinfo->desegment_offset = offset;
pinfo->desegment_len = DESEGMENT_ONE_MORE_SEGMENT;
- return -1;
+ return 0;
}
}
@@ -2119,10 +2146,10 @@ dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_
{
int offset;
gint8 tmp_class;
- gboolean tmp_pc;
+ bool tmp_pc;
gint32 tmp_tag;
guint32 tmp_length;
- gboolean tmp_ind;
+ bool tmp_ind;
/*
* See if this looks like SNMP or not. if not, return 0 so
@@ -2140,18 +2167,21 @@ dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_
}
/* then comes a length which spans the rest of the tvb */
offset = get_ber_length(tvb, offset, &tmp_length, &tmp_ind);
- /* if(tmp_length!=(guint32)tvb_reported_length_remaining(tvb, offset)) {
- * Loosen the heuristic a bit to handle the case where data has intentionally
- * been added after the snmp PDU ( UDP case)
+ /* Loosen the heuristic a bit to handle the case where data has intentionally
+ * been added after the snmp PDU ( UDP case) (#3684)
+ * If this is fragmented or carried in ICMP, we don't expect the tvb to
+ * have the full legnth, so don't check.
*/
- if ( pinfo->ptype == PT_UDP ) {
- if(tmp_length>(guint32)tvb_reported_length_remaining(tvb, offset)) {
- return 0;
- }
- }else{
- if(tmp_length!=(guint32)tvb_reported_length_remaining(tvb, offset)) {
- return 0;
- }
+ if (!pinfo->fragmented && !pinfo->flags.in_error_pkt) {
+ if ( pinfo->ptype == PT_UDP ) {
+ if(tmp_length>(guint32)tvb_reported_length_remaining(tvb, offset)) {
+ return 0;
+ }
+ }else{
+ if(tmp_length!=(guint32)tvb_reported_length_remaining(tvb, offset)) {
+ return 0;
+ }
+ }
}
/* then comes an INTEGER (version)*/
get_ber_identifier(tvb, offset, &tmp_class, &tmp_pc, &tmp_tag);
@@ -2162,11 +2192,20 @@ dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_
/*
- * The first SNMP packet goes to the SNMP port; the second one
- * may come from some *other* port, but goes back to the same
- * IP address and port as the ones from which the first packet
- * came; all subsequent packets presumably go between those two
- * IP addresses and ports.
+ * The IBM i (OS/400) SNMP agent, at least originally, would
+ * send responses back from some *other* UDP port, an ephemeral
+ * port above 5000, going back to the same IP address and port
+ * from which the request came, similar to TFTP. This only happens
+ * with the agent port, 161, not with the trap port, etc. As of
+ * 2015 with the latest fixes applied, it no longer does this:
+ * https://www.ibm.com/support/pages/ptf/SI55487
+ * https://www.ibm.com/support/pages/ptf/SI55537
+ *
+ * The SNMP RFCs are silent on this (cf. L2TP RFC 2661, which
+ * supports using either the well-known port or an ephemeral
+ * port as the source port for responses, while noting that
+ * the latter can cause issues with firewalls and NATs.) so
+ * possibly some other implementations could do this.
*
* If this packet went to the SNMP port, we check to see if
* there's already a conversation with one address/port pair
@@ -2180,6 +2219,17 @@ dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_
* wildcarded, and give it the SNMP dissector as a dissector.
*/
+ if (pinfo->destport == UDP_PORT_SNMP) {
+ conversation_t *conversation = find_conversation(pinfo->fd->num, &pinfo->src, &pinfo->dst, conversation_pt_to_conversation_type(pinfo->ptype),
+ pinfo->srcport, 0, NO_PORT_B);
+
+ if( (conversation == NULL) || (conversation_get_dissector(conversation, pinfo->num)!=snmp_handle) ) {
+ conversation = conversation_new(pinfo->num, &pinfo->src, &pinfo->dst, conversation_pt_to_conversation_type(pinfo->ptype),
+ pinfo->srcport, 0, NO_PORT2);
+ conversation_set_dissector(conversation, snmp_handle);
+ }
+ }
+
return dissect_snmp_pdu(tvb, 0, pinfo, tree, proto_snmp, ett_snmp, FALSE);
}
@@ -2190,7 +2240,7 @@ dissect_snmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data
guint message_len;
while (tvb_reported_length_remaining(tvb, offset) > 0) {
- message_len = dissect_snmp_pdu(tvb, 0, pinfo, tree, proto_snmp, ett_snmp, TRUE);
+ message_len = dissect_snmp_pdu(tvb, offset, pinfo, tree, proto_snmp, ett_snmp, TRUE);
if (message_len == 0) {
/*
* We don't have all the data for that message,
@@ -2483,7 +2533,7 @@ void proto_register_snmp(void) {
{ &ei_snmp_no_instance_subid, { "snmp.no_instance_subid", PI_MALFORMED, PI_WARN, "No instance sub-id in scalar value", EXPFILL }},
{ &ei_snmp_wrong_num_of_subids, { "snmp.wrong_num_of_subids", PI_MALFORMED, PI_WARN, "Wrong number of instance sub-ids in scalar value", EXPFILL }},
{ &ei_snmp_index_suboid_too_short, { "snmp.index_suboid_too_short", PI_MALFORMED, PI_WARN, "index sub-oid shorter than expected", EXPFILL }},
- { &ei_snmp_unimplemented_instance_index, { "snmp.unimplemented_instance_index", PI_UNDECODED, PI_WARN, "OID instaces not handled, if you want this implemented please contact the wireshark developers", EXPFILL }},
+ { &ei_snmp_unimplemented_instance_index, { "snmp.unimplemented_instance_index", PI_UNDECODED, PI_WARN, "OID instances not handled, if you want this implemented please contact the wireshark developers", EXPFILL }},
{ &ei_snmp_index_suboid_len0, { "snmp.ndex_suboid_len0", PI_MALFORMED, PI_WARN, "an index sub-oid OID cannot be 0 bytes long!", EXPFILL }},
{ &ei_snmp_index_suboid_too_long, { "snmp.index_suboid_too_long", PI_MALFORMED, PI_WARN, "index sub-oid should not be longer than remaining oid size", EXPFILL }},
{ &ei_snmp_index_string_too_long, { "snmp.index_string_too_long", PI_MALFORMED, PI_WARN, "index string should not be longer than remaining oid size", EXPFILL }},
@@ -2561,6 +2611,8 @@ void proto_register_snmp(void) {
expert_snmp = expert_register_protocol(proto_snmp);
expert_register_field_array(expert_snmp, ei, array_length(ei));
+ /* Register dissector */
+ snmp_tcp_handle = register_dissector("snmp.tcp", dissect_snmp_tcp, proto_snmp);
/* Register configuration preferences */
snmp_module = prefs_register_protocol(proto_snmp, process_prefs);
@@ -2599,7 +2651,7 @@ void proto_register_snmp(void) {
"MIB settings can be changed in the Name Resolution preferences");
#endif
- value_sub_dissectors_table = register_dissector_table("snmp.variable_oid","SNMP Variable OID", proto_snmp, FT_STRING, BASE_NONE);
+ value_sub_dissectors_table = register_dissector_table("snmp.variable_oid","SNMP Variable OID", proto_snmp, FT_STRING, STRING_CASE_SENSITIVE);
register_init_routine(init_ue_cache);
register_cleanup_routine(cleanup_ue_cache);
@@ -2614,7 +2666,6 @@ void proto_register_snmp(void) {
/*--- proto_reg_handoff_snmp ---------------------------------------*/
void proto_reg_handoff_snmp(void) {
- dissector_handle_t snmp_tcp_handle;
dissector_add_uint_with_preference("udp.port", UDP_PORT_SNMP, snmp_handle);
dissector_add_uint("ethertype", ETHERTYPE_SNMP, snmp_handle);
@@ -2622,7 +2673,6 @@ void proto_reg_handoff_snmp(void) {
dissector_add_uint("ipx.socket", IPX_SOCKET_SNMP_SINK, snmp_handle);
dissector_add_uint("hpext.dxsap", HPEXT_SNMP, snmp_handle);
- snmp_tcp_handle = create_dissector_handle(dissect_snmp_tcp, proto_snmp);
dissector_add_uint_with_preference("tcp.port", TCP_PORT_SNMP, snmp_tcp_handle);
/* Since "regular" SNMP port and "trap" SNMP port use the same handler,
the "trap" port doesn't really need a separate preference. Just register
@@ -2663,14 +2713,12 @@ proto_register_smux(void)
proto_register_subtree_array(ett, array_length(ett));
+ smux_handle = register_dissector("smux", dissect_smux, proto_smux);
}
void
proto_reg_handoff_smux(void)
{
- dissector_handle_t smux_handle;
-
- smux_handle = create_dissector_handle(dissect_smux, proto_smux);
dissector_add_uint_with_preference("tcp.port", TCP_PORT_SMUX, smux_handle);
}
diff --git a/epan/dissectors/asn1/snmp/snmp.cnf b/epan/dissectors/asn1/snmp/snmp.cnf
index faac625d0a..9c9547aadf 100644
--- a/epan/dissectors/asn1/snmp/snmp.cnf
+++ b/epan/dissectors/asn1/snmp/snmp.cnf
@@ -18,6 +18,12 @@ Trap-PDU/_untag/specific-trap SpecificTrap
Messagev2u/datav2u/plaintext v2u_plaintext
BulkPDU/request-id bulkPDU_request-id
+#.FN_HDR SMUX-PDUs
+
+ snmp_conv_info_t *snmp_info = snmp_find_conversation_and_get_conv_data(actx->pinfo);
+
+ actx->private_data = snmp_info;
+
#.FN_PARS Version VAL_PTR = &snmp_version
#.FN_PARS PDUs
diff --git a/epan/dissectors/asn1/spnego/packet-spnego-template.c b/epan/dissectors/asn1/spnego/packet-spnego-template.c
index dac181b7c9..c6b5900e6f 100644
--- a/epan/dissectors/asn1/spnego/packet-spnego-template.c
+++ b/epan/dissectors/asn1/spnego/packet-spnego-template.c
@@ -25,7 +25,6 @@
#include <epan/conversation.h>
#include <epan/proto_data.h>
#include <wsutil/wsgcrypt.h>
-#include "packet-dcerpc.h"
#include "packet-gssapi.h"
#include "packet-kerberos.h"
#include "packet-ber.h"
@@ -37,28 +36,30 @@
void proto_register_spnego(void);
void proto_reg_handoff_spnego(void);
+static dissector_handle_t spnego_wrap_handle;
+
/* Initialize the protocol and registered fields */
-static int proto_spnego = -1;
-static int proto_spnego_krb5 = -1;
+static int proto_spnego;
+static int proto_spnego_krb5;
-static int hf_spnego_wraptoken = -1;
+static int hf_spnego_wraptoken;
static int hf_spnego_krb5_oid;
-static int hf_spnego_krb5 = -1;
-static int hf_spnego_krb5_tok_id = -1;
-static int hf_spnego_krb5_sgn_alg = -1;
-static int hf_spnego_krb5_seal_alg = -1;
-static int hf_spnego_krb5_snd_seq = -1;
-static int hf_spnego_krb5_sgn_cksum = -1;
-static int hf_spnego_krb5_confounder = -1;
-static int hf_spnego_krb5_filler = -1;
-static int hf_spnego_krb5_cfx_flags = -1;
-static int hf_spnego_krb5_cfx_flags_01 = -1;
-static int hf_spnego_krb5_cfx_flags_02 = -1;
-static int hf_spnego_krb5_cfx_flags_04 = -1;
-static int hf_spnego_krb5_cfx_ec = -1;
-static int hf_spnego_krb5_cfx_rrc = -1;
-static int hf_spnego_krb5_cfx_seq = -1;
+static int hf_spnego_krb5;
+static int hf_spnego_krb5_tok_id;
+static int hf_spnego_krb5_sgn_alg;
+static int hf_spnego_krb5_seal_alg;
+static int hf_spnego_krb5_snd_seq;
+static int hf_spnego_krb5_sgn_cksum;
+static int hf_spnego_krb5_confounder;
+static int hf_spnego_krb5_filler;
+static int hf_spnego_krb5_cfx_flags;
+static int hf_spnego_krb5_cfx_flags_01;
+static int hf_spnego_krb5_cfx_flags_02;
+static int hf_spnego_krb5_cfx_flags_04;
+static int hf_spnego_krb5_cfx_ec;
+static int hf_spnego_krb5_cfx_rrc;
+static int hf_spnego_krb5_cfx_seq;
#include "packet-spnego-hf.c"
@@ -69,15 +70,15 @@ gboolean saw_mechanism = FALSE;
/* Initialize the subtree pointers */
-static gint ett_spnego = -1;
-static gint ett_spnego_wraptoken = -1;
-static gint ett_spnego_krb5 = -1;
-static gint ett_spnego_krb5_cfx_flags = -1;
+static gint ett_spnego;
+static gint ett_spnego_wraptoken;
+static gint ett_spnego_krb5;
+static gint ett_spnego_krb5_cfx_flags;
#include "packet-spnego-ett.c"
-static expert_field ei_spnego_decrypted_keytype = EI_INIT;
-static expert_field ei_spnego_unknown_header = EI_INIT;
+static expert_field ei_spnego_decrypted_keytype;
+static expert_field ei_spnego_unknown_header;
static dissector_handle_t spnego_handle;
static dissector_handle_t spnego_krb5_handle;
@@ -88,10 +89,10 @@ static dissector_handle_t spnego_krb5_wrap_handle;
* as the code generated by asn2wrs includes a call before the
* definition.
*/
-static int dissect_spnego_NegTokenInit(gboolean implicit_tag, tvbuff_t *tvb,
+static int dissect_spnego_NegTokenInit(bool implicit_tag, tvbuff_t *tvb,
int offset, asn1_ctx_t *actx _U_,
proto_tree *tree, int hf_index);
-static int dissect_spnego_NegTokenInit2(gboolean implicit_tag, tvbuff_t *tvb,
+static int dissect_spnego_NegTokenInit2(bool implicit_tag, tvbuff_t *tvb,
int offset, asn1_ctx_t *actx _U_,
proto_tree *tree, int hf_index);
@@ -177,7 +178,7 @@ dissect_spnego_krb5(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* d
const char *oid;
tvbuff_t *krb5_tvb;
gint8 ber_class;
- gboolean pc, ind = 0;
+ bool pc, ind = 0;
gint32 tag;
guint32 len;
gssapi_encrypt_info_t* encrypt_info = (gssapi_encrypt_info_t*)data;
@@ -279,7 +280,7 @@ dissect_spnego_krb5(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* d
case KRB_TOKEN_AP_REP:
case KRB_TOKEN_AP_ERR:
krb5_tvb = tvb_new_subset_remaining(tvb, offset);
- offset = dissect_kerberos_main(krb5_tvb, pinfo, subtree, FALSE, NULL);
+ offset += dissect_kerberos_main(krb5_tvb, pinfo, subtree, FALSE, NULL);
break;
case KRB_TOKEN_GETMIC:
@@ -735,20 +736,14 @@ decrypt_gssapi_krb_cfx_wrap(proto_tree *tree,
* This is for GSSAPI Wrap tokens ...
*/
static int
-dissect_spnego_krb5_wrap_base(tvbuff_t *tvb, int offset, packet_info *pinfo
-#ifndef HAVE_KERBEROS
- _U_
-#endif
- , proto_tree *tree, guint16 token_id
-#ifndef HAVE_KERBEROS
- _U_
-#endif
- , gssapi_encrypt_info_t* gssapi_encrypt
- )
+dissect_spnego_krb5_wrap_base(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint16 token_id, gssapi_encrypt_info_t* gssapi_encrypt)
{
guint16 sgn_alg, seal_alg;
#ifdef HAVE_KERBEROS
int start_offset=offset;
+#else
+ (void) pinfo;
+ (void) token_id;
#endif
/*
@@ -944,18 +939,14 @@ dissect_spnego_krb5_cfx_flags(tvbuff_t *tvb, int offset,
* This is for GSSAPI CFX Wrap tokens ...
*/
static int
-dissect_spnego_krb5_cfx_wrap_base(tvbuff_t *tvb, int offset, packet_info *pinfo
-#ifndef HAVE_KERBEROS
- _U_
-#endif
- , proto_tree *tree, guint16 token_id _U_
- , gssapi_encrypt_info_t* gssapi_encrypt
- )
+dissect_spnego_krb5_cfx_wrap_base(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint16 token_id _U_, gssapi_encrypt_info_t* gssapi_encrypt)
{
guint8 flags;
guint16 ec;
#if defined(HAVE_HEIMDAL_KERBEROS) || defined(HAVE_MIT_KERBEROS)
guint16 rrc;
+#else
+ (void) pinfo;
#endif
int checksum_size;
int start_offset=offset;
@@ -1038,6 +1029,8 @@ dissect_spnego_krb5_cfx_wrap_base(tvbuff_t *tvb, int offset, packet_info *pinfo
returned_offset = offset;
gssapi_encrypt->gssapi_wrap_tvb = tvb_new_subset_length(tvb, offset,
inner_token_len);
+ gssapi_encrypt->gssapi_decrypted_tvb = tvb_new_subset_length(tvb, offset,
+ inner_token_len);
offset += inner_token_len;
@@ -1414,6 +1407,7 @@ void proto_register_spnego(void) {
proto_spnego = proto_register_protocol(PNAME, PSNAME, PFNAME);
spnego_handle = register_dissector("spnego", dissect_spnego, proto_spnego);
+ spnego_wrap_handle = register_dissector("spnego-wrap", dissect_spnego_wrap, proto_spnego);
proto_spnego_krb5 = proto_register_protocol("SPNEGO-KRB5", "SPNEGO-KRB5", "spnego-krb5");
@@ -1431,11 +1425,8 @@ void proto_register_spnego(void) {
/*--- proto_reg_handoff_spnego ---------------------------------------*/
void proto_reg_handoff_spnego(void) {
- dissector_handle_t spnego_wrap_handle;
-
/* Register protocol with GSS-API module */
- spnego_wrap_handle = create_dissector_handle(dissect_spnego_wrap, proto_spnego);
gssapi_init_oid("1.3.6.1.5.5.2", proto_spnego, ett_spnego,
spnego_handle, spnego_wrap_handle,
"SPNEGO - Simple Protected Negotiation");
diff --git a/epan/dissectors/asn1/spnego/spnego.cnf b/epan/dissectors/asn1/spnego/spnego.cnf
index 518165eac9..7558d0c755 100644
--- a/epan/dissectors/asn1/spnego/spnego.cnf
+++ b/epan/dissectors/asn1/spnego/spnego.cnf
@@ -9,7 +9,7 @@
NegotiationToken
#.FN_BODY NegotiationToken/negTokenInit
- gboolean is_response = actx->pinfo->ptype == PT_TCP &&
+ bool is_response = actx->pinfo->ptype == PT_TCP &&
actx->pinfo->srcport < 1024;
/*
diff --git a/epan/dissectors/asn1/sv/packet-sv-template.c b/epan/dissectors/asn1/sv/packet-sv-template.c
index a8dca8d0af..e50d8bb7d4 100644
--- a/epan/dissectors/asn1/sv/packet-sv-template.c
+++ b/epan/dissectors/asn1/sv/packet-sv-template.c
@@ -31,7 +31,8 @@
/* see IEC61850-8-1 8.2 */
#define Q_VALIDITY_GOOD (0x0U << 0)
-#define Q_VALIDITY_INVALID (0x1U << 0)
+#define Q_VALIDITY_INVALID_BW (0x1U << 0)
+#define Q_VALIDITY_INVALID (0x2U << 0)
#define Q_VALIDITY_QUESTIONABLE (0x3U << 0)
#define Q_VALIDITY_MASK (0x3U << 0)
@@ -62,57 +63,68 @@ void proto_register_sv(void);
void proto_reg_handoff_sv(void);
/* Data for SV tap */
-static int sv_tap = -1;
+static int sv_tap;
static sv_frame_data sv_data;
/* Initialize the protocol and registered fields */
-static int proto_sv = -1;
-static int hf_sv_appid = -1;
-static int hf_sv_length = -1;
-static int hf_sv_reserve1 = -1;
-static int hf_sv_reserve1_s_bit = -1;
-static int hf_sv_reserve2 = -1;
-static int hf_sv_phmeas_instmag_i = -1;
-static int hf_sv_phsmeas_q = -1;
-static int hf_sv_phsmeas_q_validity = -1;
-static int hf_sv_phsmeas_q_overflow = -1;
-static int hf_sv_phsmeas_q_outofrange = -1;
-static int hf_sv_phsmeas_q_badreference = -1;
-static int hf_sv_phsmeas_q_oscillatory = -1;
-static int hf_sv_phsmeas_q_failure = -1;
-static int hf_sv_phsmeas_q_olddata = -1;
-static int hf_sv_phsmeas_q_inconsistent = -1;
-static int hf_sv_phsmeas_q_inaccurate = -1;
-static int hf_sv_phsmeas_q_source = -1;
-static int hf_sv_phsmeas_q_test = -1;
-static int hf_sv_phsmeas_q_operatorblocked = -1;
-static int hf_sv_phsmeas_q_derived = -1;
-static int hf_sv_gmidentity = -1;
-static int hf_sv_gmidentity_manuf = -1;
+static int proto_sv;
+static int hf_sv_appid;
+static int hf_sv_length;
+static int hf_sv_reserve1;
+static int hf_sv_reserve1_s_bit;
+static int hf_sv_reserve2;
+static int hf_sv_phmeas_instmag_i;
+static int hf_sv_phsmeas_q;
+static int hf_sv_phsmeas_q_validity;
+static int hf_sv_phsmeas_q_overflow;
+static int hf_sv_phsmeas_q_outofrange;
+static int hf_sv_phsmeas_q_badreference;
+static int hf_sv_phsmeas_q_oscillatory;
+static int hf_sv_phsmeas_q_failure;
+static int hf_sv_phsmeas_q_olddata;
+static int hf_sv_phsmeas_q_inconsistent;
+static int hf_sv_phsmeas_q_inaccurate;
+static int hf_sv_phsmeas_q_source;
+static int hf_sv_phsmeas_q_test;
+static int hf_sv_phsmeas_q_operatorblocked;
+static int hf_sv_phsmeas_q_derived;
+static int hf_sv_gmidentity;
+static int hf_sv_gmidentity_manuf;
#include "packet-sv-hf.c"
/* Initialize the subtree pointers */
-static int ett_sv = -1;
-static int ett_phsmeas = -1;
-static int ett_phsmeas_q = -1;
-static int ett_gmidentity = -1;
-static int ett_reserve1 = -1;
+static int ett_sv;
+static int ett_phsmeas;
+static int ett_phsmeas_q;
+static int ett_gmidentity;
+static int ett_reserve1;
#include "packet-sv-ett.c"
-static expert_field ei_sv_mal_utctime = EI_INIT;
-static expert_field ei_sv_zero_pdu = EI_INIT;
-static expert_field ei_sv_mal_gmidentity = EI_INIT;
+static expert_field ei_sv_mal_utctime;
+static expert_field ei_sv_zero_pdu;
+static expert_field ei_sv_mal_gmidentity;
static gboolean sv_decode_data_as_phsmeas = FALSE;
static dissector_handle_t sv_handle;
+/*
+ * See
+ * IEC 61850-9-2 Edition 2.1 2020-02,
+ * Section 8.6 Definitions for basic data types – Presentation layer functionality,
+ * Table 21
+ *
+ * Be aware that in the specification the bits are numbered in reverse (it
+ * specifies the least significant bit as bit 31 instead of as bit 0)!
+ */
+
static const value_string sv_q_validity_vals[] = {
{ 0, "good" },
- { 1, "invalid" },
+ { 1, "invalid (backwards compatible)" },
+ { 2, "invalid" },
{ 3, "questionable" },
{ 0, NULL }
};
@@ -124,10 +136,10 @@ static const value_string sv_q_source_vals[] = {
};
static int
-dissect_PhsMeas1(gboolean implicit_tag, packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, int hf_id _U_)
+dissect_PhsMeas1(bool implicit_tag, packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, int hf_id _U_)
{
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
proto_tree *subtree;
diff --git a/epan/dissectors/asn1/sv/sv.cnf b/epan/dissectors/asn1/sv/sv.cnf
index 7136f329b2..3e53f035b6 100644
--- a/epan/dissectors/asn1/sv/sv.cnf
+++ b/epan/dissectors/asn1/sv/sv.cnf
@@ -34,7 +34,7 @@ SampledValues
{
proto_tree_add_expert_format(tree, actx->pinfo, &ei_sv_mal_utctime, tvb, offset, len,
"BER Error: malformed UTCTime encoding, length must be 8 bytes");
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
}
@@ -50,12 +50,11 @@ SampledValues
ptime = abs_time_to_str(actx->pinfo->pool, &ts, ABSOLUTE_TIME_UTC, TRUE);
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, ptime);
}
offset += 8;
- return offset;
#.END
#.TYPE_ATTR
@@ -93,7 +92,7 @@ UtcTime TYPE = FT_STRING DISPLAY = BASE_NONE
{
proto_tree_add_expert_format(tree, actx->pinfo, &ei_sv_mal_gmidentity, tvb, offset, len,
"BER Error: malformed gmIdentity encoding, length must be 8 bytes");
- if(hf_index >= 0)
+ if(hf_index > 0)
{
proto_tree_add_string(tree, hf_index, tvb, offset, len, "????");
}
diff --git a/epan/dissectors/asn1/t124/packet-t124-template.c b/epan/dissectors/asn1/t124/packet-t124-template.c
index e54076d697..5376ac4f0b 100644
--- a/epan/dissectors/asn1/t124/packet-t124-template.c
+++ b/epan/dissectors/asn1/t124/packet-t124-template.c
@@ -34,18 +34,18 @@ void proto_register_t124(void);
void proto_reg_handoff_t124(void);
/* Initialize the protocol and registered fields */
-static int proto_t124 = -1;
+static int proto_t124;
static proto_tree *top_tree = NULL;
#include "packet-t124-hf.c"
/* Initialize the subtree pointers */
-static int ett_t124 = -1;
-static int ett_t124_connectGCCPDU = -1;
+static int ett_t124;
+static int ett_t124_connectGCCPDU;
-static int hf_t124_ConnectData = -1;
-static int hf_t124_connectGCCPDU = -1;
-static int hf_t124_DomainMCSPDU_PDU = -1;
+static int hf_t124_ConnectData;
+static int hf_t124_connectGCCPDU;
+static int hf_t124_DomainMCSPDU_PDU;
static guint32 channelId = -1;
@@ -191,7 +191,7 @@ void proto_register_t124(void) {
proto_register_field_array(proto_t124, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
- t124_ns_dissector_table = register_dissector_table("t124.ns", "T.124 H.221 Non Standard Dissectors", proto_t124, FT_STRING, BASE_NONE);
+ t124_ns_dissector_table = register_dissector_table("t124.ns", "T.124 H.221 Non Standard Dissectors", proto_t124, FT_STRING, STRING_CASE_SENSITIVE);
t124_sd_dissector_table = register_dissector_table("t124.sd", "T.124 H.221 Send Data Dissectors", proto_t124, FT_UINT32, BASE_HEX);
register_dissector("t124", dissect_t124, proto_t124);
diff --git a/epan/dissectors/asn1/t124/packet-t124-template.h b/epan/dissectors/asn1/t124/packet-t124-template.h
index adb96b6a43..9869ca1dbc 100644
--- a/epan/dissectors/asn1/t124/packet-t124-template.h
+++ b/epan/dissectors/asn1/t124/packet-t124-template.h
@@ -13,7 +13,7 @@
#define PACKET_T124_H
#include <epan/packet_info.h>
-#include <epan/dissectors/packet-per.h>
+#include "packet-per.h"
extern int dissect_DomainMCSPDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);
extern guint32 t124_get_last_channelId(void);
diff --git a/epan/dissectors/asn1/t124/t124.cnf b/epan/dissectors/asn1/t124/t124.cnf
index f3281d6b6b..ecbd293671 100644
--- a/epan/dissectors/asn1/t124/t124.cnf
+++ b/epan/dissectors/asn1/t124/t124.cnf
@@ -201,7 +201,8 @@ RegistryAllocateHandleResponse/result AllocateHandleResponseResult
/* Do nothing */
break;
default:
- col_prepend_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ", val_to_str(domainmcs_value, t124_DomainMCSPDU_vals, "Unknown"));
+ col_prepend_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ",
+ val_to_str_const(domainmcs_value, t124_DomainMCSPDU_vals, "Unknown"));
break;
}
diff --git a/epan/dissectors/asn1/t125/packet-t125-template.c b/epan/dissectors/asn1/t125/packet-t125-template.c
index 4edde79f48..574a467f2c 100644
--- a/epan/dissectors/asn1/t125/packet-t125-template.c
+++ b/epan/dissectors/asn1/t125/packet-t125-template.c
@@ -39,12 +39,12 @@ void proto_register_t125(void);
void proto_reg_handoff_t125(void);
/* Initialize the protocol and registered fields */
-static int proto_t125 = -1;
+static int proto_t125;
static proto_tree *top_tree = NULL;
#include "packet-t125-hf.c"
/* Initialize the subtree pointers */
-static int ett_t125 = -1;
+static int ett_t125;
#include "packet-t125-ett.c"
@@ -58,7 +58,7 @@ dissect_t125(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *d
proto_item *item = NULL;
proto_tree *tree = NULL;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
top_tree = parent_tree;
@@ -85,9 +85,9 @@ static gboolean
dissect_t125_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
- volatile gboolean failed;
+ volatile bool failed;
/*
* We must catch all the "ran past the end of the packet" exceptions
@@ -157,7 +157,7 @@ void proto_register_t125(void) {
proto_register_field_array(proto_t125, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
- t125_heur_subdissector_list= register_heur_dissector_list("t125", proto_t125);
+ t125_heur_subdissector_list= register_heur_dissector_list_with_description("t125", "T.125 User data", proto_t125);
register_dissector("t125", dissect_t125, proto_t125);
}
diff --git a/epan/dissectors/asn1/t38/packet-t38-template.c b/epan/dissectors/asn1/t38/packet-t38-template.c
index 586f030d1a..7b85662686 100644
--- a/epan/dissectors/asn1/t38/packet-t38-template.c
+++ b/epan/dissectors/asn1/t38/packet-t38-template.c
@@ -50,7 +50,7 @@
void proto_register_t38(void);
-static int t38_tap = -1;
+static int t38_tap;
/* dissect using the Pre Corrigendum T.38 ASN.1 specification (1998) */
static gboolean use_pre_corrigendum_asn1_specification = TRUE;
@@ -99,35 +99,35 @@ static guint32 Data_value;
static guint32 T30ind_value;
static guint32 Data_Field_item_num;
-static int proto_t38 = -1;
-static int proto_acdr = -1;
+static int proto_t38;
+static int proto_acdr;
#include "packet-t38-hf.c"
/* T38 setup fields */
-static int hf_t38_setup = -1;
-static int hf_t38_setup_frame = -1;
-static int hf_t38_setup_method = -1;
+static int hf_t38_setup;
+static int hf_t38_setup_frame;
+static int hf_t38_setup_method;
/* T38 Data reassemble fields */
-static int hf_t38_fragments = -1;
-static int hf_t38_fragment = -1;
-static int hf_t38_fragment_overlap = -1;
-static int hf_t38_fragment_overlap_conflicts = -1;
-static int hf_t38_fragment_multiple_tails = -1;
-static int hf_t38_fragment_too_long_fragment = -1;
-static int hf_t38_fragment_error = -1;
-static int hf_t38_fragment_count = -1;
-static int hf_t38_reassembled_in = -1;
-static int hf_t38_reassembled_length = -1;
-
-static gint ett_t38 = -1;
+static int hf_t38_fragments;
+static int hf_t38_fragment;
+static int hf_t38_fragment_overlap;
+static int hf_t38_fragment_overlap_conflicts;
+static int hf_t38_fragment_multiple_tails;
+static int hf_t38_fragment_too_long_fragment;
+static int hf_t38_fragment_error;
+static int hf_t38_fragment_count;
+static int hf_t38_reassembled_in;
+static int hf_t38_reassembled_length;
+
+static gint ett_t38;
#include "packet-t38-ett.c"
-static gint ett_t38_setup = -1;
+static gint ett_t38_setup;
-static gint ett_data_fragment = -1;
-static gint ett_data_fragments = -1;
+static gint ett_data_fragment;
+static gint ett_data_fragments;
-static expert_field ei_t38_malformed = EI_INIT;
+static expert_field ei_t38_malformed;
static gboolean primary_part = TRUE;
static guint32 seq_number = 0;
@@ -213,14 +213,14 @@ void t38_add_address(packet_info *pinfo,
* Check if the ip address and port combination is not
* already registered as a conversation.
*/
- p_conversation = find_conversation( setup_frame_number, addr, &null_addr, ENDPOINT_UDP, port, other_port,
+ p_conversation = find_conversation( setup_frame_number, addr, &null_addr, CONVERSATION_UDP, port, other_port,
NO_ADDR_B | (!other_port ? NO_PORT_B : 0));
/*
* If not, create a new conversation.
*/
if ( !p_conversation || p_conversation->setup_frame != setup_frame_number) {
- p_conversation = conversation_new( setup_frame_number, addr, &null_addr, ENDPOINT_UDP,
+ p_conversation = conversation_new( setup_frame_number, addr, &null_addr, CONVERSATION_UDP,
(guint32)port, (guint32)other_port,
NO_ADDR2 | (!other_port ? NO_PORT2 : 0));
}
@@ -250,6 +250,7 @@ void t38_add_address(packet_info *pinfo,
p_conversation_data->setup_frame_number = setup_frame_number;
p_conversation_data->src_t38_info.reass_ID = 0;
p_conversation_data->src_t38_info.reass_start_seqnum = -1;
+ p_conversation_data->src_t38_info.reass_start_data_field = 0;
p_conversation_data->src_t38_info.reass_data_type = 0;
p_conversation_data->src_t38_info.last_seqnum = -1;
p_conversation_data->src_t38_info.packet_lost = 0;
@@ -257,9 +258,11 @@ void t38_add_address(packet_info *pinfo,
p_conversation_data->src_t38_info.time_first_t4_data = 0;
p_conversation_data->src_t38_info.additional_hdlc_data_field_counter = 0;
p_conversation_data->src_t38_info.seqnum_prev_data_field = -1;
+ p_conversation_data->src_t38_info.next = NULL;
p_conversation_data->dst_t38_info.reass_ID = 0;
p_conversation_data->dst_t38_info.reass_start_seqnum = -1;
+ p_conversation_data->dst_t38_info.reass_start_data_field = 0;
p_conversation_data->dst_t38_info.reass_data_type = 0;
p_conversation_data->dst_t38_info.last_seqnum = -1;
p_conversation_data->dst_t38_info.packet_lost = 0;
@@ -267,6 +270,7 @@ void t38_add_address(packet_info *pinfo,
p_conversation_data->dst_t38_info.time_first_t4_data = 0;
p_conversation_data->dst_t38_info.additional_hdlc_data_field_counter = 0;
p_conversation_data->dst_t38_info.seqnum_prev_data_field = -1;
+ p_conversation_data->dst_t38_info.next = NULL;
}
@@ -408,13 +412,13 @@ init_t38_info_conv(packet_info *pinfo)
/* find the conversation used for Reassemble and Setup Info */
p_conv = find_conversation(pinfo->num, &pinfo->net_dst, &pinfo->net_src,
- conversation_pt_to_endpoint_type(pinfo->ptype),
+ conversation_pt_to_conversation_type(pinfo->ptype),
pinfo->destport, pinfo->srcport, NO_ADDR_B | NO_PORT_B);
/* create a conv if it doen't exist */
if (!p_conv) {
p_conv = conversation_new(pinfo->num, &pinfo->net_src, &pinfo->net_dst,
- conversation_pt_to_endpoint_type(pinfo->ptype), pinfo->srcport, pinfo->destport, NO_ADDR_B | NO_PORT_B);
+ conversation_pt_to_conversation_type(pinfo->ptype), pinfo->srcport, pinfo->destport, NO_ADDR2 | NO_PORT2);
/* Set dissector */
conversation_set_dissector(p_conv, t38_udp_handle);
@@ -430,6 +434,7 @@ init_t38_info_conv(packet_info *pinfo)
p_t38_conv->src_t38_info.reass_ID = 0;
p_t38_conv->src_t38_info.reass_start_seqnum = -1;
+ p_t38_conv->src_t38_info.reass_start_data_field = 0;
p_t38_conv->src_t38_info.reass_data_type = 0;
p_t38_conv->src_t38_info.last_seqnum = -1;
p_t38_conv->src_t38_info.packet_lost = 0;
@@ -437,9 +442,11 @@ init_t38_info_conv(packet_info *pinfo)
p_t38_conv->src_t38_info.time_first_t4_data = 0;
p_t38_conv->src_t38_info.additional_hdlc_data_field_counter = 0;
p_t38_conv->src_t38_info.seqnum_prev_data_field = -1;
+ p_t38_conv->src_t38_info.next = NULL;
p_t38_conv->dst_t38_info.reass_ID = 0;
p_t38_conv->dst_t38_info.reass_start_seqnum = -1;
+ p_t38_conv->dst_t38_info.reass_start_data_field = 0;
p_t38_conv->dst_t38_info.reass_data_type = 0;
p_t38_conv->dst_t38_info.last_seqnum = -1;
p_t38_conv->dst_t38_info.packet_lost = 0;
@@ -447,6 +454,7 @@ init_t38_info_conv(packet_info *pinfo)
p_t38_conv->dst_t38_info.time_first_t4_data = 0;
p_t38_conv->dst_t38_info.additional_hdlc_data_field_counter = 0;
p_t38_conv->dst_t38_info.seqnum_prev_data_field = -1;
+ p_t38_conv->dst_t38_info.next = NULL;
conversation_add_proto_data(p_conv, proto_t38, p_t38_conv);
}
@@ -706,7 +714,9 @@ proto_register_t38(void)
proto_register_subtree_array(ett, array_length(ett));
expert_t38 = expert_register_protocol(proto_t38);
expert_register_field_array(expert_t38, ei, array_length(ei));
- register_dissector("t38_udp", dissect_t38_udp, proto_t38);
+ t38_udp_handle=register_dissector("t38_udp", dissect_t38_udp, proto_t38);
+ t38_tcp_handle=register_dissector("t38_tcp", dissect_t38_tcp, proto_t38);
+ t38_tcp_pdu_handle=register_dissector("t38_tcp_pdu", dissect_t38_tcp_pdu, proto_t38);
/* Register reassemble tables for HDLC */
reassembly_table_register(&data_reassembly_table,
@@ -749,9 +759,6 @@ proto_register_t38(void)
void
proto_reg_handoff_t38(void)
{
- t38_udp_handle=create_dissector_handle(dissect_t38_udp, proto_t38);
- t38_tcp_handle=create_dissector_handle(dissect_t38_tcp, proto_t38);
- t38_tcp_pdu_handle=create_dissector_handle(dissect_t38_tcp_pdu, proto_t38);
rtp_handle = find_dissector_add_dependency("rtp", proto_t38);
t30_hdlc_handle = find_dissector_add_dependency("t30.hdlc", proto_t38);
proto_acdr = proto_get_id_by_filter_name("acdr");
diff --git a/epan/dissectors/asn1/t38/packet-t38-template.h b/epan/dissectors/asn1/t38/packet-t38-template.h
index 39f5f411ee..82ff148337 100644
--- a/epan/dissectors/asn1/t38/packet-t38-template.h
+++ b/epan/dissectors/asn1/t38/packet-t38-template.h
@@ -35,11 +35,13 @@ typedef struct _t38_packet_info {
/* Info to save the State to reassemble Data (e.g. HDLC) and the Setup (e.g. SDP) in T38 conversations */
-typedef struct _t38_conv_info
-{
+typedef struct _t38_conv_info t38_conv_info;
+
+struct _t38_conv_info {
guint32 reass_ID;
int reass_start_seqnum;
+ guint32 reass_start_data_field;
guint32 reass_data_type;
gint32 last_seqnum; /* used to avoid duplicated seq num shown in the Graph Analysis */
guint32 packet_lost;
@@ -47,8 +49,9 @@ typedef struct _t38_conv_info
double time_first_t4_data;
guint32 additional_hdlc_data_field_counter;
gint32 seqnum_prev_data_field;
+ t38_conv_info *next;
-} t38_conv_info;
+};
/* Info to save the State to reassemble Data (e.g. HDLC) and the Setup (e.g. SDP) in T38 conversations */
typedef struct _t38_conv
diff --git a/epan/dissectors/asn1/t38/t38.cnf b/epan/dissectors/asn1/t38/t38.cnf
index 1eed2c3b01..bd2ecd9e3b 100644
--- a/epan/dissectors/asn1/t38/t38.cnf
+++ b/epan/dissectors/asn1/t38/t38.cnf
@@ -28,7 +28,7 @@ UDPTLPacket
#.FN_FTR Type-of-msg/t30-indicator
if (primary_part){
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " t30ind: %s",
- val_to_str(T30ind_value,t38_T30_indicator_vals,"<unknown>"));
+ val_to_str_const(T30ind_value,t38_T30_indicator_vals,"<unknown>"));
}
/* info for tap */
@@ -40,7 +40,7 @@ UDPTLPacket
#.FN_FTR Type-of-msg/t30-data
if (primary_part){
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " data:%s:",
- val_to_str(Data_value,t38_T30_data_vals,"<unknown>"));
+ val_to_str_const(Data_value,t38_T30_data_vals,"<unknown>"));
}
@@ -60,14 +60,10 @@ VAL_PTR=&Data_Field_field_type_value
#.FN_FTR Data-Field/_item/field-type
if (primary_part){
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s",
- val_to_str(Data_Field_field_type_value,t38_T_field_type_vals,"<unknown>"));
+ val_to_str_const(Data_Field_field_type_value,t38_T_field_type_vals,"<unknown>"));
}
- /* We only reassmeble packets in the Primary part and in the first two Items. */
- /* There maybe be t38 packets with more than two Items, but reassemble those packets is not easy */
- /* using the current ressaemble functions. */
- /* TODO: reassemble all the Items in one frame */
- if (primary_part && (Data_Field_item_num<2)) {
+ if (primary_part) {
if (Data_Field_field_type_value == 2 || Data_Field_field_type_value == 4 || Data_Field_field_type_value == 7) {/* hdlc-fcs-OK or hdlc-fcs-OK-sig-end or t4-non-ecm-sig-end*/
fragment_head *frag_msg = NULL;
tvbuff_t* new_tvb = NULL;
@@ -77,11 +73,17 @@ VAL_PTR=&Data_Field_field_type_value
/* if reass_start_seqnum=-1 it means we have received the end of the fragmente, without received any fragment data */
if (p_t38_packet_conv_info->reass_start_seqnum != -1) {
+ guint32 frag_seq_num;
+ if (seq_number == (guint32)p_t38_packet_conv_info->reass_start_seqnum) {
+ frag_seq_num = (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter + Data_Field_item_num - p_t38_packet_conv_info->reass_start_data_field;
+ } else {
+ frag_seq_num = seq_number - (guint32)p_t38_packet_conv_info->reass_start_seqnum + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter + Data_Field_item_num;
+ }
frag_msg = fragment_add_seq(&data_reassembly_table, /* reassembly table */
tvb, offset, actx->pinfo,
p_t38_packet_conv_info->reass_ID, /* ID for fragments belonging together */
NULL,
- seq_number + Data_Field_item_num - (guint32)p_t38_packet_conv_info->reass_start_seqnum + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter, /* fragment sequence number */
+ frag_seq_num, /* fragment sequence number */
/*0,*/
0, /* fragment length */
FALSE, /* More fragments */
@@ -100,14 +102,14 @@ VAL_PTR=&Data_Field_field_type_value
} else {
col_append_str(actx->pinfo->cinfo, COL_INFO, " (t4-data Reassembled: No packet lost)");
- g_snprintf(t38_info->desc_comment, MAX_T38_DESC, "No packet lost");
+ snprintf(t38_info->desc_comment, MAX_T38_DESC, "No packet lost");
}
if (p_t38_packet_conv_info->packet_lost) {
- g_snprintf(t38_info->desc_comment, MAX_T38_DESC, " Pack lost: %d, Pack burst lost: %d", p_t38_packet_conv_info->packet_lost, p_t38_packet_conv_info->burst_lost);
+ snprintf(t38_info->desc_comment, MAX_T38_DESC, " Pack lost: %d, Pack burst lost: %d", p_t38_packet_conv_info->packet_lost, p_t38_packet_conv_info->burst_lost);
} else {
- g_snprintf(t38_info->desc_comment, MAX_T38_DESC, "No packet lost");
+ snprintf(t38_info->desc_comment, MAX_T38_DESC, "No packet lost");
}
process_reassembled_data(tvb, offset, actx->pinfo,
@@ -129,9 +131,15 @@ VAL_PTR=&Data_Field_field_type_value
if (new_tvb) call_dissector_with_data((t30_hdlc_handle) ? t30_hdlc_handle : data_handle, new_tvb, actx->pinfo, tree, t38_info);
}
} else {
- proto_tree_add_expert_format(tree, actx->pinfo, &ei_t38_malformed, tvb, offset, tvb_reported_length_remaining(tvb, offset),
- "[RECEIVED END OF FRAGMENT W/OUT ANY FRAGMENT DATA]");
- col_append_str(actx->pinfo->cinfo, COL_INFO, " [Malformed?]");
+ /* If this is the same sequence number as the previous packet
+ * (i.e., a retransmission), we don't expect to have any
+ * fragment data (we reassembled it in the previous packet).
+ */
+ if (p_t38_packet_conv && ((gint32) seq_number != p_t38_packet_conv_info->last_seqnum)) {
+ proto_tree_add_expert_format(tree, actx->pinfo, &ei_t38_malformed, tvb, offset, tvb_reported_length_remaining(tvb, offset),
+ "[RECEIVED END OF FRAGMENT W/OUT ANY FRAGMENT DATA]");
+ col_append_str(actx->pinfo->cinfo, COL_INFO, " [Malformed?]");
+ }
actx->pinfo->fragmented = save_fragmented;
}
}
@@ -142,6 +150,13 @@ VAL_PTR=&Data_Field_field_type_value
p_t38_conv_info->reass_start_seqnum = -1;
p_t38_conv_info->additional_hdlc_data_field_counter = 0;
p_t38_conv_info->seqnum_prev_data_field = -1;
+
+ if (p_t38_packet_conv_info->next == NULL) {
+ p_t38_packet_conv_info->next = wmem_new(wmem_file_scope(), t38_conv_info);
+ p_t38_packet_conv_info = p_t38_packet_conv_info->next;
+ memcpy(p_t38_packet_conv_info, p_t38_conv_info, sizeof(t38_conv_info));
+ }
+
}
t38_info->Data_Field_field_type_value = Data_Field_field_type_value;
}
@@ -166,11 +181,7 @@ VAL_PTR=&Data_Field_field_type_value
}
}
- /* We only reassmeble packets in the Primary part and in the first two Items. */
- /* There maybe be t38 packets with more than two Items, but reassemble those packets is not easy */
- /* using the current ressaemble functions. */
- /* TODO: reassemble all the Items in one frame */
- if (primary_part && (Data_Field_item_num<2)) {
+ if (primary_part) {
fragment_head *frag_msg = NULL;
/* HDLC Data or t4-non-ecm-data */
@@ -180,30 +191,40 @@ VAL_PTR=&Data_Field_field_type_value
actx->pinfo->fragmented = TRUE;
/* if we have not reassembled this packet and it is the first fragment, reset the reassemble ID and the start seq number*/
- if (p_t38_packet_conv && p_t38_conv && (p_t38_packet_conv_info->reass_ID == 0)) {
+ if (p_t38_packet_conv && p_t38_conv && (p_t38_packet_conv_info->reass_start_seqnum == -1)) {
/* we use the first fragment's frame_number as fragment ID because the protocol doesn't provide it */
+ /* XXX: We'd be better off assigning our own IDs using a one-up
+ * counter, if it's possible for more than one reassembly to
+ * begin in the same frame.
+ */
p_t38_conv_info->reass_ID = actx->pinfo->num;
p_t38_conv_info->reass_start_seqnum = seq_number;
p_t38_conv_info->time_first_t4_data = nstime_to_sec(&actx->pinfo->rel_ts);
p_t38_conv_info->additional_hdlc_data_field_counter = 0;
p_t38_packet_conv_info->reass_ID = p_t38_conv_info->reass_ID;
p_t38_packet_conv_info->reass_start_seqnum = p_t38_conv_info->reass_start_seqnum;
+ p_t38_packet_conv_info->reass_start_data_field = Data_Field_item_num;
p_t38_packet_conv_info->seqnum_prev_data_field = p_t38_conv_info->seqnum_prev_data_field;
p_t38_packet_conv_info->additional_hdlc_data_field_counter = p_t38_conv_info->additional_hdlc_data_field_counter;
p_t38_packet_conv_info->time_first_t4_data = p_t38_conv_info->time_first_t4_data;
}
if (seq_number == (guint32)p_t38_packet_conv_info->seqnum_prev_data_field){
- p_t38_packet_conv_info->additional_hdlc_data_field_counter ++;
if(p_t38_conv){
- p_t38_conv_info->additional_hdlc_data_field_counter = p_t38_packet_conv_info->additional_hdlc_data_field_counter;
+ p_t38_conv_info->additional_hdlc_data_field_counter++;
}
}
+ guint32 frag_seq_num;
+ if (seq_number == (guint32)p_t38_packet_conv_info->reass_start_seqnum) {
+ frag_seq_num = (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter + Data_Field_item_num - (guint32)p_t38_packet_conv_info->reass_start_data_field;
+ } else {
+ frag_seq_num = seq_number - (guint32)p_t38_packet_conv_info->reass_start_seqnum + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter + Data_Field_item_num;
+ }
frag_msg = fragment_add_seq(&data_reassembly_table,
value_tvb, 0,
actx->pinfo,
p_t38_packet_conv_info->reass_ID, /* ID for fragments belonging together */
NULL,
- seq_number - (guint32)p_t38_packet_conv_info->reass_start_seqnum + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter, /* fragment sequence number */
+ frag_seq_num, /* fragment sequence number */
value_len, /* fragment length */
TRUE, /* More fragments */
0);
@@ -213,9 +234,7 @@ VAL_PTR=&Data_Field_field_type_value
if (!frag_msg) { /* Not last packet of reassembled */
if (Data_Field_field_type_value == 0) {
- col_append_fstr(actx->pinfo->cinfo, COL_INFO," (HDLC fragment %u)",
- seq_number + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter
- - (guint32)p_t38_packet_conv_info->reass_start_seqnum);
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO," (HDLC fragment %u)", frag_seq_num);
} else {
col_append_fstr(actx->pinfo->cinfo, COL_INFO," (t4-data fragment %u)", seq_number - (guint32)p_t38_packet_conv_info->reass_start_seqnum);
}
diff --git a/epan/dissectors/asn1/tcap/packet-tcap-template.c b/epan/dissectors/asn1/tcap/packet-tcap-template.c
index 7a94da770e..8ab859483d 100644
--- a/epan/dissectors/asn1/tcap/packet-tcap-template.c
+++ b/epan/dissectors/asn1/tcap/packet-tcap-template.c
@@ -32,28 +32,28 @@
#define PFNAME "tcap"
/* Initialize the protocol and registered fields */
-static int proto_tcap = -1;
-static int hf_tcap_tag = -1;
-static int hf_tcap_length = -1;
-static int hf_tcap_data = -1;
-static int hf_tcap_tid = -1;
-static int hf_tcap_constructor_eoc=-1;
-
-int hf_tcapsrt_SessionId=-1;
-int hf_tcapsrt_Duplicate=-1;
-int hf_tcapsrt_BeginSession=-1;
-int hf_tcapsrt_EndSession=-1;
-int hf_tcapsrt_SessionTime=-1;
+static int proto_tcap;
+static int hf_tcap_tag;
+static int hf_tcap_length;
+static int hf_tcap_data;
+static int hf_tcap_tid;
+static int hf_tcap_constructor_eoc;
+
+int hf_tcapsrt_SessionId;
+int hf_tcapsrt_Duplicate;
+int hf_tcapsrt_BeginSession;
+int hf_tcapsrt_EndSession;
+int hf_tcapsrt_SessionTime;
#include "packet-tcap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_tcap = -1;
-static gint ett_param = -1;
+static gint ett_tcap;
+static gint ett_param;
-static gint ett_otid = -1;
-static gint ett_dtid = -1;
-gint ett_tcap_stat = -1;
+static gint ett_otid;
+static gint ett_dtid;
+gint ett_tcap_stat;
static struct tcapsrt_info_t * gp_tcapsrt_info;
static gboolean tcap_subdissector_used=FALSE;
@@ -76,7 +76,6 @@ static struct tcapsrt_info_t tcapsrt_global_info[MAX_TCAP_INSTANCE];
static range_t *global_ssn_range;
static range_t *ssn_range;
-gboolean gtcap_HandleSRT=FALSE;
/* These two timeout (in second) are used when some message are lost,
or when the same TCAP transcation identifier is reused */
guint gtcap_RepetitionTimeout = 10;
@@ -105,7 +104,7 @@ static dissector_handle_t data_handle;
static dissector_handle_t ansi_tcap_handle;
static int dissect_tcap_param(asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset);
-static gboolean dissect_tcap_ITU_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
+static bool dissect_tcap_ITU_ComponentPDU(bool implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
static dissector_table_t ansi_sub_dissectors = NULL;
static dissector_table_t itu_sub_dissectors = NULL;
@@ -773,7 +772,7 @@ create_tcaphash_cont(struct tcaphash_cont_info_key_t *p_tcaphash_cont_key,
if (p_tcaphash_contcall1) {
/* Walk through list of transaction with identical keys */
- /* go the the end to insert new record */
+ /* go to the end to insert new record */
do {
if (!p_tcaphash_contcall1->next_contcall) {
p_tcaphash_contcall=append_tcaphash_contcall(p_tcaphash_contcall1,
@@ -802,7 +801,7 @@ create_tcaphash_end(struct tcaphash_end_info_key_t *p_tcaphash_end_key,
if (p_tcaphash_endcall1) {
/* Walk through list of transaction with identical keys */
- /* go the the end to insert new record */
+ /* go to the end to insert new record */
do {
if (!p_tcaphash_endcall1->next_endcall) {
p_tcaphash_endcall=append_tcaphash_endcall(p_tcaphash_endcall1,
@@ -1824,7 +1823,7 @@ dissect_tcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* d
dissector_handle_t subdissector_handle;
asn1_ctx_t asn1_ctx;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint tag;
struct tcap_private_t *p_tcap_private;
@@ -1883,7 +1882,7 @@ dissect_tcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* d
gp_tcap_context=NULL;
dissect_tcap_TCMessage(FALSE, tvb, 0, &asn1_ctx, tree, -1);
- if (gtcap_HandleSRT && !tcap_subdissector_used ) {
+ if (!tcap_subdissector_used ) {
p_tcap_context=tcapsrt_call_matching(tvb, pinfo, tcap_stat_tree, gp_tcapsrt_info);
p_tcap_private->context=p_tcap_context;
@@ -1899,7 +1898,7 @@ dissect_tcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* d
p_tcap_context->subdissector_present=TRUE;
}
}
- if (gtcap_HandleSRT && p_tcap_context && p_tcap_context->callback) {
+ if (p_tcap_context && p_tcap_context->callback) {
/* Callback fonction for the upper layer */
(p_tcap_context->callback)(tvb, pinfo, tcap_stat_tree, p_tcap_context);
}
@@ -2046,10 +2045,7 @@ proto_register_tcap(void)
"SCCP (and SUA) SSNs to decode as TCAP",
&global_ssn_range, MAX_SSN);
- prefs_register_bool_preference(tcap_module, "srt",
- "Service Response Time Analyse",
- "Activate the analyse for Response Time",
- &gtcap_HandleSRT);
+ prefs_register_obsolete_preference(tcap_module, "srt");
prefs_register_bool_preference(tcap_module, "persistentsrt",
"Persistent stats for SRT",
@@ -2067,9 +2063,7 @@ proto_register_tcap(void)
10, &gtcap_LostTimeout);
/* 'globally' register dissector */
- register_dissector("tcap", dissect_tcap, proto_tcap);
-
- tcap_handle = create_dissector_handle(dissect_tcap, proto_tcap);
+ tcap_handle = register_dissector("tcap", dissect_tcap, proto_tcap);
/* hash-tables for SRT */
tcaphash_context = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), tcaphash_context_calchash, tcaphash_context_equal);
@@ -2106,8 +2100,11 @@ static void init_tcap(void)
/* Reset the session counter */
tcapsrt_global_SessionId=1;
- /* Display of SRT only if Persistent Stat */
- gtcap_DisplaySRT=gtcap_PersistentSRT || gtcap_HandleSRT&gtcap_StatSRT;
+ /* Display of SRT is enabled
+ * 1) For wireshark only if Persistent Stat is enabled
+ * 2) For tshark, if the CLI SRT tap is registered
+ */
+ gtcap_DisplaySRT=gtcap_PersistentSRT || gtcap_StatSRT;
}
static void cleanup_tcap(void)
@@ -2123,12 +2120,12 @@ dissect_tcap_param(asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset
tvbuff_t *next_tvb;
proto_tree *subtree;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
guint32 tag_length;
guint32 len_length;
- gboolean ind_field;
+ bool ind_field;
while (tvb_reported_length_remaining(tvb, offset) > 0)
{
@@ -2195,8 +2192,8 @@ dissect_tcap_param(asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset
/*
* Call ITU Subdissector to decode the Tcap Component
*/
-static gboolean
-dissect_tcap_ITU_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset _U_, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
+static bool
+dissect_tcap_ITU_ComponentPDU(bool implicit_tag _U_, tvbuff_t *tvb, int offset _U_, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_)
{
dissector_handle_t subdissector_handle=NULL;
gboolean is_subdissector=FALSE;
@@ -2210,17 +2207,15 @@ dissect_tcap_ITU_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs
/*
* Handle The TCAP Service Response Time
*/
- if ( gtcap_HandleSRT ) {
- if (!tcap_subdissector_used) {
- p_tcap_context=tcapsrt_call_matching(tvb, actx->pinfo, tcap_stat_tree, gp_tcapsrt_info);
- tcap_subdissector_used=TRUE;
- gp_tcap_context=p_tcap_context;
- p_tcap_private->context=p_tcap_context;
- } else {
- /* Take the last TCAP context */
- p_tcap_context = gp_tcap_context;
- p_tcap_private->context=p_tcap_context;
- }
+ if (!tcap_subdissector_used) {
+ p_tcap_context=tcapsrt_call_matching(tvb, actx->pinfo, tcap_stat_tree, gp_tcapsrt_info);
+ tcap_subdissector_used=TRUE;
+ gp_tcap_context=p_tcap_context;
+ p_tcap_private->context=p_tcap_context;
+ } else {
+ /* Take the last TCAP context */
+ p_tcap_context = gp_tcap_context;
+ p_tcap_private->context=p_tcap_context;
}
if (p_tcap_context) {
if (cur_oid) {
diff --git a/epan/dissectors/asn1/tcap/packet-tcap-template.h b/epan/dissectors/asn1/tcap/packet-tcap-template.h
index e60fadad17..8e3a6ccd39 100644
--- a/epan/dissectors/asn1/tcap/packet-tcap-template.h
+++ b/epan/dissectors/asn1/tcap/packet-tcap-template.h
@@ -162,12 +162,6 @@ struct tcapsrt_info_t {
};
/**
- * Routine called when the TAP is initialized.
- * so hash table are (re)created
- */
-void tcapsrt_init_routine(void);
-
-/**
* Initialize the Message Info used by the main dissector
* Data are linked to a TCAP transaction
*/
diff --git a/epan/dissectors/asn1/tcap/tcap.cnf b/epan/dissectors/asn1/tcap/tcap.cnf
index 4659658e42..7e52d38c04 100644
--- a/epan/dissectors/asn1/tcap/tcap.cnf
+++ b/epan/dissectors/asn1/tcap/tcap.cnf
@@ -81,11 +81,11 @@ ABRT-apdu/_untag/user-information abrt_user_information
#.FN_BODY Component
tvbuff_t *next_tvb;
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint tag;
guint32 len, comp_offset;
volatile guint32 _offset;
- gint ind_field;
+ bool ind_field;
comp_offset = dissect_ber_identifier(actx->pinfo, tree, tvb, offset, &ber_class, &pc, &tag);
comp_offset = dissect_ber_length(actx->pinfo, tree, tvb, comp_offset, &len, &ind_field);
diff --git a/epan/dissectors/asn1/tcg-cp-oids/packet-tcg-cp-oids-template.c b/epan/dissectors/asn1/tcg-cp-oids/packet-tcg-cp-oids-template.c
index ab8bc3d261..2f7a235366 100644
--- a/epan/dissectors/asn1/tcg-cp-oids/packet-tcg-cp-oids-template.c
+++ b/epan/dissectors/asn1/tcg-cp-oids/packet-tcg-cp-oids-template.c
@@ -26,9 +26,9 @@ void proto_register_tcg_cp_oids(void);
void proto_reg_handoff_tcg_cp_oids(void);
/* Initialize the protocol and registered fields */
-static int proto_tcg_cp_oids = -1;
+static int proto_tcg_cp_oids;
#include "packet-tcg-cp-oids-hf.c"
-static int hf_tcg_cp_oids_UTF8String_PDU = -1;
+static int hf_tcg_cp_oids_UTF8String_PDU;
/* Initialize the subtree pointers */
#include "packet-tcg-cp-oids-ett.c"
diff --git a/epan/dissectors/asn1/tetra/packet-tetra-template.c b/epan/dissectors/asn1/tetra/packet-tetra-template.c
index 8845539963..00a94846dc 100644
--- a/epan/dissectors/asn1/tetra/packet-tetra-template.c
+++ b/epan/dissectors/asn1/tetra/packet-tetra-template.c
@@ -32,7 +32,7 @@ void proto_register_tetra(void);
void proto_reg_handoff_tetra(void);
/* Wireshark ID of the tetra protocol */
-static int proto_tetra = -1;
+static int proto_tetra;
static dissector_handle_t tetra_handle;
@@ -46,36 +46,36 @@ static gboolean include_carrier_number = TRUE;
* proto_register_field_array() in proto_register_tetra()
*/
/** Kts attempt at defining the protocol */
-static gint hf_tetra = -1;
-static gint hf_tetra_header = -1;
-static gint hf_tetra_channels = -1;
-static gint hf_tetra_channel1 = -1;
-static gint hf_tetra_channel2 = -1;
-static gint hf_tetra_channel3 = -1;
-static gint hf_tetra_txreg = -1;
-static gint hf_tetra_timer = -1;
-static gint hf_tetra_pdu = -1;
-static gint hf_tetra_rvstr = -1;
-static gint hf_tetra_carriernumber = -1;
-static gint hf_tetra_rxchannel1 = -1;
-static gint hf_tetra_rxchannel2 = -1;
-static gint hf_tetra_rxchannel3 = -1;
-static gint hf_tetra_crc = -1;
-static gint hf_tetra_len0 = -1;
+static gint hf_tetra;
+static gint hf_tetra_header;
+static gint hf_tetra_channels;
+static gint hf_tetra_channel1;
+static gint hf_tetra_channel2;
+static gint hf_tetra_channel3;
+static gint hf_tetra_txreg;
+static gint hf_tetra_timer;
+static gint hf_tetra_pdu;
+static gint hf_tetra_rvstr;
+static gint hf_tetra_carriernumber;
+static gint hf_tetra_rxchannel1;
+static gint hf_tetra_rxchannel2;
+static gint hf_tetra_rxchannel3;
+static gint hf_tetra_crc;
+static gint hf_tetra_len0;
#include "packet-tetra-hf.c"
/* Initialize the subtree pointers */
/* These are the ids of the subtrees that we may be creating */
-static gint ett_tetra = -1;
-static gint ett_tetra_header = -1;
-static gint ett_tetra_length = -1;
-static gint ett_tetra_txreg = -1;
-static gint ett_tetra_text = -1;
+static gint ett_tetra;
+static gint ett_tetra_header;
+static gint ett_tetra_length;
+static gint ett_tetra_txreg;
+static gint ett_tetra_text;
#include "packet-tetra-ett.c"
-static expert_field ei_tetra_channels_incorrect = EI_INIT;
+static expert_field ei_tetra_channels_incorrect;
#include "packet-tetra-fn.c"
@@ -534,7 +534,6 @@ dissect_tetra(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
void proto_reg_handoff_tetra(void)
{
- tetra_handle = create_dissector_handle(dissect_tetra, proto_tetra);
dissector_add_uint_with_preference("udp.port", TETRA_UDP_PORT, tetra_handle);
}
@@ -571,10 +570,10 @@ void proto_register_tetra (void)
{ "Channel 3", "tetra.txchannel3", FT_UINT8, BASE_DEC, VALS(channeltypenames), 0x0,
"Logical channels type", HFILL }},
{ &hf_tetra_txreg,
- { "TxR", "tetra.txreg", FT_UINT16, BASE_HEX, NULL, 0x0,
+ { "TxR", "tetra.txreg", FT_UINT32, BASE_HEX, NULL, 0x0,
"TX Register", HFILL }},
{ &hf_tetra_rvstr,
- { "RvSteR", "tetra.rvster", FT_UINT16, BASE_HEX, NULL, 0x0,
+ { "RvSteR", "tetra.rvster", FT_UINT32, BASE_HEX, NULL, 0x0,
"Receive Status Register", HFILL }},
{ &hf_tetra_carriernumber,
{ "Carrier Number", "tetra.carrier", FT_UINT8, BASE_DEC, NULL, 0x0,
@@ -589,13 +588,13 @@ void proto_register_tetra (void)
{ "Channel 3", "tetra.rxchannel3", FT_UINT8, BASE_DEC, VALS(recvchanneltypenames), 0x0,
"Logical channels type", HFILL }},
{ &hf_tetra_timer,
- { "Timer", "tetra.timer", FT_UINT16, BASE_HEX, NULL, 0x0,
+ { "Timer", "tetra.timer", FT_UINT32, BASE_HEX, NULL, 0x0,
"Timer Register", HFILL }},
{ &hf_tetra_crc,
{ "CRC", "tetra.crc", FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"CRC result", HFILL }},
{ &hf_tetra_len0,
- { "Length", "tetra.len0", FT_UINT16, BASE_DEC, NULL, 0x0,
+ { "Length", "tetra.len0", FT_UINT32, BASE_DEC, NULL, 0x0,
"Length of the PDU", HFILL }},
{ &hf_tetra_pdu,
{ "PDU", "tetra.pdu", FT_BYTES, BASE_NONE, NULL, 0x0,
@@ -621,7 +620,7 @@ void proto_register_tetra (void)
proto_tetra = proto_register_protocol("TETRA Protocol", "TETRA", "tetra");
proto_register_field_array (proto_tetra, hf, array_length (hf));
proto_register_subtree_array (ett, array_length (ett));
- register_dissector("tetra", dissect_tetra, proto_tetra);
+ tetra_handle = register_dissector("tetra", dissect_tetra, proto_tetra);
expert_tetra = expert_register_protocol(proto_tetra);
expert_register_field_array(expert_tetra, ei, array_length(ei));
diff --git a/epan/dissectors/asn1/ulp/packet-ulp-template.c b/epan/dissectors/asn1/ulp/packet-ulp-template.c
index 8e0355ed1f..bae4941971 100644
--- a/epan/dissectors/asn1/ulp/packet-ulp-template.c
+++ b/epan/dissectors/asn1/ulp/packet-ulp-template.c
@@ -44,7 +44,7 @@ static dissector_handle_t lpp_handle;
#define ULP_PORT 7275
/* Initialize the protocol and registered fields */
-static int proto_ulp = -1;
+static int proto_ulp;
#define ULP_HEADER_SIZE 2
@@ -52,22 +52,23 @@ static int proto_ulp = -1;
static gboolean ulp_desegment = TRUE;
#include "packet-ulp-hf.c"
-static int hf_ulp_mobile_directory_number = -1;
-static int hf_ulp_ganssTimeModels_bit0 = -1;
-static int hf_ulp_ganssTimeModels_bit1 = -1;
-static int hf_ulp_ganssTimeModels_bit2 = -1;
-static int hf_ulp_ganssTimeModels_bit3 = -1;
-static int hf_ulp_ganssTimeModels_bit4 = -1;
-static int hf_ulp_ganssTimeModels_spare = -1;
+static int hf_ulp_mobile_directory_number;
+static int hf_ulp_ganssTimeModels_bit0;
+static int hf_ulp_ganssTimeModels_bit1;
+static int hf_ulp_ganssTimeModels_bit2;
+static int hf_ulp_ganssTimeModels_bit3;
+static int hf_ulp_ganssTimeModels_bit4;
+static int hf_ulp_ganssTimeModels_spare;
/* Initialize the subtree pointers */
-static gint ett_ulp = -1;
-static gint ett_ulp_setid = -1;
-static gint ett_ulp_thirdPartyId = -1;
-static gint ett_ulp_ganssTimeModels = -1;
+static gint ett_ulp;
+static gint ett_ulp_setid;
+static gint ett_ulp_thirdPartyId;
+static gint ett_ulp_ganssTimeModels;
#include "packet-ulp-ett.c"
static dissector_handle_t ulp_tcp_handle;
+static dissector_handle_t ulp_pdu_handle;
static const value_string ulp_ganss_id_vals[] = {
{ 0, "Galileo"},
@@ -91,18 +92,18 @@ static void
ulp_ganssDataBitInterval_fmt(gchar *s, guint32 v)
{
if (v == 15) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Time interval is not specified (15)");
+ snprintf(s, ITEM_LABEL_LENGTH, "Time interval is not specified (15)");
} else {
double interval = (0.1*pow(2, (double)v));
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%u)", interval, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%u)", interval, v);
}
}
static void
ulp_ExtendedEphemeris_validity_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%uh (%u)", 4*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%uh (%u)", 4*v, v);
}
static void
@@ -110,7 +111,7 @@ ulp_PositionEstimate_latitude_fmt(gchar *s, guint32 v)
{
double latitude = ((double)v*90)/pow(2,23);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", latitude, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", latitude, v);
}
static void
@@ -118,18 +119,18 @@ ulp_PositionEstimate_longitude_fmt(gchar *s, guint32 v)
{
double longitude = ((double)(gint32)v*360)/pow(2,24);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", longitude, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%g degrees (%u)", longitude, v);
}
static void
ulp_NMRelement_rxLev_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RxLev < -110dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RxLev < -110dBm (0)");
} else if (v == 63) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RxLev >= -48dBm (63)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RxLev >= -48dBm (63)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RxLev < %ddBm (%u)", -111+v, -110+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RxLev < %ddBm (%u)", -111+v, -110+v, v);
}
}
@@ -137,13 +138,13 @@ static void
ulp_UTRA_CarrierRSSI_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSSI < -100dBm (0)");
} else if (v == 76) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSSI >= -25dBm (76)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSSI >= -25dBm (76)");
} else if (v > 76) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSSI < %ddBm (%u)", -101+v, -100+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSSI < %ddBm (%u)", -101+v, -100+v, v);
}
}
@@ -151,13 +152,13 @@ static void
ulp_PrimaryCCPCH_RSCP_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSCP < -115dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSCP < -115dBm (0)");
} else if (v == 91) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSCP >= -25dBm (91)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSCP >= -25dBm (91)");
} else if (v > 91) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSCP < %ddBm (%u)", -116+v, -115+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSCP < %ddBm (%u)", -116+v, -115+v, v);
}
}
@@ -165,13 +166,13 @@ static void
ulp_CPICH_Ec_N0_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "CPICH Ec/N0 < -24dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "CPICH Ec/N0 < -24dB (0)");
} else if (v == 49) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "CPICH Ec/N0 >= 0dB (49)");
+ snprintf(s, ITEM_LABEL_LENGTH, "CPICH Ec/N0 >= 0dB (49)");
} else if (v > 49) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= CPICH Ec/N0 < %.1fdB (%u)", -24.5+((float)v/2), -24+((float)v/2), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= CPICH Ec/N0 < %.1fdB (%u)", -24.5+((float)v/2), -24+((float)v/2), v);
}
}
@@ -179,15 +180,15 @@ static void
ulp_CPICH_RSCP_fmt(gchar *s, guint32 v)
{
if (v == 123) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "CPICH RSCP < -120dBm (123)");
+ snprintf(s, ITEM_LABEL_LENGTH, "CPICH RSCP < -120dBm (123)");
} else if (v > 123) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= CPICH RSCP < %ddBm (%u)", -244+v, -243+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= CPICH RSCP < %ddBm (%u)", -244+v, -243+v, v);
} else if (v == 91) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "CPICH RSCP >= -25dBm (91)");
+ snprintf(s, ITEM_LABEL_LENGTH, "CPICH RSCP >= -25dBm (91)");
} else if (v < 91) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm < CPICH RSCP <= %ddBm (%u)", -116+v, -115+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm < CPICH RSCP <= %ddBm (%u)", -116+v, -115+v, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "Spare (%u)", v);
}
}
@@ -197,9 +198,9 @@ ulp_QoP_horacc_fmt(gchar *s, guint32 v)
double uncertainty = 10*(pow(1.1, (double)v)-1);
if (uncertainty < 1000) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fkm (%u)", uncertainty/1000, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fkm (%u)", uncertainty/1000, v);
}
}
@@ -208,13 +209,13 @@ ulp_QoP_veracc_fmt(gchar *s, guint32 v)
{
double uncertainty = 45*(pow(1.025, (double)v)-1);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fm (%u)", uncertainty, v);
}
static void
ulp_QoP_delay_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%gs (%u)", pow(2, (double)v), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%gs (%u)", pow(2, (double)v), v);
}
static const true_false_string ulp_vertical_dir_val = {
@@ -225,18 +226,18 @@ static const true_false_string ulp_vertical_dir_val = {
static void
ulp_RelativeTime_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fs (%u)", 0.01*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fs (%u)", 0.01*v, v);
}
static void
ulp_RSRP_Range_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
} else if (v == 97) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRP >= -44dBm (97)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRP >= -44dBm (97)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", -141+v, -140+v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", -141+v, -140+v, v);
}
}
@@ -244,36 +245,36 @@ static void
ulp_RSRQ_Range_fmt(gchar *s, guint32 v)
{
if (v == 0) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
} else if (v == 64) {
- g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ >= -3dB (34)");
+ snprintf(s, ITEM_LABEL_LENGTH, "RSRQ >= -3dB (34)");
} else {
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", -20+((float)v/2), -19.5+((float)v/2), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", -20+((float)v/2), -19.5+((float)v/2), v);
}
}
static void
ulp_SignalDelta_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%sdB (%u)", v ? "0.5" : "0", v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%sdB (%u)", v ? "0.5" : "0", v);
}
static void
ulp_locationAccuracy_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%u)", 0.1*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fm (%u)", 0.1*v, v);
}
static void
ulp_WimaxRTD_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fus (%u)", 0.01*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fus (%u)", 0.01*v, v);
}
static void
ulp_WimaxNMR_rssi_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fdBm (%u)", -103.75+(0.25*v), v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fdBm (%u)", -103.75+(0.25*v), v);
}
static void
@@ -281,7 +282,7 @@ ulp_UTRAN_gpsReferenceTimeUncertainty_fmt(gchar *s, guint32 v)
{
double uncertainty = 0.0022*(pow(1.18, (double)v)-1);
- g_snprintf(s, ITEM_LABEL_LENGTH, "%fus (%u)", uncertainty, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%fus (%u)", uncertainty, v);
}
static const value_string ulp_ganss_time_id_vals[] = {
@@ -295,13 +296,13 @@ static const value_string ulp_ganss_time_id_vals[] = {
static void
ulp_utran_GANSSTimingOfCell_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fus (%u)", 0.25*v, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fus (%u)", 0.25*v, v);
}
static void
ulp_Coordinate_latitude_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%u)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%u)",
((float)v/8388607.0)*90, v);
}
@@ -310,7 +311,7 @@ ulp_Coordinate_longitude_fmt(gchar *s, guint32 v)
{
gint32 longitude = (gint32) v;
- g_snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%d)",
+ snprintf(s, ITEM_LABEL_LENGTH, "%f degrees (%d)",
((float)longitude/8388608.0)*180, longitude);
}
@@ -403,6 +404,7 @@ void proto_register_ulp(void) {
/* Register protocol */
proto_ulp = proto_register_protocol(PNAME, PSNAME, PFNAME);
ulp_tcp_handle = register_dissector("ulp", dissect_ulp_tcp, proto_ulp);
+ ulp_pdu_handle = register_dissector("ulp.pdu", dissect_ULP_PDU_PDU, proto_ulp);
/* Register fields and subtrees */
proto_register_field_array(proto_ulp, hf, array_length(hf));
@@ -422,15 +424,12 @@ void proto_register_ulp(void) {
void
proto_reg_handoff_ulp(void)
{
- dissector_handle_t ulp_udp_handle;
-
- dissector_add_string("media_type","application/oma-supl-ulp", ulp_tcp_handle);
- dissector_add_string("media_type","application/vnd.omaloc-supl-init", ulp_tcp_handle);
- ulp_udp_handle = create_dissector_handle(dissect_ULP_PDU_PDU, proto_ulp);
rrlp_handle = find_dissector_add_dependency("rrlp", proto_ulp);
lpp_handle = find_dissector_add_dependency("lpp", proto_ulp);
+ dissector_add_string("media_type","application/oma-supl-ulp", ulp_pdu_handle);
+ dissector_add_string("media_type","application/vnd.omaloc-supl-init", ulp_pdu_handle);
dissector_add_uint_with_preference("tcp.port", ULP_PORT, ulp_tcp_handle);
- dissector_add_uint_with_preference("udp.port", ULP_PORT, ulp_udp_handle);
+ dissector_add_uint_with_preference("udp.port", ULP_PORT, ulp_pdu_handle);
}
diff --git a/epan/dissectors/asn1/ulp/ulp.cnf b/epan/dissectors/asn1/ulp/ulp.cnf
index 2f23a50ccb..10bc15f366 100644
--- a/epan/dissectors/asn1/ulp/ulp.cnf
+++ b/epan/dissectors/asn1/ulp/ulp.cnf
@@ -47,7 +47,7 @@ guint32 UlpMessage;
%(DEFAULT_BODY)s
- col_prepend_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ", val_to_str(UlpMessage,ulp_UlpMessage_vals,"Unknown"));
+ col_prepend_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ", val_to_str_const(UlpMessage,ulp_UlpMessage_vals,"Unknown"));
#.END
@@ -94,7 +94,7 @@ guint32 UlpMessage;
}
#.TYPE_ATTR
-Notification/requestorId TYPE=FT_STRING DISPLAY=STR_UNICODE
+Notification/requestorId TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY Notification/clientName VAL_PTR=&val_tvb HF_INDEX=-1
tvbuff_t *val_tvb;
@@ -126,7 +126,7 @@ Notification/requestorId TYPE=FT_STRING DISPLAY=STR_UNICODE
}
#.TYPE_ATTR
-Notification/clientName TYPE=FT_STRING DISPLAY=STR_UNICODE
+Notification/clientName TYPE=FT_STRING DISPLAY=BASE_NONE
#.TYPE_ATTR
NavigationModel/gpsToe DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_hours
@@ -306,7 +306,7 @@ ExtendedEphemeris/validity DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ulp_ExtendedEphem
proto_tree *subtree;
subtree = proto_item_add_subtree(actx->created_item, ett_ulp_setid);
- proto_tree_add_item(subtree, hf_ulp_mobile_directory_number, mdn_tvb, 0, 8, ENC_BCD_DIGITS_0_9);
+ proto_tree_add_item(subtree, hf_ulp_mobile_directory_number, mdn_tvb, 0, 8, ENC_BCD_DIGITS_0_9|ENC_LITTLE_ENDIAN);
}
#.FN_BODY SETId/imsi VAL_PTR=&imsi_tvb
@@ -618,7 +618,7 @@ WlanAPInformation/setSignaltoNoiseDelta DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(ulp_
}
#.TYPE_ATTR
-WlanAPInformation/apSSID TYPE=FT_STRING DISPLAY=STR_ASCII
+WlanAPInformation/apSSID TYPE=FT_STRING DISPLAY=BASE_NONE
#.FN_BODY WlanAPInformation/setMACAddress VAL_PTR=&val_tvb HF_INDEX=-1
tvbuff_t *val_tvb;
diff --git a/epan/dissectors/asn1/wlancertextn/packet-wlancertextn-template.c b/epan/dissectors/asn1/wlancertextn/packet-wlancertextn-template.c
index 39a0c220ab..bb343d6f73 100644
--- a/epan/dissectors/asn1/wlancertextn/packet-wlancertextn-template.c
+++ b/epan/dissectors/asn1/wlancertextn/packet-wlancertextn-template.c
@@ -29,7 +29,7 @@ void proto_register_wlancertextn(void);
void proto_reg_handoff_wlancertextn(void);
/* Initialize the protocol and registered fields */
-static int proto_wlancertextn = -1;
+static int proto_wlancertextn;
#include "packet-wlancertextn-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn b/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn
index ab356e373f..6059ccff70 100644
--- a/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.423 V16.7.0 (2021-10)
+-- 3GPP TS 36.423 V17.6.0 (2023-09)
-- 9.3.6 Common definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
X2AP-CommonDataTypes {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-CommonDataTypes (3) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
diff --git a/epan/dissectors/asn1/x2ap/X2AP-Constants.asn b/epan/dissectors/asn1/x2ap/X2AP-Constants.asn
index bbde0e07af..4b0193b0f8 100644
--- a/epan/dissectors/asn1/x2ap/X2AP-Constants.asn
+++ b/epan/dissectors/asn1/x2ap/X2AP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.423 V16.7.0 (2021-10)
+-- 3GPP TS 36.423 V17.6.0 (2023-09)
-- 9.3.7 Constant definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
X2AP-Constants {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Constants (4) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -53,9 +53,9 @@ id-seNBinitiatedSeNBRelease ProcedureCode ::= 24
id-seNBCounterCheck ProcedureCode ::= 25
id-retrieveUEContext ProcedureCode ::= 26
id-sgNBAdditionPreparation ProcedureCode ::= 27
-id-sgNBReconfigurationCompletion ProcedureCode ::= 28
+id-sgNBReconfigurationCompletion ProcedureCode ::= 28
id-meNBinitiatedSgNBModificationPreparation ProcedureCode ::= 29
-id-sgNBinitiatedSgNBModification ProcedureCode ::= 30
+id-sgNBinitiatedSgNBModification ProcedureCode ::= 30
id-meNBinitiatedSgNBRelease ProcedureCode ::= 31
id-sgNBinitiatedSgNBRelease ProcedureCode ::= 32
id-sgNBCounterCheck ProcedureCode ::= 33
@@ -73,15 +73,18 @@ id-dataForwardingAddressIndication ProcedureCode ::= 44
id-gNBStatusIndication ProcedureCode ::= 45
id-deactivateTrace ProcedureCode ::= 46
id-traceStart ProcedureCode ::= 47
-id-endcConfigurationTransfer ProcedureCode ::= 48
+id-endcConfigurationTransfer ProcedureCode ::= 48
id-handoverSuccess ProcedureCode ::= 49
-id-conditionalHandoverCancel ProcedureCode ::= 50
-id-earlyStatusTransfer ProcedureCode ::= 51
-id-cellTrafficTrace ProcedureCode ::= 52
+id-conditionalHandoverCancel ProcedureCode ::= 50
+id-earlyStatusTransfer ProcedureCode ::= 51
+id-cellTrafficTrace ProcedureCode ::= 52
id-endcresourceStatusReporting ProcedureCode ::= 53
id-endcresourceStatusReportingInitiation ProcedureCode ::= 54
id-f1CTrafficTransfer ProcedureCode ::= 55
id-UERadioCapabilityIDMapping ProcedureCode ::= 56
+id-accessAndMobilityIndication ProcedureCode ::= 57
+id-procedure-code-58-not-to-be-used ProcedureCode ::= 58
+id-CPC-cancel ProcedureCode ::= 59
-- **************************************************************
--
@@ -145,6 +148,18 @@ maxnoofSSBAreas INTEGER ::= 64
maxnoofNRSCSs INTEGER ::= 5
maxnoofNRPhysicalResourceBlocks INTEGER ::= 275
maxnoofNonAnchorCarrierFreqConfig INTEGER ::= 15
+maxnoofRACHReports INTEGER ::= 64
+maxnoofPSCellsPerSN INTEGER ::= 8
+maxnoofPSCellsPerPrimaryCellinUEHistoryInfo INTEGER ::= 8
+maxnoofReportedNRCellsPossiblyAggregated INTEGER ::= 16
+maxnoofPSCellCandidates INTEGER ::= 8
+maxnoofTargetSgNBs INTEGER ::= 8
+maxnoofMTCItems INTEGER ::= 16
+maxnoofCSIRSconfigurations INTEGER ::= 96
+maxnoofCSIRSneighbourCells INTEGER ::= 16
+maxnoofCSIRSneighbourCellsInMTC INTEGER ::= 16
+maxnoofSensorName INTEGER ::= 3
+maxnoofTargetSgNBsMinusOne INTEGER ::= 7
-- **************************************************************
--
@@ -360,7 +375,7 @@ id-extended-uEaggregateMaximumBitRateDownlink ProtocolIE-ID ::= 200
id-extended-uEaggregateMaximumBitRateUplink ProtocolIE-ID ::= 201
id-NRrestrictioninEPSasSecondaryRAT ProtocolIE-ID ::= 202
id-SgNBSecurityKey ProtocolIE-ID ::= 203
-id-SgNBUEAggregateMaximumBitRate ProtocolIE-ID ::= 204
+id-SgNBUEAggregateMaximumBitRate ProtocolIE-ID ::= 204
id-E-RABs-ToBeAdded-SgNBAddReqList ProtocolIE-ID ::= 205
id-MeNBtoSgNBContainer ProtocolIE-ID ::= 206
id-SgNB-UE-X2AP-ID ProtocolIE-ID ::= 207
@@ -368,9 +383,9 @@ id-RequestedSplitSRBs ProtocolIE-ID ::= 208
id-E-RABs-ToBeAdded-SgNBAddReq-Item ProtocolIE-ID ::= 209
id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAckList ProtocolIE-ID ::= 210
id-SgNBtoMeNBContainer ProtocolIE-ID ::= 211
-id-AdmittedSplitSRBs ProtocolIE-ID ::= 212
+id-AdmittedSplitSRBs ProtocolIE-ID ::= 212
id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item ProtocolIE-ID ::= 213
-id-ResponseInformationSgNBReconfComp ProtocolIE-ID ::= 214
+id-ResponseInformationSgNBReconfComp ProtocolIE-ID ::= 214
id-UE-ContextInformation-SgNBModReq ProtocolIE-ID ::= 215
id-E-RABs-ToBeAdded-SgNBModReq-Item ProtocolIE-ID ::= 216
id-E-RABs-ToBeModified-SgNBModReq-Item ProtocolIE-ID ::= 217
@@ -378,7 +393,7 @@ id-E-RABs-ToBeReleased-SgNBModReq-Item ProtocolIE-ID ::= 218
id-E-RABs-Admitted-ToBeAdded-SgNBModAckList ProtocolIE-ID ::= 219
id-E-RABs-Admitted-ToBeModified-SgNBModAckList ProtocolIE-ID ::= 220
id-E-RABs-Admitted-ToBeReleased-SgNBModAckList ProtocolIE-ID ::= 221
-id-E-RABs-Admitted-ToBeAdded-SgNBModAck-Item ProtocolIE-ID ::= 222
+id-E-RABs-Admitted-ToBeAdded-SgNBModAck-Item ProtocolIE-ID ::= 222
id-E-RABs-Admitted-ToBeModified-SgNBModAck-Item ProtocolIE-ID ::= 223
id-E-RABs-Admitted-ToBeReleased-SgNBModAck-Item ProtocolIE-ID ::= 224
id-E-RABs-ToBeReleased-SgNBModReqdList ProtocolIE-ID ::= 225
@@ -391,13 +406,13 @@ id-E-RABs-ToBeReleased-SgNBRelReqList ProtocolIE-ID ::= 231
id-E-RABs-ToBeReleased-SgNBRelReq-Item ProtocolIE-ID ::= 232
id-E-RABs-ToBeReleased-SgNBRelConfList ProtocolIE-ID ::= 233
id-E-RABs-ToBeReleased-SgNBRelConf-Item ProtocolIE-ID ::= 234
-id-E-RABs-SubjectToSgNBCounterCheck-List ProtocolIE-ID ::= 235
-id-E-RABs-SubjectToSgNBCounterCheck-Item ProtocolIE-ID ::= 236
+id-E-RABs-SubjectToSgNBCounterCheck-List ProtocolIE-ID ::= 235
+id-E-RABs-SubjectToSgNBCounterCheck-Item ProtocolIE-ID ::= 236
id-RRCContainer ProtocolIE-ID ::= 237
id-SRBType ProtocolIE-ID ::= 238
id-Target-SgNB-ID ProtocolIE-ID ::= 239
id-HandoverRestrictionList ProtocolIE-ID ::= 240
-id-SCGConfigurationQuery ProtocolIE-ID ::= 241
+id-SCGConfigurationQuery ProtocolIE-ID ::= 241
id-SplitSRB ProtocolIE-ID ::= 242
id-NRUeReport ProtocolIE-ID ::= 243
id-InitiatingNodeType-EndcX2Setup ProtocolIE-ID ::= 244
@@ -407,9 +422,9 @@ id-RespondingNodeType-EndcConfigUpdate ProtocolIE-ID ::= 247
id-NRUESecurityCapabilities ProtocolIE-ID ::= 248
id-PDCPChangeIndication ProtocolIE-ID ::= 249
id-ServedEUTRAcellsENDCX2ManagementList ProtocolIE-ID ::= 250
-id-CellAssistanceInformation ProtocolIE-ID ::= 251
+id-CellAssistanceInformation ProtocolIE-ID ::= 251
id-Globalen-gNB-ID ProtocolIE-ID ::= 252
-id-ServedNRcellsENDCX2ManagementList ProtocolIE-ID ::= 253
+id-ServedNRcellsENDCX2ManagementList ProtocolIE-ID ::= 253
id-UE-ContextReferenceAtSgNB ProtocolIE-ID ::= 254
id-SecondaryRATUsageReport ProtocolIE-ID ::= 255
id-ActivationID ProtocolIE-ID ::= 256
@@ -419,7 +434,7 @@ id-ServedEUTRAcellsToModifyListENDCConfUpd ProtocolIE-ID ::= 259
id-ServedEUTRAcellsToDeleteListENDCConfUpd ProtocolIE-ID ::= 260
id-ServedNRcellsToModifyListENDCConfUpd ProtocolIE-ID ::= 261
id-ServedNRcellsToDeleteListENDCConfUpd ProtocolIE-ID ::= 262
-id-E-RABUsageReport-Item ProtocolIE-ID ::= 263
+id-E-RABUsageReport-Item ProtocolIE-ID ::= 263
id-Old-SgNB-UE-X2AP-ID ProtocolIE-ID ::= 264
id-SecondaryRATUsageReportList ProtocolIE-ID ::= 265
id-SecondaryRATUsageReport-Item ProtocolIE-ID ::= 266
@@ -502,7 +517,7 @@ id-FastMCGRecovery-SN-to-MN ProtocolIE-ID ::= 342
id-RequestedFastMCGRecoveryViaSRB3 ProtocolIE-ID ::= 343
id-AvailableFastMCGRecoveryViaSRB3 ProtocolIE-ID ::= 344
id-RequestedFastMCGRecoveryViaSRB3Release ProtocolIE-ID ::= 345
-id-ReleaseFastMCGRecoveryViaSRB3 ProtocolIE-ID ::= 346
+id-ReleaseFastMCGRecoveryViaSRB3 ProtocolIE-ID ::= 346
id-FastMCGRecovery-MN-to-SN ProtocolIE-ID ::= 347
id-PartialListIndicator ProtocolIE-ID ::= 348
id-MaximumCellListSize ProtocolIE-ID ::= 349
@@ -513,7 +528,7 @@ id-TNLA-To-Add-List ProtocolIE-ID ::= 353
id-TNLA-To-Update-List ProtocolIE-ID ::= 354
id-TNLA-To-Remove-List ProtocolIE-ID ::= 355
id-TNLA-Setup-List ProtocolIE-ID ::= 356
-id-TNLA-Failed-To-Setup-List ProtocolIE-ID ::= 357
+id-TNLA-Failed-To-Setup-List ProtocolIE-ID ::= 357
id-UnlicensedSpectrumRestriction ProtocolIE-ID ::= 358
id-UEContextReferenceatSourceNGRAN ProtocolIE-ID ::= 359
id-EPCHandoverRestrictionListContainer ProtocolIE-ID ::= 360
@@ -566,6 +581,38 @@ id-TraceCollectionEntityURI ProtocolIE-ID ::= 405
id-SFN-Offset ProtocolIE-ID ::= 406
id-CHO-DC-EarlyDataForwarding ProtocolIE-ID ::= 407
id-IMSvoiceEPSfallbackfrom5G ProtocolIE-ID ::= 408
-
+id-AdditionLocationInformation ProtocolIE-ID ::= 409
+id-DirectForwardingPathAvailability ProtocolIE-ID ::= 410
+id-sourceNG-RAN-node-id ProtocolIE-ID ::= 411
+id-SourceDLForwardingIPAddress ProtocolIE-ID ::= 412
+id-SourceNodeDLForwardingIPAddress ProtocolIE-ID ::= 413
+id-NRRACHReportInformation ProtocolIE-ID ::= 414
+id-SCG-UE-HistoryInformation ProtocolIE-ID ::= 415
+id-PSCellHistoryInformationRetrieve ProtocolIE-ID ::= 416
+id-MeasurementResultforNRCellsPossiblyAggregated ProtocolIE-ID ::= 417
+id-PSCell-UE-HistoryInformation ProtocolIE-ID ::= 418
+id-PSCellChangeHistory ProtocolIE-ID ::= 419
+id-CHOinformation-AddReq ProtocolIE-ID ::= 420
+id-CHOinformation-ModReq ProtocolIE-ID ::= 421
+id-SCGActivationStatus ProtocolIE-ID ::= 422
+id-SCGActivationRequest ProtocolIE-ID ::= 423
+id-CPAinformation-REQ ProtocolIE-ID ::= 424
+id-CPAinformation-REQ-ACK ProtocolIE-ID ::= 425
+id-CPAinformation-MOD ProtocolIE-ID ::= 426
+id-CPAinformation-MOD-ACK ProtocolIE-ID ::= 427
+id-CPACinformation-REQD ProtocolIE-ID ::= 428
+id-CPCinformation-REQD ProtocolIE-ID ::= 429
+id-CPCinformation-CONF ProtocolIE-ID ::= 430
+id-CPCinformation-NOTIFY ProtocolIE-ID ::= 431
+id-CPCupdate-MOD ProtocolIE-ID ::= 432
+id-Additional-Measurement-Timing-Configuration-List ProtocolIE-ID ::= 433
+id-ServedCellSpecificInfoReq-NR ProtocolIE-ID ::= 434
+id-SecurityIndication ProtocolIE-ID ::= 435
+id-SecurityResult ProtocolIE-ID ::= 436
+id-RAT-Restrictions ProtocolIE-ID ::= 437
+id-SCGreconfigNotification ProtocolIE-ID ::= 438
+id-MIMOPRBusageInformation ProtocolIE-ID ::= 439
+id-SensorMeasurementConfiguration ProtocolIE-ID ::= 440
+id-AdditionalListofForwardingGTPTunnelEndpoint ProtocolIE-ID ::= 441
END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-Containers.asn b/epan/dissectors/asn1/x2ap/X2AP-Containers.asn
index f56e0d8179..e8077b82ec 100644
--- a/epan/dissectors/asn1/x2ap/X2AP-Containers.asn
+++ b/epan/dissectors/asn1/x2ap/X2AP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.423 V16.7.0 (2021-10)
+-- 3GPP TS 36.423 V17.6.0 (2023-09)
-- 9.3.8 Container definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
X2AP-Containers {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Containers (5) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -27,7 +27,7 @@ IMPORTS
Criticality,
Presence,
PrivateIE-ID,
- ProtocolIE-ID
+ ProtocolIE-ID
FROM X2AP-CommonDataTypes;
-- **************************************************************
@@ -116,11 +116,11 @@ WITH SYNTAX {
--
-- **************************************************************
-ProtocolIE-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IEsSetParam}}
-ProtocolIE-Single-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
+ProtocolIE-Single-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field {X2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
@@ -135,7 +135,7 @@ ProtocolIE-Field {X2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
--
-- **************************************************************
-ProtocolIE-ContainerPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ProtocolIE-ContainerPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-FieldPair {{IEsSetParam}}
@@ -167,7 +167,7 @@ ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-P
--
-- **************************************************************
-ProtocolExtensionContainer {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ProtocolExtensionContainer {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
@@ -183,7 +183,7 @@ ProtocolExtensionField {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENC
--
-- **************************************************************
-PrivateIE-Container {X2AP-PRIVATE-IES : IEsSetParam} ::=
+PrivateIE-Container {X2AP-PRIVATE-IES : IEsSetParam} ::=
SEQUENCE (SIZE (1..maxPrivateIEs)) OF
PrivateIE-Field {{IEsSetParam}}
diff --git a/epan/dissectors/asn1/x2ap/X2AP-IEs.asn b/epan/dissectors/asn1/x2ap/X2AP-IEs.asn
index d43d12517e..15365be62e 100644
--- a/epan/dissectors/asn1/x2ap/X2AP-IEs.asn
+++ b/epan/dissectors/asn1/x2ap/X2AP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.423 V16.7.0 (2021-10)
+-- 3GPP TS 36.423 V17.6.0 (2023-09)
-- 9.3.5 Information Element definitions
-- **************************************************************
--
@@ -86,6 +86,17 @@ IMPORTS
id-IntendedTDD-DL-ULConfiguration-NR,
id-TraceCollectionEntityURI,
id-SFN-Offset,
+ id-AdditionLocationInformation,
+ id-SSB-PositionsInBurst,
+ id-NRCellPRACHConfig,
+ id-ULCarrierList,
+ id-TDDULDLConfigurationCommonNR,
+ id-MIMOPRBusageInformation,
+ id-Additional-Measurement-Timing-Configuration-List,
+ id-ServedCellSpecificInfoReq-NR,
+ id-RAT-Restrictions,
+ id-PSCell-UE-HistoryInformation,
+ id-SensorMeasurementConfiguration,
maxnoofBearers,
maxCellineNB,
@@ -138,7 +149,20 @@ IMPORTS
maxnoofSSBAreas,
maxnoofNRSCSs,
maxnoofNRPhysicalResourceBlocks,
- maxnoofNonAnchorCarrierFreqConfig
+ maxnoofNonAnchorCarrierFreqConfig,
+ maxnoofRACHReports,
+ maxnoofPSCellsPerSN,
+ maxnoofPSCellsPerPrimaryCellinUEHistoryInfo,
+ maxnoofReportedNRCellsPossiblyAggregated,
+ maxnoofPSCellCandidates,
+ maxnoofTargetSgNBs,
+ maxnoofMTCItems,
+ maxnoofCSIRSconfigurations,
+ maxnoofCSIRSneighbourCells,
+ maxnoofCSIRSneighbourCellsInMTC,
+ maxCellinengNB,
+ maxnoofSensorName,
+ maxnoofTargetSgNBsMinusOne
FROM X2AP-Constants
@@ -202,6 +226,78 @@ ABS-Status-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
ActivationID ::= INTEGER (0..255)
+Additional-Measurement-Timing-Configuration-List ::= SEQUENCE (SIZE(1.. maxnoofMTCItems)) OF Additional-Measurement-Timing-Configuration-Item
+
+Additional-Measurement-Timing-Configuration-Item ::= SEQUENCE {
+ additionalMeasurementTimingConfiguration INTEGER(0..16),
+ csi-RS-MTC-Configuration-List CSI-RS-MTC-Configuration-List,
+ iE-Extensions ProtocolExtensionContainer { { Additional-Measurement-Timing-Configuration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Additional-Measurement-Timing-Configuration-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CSI-RS-MTC-Configuration-List ::= SEQUENCE (SIZE(1.. maxnoofCSIRSconfigurations)) OF CSI-RS-MTC-Configuration-Item
+
+CSI-RS-MTC-Configuration-Item ::= SEQUENCE {
+ csi-RS-Index INTEGER(0..95),
+ csi-RS-Status ENUMERATED {activated,deactivated, ...},
+ csi-RS-Neighbour-List CSI-RS-Neighbour-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CSI-RS-MTC-Configuration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CSI-RS-MTC-Configuration-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CSI-RS-Neighbour-List ::= SEQUENCE (SIZE(1.. maxnoofCSIRSneighbourCells)) OF CSI-RS-Neighbour-Item
+
+CSI-RS-Neighbour-Item ::= SEQUENCE {
+ nr-cgi NRCGI,
+ csi-RS-MTC-Neighbour-List CSI-RS-MTC-Neighbour-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CSI-RS-Neighbour-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CSI-RS-Neighbour-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CSI-RS-MTC-Neighbour-List ::= SEQUENCE (SIZE(1.. maxnoofCSIRSneighbourCellsInMTC)) OF CSI-RS-MTC-Neighbour-Item
+
+CSI-RS-MTC-Neighbour-Item ::= SEQUENCE {
+ csi-RS-Index INTEGER(0..95),
+ iE-Extensions ProtocolExtensionContainer { { CSI-RS-MTC-Neighbour-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+CSI-RS-MTC-Neighbour-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AdditionalListofForwardingGTPTunnelEndpoint ::= SEQUENCE (SIZE(1..maxnoofTargetSgNBsMinusOne)) OF AdditionalListofForwardingGTPTunnelEndpoint-Item
+
+AdditionalListofForwardingGTPTunnelEndpoint-Item ::= SEQUENCE {
+ uL-GTPtunnelEndpoint GTPtunnelEndpoint OPTIONAL,
+ dL-GTPtunnelEndpoint GTPtunnelEndpoint OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { AdditionalListofForwardingGTPTunnelEndpoint-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AdditionalListofForwardingGTPTunnelEndpoint-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AdditionLocationInformation ::= ENUMERATED {
+ includePSCell,
+ ...
+}
+
AdditionalRRMPriorityIndex ::= BIT STRING (SIZE(32))
AdditionalSpecialSubframe-Info ::= SEQUENCE {
@@ -451,7 +547,10 @@ CauseRadioNetwork ::= ENUMERATED {
ue-power-saving,
insufficient-ue-capabilities,
normal-release,
- unknown-E-UTRAN-Node-Measurement-ID
+ unknown-E-UTRAN-Node-Measurement-ID,
+ sCG-activation-deactivation-failure,
+ sCG-deactivation-failure-due-to-data-transmission,
+ up-integrity-protection-not-possible
}
@@ -515,9 +614,179 @@ CellType-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
+
+CPACcandidatePSCells-list ::= SEQUENCE (SIZE(1..maxnoofPSCellCandidates)) OF CPACcandidatePSCells-item
+
+CPACcandidatePSCells-item ::= SEQUENCE {
+ pscell-id NRCGI,
+ iE-Extensions ProtocolExtensionContainer { {CPACcandidatePSCells-item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CPACcandidatePSCells-item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPCindicator ::= ENUMERATED {cpc-initiation, cpc-modification, cpc-cancel, ...}
+
+
+CPCdataforwarding ::= ENUMERATED {cpc-triggered, early-data-transmission-stop, ..., coordination-only}
+
+
+CPAinformation-REQ ::= SEQUENCE {
+ max-no-of-pscells INTEGER (1..maxnoofPSCellCandidates),
+ estimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CPAinformation-REQ-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAinformation-REQ-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPAinformation-REQ-ACK ::= SEQUENCE {
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { {CPAinformation-REQ-ACK-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAinformation-REQ-ACK-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPCinformation-REQD ::= SEQUENCE {
+ cpc-target-sgnb-list CPC-target-SgNB-reqd-list,
+ iE-Extensions ProtocolExtensionContainer { {CPCinformation-REQD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+CPCinformation-REQD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPC-target-SgNB-reqd-list ::= SEQUENCE (SIZE(1..maxnoofTargetSgNBs)) OF CPC-target-SgNB-reqd-item
+
+
+CPC-target-SgNB-reqd-item ::= SEQUENCE {
+ target-SgNB-ID GlobalGNB-ID,
+ cpc-indicator CPCindicator,
+ max-no-of-pscells INTEGER (1..maxnoofPSCellCandidates),
+ estimatedArrivalProbability CHO-Probability OPTIONAL,
+ sgNBtoMeNBContainer SgNBtoMeNBContainer,
+ iE-Extensions ProtocolExtensionContainer { {CPC-target-SgNB-reqd-item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPC-target-SgNB-reqd-item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPCinformation-CONF ::= SEQUENCE {
+ cpc-target-sgnb-list CPC-target-SgNB-conf-list,
+ iE-Extensions ProtocolExtensionContainer { {CPCinformation-CONF-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+CPCinformation-CONF-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPC-target-SgNB-conf-list ::= SEQUENCE (SIZE(1..maxnoofTargetSgNBs)) OF CPC-target-SgNB-conf-item
+
+
+CPC-target-SgNB-conf-item ::= SEQUENCE {
+ target-SgNB-ID GlobalGNB-ID,
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { {CPC-target-SgNB-conf-item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPC-target-SgNB-conf-item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPCinformation-NOTIFY ::= SEQUENCE {
+ cpc-indicator CPCdataforwarding,
+ iE-Extensions ProtocolExtensionContainer { {CPCinformation-NOTIFY-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPCinformation-NOTIFY-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPAinformation-MOD ::= SEQUENCE {
+ max-no-of-pscells INTEGER (1..maxnoofPSCellCandidates) OPTIONAL,
+ estimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CPAinformation-MOD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAinformation-MOD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPCupdate-MOD ::= SEQUENCE {
+
+ cpc-target-sgnb-list CPC-target-SgNB-mod-list,
+ iE-Extensions ProtocolExtensionContainer { {CPCupdate-MOD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPCupdate-MOD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPC-target-SgNB-mod-list ::= SEQUENCE (SIZE(1..maxnoofTargetSgNBs)) OF CPC-target-SgNB-mod-item
+
+CPC-target-SgNB-mod-item ::= SEQUENCE {
+ target-SgNB-ID GlobalGNB-ID,
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { {CPC-target-SgNB-mod-item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPC-target-SgNB-mod-item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPAinformation-MOD-ACK ::= SEQUENCE {
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { {CPAinformation-MOD-ACK-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAinformation-MOD-ACK-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPACinformation-REQD ::= SEQUENCE {
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { { CPACinformation-REQD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPACinformation-REQD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
CHO-DC-EarlyDataForwarding ::= ENUMERATED {stop, ...}
-CHO-DC-Indicator ::= ENUMERATED {true, ...}
+CHO-DC-Indicator ::= ENUMERATED {true, ..., coordination-only}
CNTypeRestrictions ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF CNTypeRestrictionsItem
@@ -776,6 +1045,32 @@ CandidateCellsToBeCancelledList ::= SEQUENCE (SIZE (1..maxnoofCellsinCHO)) OF EC
CHO-Probability ::= INTEGER (1..100)
+CHOinformation-AddReq ::= SEQUENCE {
+ source-eNB-ID GlobalENB-ID,
+ source-eNB-UE-X2AP-ID UE-X2AP-ID,
+ source-eNB-UE-X2AP-ID-Ext UE-X2AP-ID-Extension OPTIONAL,
+ cHO-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CHOinformation-AddReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOinformation-AddReq-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+
+CHOinformation-ModReq ::= SEQUENCE {
+ conditionalReconfig ENUMERATED {intra-mn-cho, ...},
+ cHO-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CHOinformation-ModReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOinformation-ModReq-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+
CSI-RSTransmissionIndication ::= ENUMERATED {
activated,
deactivated,
@@ -835,6 +1130,8 @@ DeliveryStatus-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
DesiredActNotificationLevel ::= ENUMERATED {none, e-rab, ue-level, ...}
+DirectForwardingPathAvailability ::= ENUMERATED {direct-path-available, ...}
+
DL-ABS-status::= INTEGER (0..100)
DL-Forwarding ::= ENUMERATED {
@@ -844,8 +1141,12 @@ DL-Forwarding ::= ENUMERATED {
DL-GBR-PRB-usage::= INTEGER (0..100)
+DL-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
DL-non-GBR-PRB-usage::= INTEGER (0..100)
+DL-non-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
DLResourceBitmapULandDLSharing ::= DataTrafficResources
DLResourcesULandDLSharing ::= CHOICE {
@@ -858,6 +1159,8 @@ DL-scheduling-PDCCH-CCE-usage::= INTEGER (0..100)
DL-Total-PRB-usage::= INTEGER (0..100)
+DL-Total-PRB-usage-for-MIMO::= INTEGER (0..100)
+
DRB-ID ::= INTEGER (1..32)
DuplicationActivation::= ENUMERATED {active, inactive, ...}
@@ -1154,6 +1457,7 @@ FDD-InfoNeighbourServedNRCell-Information ::= SEQUENCE {
}
FDD-InfoNeighbourServedNRCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ULCarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional },
...
}
@@ -1267,6 +1571,15 @@ GlobalGNB-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
+Global-RAN-NODE-ID ::= CHOICE {
+ gNB GlobalGNB-ID,
+ choice-extension ProtocolIE-Single-Container { { Global-RAN-NODE-ID-ExtIEs} }
+}
+
+Global-RAN-NODE-ID-ExtIEs X2AP-PROTOCOL-IES ::= {
+ ...
+}
+
GNBOverloadInformation ::= ENUMERATED {overloaded, not-overloaded, ...}
GTPTLAs ::= SEQUENCE (SIZE(1.. maxnoofGTPTLAs)) OF GTPTLA-Item
@@ -1354,7 +1667,8 @@ HandoverRestrictionList-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-CNTypeRestrictions CRITICALITY ignore EXTENSION CNTypeRestrictions PRESENCE optional}|
{ ID id-NRrestrictionin5GS CRITICALITY ignore EXTENSION NRrestrictionin5GS PRESENCE optional}|
{ ID id-LastNG-RANPLMNIdentity CRITICALITY ignore EXTENSION PLMN-Identity PRESENCE optional}|
- { ID id-UnlicensedSpectrumRestriction CRITICALITY ignore EXTENSION UnlicensedSpectrumRestriction PRESENCE optional},
+ { ID id-UnlicensedSpectrumRestriction CRITICALITY ignore EXTENSION UnlicensedSpectrumRestriction PRESENCE optional}|
+ { ID id-RAT-Restrictions CRITICALITY ignore EXTENSION RAT-Restrictions PRESENCE optional},
...
}
@@ -1388,6 +1702,19 @@ IMSvoiceEPSfallbackfrom5G ::= ENUMERATED {
IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16, ...))
+IntegrityProtectionIndication ::= ENUMERATED {
+ required,
+ preferred,
+ notneeded,
+ ...
+}
+
+IntegrityProtectionResult ::= ENUMERATED {
+ performed,
+ notperformed,
+ ...
+}
+
IntendedTDD-DL-ULConfiguration-NR ::= OCTET STRING
InterfaceInstanceIndication ::= INTEGER (0..255, ...)
@@ -1408,6 +1735,8 @@ Key-eNodeB-Star ::= BIT STRING (SIZE(256))
-- L
+LastVisitedPSCell-Item ::= OCTET STRING
+
LAC ::= OCTET STRING (SIZE (2)) --(EXCEPT ('0000'H|'FFFE'H))
LastVisitedCell-Item ::= CHOICE {
@@ -1429,7 +1758,8 @@ LastVisitedEUTRANCellInformation ::= SEQUENCE {
LastVisitedEUTRANCellInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
-- Extension for Rel-11 to support enhanced granularity for time UE stayed in cell --
{ ID id-Time-UE-StayedInCell-EnhancedGranularity CRITICALITY ignore EXTENSION Time-UE-StayedInCell-EnhancedGranularity PRESENCE optional}|
- { ID id-HO-cause CRITICALITY ignore EXTENSION Cause PRESENCE optional},
+ { ID id-HO-cause CRITICALITY ignore EXTENSION Cause PRESENCE optional}|
+ { ID id-PSCell-UE-HistoryInformation CRITICALITY ignore EXTENSION PSCell-UE-HistoryInformation PRESENCE optional},
...
}
@@ -1479,6 +1809,7 @@ LocationReportingInformation ::= SEQUENCE {
}
LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+ { ID id-AdditionLocationInformation CRITICALITY ignore EXTENSION AdditionLocationInformation PRESENCE optional},
...
}
@@ -1625,7 +1956,8 @@ MDT-Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ID id-M6Configuration CRITICALITY ignore EXTENSION M6Configuration PRESENCE conditional}|
{ID id-M7Configuration CRITICALITY ignore EXTENSION M7Configuration PRESENCE conditional}|
{ ID id-BluetoothMeasurementConfiguration CRITICALITY ignore EXTENSION BluetoothMeasurementConfiguration PRESENCE optional}|
- { ID id-WLANMeasurementConfiguration CRITICALITY ignore EXTENSION WLANMeasurementConfiguration PRESENCE optional},
+ { ID id-WLANMeasurementConfiguration CRITICALITY ignore EXTENSION WLANMeasurementConfiguration PRESENCE optional}|
+ { ID id-SensorMeasurementConfiguration CRITICALITY ignore EXTENSION SensorMeasurementConfiguration PRESENCE optional},
...
}
@@ -1856,6 +2188,21 @@ NRCGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
+NRRACHReportContainer ::= OCTET STRING
+
+NRRACHReportInformation ::= SEQUENCE (SIZE(1.. maxnoofRACHReports)) OF NRRACHReportList-Item
+
+NRRACHReportList-Item ::= SEQUENCE {
+ nRRACHReport NRRACHReportContainer,
+ uEAssitantIdentifier SgNB-UE-X2AP-ID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { NRRACHReportList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRRACHReportList-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
NRNeighbour-Information ::= SEQUENCE (SIZE (1.. maxofNRNeighbours))OF SEQUENCE {
nrpCI NRPCI,
nrCellID NRCGI,
@@ -1872,7 +2219,10 @@ NRNeighbour-Information ::= SEQUENCE (SIZE (1.. maxofNRNeighbours))OF SEQUENCE {
}
NRNeighbour-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
- {ID id-CSI-RSTransmissionIndication CRITICALITY ignore EXTENSION EARFCNExtension PRESENCE optional},
+ {ID id-CSI-RSTransmissionIndication CRITICALITY ignore EXTENSION CSI-RSTransmissionIndication PRESENCE optional}|
+ {ID id-SSB-PositionsInBurst CRITICALITY ignore EXTENSION SSB-PositionsInBurst PRESENCE optional}|
+ {ID id-NRCellPRACHConfig CRITICALITY ignore EXTENSION NRCellPRACHConfig PRESENCE optional}|
+ {ID id-Additional-Measurement-Timing-Configuration-List CRITICALITY ignore EXTENSION Additional-Measurement-Timing-Configuration-List PRESENCE optional },
...
}
@@ -1952,6 +2302,19 @@ NRrestrictioninEPSasSecondaryRAT ::= ENUMERATED {
...
}
+MeasurementResultforNRCellsPossiblyAggregated ::= SEQUENCE (SIZE(1.. maxnoofReportedNRCellsPossiblyAggregated)) OF MeasurementResultforNRCellsPossiblyAggregated-Item
+
+MeasurementResultforNRCellsPossiblyAggregated-Item ::= SEQUENCE {
+ cellID NRCGI,
+ nrCompositeAvailableCapacityGroup NRCompositeAvailableCapacityGroup OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { { MeasurementResultforNRCellsPossiblyAggregated-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MeasurementResultforNRCellsPossiblyAggregated-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
NRRadioResourceStatus ::= SEQUENCE {
ssbAreaRadioResourceStatus-List SSBAreaRadioResourceStatus-List,
iE-Extensions ProtocolExtensionContainer { {NRRadioResourceStatus-ExtIEs} } OPTIONAL,
@@ -1959,9 +2322,24 @@ NRRadioResourceStatus ::= SEQUENCE {
}
NRRadioResourceStatus-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-MIMOPRBusageInformation CRITICALITY ignore EXTENSION MIMOPRBusageInformation PRESENCE optional },
+ ...
+}
+
+MIMOPRBusageInformation ::= SEQUENCE {
+dl-GBR-PRB-usage-for-MIMO DL-GBR-PRB-usage-for-MIMO,
+ ul-GBR-PRB-usage-for-MIMO UL-GBR-PRB-usage-for-MIMO,
+ dl-non-GBR-PRB-usage-for-MIMO DL-non-GBR-PRB-usage-for-MIMO,
+ ul-non-GBR-PRB-usage-for-MIMO UL-non-GBR-PRB-usage-for-MIMO,
+ dl-Total-PRB-usage-for-MIMO DL-Total-PRB-usage-for-MIMO,
+ ul-Total-PRB-usage-for-MIMO UL-Total-PRB-usage-for-MIMO,
+ iE-Extensions ProtocolExtensionContainer { { MIMOPRBusageInformation-ExtIEs} } OPTIONAL,
...
}
+MIMOPRBusageInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
NRrestrictionin5GS ::= ENUMERATED {
nRrestrictedin5GS,
@@ -1982,7 +2360,7 @@ NR-TxBW-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
-NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ...}
+NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ... , nrb44, nrb58, nrb92, nrb119, nrb188, nrb242}
NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ...}
@@ -2252,6 +2630,13 @@ PrivacyIndicator ::= ENUMERATED {
...
}
+PSCellHistoryInformationRetrieve ::= ENUMERATED {query, ...}
+
+PSCell-UE-HistoryInformation ::= SEQUENCE (SIZE(1.. maxnoofPSCellsPerPrimaryCellinUEHistoryInfo)) OF LastVisitedPSCell-Item
+
+PSCellChangeHistory ::= ENUMERATED {reportingFullHistory,...}
+
+
-- Q
QCI ::= INTEGER (0..255)
@@ -2303,6 +2688,19 @@ Range ::= ENUMERATED {m50, m80, m180, m200, m350, m400, m500, m700, m1000, ...}
RAN-UE-NGAP-ID ::= INTEGER (0..4294967295)
+RAT-Restrictions ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF RAT-RestrictionsItem
+
+RAT-RestrictionsItem ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ rAT-RestrictionInformation BIT STRING (SIZE(8, ...)),
+ iE-Extensions ProtocolExtensionContainer { { RAT-RestrictionsItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RAT-RestrictionsItem-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))
ReceiveStatusOfULPDCPSDUsExtended ::= BIT STRING (SIZE(1..16384))
@@ -2509,8 +2907,20 @@ S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
+
+SCGActivationStatus ::= ENUMERATED {scg-activated, scg-deactivated, ...}
+
+
+SCGActivationRequest ::= ENUMERATED {activate-scg, deactivate-scg, ...}
+
+
SCGChangeIndication ::= ENUMERATED {pDCPCountWrapAround, pSCellChange, other, ...}
+SCGreconfigNotification ::= ENUMERATED {executed, ..., executed-deleted, deleted }
+
+
+SCG-UE-HistoryInformation ::= SEQUENCE (SIZE(1.. maxnoofPSCellsPerSN)) OF LastVisitedPSCell-Item
+
SecondaryRATUsageReportList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container {{SecondaryRATUsageReport-ItemIEs}}
SecondaryRATUsageReport-ItemIEs X2AP-PROTOCOL-IES ::= {
@@ -2530,10 +2940,64 @@ SecondaryRATUsageReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
+SecurityIndication ::= SEQUENCE {
+ integrityProtectionIndication IntegrityProtectionIndication,
+ iE-Extensions ProtocolExtensionContainer { { SecurityIndication-ExtIEs } } OPTIONAL,
+ ...
+}
+
+SecurityIndication-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SecurityResult ::= SEQUENCE {
+ integrityProtectionResult IntegrityProtectionResult,
+ iE-Extensions ProtocolExtensionContainer { {SecurityResult-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SecurityResult-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SeNBSecurityKey ::= BIT STRING (SIZE(256))
SeNBtoMeNBContainer ::= OCTET STRING
+SensorMeasurementConfiguration ::= SEQUENCE {
+ sensorMeasConfig SensorMeasConfig,
+ sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {SensorMeasurementConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SensorMeasurementConfiguration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SensorMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofSensorName)) OF SensorMeasConfigNameItem
+
+SensorMeasConfigNameItem ::= SEQUENCE {
+ sensorNameConfig SensorNameConfig,
+ iE-Extensions ProtocolExtensionContainer { { SensorMeasConfigNameItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+SensorMeasConfigNameItem-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SensorMeasConfig::= ENUMERATED {setup,...}
+
+SensorNameConfig ::= CHOICE {
+ uncompensatedBarometricConfig ENUMERATED {true, ...},
+ choice-extension ProtocolIE-Single-Container { {SensorNameConfig-ExtIEs} }
+}
+
+SensorNameConfig-ExtIEs X2AP-PROTOCOL-IES ::= {
+ ...
+}
+
ServedCells ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE {
servedCellInfo ServedCell-Information,
@@ -2543,7 +3007,8 @@ ServedCells ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE {
}
ServedCell-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
- { ID id-NRNeighbourInfoToAdd CRITICALITY ignore EXTENSION NRNeighbour-Information PRESENCE optional },
+ { ID id-NRNeighbourInfoToAdd CRITICALITY ignore EXTENSION NRNeighbour-Information PRESENCE optional }|
+ { ID id-ServedCellSpecificInfoReq-NR CRITICALITY ignore EXTENSION ServedCellSpecificInfoReq-NR PRESENCE optional },
...
}
@@ -2573,6 +3038,20 @@ ServedCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
...
}
+ServedCellSpecificInfoReq-NR ::= SEQUENCE (SIZE(1.. maxCellinengNB)) OF ServedCellSpecificInfoReq-NR-Item
+
+ServedCellSpecificInfoReq-NR-Item ::= SEQUENCE {
+ nRCGI NRCGI,
+ additionalMTCListRequestIndicator ENUMERATED {additionalMTCListRequested, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ServedCellSpecificInfoReq-NR-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedCellSpecificInfoReq-NR-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
ServiceType ::= ENUMERATED{
qMC-for-streaming-service,
qMC-for-MTSI-service,
@@ -2941,7 +3420,9 @@ TDD-InfoNeighbourServedNRCell-Information ::= SEQUENCE {
}
TDD-InfoNeighbourServedNRCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
- {ID id-IntendedTDD-DL-ULConfiguration-NR CRITICALITY ignore EXTENSION IntendedTDD-DL-ULConfiguration-NR PRESENCE optional},
+ {ID id-IntendedTDD-DL-ULConfiguration-NR CRITICALITY ignore EXTENSION IntendedTDD-DL-ULConfiguration-NR PRESENCE optional}|
+ {ID id-TDDULDLConfigurationCommonNR CRITICALITY ignore EXTENSION TDDULDLConfigurationCommonNR PRESENCE optional}|
+ {ID id-CarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional},
...
}
@@ -3264,6 +3745,8 @@ UL-UE-Configuration::= ENUMERATED { no-data, shared, only, ... }
UL-GBR-PRB-usage::= INTEGER (0..100)
+UL-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
UL-HighInterferenceIndicationInfo ::= SEQUENCE (SIZE(1..maxCellineNB)) OF UL-HighInterferenceIndicationInfo-Item
UL-HighInterferenceIndicationInfo-Item ::= SEQUENCE {
@@ -3290,6 +3773,8 @@ UL-InterferenceOverloadIndication-Item ::= ENUMERATED {
UL-non-GBR-PRB-usage::= INTEGER (0..100)
+UL-non-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
ULOnlySharing ::= SEQUENCE{
uLResourceBitmapULOnlySharing DataTrafficResources,
iE-Extensions ProtocolExtensionContainer { {ULOnlySharing-ExtIEs} } OPTIONAL,
@@ -3313,6 +3798,8 @@ UL-scheduling-PDCCH-CCE-usage::= INTEGER (0..100)
UL-Total-PRB-usage::= INTEGER (0..100)
+UL-Total-PRB-usage-for-MIMO::= INTEGER (0..100)
+
UnlicensedSpectrumRestriction ::= ENUMERATED {
unlicensed-restricted,
...
diff --git a/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn b/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn
index 8f0def7405..e50deb2f31 100644
--- a/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.423 V16.7.0 (2021-10)
+-- 3GPP TS 36.423 V17.6.0 (2023-09)
-- 9.3.4 PDU Definitions
-- **************************************************************
--
@@ -203,6 +203,8 @@ IMPORTS
RAN-UE-NGAP-ID,
CHOinformation-REQ,
CHOinformation-ACK,
+ CHOinformation-AddReq,
+ CHOinformation-ModReq,
DAPSRequestInfo,
DAPSResponseInfo,
CandidateCellsToBeCancelledList,
@@ -233,7 +235,35 @@ IMPORTS
IntendedTDD-DL-ULConfiguration-NR,
UERadioCapability,
SFN-Offset,
- IMSvoiceEPSfallbackfrom5G
+ IMSvoiceEPSfallbackfrom5G,
+ Global-RAN-NODE-ID,
+ DirectForwardingPathAvailability,
+ NRRACHReportInformation,
+ SCG-UE-HistoryInformation,
+ PSCellHistoryInformationRetrieve,
+
+ PSCell-UE-HistoryInformation,
+ PSCellChangeHistory,
+ MeasurementResultforNRCellsPossiblyAggregated,
+ SCGActivationStatus,
+ SCGActivationRequest,
+ CPAinformation-REQ,
+ CPAinformation-REQ-ACK,
+ CPAinformation-MOD,
+ CPAinformation-MOD-ACK,
+ CPACinformation-REQD,
+ CPCinformation-REQD,
+ CPCinformation-CONF,
+ CPCinformation-NOTIFY,
+ CPCupdate-MOD,
+ Additional-Measurement-Timing-Configuration-List,
+ ServedCellSpecificInfoReq-NR,
+ SecurityIndication,
+ SecurityResult,
+ TraceCollectionEntityIPAddress,
+ SCGreconfigNotification,
+ AdditionalListofForwardingGTPTunnelEndpoint
+
@@ -556,6 +586,8 @@ FROM X2AP-Containers
id-UEContextReferenceatSourceNGRAN,
id-CHOinformation-REQ,
id-CHOinformation-ACK,
+ id-CHOinformation-AddReq,
+ id-CHOinformation-ModReq,
id-DAPSRequestInfo,
id-RequestedTargetCellID,
id-CandidateCellsToBeCancelledList,
@@ -587,6 +619,32 @@ FROM X2AP-Containers
id-IntendedTDD-DL-ULConfiguration-NR,
id-UERadioCapability,
id-SFN-Offset,
+ id-DirectForwardingPathAvailability,
+ id-sourceNG-RAN-node-id,
+ id-SourceDLForwardingIPAddress,
+ id-SourceNodeDLForwardingIPAddress,
+ id-NRRACHReportInformation,
+ id-SCG-UE-HistoryInformation,
+ id-PSCellHistoryInformationRetrieve,
+ id-MeasurementResultforNRCellsPossiblyAggregated,
+ id-PSCellChangeHistory,
+ id-SCGActivationStatus,
+ id-SCGActivationRequest,
+ id-CPAinformation-REQ,
+ id-CPAinformation-REQ-ACK,
+ id-CPAinformation-MOD,
+ id-CPAinformation-MOD-ACK,
+ id-CPACinformation-REQD,
+ id-CPCinformation-REQD,
+ id-CPCinformation-CONF,
+ id-CPCinformation-NOTIFY,
+ id-CPCupdate-MOD,
+ id-Additional-Measurement-Timing-Configuration-List,
+ id-ServedCellSpecificInfoReq-NR,
+ id-SecurityIndication,
+ id-SecurityResult,
+ id-SCGreconfigNotification,
+ id-AdditionalListofForwardingGTPTunnelEndpoint,
maxCellineNB,
maxnoofBearers,
maxnoofPDCP-SN,
@@ -638,7 +696,7 @@ HandoverRequest-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-UE-ContextReferenceAtSgNB CRITICALITY ignore TYPE UE-ContextReferenceAtSgNB PRESENCE optional}|
{ ID id-AerialUEsubscriptionInformation CRITICALITY ignore TYPE AerialUEsubscriptionInformation PRESENCE optional}|
{ ID id-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
- { ID id-CHOinformation-REQ CRITICALITY ignore TYPE CHOinformation-REQ PRESENCE optional}|
+ { ID id-CHOinformation-REQ CRITICALITY reject TYPE CHOinformation-REQ PRESENCE optional}|
{ ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional}|
{ ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
{ ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional},
@@ -690,12 +748,17 @@ E-RABs-ToBeSetup-Item ::= SEQUENCE {
E-RABs-ToBeSetup-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-BearerType CRITICALITY reject EXTENSION BearerType PRESENCE optional}|
{ ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
...
}
MobilityInformation ::= BIT STRING (SIZE(32))
+SourceDLForwardingIPAddress ::= BIT STRING (SIZE(1..160, ...))
+
+
UE-ContextReferenceAtSeNB ::= SEQUENCE {
source-GlobalSeNB-ID GlobalENB-ID,
seNB-UE-X2AP-ID UE-X2AP-ID,
@@ -1427,7 +1490,8 @@ CellMeasurementResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-ABS-Status CRITICALITY ignore EXTENSION ABS-Status PRESENCE optional}|
{ ID id-RSRPMRList CRITICALITY ignore EXTENSION RSRPMRList PRESENCE optional}|
{ ID id-CSIReportList CRITICALITY ignore EXTENSION CSIReportList PRESENCE optional}|
- { ID id-CellReportingIndicator CRITICALITY ignore EXTENSION CellReportingIndicator PRESENCE optional},
+ { ID id-CellReportingIndicator CRITICALITY ignore EXTENSION CellReportingIndicator PRESENCE optional}|
+ { ID id-MeasurementResultforNRCellsPossiblyAggregated CRITICALITY ignore EXTENSION MeasurementResultforNRCellsPossiblyAggregated PRESENCE optional},
...
}
@@ -1706,7 +1770,8 @@ E-RABs-ToBeAdded-Item-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-SIPTO-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-BearerType CRITICALITY ignore EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1719,6 +1784,7 @@ E-RABs-ToBeAdded-Item-Split-Bearer ::= SEQUENCE {
}
E-RABs-ToBeAdded-Item-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1770,6 +1836,7 @@ E-RABs-Admitted-ToBeAdded-Item-SCG-Bearer ::= SEQUENCE {
}
E-RABs-Admitted-ToBeAdded-Item-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1781,6 +1848,7 @@ E-RABs-Admitted-ToBeAdded-Item-Split-Bearer ::= SEQUENCE {
}
E-RABs-Admitted-ToBeAdded-Item-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1918,7 +1986,8 @@ E-RABs-ToBeAdded-ModReqItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-SIPTO-Correlation-ID CRITICALITY ignore EXTENSION Correlation-ID PRESENCE optional}|
{ ID id-BearerType CRITICALITY ignore EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1931,6 +2000,7 @@ E-RABs-ToBeAdded-ModReqItem-Split-Bearer ::= SEQUENCE {
}
E-RABs-ToBeAdded-ModReqItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+{ ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -2055,6 +2125,7 @@ E-RABs-Admitted-ToBeAdded-ModAckItem-SCG-Bearer ::= SEQUENCE {
}
E-RABs-Admitted-ToBeAdded-ModAckItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+{ ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -2066,6 +2137,7 @@ E-RABs-Admitted-ToBeAdded-ModAckItem-Split-Bearer ::= SEQUENCE {
}
E-RABs-Admitted-ToBeAdded-ModAckItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+{ ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
E-RABs-Admitted-ToBeModified-ModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeModified-ModAckItemIEs} }
@@ -2569,7 +2641,9 @@ E-RABs-ToBeSetupRetrieve-Item ::= SEQUENCE {
E-RABs-ToBeSetupRetrieve-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-uL-GTPtunnelEndpoint CRITICALITY reject EXTENSION GTPtunnelEndpoint PRESENCE mandatory}|
{ ID id-dL-Forwarding CRITICALITY ignore EXTENSION DL-Forwarding PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -2630,7 +2704,15 @@ SgNBAdditionRequest-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-ManagementBasedMDTallowed CRITICALITY ignore TYPE ManagementBasedMDTallowed PRESENCE optional }|
{ ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
{ ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional}|
- { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional}, ...
+ { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional}|
+ { ID id-sourceNG-RAN-node-id CRITICALITY ignore TYPE Global-RAN-NODE-ID PRESENCE optional}|
+ { ID id-UE-HistoryInformation CRITICALITY ignore TYPE UE-HistoryInformation PRESENCE optional}|
+ { ID id-UE-HistoryInformationFromTheUE CRITICALITY ignore TYPE UE-HistoryInformationFromTheUE PRESENCE optional}|
+ { ID id-PSCellChangeHistory CRITICALITY ignore TYPE PSCellChangeHistory PRESENCE optional}|
+ { ID id-CHOinformation-AddReq CRITICALITY reject TYPE CHOinformation-AddReq PRESENCE optional}|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional}|
+ { ID id-CPAinformation-REQ CRITICALITY reject TYPE CPAinformation-REQ PRESENCE optional},
+ ...
}
E-RABs-ToBeAdded-SgNBAddReqList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeAdded-SgNBAddReq-ItemIEs} }
@@ -2670,9 +2752,12 @@ E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPpresent ::= SEQUENCE {
}
E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
- { ID id-RLCMode-transferred CRITICALITY ignore EXTENSION RLCMode PRESENCE optional}|
- { ID id-BearerType CRITICALITY ignore EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-RLCMode-transferred CRITICALITY ignore EXTENSION RLCMode PRESENCE optional}|
+ { ID id-BearerType CRITICALITY ignore EXTENSION BearerType PRESENCE optional}|
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional}|
+ { ID id-SourceNodeDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -2717,7 +2802,10 @@ SgNBAdditionRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-SgNBResourceCoordinationInformation CRITICALITY ignore TYPE SgNBResourceCoordinationInformation PRESENCE optional}|
{ ID id-RRCConfigIndication CRITICALITY reject TYPE RRC-Config-Ind PRESENCE optional}|
{ ID id-LocationInformationSgNB CRITICALITY ignore TYPE LocationInformationSgNB PRESENCE optional}|
- { ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional },
+ { ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional }|
+ { ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional}|
+ { ID id-CPAinformation-REQ-ACK CRITICALITY ignore TYPE CPAinformation-REQ-ACK PRESENCE optional},
...
}
@@ -2761,7 +2849,9 @@ E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPpresent ::= SEQUENCE {
E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-uLpDCPSnLength CRITICALITY ignore EXTENSION PDCPSnLength PRESENCE optional}|
- { ID id-dLPDCPSnLength CRITICALITY ignore EXTENSION PDCPSnLength PRESENCE optional},
+ { ID id-dLPDCPSnLength CRITICALITY ignore EXTENSION PDCPSnLength PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+ { ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional},
...
}
@@ -2876,7 +2966,13 @@ SgNBModificationRequest-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-RequestedFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3 PRESENCE optional}|
{ ID id-RequestedFastMCGRecoveryViaSRB3Release CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3Release PRESENCE optional}|
{ ID id-SNtriggered CRITICALITY ignore TYPE SNtriggered PRESENCE optional}|
- { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional},
+ { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional}|
+ { ID id-PSCellHistoryInformationRetrieve CRITICALITY ignore TYPE PSCellHistoryInformationRetrieve PRESENCE optional}|
+ { ID id-UE-HistoryInformationFromTheUE CRITICALITY ignore TYPE UE-HistoryInformationFromTheUE PRESENCE optional}|
+ { ID id-CHOinformation-ModReq CRITICALITY ignore TYPE CHOinformation-ModReq PRESENCE optional}|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional}|
+ { ID id-CPAinformation-MOD CRITICALITY ignore TYPE CPAinformation-MOD PRESENCE optional}|
+ { ID id-CPCupdate-MOD CRITICALITY ignore TYPE CPCupdate-MOD PRESENCE optional},
...
}
@@ -2937,7 +3033,9 @@ E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPpresent ::= SEQUENCE {
E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-RLCMode-transferred CRITICALITY ignore EXTENSION RLCMode PRESENCE optional}|
{ ID id-BearerType CRITICALITY ignore EXTENSION BearerType PRESENCE optional}|
- { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional},
+ { ID id-Ethernet-Type CRITICALITY ignore EXTENSION Ethernet-Type PRESENCE optional}|
+ { ID id-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -3085,7 +3183,10 @@ SgNBModificationRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-RRCConfigIndication CRITICALITY reject TYPE RRC-Config-Ind PRESENCE optional}|
{ ID id-LocationInformationSgNB CRITICALITY ignore TYPE LocationInformationSgNB PRESENCE optional}|
{ ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional}|
- { ID id-ReleaseFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE ReleaseFastMCGRecoveryViaSRB3 PRESENCE optional},
+ { ID id-ReleaseFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE ReleaseFastMCGRecoveryViaSRB3 PRESENCE optional}|
+ { ID id-SCG-UE-HistoryInformation CRITICALITY ignore TYPE SCG-UE-HistoryInformation PRESENCE optional}|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional}|
+ { ID id-CPAinformation-MOD-ACK CRITICALITY reject TYPE CPAinformation-MOD-ACK PRESENCE optional},
...
}
@@ -3129,7 +3230,9 @@ E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPpresent ::= SEQUENCE {
E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-uLpDCPSnLength CRITICALITY ignore EXTENSION PDCPSnLength PRESENCE optional}|
- { ID id-dLPDCPSnLength CRITICALITY ignore EXTENSION PDCPSnLength PRESENCE optional},
+ { ID id-dLPDCPSnLength CRITICALITY ignore EXTENSION PDCPSnLength PRESENCE optional}|
+ { ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional}|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -3269,16 +3372,20 @@ SgNBModificationRequired ::= SEQUENCE {
SgNBModificationRequired-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-MeNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory}|
- { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
+ { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
- { ID id-PDCPChangeIndication CRITICALITY ignore TYPE PDCPChangeIndication PRESENCE optional}|
+ { ID id-PDCPChangeIndication CRITICALITY ignore TYPE PDCPChangeIndication PRESENCE optional}|
{ ID id-E-RABs-ToBeReleased-SgNBModReqdList CRITICALITY ignore TYPE E-RABs-ToBeReleased-SgNBModReqdList PRESENCE optional}|
- { ID id-SgNBtoMeNBContainer CRITICALITY ignore TYPE SgNBtoMeNBContainer PRESENCE optional}|
+ { ID id-SgNBtoMeNBContainer CRITICALITY ignore TYPE SgNBtoMeNBContainer PRESENCE optional}|
{ ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional}|
{ ID id-E-RABs-ToBeModified-SgNBModReqdList CRITICALITY ignore TYPE E-RABs-ToBeModified-SgNBModReqdList PRESENCE optional}|
{ ID id-SgNBResourceCoordinationInformation CRITICALITY ignore TYPE SgNBResourceCoordinationInformation PRESENCE optional}|
{ ID id-RRCConfigIndication CRITICALITY reject TYPE RRC-Config-Ind PRESENCE optional}|
- { ID id-LocationInformationSgNB CRITICALITY ignore TYPE LocationInformationSgNB PRESENCE optional},
+ { ID id-LocationInformationSgNB CRITICALITY ignore TYPE LocationInformationSgNB PRESENCE optional}|
+ { ID id-SCG-UE-HistoryInformation CRITICALITY ignore TYPE SCG-UE-HistoryInformation PRESENCE optional}|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional}|
+ { ID id-CPACinformation-REQD CRITICALITY ignore TYPE CPACinformation-REQD PRESENCE optional}|
+ { ID id-SCGreconfigNotification CRITICALITY ignore TYPE SCGreconfigNotification PRESENCE optional},
...
}
@@ -3526,7 +3633,8 @@ SgNBReleaseRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-SgNB-UE-X2AP-ID CRITICALITY ignore TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
{ ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional }|
- { ID id-E-RABs-Admitted-ToBeReleased-SgNBRelReqAckList CRITICALITY ignore TYPE E-RABs-Admitted-ToBeReleased-SgNBRelReqAckList PRESENCE optional },
+ { ID id-E-RABs-Admitted-ToBeReleased-SgNBRelReqAckList CRITICALITY ignore TYPE E-RABs-Admitted-ToBeReleased-SgNBRelReqAckList PRESENCE optional }|
+ { ID id-SCG-UE-HistoryInformation CRITICALITY ignore TYPE SCG-UE-HistoryInformation PRESENCE optional},
...
}
@@ -3586,7 +3694,8 @@ SgNBReleaseRequired-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
{ ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional }|
{ ID id-E-RABs-ToBeReleased-SgNBRelReqdList CRITICALITY ignore TYPE E-RABs-ToBeReleased-SgNBRelReqdList PRESENCE optional }|
- { ID id-SgNBtoMeNBContainer CRITICALITY ignore TYPE SgNBtoMeNBContainer PRESENCE optional },
+ { ID id-SgNBtoMeNBContainer CRITICALITY ignore TYPE SgNBtoMeNBContainer PRESENCE optional }|
+ { ID id-SCG-UE-HistoryInformation CRITICALITY ignore TYPE SCG-UE-HistoryInformation PRESENCE optional},
...
}
@@ -3721,12 +3830,30 @@ SgNBChangeRequired ::= SEQUENCE {
}
SgNBChangeRequired-IEs X2AP-PROTOCOL-IES ::= {
- { ID id-MeNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory}|
- { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
- { ID id-Target-SgNB-ID CRITICALITY reject TYPE GlobalGNB-ID PRESENCE mandatory}|
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
- { ID id-SgNBtoMeNBContainer CRITICALITY reject TYPE SgNBtoMeNBContainer PRESENCE optional}|
- { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional},
+ { ID id-MeNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory}|
+ { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
+ { ID id-Target-SgNB-ID CRITICALITY reject TYPE GlobalGNB-ID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-SgNBtoMeNBContainer CRITICALITY reject TYPE SgNBtoMeNBContainer PRESENCE optional}|
+ { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional}|
+ { ID id-SCG-UE-HistoryInformation CRITICALITY ignore TYPE SCG-UE-HistoryInformation PRESENCE optional}|
+ { ID id-CPCinformation-REQD CRITICALITY reject TYPE CPCinformation-REQD PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- ACCESS AND MOBILITY INDICATION
+--
+-- **************************************************************
+
+AccessAndMobilityIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ AccessAndMobilityIndication-IEs}},
+ ...
+}
+AccessAndMobilityIndication-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-NRRACHReportInformation CRITICALITY ignore TYPE NRRACHReportInformation PRESENCE optional},
...
}
@@ -3746,7 +3873,9 @@ SgNBChangeConfirm-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-SgNB-UE-X2AP-ID CRITICALITY ignore TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
{ ID id-E-RABs-ToBeReleased-SgNBChaConfList CRITICALITY ignore TYPE E-RABs-ToBeReleased-SgNBChaConfList PRESENCE optional}|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
- { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY ignore TYPE UE-X2AP-ID-Extension PRESENCE optional},
+ { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY ignore TYPE UE-X2AP-ID-Extension PRESENCE optional}|
+ { ID id-CPCinformation-CONF CRITICALITY ignore TYPE CPCinformation-CONF PRESENCE optional}|
+ { ID id-MeNBtoSgNBContainer CRITICALITY ignore TYPE MeNBtoSgNBContainer PRESENCE optional},
...
}
@@ -3781,6 +3910,7 @@ E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPpresent ::= SEQUENCE {
}
E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-AdditionalListofForwardingGTPTunnelEndpoint CRITICALITY ignore EXTENSION AdditionalListofForwardingGTPTunnelEndpoint PRESENCE optional },
...
}
@@ -3894,6 +4024,7 @@ ServedNRcellsENDCX2ManagementList ::= SEQUENCE (SIZE (1.. maxCellinengNB)) OF SE
}
En-gNBServedCells-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ServedCellSpecificInfoReq-NR CRITICALITY ignore EXTENSION ServedCellSpecificInfoReq-NR PRESENCE optional },
...
}
@@ -3919,7 +4050,8 @@ ServedNRCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-SSB-PositionsInBurst CRITICALITY ignore EXTENSION SSB-PositionsInBurst PRESENCE optional}|
{ ID id-NRCellPRACHConfig CRITICALITY ignore EXTENSION NRCellPRACHConfig PRESENCE optional}|
{ ID id-CSI-RSTransmissionIndication CRITICALITY ignore EXTENSION CSI-RSTransmissionIndication PRESENCE optional}|
- { ID id-SFN-Offset CRITICALITY ignore EXTENSION SFN-Offset PRESENCE optional},
+ { ID id-SFN-Offset CRITICALITY ignore EXTENSION SFN-Offset PRESENCE optional}|
+ { ID id-Additional-Measurement-Timing-Configuration-List CRITICALITY ignore EXTENSION Additional-Measurement-Timing-Configuration-List PRESENCE optional },
...
}
@@ -4690,7 +4822,8 @@ DataForwardingAddressIndication-IEs X2AP-PROTOCOL-IES ::= {
{ ID id-E-RABs-DataForwardingAddress-List CRITICALITY ignore TYPE E-RABs-DataForwardingAddress-List PRESENCE mandatory}|
{ ID id-CHO-DC-Indicator CRITICALITY reject TYPE CHO-DC-Indicator PRESENCE optional}|
{ ID id-CHO-DC-EarlyDataForwarding CRITICALITY ignore TYPE CHO-DC-EarlyDataForwarding PRESENCE optional}|
- { ID id-SgNB-UE-X2AP-ID CRITICALITY ignore TYPE SgNB-UE-X2AP-ID PRESENCE optional},
+ { ID id-SgNB-UE-X2AP-ID CRITICALITY ignore TYPE SgNB-UE-X2AP-ID PRESENCE optional}|
+ { ID id-CPCinformation-NOTIFY CRITICALITY reject TYPE CPCinformation-NOTIFY PRESENCE optional},
...
}
@@ -4797,12 +4930,12 @@ CellTrafficTrace ::= SEQUENCE {
}
CellTrafficTraceIEs X2AP-PROTOCOL-IES ::= {
- { ID id-MeNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory }|
- { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory }|
- { ID id-EUTRANTraceID CRITICALITY ignore TYPE EUTRANTraceID PRESENCE mandatory }|
- { ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }|
- { ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional }|
- { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional},
+ { ID id-MeNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory }|
+ { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory }|
+ { ID id-EUTRANTraceID CRITICALITY ignore TYPE EUTRANTraceID PRESENCE mandatory }|
+ { ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TraceCollectionEntityIPAddress PRESENCE mandatory }|
+ { ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional }|
+ { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional},
...
}
@@ -4859,4 +4992,26 @@ UERadioCapabilityIDMappingResponseIEs X2AP-PROTOCOL-IES ::= {
...
}
+
+-- **************************************************************
+--
+-- CONDITIONAL PSCELL CHANGE CANCEL
+--
+-- **************************************************************
+
+CPC-cancel ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{CPC-cancel-IEs}},
+ ...
+}
+
+CPC-cancel-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-MeNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory}|
+ { ID id-SgNB-UE-X2AP-ID CRITICALITY reject TYPE SgNB-UE-X2AP-ID PRESENCE mandatory}|
+ { ID id-MeNB-UE-X2AP-ID-Extension CRITICALITY reject TYPE UE-X2AP-ID-Extension PRESENCE optional}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional}|
+ { ID id-Target-SgNB-ID CRITICALITY reject TYPE GlobalGNB-ID PRESENCE mandatory},
+ ...
+}
+
+
END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn b/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn
index cadbe650ee..f4c197b3a1 100644
--- a/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 36.423 V16.7.0 (2021-10)
+-- 3GPP TS 36.423 V17.6.0 (2023-09)
-- 9.3.3 Elementary Procedure Definitions
-- **************************************************************
--
@@ -7,10 +7,10 @@
-- **************************************************************
X2AP-PDU-Descriptions {
-itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Descriptions (0) }
-DEFINITIONS AUTOMATIC TAGS ::=
+DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
@@ -45,7 +45,7 @@ FROM X2AP-CommonDataTypes
ResourceStatusFailure,
ResourceStatusRequest,
ResourceStatusResponse,
- ResourceStatusUpdate,
+ ResourceStatusUpdate,
RLFIndication,
SNStatusTransfer,
UEContextRelease,
@@ -130,7 +130,9 @@ FROM X2AP-CommonDataTypes
CellTrafficTrace,
F1CTrafficTransfer,
UERadioCapabilityIDMappingRequest,
- UERadioCapabilityIDMappingResponse
+ UERadioCapabilityIDMappingResponse,
+ AccessAndMobilityIndication,
+ CPC-cancel
@@ -140,16 +142,16 @@ FROM X2AP-PDU-Contents
id-cellActivation,
id-eNBConfigurationUpdate,
id-errorIndication,
- id-handoverCancel,
+ id-handoverCancel,
id-handoverReport,
id-handoverPreparation,
-
+
id-loadIndication,
id-privateMessage,
id-reset,
-
+
id-resourceStatusReporting,
- id-resourceStatusReportingInitiation,
+ id-resourceStatusReportingInitiation,
id-rLFIndication,
id-snStatusTransfer,
id-uEContextRelease,
@@ -195,7 +197,9 @@ FROM X2AP-PDU-Contents
id-endcresourceStatusReportingInitiation,
id-cellTrafficTrace,
id-f1CTrafficTransfer,
- id-UERadioCapabilityIDMapping
+ id-UERadioCapabilityIDMapping,
+ id-accessAndMobilityIndication,
+ id-CPC-cancel
@@ -327,7 +331,9 @@ X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= {
conditionalHandoverCancel |
endcresourceStatusReporting |
cellTrafficTrace |
- f1CTrafficTransfer ,
+ f1CTrafficTransfer |
+ accessAndMobilityIndication |
+ cPC-cancel ,
...
}
@@ -552,7 +558,7 @@ sgNBinitiatedSgNBModification X2AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE SgNBModificationRequired
SUCCESSFUL OUTCOME SgNBModificationConfirm
UNSUCCESSFUL OUTCOME SgNBModificationRefuse
- PROCEDURE CODE id-sgNBinitiatedSgNBModification
+ PROCEDURE CODE id-sgNBinitiatedSgNBModification
CRITICALITY reject
}
@@ -732,4 +738,18 @@ uERadioCapabilityIDMapping X2AP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY reject
}
+accessAndMobilityIndication X2AP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE AccessAndMobilityIndication
+ PROCEDURE CODE id-accessAndMobilityIndication
+ CRITICALITY ignore
+}
+
+
+cPC-cancel X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE CPC-cancel
+ PROCEDURE CODE id-CPC-cancel
+ CRITICALITY ignore
+}
+
+
END
diff --git a/epan/dissectors/asn1/x2ap/packet-x2ap-template.c b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c
index 0ca73e9c7d..4ec697e8f0 100644
--- a/epan/dissectors/asn1/x2ap/packet-x2ap-template.c
+++ b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c
@@ -3,7 +3,7 @@
* X2 Application Protocol (X2AP);
* 3GPP TS 36.423 packet dissection
* Copyright 2007-2014, Anders Broman <anders.broman@ericsson.com>
- * Copyright 2016-2021, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2016-2023, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -12,7 +12,7 @@
* SPDX-License-Identifier: GPL-2.0-or-later
*
* Ref:
- * 3GPP TS 36.423 V16.7.0 (2021-10)
+ * 3GPP TS 36.423 V17.6.0 (2023-09)
*/
#include "config.h"
@@ -53,129 +53,138 @@ void proto_register_x2ap(void);
#include "packet-x2ap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_x2ap = -1;
-static int hf_x2ap_transportLayerAddressIPv4 = -1;
-static int hf_x2ap_transportLayerAddressIPv6 = -1;
-static int hf_x2ap_ReportCharacteristics_PRBPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_TNLLoadIndPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_HWLoadIndPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_CompositeAvailableCapacityPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_ABSStatusPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_RSRPMeasurementReportPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_CSIReportPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_Reserved = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_PRBPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_TNLLoadIndPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_HWLoadIndPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_CompositeAvailableCapacityPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_ABSStatusPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_RSRPMeasurementReportPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_CSIReportPeriodic = -1;
-static int hf_x2ap_measurementFailedReportCharacteristics_Reserved = -1;
-static int hf_x2ap_eUTRANTraceID_TraceID = -1;
-static int hf_x2ap_eUTRANTraceID_TraceRecordingSessionReference = -1;
-static int hf_x2ap_interfacesToTrace_S1_MME = -1;
-static int hf_x2ap_interfacesToTrace_X2 = -1;
-static int hf_x2ap_interfacesToTrace_Uu = -1;
-static int hf_x2ap_interfacesToTrace_F1_C = -1;
-static int hf_x2ap_interfacesToTrace_E1 = -1;
-static int hf_x2ap_interfacesToTrace_Reserved = -1;
-static int hf_x2ap_traceCollectionEntityIPAddress_IPv4 = -1;
-static int hf_x2ap_traceCollectionEntityIPAddress_IPv6 = -1;
-static int hf_x2ap_encryptionAlgorithms_EEA1 = -1;
-static int hf_x2ap_encryptionAlgorithms_EEA2 = -1;
-static int hf_x2ap_encryptionAlgorithms_EEA3 = -1;
-static int hf_x2ap_encryptionAlgorithms_Reserved = -1;
-static int hf_x2ap_integrityProtectionAlgorithms_EIA1 = -1;
-static int hf_x2ap_integrityProtectionAlgorithms_EIA2 = -1;
-static int hf_x2ap_integrityProtectionAlgorithms_EIA3 = -1;
-static int hf_x2ap_integrityProtectionAlgorithms_Reserved = -1;
-static int hf_x2ap_measurementsToActivate_M1 = -1;
-static int hf_x2ap_measurementsToActivate_M2 = -1;
-static int hf_x2ap_measurementsToActivate_M3 = -1;
-static int hf_x2ap_measurementsToActivate_M4 = -1;
-static int hf_x2ap_measurementsToActivate_M5 = -1;
-static int hf_x2ap_measurementsToActivate_LoggingM1FromEventTriggered = -1;
-static int hf_x2ap_measurementsToActivate_M6 = -1;
-static int hf_x2ap_measurementsToActivate_M7 = -1;
-static int hf_x2ap_MDT_Location_Info_GNSS = -1;
-static int hf_x2ap_MDT_Location_Info_E_CID = -1;
-static int hf_x2ap_MDT_Location_Info_Reserved = -1;
-static int hf_x2ap_MDT_transmissionModes_tm1 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm2 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm3 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm4 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm6 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm8 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm9 = -1;
-static int hf_x2ap_MDT_transmissionModes_tm10 = -1;
-static int hf_x2ap_NRencryptionAlgorithms_NEA1 = -1;
-static int hf_x2ap_NRencryptionAlgorithms_NEA2 = -1;
-static int hf_x2ap_NRencryptionAlgorithms_NEA3 = -1;
-static int hf_x2ap_NRencryptionAlgorithms_Reserved = -1;
-static int hf_x2ap_NRintegrityProtectionAlgorithms_NIA1 = -1;
-static int hf_x2ap_NRintegrityProtectionAlgorithms_NIA2 = -1;
-static int hf_x2ap_NRintegrityProtectionAlgorithms_NIA3 = -1;
-static int hf_x2ap_NRintegrityProtectionAlgorithms_Reserved = -1;
-static int hf_x2ap_ReportCharacteristics_ENDC_PRBPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_ENDC_TNLCapacityIndPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_ENDC_CompositeAvailableCapacityPeriodic = -1;
-static int hf_x2ap_ReportCharacteristics_ENDC_NumberOfActiveUEs = -1;
-static int hf_x2ap_ReportCharacteristics_ENDC_Reserved = -1;
-static int hf_x2ap_Registration_Request_ENDC_PDU = -1;
-static int hf_x2ap_ReportingPeriodicity_ENDC_PDU = -1;
-static int hf_x2ap_ReportCharacteristics_ENDC_PDU = -1;
+static int proto_x2ap;
+static int hf_x2ap_transportLayerAddressIPv4;
+static int hf_x2ap_transportLayerAddressIPv6;
+static int hf_x2ap_ReportCharacteristics_PRBPeriodic;
+static int hf_x2ap_ReportCharacteristics_TNLLoadIndPeriodic;
+static int hf_x2ap_ReportCharacteristics_HWLoadIndPeriodic;
+static int hf_x2ap_ReportCharacteristics_CompositeAvailableCapacityPeriodic;
+static int hf_x2ap_ReportCharacteristics_ABSStatusPeriodic;
+static int hf_x2ap_ReportCharacteristics_RSRPMeasurementReportPeriodic;
+static int hf_x2ap_ReportCharacteristics_CSIReportPeriodic;
+static int hf_x2ap_ReportCharacteristics_Reserved;
+static int hf_x2ap_measurementFailedReportCharacteristics_PRBPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_TNLLoadIndPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_HWLoadIndPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_CompositeAvailableCapacityPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_ABSStatusPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_RSRPMeasurementReportPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_CSIReportPeriodic;
+static int hf_x2ap_measurementFailedReportCharacteristics_Reserved;
+static int hf_x2ap_eUTRANTraceID_TraceID;
+static int hf_x2ap_eUTRANTraceID_TraceRecordingSessionReference;
+static int hf_x2ap_interfacesToTrace_S1_MME;
+static int hf_x2ap_interfacesToTrace_X2;
+static int hf_x2ap_interfacesToTrace_Uu;
+static int hf_x2ap_interfacesToTrace_F1_C;
+static int hf_x2ap_interfacesToTrace_E1;
+static int hf_x2ap_interfacesToTrace_Reserved;
+static int hf_x2ap_traceCollectionEntityIPAddress_IPv4;
+static int hf_x2ap_traceCollectionEntityIPAddress_IPv6;
+static int hf_x2ap_encryptionAlgorithms_EEA1;
+static int hf_x2ap_encryptionAlgorithms_EEA2;
+static int hf_x2ap_encryptionAlgorithms_EEA3;
+static int hf_x2ap_encryptionAlgorithms_Reserved;
+static int hf_x2ap_integrityProtectionAlgorithms_EIA1;
+static int hf_x2ap_integrityProtectionAlgorithms_EIA2;
+static int hf_x2ap_integrityProtectionAlgorithms_EIA3;
+static int hf_x2ap_integrityProtectionAlgorithms_EIA7;
+static int hf_x2ap_integrityProtectionAlgorithms_Reserved;
+static int hf_x2ap_measurementsToActivate_M1;
+static int hf_x2ap_measurementsToActivate_M2;
+static int hf_x2ap_measurementsToActivate_M3;
+static int hf_x2ap_measurementsToActivate_M4;
+static int hf_x2ap_measurementsToActivate_M5;
+static int hf_x2ap_measurementsToActivate_LoggingM1FromEventTriggered;
+static int hf_x2ap_measurementsToActivate_M6;
+static int hf_x2ap_measurementsToActivate_M7;
+static int hf_x2ap_MDT_Location_Info_GNSS;
+static int hf_x2ap_MDT_Location_Info_E_CID;
+static int hf_x2ap_MDT_Location_Info_Reserved;
+static int hf_x2ap_MDT_transmissionModes_tm1;
+static int hf_x2ap_MDT_transmissionModes_tm2;
+static int hf_x2ap_MDT_transmissionModes_tm3;
+static int hf_x2ap_MDT_transmissionModes_tm4;
+static int hf_x2ap_MDT_transmissionModes_tm6;
+static int hf_x2ap_MDT_transmissionModes_tm8;
+static int hf_x2ap_MDT_transmissionModes_tm9;
+static int hf_x2ap_MDT_transmissionModes_tm10;
+static int hf_x2ap_NRencryptionAlgorithms_NEA1;
+static int hf_x2ap_NRencryptionAlgorithms_NEA2;
+static int hf_x2ap_NRencryptionAlgorithms_NEA3;
+static int hf_x2ap_NRencryptionAlgorithms_Reserved;
+static int hf_x2ap_NRintegrityProtectionAlgorithms_NIA1;
+static int hf_x2ap_NRintegrityProtectionAlgorithms_NIA2;
+static int hf_x2ap_NRintegrityProtectionAlgorithms_NIA3;
+static int hf_x2ap_NRintegrityProtectionAlgorithms_Reserved;
+static int hf_x2ap_ReportCharacteristics_ENDC_PRBPeriodic;
+static int hf_x2ap_ReportCharacteristics_ENDC_TNLCapacityIndPeriodic;
+static int hf_x2ap_ReportCharacteristics_ENDC_CompositeAvailableCapacityPeriodic;
+static int hf_x2ap_ReportCharacteristics_ENDC_NumberOfActiveUEs;
+static int hf_x2ap_ReportCharacteristics_ENDC_Reserved;
+static int hf_x2ap_Registration_Request_ENDC_PDU;
+static int hf_x2ap_ReportingPeriodicity_ENDC_PDU;
+static int hf_x2ap_ReportCharacteristics_ENDC_PDU;
+static int hf_x2ap_rAT_RestrictionInformation_LEO;
+static int hf_x2ap_rAT_RestrictionInformation_MEO;
+static int hf_x2ap_rAT_RestrictionInformation_GEO;
+static int hf_x2ap_rAT_RestrictionInformation_OTHERSAT;
+static int hf_x2ap_rAT_RestrictionInformation_Reserved;
#include "packet-x2ap-hf.c"
/* Initialize the subtree pointers */
-static int ett_x2ap = -1;
-static int ett_x2ap_TransportLayerAddress = -1;
-static int ett_x2ap_PLMN_Identity = -1;
-static int ett_x2ap_TargeteNBtoSource_eNBTransparentContainer = -1;
-static int ett_x2ap_RRC_Context = -1;
-static int ett_x2ap_UE_HistoryInformationFromTheUE = -1;
-static int ett_x2ap_ReportCharacteristics = -1;
-static int ett_x2ap_measurementFailedReportCharacteristics = -1;
-static int ett_x2ap_UE_RLF_Report_Container = -1;
-static int ett_x2ap_UE_RLF_Report_Container_for_extended_bands = -1;
-static int ett_x2ap_MeNBtoSeNBContainer = -1;
-static int ett_x2ap_SeNBtoMeNBContainer = -1;
-static int ett_x2ap_EUTRANTraceID = -1;
-static int ett_x2ap_InterfacesToTrace = -1;
-static int ett_x2ap_TraceCollectionEntityIPAddress = -1;
-static int ett_x2ap_EncryptionAlgorithms = -1;
-static int ett_x2ap_IntegrityProtectionAlgorithms = -1;
-static int ett_x2ap_MeasurementsToActivate = -1;
-static int ett_x2ap_MDT_Location_Info = -1;
-static int ett_x2ap_transmissionModes = -1;
-static int ett_x2ap_X2AP_Message = -1;
-static int ett_x2ap_MeNBtoSgNBContainer = -1;
-static int ett_x2ap_SgNBtoMeNBContainer = -1;
-static int ett_x2ap_RRCContainer = -1;
-static int ett_x2ap_NRencryptionAlgorithms = -1;
-static int ett_x2ap_NRintegrityProtectionAlgorithms = -1;
-static int ett_x2ap_measurementTimingConfiguration = -1;
-static int ett_x2ap_LastVisitedNGRANCellInformation = -1;
-static int ett_x2ap_LastVisitedUTRANCellInformation = -1;
-static int ett_x2ap_EndcSONConfigurationTransfer = -1;
-static int ett_x2ap_EPCHandoverRestrictionListContainer = -1;
-static int ett_x2ap_NBIoT_RLF_Report_Container = -1;
-static int ett_x2ap_anchorCarrier_NPRACHConfig = -1;
-static int ett_x2ap_anchorCarrier_EDT_NPRACHConfig = -1;
-static int ett_x2ap_anchorCarrier_Format2_NPRACHConfig = -1;
-static int ett_x2ap_anchorCarrier_Format2_EDT_NPRACHConfig = -1;
-static int ett_x2ap_non_anchorCarrier_NPRACHConfig = -1;
-static int ett_x2ap_non_anchorCarrier_Format2_NPRACHConfig = -1;
-static int ett_x2ap_anchorCarrier_NPRACHConfigTDD = -1;
-static int ett_x2ap_non_anchorCarrier_NPRACHConfigTDD = -1;
-static int ett_x2ap_Non_anchorCarrierFrequency = -1;
-static int ett_x2ap_ReportCharacteristics_ENDC = -1;
-static int ett_x2ap_TargetCellInNGRAN = -1;
-static int ett_x2ap_TDDULDLConfigurationCommonNR = -1;
-static int ett_x2ap_MDT_ConfigurationNR = -1;
-static int ett_x2ap_NRCellPRACHConfig = -1;
-static int ett_x2ap_IntendedTDD_DL_ULConfiguration_NR = -1;
-static int ett_x2ap_UERadioCapability = -1;
+static int ett_x2ap;
+static int ett_x2ap_TransportLayerAddress;
+static int ett_x2ap_PLMN_Identity;
+static int ett_x2ap_TargeteNBtoSource_eNBTransparentContainer;
+static int ett_x2ap_RRC_Context;
+static int ett_x2ap_UE_HistoryInformationFromTheUE;
+static int ett_x2ap_ReportCharacteristics;
+static int ett_x2ap_measurementFailedReportCharacteristics;
+static int ett_x2ap_UE_RLF_Report_Container;
+static int ett_x2ap_UE_RLF_Report_Container_for_extended_bands;
+static int ett_x2ap_MeNBtoSeNBContainer;
+static int ett_x2ap_SeNBtoMeNBContainer;
+static int ett_x2ap_EUTRANTraceID;
+static int ett_x2ap_InterfacesToTrace;
+static int ett_x2ap_TraceCollectionEntityIPAddress;
+static int ett_x2ap_EncryptionAlgorithms;
+static int ett_x2ap_IntegrityProtectionAlgorithms;
+static int ett_x2ap_MeasurementsToActivate;
+static int ett_x2ap_MDT_Location_Info;
+static int ett_x2ap_transmissionModes;
+static int ett_x2ap_X2AP_Message;
+static int ett_x2ap_MeNBtoSgNBContainer;
+static int ett_x2ap_SgNBtoMeNBContainer;
+static int ett_x2ap_RRCContainer;
+static int ett_x2ap_NRencryptionAlgorithms;
+static int ett_x2ap_NRintegrityProtectionAlgorithms;
+static int ett_x2ap_measurementTimingConfiguration;
+static int ett_x2ap_LastVisitedNGRANCellInformation;
+static int ett_x2ap_LastVisitedUTRANCellInformation;
+static int ett_x2ap_EndcSONConfigurationTransfer;
+static int ett_x2ap_EPCHandoverRestrictionListContainer;
+static int ett_x2ap_NBIoT_RLF_Report_Container;
+static int ett_x2ap_anchorCarrier_NPRACHConfig;
+static int ett_x2ap_anchorCarrier_EDT_NPRACHConfig;
+static int ett_x2ap_anchorCarrier_Format2_NPRACHConfig;
+static int ett_x2ap_anchorCarrier_Format2_EDT_NPRACHConfig;
+static int ett_x2ap_non_anchorCarrier_NPRACHConfig;
+static int ett_x2ap_non_anchorCarrier_Format2_NPRACHConfig;
+static int ett_x2ap_anchorCarrier_NPRACHConfigTDD;
+static int ett_x2ap_non_anchorCarrier_NPRACHConfigTDD;
+static int ett_x2ap_Non_anchorCarrierFrequency;
+static int ett_x2ap_ReportCharacteristics_ENDC;
+static int ett_x2ap_TargetCellInNGRAN;
+static int ett_x2ap_TDDULDLConfigurationCommonNR;
+static int ett_x2ap_MDT_ConfigurationNR;
+static int ett_x2ap_NRCellPRACHConfig;
+static int ett_x2ap_IntendedTDD_DL_ULConfiguration_NR;
+static int ett_x2ap_UERadioCapability;
+static int ett_x2ap_LastVisitedPSCell_Item;
+static int ett_x2ap_NRRACHReportContainer;
+static int ett_x2ap_rAT_RestrictionInformation;
#include "packet-x2ap-ett.c"
/* Forward declarations */
@@ -217,7 +226,6 @@ static const enum_val_t x2ap_rrc_context_vals[] = {
};
/* Global variables */
-static guint gbl_x2apSctpPort=SCTP_PORT_X2AP;
static gint g_x2ap_dissect_rrc_context_as = X2AP_RRC_CONTEXT_LTE;
/* Dissector tables */
@@ -242,11 +250,6 @@ static const true_false_string x2ap_tfs_failed_succeeded = {
"Succeeded"
};
-static const true_false_string x2ap_tfs_interfacesToTrace = {
- "Should be traced",
- "Should not be traced"
-};
-
static const true_false_string x2ap_tfs_activate_do_not_activate = {
"Activate",
"Do not activate"
@@ -255,31 +258,31 @@ static const true_false_string x2ap_tfs_activate_do_not_activate = {
static void
x2ap_Time_UE_StayedInCell_EnhancedGranularity_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
}
static void
x2ap_handoverTriggerChange_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%d)", ((float)v)/2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%d)", ((float)v)/2, (gint32)v);
}
static void
x2ap_Threshold_RSRP_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-140, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-140, v);
}
static void
x2ap_Threshold_RSRQ_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-20, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-20, v);
}
static void
x2ap_Packet_LossRate_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v);
}
static struct x2ap_private_data*
@@ -439,23 +442,23 @@ void proto_register_x2ap(void) {
NULL, HFILL }},
{ &hf_x2ap_interfacesToTrace_S1_MME,
{ "S1-MME", "x2ap.interfacesToTrace.S1_MME",
- FT_BOOLEAN, 8, TFS(&x2ap_tfs_interfacesToTrace), 0x80,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x80,
NULL, HFILL }},
{ &hf_x2ap_interfacesToTrace_X2,
{ "X2", "x2ap.interfacesToTrace.X2",
- FT_BOOLEAN, 8, TFS(&x2ap_tfs_interfacesToTrace), 0x40,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x40,
NULL, HFILL }},
{ &hf_x2ap_interfacesToTrace_Uu,
{ "Uu", "x2ap.interfacesToTrace.Uu",
- FT_BOOLEAN, 8, TFS(&x2ap_tfs_interfacesToTrace), 0x20,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x20,
NULL, HFILL }},
{ &hf_x2ap_interfacesToTrace_F1_C,
{ "F1-C", "x2ap.interfacesToTrace.F1_C",
- FT_BOOLEAN, 8, TFS(&x2ap_tfs_interfacesToTrace), 0x10,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x10,
NULL, HFILL }},
{ &hf_x2ap_interfacesToTrace_E1,
{ "E1", "x2ap.interfacesToTrace.E1",
- FT_BOOLEAN, 8, TFS(&x2ap_tfs_interfacesToTrace), 0x08,
+ FT_BOOLEAN, 8, TFS(&tfs_should_be_traced_should_not_be_traced), 0x08,
NULL, HFILL }},
{ &hf_x2ap_interfacesToTrace_Reserved,
{ "Reserved", "x2ap.interfacesToTrace.Reserved",
@@ -497,9 +500,13 @@ void proto_register_x2ap(void) {
{ "128-EIA3", "x2ap.integrityProtectionAlgorithms.EIA3",
FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x2000,
NULL, HFILL }},
+ { &hf_x2ap_integrityProtectionAlgorithms_EIA7,
+ { "EIA7", "x2ap.integrityProtectionAlgorithms.EIA7",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x0200,
+ NULL, HFILL }},
{ &hf_x2ap_integrityProtectionAlgorithms_Reserved,
{ "Reserved", "x2ap.integrityProtectionAlgorithms.Reserved",
- FT_UINT16, BASE_HEX, NULL, 0x1fff,
+ FT_UINT16, BASE_HEX, NULL, 0x1dff,
NULL, HFILL }},
{ &hf_x2ap_measurementsToActivate_M1,
{ "M1", "x2ap.measurementsToActivate.M1",
@@ -641,6 +648,26 @@ void proto_register_x2ap(void) {
{ "ReportCharacteristics-ENDC", "x2ap.ReportCharacteristics_ENDC",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_x2ap_rAT_RestrictionInformation_LEO,
+ { "LEO", "x2ap.rAT_RestrictionInformation.LEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x80,
+ NULL, HFILL }},
+ { &hf_x2ap_rAT_RestrictionInformation_MEO,
+ { "MEO", "x2ap.rAT_RestrictionInformation.MEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x40,
+ NULL, HFILL }},
+ { &hf_x2ap_rAT_RestrictionInformation_GEO,
+ { "GEO", "x2ap.rAT_RestrictionInformation.GEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x20,
+ NULL, HFILL }},
+ { &hf_x2ap_rAT_RestrictionInformation_OTHERSAT,
+ { "OTHERSAT", "x2ap.rAT_RestrictionInformation.OTHERSAT",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x10,
+ NULL, HFILL }},
+ { &hf_x2ap_rAT_RestrictionInformation_Reserved,
+ { "Reserved", "x2ap.rAT_RestrictionInformation.Reserved",
+ FT_UINT8, BASE_HEX, NULL, 0x0f,
+ NULL, HFILL }},
#include "packet-x2ap-hfarr.c"
};
@@ -694,6 +721,9 @@ void proto_register_x2ap(void) {
&ett_x2ap_NRCellPRACHConfig,
&ett_x2ap_IntendedTDD_DL_ULConfiguration_NR,
&ett_x2ap_UERadioCapability,
+ &ett_x2ap_LastVisitedPSCell_Item,
+ &ett_x2ap_NRRACHReportContainer,
+ &ett_x2ap_rAT_RestrictionInformation,
#include "packet-x2ap-ettarr.c"
};
@@ -715,14 +745,9 @@ void proto_register_x2ap(void) {
x2ap_proc_sout_dissector_table = register_dissector_table("x2ap.proc.sout", "X2AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_x2ap, FT_UINT32, BASE_DEC);
x2ap_proc_uout_dissector_table = register_dissector_table("x2ap.proc.uout", "X2AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_x2ap, FT_UINT32, BASE_DEC);
- /* Register configuration1 options for ports */
- x2ap_module = prefs_register_protocol(proto_x2ap, proto_reg_handoff_x2ap);
+ /* Register configuration options */
+ x2ap_module = prefs_register_protocol(proto_x2ap, NULL);
- prefs_register_uint_preference(x2ap_module, "sctp.port",
- "X2AP SCTP Port",
- "Set the SCTP port for X2AP messages",
- 10,
- &gbl_x2apSctpPort);
prefs_register_enum_preference(x2ap_module, "dissect_rrc_context_as", "Dissect RRC Context as",
"Select whether RRC Context should be dissected as legacy LTE or NB-IOT",
&g_x2ap_dissect_rrc_context_as, x2ap_rrc_context_vals, FALSE);
@@ -733,24 +758,9 @@ void proto_register_x2ap(void) {
void
proto_reg_handoff_x2ap(void)
{
- static gboolean Initialized=FALSE;
- static guint SctpPort;
-
- if (!Initialized) {
- dissector_add_for_decode_as("sctp.port", x2ap_handle);
- dissector_add_uint("sctp.ppi", X2AP_PAYLOAD_PROTOCOL_ID, x2ap_handle);
- Initialized=TRUE;
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_X2AP, x2ap_handle);
+ dissector_add_uint("sctp.ppi", X2AP_PAYLOAD_PROTOCOL_ID, x2ap_handle);
#include "packet-x2ap-dis-tab.c"
- } else {
- if (SctpPort != 0) {
- dissector_delete_uint("sctp.port", SctpPort, x2ap_handle);
- }
- }
-
- SctpPort=gbl_x2apSctpPort;
- if (SctpPort != 0) {
- dissector_add_uint("sctp.port", SctpPort, x2ap_handle);
- }
}
diff --git a/epan/dissectors/asn1/x2ap/x2ap.cnf b/epan/dissectors/asn1/x2ap/x2ap.cnf
index e7b6607f1d..85488b5cb8 100644
--- a/epan/dissectors/asn1/x2ap/x2ap.cnf
+++ b/epan/dissectors/asn1/x2ap/x2ap.cnf
@@ -9,6 +9,12 @@ ALIGNED
#.OMIT_ASSIGNMENT
# Get rid of unused code warnings
+Presence
+ProtocolIE-FieldPair
+ProtocolIE-ContainerList
+ProtocolIE-ContainerPair
+ProtocolIE-ContainerPairList
+SourceDLForwardingIPAddress
#.END
#.PDU
@@ -55,14 +61,6 @@ ProtocolIE-Field/value protocolIE_Field_value
SuccessfulOutcome/value successfulOutcome_value
PrivateIE-Field/value privateIE_Field_value
-#.OMIT_ASSIGNMENT
-Presence
-ProtocolIE-FieldPair
-ProtocolIE-ContainerList
-ProtocolIE-ContainerPair
-ProtocolIE-ContainerPairList
-#.END
-
#.FN_BODY ProtocolIE-ID VAL_PTR = &x2ap_data->protocol_ie_id
struct x2ap_private_data *x2ap_data = x2ap_get_private_data(actx->pinfo);
%(DEFAULT_BODY)s
@@ -86,6 +84,17 @@ ProtocolIE-ContainerPairList
#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
+#.FN_BODY PrivateIE-ID/global FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference
+%(DEFAULT_BODY)s
+ actx->external.direct_ref_present = (actx->external.direct_reference != NULL) ? TRUE : FALSE;
+
+#.FN_BODY PrivateIE-Field/value
+ if (actx->external.direct_ref_present){
+ offset=call_per_oid_callback(actx->external.direct_reference, tvb, actx->pinfo, tree, offset, actx, hf_index);
+ }else{
+ %(DEFAULT_BODY)s
+ }
+
#.FN_BODY TargeteNBtoSource-eNBTransparentContainer VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
proto_tree *subtree;
@@ -165,6 +174,22 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_UE_HistoryInformationFromTheUE);
dissect_lte_rrc_VisitedCellInfoList_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+#.FN_BODY RAT-RestrictionsItem/rAT-RestrictionInformation VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_x2ap_rAT_RestrictionInformation_LEO,
+ &hf_x2ap_rAT_RestrictionInformation_MEO,
+ &hf_x2ap_rAT_RestrictionInformation_GEO,
+ &hf_x2ap_rAT_RestrictionInformation_OTHERSAT,
+ &hf_x2ap_rAT_RestrictionInformation_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_rAT_RestrictionInformation);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
+ }
+
#.FN_BODY ReportCharacteristics VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -348,6 +373,15 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
}
+#.FN_BODY LastVisitedPSCell-Item VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_LastVisitedPSCell_Item);
+ dissect_s1ap_PSCellInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY TraceCollectionEntityIPAddress VAL_PTR = &parameter_tvb LEN_PTR = &len
tvbuff_t *parameter_tvb = NULL;
proto_tree *subtree;
@@ -480,6 +514,7 @@ MME-Group-ID TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
&hf_x2ap_integrityProtectionAlgorithms_EIA1,
&hf_x2ap_integrityProtectionAlgorithms_EIA2,
&hf_x2ap_integrityProtectionAlgorithms_EIA3,
+ &hf_x2ap_integrityProtectionAlgorithms_EIA7,
&hf_x2ap_integrityProtectionAlgorithms_Reserved,
NULL
};
@@ -570,7 +605,7 @@ RSRPMeasurementResult/_item/rSRPMeasured DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(x2a
}
#.TYPE_ATTR
-LHN-ID TYPE=FT_STRING DISPLAY = STR_UNICODE
+LHN-ID TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY LHN-ID VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -670,7 +705,7 @@ Packet-LossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(x2ap_Packet_LossRate_fmt
proto_item_append_text(actx->created_item, " REs");
#.TYPE_ATTR
-BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
+BluetoothName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY BluetoothName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -678,7 +713,7 @@ BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
#.END
#.TYPE_ATTR
-WLANName TYPE=FT_STRING DISPLAY = STR_UNICODE
+WLANName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY WLANName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -878,6 +913,15 @@ ScheduledCommunicationTime/timeofDayEnd DISPLAY=BASE_DEC|BASE_UNIT_STRING STRING
dissect_f1ap_NRPRACHConfig_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY NRRACHReportContainer VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_NRRACHReportContainer);
+ dissect_nr_rrc_RA_ReportList_r16_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY IntendedTDD-DL-ULConfiguration-NR VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
proto_tree *subtree;
@@ -1107,6 +1151,10 @@ ScheduledCommunicationTime/timeofDayEnd DISPLAY=BASE_DEC|BASE_UNIT_STRING STRING
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingRequest");
#.FN_HDR UERadioCapabilityIDMappingResponse
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityIDMappingResponse");
+#.FN_HDR AccessAndMobilityIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AccessAndMobilityIndication");
+#.FN_HDR CPC-cancel
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CPC-cancel");
#.ASSIGN_VALUE_TO_TYPE # X2AP does not have constants assigned to types, they are pure INTEGER
# ProcedureCode
@@ -1168,6 +1216,10 @@ id-endcresourceStatusReporting ProcedureCode
id-endcresourceStatusReportingInitiation ProcedureCode
id-f1CTrafficTransfer ProcedureCode
id-UERadioCapabilityIDMapping ProcedureCode
+id-accessAndMobilityIndication ProcedureCode
+id-procedure-code-58-not-to-be-used ProcedureCode
+id-CPC-cancel ProcedureCode
+
# ProtocolIE-ID
@@ -1569,6 +1621,39 @@ id-TraceCollectionEntityURI ProtocolIE-ID
id-SFN-Offset ProtocolIE-ID
id-CHO-DC-EarlyDataForwarding ProtocolIE-ID
id-IMSvoiceEPSfallbackfrom5G ProtocolIE-ID
+id-AdditionLocationInformation ProtocolIE-ID
+id-DirectForwardingPathAvailability ProtocolIE-ID
+id-sourceNG-RAN-node-id ProtocolIE-ID
+id-SourceDLForwardingIPAddress ProtocolIE-ID
+id-SourceNodeDLForwardingIPAddress ProtocolIE-ID
+id-NRRACHReportInformation ProtocolIE-ID
+id-SCG-UE-HistoryInformation ProtocolIE-ID
+id-PSCellHistoryInformationRetrieve ProtocolIE-ID
+id-MeasurementResultforNRCellsPossiblyAggregated ProtocolIE-ID
+id-PSCell-UE-HistoryInformation ProtocolIE-ID
+id-PSCellChangeHistory ProtocolIE-ID
+id-CHOinformation-AddReq ProtocolIE-ID
+id-CHOinformation-ModReq ProtocolIE-ID
+id-SCGActivationStatus ProtocolIE-ID
+id-SCGActivationRequest ProtocolIE-ID
+id-CPAinformation-REQ ProtocolIE-ID
+id-CPAinformation-REQ-ACK ProtocolIE-ID
+id-CPAinformation-MOD ProtocolIE-ID
+id-CPAinformation-MOD-ACK ProtocolIE-ID
+id-CPACinformation-REQD ProtocolIE-ID
+id-CPCinformation-REQD ProtocolIE-ID
+id-CPCinformation-CONF ProtocolIE-ID
+id-CPCinformation-NOTIFY ProtocolIE-ID
+id-CPCupdate-MOD ProtocolIE-ID
+id-Additional-Measurement-Timing-Configuration-List ProtocolIE-ID
+id-ServedCellSpecificInfoReq-NR ProtocolIE-ID
+id-SecurityIndication ProtocolIE-ID
+id-SecurityResult ProtocolIE-ID
+id-RAT-Restrictions ProtocolIE-ID
+id-SCGreconfigNotification ProtocolIE-ID
+id-MIMOPRBusageInformation ProtocolIE-ID
+id-SensorMeasurementConfiguration ProtocolIE-ID
+id-AdditionalListofForwardingGTPTunnelEndpoint ProtocolIE-ID
#.REGISTER
@@ -1736,7 +1821,7 @@ E-RABs-ToBeReleased-SgNBRelConfList N x2ap.ies id-E-RABs-ToBeReleased-SgNBRel
E-RABs-ToBeReleased-SgNBRelConf-Item N x2ap.ies id-E-RABs-ToBeReleased-SgNBRelConf-Item
E-RABs-SubjectToSgNBCounterCheck-List N x2ap.ies id-E-RABs-SubjectToSgNBCounterCheck-List
E-RABs-SubjectToSgNBCounterCheck-Item N x2ap.ies id-E-RABs-SubjectToSgNBCounterCheck-Item
-GlobalGNB-ID N x2ap.ies id-Target-SgNB-ID
+GlobalGNB-ID N x2ap.ies id-Target-SgNB-ID
HandoverRestrictionList N x2ap.ies id-HandoverRestrictionList
SCGConfigurationQuery N x2ap.ies id-SCGConfigurationQuery
SplitSRB N x2ap.ies id-SplitSRB
@@ -1851,6 +1936,26 @@ CellMeasurementResult-E-UTRA-ENDC-Item N x2ap.ies id-CellMeasurementResult-E-
CellToReport-E-UTRA-ENDC-List N x2ap.ies id-CellToReport-E-UTRA-ENDC
CellToReport-E-UTRA-ENDC-Item N x2ap.ies id-CellToReport-E-UTRA-ENDC-Item
CHO-DC-EarlyDataForwarding N x2ap.ies id-CHO-DC-EarlyDataForwarding
+DirectForwardingPathAvailability N x2ap.ies id-DirectForwardingPathAvailability
+Global-RAN-NODE-ID N x2ap.ies id-sourceNG-RAN-node-id
+NRRACHReportInformation N x2ap.ies id-NRRACHReportInformation
+SCG-UE-HistoryInformation N x2ap.ies id-SCG-UE-HistoryInformation
+PSCellHistoryInformationRetrieve N x2ap.ies id-PSCellHistoryInformationRetrieve
+PSCellChangeHistory N x2ap.ies id-PSCellChangeHistory
+CHOinformation-AddReq N x2ap.ies id-CHOinformation-AddReq
+CHOinformation-ModReq N x2ap.ies id-CHOinformation-ModReq
+SCGActivationStatus N x2ap.ies id-SCGActivationStatus
+SCGActivationRequest N x2ap.ies id-SCGActivationRequest
+CPAinformation-REQ N x2ap.ies id-CPAinformation-REQ
+CPAinformation-REQ-ACK N x2ap.ies id-CPAinformation-REQ-ACK
+CPAinformation-MOD N x2ap.ies id-CPAinformation-MOD
+CPAinformation-MOD-ACK N x2ap.ies id-CPAinformation-MOD-ACK
+CPACinformation-REQD N x2ap.ies id-CPACinformation-REQD
+CPCinformation-REQD N x2ap.ies id-CPCinformation-REQD
+CPCinformation-CONF N x2ap.ies id-CPCinformation-CONF
+CPCinformation-NOTIFY N x2ap.ies id-CPCinformation-NOTIFY
+CPCupdate-MOD N x2ap.ies id-CPCupdate-MOD
+SCGreconfigNotification N x2ap.ies id-SCGreconfigNotification
#X2AP-PROTOCOL-EXTENSION
Number-of-Antennaports N x2ap.extension id-Number-of-Antennaports
@@ -1973,6 +2078,19 @@ IntendedTDD-DL-ULConfiguration-NR N x2ap.extension id-IntendedTDD-DL-ULConfig
URI-Address N x2ap.extension id-TraceCollectionEntityURI
SFN-Offset N x2ap.extension id-SFN-Offset
IMSvoiceEPSfallbackfrom5G N x2ap.extension id-IMSvoiceEPSfallbackfrom5G
+AdditionLocationInformation N x2ap.extension id-AdditionLocationInformation
+TransportLayerAddress N x2ap.extension id-SourceDLForwardingIPAddress
+TransportLayerAddress N x2ap.extension id-SourceNodeDLForwardingIPAddress
+MeasurementResultforNRCellsPossiblyAggregated N x2ap.extension id-MeasurementResultforNRCellsPossiblyAggregated
+PSCell-UE-HistoryInformation N x2ap.extension id-PSCell-UE-HistoryInformation
+Additional-Measurement-Timing-Configuration-List N x2ap.extension id-Additional-Measurement-Timing-Configuration-List
+ServedCellSpecificInfoReq-NR N x2ap.extension id-ServedCellSpecificInfoReq-NR
+SecurityIndication N x2ap.extension id-SecurityIndication
+SecurityResult N x2ap.extension id-SecurityResult
+RAT-Restrictions N x2ap.extension id-RAT-Restrictions
+MIMOPRBusageInformation N x2ap.extension id-MIMOPRBusageInformation
+SensorMeasurementConfiguration N x2ap.extension id-SensorMeasurementConfiguration
+AdditionalListofForwardingGTPTunnelEndpoint N x2ap.extension id-AdditionalListofForwardingGTPTunnelEndpoint
# X2AP-PDU-Descriptions.asn Interface Elementary Procedures
#X2AP-ELEMENTARY-PROCEDURE
@@ -2137,4 +2255,8 @@ F1CTrafficTransfer N x2ap.proc.imsg id-f1CTrafficTransfer
UERadioCapabilityIDMappingRequest N x2ap.proc.imsg id-UERadioCapabilityIDMapping
UERadioCapabilityIDMappingResponse N x2ap.proc.sout id-UERadioCapabilityIDMapping
+
+AccessAndMobilityIndication N x2ap.proc.imsg id-accessAndMobilityIndication
+
+CPC-cancel N x2ap.proc.imsg id-CPC-cancel
#.END
diff --git a/epan/dissectors/asn1/x509af/packet-x509af-template.c b/epan/dissectors/asn1/x509af/packet-x509af-template.c
index fe6cdefc00..d1c60dd22d 100644
--- a/epan/dissectors/asn1/x509af/packet-x509af-template.c
+++ b/epan/dissectors/asn1/x509af/packet-x509af-template.c
@@ -14,6 +14,7 @@
#include <epan/packet.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/strutil.h>
#include "packet-ber.h"
#include "packet-x509af.h"
@@ -33,14 +34,16 @@
void proto_register_x509af(void);
void proto_reg_handoff_x509af(void);
+static dissector_handle_t pkix_crl_handle;
+
/* Initialize the protocol and registered fields */
-static int proto_x509af = -1;
-static int hf_x509af_algorithm_id = -1;
-static int hf_x509af_extension_id = -1;
+static int proto_x509af;
+static int hf_x509af_algorithm_id;
+static int hf_x509af_extension_id;
#include "packet-x509af-hf.c"
/* Initialize the subtree pointers */
-static gint ett_pkix_crl = -1;
+static gint ett_pkix_crl;
#include "packet-x509af-ett.c"
static const char *algorithm_id = NULL;
static void
@@ -122,6 +125,8 @@ void proto_register_x509af(void) {
register_cleanup_routine(&x509af_cleanup_protocol);
+ pkix_crl_handle = register_dissector(PFNAME, dissect_pkix_crl, proto_x509af);
+
register_ber_syntax_dissector("Certificate", proto_x509af, dissect_x509af_Certificate_PDU);
register_ber_syntax_dissector("CertificateList", proto_x509af, dissect_CertificateList_PDU);
register_ber_syntax_dissector("CrossCertificatePair", proto_x509af, dissect_CertificatePair_PDU);
@@ -134,9 +139,7 @@ void proto_register_x509af(void) {
/*--- proto_reg_handoff_x509af -------------------------------------------*/
void proto_reg_handoff_x509af(void) {
- dissector_handle_t pkix_crl_handle;
- pkix_crl_handle = create_dissector_handle(dissect_pkix_crl, proto_x509af);
dissector_add_string("media_type", "application/pkix-crl", pkix_crl_handle);
#include "packet-x509af-dis-tab.c"
@@ -187,4 +190,5 @@ void proto_reg_handoff_x509af(void) {
dissector_add_string("rfc7468.preeb_label", "CERTIFICATE", create_dissector_handle(dissect_x509af_Certificate_PDU, proto_x509af));
dissector_add_string("rfc7468.preeb_label", "X509 CRL", create_dissector_handle(dissect_CertificateList_PDU, proto_x509af));
dissector_add_string("rfc7468.preeb_label", "ATTRIBUTE CERTIFICATE", create_dissector_handle(dissect_AttributeCertificate_PDU, proto_x509af));
+ dissector_add_string("rfc7468.preeb_label", "PUBLIC KEY", create_dissector_handle(dissect_SubjectPublicKeyInfo_PDU, proto_x509af));
}
diff --git a/epan/dissectors/asn1/x509af/x509af.cnf b/epan/dissectors/asn1/x509af/x509af.cnf
index ed1cf7fddc..57ae221b8f 100644
--- a/epan/dissectors/asn1/x509af/x509af.cnf
+++ b/epan/dissectors/asn1/x509af/x509af.cnf
@@ -5,6 +5,9 @@
#.IMPORT ../x509if/x509if-exp.cnf
#.IMPORT ../x509sat/x509sat-exp.cnf
+#.MODULE_EXPORTS EXTERN WS_DLL
+Certificate
+
#.MODULE_EXPORTS
EXTENSION
ACPathData
@@ -14,7 +17,6 @@ AttributeCertificate
AttributeCertificateAssertion
AttributeCertificateInfo
AttributeCertificationPath
-Certificate
Certificate_PDU
Certificates
CertificateList
@@ -32,6 +34,7 @@ Validity
Version
#.PDU
+SubjectPublicKeyInfo
#.REGISTER
Certificate B "2.5.4.36" "id-at-userCertificate"
@@ -100,7 +103,7 @@ CertificateList/signedCertificateList/revokedCertificates/_item/userCertificate
# proto_tree *subtree;
dissect_ber_bitstring(FALSE, actx, NULL, tvb, offset,
- NULL, 0, -1, -1, &bs_tvb);
+ NULL, 0, hf_index, -1, &bs_tvb);
/* See RFC 3279 for possible subjectPublicKey values given an Algorithm ID.
* The contents of subjectPublicKey are always explicitly tagged. */
@@ -137,7 +140,7 @@ CertificateList/signedCertificateList/revokedCertificates/_item/userCertificate
#.FN_BODY Extension/extnValue
gint8 ber_class;
- gboolean pc, ind;
+ bool pc, ind;
gint32 tag;
guint32 len;
/* skip past the T and L */
@@ -151,7 +154,7 @@ CertificateList/signedCertificateList/revokedCertificates/_item/userCertificate
/* the 2-digit year can only be in the range 1950..2049 https://tools.ietf.org/html/rfc5280#section-4.1.2.5.1 */
offset = dissect_ber_UTCTime(implicit_tag, actx, tree, tvb, offset, hf_index, &outstr, &tvblen);
- if (hf_index >= 0 && outstr) {
+ if (hf_index > 0 && outstr) {
newstr = wmem_strconcat(actx->pinfo->pool, outstr[0] < '5' ? "20": "19", outstr, NULL);
proto_tree_add_string(tree, hf_index, tvb, offset - tvblen, tvblen, newstr);
}
diff --git a/epan/dissectors/asn1/x509ce/CMakeLists.txt b/epan/dissectors/asn1/x509ce/CMakeLists.txt
index 2ca9708112..0074986323 100644
--- a/epan/dissectors/asn1/x509ce/CMakeLists.txt
+++ b/epan/dissectors/asn1/x509ce/CMakeLists.txt
@@ -20,6 +20,7 @@ set( EXT_ASN_FILE_LIST
set( ASN_FILE_LIST
CertificateExtensions.asn
+ CertificateExtensionsRFC9310.asn
CertificateExtensionsCiplus.asn
)
diff --git a/epan/dissectors/asn1/x509ce/CertificateExtensions.asn b/epan/dissectors/asn1/x509ce/CertificateExtensions.asn
index 78fd06f7b4..3fad9fb8d8 100644
--- a/epan/dissectors/asn1/x509ce/CertificateExtensions.asn
+++ b/epan/dissectors/asn1/x509ce/CertificateExtensions.asn
@@ -3,7 +3,7 @@ CertificateExtensions {joint-iso-itu-t ds(5) module(1)
certificateExtensions(26) 5} DEFINITIONS IMPLICIT TAGS ::=
BEGIN
--- EXPORTS ALL
+-- EXPORTS ALL
IMPORTS
id-at, id-ce, id-mr, informationFramework, authenticationFramework,
selectedAttributeTypes, upperBounds
@@ -24,7 +24,7 @@ IMPORTS
-- Unless explicitly noted otherwise, there is no significance to the ordering
-- of components of a SEQUENCE OF construct in this Specification.
--- public-key certificate and CRL extensions
+-- public-key certificate and CRL extensions
authorityKeyIdentifier EXTENSION ::= {
SYNTAX AuthorityKeyIdentifier
IDENTIFIED BY id-ce-authorityKeyIdentifier
@@ -471,7 +471,7 @@ inhibitAnyPolicy EXTENSION ::= {
IDENTIFIED BY id-ce-inhibitAnyPolicy
}
--- PKI matching rules
+-- PKI matching rules
certificateExactMatch MATCHING-RULE ::= {
SYNTAX CertificateExactAssertion
ID id-mr-certificateExactMatch
@@ -617,7 +617,7 @@ AltName ::= SEQUENCE {
altNameValue GeneralName OPTIONAL
}
--- Object identifier assignments
+-- Object identifier assignments
id-ce-subjectDirectoryAttributes OBJECT IDENTIFIER ::=
{id-ce 9}
@@ -687,7 +687,7 @@ id-ce-expiredCertsOnCRL OBJECT IDENTIFIER ::= {id-ce 60}
id-ce-aAissuingDistributionPoint OBJECT IDENTIFIER ::= {id-ce 63}
--- matching rule OIDs
+-- matching rule OIDs
id-mr-certificateExactMatch OBJECT IDENTIFIER ::=
{id-mr 34}
@@ -709,9 +709,10 @@ id-mr-pkiPathMatch OBJECT IDENTIFIER ::= {id-mr 62}
id-mr-enhancedCertificateMatch OBJECT IDENTIFIER ::= {id-mr 65}
+
-- The following OBJECT IDENTIFIERS are not used by this Specification:
-- {id-ce 2}, {id-ce 3}, {id-ce 4}, {id-ce 5}, {id-ce 6}, {id-ce 7},
--- {id-ce 8}, {id-ce 10}, {id-ce 11}, {id-ce 12}, {id-ce 13},
+-- {id-ce 8}, {id-ce 10}, {id-ce 11}, {id-ce 12}, {id-ce 13},
-- {id-ce 22}, {id-ce 25}, {id-ce 26}
-- Microsoft Certificate Extension
@@ -722,6 +723,18 @@ CertificateTemplate ::= SEQUENCE {
templateMinorVersion INTEGER OPTIONAL
}
+-- Microsoft NTDS CA Security Extension
+NtdsCaSecurity ::= SEQUENCE {
+ ntdsObjectSid NtdsObjectSid
+}
+
+NtdsObjectSid ::= [0] SEQUENCE {
+ type-id OBJECT IDENTIFIER,
+ sid [0] PrintableString
+}
+
+
+
-- Entrust Certificate Extension
EntrustVersionInfo ::= SEQUENCE {
@@ -730,7 +743,7 @@ EntrustVersionInfo ::= SEQUENCE {
}
EntrustInfoFlags ::= BIT STRING {
- keyUpdateAllowed(0),
+ keyUpdateAllowed(0),
newExtensions(1),
pKIXCertificate(2),
enterpriseCategory(3),
diff --git a/epan/dissectors/asn1/x509ce/CertificateExtensionsCiplus.asn b/epan/dissectors/asn1/x509ce/CertificateExtensionsCiplus.asn
index 00c024b5d6..9f824c8e82 100644
--- a/epan/dissectors/asn1/x509ce/CertificateExtensionsCiplus.asn
+++ b/epan/dissectors/asn1/x509ce/CertificateExtensionsCiplus.asn
@@ -38,9 +38,19 @@ cicamBrandId EXTENSION ::= {
CicamBrandId ::= INTEGER(1..65535)
+
+securityLevel EXTENSION ::= {
+ SYNTAX SecurityLevel
+ IDENTIFIED BY id-pe-securityLevel
+}
+
+SecurityLevel ::= INTEGER (0..MAX)
+
+
-- Object identifier assignments
id-pe-scramblerCapabilities OBJECT IDENTIFIER ::= { id-pkix id-pe(1) 25 }
id-pe-ciplusInfo OBJECT IDENTIFIER ::= { id-pkix id-pe(1) 26 }
id-pe-cicamBrandId OBJECT IDENTIFIER ::= { id-pkix id-pe(1) 27 }
+id-pe-securityLevel OBJECT IDENTIFIER ::= { id-pkix id-pe(1) 50 }
END
diff --git a/epan/dissectors/asn1/x509ce/CertificateExtensionsRFC9310.asn b/epan/dissectors/asn1/x509ce/CertificateExtensionsRFC9310.asn
new file mode 100644
index 0000000000..9d432be8cc
--- /dev/null
+++ b/epan/dissectors/asn1/x509ce/CertificateExtensionsRFC9310.asn
@@ -0,0 +1,28 @@
+ -- ASN.1 file from the RFC9310 definition
+ NFTypeCertExtn
+ { iso(1) identified-organization(3) dod(6) internet(1)
+ security(5) mechanisms(5) pkix(7) id-mod(0)
+ id-mod-nftype(106) }
+
+ DEFINITIONS IMPLICIT TAGS ::=
+ BEGIN
+
+ -- NFTypes Certificate Extension
+
+ ext-NFType EXTENSION ::= {
+ SYNTAX NFTypes
+ IDENTIFIED BY id-pe-nftype }
+
+ -- NFTypes Certificate Extension OID
+
+ id-pe-nftype OBJECT IDENTIFIER ::=
+ { iso(1) identified-organization(3) dod(6) internet(1)
+ security(5) mechanisms(5) pkix(7) id-pe(1) 34 }
+
+ -- NFTypes Certificate Extension Syntax
+
+ NFTypes ::= SEQUENCE SIZE (1..MAX) OF NFType
+
+ NFType ::= IA5String (SIZE (1..32))
+
+ END
diff --git a/epan/dissectors/asn1/x509ce/packet-x509ce-template.c b/epan/dissectors/asn1/x509ce/packet-x509ce-template.c
index af8f35ee56..c525eeca62 100644
--- a/epan/dissectors/asn1/x509ce/packet-x509ce-template.c
+++ b/epan/dissectors/asn1/x509ce/packet-x509ce-template.c
@@ -30,18 +30,33 @@ void proto_register_x509ce(void);
void proto_reg_handoff_x509ce(void);
/* Initialize the protocol and registered fields */
-static int proto_x509ce = -1;
-static int hf_x509ce_id_ce_invalidityDate = -1;
-static int hf_x509ce_id_ce_baseUpdateTime = -1;
-static int hf_x509ce_object_identifier_id = -1;
-static int hf_x509ce_IPAddress_ipv4 = -1;
-static int hf_x509ce_IPAddress_ipv6 = -1;
+static int proto_x509ce;
+static int hf_x509ce_id_ce_invalidityDate;
+static int hf_x509ce_id_ce_baseUpdateTime;
+static int hf_x509ce_object_identifier_id;
+static int hf_x509ce_IPAddress_ipv4;
+static int hf_x509ce_IPAddress_ipv4_mask;
+static int hf_x509ce_IPAddress_ipv6;
+static int hf_x509ce_IPAddress_ipv6_mask;
+static int hf_x509ce_IPAddress_unknown;
#include "packet-x509ce-hf.c"
/* Initialize the subtree pointers */
#include "packet-x509ce-ett.c"
#include "packet-x509ce-fn.c"
+static const val64_string ciplus_scr_cap[] = {
+ { 0, "DES" },
+ { 1, "DES and AES" },
+ { 0, NULL }
+};
+
+static const val64_string ciplus_security_level[] = {
+ { 0, "Standard Security Level" },
+ { 1, "ECP Security Level" },
+ { 0, NULL }
+};
+
/* CI+ (www.ci-plus.com) defines some X.509 certificate extensions
that use OIDs which are not officially assigned
dissection of these extensions can be enabled temporarily using the
@@ -49,7 +64,7 @@ static int hf_x509ce_IPAddress_ipv6 = -1;
void
x509ce_enable_ciplus(void)
{
- dissector_handle_t dh25, dh26, dh27;
+ dissector_handle_t dh25, dh26, dh27, dh50;
dh25 = create_dissector_handle(dissect_ScramblerCapabilities_PDU, proto_x509ce);
dissector_change_string("ber.oid", "1.3.6.1.5.5.7.1.25", dh25);
@@ -57,6 +72,8 @@ x509ce_enable_ciplus(void)
dissector_change_string("ber.oid", "1.3.6.1.5.5.7.1.26", dh26);
dh27 = create_dissector_handle(dissect_CicamBrandId_PDU, proto_x509ce);
dissector_change_string("ber.oid", "1.3.6.1.5.5.7.1.27", dh27);
+ dh50 = create_dissector_handle(dissect_SecurityLevel_PDU, proto_x509ce);
+ dissector_change_string("ber.oid", "1.3.6.1.5.5.7.1.50", dh50);
}
void
@@ -65,6 +82,7 @@ x509ce_disable_ciplus(void)
dissector_reset_string("ber.oid", "1.3.6.1.5.5.7.1.25");
dissector_reset_string("ber.oid", "1.3.6.1.5.5.7.1.26");
dissector_reset_string("ber.oid", "1.3.6.1.5.5.7.1.27");
+ dissector_reset_string("ber.oid", "1.3.6.1.5.5.7.1.50");
}
@@ -92,11 +110,11 @@ void proto_register_x509ce(void) {
static hf_register_info hf[] = {
{ &hf_x509ce_id_ce_baseUpdateTime,
{ "baseUpdateTime", "x509ce.id_ce_baseUpdateTime",
- FT_STRING, BASE_NONE, NULL, 0,
+ FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
NULL, HFILL }},
{ &hf_x509ce_id_ce_invalidityDate,
{ "invalidityDate", "x509ce.id_ce_invalidityDate",
- FT_STRING, BASE_NONE, NULL, 0,
+ FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
NULL, HFILL }},
{ &hf_x509ce_object_identifier_id,
{ "Id", "x509ce.id", FT_OID, BASE_NONE, NULL, 0,
@@ -104,9 +122,18 @@ void proto_register_x509ce(void) {
{ &hf_x509ce_IPAddress_ipv4,
{ "iPAddress", "x509ce.IPAddress.ipv4", FT_IPv4, BASE_NONE, NULL, 0,
"IPv4 address", HFILL }},
+ { &hf_x509ce_IPAddress_ipv4_mask,
+ { "iPAddress Mask", "x509ce.IPAddress.ipv4_mask", FT_IPv4, BASE_NONE, NULL, 0,
+ "IPv4 address Mask", HFILL }},
{ &hf_x509ce_IPAddress_ipv6,
{ "iPAddress", "x509ce.IPAddress.ipv6", FT_IPv6, BASE_NONE, NULL, 0,
"IPv6 address", HFILL }},
+ { &hf_x509ce_IPAddress_ipv6_mask,
+ { "iPAddress Mask", "x509ce.IPAddress.ipv6_mask", FT_IPv6, BASE_NONE, NULL, 0,
+ "IPv6 address Mask", HFILL }},
+ { &hf_x509ce_IPAddress_unknown,
+ { "iPAddress", "x509ce.IPAddress.unknown", FT_BYTES, BASE_NONE, NULL, 0,
+ "Unknown Address", HFILL }},
#include "packet-x509ce-hfarr.c"
};
diff --git a/epan/dissectors/asn1/x509ce/x509ce.cnf b/epan/dissectors/asn1/x509ce/x509ce.cnf
index aa8e9a8af3..9a43b7dd01 100644
--- a/epan/dissectors/asn1/x509ce/x509ce.cnf
+++ b/epan/dissectors/asn1/x509ce/x509ce.cnf
@@ -88,11 +88,13 @@ SubjectKeyIdentifier
ScramblerCapabilities
CiplusInfo
CicamBrandId
+SecurityLevel
#.PDU
ScramblerCapabilities
CiplusInfo
CicamBrandId
+SecurityLevel
#.REGISTER
@@ -128,6 +130,7 @@ ToBeRevokedSyntax B "2.5.29.58" "id-ce-toBeRevoked"
RevokedGroupsSyntax B "2.5.29.59" "id-ce-RevokedGroups"
ExpiredCertsOnCRL B "2.5.29.60" "id-ce-expiredCertsOnCRL"
AAIssuingDistPointSyntax B "2.5.29.61" "id-ce-aAissuingDistributionPoint"
+NFTypes B "1.3.6.1.5.5.7.1.34" "id-pe-nftype"
CertificateAssertion B "2.5.13.35" "id-mr-certificateMatch"
CertificatePairExactAssertion B "2.5.13.36" "id-mr-certificatePairExactMatch"
@@ -146,6 +149,8 @@ EnhancedCertificateAssertion B "2.5.13.65" "id-mr-enhancedCertificateMatch"
# Microsoft extensions
CertificateTemplate B "1.3.6.1.4.1.311.21.7" "id-ms-certificate-template"
CertificatePoliciesSyntax B "1.3.6.1.4.1.311.21.10" "id-ms-application-certificate-policies"
+NtdsCaSecurity B "1.3.6.1.4.1.311.25.2" "id-ms-ntds-ca-security"
+NtdsObjectSid B "1.3.6.1.4.1.311.25.2.1" "id-ms-ntds-object-sid"
# Entrust extensions
EntrustVersionInfo B "1.2.840.113533.7.65.0" "id-ce-entrustVersionInfo"
@@ -154,6 +159,10 @@ EntrustVersionInfo B "1.2.840.113533.7.65.0" "id-ce-entrustVersionInfo"
#.TYPE_RENAME
+#.TYPE_ATTR
+ScramblerCapabilities/capability DISPLAY = BASE_DEC STRINGS = VALS64(ciplus_scr_cap)
+SecurityLevel DISPLAY = BASE_DEC STRINGS = VALS64(ciplus_security_level)
+
#.FIELD_RENAME
CRLReferral/issuer crlr_issuer
CertificatePairExactAssertion/issuedToThisCAAssertion cpea_issuedToThisCAAssertion
@@ -169,15 +178,32 @@ EnhancedCertificateAssertion/pathToName enhancedPathToName
offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL);
#.FN_BODY GeneralName/iPAddress
- switch (tvb_reported_length(tvb)) {
+ guint32 len = tvb_reported_length(tvb);
+ switch (len) {
case 4: /* IPv4 */
proto_tree_add_item(tree, hf_x509ce_IPAddress_ipv4, tvb, offset, 4, ENC_BIG_ENDIAN);
offset += 4;
break;
+ case 8: /* IPv4 + Mask*/
+ proto_tree_add_item(tree, hf_x509ce_IPAddress_ipv4, tvb, offset, 4, ENC_BIG_ENDIAN);
+ offset += 4;
+ proto_tree_add_item(tree, hf_x509ce_IPAddress_ipv4_mask, tvb, offset, 4, ENC_BIG_ENDIAN);
+ offset += 4;
+ break;
case 16: /* IPv6 */
proto_tree_add_item(tree, hf_x509ce_IPAddress_ipv6, tvb, offset, 16, ENC_NA);
offset += 16;
break;
+ case 32: /* IPv6 + Mask */
+ proto_tree_add_item(tree, hf_x509ce_IPAddress_ipv6, tvb, offset, 16, ENC_NA);
+ offset += 16;
+ proto_tree_add_item(tree, hf_x509ce_IPAddress_ipv6_mask, tvb, offset, 16, ENC_NA);
+ offset += 16;
+ break;
+ default: /* Unknown */
+ proto_tree_add_item(tree, hf_x509ce_IPAddress_unknown, tvb, offset, len, ENC_NA);
+ offset += len;
+ break;
}
#.FN_PARS OtherNameType
diff --git a/epan/dissectors/asn1/x509if/packet-x509if-template.c b/epan/dissectors/asn1/x509if/packet-x509if-template.c
index fbfac00f60..0b4a20e8c5 100644
--- a/epan/dissectors/asn1/x509if/packet-x509if-template.c
+++ b/epan/dissectors/asn1/x509if/packet-x509if-template.c
@@ -14,6 +14,7 @@
#include <epan/packet.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
#include <epan/strutil.h>
#include "packet-ber.h"
@@ -30,9 +31,9 @@ void proto_register_x509if(void);
void proto_reg_handoff_x509if(void);
/* Initialize the protocol and registered fields */
-static int proto_x509if = -1;
-static int hf_x509if_object_identifier_id = -1;
-static int hf_x509if_any_string = -1;
+static int proto_x509if;
+static int hf_x509if_object_identifier_id;
+static int hf_x509if_any_string;
#include "packet-x509if-hf.c"
/* Initialize the subtree pointers */
@@ -45,11 +46,8 @@ static gboolean rdn_one_value = FALSE; /* have we seen one value in an RDN yet *
static gboolean dn_one_rdn = FALSE; /* have we seen one RDN in a DN yet */
static gboolean doing_attr = FALSE;
-#define MAX_RDN_STR_LEN 64
-#define MAX_DN_STR_LEN (20 * MAX_RDN_STR_LEN)
-
-static char *last_dn = NULL;
-static char *last_rdn = NULL;
+static wmem_strbuf_t *last_dn_buf = NULL;
+static wmem_strbuf_t *last_rdn_buf = NULL;
static int ava_hf_index;
#define MAX_FMT_VALS 32
@@ -67,8 +65,8 @@ x509if_frame_end(void)
dn_one_rdn = FALSE;
doing_attr = FALSE;
- last_dn = NULL;
- last_rdn = NULL;
+ last_dn_buf = NULL;
+ last_rdn_buf = NULL;
last_ava = NULL;
}
@@ -76,7 +74,7 @@ x509if_frame_end(void)
const char * x509if_get_last_dn(void)
{
- return last_dn;
+ return last_dn_buf ? wmem_strbuf_get_str(last_dn_buf) : NULL;
}
gboolean x509if_register_fmt(int hf_index, const gchar *fmt)
@@ -111,7 +109,7 @@ void proto_register_x509if(void) {
/* List of fields */
static hf_register_info hf[] = {
{ &hf_x509if_object_identifier_id,
- { "Id", "x509if.id", FT_OID, BASE_NONE, NULL, 0,
+ { "Object Id", "x509if.oid", FT_OID, BASE_NONE, NULL, 0,
"Object identifier Id", HFILL }},
{ &hf_x509if_any_string,
{ "AnyString", "x509if.any.String", FT_BYTES, BASE_NONE,
diff --git a/epan/dissectors/asn1/x509if/x509if.cnf b/epan/dissectors/asn1/x509if/x509if.cnf
index 025d0211a7..6a9f654e2f 100644
--- a/epan/dissectors/asn1/x509if/x509if.cnf
+++ b/epan/dissectors/asn1/x509if/x509if.cnf
@@ -197,9 +197,9 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
name = oid_resolved_from_string(actx->pinfo->pool, actx->external.direct_reference);
if(!name) name = actx->external.direct_reference;
- if(last_rdn) { /* append it to the RDN */
- (void) g_strlcat(last_rdn, name, MAX_RDN_STR_LEN);
- (void) g_strlcat(last_rdn, "=", MAX_RDN_STR_LEN);
+ if(last_rdn_buf) { /* append it to the RDN */
+ wmem_strbuf_append(last_rdn_buf, name);
+ wmem_strbuf_append_c(last_rdn_buf, '=');
/* append it to the tree */
proto_item_append_text(tree, " (%%s=", name);
@@ -213,7 +213,7 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
last_ava = (char *)wmem_alloc(actx->pinfo->pool, MAX_AVA_STR_LEN); *last_ava = '\0';
register_frame_end_routine (actx->pinfo, x509if_frame_end);
- g_snprintf(last_ava, MAX_AVA_STR_LEN, "%%s %%s", name, fmt);
+ snprintf(last_ava, MAX_AVA_STR_LEN, "%%s %%s", name, fmt);
proto_item_append_text(tree, " %%s", last_ava);
@@ -244,8 +244,8 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
/* it was a string - format it */
value = tvb_format_text(actx->pinfo->pool, out_tvb, 0, tvb_reported_length(out_tvb));
- if(last_rdn) {
- (void) g_strlcat(last_rdn, value, MAX_RDN_STR_LEN);
+ if(last_rdn_buf) {
+ wmem_strbuf_append(last_rdn_buf, value);
/* append it to the tree*/
proto_item_append_text(tree, "%%s)", value);
@@ -260,7 +260,7 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
if(!(name = oid_resolved_from_string(actx->pinfo->pool, actx->external.direct_reference)))
name = actx->external.direct_reference;
- g_snprintf(last_ava, MAX_AVA_STR_LEN, "%%s %%s %%s", name, fmt, value);
+ snprintf(last_ava, MAX_AVA_STR_LEN, "%%s %%s %%s", name, fmt, value);
proto_item_append_text(tree, " %%s", last_ava);
@@ -328,30 +328,31 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL);
#.FN_BODY RelativeDistinguishedName
- char *temp_dn;
-
rdn_one_value = FALSE;
top_of_rdn = tree;
- last_rdn = (char *)wmem_alloc(actx->pinfo->pool, MAX_DN_STR_LEN); *last_rdn = '\0';
+ last_rdn_buf = wmem_strbuf_new(actx->pinfo->pool, "");
register_frame_end_routine (actx->pinfo, x509if_frame_end);
%(DEFAULT_BODY)s
/* we've finished - close the bracket */
- proto_item_append_text(top_of_rdn, " (%%s)", last_rdn);
+ proto_item_append_text(top_of_rdn, " (%%s)", wmem_strbuf_get_str(last_rdn_buf));
/* now append this to the DN */
- if (last_dn) {
- if(*last_dn) {
- temp_dn = (char *)wmem_strdup_printf(actx->pinfo->pool, "%%s,%%s", last_rdn, last_dn);
- last_dn[0] = '\0';
- (void) g_strlcat(last_dn, temp_dn, MAX_DN_STR_LEN);
+ if (last_dn_buf) {
+ if(wmem_strbuf_get_len(last_dn_buf) > 0) {
+ wmem_strbuf_t *temp_dn_buf = wmem_strbuf_new_sized(actx->pinfo->pool, wmem_strbuf_get_len(last_rdn_buf) + wmem_strbuf_get_len(last_dn_buf) + 1);
+ wmem_strbuf_append(temp_dn_buf, wmem_strbuf_get_str(last_rdn_buf));
+ wmem_strbuf_append_c(temp_dn_buf, ',');
+ wmem_strbuf_append(temp_dn_buf, wmem_strbuf_get_str(last_dn_buf));
+ wmem_strbuf_destroy(last_dn_buf);
+ last_dn_buf = temp_dn_buf;
} else {
- (void) g_strlcat(last_dn, last_rdn, MAX_DN_STR_LEN);
+ wmem_strbuf_append(last_dn_buf, wmem_strbuf_get_str(last_rdn_buf));
}
}
- last_rdn = NULL; /* it will get freed when the next packet is dissected */
+ last_rdn_buf = NULL; /* it will get freed when the next packet is dissected */
#.FN_BODY RelativeDistinguishedName/_item
@@ -359,9 +360,9 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
top_of_rdn = tree;
} else {
- if(last_rdn)
+ if(last_rdn_buf)
/* this is an additional value - delimit */
- (void) g_strlcat(last_rdn, "+", MAX_RDN_STR_LEN);
+ wmem_strbuf_append_c(last_rdn_buf, '+');
}
%(DEFAULT_BODY)s
@@ -372,7 +373,7 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
const char *fmt;
dn_one_rdn = FALSE; /* reset */
- last_dn = (char *)wmem_alloc(actx->pinfo->pool, MAX_DN_STR_LEN); *last_dn = '\0';
+ last_dn_buf = wmem_strbuf_new(actx->pinfo->pool, "");
top_of_dn = NULL;
register_frame_end_routine (actx->pinfo, x509if_frame_end);
@@ -380,12 +381,12 @@ DistinguishedName B "2.16.840.1.101.2.2.1.188" "id-at-primaryMember"
%(DEFAULT_BODY)s
/* we've finished - append the dn */
- proto_item_append_text(top_of_dn, " (%%s)", last_dn);
+ proto_item_append_text(top_of_dn, " (%%s)", wmem_strbuf_get_str(last_dn_buf));
/* see if we should append this to the col info */
if((fmt = val_to_str_const(hf_index, fmt_vals, "")) && *fmt) {
- /* we have a format */
- col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s%%s", fmt, last_dn);
+ /* we have a format */
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s%%s", fmt, wmem_strbuf_get_str(last_dn_buf));
}
diff --git a/epan/dissectors/asn1/x509sat/packet-x509sat-template.c b/epan/dissectors/asn1/x509sat/packet-x509sat-template.c
index 1166e33ba4..7f69da40ef 100644
--- a/epan/dissectors/asn1/x509sat/packet-x509sat-template.c
+++ b/epan/dissectors/asn1/x509sat/packet-x509sat-template.c
@@ -14,6 +14,8 @@
#include <epan/packet.h>
#include <epan/oids.h>
#include <epan/asn1.h>
+#include <epan/proto_data.h>
+#include <epan/strutil.h>
#include "packet-ber.h"
#include "packet-p1.h"
@@ -28,7 +30,7 @@ void proto_register_x509sat(void);
void proto_reg_handoff_x509sat(void);
/* Initialize the protocol and registered fields */
-static int proto_x509sat = -1;
+static int proto_x509sat;
#include "packet-x509sat-hf.c"
/* Initialize the subtree pointers */
diff --git a/epan/dissectors/asn1/x509sat/x509sat.cnf b/epan/dissectors/asn1/x509sat/x509sat.cnf
index 6b7ffdd7d9..853287d44a 100644
--- a/epan/dissectors/asn1/x509sat/x509sat.cnf
+++ b/epan/dissectors/asn1/x509sat/x509sat.cnf
@@ -183,6 +183,8 @@ DirectoryString B "2.5.4.65" "id-at-pseudonym"
ObjectIdentifier B "2.5.4.66" "id-at-communuicationsService"
ObjectIdentifier B "2.5.4.67" "id-at-communuicationsNetwork"
+DirectoryString B "2.5.4.97" "id-at-organizationIdentifier"
+
SyntaxNumericString B "2.5.13.8" "id-mr-numericStringMatch"
CaseIgnoreListMatch B "2.5.13.11" "id-mr-caseIgnoreListMatch"
BitString B "2.5.13.16" "id-mr-bitStringMatch"
@@ -380,14 +382,14 @@ XDayOf/fifth fifth_dayof
/* the 2-digit year can only be in the range 1950..2049 https://tools.ietf.org/html/rfc5280#section-4.1.2.5.1 */
offset = dissect_ber_UTCTime(implicit_tag, actx, tree, tvb, offset, hf_index, &outstr, &tvblen);
- if (hf_index >= 0 && outstr) {
+ if (hf_index > 0 && outstr) {
newstr = wmem_strconcat(actx->pinfo->pool, outstr[0] < '5' ? "20": "19", outstr, NULL);
proto_tree_add_string(tree, hf_index, tvb, offset - tvblen, tvblen, newstr);
}
#.FN_BODY GUID
gint8 ber_class;
- gboolean pc;
+ bool pc;
gint32 tag;
guint32 len;
e_guid_t uuid;
@@ -405,16 +407,16 @@ XDayOf/fifth fifth_dayof
#.END
#.TYPE_ATTR
-DirectoryString/teletexString DISPLAY = STR_UNICODE
+DirectoryString/teletexString DISPLAY = BASE_NONE
#.TYPE_ATTR
-SyntaxTeletexString DISPLAY = STR_UNICODE
+SyntaxTeletexString DISPLAY = BASE_NONE
#.TYPE_ATTR
-SyntaxT61String DISPLAY = STR_UNICODE
+SyntaxT61String DISPLAY = BASE_NONE
#.TYPE_ATTR
-SyntaxVideotexString DISPLAY = STR_UNICODE
+SyntaxVideotexString DISPLAY = BASE_NONE
#.END
diff --git a/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn b/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn
index a44bfe643b..75bdf3d889 100644
--- a/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn
+++ b/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.423 V16.7.0 (2021-10)
+-- 3GPP TS 38.423 V17.7.0 (2023-12)
-- 9.3.6 Common definitions
-- **************************************************************
--
diff --git a/epan/dissectors/asn1/xnap/XnAP-Constants.asn b/epan/dissectors/asn1/xnap/XnAP-Constants.asn
index 77c2a4b8e5..7b46f60031 100644
--- a/epan/dissectors/asn1/xnap/XnAP-Constants.asn
+++ b/epan/dissectors/asn1/xnap/XnAP-Constants.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.423 V16.7.0 (2021-10)
+-- 3GPP TS 38.423 V17.7.0 (2023-12)
-- 9.3.7 Constant definitions
-- **************************************************************
--
@@ -57,12 +57,24 @@ id-traceStart ProcedureCode ::= 28
id-handoverSuccess ProcedureCode ::= 29
id-conditionalHandoverCancel ProcedureCode ::= 30
id-earlyStatusTransfer ProcedureCode ::= 31
-id-failureIndication ProcedureCode ::= 32
+id-failureIndication ProcedureCode ::= 32
id-handoverReport ProcedureCode ::= 33
id-resourceStatusReportingInitiation ProcedureCode ::= 34
id-resourceStatusReporting ProcedureCode ::= 35
id-mobilitySettingsChange ProcedureCode ::= 36
id-accessAndMobilityIndication ProcedureCode ::= 37
+id-cellTrafficTrace ProcedureCode ::= 38
+id-RANMulticastGroupPaging ProcedureCode ::= 39
+id-scgFailureInformationReport ProcedureCode ::= 40
+id-ProcedureCode41-NotToBeUsed ProcedureCode ::= 41
+id-scgFailureTransfer ProcedureCode ::= 42
+id-f1CTrafficTransfer ProcedureCode ::= 43
+id-iABTransportMigrationManagement ProcedureCode ::= 44
+id-iABTransportMigrationModification ProcedureCode ::= 45
+id-iABResourceCoordination ProcedureCode ::= 46
+id-retrieveUEContextConfirm ProcedureCode ::= 47
+id-cPCCancel ProcedureCode ::= 48
+id-partialUEContextTransfer ProcedureCode ::= 49
@@ -137,6 +149,51 @@ maxnoofAdditionalPDCPDuplicationTNL INTEGER ::= 2
maxnoofRLCDuplicationstate INTEGER ::= 3
maxnoofWLANName INTEGER ::= 4
maxnoofNonAnchorCarrierFreqConfig INTEGER ::= 15
+maxnoofDataForwardingTunneltoE-UTRAN INTEGER ::= 256
+maxnoofMBSFSAs INTEGER ::= 256
+maxnoofUEIDIndicesforMBSPaging INTEGER ::= 4096
+maxnoofMBSQoSFlows INTEGER ::= 64
+maxnoofMRBs INTEGER ::= 32
+maxnoofCellsforMBS INTEGER ::= 8192
+maxnoofMBSServiceAreaInformation INTEGER ::= 256
+maxnoofTAIforMBS INTEGER ::= 1024
+maxnoofAssociatedMBSSessions INTEGER ::= 32
+maxnoofMBSSessions INTEGER ::= 256
+maxnoofSuccessfulHOReports INTEGER ::= 64
+maxnoofPSCellsPerSN INTEGER ::= 8
+maxnoofNR-UChannelIDs INTEGER ::= 16
+maxnoofCellsinCHO INTEGER ::= 8
+maxnoofCHOexecutioncond INTEGER ::= 2
+maxnoofServedCellsIAB INTEGER ::= 512
+maxnoofServingCells INTEGER ::= 32
+maxnoofBHInfo INTEGER ::= 1024
+maxnoofTrafficIndexEntries INTEGER ::= 1024
+maxnoofTLAsIAB INTEGER ::= 1024
+maxnoofBAPControlPDURLCCHs INTEGER ::= 2
+maxnoofIABSTCInfo INTEGER ::= 45
+maxnoofSymbols INTEGER ::= 14
+maxnoofDUFSlots INTEGER ::= 320
+maxnoofHSNASlots INTEGER ::= 5120
+maxnoofRBsetsPerCell INTEGER ::= 8
+maxnoofRBsetsPerCell1 INTEGER ::= 7
+maxnoofChildIABNodes INTEGER ::= 1024
+maxnoofPSCellCandidates INTEGER ::= 8
+maxnoofTargetSNs INTEGER ::= 8
+maxnoofUEAppLayerMeas INTEGER ::= 16
+maxnoofSNSSAIforQMC INTEGER ::= 16
+maxnoofCellIDforQMC INTEGER ::= 32
+maxnoofPLMNforQMC INTEGER ::= 16
+maxnoofTAforQMC INTEGER ::= 8
+maxnoofMTCItems INTEGER ::= 16
+maxnoofCSIRSconfigurations INTEGER ::= 96
+maxnoofCSIRSneighbourCells INTEGER ::= 16
+maxnoofCSIRSneighbourCellsInMTC INTEGER ::= 16
+maxnoofNeighbour-NG-RAN-Nodes INTEGER ::= 256
+maxnoofSRBs INTEGER ::= 5
+maxnoofSMBR INTEGER ::= 8
+maxnoofNSAGs INTEGER ::= 256
+maxnoofTargetSNsMinusOne INTEGER ::= 7
+maxnoofThresholdsForExcessPacketDelay INTEGER ::= 255
-- **************************************************************
--
@@ -374,7 +431,7 @@ id-MDTPLMNList ProtocolIE-ID ::= 225
id-TraceCollectionEntityURI ProtocolIE-ID ::= 226
id-UERadioCapabilityID ProtocolIE-ID ::= 227
id-CSI-RSTransmissionIndication ProtocolIE-ID ::= 228
-id-SNTriggered ProtocolIE-ID ::= 229
+id-SNTriggered ProtocolIE-ID ::= 229
id-DLCarrierList ProtocolIE-ID ::= 230
id-ExtendedTAISliceSupportList ProtocolIE-ID ::= 231
id-cellAssistanceInfo-EUTRA ProtocolIE-ID ::= 232
@@ -388,13 +445,140 @@ id-QoSFlowsMappedtoDRB-SetupResponse-MNterminated ProtocolIE-ID ::=
id-DL-scheduling-PDCCH-CCE-usage ProtocolIE-ID ::= 240
id-UL-scheduling-PDCCH-CCE-usage ProtocolIE-ID ::= 241
id-SFN-Offset ProtocolIE-ID ::= 242
-id-QoSMonitoringDisabled ProtocolIE-ID ::= 243
+id-QoSMonitoringDisabled ProtocolIE-ID ::= 243
id-ExtendedUEIdentityIndexValue ProtocolIE-ID ::= 244
-id-PagingeDRXInformation ProtocolIE-ID ::= 245
+id-EUTRAPagingeDRXInformation ProtocolIE-ID ::= 245
id-CHO-MRDC-EarlyDataForwarding ProtocolIE-ID ::= 246
id-SCGIndicator ProtocolIE-ID ::= 247
id-UESpecificDRX ProtocolIE-ID ::= 248
id-PDUSessionExpectedUEActivityBehaviour ProtocolIE-ID ::= 249
id-QoS-Mapping-Information ProtocolIE-ID ::= 250
+id-AdditionLocationInformation ProtocolIE-ID ::= 251
+id-dataForwardingInfoFromTargetE-UTRANnode ProtocolIE-ID ::= 252
+id-DirectForwardingPathAvailability ProtocolIE-ID ::= 253
+id-SourceNG-RAN-node-ID ProtocolIE-ID ::= 254
+id-SourceDLForwardingIPAddress ProtocolIE-ID ::= 255
+id-SourceNodeDLForwardingIPAddress ProtocolIE-ID ::= 256
+id-ExtendedReportIntervalMDT ProtocolIE-ID ::= 257
+id-SecurityIndication ProtocolIE-ID ::= 258
+id-RRCConnReestab-Indicator ProtocolIE-ID ::= 259
+id-TargetNodeID ProtocolIE-ID ::= 260
+id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 261
+id-PrivacyIndicator ProtocolIE-ID ::= 262
+id-TraceCollectionEntityIPAddress ProtocolIE-ID ::= 263
+id-M4ReportAmount ProtocolIE-ID ::= 264
+id-M5ReportAmount ProtocolIE-ID ::= 265
+id-M6ReportAmount ProtocolIE-ID ::= 266
+id-M7ReportAmount ProtocolIE-ID ::= 267
+id-BeamMeasurementIndicationM1 ProtocolIE-ID ::= 268
+id-MBS-Session-ID ProtocolIE-ID ::= 269
+id-UEIdentityIndexList-MBSGroupPaging ProtocolIE-ID ::= 270
+id-MulticastRANPagingArea ProtocolIE-ID ::= 271
+id-Supported-MBS-FSA-ID-List ProtocolIE-ID ::= 272
+id-MBS-SessionInformation-List ProtocolIE-ID ::= 273
+id-MBS-SessionInformationResponse-List ProtocolIE-ID ::= 274
+id-MBS-SessionAssociatedInformation ProtocolIE-ID ::= 275
+id-SuccessfulHOReportInformation ProtocolIE-ID ::= 276
+id-SliceRadioResourceStatus-List ProtocolIE-ID ::= 277
+id-CompositeAvailableCapacitySupplementaryUplink ProtocolIE-ID ::= 278
+id-SCGUEHistoryInformation ProtocolIE-ID ::= 279
+id-SSBOffsets-List ProtocolIE-ID ::= 280
+id-NG-RANnode2SSBOffsetModificationRange ProtocolIE-ID ::= 281
+id-Coverage-Modification-List ProtocolIE-ID ::= 282
+id-NR-U-Channel-List ProtocolIE-ID ::= 283
+id-SourcePSCellCGI ProtocolIE-ID ::= 284
+id-FailedPSCellCGI ProtocolIE-ID ::= 285
+id-SCGFailureReportContainer ProtocolIE-ID ::= 286
+id-SNMobilityInformation ProtocolIE-ID ::= 287
+id-SourcePSCellID ProtocolIE-ID ::= 288
+id-SuitablePSCellCGI ProtocolIE-ID ::= 289
+id-PSCellChangeHistory ProtocolIE-ID ::= 290
+id-CHOConfiguration ProtocolIE-ID ::= 291
+id-NR-U-ChannelInfo-List ProtocolIE-ID ::= 292
+id-PSCellHistoryInformationRetrieve ProtocolIE-ID ::= 293
+id-NG-RANnode2SSBOffsetsModificationRange ProtocolIE-ID ::= 294
+id-MIMOPRBusageInformation ProtocolIE-ID ::= 295
+id-F1CTrafficContainer ProtocolIE-ID ::= 296
+id-IAB-MT-Cell-List ProtocolIE-ID ::= 297
+id-NoPDUSessionIndication ProtocolIE-ID ::= 298
+id-IAB-TNL-Address-Request ProtocolIE-ID ::= 299
+id-IAB-TNL-Address-Response ProtocolIE-ID ::= 300
+id-TrafficToBeAddedList ProtocolIE-ID ::= 301
+id-TrafficToBeModifiedList ProtocolIE-ID ::= 302
+id-TrafficToBeReleaseInformation ProtocolIE-ID ::= 303
+id-TrafficAddedList ProtocolIE-ID ::= 304
+id-TrafficModifiedList ProtocolIE-ID ::= 305
+id-TrafficNotAddedList ProtocolIE-ID ::= 306
+id-TrafficNotModifiedList ProtocolIE-ID ::= 307
+id-TrafficRequiredToBeModifiedList ProtocolIE-ID ::= 308
+id-TrafficRequiredModifiedList ProtocolIE-ID ::= 309
+id-TrafficReleasedList ProtocolIE-ID ::= 310
+id-IABTNLAddressToBeAdded ProtocolIE-ID ::= 311
+id-IABTNLAddressToBeReleasedList ProtocolIE-ID ::= 312
+id-nonF1-Terminating-IAB-DonorUEXnAPID ProtocolIE-ID ::= 313
+id-F1-Terminating-IAB-DonorUEXnAPID ProtocolIE-ID ::= 314
+id-BoundaryNodeCellsList ProtocolIE-ID ::= 315
+id-ParentNodeCellsList ProtocolIE-ID ::= 316
+id-tdd-GNB-DU-Cell-Resource-Configuration ProtocolIE-ID ::= 317
+id-UL-GNB-DU-Cell-Resource-Configuration ProtocolIE-ID ::= 318
+id-DL-GNB-DU-Cell-Resource-Configuration ProtocolIE-ID ::= 319
+id-permutation ProtocolIE-ID ::= 320
+id-IABTNLAddressException ProtocolIE-ID ::= 321
+id-CHOinformation-AddReq ProtocolIE-ID ::= 322
+id-CHOinformation-ModReq ProtocolIE-ID ::= 323
+id-SurvivalTime ProtocolIE-ID ::= 324
+id-TimeSynchronizationAssistanceInformation ProtocolIE-ID ::= 325
+id-SCGActivationRequest ProtocolIE-ID ::= 326
+id-SCGActivationStatus ProtocolIE-ID ::= 327
+id-CPAInformationRequest ProtocolIE-ID ::= 328
+id-CPAInformationAck ProtocolIE-ID ::= 329
+id-CPCInformationRequired ProtocolIE-ID ::= 330
+id-CPCInformationConfirm ProtocolIE-ID ::= 331
+id-CPAInformationModReq ProtocolIE-ID ::= 332
+id-CPAInformationModReqAck ProtocolIE-ID ::= 333
+id-CPC-DataForwarding-Indicator ProtocolIE-ID ::= 334
+id-CPCInformationUpdate ProtocolIE-ID ::= 335
+id-CPACInformationModRequired ProtocolIE-ID ::= 336
+id-QMCConfigInfo ProtocolIE-ID ::= 337
+id-ProtocolIE-ID338-NotToBeUsed ProtocolIE-ID ::= 338
+id-Additional-Measurement-Timing-Configuration-List ProtocolIE-ID ::= 339
+id-PDUSession-PairID ProtocolIE-ID ::= 340
+id-Local-NG-RAN-Node-Identifier ProtocolIE-ID ::= 341
+id-Neighbour-NG-RAN-Node-List ProtocolIE-ID ::= 342
+id-Local-NG-RAN-Node-Identifier-Removal ProtocolIE-ID ::= 343
+id-FiveGProSeAuthorized ProtocolIE-ID ::= 344
+id-FiveGProSePC5QoSParameters ProtocolIE-ID ::= 345
+id-FiveGProSeUEPC5AggregateMaximumBitRate ProtocolIE-ID ::= 346
+id-ServedCellSpecificInfoReq-NR ProtocolIE-ID ::= 347
+id-NRPagingeDRXInformation ProtocolIE-ID ::= 348
+id-NRPagingeDRXInformationforRRCINACTIVE ProtocolIE-ID ::= 349
+id-Redcap-Bcast-Information ProtocolIE-ID ::= 350
+id-SDTSupportRequest ProtocolIE-ID ::= 351
+id-SDT-SRB-between-NewNode-OldNode ProtocolIE-ID ::= 352
+id-SDT-Termination-Request ProtocolIE-ID ::= 353
+id-SDTPartialUEContextInfo ProtocolIE-ID ::= 354
+id-SDTDataForwardingDRBList ProtocolIE-ID ::= 355
+id-PagingCause ProtocolIE-ID ::= 356
+id-PEIPSassistanceInformation ProtocolIE-ID ::= 357
+id-UESliceMaximumBitRateList ProtocolIE-ID ::= 358
+id-S-NG-RANnodeUE-Slice-MBR ProtocolIE-ID ::= 359
+id-PositioningInformation ProtocolIE-ID ::= 360
+id-UEAssistantIdentifier ProtocolIE-ID ::= 361
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID ::= 362
+id-F1-terminatingIAB-donorIndicator ProtocolIE-ID ::= 363
+id-TAINSAGSupportList ProtocolIE-ID ::= 364
+id-SCGreconfigNotification ProtocolIE-ID ::= 365
+id-earlyMeasurement ProtocolIE-ID ::= 366
+id-BeamMeasurementsReportConfiguration ProtocolIE-ID ::= 367
+id-CoverageModificationCause ProtocolIE-ID ::= 368
+id-AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated ProtocolIE-ID ::= 369
+id-UERLFReportContainerLTEExtension ProtocolIE-ID ::= 370
+id-ExcessPacketDelayThresholdConfiguration ProtocolIE-ID ::= 371
+id-HashedUEIdentityIndexValue ProtocolIE-ID ::= 372
+id-QosFlowMappingIndication ProtocolIE-ID ::= 373
+id-Full-and-Short-I-RNTI-Profile-List ProtocolIE-ID ::= 374
+id-MBS-DataForwarding-Indicator ProtocolIE-ID ::= 375
+id-IABAuthorizationStatus ProtocolIE-ID ::= 376
+
END
diff --git a/epan/dissectors/asn1/xnap/XnAP-Containers.asn b/epan/dissectors/asn1/xnap/XnAP-Containers.asn
index 80a094ca43..4f9a1060ae 100644
--- a/epan/dissectors/asn1/xnap/XnAP-Containers.asn
+++ b/epan/dissectors/asn1/xnap/XnAP-Containers.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.423 V16.7.0 (2021-10)
+-- 3GPP TS 38.423 V17.7.0 (2023-12)
-- 9.3.8 Container definitions
-- **************************************************************
--
@@ -27,7 +27,7 @@ IMPORTS
Criticality,
Presence,
PrivateIE-ID,
- ProtocolIE-ID
+ ProtocolIE-ID
FROM XnAP-CommonDataTypes;
-- **************************************************************
diff --git a/epan/dissectors/asn1/xnap/XnAP-IEs.asn b/epan/dissectors/asn1/xnap/XnAP-IEs.asn
index d6ca7ae6d6..8b2a9b1b38 100644
--- a/epan/dissectors/asn1/xnap/XnAP-IEs.asn
+++ b/epan/dissectors/asn1/xnap/XnAP-IEs.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.423 V16.7.0 (2021-10)
+-- 3GPP TS 38.423 V17.7.0 (2023-12)
-- 9.3.5 Information Element definitions
-- **************************************************************
--
@@ -26,6 +26,7 @@ IMPORTS
id-DefaultDRB-Allowed,
id-DLCarrierList,
id-EndpointIPAddressAndPort,
+ id-ExtendedReportIntervalMDT,
id-ExtendedTAISliceSupportList,
id-FiveGCMobilityRestrictionListContainer,
id-SecondarydataForwardingInfoFromTarget-List,
@@ -35,6 +36,7 @@ IMPORTS
id-SecurityResult,
id-OldQoSFlowMap-ULendmarkerexpected,
id-PDUSessionCommonNetworkInstance,
+ id-PDUSession-PairID,
id-BPLMN-ID-Info-EUTRA,
id-BPLMN-ID-Info-NR,
id-DRBsNotAdmittedSetupModifyList,
@@ -89,6 +91,52 @@ IMPORTS
id-UL-scheduling-PDCCH-CCE-usage,
id-SFN-Offset,
id-QoS-Mapping-Information,
+ id-AdditionLocationInformation,
+ id-dataForwardingInfoFromTargetE-UTRANnode,
+ id-Cause,
+ id-SecurityIndication,
+ id-RRCConnReestab-Indicator,
+ id-SourceDLForwardingIPAddress,
+ id-SourceNodeDLForwardingIPAddress,
+ id-M4ReportAmount,
+ id-M5ReportAmount,
+ id-M6ReportAmount,
+ id-M7ReportAmount,
+ id-BeamMeasurementIndicationM1,
+ id-Supported-MBS-FSA-ID-List,
+ id-MBS-SessionAssociatedInformation,
+ id-MBS-SessionInformation-List,
+ id-SliceRadioResourceStatus-List,
+ id-CompositeAvailableCapacitySupplementaryUplink,
+ id-SSBOffsets-List,
+ id-NG-RANnode2SSBOffsetsModificationRange,
+ id-NR-U-Channel-List,
+ id-NR-U-ChannelInfo-List,
+ id-MIMOPRBusageInformation,
+ id-UEAssistantIdentifier,
+ id-IAB-MT-Cell-List,
+ id-NoPDUSessionIndication,
+ id-permutation,
+ id-UL-GNB-DU-Cell-Resource-Configuration,
+ id-DL-GNB-DU-Cell-Resource-Configuration,
+ id-tdd-GNB-DU-Cell-Resource-Configuration,
+ id-Additional-Measurement-Timing-Configuration-List,
+ id-SurvivalTime,
+ id-Local-NG-RAN-Node-Identifier,
+ id-Neighbour-NG-RAN-Node-List,
+ id-FiveGProSeUEPC5AggregateMaximumBitRate,
+ id-Redcap-Bcast-Information,
+ id-UESliceMaximumBitRateList,
+ id-PositioningInformation,
+ id-ServedCellSpecificInfoReq-NR,
+ id-TAINSAGSupportList,
+ id-earlyMeasurement,
+ id-BeamMeasurementsReportConfiguration,
+ id-CoverageModificationCause,
+ id-UERLFReportContainerLTEExtension,
+ id-ExcessPacketDelayThresholdConfiguration,
+ id-Full-and-Short-I-RNTI-Profile-List,
+ id-QosFlowMappingIndication,
maxEARFCN,
maxnoofAllowedAreas,
maxnoofAMFRegions,
@@ -153,7 +201,52 @@ IMPORTS
maxnoofSensorName,
maxnoofNeighPCIforMDT,
maxnoofFreqforMDT,
- maxnoofNonAnchorCarrierFreqConfig
+ maxnoofNonAnchorCarrierFreqConfig,
+ maxnoofDataForwardingTunneltoE-UTRAN,
+ maxnoofUEIDIndicesforMBSPaging,
+ maxnoofMBSFSAs,
+ maxnoofMBSQoSFlows,
+ maxnoofMRBs,
+ maxnoofCellsforMBS,
+ maxnoofMBSServiceAreaInformation,
+ maxnoofTAIforMBS,
+ maxnoofAssociatedMBSSessions,
+ maxnoofMBSSessions,
+ maxnoofSuccessfulHOReports,
+ maxnoofPSCellsPerSN,
+ maxnoofNR-UChannelIDs,
+ maxnoofCellsinCHO,
+ maxnoofCHOexecutioncond,
+ maxnoofServingCells,
+ maxnoofBHInfo,
+ maxnoofTLAsIAB,
+ maxnoofTrafficIndexEntries,
+ maxnoofBAPControlPDURLCCHs,
+ maxnoofServedCellsIAB,
+ maxnoofDUFSlots,
+ maxnoofSymbols,
+ maxnoofHSNASlots,
+ maxnoofRBsetsPerCell,
+ maxnoofChildIABNodes,
+ maxnoofIABSTCInfo,
+ maxnoofPSCellCandidates,
+ maxnoofTargetSNs,
+ maxnoofUEAppLayerMeas,
+ maxnoofSNSSAIforQMC,
+ maxnoofCellIDforQMC,
+ maxnoofPLMNforQMC,
+ maxnoofTAforQMC,
+ maxnoofMTCItems,
+ maxnoofCSIRSconfigurations,
+ maxnoofCSIRSneighbourCells,
+ maxnoofCSIRSneighbourCellsInMTC,
+ maxnoofNeighbour-NG-RAN-Nodes,
+ maxnoofSRBs,
+ maxnoofSMBR,
+ maxnoofNSAGs,
+ maxnoofRBsetsPerCell1,
+ maxnoofTargetSNsMinusOne,
+ maxnoofThresholdsForExcessPacketDelay
FROM XnAP-Constants
@@ -173,6 +266,23 @@ FROM XnAP-Containers;
-- A
+AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated ::= SEQUENCE (SIZE(1..maxnoofTargetSNsMinusOne)) OF AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated-Item
+
+AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated-Item ::= SEQUENCE {
+ pDUSessionResourceChangeConfirmInfo-SNterminated PDUSessionResourceChangeConfirmInfo-SNterminated,
+ iE-Extensions ProtocolExtensionContainer { { AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AdditionLocationInformation ::= ENUMERATED {
+ includePSCell,
+ ...
+}
+
Additional-PDCP-Duplication-TNL-List ::= SEQUENCE (SIZE(1..maxnoofAdditionalPDCPDuplicationTNL)) OF Additional-PDCP-Duplication-TNL-Item
Additional-PDCP-Duplication-TNL-Item ::= SEQUENCE {
additional-PDCP-Duplication-UP-TNL-Information UPTransportLayerInformation,
@@ -196,12 +306,37 @@ Additional-UL-NG-U-TNLatUPF-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
Additional-UL-NG-U-TNLatUPF-List ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivityMinusOne)) OF Additional-UL-NG-U-TNLatUPF-Item
+Additional-Measurement-Timing-Configuration-List ::= SEQUENCE (SIZE(1.. maxnoofMTCItems)) OF Additional-Measurement-Timing-Configuration-Item
+
+Additional-Measurement-Timing-Configuration-Item ::= SEQUENCE {
+ additionalMeasurementTimingConfigurationIndex INTEGER (0..16),
+ csi-RS-MTC-Configuration-List CSI-RS-MTC-Configuration-List,
+ iE-Extensions ProtocolExtensionContainer { { Additional-Measurement-Timing-Configuration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Additional-Measurement-Timing-Configuration-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
ActivationIDforCellActivation ::= INTEGER (0..255)
+Active-MBS-SessionInformation ::= SEQUENCE {
+ mBS-QoSFlowsToAdd-List MBS-QoSFlowsToAdd-List,
+ mBS-ServiceArea MBS-ServiceArea OPTIONAL,
+ mBS-MappingandDataForwardingRequestInfofromSource MBS-MappingandDataForwardingRequestInfofromSource OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Active-MBS-SessionInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Active-MBS-SessionInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
AllocationandRetentionPriority ::= SEQUENCE {
priorityLevel INTEGER (0..15,...),
- pre-emption-capability ENUMERATED {shall-not-trigger-preemptdatDion, may-trigger-preemption, ...},
+ pre-emption-capability ENUMERATED {shall-not-trigger-preemption, may-trigger-preemption, ...},
pre-emption-vulnerability ENUMERATED {not-preemptable, preemptable, ...},
iE-Extensions ProtocolExtensionContainer { {AllocationandRetentionPriority-ExtIEs} } OPTIONAL,
...
@@ -230,6 +365,9 @@ AllowedPNI-NPN-ID-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+AllTrafficIndication ::= ENUMERATED {true,...}
+
+
AlternativeQoSParaSetList ::= SEQUENCE (SIZE(1..maxnoofQoSParaSets)) OF AlternativeQoSParaSetItem
AlternativeQoSParaSetItem ::= SEQUENCE {
@@ -284,16 +422,29 @@ AreaScopeOfMDT-NR ::= CHOICE {
cellBased CellBasedMDT-NR,
tABased TABasedMDT,
tAIBased TAIBasedMDT,
+ ...,
+ choice-extension ProtocolIE-Single-Container { {AreaScopeOfMDT-NR-ExtIEs} }
+}
+
+AreaScopeOfMDT-NR-ExtIEs XNAP-PROTOCOL-IES ::= {
...
+
}
AreaScopeOfMDT-EUTRA ::= CHOICE {
cellBased CellBasedMDT-EUTRA,
tABased TABasedMDT,
tAIBased TAIBasedMDT,
+ ...,
+ choice-extension ProtocolIE-Single-Container { {AreaScopeOfMDT-EUTRA-ExtIEs} }
+
+}
+
+AreaScopeOfMDT-EUTRA-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
+
AreaScopeOfNeighCellsList ::= SEQUENCE (SIZE(1..maxnoofFreqforMDT)) OF AreaScopeOfNeighCellsItem
AreaScopeOfNeighCellsItem ::= SEQUENCE {
nrFrequencyInfo NRFrequencyInfo,
@@ -306,6 +457,18 @@ AreaScopeOfNeighCellsItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+AreaScopeOfQMC ::= CHOICE {
+ cellBased CellBasedQMC,
+ tABased TABasedQMC,
+ tAIBased TAIBasedQMC,
+ pLMNAreaBased PLMNAreaBasedQMC,
+ choice-extension ProtocolIE-Single-Container { {AreaScopeOfQMC-ExtIEs} }
+}
+
+AreaScopeOfQMC-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
AS-SecurityInformation ::= SEQUENCE {
key-NG-RAN-Star BIT STRING (SIZE(256)),
ncc INTEGER (0..7),
@@ -329,6 +492,19 @@ AssistanceDataForRANPaging-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+Associated-QoSFlowInfo-List ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF Associated-QoSFlowInfo-Item
+
+Associated-QoSFlowInfo-Item ::= SEQUENCE {
+ mBS-QoSFlowIdentifier QoSFlowIdentifier,
+ associatedUnicastQoSFlowIdentifier QoSFlowIdentifier,
+ iE-Extensions ProtocolExtensionContainer { { Associated-QoSFlowInfo-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Associated-QoSFlowInfo-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
AvailableCapacity ::= INTEGER (1.. 100,...)
@@ -336,15 +512,102 @@ AvailableCapacity ::= INTEGER (1.. 100,...)
AvailableRRCConnectionCapacityValue ::= INTEGER (0..100)
+AvailableRVQoEMetrics ::= SEQUENCE {
+ bufferLevel ENUMERATED {true, ...} OPTIONAL,
+ playoutDelayForMediaStartup ENUMERATED {true, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {AvailableRVQoEMetrics-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AvailableRVQoEMetrics-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
AveragingWindow ::= INTEGER (0..4095, ...)
-- B
+BAPAddress ::= BIT STRING (SIZE(10))
+
+BAPPathID ::= BIT STRING (SIZE(10))
+
+BAPRoutingID ::= SEQUENCE {
+ bAPAddress BAPAddress,
+ bAPPathID BAPPathID,
+ iE-Extensions ProtocolExtensionContainer { {BAPRoutingID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BAPRoutingID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BeamMeasurementIndicationM1 ::= ENUMERATED {true, ...}
+
+BeamMeasurementsReportConfiguration ::= SEQUENCE {
+ beamMeasurementsReportQuantity BeamMeasurementsReportQuantity OPTIONAL,
+ maxNrofRS-IndexesToReport MaxNrofRS-IndexesToReport OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BeamMeasurementsReportConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BeamMeasurementsReportConfiguration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BeamMeasurementsReportQuantity ::= SEQUENCE {
+ rSRP ENUMERATED {true, ...},
+ rSRQ ENUMERATED {true, ...},
+ sINR ENUMERATED {true, ...},
+ iE-Extensions ProtocolExtensionContainer { { BeamMeasurementsReportQuantity-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BeamMeasurementsReportQuantity-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BHInfoIndex ::= INTEGER (1.. maxnoofBHInfo)
+
+BHInfoList ::= SEQUENCE (SIZE(1.. maxnoofBHInfo)) OF BHInfo-Item
+
+BHInfo-Item ::= SEQUENCE {
+ bHInfoIndex BHInfoIndex,
+ iE-Extensions ProtocolExtensionContainer { { BHInfo-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BHInfo-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+BHRLCChannelID ::= BIT STRING (SIZE(16))
+
+BAPControlPDURLCCH-List ::= SEQUENCE (SIZE(1.. maxnoofBAPControlPDURLCCHs)) OF BAPControlPDURLCCH-Item
+
+
+BAPControlPDURLCCH-Item ::= SEQUENCE {
+ bHRLCCHID BHRLCChannelID,
+ nexthopBAPAddress BAPAddress,
+ iE-Extensions ProtocolExtensionContainer { { BAPControlPDURLCCH-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BAPControlPDURLCCH-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
BluetoothMeasurementConfiguration ::= SEQUENCE {
- bluetoothMeasConfig BluetoothMeasConfig,
- bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL,
- bt-rssi ENUMERATED {true, ...} OPTIONAL,
+ bluetoothMeasConfig BluetoothMeasConfig,
+ bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL,
+ bt-rssi ENUMERATED {true, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { BluetoothMeasurementConfiguration-ExtIEs } } OPTIONAL,
...
}
@@ -435,7 +698,8 @@ BroadcastPLMNinTAISupport-Item ::= SEQUENCE {
BroadcastPLMNinTAISupport-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional}|
- { ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional},
+ { ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional}|
+ { ID id-TAINSAGSupportList CRITICALITY ignore EXTENSION TAINSAGSupportList PRESENCE optional },
...
}
@@ -483,7 +747,7 @@ CapacityValue ::= INTEGER (0..100)
CapacityValueInfo ::= SEQUENCE {
capacityValue CapacityValue,
ssbAreaCapacityValueList SSBAreaCapacityValue-List OPTIONAL,
- iE-Extension ProtocolExtensionContainer { {CapacityValueInfo-ExtIEs} } OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {CapacityValueInfo-ExtIEs} } OPTIONAL,
...
}
@@ -520,7 +784,7 @@ CauseRadioNetworkLayer ::= ENUMERATED {
unknown-local-NG-RAN-node-UE-XnAP-ID,
inconsistent-remote-NG-RAN-node-UE-XnAP-ID,
encryption-and-or-integrity-protection-algorithms-not-supported,
- protection-algorithms-not-supported,
+ not-used-causes-value-1,
multiple-PDU-session-ID-instances,
unknown-PDU-session-ID,
unknown-QoS-Flow-ID,
@@ -571,7 +835,10 @@ CauseRadioNetworkLayer ::= ENUMERATED {
ue-power-saving,
unknown-NG-RAN-node2-Measurement-ID,
insufficient-ue-capabilities,
- normal-release
+ normal-release,
+ value-out-of-allowed-range,
+ scg-activation-deactivation-failure,
+ scg-deactivation-failure-due-to-data-transmission
}
CauseTransportLayer ::= ENUMERATED {
@@ -657,6 +924,19 @@ CellBasedMDT-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
CellIdListforMDT-NR ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF NR-CGI
+CellBasedQMC::= SEQUENCE {
+ cellIdListforQMC CellIdListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {CellBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellBasedQMC-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellIdListforQMC ::= SEQUENCE (SIZE(1..maxnoofCellIDforQMC)) OF GlobalNG-RANCell-ID
+
+
CellBasedMDT-EUTRA::= SEQUENCE {
cellIdListforMDT-EUTRA CellIdListforMDT-EUTRA,
iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-EUTRA-ExtIEs} } OPTIONAL,
@@ -671,6 +951,7 @@ CellIdListforMDT-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF E-UTRA-CGI
CellCapacityClassValue ::= INTEGER (1..100,...)
+CellDeploymentStatusIndicator ::= ENUMERATED {pre-change-notification, ...}
CellGroupID ::= INTEGER (0..maxnoofSCellGroups)
@@ -679,18 +960,30 @@ CellMeasurementResult ::= SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF CellMe
CellMeasurementResult-Item ::= SEQUENCE {
cell-ID GlobalNG-RANCell-ID,
- radioResourceStatus RadioResourceStatus OPTIONAL,
- tNLCapacityIndicator TNLCapacityIndicator OPTIONAL,
- compositeAvailableCapacityGroup CompositeAvailableCapacityGroup OPTIONAL,
- sliceAvailableCapacity SliceAvailableCapacity OPTIONAL,
- numberofActiveUEs NumberofActiveUEs OPTIONAL,
- rRCConnections RRCConnections OPTIONAL,
+ radioResourceStatus RadioResourceStatus OPTIONAL,
+ tNLCapacityIndicator TNLCapacityIndicator OPTIONAL,
+ compositeAvailableCapacityGroup CompositeAvailableCapacityGroup OPTIONAL,
+ sliceAvailableCapacity SliceAvailableCapacity OPTIONAL,
+ numberofActiveUEs NumberofActiveUEs OPTIONAL,
+ rRCConnections RRCConnections OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { CellMeasurementResult-Item-ExtIEs} } OPTIONAL,
...
}
CellMeasurementResult-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-NR-U-Channel-List CRITICALITY ignore EXTENSION NR-U-Channel-List PRESENCE optional },
+ ...
+}
+
+
+CellReplacingInfo ::= SEQUENCE {
+ replacingCells ReplacingCells,
+ iE-Extensions ProtocolExtensionContainer { {CellReplacingInfo-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CellReplacingInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
@@ -699,8 +992,8 @@ CellToReport ::= SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF CellToReport-It
CellToReport-Item ::= SEQUENCE {
cell-ID GlobalNG-RANCell-ID,
- sSBToReport-List SSBToReport-List OPTIONAL,
- sliceToReport-List SliceToReport-List OPTIONAL,
+ sSBToReport-List SSBToReport-List OPTIONAL,
+ sliceToReport-List SliceToReport-List OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { CellToReport-Item-ExtIEs} } OPTIONAL,
...
}
@@ -722,21 +1015,58 @@ Cell-Type-Choice-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
+CHOConfiguration ::= SEQUENCE {
+ choCandidateCell-List CHOCandidateCell-List,
+ iE-Extensions ProtocolExtensionContainer { { CHOConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOConfiguration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CHOCandidateCell-List ::= SEQUENCE (SIZE(1..maxnoofCellsinCHO)) OF CHOCandidateCell-Item
+
+CHOCandidateCell-Item ::= SEQUENCE {
+ choCandidateCellID GlobalNG-RANCell-ID,
+ choExecutionCondition-List CHOExecutionCondition-List,
+ iE-Extensions ProtocolExtensionContainer { { CHOCandidateCell-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOCandidateCell-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CHOExecutionCondition-List ::= SEQUENCE (SIZE(1..maxnoofCHOexecutioncond)) OF CHOExecutionCondition-Item
+
+CHOExecutionCondition-Item ::= SEQUENCE { measObjectContainer MeasObjectContainer,
+ reportConfigContainer ReportConfigContainer,
+ iE-Extensions ProtocolExtensionContainer { { CHOExecutionCondition-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOExecutionCondition-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
CompositeAvailableCapacityGroup ::= SEQUENCE {
compositeAvailableCapacityDownlink CompositeAvailableCapacity,
- compositeAvailableCapacityUplink CompositeAvailableCapacity,
+ compositeAvailableCapacityUplink CompositeAvailableCapacity,
iE-Extensions ProtocolExtensionContainer { { CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL,
...
}
CompositeAvailableCapacityGroup-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-CompositeAvailableCapacitySupplementaryUplink CRITICALITY ignore EXTENSION CompositeAvailableCapacity PRESENCE optional },
...
}
CompositeAvailableCapacity ::= SEQUENCE {
- cellCapacityClassValue CellCapacityClassValue OPTIONAL,
- capacityValueInfo CapacityValueInfo, -- this IE represents the IE "CapacityValue" in 9.2.2.a, it’s used to distinguish the "CapacityValue" in 9.2.2.c
+ cellCapacityClassValue CellCapacityClassValue OPTIONAL,
+ capacityValueInfo CapacityValueInfo, -- this IE represents the IE "CapacityValue" in 9.2.2.a, it’s used to distinguish the "CapacityValue" in 9.2.2.c
iE-Extensions ProtocolExtensionContainer { { CompositeAvailableCapacity-ExtIEs} }OPTIONAL,
...
}
@@ -745,9 +1075,12 @@ CompositeAvailableCapacity-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+ControlPlaneTrafficType ::= INTEGER (1..3, ...)
+
CHO-MRDC-EarlyDataForwarding ::= ENUMERATED {stop, ...}
-CHO-MRDC-Indicator ::= ENUMERATED {true, ...}
+CHO-MRDC-Indicator ::= ENUMERATED {true, ..., coordination-only }
+
CHOtrigger ::= ENUMERATED {
@@ -782,8 +1115,35 @@ CHOinformation-Ack-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
}
+CHOinformation-AddReq ::= SEQUENCE {
+ source-M-NGRAN-node-ID GlobalNG-RANNode-ID,
+ source-M-NGRAN-node-UE-XnAP-ID NG-RANnodeUEXnAPID,
+ cHO-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CHOinformation-AddReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOinformation-AddReq-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+
+CHOinformation-ModReq ::= SEQUENCE {
+ conditionalReconfig ENUMERATED {intra-mn-cho, ...},
+ cHO-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CHOinformation-ModReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CHOinformation-ModReq-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+
CHO-Probability ::= INTEGER (1..100)
+CNsubgroupID ::= INTEGER (0..7, ...)
+
ConfiguredTACIndication ::= ENUMERATED {
true,
@@ -802,6 +1162,8 @@ Connectivity-Support-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
+ContainerAppLayerMeasConfig ::= OCTET STRING (SIZE (1..8000))
+
COUNT-PDCP-SN12 ::= SEQUENCE {
pdcp-SN12 INTEGER (0..4095),
hfn-PDCP-SN12 INTEGER (0..1048575),
@@ -825,6 +1187,28 @@ COUNT-PDCP-SN18-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+CoverageModificationCause ::= ENUMERATED {
+ coverage,
+ cell-edge-capacity,
+ ...}
+
+Coverage-Modification-List ::= SEQUENCE (SIZE (0..maxnoofCellsinNG-RANnode)) OF Coverage-Modification-List-Item
+
+Coverage-Modification-List-Item ::= SEQUENCE {
+ globalNG-RANCell-ID GlobalCell-ID,
+ cellCoverageState INTEGER (0..63, ...),
+ cellDeploymentStatusIndicator CellDeploymentStatusIndicator OPTIONAL,
+ cellReplacingInfo CellReplacingInfo OPTIONAL,
+-- Included in case the Cell Deployment Status Indicator IE is present
+ sSB-Coverage-Modification-List SSB-Coverage-Modification-List,
+ iE-Extension ProtocolExtensionContainer { { Coverage-Modification-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+Coverage-Modification-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+{ ID id-CoverageModificationCause CRITICALITY ignore EXTENSION CoverageModificationCause PRESENCE optional},
+ ...
+}
+
CPTransportLayerInformation ::= CHOICE {
endpointIPAddress TransportLayerAddress,
@@ -836,6 +1220,162 @@ CPTransportLayerInformation-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
+CPACcandidatePSCells-list ::= SEQUENCE (SIZE(1..maxnoofPSCellCandidates)) OF CPACcandidatePSCells-item
+
+CPACcandidatePSCells-item ::= SEQUENCE {
+ pscell-id NR-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CPACcandidatePSCells-item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CPACcandidatePSCells-item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPCindicator ::= ENUMERATED {cpc-initiation, cpc-modification, cpc-cancellation, ...}
+
+CPAInformationRequest ::= SEQUENCE {
+ max-no-of-pscells INTEGER (1..maxnoofPSCellCandidates, ...),
+ cpac-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CPAInformationRequest-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAInformationRequest-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPAInformationAck ::= SEQUENCE {
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { { CPAInformationAck-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAInformationAck-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPCInformationRequired::= SEQUENCE {
+ cpc-target-sn-required-list CPC-target-SN-required-list,
+ iE-Extensions ProtocolExtensionContainer { {CPCInformationRequired-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPCInformationRequired-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPC-target-SN-required-list ::= SEQUENCE (SIZE(1..maxnoofTargetSNs)) OF CPC-target-SN-required-list-Item
+
+CPC-target-SN-required-list-Item ::= SEQUENCE {
+ target-S-NG-RANnodeID GlobalNG-RANNode-ID,
+ cpc-indicator CPCindicator,
+ max-no-of-pscells INTEGER (1..maxnoofPSCellCandidates, ...),
+ cpac-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ sN-to-MN-Container OCTET STRING,
+ iE-Extensions ProtocolExtensionContainer { { CPC-target-SN-required-list-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPC-target-SN-required-list-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+CPCInformationConfirm ::= SEQUENCE {
+ cpc-target-sn-confirm-list CPC-target-SN-confirm-list,
+ iE-Extensions ProtocolExtensionContainer { { CPCInformationConfirm-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPCInformationConfirm-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPC-target-SN-confirm-list ::= SEQUENCE (SIZE(1..maxnoofTargetSNs)) OF CPC-target-SN-confirm-list-Item
+
+CPC-target-SN-confirm-list-Item ::= SEQUENCE {
+ target-S-NG-RANnodeID GlobalNG-RANNode-ID,
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { { CPC-target-SN-confirm-list-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPC-target-SN-confirm-list-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPAInformationModReq ::= SEQUENCE {
+ max-no-of-pscells INTEGER (1..8, ...) OPTIONAL,
+ cpac-EstimatedArrivalProbability CHO-Probability OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CPAInformationModReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAInformationModReq-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPAInformationModReqAck ::= SEQUENCE {
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { { CPAInformationModReqAck-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPAInformationModReqAck-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPC-DataForwarding-Indicator ::= ENUMERATED {triggered, early-data-transmission-stop, ..., coordination-only}
+
+
+CPACInformationModRequired ::= SEQUENCE {
+ candidate-pscells CPACcandidatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { { CPACInformationModRequired-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPACInformationModRequired-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPCInformationUpdate::= SEQUENCE {
+ cpc-target-sn-list CPC-target-SN-mod-list,
+ iE-Extensions ProtocolExtensionContainer { { CPCInformationUpdate-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPCInformationUpdate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CPC-target-SN-mod-list ::= SEQUENCE (SIZE(1..maxnoofTargetSNs)) OF CPC-target-SN-mod-item
+
+CPC-target-SN-mod-item ::= SEQUENCE {
+ target-S-NG-RANnodeID GlobalNG-RANNode-ID,
+ candidate-pscells CPCInformationUpdatePSCells-list,
+ iE-Extensions ProtocolExtensionContainer { {CPC-target-SN-mod-item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CPC-target-SN-mod-item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CPCInformationUpdatePSCells-list ::= SEQUENCE (SIZE(1..maxnoofPSCellCandidates)) OF CPCInformationUpdatePSCells-item
+
+CPCInformationUpdatePSCells-item ::= SEQUENCE {
+ pscell-id NR-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CPCInformationUpdatePSCells-item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CPCInformationUpdatePSCells-item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
CriticalityDiagnostics ::= SEQUENCE {
procedureCode ProcedureCode OPTIONAL,
@@ -866,6 +1406,48 @@ CriticalityDiagnostics-IE-List-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
C-RNTI ::= BIT STRING (SIZE(16))
+CSI-RS-MTC-Configuration-List ::= SEQUENCE (SIZE(1.. maxnoofCSIRSconfigurations)) OF CSI-RS-MTC-Configuration-Item
+
+CSI-RS-MTC-Configuration-Item ::= SEQUENCE {
+ csi-RS-Index INTEGER(0..95),
+ csi-RS-Status ENUMERATED {activated, deactivated, ...},
+ csi-RS-Neighbour-List CSI-RS-Neighbour-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CSI-RS-MTC-Configuration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CSI-RS-MTC-Configuration-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CSI-RS-Neighbour-List ::= SEQUENCE (SIZE(1.. maxnoofCSIRSneighbourCells)) OF CSI-RS-Neighbour-Item
+
+CSI-RS-Neighbour-Item ::= SEQUENCE {
+ nr-cgi NR-CGI,
+ csi-RS-MTC-Neighbour-List CSI-RS-MTC-Neighbour-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CSI-RS-Neighbour-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CSI-RS-Neighbour-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+CSI-RS-MTC-Neighbour-List ::= SEQUENCE (SIZE(1.. maxnoofCSIRSneighbourCellsInMTC)) OF CSI-RS-MTC-Neighbour-Item
+
+CSI-RS-MTC-Neighbour-Item ::= SEQUENCE {
+ csi-RS-Index INTEGER(0..95),
+ iE-Extensions ProtocolExtensionContainer { { CSI-RS-MTC-Neighbour-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+CSI-RS-MTC-Neighbour-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
CyclicPrefix-E-UTRA-DL ::= ENUMERATED {
normal,
@@ -902,11 +1484,44 @@ XnUAddressInfoperPDUSession-Item ::= SEQUENCE {
XnUAddressInfoperPDUSession-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-SecondarydataForwardingInfoFromTarget-List CRITICALITY ignore EXTENSION SecondarydataForwardingInfoFromTarget-List PRESENCE optional}|
-{ ID id-DRB-IDs-takenintouse CRITICALITY reject EXTENSION DRB-List PRESENCE optional},
+{ ID id-DRB-IDs-takenintouse CRITICALITY reject EXTENSION DRB-List PRESENCE optional}|
+{ ID id-dataForwardingInfoFromTargetE-UTRANnode CRITICALITY ignore EXTENSION DataForwardingInfoFromTargetE-UTRANnode PRESENCE optional},
...
}
-DataForwardingAccepted ::= ENUMERATED {data-forwarding-accepted, ...}
+DataForwardingInfoFromTargetE-UTRANnode ::= SEQUENCE {
+ dataForwardingInfoFromTargetE-UTRANnode-List DataForwardingInfoFromTargetE-UTRANnode-List,
+ iE-Extension ProtocolExtensionContainer { { DataForwardingInfoFromTargetE-UTRANnode-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DataForwardingInfoFromTargetE-UTRANnode-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DataForwardingInfoFromTargetE-UTRANnode-List ::= SEQUENCE (SIZE(1.. maxnoofDataForwardingTunneltoE-UTRAN)) OF DataForwardingInfoFromTargetE-UTRANnode-Item
+
+DataForwardingInfoFromTargetE-UTRANnode-Item ::= SEQUENCE {
+ dlForwardingUPTNLInformation UPTransportLayerInformation,
+ qosFlowsToBeForwarded-List QoSFlowsToBeForwarded-List,
+ iE-Extension ProtocolExtensionContainer { { DataForwardingInfoFromTargetE-UTRANnode-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DataForwardingInfoFromTargetE-UTRANnode-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+QoSFlowsToBeForwarded-List ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF QoSFlowsToBeForwarded-Item
+QoSFlowsToBeForwarded-Item ::= SEQUENCE {
+ qosFlowIdentifier QoSFlowIdentifier,
+ iE-Extension ProtocolExtensionContainer { { QoSFlowsToBeForwarded-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+QoSFlowsToBeForwarded-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
DataForwardingInfoFromTargetNGRANnode ::= SEQUENCE {
@@ -958,7 +1573,9 @@ QoSFLowsToBeForwarded-Item ::= SEQUENCE {
}
QoSFLowsToBeForwarded-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-{ ID id-ULForwardingProposal CRITICALITY ignore EXTENSION ULForwardingProposal PRESENCE optional },
+{ ID id-ULForwardingProposal CRITICALITY ignore EXTENSION ULForwardingProposal PRESENCE optional }|
+{ ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}|
+{ ID id-SourceNodeDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -1027,6 +1644,8 @@ DesiredActNotificationLevel ::= ENUMERATED {none, qos-flow, pdu-session, ue-leve
DefaultDRB-Allowed ::= ENUMERATED {true, false, ...}
+DirectForwardingPathAvailability ::= ENUMERATED {direct-path-available, ...}
+
DLCountChoice ::= CHOICE {
count12bits COUNT-PDCP-SN12,
@@ -1044,12 +1663,40 @@ DLForwarding ::= ENUMERATED {dl-forwarding-proposed, ...}
DL-GBR-PRB-usage::= INTEGER (0..100)
+DL-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
DL-non-GBR-PRB-usage::= INTEGER (0..100)
+DL-non-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
+DLF1Terminating-BHInfo ::= SEQUENCE {
+ egressBAPRoutingID BAPRoutingID,
+ egressBHRLCCHID BHRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { DLF1Terminating-BHInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DLF1Terminating-BHInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DLNonF1Terminating-BHInfo ::= SEQUENCE {
+ ingressBAPRoutingID BAPRoutingID,
+ ingressBHRLCCHID BHRLCChannelID,
+ priorhopBAPAddress BAPAddress,
+ iabqosMappingInformation IAB-QoS-Mapping-Information,
+ iE-Extensions ProtocolExtensionContainer { { DLNonF1Terminating-BHInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DLNonF1Terminating-BHInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
DL-Total-PRB-usage::= INTEGER (0..100)
+DL-Total-PRB-usage-for-MIMO::= INTEGER (0..100)
DRB-ID ::= INTEGER (1..32, ...)
@@ -1165,11 +1812,40 @@ DRBToQoSFlowMapping-Item ::= SEQUENCE {
}
DRBToQoSFlowMapping-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- { ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional },
+ { ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional },
...
}
+DUF-Slot-Config-List ::= SEQUENCE (SIZE(1..maxnoofDUFSlots)) OF DUF-Slot-Config-Item
+
+
+DUF-Slot-Config-Item ::= CHOICE {
+ explicitFormat ExplicitFormat,
+ implicitFormat ImplicitFormat,
+ choice-extension ProtocolIE-Single-Container { { DUF-Slot-Config-Item-ExtIEs} }
+}
+
+DUF-Slot-Config-Item-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+
+DUFSlotformatIndex ::= INTEGER(0..254)
+
+DUFTransmissionPeriodicity ::= ENUMERATED { ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms5, ms10, ...}
+
+
+DU-RX-MT-RX ::= ENUMERATED {supported, not-supported, supported-FDM-required, ...}
+
+DU-TX-MT-TX ::= ENUMERATED {supported, not-supported, supported-FDM-required, ...}
+
+DU-RX-MT-TX ::= ENUMERATED {supported, not-supported, supported-FDM-required, ...}
+
+DU-TX-MT-RX ::= ENUMERATED {supported, not-supported, supported-FDM-required, ...}
+
+
+
DuplicationActivation ::= ENUMERATED {active, inactive, ...}
@@ -1197,6 +1873,8 @@ Dynamic5QIDescriptor-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-- E
+EarlyMeasurement ::= ENUMERATED {true, ...}
+
E-RAB-ID ::= INTEGER (0..15, ...)
@@ -1225,6 +1903,32 @@ E-UTRAFrequencyBandIndicator ::= INTEGER (1..256, ...)
E-UTRAMultibandInfoList ::= SEQUENCE (SIZE(1..maxnoofEUTRABands)) OF E-UTRAFrequencyBandIndicator
+EUTRAPagingeDRXInformation ::= SEQUENCE {
+ eutrapaging-eDRX-Cycle EUTRAPaging-eDRX-Cycle,
+ eutrapaging-Time-Window EUTRAPaging-Time-Window OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAPagingeDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EUTRAPagingeDRXInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EUTRAPaging-eDRX-Cycle ::= ENUMERATED {
+ hfhalf, hf1, hf2, hf4, hf6,
+ hf8, hf10, hf12, hf14, hf16,
+ hf32, hf64, hf128, hf256,
+ ...
+}
+
+
+EUTRAPaging-Time-Window ::= ENUMERATED {
+ s1, s2, s3, s4, s5,
+ s6, s7, s8, s9, s10,
+ s11, s12, s13, s14, s15, s16,
+ ...
+}
+
E-UTRAPCI ::= INTEGER (0..503, ...)
@@ -1300,6 +2004,29 @@ EventL1-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
MeasurementThresholdL1LoggedMDT ::= CHOICE {
threshold-RSRP Threshold-RSRP,
threshold-RSRQ Threshold-RSRQ,
+ ...,
+ choice-extension ProtocolIE-Single-Container { {MeasurementThresholdL1LoggedMDT-ExtIEs} }
+}
+
+MeasurementThresholdL1LoggedMDT-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+ExcessPacketDelayThresholdConfiguration ::= SEQUENCE (SIZE(1..maxnoofThresholdsForExcessPacketDelay)) OF ExcessPacketDelayThresholdItem
+
+ExcessPacketDelayThresholdItem ::= SEQUENCE {
+ fiveQI FiveQI,
+ excessPacketDelayThresholdValue ExcessPacketDelayThresholdValue,
+ iE-Extensions ProtocolExtensionContainer { { ExcessPacketDelayThresholdItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+ExcessPacketDelayThresholdItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ExcessPacketDelayThresholdValue ::= ENUMERATED {
+ ms0dot25, ms0dot5, ms1, ms2, ms4, ms5, ms10, ms20, ms30, ms40, ms50, ms60, ms70, ms80, ms90, ms100, ms150, ms300, ms500,
...
}
@@ -1326,7 +2053,7 @@ ExpectedUEActivityBehaviour-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
ExpectedUEBehaviour ::= SEQUENCE {
expectedUEActivityBehaviour ExpectedUEActivityBehaviour OPTIONAL,
- expectedHOInterval ExpectedHOInterval OPTIONAL,
+ expectedHOInterval ExpectedHOInterval OPTIONAL,
expectedUEMobility ExpectedUEMobility OPTIONAL,
expectedUEMovingTrajectory ExpectedUEMovingTrajectory OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {ExpectedUEBehaviour-ExtIEs} } OPTIONAL,
@@ -1362,6 +2089,19 @@ SourceOfUEActivityBehaviourInformation ::= ENUMERATED {
...
}
+ExplicitFormat ::= SEQUENCE {
+ permutation Permutation,
+ noofDownlinkSymbols INTEGER(0..14) OPTIONAL,
+ noofUplinkSymbols INTEGER(0..14) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ExplicitFormat-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ExplicitFormat-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
ExtendedRATRestrictionInformation ::= SEQUENCE {
primaryRATRestriction BIT STRING (SIZE(8, ...)),
secondaryRATRestriction BIT STRING (SIZE(8, ...)),
@@ -1374,7 +2114,7 @@ ExtendedRATRestrictionInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
-ExtendedPacketDelayBudget ::= INTEGER (0..65535, ...)
+ExtendedPacketDelayBudget ::= INTEGER (0..65535, ..., 65536..109999)
ExtendedSliceSupportList ::= SEQUENCE (SIZE(1..maxnoofExtSliceItems)) OF S-NSSAI
@@ -1399,7 +2139,7 @@ GTPTLAs ::= SEQUENCE (SIZE(1.. maxnoofGTPTLAs)) OF GTPTLA-Item
GTPTLA-Item ::= SEQUENCE {
gTPTransportLayerAddresses TransportLayerAddress,
- iE-Extensions ProtocolExtensionContainer { { GTPTLA-Item-ExtIEs } } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { GTPTLA-Item-ExtIEs } } OPTIONAL,
...
}
@@ -1409,11 +2149,163 @@ GTPTLA-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-- F
+F1CTrafficContainer ::= OCTET STRING
+
+F1-terminatingIAB-donorIndicator ::= ENUMERATED {true, ...}
+
+F1-TerminatingTopologyBHInformation ::= SEQUENCE {
+ f1TerminatingBHInformation-List F1TerminatingBHInformation-List,
+ iE-Extensions ProtocolExtensionContainer { {F1-TerminatingTopologyBHInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+F1-TerminatingTopologyBHInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+F1TerminatingBHInformation-List ::= SEQUENCE (SIZE(1..maxnoofBHInfo)) OF F1TerminatingBHInformation-Item
+
+F1TerminatingBHInformation-Item ::= SEQUENCE {
+ bHInfoIndex BHInfoIndex,
+ dLTNLAddress IABTNLAddress,
+ dlF1TerminatingBHInfo DLF1Terminating-BHInfo OPTIONAL,
+ ulF1TerminatingBHInfo ULF1Terminating-BHInfo OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { { F1TerminatingBHInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+F1TerminatingBHInformation-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
FiveGCMobilityRestrictionListContainer ::= OCTET STRING
-- This octets of the OCTET STRING contain the Mobility Restriction List IE as specified in TS 38.413 [5]. --
+FiveGProSeAuthorized ::= SEQUENCE {
+ fiveGproSeDirectDiscovery FiveGProSeDirectDiscovery OPTIONAL,
+ fiveGproSeDirectCommunication FiveGProSeDirectCommunication OPTIONAL,
+ fiveGnrProSeLayer2UEtoNetworkRelay FiveGProSeLayer2UEtoNetworkRelay OPTIONAL,
+ fiveGnrProSeLayer3UEtoNetworkRelay FiveGProSeLayer3UEtoNetworkRelay OPTIONAL,
+ fiveGnrProSeLayer2RemoteUE FiveGProSeLayer2RemoteUE OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {FiveGProSeAuthorized-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGProSeAuthorized-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveGProSeDirectDiscovery ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeDirectCommunication ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeLayer2UEtoNetworkRelay ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeLayer3UEtoNetworkRelay ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSeLayer2RemoteUE ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+FiveGProSePC5QoSParameters ::= SEQUENCE {
+ fiveGProSepc5QoSFlowList FiveGProSePC5QoSFlowList,
+ fiveGproSepc5LinkAggregateBitRates BitRate OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5QoSParameters-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGProSePC5QoSParameters-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveGProSePC5QoSFlowList::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF FiveGProSePC5QoSFlowItem
+
+FiveGProSePC5QoSFlowItem::= SEQUENCE {
+ fiveGproSepQI FiveQI,
+ fiveGproSepc5FlowBitRates FiveGProSePC5FlowBitRates OPTIONAL,
+ fiveGproSerange Range OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5QoSFlowItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGProSePC5QoSFlowItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveGProSePC5FlowBitRates ::= SEQUENCE {
+ fiveGproSeguaranteedFlowBitRate BitRate,
+ fiveGproSemaximumFlowBitRate BitRate,
+ iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5FlowBitRates-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGProSePC5FlowBitRates-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
FiveQI ::= INTEGER (0..255, ...)
+Flows-Mapped-To-DRB-List ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF Flows-Mapped-To-DRB-Item
+
+Flows-Mapped-To-DRB-Item ::= SEQUENCE {
+ qoSFlowIdentifier QoSFlowIdentifier,
+ qoSFlowLevelQoSParameters QoSFlowLevelQoSParameters,
+ qoSFlowMappingIndication QoSFlowMappingIndication OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Flows-Mapped-To-DRB-Item-ExtIEs} } OPTIONAL
+}
+
+Flows-Mapped-To-DRB-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FreqDomainHSNAconfiguration-List ::= SEQUENCE (SIZE(1.. maxnoofHSNASlots)) OF FreqDomainHSNAconfiguration-List-Item
+
+FreqDomainHSNAconfiguration-List-Item ::= SEQUENCE {
+ rBsetIndex INTEGER(0.. maxnoofRBsetsPerCell1, ...),
+ freqDomainSlotHSNAconfiguration-List FreqDomainSlotHSNAconfiguration-List,
+ iE-Extensions ProtocolExtensionContainer { { FreqDomainHSNAconfiguration-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FreqDomainHSNAconfiguration-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+FreqDomainSlotHSNAconfiguration-List ::= SEQUENCE (SIZE(1.. maxnoofHSNASlots)) OF FreqDomainSlotHSNAconfiguration-List-Item
+
+FreqDomainSlotHSNAconfiguration-List-Item ::= SEQUENCE {
+ slotIndex INTEGER(1..maxnoofHSNASlots),
+ hSNADownlink HSNADownlink OPTIONAL,
+ hSNAUplink HSNAUplink OPTIONAL,
+ hSNAFlexible HSNAFlexible OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { FreqDomainSlotHSNAconfiguration-List-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FreqDomainSlotHSNAconfiguration-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
FrequencyShift7p5khz ::= ENUMERATED {false, true, ...}
-- G
@@ -1447,6 +2339,24 @@ GlobalgNB-ID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+GNB-DU-Cell-Resource-Configuration ::= SEQUENCE {
+ subcarrierSpacing SSB-subcarrierSpacing,
+ dUFTransmissionPeriodicity DUFTransmissionPeriodicity OPTIONAL,
+ dUF-Slot-Config-List DUF-Slot-Config-List OPTIONAL,
+ hSNATransmissionPeriodicity HSNATransmissionPeriodicity,
+ hNSASlotConfigList HSNASlotConfigList OPTIONAL,
+ rBsetConfiguration RBsetConfiguration OPTIONAL,
+ freqDomainHSNAconfiguration-List FreqDomainHSNAconfiguration-List OPTIONAL,
+ nACellResourceConfigurationList NACellResourceConfigurationList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { GNB-DU-Cell-Resource-Configuration-ExtIEs } } OPTIONAL,
+ ...
+}
+
+GNB-DU-Cell-Resource-Configuration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
GNB-ID-Choice ::= CHOICE {
gnb-ID BIT STRING (SIZE(22..32)),
@@ -1465,9 +2375,12 @@ GNB-RadioResourceStatus ::= SEQUENCE {
}
GNB-RadioResourceStatus-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-SliceRadioResourceStatus-List CRITICALITY ignore EXTENSION SliceRadioResourceStatus-List PRESENCE optional }|
+ { ID id-MIMOPRBusageInformation CRITICALITY ignore EXTENSION MIMOPRBusageInformation PRESENCE optional },
...
}
+
GlobalCell-ID ::= SEQUENCE {
plmn-id PLMN-Identity,
cell-type Cell-Type-Choice,
@@ -1538,6 +2451,7 @@ GTPtunnelTransportLayerInformation ::= SEQUENCE {
}
GTPtunnelTransportLayerInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ {ID id-QoS-Mapping-Information CRITICALITY reject EXTENSION QoS-Mapping-Information PRESENCE optional },
...
}
@@ -1565,14 +2479,255 @@ HandoverReportType ::= ENUMERATED {
...
}
-Hysteresis ::= INTEGER (0..30)
+HashedUEIdentityIndexValue ::= BIT STRING (SIZE(13, ...))
+
+HSNASlotConfigList ::= SEQUENCE (SIZE(1..maxnoofHSNASlots)) OF HSNASlotConfigItem
+
+HSNASlotConfigItem ::= SEQUENCE {
+ hSNADownlink HSNADownlink OPTIONAL,
+ hSNAUplink HSNAUplink OPTIONAL,
+ hSNAFlexible HSNAFlexible OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { HSNASlotConfigItem-ExtIEs } } OPTIONAL,
+ ...
+}
+
+HSNASlotConfigItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+HSNADownlink ::= ENUMERATED { hard, soft, notavailable }
+
+HSNAFlexible ::= ENUMERATED { hard, soft, notavailable }
+
+HSNAUplink ::= ENUMERATED { hard, soft, notavailable }
+
+HSNATransmissionPeriodicity ::= ENUMERATED { ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms5, ms10, ms20, ms40, ms80, ms160, ...}
+
+
+Hysteresis ::= INTEGER (0..30)
-- I
+IABCellInformation::= SEQUENCE{
+ nRCGI NR-CGI,
+ iAB-DU-Cell-Resource-Configuration-Mode-Info IAB-DU-Cell-Resource-Configuration-Mode-Info OPTIONAL,
+ iAB-STC-Info IAB-STC-Info OPTIONAL,
+ rACH-Config-Common RACH-Config-Common OPTIONAL,
+ rACH-Config-Common-IAB RACH-Config-Common-IAB OPTIONAL,
+ cSI-RS-Configuration OCTET STRING OPTIONAL,
+ sR-Configuration OCTET STRING OPTIONAL,
+ pDCCH-ConfigSIB1 OCTET STRING OPTIONAL,
+ sCS-Common OCTET STRING OPTIONAL,
+ multiplexingInfo MultiplexingInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { IABCellInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+IABCellInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+IAB-DU-Cell-Resource-Configuration-Mode-Info ::= CHOICE {
+ tDD IAB-DU-Cell-Resource-Configuration-TDD-Info,
+ fDD IAB-DU-Cell-Resource-Configuration-FDD-Info,
+ choice-extension ProtocolIE-Single-Container { { IAB-DU-Cell-Resource-Configuration-Mode-Info-ExtIEs} }
+}
+
+IAB-DU-Cell-Resource-Configuration-Mode-Info-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+IAB-DU-Cell-Resource-Configuration-FDD-Info ::= SEQUENCE {
+ gNB-DU-Cell-Resource-Configuration-FDD-UL GNB-DU-Cell-Resource-Configuration,
+ gNB-DU-Cell-Resource-Configuration-FDD-DL GNB-DU-Cell-Resource-Configuration,
+ uLFrequencyInfo NRFrequencyInfo OPTIONAL,
+ dLFrequencyInfo NRFrequencyInfo OPTIONAL,
+ uLTransmissionBandwidth NRTransmissionBandwidth OPTIONAL,
+ dlTransmissionBandwidth NRTransmissionBandwidth OPTIONAL,
+ uLCarrierList NRCarrierList OPTIONAL,
+ dlCarrierList NRCarrierList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IAB-DU-Cell-Resource-Configuration-FDD-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-DU-Cell-Resource-Configuration-FDD-Info-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-DU-Cell-Resource-Configuration-TDD-Info ::= SEQUENCE {
+ gNB-DU-Cell-Resource-Configuration-TDD GNB-DU-Cell-Resource-Configuration,
+ frequencyInfo NRFrequencyInfo OPTIONAL,
+ transmissionBandwidth NRTransmissionBandwidth OPTIONAL,
+ carrierList NRCarrierList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IAB-DU-Cell-Resource-Configuration-TDD-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-DU-Cell-Resource-Configuration-TDD-Info-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-MT-Cell-List ::= SEQUENCE (SIZE(1..maxnoofServingCells)) OF IAB-MT-Cell-List-Item
+
+IAB-MT-Cell-List-Item ::= SEQUENCE {
+ nRCellIdentity NR-Cell-Identity,
+ dU-RX-MT-RX DU-RX-MT-RX,
+ dU-TX-MT-TX DU-TX-MT-TX,
+ dU-RX-MT-TX DU-RX-MT-TX,
+ dU-TX-MT-RX DU-TX-MT-RX,
+ iE-Extensions ProtocolExtensionContainer { { IAB-MT-Cell-List-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+IAB-MT-Cell-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
IABNodeIndication ::= ENUMERATED {true,...}
-ImmediateMDT-EUTRA ::= OCTET STRING
+IAB-QoS-Mapping-Information ::= SEQUENCE {
+ dscp BIT STRING (SIZE(6)) OPTIONAL,
+ flow-label BIT STRING (SIZE(20)) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IAB-QoS-Mapping-Information-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-QoS-Mapping-Information-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-STC-Info ::= SEQUENCE{
+ iAB-STC-Info-List IAB-STC-Info-List,
+ iE-Extensions ProtocolExtensionContainer { { IAB-STC-Info-ExtIEs } } OPTIONAL,
+ ...
+}
+
+IAB-STC-Info-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-STC-Info-List ::= SEQUENCE (SIZE(1..maxnoofIABSTCInfo)) OF IAB-STC-Info-Item
+
+IAB-STC-Info-Item::= SEQUENCE {
+ sSB-freqInfo SSB-freqInfo,
+ sSB-subcarrierSpacing SSB-subcarrierSpacing,
+ sSB-transmissionPeriodicity SSB-transmissionPeriodicity,
+ sSB-transmissionTimingOffset SSB-transmissionTimingOffset,
+ sSB-transmissionBitmap SSB-transmissionBitmap,
+ iE-Extensions ProtocolExtensionContainer { { IAB-STC-Info-Item-ExtIEs } } OPTIONAL,
+ ...
+}
+
+IAB-STC-Info-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IAB-TNL-Address-Request ::= SEQUENCE {
+ iABIPv4AddressesRequested IABTNLAddressesRequested,
+ iABIPv6RequestType IABIPv6RequestType,
+ iABTNLAddressToRemove-List IABTNLAddressToRemove-List,
+ iE-Extensions ProtocolExtensionContainer { {IAB-TNL-Address-Request-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-TNL-Address-Request-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IABIPv6RequestType ::= CHOICE {
+ iPv6Address IABTNLAddressesRequested,
+ iPv6Prefix IABTNLAddressesRequested,
+ choice-extension ProtocolIE-Single-Container { {IABIPv6RequestType-ExtIEs} }
+}
+
+IABIPv6RequestType-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+
+IAB-TNL-Address-Response ::= SEQUENCE {
+ iABAllocatedTNLAddress-List IABAllocatedTNLAddress-List,
+ iE-Extensions ProtocolExtensionContainer { {IAB-TNL-Address-Response-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IAB-TNL-Address-Response-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IABAllocatedTNLAddress-List ::= SEQUENCE (SIZE(1..maxnoofTLAsIAB)) OF IABAllocatedTNLAddress-Item
+
+IABAllocatedTNLAddress-Item ::= SEQUENCE {
+ iABTNLAddress IABTNLAddress,
+ iABTNLAddressUsage IABTNLAddressUsage OPTIONAL,
+ associatedDonorDUAddress BAPAddress OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IABAllocatedTNLAddress-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IABAllocatedTNLAddress-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IABTNLAddress ::= CHOICE {
+ iPv4Address BIT STRING (SIZE(32)),
+ iPv6Address BIT STRING (SIZE(128)),
+ iPv6Prefix BIT STRING (SIZE(64)),
+ choice-extension ProtocolIE-Single-Container { {IABTNLAddress-ExtIEs} }
+}
+
+IABTNLAddress-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+IABTNLAddressesRequested ::= SEQUENCE {
+ tNLAddressesOrPrefixesRequestedAllTraffic INTEGER (1..256) OPTIONAL,
+ tNLAddressesOrPrefixesRequestedF1-C INTEGER (1..256) OPTIONAL,
+ tNLAddressesOrPrefixesRequestedF1-U INTEGER (1..256) OPTIONAL,
+ tNLAddressesOrPrefixesRequestedNoNF1 INTEGER (1..256) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {IABTNLAddressesRequested-ExtIEs} } OPTIONAL
+}
+
+IABTNLAddressesRequested-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+IABTNLAddressToRemove-List ::= SEQUENCE (SIZE(1..maxnoofTLAsIAB)) OF IABTNLAddressToRemove-Item
+
+IABTNLAddressToRemove-Item ::= SEQUENCE {
+ iABTNLAddress IABTNLAddress,
+ iE-Extension ProtocolExtensionContainer { {IABTNLAddressToRemove-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IABTNLAddressToRemove-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IABTNLAddressUsage ::= ENUMERATED {
+ f1-c,
+ f1-u,
+ non-f1,
+ ...,
+ all
+}
+
+IABTNLAddressException ::= SEQUENCE (SIZE(1..maxnoofTLAsIAB)) OF IABTNLAddress-Item
+
+
+IABTNLAddress-Item ::= SEQUENCE {
+ iABTNLAddress IABTNLAddress,
+ iE-Extensions ProtocolExtensionContainer { { IABTNLAddress-ItemExtIEs } } OPTIONAL,
+ ...}
+
+IABTNLAddress-ItemExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
ImmediateMDT-NR ::= SEQUENCE {
@@ -1583,10 +2738,10 @@ ImmediateMDT-NR ::= SEQUENCE {
mDT-Location-Info MDT-Location-Info OPTIONAL,
m6Configuration M6Configuration OPTIONAL,
m7Configuration M7Configuration OPTIONAL,
- bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL,
+ bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL,
wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL,
- sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { ImmediateMDT-NR-ExtIEs} } OPTIONAL,
+ sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ImmediateMDT-NR-ExtIEs} } OPTIONAL,
...
}
@@ -1594,6 +2749,17 @@ ImmediateMDT-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+ImplicitFormat ::= SEQUENCE {
+ dUFSlotformatIndex DUFSlotformatIndex,
+ iE-Extensions ProtocolExtensionContainer { { ImplicitFormat-ExtIEs } } OPTIONAL,
+ ...
+}
+
+ImplicitFormat-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
InitiatingCondition-FailureIndication ::= CHOICE {
rRCReestab RRCReestab-initiated,
rRCSetup RRCSetup-initiated,
@@ -1619,8 +2785,6 @@ IntendedTDD-DL-ULConfiguration-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
InterfaceInstanceIndication ::= INTEGER (0..255, ...)
-InterfacesToTrace ::= BIT STRING { ng-c (0), x-nc (1), uu (2), f1-c (3), e1 (4)} (SIZE(8))
-
I-RNTI ::= CHOICE {
i-RNTI-full BIT STRING (SIZE(40)),
@@ -1632,6 +2796,12 @@ I-RNTI-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
+IABAuthorizationStatus ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
-- J
@@ -1642,6 +2812,53 @@ I-RNTI-ExtIEs XNAP-PROTOCOL-IES ::= {
-- L
+Local-NG-RAN-Node-Identifier ::= CHOICE {
+ full-I-RNTI-Profile-List Full-I-RNTI-Profile-List,
+ short-I-RNTI-Profile-List Short-I-RNTI-Profile-List,
+ choice-extension ProtocolIE-Single-Container { { Local-NG-RAN-Node-Identifier-ExtIEs} }
+}
+
+Local-NG-RAN-Node-Identifier-ExtIEs XNAP-PROTOCOL-IES ::= {
+ { ID id-Full-and-Short-I-RNTI-Profile-List CRITICALITY ignore TYPE Full-and-Short-I-RNTI-Profile-List PRESENCE mandatory},
+ ...
+}
+
+Full-and-Short-I-RNTI-Profile-List::= SEQUENCE {
+
+ full-I-RNTI-Profile-List Full-I-RNTI-Profile-List,
+ short-I-RNTI-Profile-List Short-I-RNTI-Profile-List,
+ iE-Extensions ProtocolExtensionContainer { { Full-and-Short-I-RNTI-Profile-List-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Full-and-Short-I-RNTI-Profile-List-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+Full-I-RNTI-Profile-List ::= CHOICE {
+ full-I-RNTI-Profile-0 BIT STRING (SIZE (21)),
+ full-I-RNTI-Profile-1 BIT STRING (SIZE (18)),
+ full-I-RNTI-Profile-2 BIT STRING (SIZE (15)),
+ full-I-RNTI-Profile-3 BIT STRING (SIZE (12)),
+ choice-extension ProtocolIE-Single-Container { { Full-I-RNTI-Profile-List-ExtIEs} }
+}
+
+Full-I-RNTI-Profile-List-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+Short-I-RNTI-Profile-List ::= CHOICE {
+ short-I-RNTI-Profile-0 BIT STRING (SIZE (8)),
+ short-I-RNTI-Profile-1 BIT STRING (SIZE (6)),
+ choice-extension ProtocolIE-Single-Container { { Short-I-RNTI-Profile-List-ExtIEs} }
+}
+
+Short-I-RNTI-Profile-List-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+
LastVisitedCell-Item ::= CHOICE {
nG-RAN-Cell LastVisitedNGRANCellInformation,
e-UTRAN-Cell LastVisitedEUTRANCellInformation,
@@ -1662,6 +2879,31 @@ LastVisitedNGRANCellInformation ::= OCTET STRING
LastVisitedUTRANCellInformation ::= OCTET STRING
+LastVisitedPSCellInformation ::= OCTET STRING
+
+LastVisitedPSCellList ::= SEQUENCE (SIZE(1..maxnoofPSCellsPerSN)) OF LastVisitedPSCellList-Item
+
+LastVisitedPSCellList-Item ::= SEQUENCE {
+ lastVisitedPSCellInformation LastVisitedPSCellInformation,
+ iE-Extensions ProtocolExtensionContainer { { LastVisitedPSCellList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LastVisitedPSCellList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SCGUEHistoryInformation ::= SEQUENCE {
+ lastVisitedPSCellList LastVisitedPSCellList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SCGUEHistoryInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SCGUEHistoryInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
LCID ::= INTEGER (1..32, ...)
@@ -1722,23 +2964,10 @@ LocationReportingInformation ::= SEQUENCE {
}
LocationReportingInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
+ { ID id-AdditionLocationInformation CRITICALITY ignore EXTENSION AdditionLocationInformation PRESENCE optional},
...
}
-
-LoggedMDT-EUTRA ::= SEQUENCE {
- loggingInterval LoggingInterval,
- loggingDuration LoggingDuration,
- bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL,
- wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {LoggedMDT-EUTRA-ExtIEs} } OPTIONAL,
- ...
-}
-
-LoggedMDT-EUTRA-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-...
-}
-
LoggedEventTriggeredConfig ::= SEQUENCE {
eventTypeTrigger EventTypeTrigger,
iE-Extensions ProtocolExtensionContainer { { LoggedEventTriggeredConfig-ExtIEs} } OPTIONAL,
@@ -1754,17 +2983,19 @@ LoggedMDT-NR ::= SEQUENCE {
loggingDuration LoggingDuration,
reportType ReportType,
bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL,
- wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL,
+ wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL,
sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL,
- areaScopeOfNeighCellsList AreaScopeOfNeighCellsList OPTIONAL, iE-Extensions ProtocolExtensionContainer { {LoggedMDT-NR-ExtIEs} } OPTIONAL,
+ areaScopeOfNeighCellsList AreaScopeOfNeighCellsList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {LoggedMDT-NR-ExtIEs} } OPTIONAL,
...
}
LoggedMDT-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ {ID id-earlyMeasurement CRITICALITY ignore EXTENSION EarlyMeasurement PRESENCE optional },
...
}
-LoggingInterval ::= ENUMERATED { ms320, ms640, ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440}
+LoggingInterval ::= ENUMERATED { ms320, ms640, ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440, infinity,...}
LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120}
@@ -1801,6 +3032,21 @@ LTEUESidelinkAggregateMaximumBitRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-- M
+MaxNrofRS-IndexesToReport::= INTEGER (1..64, ...)
+
+
+MDTAlignmentInfo ::= CHOICE {
+ s-BasedMDT S-BasedMDT,
+ choice-extension ProtocolIE-Single-Container { {MDTAlignmentInfo-ExtIEs} }
+}
+
+
+MDTAlignmentInfo-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+MeasCollectionEntityIPAddress ::= TransportLayerAddress
+
M1Configuration ::= SEQUENCE {
m1reportingTrigger M1ReportingTrigger,
@@ -1813,6 +3059,9 @@ M1Configuration ::= SEQUENCE {
}
M1Configuration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ {ID id-BeamMeasurementIndicationM1 CRITICALITY ignore EXTENSION BeamMeasurementIndicationM1 PRESENCE optional }|
+ {ID id-BeamMeasurementsReportConfiguration CRITICALITY ignore EXTENSION BeamMeasurementsReportConfiguration PRESENCE conditional },
+-- The above IE shall be present if the BeamMeasurementIndicationM1 IE is set to “true”
...
}
@@ -1825,6 +3074,7 @@ M1PeriodicReporting ::= SEQUENCE {
}
M1PeriodicReporting-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ {ID id-ExtendedReportIntervalMDT CRITICALITY ignore EXTENSION ExtendedReportIntervalMDT PRESENCE optional},
...
}
@@ -1856,9 +3106,12 @@ M4Configuration ::= SEQUENCE {
}
M4Configuration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M4ReportAmount CRITICALITY ignore EXTENSION M4ReportAmountMDT PRESENCE optional },
...
}
+M4ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
M5Configuration ::= SEQUENCE {
@@ -1869,9 +3122,12 @@ M5Configuration ::= SEQUENCE {
}
M5Configuration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M5ReportAmount CRITICALITY ignore EXTENSION M5ReportAmountMDT PRESENCE optional },
...
}
+M5ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
M6Configuration ::= SEQUENCE {
@@ -1882,9 +3138,13 @@ M6Configuration ::= SEQUENCE {
}
M6Configuration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M6ReportAmount CRITICALITY ignore EXTENSION M6ReportAmountMDT PRESENCE optional}|
+ { ID id-ExcessPacketDelayThresholdConfiguration CRITICALITY ignore EXTENSION ExcessPacketDelayThresholdConfiguration PRESENCE optional},
...
}
+M6ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
M6report-Interval ::= ENUMERATED { ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, ms20480, ms40960, min1, min6, min12, min30,... }
@@ -1896,9 +3156,12 @@ M7Configuration ::= SEQUENCE {
}
M7Configuration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-M7ReportAmount CRITICALITY ignore EXTENSION M7ReportAmountMDT PRESENCE optional },
...
}
+M7ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, infinity, ...}
+
M7period ::= INTEGER(1..60, ...)
@@ -1961,6 +3224,167 @@ MBSFNSubframeInfo-E-UTRA-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
...
}
+MBS-FrequencySelectionArea-Identity ::= OCTET STRING (SIZE(3))
+
+MBS-Area-Session-ID ::= INTEGER (0..65535, ...)
+
+MBS-MappingandDataForwardingRequestInfofromSource ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MBS-MappingandDataForwardingRequestInfofromSource-Item
+
+MBS-MappingandDataForwardingRequestInfofromSource-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ mBS-QoSFlow-List MBS-QoSFlow-List,
+ mRB-ProgressInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-MappingandDataForwardingRequestInfofromSource-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-MappingandDataForwardingRequestInfofromSource-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-DataForwarding-Indicator ::= ENUMERATED{mbs-only, ...}
+
+MBS-DataForwardingResponseInfofromTarget ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MBS-DataForwardingResponseInfofromTarget-Item
+
+MBS-DataForwardingResponseInfofromTarget-Item ::= SEQUENCE {
+ mRB-ID MRB-ID,
+ dlForwardingUPTNL UPTransportLayerInformation,
+ mRB-ProgressInformation MRB-ProgressInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-DataForwardingResponseInfofromTarget-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-DataForwardingResponseInfofromTarget-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-QoSFlow-List ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF QoSFlowIdentifier
+
+MBS-QoSFlowsToAdd-List ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF MBS-QoSFlowsToAdd-Item
+
+MBS-QoSFlowsToAdd-Item ::= SEQUENCE {
+ mBS-QosFlowIdentifier QoSFlowIdentifier,
+ mBS-QosFlowLevelQosParameters QoSFlowLevelQoSParameters,
+ iE-Extensions ProtocolExtensionContainer { { MBS-QoSFlowsToAdd-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-QoSFlowsToAdd-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ServiceArea ::= CHOICE {
+ locationindependent MBS-ServiceAreaInformation,
+ locationdependent MBS-ServiceAreaInformationList,
+ choice-extension ProtocolIE-Single-Container { {MBS-ServiceArea-ExtIEs} }
+}
+
+MBS-ServiceArea-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+MBS-ServiceAreaCell-List ::= SEQUENCE (SIZE(1.. maxnoofCellsforMBS)) OF NR-CGI
+
+MBS-ServiceAreaInformation ::= SEQUENCE {
+ mBS-ServiceAreaCell-List MBS-ServiceAreaCell-List OPTIONAL,
+ mBS-ServiceAreaTAI-List MBS-ServiceAreaTAI-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ServiceAreaInformationList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-ServiceAreaInformation-Item
+
+MBS-ServiceAreaInformation-Item ::= SEQUENCE { mBS-Area-Session-ID MBS-Area-Session-ID,
+ mBS-ServiceAreaInformation MBS-ServiceAreaInformation,
+ iE-Extensions ProtocolExtensionContainer { { MBS-ServiceAreaInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaInformation-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-ServiceAreaTAI-List ::= SEQUENCE (SIZE(1.. maxnoofTAIforMBS)) OF MBS-ServiceAreaTAI-Item
+
+MBS-ServiceAreaTAI-Item ::= SEQUENCE {
+ plmn-ID PLMN-Identity,
+ tAC TAC,
+ iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaTAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-ServiceAreaTAI-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBS-Session-ID ::= SEQUENCE {
+ tMGI TMGI,
+ nID NID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MBS-Session-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-Session-ID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MBS-SessionAssociatedInformation ::= SEQUENCE (SIZE(1..maxnoofAssociatedMBSSessions)) OF MBS-SessionAssociatedInformation-Item
+
+MBS-SessionAssociatedInformation-Item ::= SEQUENCE {
+ mBS-Session-ID MBS-Session-ID,
+ associated-QoSFlowInfo-List Associated-QoSFlowInfo-List,
+ iE-Extensions ProtocolExtensionContainer { { MBS-SessionAssociatedInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-SessionAssociatedInformation-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+MBS-SessionInformation-List ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBS-SessionInformation-Item
+
+MBS-SessionInformation-Item ::= SEQUENCE {
+ mBS-Session-ID MBS-Session-ID,
+ mBS-Area-Session-ID MBS-Area-Session-ID OPTIONAL,
+ active-MBS-SessioInformation Active-MBS-SessionInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-SessionInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-SessionInformation-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+MBS-SessionInformationResponse-List ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBS-SessionInformationResponse-Item
+
+MBS-SessionInformationResponse-Item ::= SEQUENCE {
+ mBS-Session-ID MBS-Session-ID,
+ mBS-DataForwardingResponseInfofromTarget MBS-DataForwardingResponseInfofromTarget OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MBS-SessionInformationResponse-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBS-SessionInformationResponse-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MRB-ID ::= INTEGER (1..512, ...)
+
+MRB-ProgressInformation ::= CHOICE {
+ pdcp-SN12 INTEGER (0..4095),
+ pdcp-SN18 INTEGER (0..262143),
+ choice-extension ProtocolIE-Single-Container { { MRB-ProgressInformation-ExtIEs} }
+}
+
+MRB-ProgressInformation-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
MDT-Activation ::= ENUMERATED {
immediate-MDT-only,
immediate-MDT-and-Trace,
@@ -1969,8 +3393,8 @@ MDT-Activation ::= ENUMERATED {
}
MDT-Configuration ::= SEQUENCE {
- mDT-Configuration-NR MDT-Configuration-NR OPTIONAL,
- mDT-Configuration-EUTRA MDT-Configuration-EUTRA OPTIONAL,
+ mDT-Configuration-NR MDT-Configuration-NR OPTIONAL,
+ mDT-Configuration-EUTRA MDT-Configuration-EUTRA OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL,
...
}
@@ -1982,7 +3406,7 @@ MDT-Configuration-NR ::= SEQUENCE {
mdt-Activation MDT-Activation,
areaScopeOfMDT-NR AreaScopeOfMDT-NR OPTIONAL,
mDTMode-NR MDTMode-NR,
- signallingBasedMDTPLMNList MDTPLMNList,
+ signallingBasedMDTPLMNList MDTPLMNList OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-NR-ExtIEs} } OPTIONAL,
...
}
@@ -2008,6 +3432,8 @@ MDT-Location-Info ::= BIT STRING (SIZE (8))
MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMN-Identity
+MDTPLMNModificationList ::= SEQUENCE (SIZE(0..maxnoofMDTPLMNs)) OF PLMN-Identity
+
MDTMode-NR ::= CHOICE {
immediateMDT ImmediateMDT-NR,
loggedMDT LoggedMDT-NR,
@@ -2021,18 +3447,10 @@ MDTMode-NR-ExtensionIE XNAP-PROTOCOL-IES ::= {
...
}
-MDTMode-EUTRA ::= CHOICE {
- immediateMDT ImmediateMDT-EUTRA,
- loggedMDT LoggedMDT-EUTRA,
- ...,
- mDTMode-EUTRA-Extension MDTMode-EUTRA-Extension
-}
+MDTMode-EUTRA ::= OCTET STRING
-MDTMode-EUTRA-Extension ::= ProtocolIE-Single-Container {{ MDTMode-EUTRA-ExtensionIE }}
-MDTMode-EUTRA-ExtensionIE XNAP-PROTOCOL-IES ::= {
- ...
-}
+MeasObjectContainer ::= OCTET STRING
MeasurementsToActivate ::= BIT STRING (SIZE (8))
@@ -2048,10 +3466,25 @@ MeasurementThresholdA2-ExtIEs XNAP-PROTOCOL-IES ::= {
}
-Measurement-ID ::= INTEGER (1..4095,...)
+Measurement-ID ::= INTEGER (1..4095,...)
-MobilityInformation ::= BIT STRING (SIZE(32))
+MIMOPRBusageInformation ::= SEQUENCE {
+dl-GBR-PRB-usage-for-MIMO DL-GBR-PRB-usage-for-MIMO,
+ ul-GBR-PRB-usage-for-MIMO UL-GBR-PRB-usage-for-MIMO,
+ dl-non-GBR-PRB-usage-for-MIMO DL-non-GBR-PRB-usage-for-MIMO,
+ ul-non-GBR-PRB-usage-for-MIMO UL-non-GBR-PRB-usage-for-MIMO,
+ dl-Total-PRB-usage-for-MIMO DL-Total-PRB-usage-for-MIMO,
+ ul-Total-PRB-usage-for-MIMO UL-Total-PRB-usage-for-MIMO,
+ iE-Extensions ProtocolExtensionContainer { { MIMOPRBusageInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MIMOPRBusageInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MobilityInformation ::= BIT STRING (SIZE(32))
MobilityParametersModificationRange ::= SEQUENCE {
handoverTriggerChangeLowerLimit INTEGER (-20..20),
@@ -2117,7 +3550,7 @@ RAT-RestrictionsItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
}
-RAT-RestrictionInformation ::= BIT STRING {e-UTRA (0),nR (1)} (SIZE(8, ...))
+RAT-RestrictionInformation ::= BIT STRING {e-UTRA (0),nR (1), nR-unlicensed (2), nR-LEO (3), nR-MEO (4), nR-GEO (5), nR-OTHERSAT (6)} (SIZE(8, ...))
ForbiddenAreaList ::= SEQUENCE (SIZE(1..maxnoofPLMNs)) OF ForbiddenAreaItem
@@ -2171,7 +3604,7 @@ E-UTRA-ResourceCoordinationInfo ::= SEQUENCE {
dl-coordination-info BIT STRING (SIZE (6..4400)) OPTIONAL,
nr-cell NR-CGI OPTIONAL,
e-utra-coordination-assistance-info E-UTRA-CoordinationAssistanceInfo OPTIONAL,
- iE-Extension ProtocolExtensionContainer { {E-UTRA-ResourceCoordinationInfo-ExtIEs} } OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {E-UTRA-ResourceCoordinationInfo-ExtIEs} } OPTIONAL,
...
}
@@ -2210,8 +3643,34 @@ MessageOversizeNotification-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
MaximumCellListSize ::= INTEGER(1..16384, ...)
+MultiplexingInfo ::= SEQUENCE{
+ iAB-MT-Cell-List IAB-MT-Cell-List,
+ iE-Extensions ProtocolExtensionContainer { {MultiplexingInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MultiplexingInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
-- N
+NACellResourceConfigurationList ::= SEQUENCE (SIZE(1..maxnoofHSNASlots)) OF NACellResourceConfiguration-Item
+
+NACellResourceConfiguration-Item ::= SEQUENCE {
+ nAdownlink ENUMERATED {true, false, ...} OPTIONAL,
+ nAuplink ENUMERATED {true, false, ...} OPTIONAL,
+ nAflexible ENUMERATED {true, false, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { NACellResourceConfiguration-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NACellResourceConfiguration-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
NBIoT-UL-DL-AlignmentOffset ::= ENUMERATED {
khz-7dot5,
khz0,
@@ -2299,6 +3758,20 @@ NeighbourInformation-NR-ModeTDDInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
+Neighbour-NG-RAN-Node-List ::= SEQUENCE (SIZE(0..maxnoofNeighbour-NG-RAN-Nodes)) OF Neighbour-NG-RAN-Node-Item
+
+Neighbour-NG-RAN-Node-Item ::= SEQUENCE {
+ globalNG-RANNodeID GlobalNG-RANNode-ID,
+ local-NG-RAN-Node-Identifier Local-NG-RAN-Node-Identifier,
+ ie-Extensions ProtocolExtensionContainer { {Neighbour-NG-RAN-Node-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Neighbour-NG-RAN-Node-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
NID ::= BIT STRING (SIZE(44))
@@ -2341,6 +3814,8 @@ NG-RAN-CellPCI-ExtIEs XNAP-PROTOCOL-IES ::= {
}
+NG-RANnode2SSBOffsetsModificationRange ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBOffsetModificationRange
+
NG-RANnodeUEXnAPID ::= INTEGER (0.. 4294967295)
@@ -2374,8 +3849,8 @@ NG-eNB-RadioResourceStatus ::= SEQUENCE {
uL-GBR-PRB-usage UL-GBR-PRB-usage,
dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage,
uL-non-GBR-PRB-usage UL-non-GBR-PRB-usage,
- dL-Total-PRB-usage DL-Total-PRB-usage,
- uL-Total-PRB-usage UL-Total-PRB-usage,
+ dL-Total-PRB-usage DL-Total-PRB-usage,
+ uL-Total-PRB-usage UL-Total-PRB-usage,
iE-Extensions ProtocolExtensionContainer { { NG-eNB-RadioResourceStatus-ExtIEs} } OPTIONAL,
...
}
@@ -2392,8 +3867,8 @@ UL-scheduling-PDCCH-CCE-usage ::= INTEGER (0.. 100)
TNLCapacityIndicator ::= SEQUENCE {
dLTNLOfferedCapacity OfferedCapacity,
- dLTNLAvailableCapacity AvailableCapacity,
- uLTNLOfferedCapacity OfferedCapacity,
+ dLTNLAvailableCapacity AvailableCapacity,
+ uLTNLOfferedCapacity OfferedCapacity,
uLTNLAvailableCapacity AvailableCapacity,
iE-Extensions ProtocolExtensionContainer { { TNLCapacityIndicator-ExtIEs} } OPTIONAL,
...
@@ -2403,6 +3878,45 @@ TNLCapacityIndicator-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+Non-F1-TerminatingTopologyBHInformation ::= SEQUENCE {
+ nonF1TerminatingBHInformation-List NonF1TerminatingBHInformation-List,
+ bAPControlPDURLCCH-List BAPControlPDURLCCH-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {Non-F1-TerminatingTopologyBHInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Non-F1-TerminatingTopologyBHInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NonF1TerminatingBHInformation-List ::= SEQUENCE (SIZE(1..maxnoofBHInfo)) OF NonF1TerminatingBHInformation-Item
+
+NonF1TerminatingBHInformation-Item ::= SEQUENCE {
+ bHInfoIndex BHInfoIndex,
+ dlNon-F1TerminatingBHInfo DLNonF1Terminating-BHInfo OPTIONAL,
+ ulNon-F1TerminatingBHInfo ULNonF1Terminating-BHInfo OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { { NonF1TerminatingBHInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NonF1TerminatingBHInformation-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+NonUPTraffic ::= CHOICE {
+ nonUPTrafficType NonUPTrafficType,
+ controlPlaneTrafficType ControlPlaneTrafficType,
+ choice-extension ProtocolIE-Single-Container { { NonUPTraffic-ExtIEs} }
+}
+
+NonUPTraffic-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+NonUPTrafficType ::= ENUMERATED {ueassociatedf1ap, nonueassociatedf1ap, nonf1, ...}
+
+NoPDUSessionIndication ::= ENUMERATED {true, ...}
NPN-Broadcast-Information ::= CHOICE {
snpn-Information NPN-Broadcast-Information-SNPN,
@@ -2588,6 +4102,45 @@ NR-CGI-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+NR-U-Channel-List ::= SEQUENCE (SIZE (1..maxnoofNR-UChannelIDs)) OF NR-U-Channel-Item
+
+NR-U-Channel-Item ::= SEQUENCE {
+ nR-U-ChannelID NR-U-ChannelID,
+ channelOccupancyTimePercentageDL ChannelOccupancyTimePercentage,
+ energyDetectionThreshold EnergyDetectionThreshold,
+ iE-Extension ProtocolExtensionContainer { {NR-U-Channel-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NR-U-Channel-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NR-U-ChannelID ::= INTEGER (1..maxnoofNR-UChannelIDs, ...)
+
+ChannelOccupancyTimePercentage ::= INTEGER (0..100,...)
+
+EnergyDetectionThreshold ::= INTEGER (-100..-50, ...)
+
+
+NR-U-ChannelInfo-List ::= SEQUENCE (SIZE (1..maxnoofNR-UChannelIDs)) OF NR-U-ChannelInfo-Item
+
+NR-U-ChannelInfo-Item ::= SEQUENCE {
+ nR-U-ChannelID NR-U-ChannelID,
+ nRARFCN NRARFCN,
+ bandwidth Bandwidth,
+ iE-Extension ProtocolExtensionContainer { {NR-U-ChannelInfo-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NR-U-ChannelInfo-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+Bandwidth ::= ENUMERATED{mhz10, mhz20, mhz40, mhz60, mhz80, ...}
+
+
NRCyclicPrefix ::= ENUMERATED {normal, extended, ...}
NRDL-ULTransmissionPeriodicity ::= ENUMERATED {ms0p5, ms0p625, ms1, ms1p25, ms2, ms2p5, ms3, ms4, ms5, ms10, ms20, ms40, ms60, ms80, ms100, ms120, ms140, ms160, ...}
@@ -2646,7 +4199,9 @@ NRModeInfoFDD ::= SEQUENCE {
NRModeInfoFDD-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-ULCarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional }|
- { ID id-DLCarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional },
+ { ID id-DLCarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional }|
+ { ID id-UL-GNB-DU-Cell-Resource-Configuration CRITICALITY ignore EXTENSION GNB-DU-Cell-Resource-Configuration PRESENCE optional }|
+ { ID id-DL-GNB-DU-Cell-Resource-Configuration CRITICALITY ignore EXTENSION GNB-DU-Cell-Resource-Configuration PRESENCE optional },
...
}
@@ -2661,16 +4216,62 @@ NRModeInfoTDD ::= SEQUENCE {
NRModeInfoTDD-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ID id-IntendedTDD-DL-ULConfiguration-NR CRITICALITY ignore EXTENSION IntendedTDD-DL-ULConfiguration-NR PRESENCE optional }|
{ID id-TDDULDLConfigurationCommonNR CRITICALITY ignore EXTENSION TDDULDLConfigurationCommonNR PRESENCE optional }|
- { ID id-CarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional },
+ { ID id-CarrierList CRITICALITY ignore EXTENSION NRCarrierList PRESENCE optional }|
+ {ID id-tdd-GNB-DU-Cell-Resource-Configuration CRITICALITY ignore EXTENSION GNB-DU-Cell-Resource-Configuration PRESENCE optional },
+ ...
+}
+
+
+NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ..., nrb33, nrb62, nrb124, nrb148, nrb248, nrb44, nrb58, nrb92, nrb119, nrb188, nrb242}
+
+
+NRPagingeDRXInformation ::= SEQUENCE {
+ nRPaging-eDRX-Cycle NRPaging-eDRX-Cycle,
+ nRPaging-Time-Window NRPaging-Time-Window OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {NRPagingeDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRPagingeDRXInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NRPaging-eDRX-Cycle ::= ENUMERATED {
+ hfquarter, hfhalf, hf1, hf2, hf4,
+ hf8, hf16,
+ hf32, hf64, hf128, hf256,
+ hf512, hf1024,
+ ...
+}
+
+
+NRPaging-Time-Window ::= ENUMERATED {
+ s1, s2, s3, s4, s5,
+ s6, s7, s8, s9, s10,
+ s11, s12, s13, s14, s15, s16,
+ ...,s17, s18, s19, s20, s21, s22,
+ s23, s24, s25, s26, s27, s28, s29,
+ s30, s31, s32
+}
+
+NRPagingeDRXInformationforRRCINACTIVE ::= SEQUENCE {
+ nRPaging-eDRX-Cycle-Inactive NRPaging-eDRX-Cycle-Inactive,
+ iE-Extensions ProtocolExtensionContainer { { NRPagingeDRXInformationforRRCINACTIVE-ExtIEs} } OPTIONAL,
...
}
+NRPagingeDRXInformationforRRCINACTIVE-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
-NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ...}
+NRPaging-eDRX-Cycle-Inactive ::= ENUMERATED {
+ hfquarter, hfhalf, hf1,
+ ...
+}
NRPCI ::= INTEGER (0..1007, ...)
-NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ...}
+NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ..., scs480, scs960}
NRTransmissionBandwidth ::= SEQUENCE {
@@ -2693,7 +4294,7 @@ NonGBRResources-Offered ::= ENUMERATED {true, ...}
NRV2XServicesAuthorized ::= SEQUENCE {
vehicleUE VehicleUE OPTIONAL,
- pedestrianUE PedestrianUE OPTIONAL,
+ pedestrianUE PedestrianUE OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {NRV2XServicesAuthorized-ExtIEs} } OPTIONAL,
...
}
@@ -2713,6 +4314,8 @@ NRUESidelinkAggregateMaximumBitRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+NSAG-ID ::= INTEGER (0..255, ...)
+
-- O
@@ -2750,6 +4353,17 @@ OffsetOfNbiotChannelNumberToEARFCN ::= ENUMERATED {
-- P
+PositioningInformation ::= SEQUENCE {
+ requestedSRSTransmissionCharacteristics RequestedSRSTransmissionCharacteristics,
+ routingID RoutingID,
+ nRPPaTransactionID INTEGER (0..32767),
+ iE-Extension ProtocolExtensionContainer { { PositioningInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PositioningInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
PacketDelayBudget ::= INTEGER (0..1023, ...)
@@ -2765,6 +4379,11 @@ PacketErrorRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+PagingCause ::= ENUMERATED {
+ voice,
+ ...
+}
+
PedestrianUE ::= ENUMERATED {
authorized,
not-authorized,
@@ -2775,6 +4394,16 @@ PER-Scalar ::= INTEGER (0..9, ...)
PER-Exponent ::= INTEGER (0..9, ...)
+PEIPSassistanceInformation ::= SEQUENCE {
+ cNsubgroupID CNsubgroupID,
+ iE-Extensions ProtocolExtensionContainer { {PEIPSassistanceInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PEIPSassistanceInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
PacketLossRate ::= INTEGER (0..1000, ...)
@@ -2790,33 +4419,6 @@ PagingDRX ::= ENUMERATED {
}
-PagingeDRXInformation ::= SEQUENCE {
- paging-eDRX-Cycle Paging-eDRX-Cycle,
- paging-Time-Window Paging-Time-Window OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {PagingeDRXInformation-ExtIEs} } OPTIONAL,
- ...
-}
-
-PagingeDRXInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- ...
-}
-
-Paging-eDRX-Cycle ::= ENUMERATED {
- hfhalf, hf1, hf2, hf4, hf6,
- hf8, hf10, hf12, hf14, hf16,
- hf32, hf64, hf128, hf256,
- ...
-}
-
-
-Paging-Time-Window ::= ENUMERATED {
- s1, s2, s3, s4, s5,
- s6, s7, s8, s9, s10,
- s11, s12, s13, s14, s15, s16,
- ...
-}
-
-
PagingPriority ::= ENUMERATED {
priolevel1,
priolevel2,
@@ -2844,6 +4446,7 @@ PC5QoSParameters-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
PC5QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF PC5QoSFlowItem
+-- The size of the PC5 QoS Flow List shall not exceed 2048 items.
PC5QoSFlowItem::= SEQUENCE {
pQI FiveQI,
@@ -2957,7 +4560,8 @@ PDUSession-List-withDataForwardingRequest-Item ::= SEQUENCE {
}
PDUSession-List-withDataForwardingRequest-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- ...
+ {ID id-Cause CRITICALITY ignore EXTENSION Cause PRESENCE optional},
+...
}
@@ -3040,7 +4644,7 @@ PDUSessionResourcesToBeSetup-Item ::= SEQUENCE {
s-NSSAI S-NSSAI,
pduSessionAMBR PDUSessionAggregateMaximumBitRate OPTIONAL,
uL-NG-U-TNLatUPF UPTransportLayerInformation,
- source-DL-NG-U-TNL-Information UPTransportLayerInformation OPTIONAL,
+ source-DL-NG-U-TNL-Information UPTransportLayerInformation OPTIONAL,
securityIndication SecurityIndication OPTIONAL,
pduSessionType PDUSessionType,
pduSessionNetworkInstance PDUSessionNetworkInstance OPTIONAL,
@@ -3051,12 +4655,13 @@ PDUSessionResourcesToBeSetup-Item ::= SEQUENCE {
}
PDUSessionResourcesToBeSetup-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-{ ID id-Additional-UL-NG-U-TNLatUPF-List CRITICALITY ignore EXTENSION Additional-UL-NG-U-TNLatUPF-List PRESENCE optional}|
-{ ID id-PDUSessionCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
-{ ID id-Redundant-UL-NG-U-TNLatUPF CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional}|
-{ ID id-Additional-Redundant-UL-NG-U-TNLatUPF-List CRITICALITY ignore EXTENSION Additional-UL-NG-U-TNLatUPF-List PRESENCE optional}|
-{ ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
-{ ID id-RedundantPDUSessionInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional},
+ { ID id-Additional-UL-NG-U-TNLatUPF-List CRITICALITY ignore EXTENSION Additional-UL-NG-U-TNLatUPF-List PRESENCE optional}|
+ { ID id-PDUSessionCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
+ { ID id-Redundant-UL-NG-U-TNLatUPF CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional}|
+ { ID id-Additional-Redundant-UL-NG-U-TNLatUPF-List CRITICALITY ignore EXTENSION Additional-UL-NG-U-TNLatUPF-List PRESENCE optional}|
+ { ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
+ { ID id-RedundantPDUSessionInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional}|
+ { ID id-MBS-SessionAssociatedInformation CRITICALITY ignore EXTENSION MBS-SessionAssociatedInformation PRESENCE optional},
...
}
@@ -3082,9 +4687,9 @@ PDUSessionResourceSetupInfo-SNterminated ::= SEQUENCE {
PDUSessionResourceSetupInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-SecurityResult CRITICALITY reject EXTENSION SecurityResult PRESENCE optional}|
{ ID id-PDUSessionCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
- {ID id-DefaultDRB-Allowed CRITICALITY ignore EXTENSION DefaultDRB-Allowed PRESENCE optional}|
+ { ID id-DefaultDRB-Allowed CRITICALITY ignore EXTENSION DefaultDRB-Allowed PRESENCE optional}|
{ ID id-SplitSessionIndicator CRITICALITY reject EXTENSION SplitSessionIndicator PRESENCE optional}|
- {ID id-NonGBRResources-Offered CRITICALITY ignore EXTENSION NonGBRResources-Offered PRESENCE optional}|
+ { ID id-NonGBRResources-Offered CRITICALITY ignore EXTENSION NonGBRResources-Offered PRESENCE optional}|
{ ID id-Redundant-UL-NG-U-TNLatUPF CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional}|
{ ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
{ ID id-RedundantPDUSessionInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional},
@@ -3139,7 +4744,7 @@ DRBsToBeSetupList-SetupResponse-SNterminated-Item ::= SEQUENCE {
dRB-QoS QoSFlowLevelQoSParameters,
pDCP-SNLength PDCPSNLength OPTIONAL,
rLC-Mode RLCMode,
- uL-Configuration ULConfiguration OPTIONAL,
+ uL-Configuration ULConfiguration OPTIONAL,
secondary-SN-UL-PDCP-UP-TNLInfo UPTransportParameters OPTIONAL,
duplicationActivation DuplicationActivation OPTIONAL,
qoSFlowsMappedtoDRB-SetupResponse-SNterminated QoSFlowsMappedtoDRB-SetupResponse-SNterminated,
@@ -3149,7 +4754,7 @@ DRBsToBeSetupList-SetupResponse-SNterminated-Item ::= SEQUENCE {
DRBsToBeSetupList-SetupResponse-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-Additional-PDCP-Duplication-TNL-List CRITICALITY ignore EXTENSION Additional-PDCP-Duplication-TNL-List PRESENCE optional}|
- { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional},
+ { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional},
...
}
@@ -3165,7 +4770,8 @@ QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item ::= SEQUENCE {
}
QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION QoSParaSetIndex PRESENCE optional },
+ { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION QoSParaSetIndex PRESENCE optional }|
+ { ID id-SourceDLForwardingIPAddress CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional},
...
}
@@ -3299,8 +4905,9 @@ PDUSessionResourceModificationInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION :
{ ID id-PDUSessionCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
{ID id-DefaultDRB-Allowed CRITICALITY ignore EXTENSION DefaultDRB-Allowed PRESENCE optional}|
{ID id-NonGBRResources-Offered CRITICALITY ignore EXTENSION NonGBRResources-Offered PRESENCE optional}|
- {ID id-Redundant-UL-NG-U-TNLatUPF CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional}|
- {ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional},
+ {ID id-Redundant-UL-NG-U-TNLatUPF CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional}|
+ {ID id-RedundantCommonNetworkInstance CRITICALITY ignore EXTENSION PDUSessionCommonNetworkInstance PRESENCE optional}|
+ {ID id-SecurityIndication CRITICALITY ignore EXTENSION SecurityIndication PRESENCE optional},
...
}
@@ -3359,8 +4966,9 @@ PDUSessionResourceModificationResponseInfo-SNterminated ::= SEQUENCE {
}
PDUSessionResourceModificationResponseInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- { ID id-DRB-IDs-takenintouse CRITICALITY reject EXTENSION DRB-List PRESENCE optional}|
- { ID id-Redundant-DL-NG-U-TNLatNG-RAN CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional},
+ { ID id-DRB-IDs-takenintouse CRITICALITY reject EXTENSION DRB-List PRESENCE optional}|
+ { ID id-Redundant-DL-NG-U-TNLatNG-RAN CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional}|
+ { ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional},
...
}
@@ -3378,10 +4986,10 @@ DRBsToBeModifiedList-ModificationResponse-SNterminated-Item ::= SEQUENCE {
DRBsToBeModifiedList-ModificationResponse-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-Additional-PDCP-Duplication-TNL-List CRITICALITY ignore EXTENSION Additional-PDCP-Duplication-TNL-List PRESENCE optional}|
- { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional}|
- { ID id-secondary-SN-UL-PDCP-UP-TNLInfo CRITICALITY ignore EXTENSION UPTransportParameters PRESENCE optional}|
- { ID id-pdcpDuplicationConfiguration CRITICALITY ignore EXTENSION PDCPDuplicationConfiguration PRESENCE optional}|
- { ID id-duplicationActivation CRITICALITY ignore EXTENSION DuplicationActivation PRESENCE optional},
+ { ID id-RLCDuplicationInformation CRITICALITY ignore EXTENSION RLCDuplicationInformation PRESENCE optional}|
+ { ID id-secondary-SN-UL-PDCP-UP-TNLInfo CRITICALITY ignore EXTENSION UPTransportParameters PRESENCE optional}|
+ { ID id-pdcpDuplicationConfiguration CRITICALITY ignore EXTENSION PDCPDuplicationConfiguration PRESENCE optional}|
+ { ID id-duplicationActivation CRITICALITY ignore EXTENSION DuplicationActivation PRESENCE optional},
...
}
@@ -3592,6 +5200,7 @@ QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item ::= SEQUENCE {
}
QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ {ID id-QosFlowMappingIndication CRITICALITY ignore EXTENSION QoSFlowMappingIndication PRESENCE optional},
...
}
@@ -3627,6 +5236,7 @@ QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item ::= SEQUENCE {
}
QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ {ID id-QosFlowMappingIndication CRITICALITY ignore EXTENSION QoSFlowMappingIndication PRESENCE optional},
...
}
@@ -3790,6 +5400,9 @@ PDUSessionNetworkInstance ::= INTEGER (1..256, ...)
PDUSessionCommonNetworkInstance ::= OCTET STRING
+PDUSession-PairID ::= INTEGER (0..255, ...)
+
+
Periodical ::= SEQUENCE {
iE-Extensions ProtocolExtensionContainer { { Periodical-ExtIEs} } OPTIONAL,
...
@@ -3799,9 +5412,23 @@ Periodical-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+Permutation ::= ENUMERATED {dfu, ufd, ...}
+
PLMN-Identity ::= OCTET STRING (SIZE(3))
+PLMNAreaBasedQMC ::= SEQUENCE {
+ plmnListforQMC PLMNListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {PLMNAreaBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PLMNAreaBasedQMC-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PLMNListforQMC ::= SEQUENCE (SIZE(1..maxnoofPLMNforQMC)) OF PLMN-Identity
+
PCIListForMDT ::= SEQUENCE (SIZE(1.. maxnoofNeighPCIforMDT)) OF NRPCI
@@ -3852,10 +5479,49 @@ ProtectedE-UTRAFootprintTimePattern-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+PrivacyIndicator ::= ENUMERATED {
+ immediate-MDT,
+ logged-MDT,
+ ...
+}
+
+
+PSCellChangeHistory ::= ENUMERATED {reporting-full-history, ...}
+
+PSCellHistoryInformationRetrieve ::= ENUMERATED {query, ...}
+
-- Q
+QMCConfigInfo ::= SEQUENCE {
+ uEAppLayerMeasInfoList UEAppLayerMeasInfoList,
+ iE-Extensions ProtocolExtensionContainer { {QMCConfigInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+QMCConfigInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UEAppLayerMeasInfoList ::= SEQUENCE (SIZE(1..maxnoofUEAppLayerMeas)) OF UEAppLayerMeasInfo-Item
+
+UEAppLayerMeasInfo-Item ::= SEQUENCE {
+ uEAppLayerMeasConfigInfo UEAppLayerMeasConfigInfo,
+ iE-Extensions ProtocolExtensionContainer { { UEAppLayerMeasInfo-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAppLayerMeasInfo-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+QOEMeasConfAppLayerID ::= INTEGER (0..15, ...)
+
+QOEMeasStatus ::= ENUMERATED {ongoing, ...}
+
+QOEReference ::= OCTET STRING (SIZE (6))
+
QoSCharacteristics ::= CHOICE {
non-dynamic NonDynamic5QIDescriptor,
dynamic Dynamic5QIDescriptor,
@@ -3874,15 +5540,15 @@ QoSFlowLevelQoSParameters ::= SEQUENCE {
qos-characteristics QoSCharacteristics,
allocationAndRetentionPrio AllocationandRetentionPriority,
gBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL,
- relectiveQoS ReflectiveQoSAttribute OPTIONAL,
+ reflectiveQoS ReflectiveQoSAttribute OPTIONAL,
additionalQoSflowInfo ENUMERATED {more-likely, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {QoSFlowLevelQoSParameters-ExtIEs} } OPTIONAL,
...
}
QoSFlowLevelQoSParameters-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- {ID id-QoSMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}|
- {ID id-QosMonitoringReportingFrequency CRITICALITY ignore EXTENSION QosMonitoringReportingFrequency PRESENCE optional}|
+ {ID id-QoSMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}|
+ {ID id-QosMonitoringReportingFrequency CRITICALITY ignore EXTENSION QosMonitoringReportingFrequency PRESENCE optional}|
{ID id-QoSMonitoringDisabled CRITICALITY ignore EXTENSION QoSMonitoringDisabled PRESENCE optional},
...
}
@@ -3938,10 +5604,10 @@ QoSFlowwithCause-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
QoS-Mapping-Information ::= SEQUENCE {
- dscp BIT STRING (SIZE(6)) OPTIONAL,
- flow-label BIT STRING (SIZE(20)) OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {QoS-Mapping-Information-ExtIEs} } OPTIONAL,
- ...
+ dscp BIT STRING (SIZE(6)) OPTIONAL,
+ flow-label BIT STRING (SIZE(20)) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {QoS-Mapping-Information-ExtIEs} } OPTIONAL,
+ ...
}
QoS-Mapping-Information-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
@@ -4002,6 +5668,10 @@ QosMonitoringReportingFrequency ::= INTEGER (1..1800, ...)
-- R
+RACH-Config-Common ::= OCTET STRING
+
+RACH-Config-Common-IAB ::= OCTET STRING
+
RACHReportInformation ::= SEQUENCE (SIZE(1.. maxnoofRACHReports)) OF RACHReportList-Item
RACHReportList-Item ::= SEQUENCE {
rACHReport RACHReportContainer,
@@ -4010,6 +5680,7 @@ RACHReportList-Item ::= SEQUENCE {
}
RACHReportList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-UEAssistantIdentifier CRITICALITY ignore EXTENSION NG-RANnodeUEXnAPID PRESENCE optional},
...
}
@@ -4018,7 +5689,7 @@ RACHReportContainer ::= OCTET STRING
RadioResourceStatus ::= CHOICE {
ng-eNB-RadioResourceStatus NG-eNB-RadioResourceStatus,
- gNB-RadioResourceStatus GNB-RadioResourceStatus,
+ gNB-RadioResourceStatus GNB-RadioResourceStatus,
choice-extension ProtocolIE-Single-Container { { RadioResourceStatus-ExtIEs} }
}
@@ -4086,6 +5757,21 @@ RANPagingFailure ::= ENUMERATED {
...
}
+RBsetConfiguration ::= SEQUENCE {
+ subcarrierSpacing SSB-subcarrierSpacing,
+ rBsetSize ENUMERATED {rb2, rb4, rb8, rb16, rb32, rb64},
+ numberofRBSets INTEGER(1.. maxnoofRBsetsPerCell),
+ iE-Extensions ProtocolExtensionContainer { { RBsetConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RBsetConfiguration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+Redcap-Bcast-Information ::= BIT STRING(SIZE(8))
+
RedundantQoSFlowIndicator ::= ENUMERATED {true, false}
RedundantPDUSessionInformation ::= SEQUENCE {
@@ -4095,16 +5781,32 @@ RedundantPDUSessionInformation ::= SEQUENCE {
}
RedundantPDUSessionInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-PDUSession-PairID CRITICALITY ignore EXTENSION PDUSession-PairID PRESENCE optional },
...
}
RSN ::= ENUMERATED {v1, v2, ...}
-ReferenceID ::= INTEGER (1..64, ...) -- This IE may need to be refined.
-
ReflectiveQoSAttribute ::= ENUMERATED {subject-to-reflective-QoS, ...}
+RequestedSRSTransmissionCharacteristics ::= OCTET STRING
+
+
+RoutingID ::= OCTET STRING
+
+ReplacingCells ::= SEQUENCE (SIZE(0.. maxnoofCellsinNG-RANnode)) OF ReplacingCells-Item
+
+ReplacingCells-Item ::= SEQUENCE {
+ globalNG-RANCell-ID GlobalCell-ID,
+ iE-Extensions ProtocolExtensionContainer { {ReplacingCells-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ReplacingCells-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, infinity, ...}
@@ -4113,24 +5815,39 @@ ReportArea ::= ENUMERATED {
...
}
+ReportConfigContainer ::= OCTET STRING
+
ReportIntervalMDT ::= ENUMERATED {ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60, ...}
ReportType ::= CHOICE {
periodical Periodical,
eventTriggered EventTriggered,
+ ...,
+ choice-extension ProtocolIE-Single-Container { {ReportType-ExtIEs} }
+}
+
+ReportType-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
-ReportCharacteristics ::= BIT STRING(SIZE(32))
+
+ExtendedReportIntervalMDT ::= ENUMERATED {
+ ms20480,
+ ms40960,
+ ...
+}
+
+
+ReportCharacteristics ::= BIT STRING(SIZE(32))
ReportingPeriodicity ::= ENUMERATED {
half-thousand-ms,
- one-thousand-ms,
+ one-thousand-ms,
two-thousand-ms,
five-thousand-ms,
ten-thousand-ms,
-...
+ ...
}
@@ -4296,8 +6013,8 @@ RRCConfigIndication ::= ENUMERATED {
}
RRCConnections::= SEQUENCE {
- noofRRCConnections NoofRRCConnections,
- availableRRCConnectionCapacityValue AvailableRRCConnectionCapacityValue,
+ noofRRCConnections NoofRRCConnections,
+ availableRRCConnectionCapacityValue AvailableRRCConnectionCapacityValue,
iE-Extensions ProtocolExtensionContainer { { RRCConnections-ExtIEs} } OPTIONAL,
...
}
@@ -4307,6 +6024,8 @@ RRCConnections-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
+RRCConnReestab-Indicator ::= ENUMERATED { reconfigurationFailure, handoverFailure, otherFailure, ...}
+
RRCReestab-initiated ::= SEQUENCE {
rRRCReestab-initiated-reporting RRCReestab-Initiated-Reporting,
iE-Extensions ProtocolExtensionContainer { { RRCReestab-initiated-ExtIEs} } OPTIONAL,
@@ -4337,6 +6056,7 @@ RRCReestab-Initiated-Reporting-wo-UERLFReport ::= SEQUENCE {
}
RRCReestab-Initiated-Reporting-wo-UERLFReport-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-RRCConnReestab-Indicator CRITICALITY ignore EXTENSION RRCConnReestab-Indicator PRESENCE optional },
...
}
@@ -4352,7 +6072,7 @@ RRCReestab-Initiated-Reporting-with-UERLFReport-ExtIEs XNAP-PROTOCOL-EXTENSION :
RRCSetup-initiated ::= SEQUENCE {
rRRCSetup-Initiated-Reporting RRCSetup-Initiated-Reporting,
- uERLFReportContainer UERLFReportContainer OPTIONAL,
+ uERLFReportContainer UERLFReportContainer OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { RRCSetup-initiated-ExtIEs} } OPTIONAL,
...
}
@@ -4389,6 +6109,27 @@ RRCResumeCause ::= ENUMERATED {
-- S
+SCGreconfigNotification ::= ENUMERATED {executed, ... , executed-deleted, deleted }
+
+S-NSSAIListQoE ::= SEQUENCE (SIZE(1..maxnoofSNSSAIforQMC)) OF S-NSSAI
+
+S-BasedMDT ::= SEQUENCE {
+ ng-ran-TraceID NG-RANTraceID,
+ iE-Extension ProtocolExtensionContainer { {S-BasedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+S-BasedMDT-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ServiceType ::= ENUMERATED{
+ qMC-for-streaming-service,
+ qMC-for-MTSI-service,
+ qMC-for-VR-service,
+ ...
+}
+
SecondarydataForwardingInfoFromTarget-Item::= SEQUENCE {
secondarydataForwardingInfoFromTarget DataForwardingInfoFromTargetNGRANnode,
iE-Extensions ProtocolExtensionContainer { { SecondarydataForwardingInfoFromTarget-Item-ExtIEs} } OPTIONAL,
@@ -4401,10 +6142,90 @@ SecondarydataForwardingInfoFromTarget-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
SecondarydataForwardingInfoFromTarget-List ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivityMinusOne)) OF SecondarydataForwardingInfoFromTarget-Item
+SCGActivationRequest ::= ENUMERATED {activate-scg, deactivate-scg, ...}
+
+SCGActivationStatus ::= ENUMERATED {scg-activated, scg-deactivated, ...}
+
SCGConfigurationQuery ::= ENUMERATED {true, ...}
SCGIndicator ::= ENUMERATED{released, ...}
+SCGFailureReportContainer ::= OCTET STRING
+
+SDTSupportRequest ::= SEQUENCE {
+ sdtindicator SDTIndicator,
+ sdtAssistantInfo SDTAssistantInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SDTSupportRequest-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SDTSupportRequest-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SDTIndicator ::= ENUMERATED {true, ...}
+
+SDTAssistantInfo ::= ENUMERATED {single-packet, multiple-packets, ...}
+
+SDT-Termination-Request ::= ENUMERATED {radio-link-problem, normal, ...}
+
+SDTPartialUEContextInfo ::= SEQUENCE {
+ dRBsToBeSetup SDT-DRBsToBeSetupList OPTIONAL,
+ sRBsToBeSetup SDT-SRBsToBeSetupList,
+ iE-Extensions ProtocolExtensionContainer { { SDTPartialUEContextInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+SDTPartialUEContextInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SDT-DRBsToBeSetupList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF SDT-DRBsToBeSetupList-Item
+
+SDT-DRBsToBeSetupList-Item ::= SEQUENCE {
+ drb-ID DRB-ID,
+ uL-TNLInfo UPTransportLayerInformation,
+ dRB-RLC-Bearer-Configuration OCTET STRING,
+ dRB-QoS QoSFlowLevelQoSParameters,
+ rLC-Mode RLCMode,
+ s-nssai S-NSSAI,
+ pDCP-SNLength PDCPSNLength,
+ flows-Mapped-To-DRB-List Flows-Mapped-To-DRB-List,
+ iE-Extensions ProtocolExtensionContainer { { SDT-DRBsToBeSetupList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SDT-DRBsToBeSetupList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SDT-SRBsToBeSetupList ::= SEQUENCE (SIZE(1..maxnoofSRBs)) OF SDT-SRBsToBeSetupList-Item
+
+SDT-SRBsToBeSetupList-Item ::= SEQUENCE {
+ srb-ID SRB-ID,
+ sRB-RLC-Bearer-Configuration OCTET STRING,
+ iE-Extensions ProtocolExtensionContainer { { SDT-SRBsToBeSetupList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SDT-SRBsToBeSetupList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SRB-ID ::= INTEGER (0..4, ...)
+
+SDTDataForwardingDRBList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF SDTDataForwardingDRBList-Item
+
+SDTDataForwardingDRBList-Item ::= SEQUENCE {
+ drb-ID DRB-ID,
+ dL-TNLInfo UPTransportLayerInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { SDTDataForwardingDRBList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SDTDataForwardingDRBList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SecondaryRATUsageInformation ::= SEQUENCE {
pDUSessionUsageReport PDUSessionUsageReport OPTIONAL,
qosFlowsUsageReportList QoSFlowsUsageReportList OPTIONAL,
@@ -4443,7 +6264,7 @@ SecurityResult-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
SensorMeasurementConfiguration ::= SEQUENCE {
sensorMeasConfig SensorMeasConfig,
- sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL,
+ sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { SensorMeasurementConfiguration-ExtIEs } } OPTIONAL,
...
}
@@ -4457,9 +6278,9 @@ SensorMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofSensorName)) OF SensorName
SensorMeasConfig::= ENUMERATED {setup,...}
SensorName ::= SEQUENCE {
- uncompensatedBarometricConfig ENUMERATED {true, ...} OPTIONAL,
- ueSpeedConfig ENUMERATED {true, ...} OPTIONAL,
- ueOrientationConfig ENUMERATED {true, ...} OPTIONAL,
+ uncompensatedBarometricConfig ENUMERATED {true, ...} OPTIONAL,
+ ueSpeedConfig ENUMERATED {true, ...} OPTIONAL,
+ ueOrientationConfig ENUMERATED {true, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {SensorNameConfig-ExtIEs} } OPTIONAL,
...
}
@@ -4593,6 +6414,7 @@ ServedCells-ToModify-E-UTRA-Item ::= SEQUENCE {
}
Served-cells-ToModify-E-UTRA-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-SFN-Offset CRITICALITY ignore EXTENSION SFN-Offset PRESENCE optional },
...
}
@@ -4620,7 +6442,11 @@ ServedCellInformation-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-NRCellPRACHConfig CRITICALITY ignore EXTENSION NRCellPRACHConfig PRESENCE optional }|
{ ID id-NPN-Broadcast-Information CRITICALITY reject EXTENSION NPN-Broadcast-Information PRESENCE optional }|
{ ID id-CSI-RSTransmissionIndication CRITICALITY ignore EXTENSION CSI-RSTransmissionIndication PRESENCE optional } |
- { ID id-SFN-Offset CRITICALITY ignore EXTENSION SFN-Offset PRESENCE optional },
+ { ID id-SFN-Offset CRITICALITY ignore EXTENSION SFN-Offset PRESENCE optional }|
+ { ID id-Supported-MBS-FSA-ID-List CRITICALITY ignore EXTENSION Supported-MBS-FSA-ID-List PRESENCE optional }|
+ { ID id-NR-U-ChannelInfo-List CRITICALITY ignore EXTENSION NR-U-ChannelInfo-List PRESENCE optional }|
+ { ID id-Additional-Measurement-Timing-Configuration-List CRITICALITY ignore EXTENSION Additional-Measurement-Timing-Configuration-List PRESENCE optional }|
+ { ID id-Redcap-Bcast-Information CRITICALITY ignore EXTENSION Redcap-Bcast-Information PRESENCE optional },
...
}
@@ -4646,6 +6472,7 @@ ServedCells-NR-Item ::= SEQUENCE {
}
ServedCells-NR-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-ServedCellSpecificInfoReq-NR CRITICALITY ignore EXTENSION ServedCellSpecificInfoReq-NR PRESENCE optional },
...
}
@@ -4655,7 +6482,7 @@ ServedCells-ToModify-NR ::= SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF Ser
ServedCells-ToModify-NR-Item ::= SEQUENCE {
old-NR-CGI NR-CGI,
served-cell-info-NR ServedCellInformation-NR,
- neighbour-info-NR NeighbourInformation-NR OPTIONAL,
+ neighbour-info-NR NeighbourInformation-NR OPTIONAL,
neighbour-info-E-UTRA NeighbourInformation-E-UTRA OPTIONAL,
deactivation-indication ENUMERATED {deactivated, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {Served-cells-ToModify-NR-Item-ExtIEs} } OPTIONAL,
@@ -4666,6 +6493,18 @@ Served-cells-ToModify-NR-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+ServedCellSpecificInfoReq-NR ::= SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF ServedCellSpecificInfoReq-NR-Item
+
+ServedCellSpecificInfoReq-NR-Item ::= SEQUENCE {
+ nRCGI NR-CGI,
+ additionalMTCListRequestIndicator ENUMERATED {additionalMTCListRequested, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ServedCellSpecificInfoReq-NR-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedCellSpecificInfoReq-NR-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
ServedCellsToUpdate-NR ::= SEQUENCE {
served-Cells-ToAdd-NR ServedCells-NR OPTIONAL,
@@ -4779,6 +6618,51 @@ SNSSAIAvailableCapacity-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+
+SliceRadioResourceStatus-List ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF SliceRadioResourceStatus-Item
+
+SliceRadioResourceStatus-Item ::= SEQUENCE {
+ plmn-Identity PLMN-Identity,
+ sNSSAIRadioResourceStatus-List SNSSAIRadioResourceStatus-List,
+ iE-Extensions ProtocolExtensionContainer { { SliceRadioResourceStatus-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SliceRadioResourceStatus-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SNSSAIRadioResourceStatus-List ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SNSSAIRadioResourceStatus-Item
+
+SNSSAIRadioResourceStatus-Item ::= SEQUENCE {
+ sNSSAI S-NSSAI,
+ slice-DL-GBR-PRB-Usage Slice-DL-GBR-PRB-Usage,
+ slice-UL-GBR-PRB-Usage Slice-UL-GBR-PRB-Usage,
+ slice-DL-non-GBR-PRB-Usage Slice-DL-non-GBR-PRB-Usage,
+ slice-UL-non-GBR-PRB-Usage Slice-UL-non-GBR-PRB-Usage,
+ slice-DL-Total-PRB-Allocation Slice-DL-Total-PRB-Allocation,
+ slice-UL-Total-PRB-Allocation Slice-UL-Total-PRB-Allocation,
+ iE-Extensions ProtocolExtensionContainer { { SNSSAIRadioResourceStatus-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SNSSAIRadioResourceStatus-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Slice-DL-GBR-PRB-Usage ::= INTEGER (0..100)
+
+Slice-UL-GBR-PRB-Usage ::= INTEGER (0..100)
+
+Slice-DL-non-GBR-PRB-Usage ::= INTEGER (0..100)
+
+Slice-UL-non-GBR-PRB-Usage ::= INTEGER (0..100)
+
+Slice-DL-Total-PRB-Allocation ::= INTEGER (0..100)
+
+Slice-UL-Total-PRB-Allocation ::= INTEGER (0..100)
+
+
SliceSupport-List ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF S-NSSAI
SliceToReport-List ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF SliceToReport-List-Item
@@ -4839,9 +6723,12 @@ S-NSSAI-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+SNMobilityInformation ::= BIT STRING (SIZE(32))
+
+
SNTriggered ::=ENUMERATED{
- true,
- ...
+ true,
+ ...
}
SpecialSubframeInfo-E-UTRA ::= SEQUENCE {
@@ -4885,8 +6772,8 @@ SplitSRBsTypes ::= ENUMERATED {srb1, srb2, srb1and2, ...}
SSBAreaCapacityValue-List ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBAreaCapacityValue-List-Item
SSBAreaCapacityValue-List-Item ::= SEQUENCE {
- sSBIndex INTEGER(0..63),
- ssbAreaCapacityValue INTEGER (0..100),
+ sSBIndex INTEGER(0..63),
+ ssbAreaCapacityValue INTEGER (0..100),
iE-Extensions ProtocolExtensionContainer { { SSBAreaCapacityValue-List-Item-ExtIEs} } OPTIONAL,
...
}
@@ -4901,9 +6788,9 @@ SSBAreaRadioResourceStatus-List ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBAr
SSBAreaRadioResourceStatus-List-Item ::= SEQUENCE {
sSBIndex INTEGER(0..63),
- ssb-Area-DL-GBR-PRB-usage DL-GBR-PRB-usage,
- ssb-Area-UL-GBR-PRB-usage UL-GBR-PRB-usage,
- ssb-Area-dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage,
+ ssb-Area-DL-GBR-PRB-usage DL-GBR-PRB-usage,
+ ssb-Area-UL-GBR-PRB-usage UL-GBR-PRB-usage,
+ ssb-Area-dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage,
ssb-Area-uL-non-GBR-PRB-usage UL-non-GBR-PRB-usage,
ssb-Area-dL-Total-PRB-usage DL-Total-PRB-usage,
ssb-Area-uL-Total-PRB-usage UL-Total-PRB-usage,
@@ -4918,6 +6805,21 @@ SSBAreaRadioResourceStatus-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+SSB-Coverage-Modification-List ::= SEQUENCE (SIZE (0..maxnoofSSBAreas)) OF SSB-Coverage-Modification-List-Item
+
+SSB-Coverage-Modification-List-Item ::= SEQUENCE {
+ sSBIndex INTEGER(0..63),
+ sSBCoverageState INTEGER (0..15, ...),
+ iE-Extension ProtocolExtensionContainer { { SSB-Coverage-Modification-List-Item-ExtIEs} } OPTIONAL,
+
+ ...
+}
+
+
+SSB-Coverage-Modification-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SSB-PositionsInBurst ::= CHOICE {
shortBitmap BIT STRING (SIZE (4)),
@@ -4930,6 +6832,46 @@ SSB-PositionsInBurst-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
+SSB-freqInfo ::= INTEGER (0..maxNRARFCN)
+
+SSB-subcarrierSpacing ::= ENUMERATED {kHz15, kHz30, kHz120, kHz240, spare3, spare2, spare1, ...}
+
+SSBOffsets-List ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBOffsets-Item
+
+SSBOffsets-Item ::= SEQUENCE {
+ nG-RANnode1SSBOffsets SSBOffsetInformation OPTIONAL,
+ nG-RANnode2ProposedSSBOffsets SSBOffsetInformation,
+ iE-Extensions ProtocolExtensionContainer { { SSBOffsets-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SSBOffsets-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SSBOffsetInformation ::= SEQUENCE {
+ sSBIndex INTEGER(0..63),
+ sSBTriggeringOffset MobilityParametersInformation,
+ iE-Extensions ProtocolExtensionContainer { { SSBOffsetInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SSBOffsetInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SSBOffsetModificationRange ::= SEQUENCE {
+ sSBIndex INTEGER(0..63),
+ sSBobilityParametersModificationRange MobilityParametersModificationRange,
+ iE-Extensions ProtocolExtensionContainer { { SSBOffsetModificationRange-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SSBOffsetModificationRange-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
SSBToReport-List ::= SEQUENCE (SIZE(1..maxnoofSSBAreas)) OF SSBToReport-List-Item
@@ -4944,6 +6886,33 @@ SSBToReport-List-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+SSB-transmissionPeriodicity ::= ENUMERATED {sf10, sf20, sf40, sf80, sf160, sf320, sf640, ...}
+
+SSB-transmissionTimingOffset ::= INTEGER (0..127, ...)
+
+SSB-transmissionBitmap ::= CHOICE {
+ shortBitmap BIT STRING (SIZE (4)),
+ mediumBitmap BIT STRING (SIZE (8)),
+ longBitmap BIT STRING (SIZE (64)),
+ choice-extension ProtocolIE-Single-Container { { SSB-transmisisonBitmap-ExtIEs} }
+}
+
+SSB-transmisisonBitmap-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+SuccessfulHOReportInformation ::= SEQUENCE (SIZE(1.. maxnoofSuccessfulHOReports)) OF SuccessfulHOReportList-Item
+SuccessfulHOReportList-Item ::= SEQUENCE {
+ successfulHOReport SuccessfulHOReportContainer,
+ iE-Extensions ProtocolExtensionContainer { { SuccessfulHOReportList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SuccessfulHOReportList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SuccessfulHOReportContainer ::= OCTET STRING
SUL-FrequencyBand ::= INTEGER (1..1024)
@@ -4962,6 +6931,7 @@ SUL-Information-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+Supported-MBS-FSA-ID-List ::= SEQUENCE (SIZE(1..maxnoofMBSFSAs)) OF MBS-FrequencySelectionArea-Identity
SupportedSULBandList ::= SEQUENCE (SIZE(1..maxnoofNRCellBands)) OF SupportedSULBandItem
@@ -4975,6 +6945,8 @@ SupportedSULBandItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+SurvivalTime ::= INTEGER (0..1920000, ...)
+
SymbolAllocation-in-Slot ::= CHOICE {
allDL SymbolAllocation-in-Slot-AllDL,
@@ -5016,9 +6988,12 @@ SymbolAllocation-in-Slot-BothDLandUL ::= SEQUENCE {
}
SymbolAllocation-in-Slot-BothDLandUL-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-permutation CRITICALITY ignore EXTENSION Permutation PRESENCE optional },
...
}
+
+
-- T
TABasedMDT ::= SEQUENCE {
@@ -5059,6 +7034,18 @@ TAIforMDT-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
TAC ::= OCTET STRING (SIZE (3))
+TAINSAGSupportList ::= SEQUENCE (SIZE(1..maxnoofNSAGs)) OF TAINSAGSupportItem
+
+TAINSAGSupportItem ::= SEQUENCE {
+ nSAG-ID NSAG-ID,
+ nSAGSliceSupportList ExtendedSliceSupportList,
+ iE-Extensions ProtocolExtensionContainer { {TAINSAGSupportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAINSAGSupportItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
TAISupport-List ::= SEQUENCE (SIZE(1..maxnoofsupportedTACs)) OF TAISupport-Item
@@ -5076,7 +7063,45 @@ TAISupport-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC
-TargetCellinEUTRAN ::= OCTET STRING -- This IE is to be encoded according to Global Cell ID in the Last Visited E-UTRAN Cell Information IE, as defined in in TS 36.413 [31]
+TABasedQMC ::= SEQUENCE {
+ tAListforQMC TAListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {TABasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TABasedQMC-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAC
+
+
+TAIBasedQMC ::= SEQUENCE {
+ tAIListforQMC TAIListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {TAIBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAIBasedQMC-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAIListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAI-Item
+
+
+TAI-Item ::= SEQUENCE {
+ tAC TAC,
+ pLMN-Identity PLMN-Identity,
+ iE-Extensions ProtocolExtensionContainer { {TAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAI-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+TargetCellinEUTRAN ::= OCTET STRING -- This IE is to be encoded according to Global Cell ID in the Last Visited E-UTRAN Cell Information IE, as defined in in TS 36.413 [31]
@@ -5105,9 +7130,22 @@ TargetCellList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
-Threshold-RSRQ ::= INTEGER(0..34)
-Threshold-RSRP ::= INTEGER(0..97)
+Threshold-RSRQ ::= INTEGER(0..127)
+Threshold-RSRP ::= INTEGER(0..127)
Threshold-SINR ::= INTEGER(0..127)
+
+TimeSynchronizationAssistanceInformation ::= SEQUENCE {
+ timeDistributionIndication ENUMERATED {enabled, disabled, ...},
+ uuTimeSynchronizationErrorBudget INTEGER (0..1000000, ...) OPTIONAL,
+ -- The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled”
+ ie-Extension ProtocolExtensionContainer { { TimeSynchronizationAssistanceInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TimeSynchronizationAssistanceInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
TimeToTrigger ::= ENUMERATED {ms0, ms40, ms64, ms80, ms100, ms128, ms160, ms256, ms320, ms480, ms512, ms640, ms1024, ms1280, ms2560, ms5120}
@@ -5121,6 +7159,10 @@ TimeToWait ::= ENUMERATED {
...
}
+
+TMGI ::= OCTET STRING (SIZE(6))
+
+
TNLConfigurationInfo ::= SEQUENCE {
extendedUPTransportLayerAddressesToAdd ExtTLAs OPTIONAL,
extendedUPTransportLayerAddressesToRemove ExtTLAs OPTIONAL,
@@ -5233,6 +7275,51 @@ Trace-Depth ::= ENUMERATED {
...
}
+TrafficIndex ::= INTEGER (1..1024, ...)
+
+TrafficProfile ::= CHOICE {
+ uPTraffic QoSFlowLevelQoSParameters,
+ nonUPTraffic NonUPTraffic,
+ choice-extension ProtocolIE-Single-Container { {TrafficProfile-ExtIEs} }
+}
+
+TrafficProfile-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+TrafficReleaseType ::= CHOICE {
+ fullRelease AllTrafficIndication,
+ partialRelease TrafficToBeRelease-List,
+ choice-extension ProtocolIE-Single-Container { {TrafficReleaseType-ExtIEs} }
+}
+
+TrafficReleaseType-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+
+TrafficToBeReleaseInformation ::= SEQUENCE {
+ releaseType TrafficReleaseType,
+ ie-Extensions ProtocolExtensionContainer { {TrafficToBeReleaseInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficToBeReleaseInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TrafficToBeRelease-List ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficToBeRelease-Item
+
+TrafficToBeRelease-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ bHInfoList BHInfoList OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {TrafficToBeRelease-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficToBeRelease-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
TSCTrafficCharacteristics ::= SEQUENCE {
tSCAssistanceInformationDownlink TSCAssistanceInformation OPTIONAL,
@@ -5253,6 +7340,7 @@ TSCAssistanceInformation ::= SEQUENCE {
}
TSCAssistanceInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-SurvivalTime CRITICALITY ignore EXTENSION SurvivalTime PRESENCE optional},
...
}
@@ -5279,6 +7367,26 @@ UEAggregateMaximumBitRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
}
+UEAppLayerMeasConfigInfo ::= SEQUENCE {
+ qOEReference QOEReference,
+ qOEMeasConfigAppLayerID QOEMeasConfAppLayerID OPTIONAL,
+ serviceType ServiceType,
+ qOEMeasStatus QOEMeasStatus OPTIONAL,
+ containerAppLayerMeasConfig ContainerAppLayerMeasConfig OPTIONAL,
+ mDTAlignmentInfo MDTAlignmentInfo OPTIONAL,
+ measCollectionEntityIPAddress MeasCollectionEntityIPAddress OPTIONAL,
+ areaScopeOfQMC AreaScopeOfQMC OPTIONAL,
+ s-NSSAIListQoE S-NSSAIListQoE OPTIONAL,
+ availableRVQoEMetrics AvailableRVQoEMetrics OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {UEAppLayerMeasConfigInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAppLayerMeasConfigInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
UEContextKeptIndicator ::= ENUMERATED {true, ...}
@@ -5336,7 +7444,12 @@ UEContextInfoRetrUECtxtResp-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
{ ID id-FiveGCMobilityRestrictionListContainer CRITICALITY ignore EXTENSION FiveGCMobilityRestrictionListContainer PRESENCE optional }|
{ ID id-NRUESidelinkAggregateMaximumBitRate CRITICALITY ignore EXTENSION NRUESidelinkAggregateMaximumBitRate PRESENCE optional }|
{ ID id-LTEUESidelinkAggregateMaximumBitRate CRITICALITY ignore EXTENSION LTEUESidelinkAggregateMaximumBitRate PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject EXTENSION UERadioCapabilityID PRESENCE optional },
+ { ID id-UERadioCapabilityID CRITICALITY reject EXTENSION UERadioCapabilityID PRESENCE optional }|
+ { ID id-MBS-SessionInformation-List CRITICALITY ignore EXTENSION MBS-SessionInformation-List PRESENCE optional }|
+ { ID id-NoPDUSessionIndication CRITICALITY ignore EXTENSION NoPDUSessionIndication PRESENCE optional }|
+ { ID id-FiveGProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore EXTENSION NRUESidelinkAggregateMaximumBitRate PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore EXTENSION UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-PositioningInformation CRITICALITY ignore EXTENSION PositioningInformation PRESENCE optional },
...
}
@@ -5363,6 +7476,30 @@ UEIdentityIndexValue-ExtIEs XNAP-PROTOCOL-IES ::= {
...
}
+UEIdentityIndexList-MBSGroupPaging ::= SEQUENCE (SIZE(1..maxnoofUEIDIndicesforMBSPaging)) OF UEIdentityIndexList-MBSGroupPaging-Item
+
+UEIdentityIndexList-MBSGroupPaging-Item ::= SEQUENCE {
+ ueIdentityIndexList-MBSGroupPagingValue UEIdentityIndexList-MBSGroupPagingValue,
+ pagingDRX UESpecificDRX OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {UEIdentityIndexList-MBSGroupPaging-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEIdentityIndexList-MBSGroupPaging-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+UEIdentityIndexList-MBSGroupPagingValue ::= CHOICE {
+ uEIdentityIndexValueMBSGroupPaging BIT STRING (SIZE(10)),
+ choice-extension ProtocolIE-Single-Container { {UEIdentityIndexValueMBSGroupPaging-ExtIEs} }
+}
+
+UEIdentityIndexValueMBSGroupPaging-ExtIEs XNAP-PROTOCOL-IES ::= {
+ ...
+}
+
+
UERadioCapabilityForPaging ::= SEQUENCE {
uERadioCapabilityForPagingOfNR UERadioCapabilityForPagingOfNR OPTIONAL,
uERadioCapabilityForPagingOfEUTRA UERadioCapabilityForPagingOfEUTRA OPTIONAL,
@@ -5396,15 +7533,48 @@ UERLFReportContainer ::= CHOICE {
choice-Extension ProtocolIE-Single-Container { {UERLFReportContainer-ExtIEs} }
}
UERLFReportContainer-ExtIEs XNAP-PROTOCOL-IES ::= {
+ {ID id-UERLFReportContainerLTEExtension CRITICALITY ignore TYPE UERLFReportContainerLTEExtension PRESENCE mandatory},
...
}
UERLFReportContainerLTE ::= OCTET STRING
--- This IE is a transparent container and shall be encoded as the RLF-Report-r9 IE contained in the UEInformationResponse message (TS 36.331 [14])
+-- This IE is a transparent container and includes the RLF-Report-r9 IE contained in the UEInformationResponse message as defined in TS 36.331 [14].
+
+
+UERLFReportContainerLTEExtension ::= SEQUENCE {
+ ueRLFReportContainerLTE UERLFReportContainerLTE,
+ ueRLFReportContainerLTEExtendBand UERLFReportContainerLTEExtendBand,
+ iE-Extensions ProtocolExtensionContainer { { UERLFReportContainerLTEExtension-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+UERLFReportContainerLTEExtendBand ::= OCTET STRING
+-- This IE is a transparent container and includes the rLF-Report-v9e0 contained in the UEInformationResponse message as defined in TS 36.331 [14].
+
+
+UERLFReportContainerLTEExtension-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
UERLFReportContainerNR ::= OCTET STRING
--- This IE is a transparent container and shall be encoded as the nr-RLF-Report-r16 IE contained in the UEInformationResponse message (TS 38.331 [10])
+-- This IE is a transparent container and includes the nr-RLF-Report-r16 IE contained in the UEInformationResponse message as defined in TS 38.331 [10].
+
+
+UESliceMaximumBitRateList ::= SEQUENCE (SIZE(1.. maxnoofSMBR)) OF UESliceMaximumBitRate-Item
+UESliceMaximumBitRate-Item ::= SEQUENCE {
+ s-NSSAI S-NSSAI,
+ dl-UE-Slice-MBR BitRate,
+ ul-UE-Slice-MBR BitRate,
+ iE-Extensions ProtocolExtensionContainer { { UESliceMaximumBitRate-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UESliceMaximumBitRate-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
UESecurityCapabilities ::= SEQUENCE {
nr-EncyptionAlgorithms BIT STRING {nea1-128(1),
@@ -5447,6 +7617,30 @@ ULConfiguration-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
UL-UE-Configuration::= ENUMERATED {no-data, shared, only, ...}
+ULF1Terminating-BHInfo ::= SEQUENCE {
+ ingressBAPRoutingID BAPRoutingID,
+ ingressBHRLCCHID BHRLCChannelID,
+ iE-Extensions ProtocolExtensionContainer { { ULF1Terminating-BHInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ULF1Terminating-BHInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ULNonF1Terminating-BHInfo ::= SEQUENCE {
+ egressBAPRoutingID BAPRoutingID,
+ egressBHRLCCHID BHRLCChannelID,
+ nexthopBAPAddress BAPAddress,
+ iE-Extensions ProtocolExtensionContainer { { ULNonF1Terminating-BHInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ULNonF1Terminating-BHInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
ULForwarding ::= ENUMERATED {ul-forwarding-proposed, ...}
ULForwardingProposal ::= ENUMERATED {ul-forwarding-proposed, ...}
@@ -5455,12 +7649,19 @@ ULForwardingProposal ::= ENUMERATED {ul-forwarding-proposed, ...}
UL-GBR-PRB-usage::= INTEGER (0..100)
+UL-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
UL-non-GBR-PRB-usage::= INTEGER (0..100)
+UL-non-GBR-PRB-usage-for-MIMO::= INTEGER (0..100)
+
UL-Total-PRB-usage::= INTEGER (0..100)
+UL-Total-PRB-usage-for-MIMO::= INTEGER (0..100)
+
+
UPTransportLayerInformation ::= CHOICE {
gtpTunnel GTPtunnelTransportLayerInformation,
choice-extension ProtocolIE-Single-Container { {UPTransportLayerInformation-ExtIEs} }
@@ -5481,8 +7682,7 @@ UPTransportParametersItem ::= SEQUENCE {
}
UPTransportParametersItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
- {ID id-QoS-Mapping-Information CRITICALITY reject EXTENSION QoS-Mapping-Information PRESENCE optional},
- ...
+ ...
}
@@ -5516,10 +7716,10 @@ VolumeTimedReport-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
-- W
WLANMeasurementConfiguration ::= SEQUENCE {
- wlanMeasConfig WLANMeasConfig,
- wlanMeasConfigNameList WLANMeasConfigNameList OPTIONAL,
- wlan-rssi ENUMERATED {true, ...} OPTIONAL,
- wlan-rtt ENUMERATED {true, ...} OPTIONAL,
+ wlanMeasConfig WLANMeasConfig,
+ wlanMeasConfigNameList WLANMeasConfigNameList OPTIONAL,
+ wlan-rssi ENUMERATED {true, ...} OPTIONAL,
+ wlan-rtt ENUMERATED {true, ...} OPTIONAL,
iE-Extensions ProtocolExtensionContainer { { WLANMeasurementConfiguration-ExtIEs } } OPTIONAL,
...
}
diff --git a/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn b/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn
index 90fd1b5b4f..ad01705010 100644
--- a/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn
+++ b/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.423 V16.7.0 (2021-10)
+-- 3GPP TS 38.423 V17.7.0 (2023-12)
-- 9.3.4 PDU Definitions
-- **************************************************************
--
@@ -35,6 +35,8 @@ IMPORTS
CellAssistanceInfo-NR,
CHOinformation-Req,
CHOinformation-Ack,
+ CHOinformation-AddReq,
+ CHOinformation-ModReq,
CHO-MRDC-EarlyDataForwarding,
CHO-MRDC-Indicator,
CPTransportLayerInformation,
@@ -67,6 +69,7 @@ IMPORTS
GUAMI,
InterfaceInstanceIndication,
I-RNTI,
+ Local-NG-RAN-Node-Identifier,
LocationInformationSNReporting,
LocationReportingInformation,
LowerLayerPresenceStatusChange,
@@ -82,6 +85,7 @@ IMPORTS
MDT-Configuration,
MDTPLMNList,
MobilityRestrictionList,
+ Neighbour-NG-RAN-Node-List,
NG-RAN-Cell-Identity,
NG-RANnodeUEXnAPID,
NR-CGI,
@@ -89,7 +93,7 @@ IMPORTS
NRUESidelinkAggregateMaximumBitRate,
NRV2XServicesAuthorized,
PagingDRX,
- PagingeDRXInformation,
+ EUTRAPagingeDRXInformation,
PagingPriority,
PartialListIndicator,
PLMN-Identity,
@@ -132,6 +136,7 @@ IMPORTS
RRCConfigIndication,
RRCResumeCause,
SCGConfigurationQuery,
+ SCGreconfigNotification,
SecurityIndication,
S-NG-RANnode-SecurityKey,
SpectrumSharingGroupID,
@@ -180,7 +185,70 @@ IMPORTS
IABNodeIndication,
SNTriggered,
SCGIndicator,
- UESpecificDRX
+ UESpecificDRX,
+ DirectForwardingPathAvailability,
+ TransportLayerAddress,
+ PrivacyIndicator,
+ URIaddress,
+ MBS-Session-ID,
+ UEIdentityIndexList-MBSGroupPaging,
+ MBS-SessionInformation-List,
+ MBS-SessionInformationResponse-List,
+ SuccessfulHOReportInformation,
+ PSCellHistoryInformationRetrieve,
+ SSBOffsets-List,
+ NG-RANnode2SSBOffsetsModificationRange,
+ Coverage-Modification-List,
+ SCGFailureReportContainer,
+ SNMobilityInformation,
+ PSCellChangeHistory,
+ CHOConfiguration,
+ SCGUEHistoryInformation,
+ F1CTrafficContainer,
+ NoPDUSessionIndication,
+ IAB-TNL-Address-Request,
+ IAB-TNL-Address-Response,
+ TrafficIndex,
+ TrafficProfile,
+ TrafficToBeReleaseInformation,
+ F1-TerminatingTopologyBHInformation,
+ Non-F1-TerminatingTopologyBHInformation,
+ BHInfoList,
+ IABTNLAddress,
+ IABCellInformation,
+ IABTNLAddressException,
+ TimeSynchronizationAssistanceInformation,
+ SCGActivationRequest,
+ SCGActivationStatus,
+ CPAInformationRequest,
+ CPAInformationAck,
+ CPCInformationRequired,
+ CPCInformationConfirm,
+ CPAInformationModReq,
+ CPAInformationModReqAck,
+ CPC-DataForwarding-Indicator,
+ CPCInformationUpdate,
+ CPACInformationModRequired,
+ QMCConfigInfo,
+ FiveGProSeAuthorized,
+ FiveGProSePC5QoSParameters,
+ ServedCellSpecificInfoReq-NR,
+ NRPagingeDRXInformation,
+ NRPagingeDRXInformationforRRCINACTIVE,
+ SDTSupportRequest,
+ SDT-Termination-Request,
+ SDTPartialUEContextInfo,
+ SDTDataForwardingDRBList,
+ PEIPSassistanceInformation,
+ UESliceMaximumBitRateList,
+ PagingCause,
+ MDTPLMNModificationList,
+ F1-terminatingIAB-donorIndicator,
+ SRB-ID,
+ AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated,
+ HashedUEIdentityIndexValue,
+ MBS-DataForwarding-Indicator,
+ IABAuthorizationStatus
FROM XnAP-IEs
@@ -244,8 +312,9 @@ FROM XnAP-Containers
id-NRV2XServicesAuthorized,
id-oldNG-RANnodeUEXnAPID,
id-OldtoNewNG-RANnodeResumeContainer,
+ id-PagingCause,
id-PagingDRX,
- id-PagingeDRXInformation,
+ id-EUTRAPagingeDRXInformation,
id-PagingPriority,
id-PartialListIndicator-EUTRA,
id-PartialListIndicator-NR,
@@ -265,6 +334,7 @@ FROM XnAP-Containers
id-ResetResponseTypeInfo,
id-RespondingNodeTypeConfigUpdateAck,
id-RRCResumeCause,
+ id-SCGreconfigNotification,
id-selectedPLMN,
id-ServedCellsToActivate,
id-servedCellsToUpdate-E-UTRA,
@@ -383,13 +453,104 @@ FROM XnAP-Containers
id-SCGIndicator,
id-UESpecificDRX,
id-PDUSessionExpectedUEActivityBehaviour,
+ id-DirectForwardingPathAvailability,
+ id-SourceNG-RAN-node-ID,
+ id-TargetNodeID,
+ id-ManagementBasedMDTPLMNList,
+ id-PrivacyIndicator,
+ id-TraceCollectionEntityIPAddress,
+ id-TraceCollectionEntityURI,
+ id-MBS-Session-ID,
+ id-UEIdentityIndexList-MBSGroupPaging,
+ id-MulticastRANPagingArea,
+ id-MBS-SessionInformation-List,
+ id-MBS-SessionInformationResponse-List,
+ id-SuccessfulHOReportInformation,
+ id-PSCellHistoryInformationRetrieve,
+ id-SSBOffsets-List,
+ id-NG-RANnode2SSBOffsetsModificationRange,
+ id-Coverage-Modification-List,
+ id-SourcePSCellCGI,
+ id-FailedPSCellCGI,
+ id-SCGFailureReportContainer,
+ id-SNMobilityInformation,
+ id-SourcePSCellID,
+ id-SuitablePSCellCGI,
+ id-PSCellChangeHistory,
+ id-CHOConfiguration,
+ id-SCGUEHistoryInformation,
+ id-F1CTrafficContainer,
+ id-NoPDUSessionIndication,
+ id-F1-Terminating-IAB-DonorUEXnAPID,
+ id-nonF1-Terminating-IAB-DonorUEXnAPID,
+ id-IAB-TNL-Address-Request,
+ id-IAB-TNL-Address-Response,
+ id-TrafficToBeAddedList,
+ id-TrafficToBeModifiedList,
+ id-TrafficToBeReleaseInformation,
+ id-TrafficAddedList,
+ id-TrafficModifiedList,
+ id-TrafficNotAddedList,
+ id-TrafficNotModifiedList,
+ id-TrafficRequiredToBeModifiedList,
+ id-TrafficRequiredModifiedList,
+ id-TrafficReleasedList,
+ id-IABTNLAddressToBeAdded,
+ id-IABTNLAddressToBeReleasedList,
+ id-BoundaryNodeCellsList,
+ id-ParentNodeCellsList,
+ id-IABTNLAddressException,
+ id-CHOinformation-AddReq,
+ id-CHOinformation-ModReq,
+ id-TimeSynchronizationAssistanceInformation,
+ id-SCGActivationRequest,
+ id-SCGActivationStatus,
+ id-CPAInformationRequest,
+ id-CPAInformationAck,
+ id-CPCInformationRequired,
+ id-CPCInformationConfirm,
+ id-CPAInformationModReq,
+ id-CPAInformationModReqAck,
+ id-CPC-DataForwarding-Indicator,
+ id-CPCInformationUpdate,
+ id-CPACInformationModRequired,
+ id-QMCConfigInfo,
+ id-Local-NG-RAN-Node-Identifier,
+ id-Neighbour-NG-RAN-Node-List,
+ id-Local-NG-RAN-Node-Identifier-Removal,
+ id-FiveGProSeAuthorized,
+ id-FiveGProSePC5QoSParameters,
+ id-FiveGProSeUEPC5AggregateMaximumBitRate,
+ id-ServedCellSpecificInfoReq-NR,
+ id-NRPagingeDRXInformation,
+ id-NRPagingeDRXInformationforRRCINACTIVE,
+ id-SDTSupportRequest,
+ id-SDT-SRB-between-NewNode-OldNode,
+ id-SDT-Termination-Request,
+ id-SDTPartialUEContextInfo,
+ id-SDTDataForwardingDRBList,
+ id-PEIPSassistanceInformation,
+ id-UESliceMaximumBitRateList,
+ id-S-NG-RANnodeUE-Slice-MBR,
+ id-ManagementBasedMDTPLMNModificationList,
+ id-F1-terminatingIAB-donorIndicator,
+ id-AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated,
+ id-HashedUEIdentityIndexValue,
+ id-MBS-DataForwarding-Indicator,
+ id-IABAuthorizationStatus,
maxnoofCellsinNG-RANnode,
maxnoofDRBs,
maxnoofPDUSessions,
- maxnoofQoSFlows
+ maxnoofQoSFlows,
+ maxnoofServedCellsIAB,
+ maxnoofTrafficIndexEntries,
+ maxnoofTLAsIAB,
+ maxnoofBAPControlPDURLCCHs,
+ maxnoofServingCells
+
FROM XnAP-Constants;
-- **************************************************************
@@ -404,22 +565,27 @@ HandoverRequest ::= SEQUENCE {
}
HandoverRequest-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-sourceNG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
- { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory}|
- { ID id-targetCellGlobalID CRITICALITY reject TYPE Target-CGI PRESENCE mandatory}|
- { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory}|
- { ID id-UEContextInfoHORequest CRITICALITY reject TYPE UEContextInfoHORequest PRESENCE mandatory}|
- { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
- { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }|
- { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE mandatory}|
- { ID id-UEContextRefAtSN-HORequest CRITICALITY ignore TYPE UEContextRefAtSN-HORequest PRESENCE optional }|
- { ID id-CHOinformation-Req CRITICALITY reject TYPE CHOinformation-Req PRESENCE optional }|
- { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
- { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }|
-{ ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
- { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional}|
- { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }|
- { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional},
+ { ID id-sourceNG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory}|
+ { ID id-targetCellGlobalID CRITICALITY reject TYPE Target-CGI PRESENCE mandatory}|
+ { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory}|
+ { ID id-UEContextInfoHORequest CRITICALITY reject TYPE UEContextInfoHORequest PRESENCE mandatory}|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
+ { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }|
+ { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE mandatory}|
+ { ID id-UEContextRefAtSN-HORequest CRITICALITY ignore TYPE UEContextRefAtSN-HORequest PRESENCE optional }|
+ { ID id-CHOinformation-Req CRITICALITY reject TYPE CHOinformation-Req PRESENCE optional }|
+ { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
+ { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }|
+ { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
+ { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional }|
+ { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }|
+ { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional }|
+ { ID id-NoPDUSessionIndication CRITICALITY ignore TYPE NoPDUSessionIndication PRESENCE optional }|
+ { ID id-TimeSynchronizationAssistanceInformation CRITICALITY ignore TYPE TimeSynchronizationAssistanceInformation PRESENCE optional }|
+ { ID id-QMCConfigInfo CRITICALITY ignore TYPE QMCConfigInfo PRESENCE optional }|
+ { ID id-FiveGProSeAuthorized CRITICALITY ignore TYPE FiveGProSeAuthorized PRESENCE optional }|
+ { ID id-FiveGProSePC5QoSParameters CRITICALITY ignore TYPE FiveGProSePC5QoSParameters PRESENCE optional },
...
}
@@ -443,7 +609,10 @@ UEContextInfoHORequest-ExtIEs XNAP-PROTOCOL-EXTENSION ::={
{ ID id-NRUESidelinkAggregateMaximumBitRate CRITICALITY ignore EXTENSION NRUESidelinkAggregateMaximumBitRate PRESENCE optional }|
{ ID id-LTEUESidelinkAggregateMaximumBitRate CRITICALITY ignore EXTENSION LTEUESidelinkAggregateMaximumBitRate PRESENCE optional }|
{ ID id-MDTPLMNList CRITICALITY ignore EXTENSION MDTPLMNList PRESENCE optional }|
- { ID id-UERadioCapabilityID CRITICALITY reject EXTENSION UERadioCapabilityID PRESENCE optional },
+ { ID id-UERadioCapabilityID CRITICALITY reject EXTENSION UERadioCapabilityID PRESENCE optional }|
+ { ID id-MBS-SessionInformation-List CRITICALITY ignore EXTENSION MBS-SessionInformation-List PRESENCE optional }|
+ { ID id-FiveGProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore EXTENSION NRUESidelinkAggregateMaximumBitRate PRESENCE optional }|
+ { ID id-UESliceMaximumBitRateList CRITICALITY ignore EXTENSION UESliceMaximumBitRateList PRESENCE optional },
...
}
@@ -484,7 +653,8 @@ HandoverRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
{ ID id-DRBs-transferred-to-MN CRITICALITY ignore TYPE DRB-List PRESENCE optional }|
{ ID id-DAPSResponseInfo-List CRITICALITY reject TYPE DAPSResponseInfo-List PRESENCE optional }|
- { ID id-CHOinformation-Ack CRITICALITY reject TYPE CHOinformation-Ack PRESENCE optional },
+ { ID id-CHOinformation-Ack CRITICALITY reject TYPE CHOinformation-Ack PRESENCE optional }|
+ { ID id-MBS-SessionInformationResponse-List CRITICALITY ignore TYPE MBS-SessionInformationResponse-List PRESENCE optional },
...
}
@@ -521,7 +691,9 @@ SNStatusTransfer ::= SEQUENCE {
SNStatusTransfer-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-sourceNG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-targetNG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
- { ID id-DRBsSubjectToStatusTransfer-List CRITICALITY ignore TYPE DRBsSubjectToStatusTransfer-List PRESENCE mandatory},
+ { ID id-DRBsSubjectToStatusTransfer-List CRITICALITY ignore TYPE DRBsSubjectToStatusTransfer-List PRESENCE mandatory}|
+ { ID id-CHOConfiguration CRITICALITY ignore TYPE CHOConfiguration PRESENCE optional}|
+ { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional},
...
}
@@ -658,16 +830,21 @@ RANPaging ::= SEQUENCE {
}
RANPaging-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-UEIdentityIndexValue CRITICALITY reject TYPE UEIdentityIndexValue PRESENCE mandatory}|
- { ID id-UERANPagingIdentity CRITICALITY ignore TYPE UERANPagingIdentity PRESENCE mandatory}|
- { ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory}|
- { ID id-RANPagingArea CRITICALITY reject TYPE RANPagingArea PRESENCE mandatory}|
- { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }|
- { ID id-AssistanceDataForRANPaging CRITICALITY ignore TYPE AssistanceDataForRANPaging PRESENCE optional }|
- { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }|
- { ID id-ExtendedUEIdentityIndexValue CRITICALITY ignore TYPE ExtendedUEIdentityIndexValue PRESENCE optional }|
- { ID id-PagingeDRXInformation CRITICALITY ignore TYPE PagingeDRXInformation PRESENCE optional }|
- { ID id-UESpecificDRX CRITICALITY ignore TYPE UESpecificDRX PRESENCE optional },
+ { ID id-UEIdentityIndexValue CRITICALITY reject TYPE UEIdentityIndexValue PRESENCE mandatory}|
+ { ID id-UERANPagingIdentity CRITICALITY ignore TYPE UERANPagingIdentity PRESENCE mandatory}|
+ { ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory}|
+ { ID id-RANPagingArea CRITICALITY reject TYPE RANPagingArea PRESENCE mandatory}|
+ { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }|
+ { ID id-AssistanceDataForRANPaging CRITICALITY ignore TYPE AssistanceDataForRANPaging PRESENCE optional }|
+ { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }|
+ { ID id-ExtendedUEIdentityIndexValue CRITICALITY ignore TYPE ExtendedUEIdentityIndexValue PRESENCE optional }|
+ { ID id-EUTRAPagingeDRXInformation CRITICALITY ignore TYPE EUTRAPagingeDRXInformation PRESENCE optional }|
+ { ID id-UESpecificDRX CRITICALITY ignore TYPE UESpecificDRX PRESENCE optional }|
+ { ID id-NRPagingeDRXInformation CRITICALITY ignore TYPE NRPagingeDRXInformation PRESENCE optional }|
+ { ID id-NRPagingeDRXInformationforRRCINACTIVE CRITICALITY ignore TYPE NRPagingeDRXInformationforRRCINACTIVE PRESENCE optional }|
+ { ID id-PagingCause CRITICALITY ignore TYPE PagingCause PRESENCE optional }|
+ { ID id-PEIPSassistanceInformation CRITICALITY ignore TYPE PEIPSassistanceInformation PRESENCE optional }|
+ { ID id-HashedUEIdentityIndexValue CRITICALITY ignore TYPE HashedUEIdentityIndexValue PRESENCE optional },
...
}
@@ -687,7 +864,8 @@ RetrieveUEContextRequest-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-UEContextID CRITICALITY reject TYPE UEContextID PRESENCE mandatory}|
{ ID id-MAC-I CRITICALITY reject TYPE MAC-I PRESENCE mandatory}|
{ ID id-new-NG-RAN-Cell-Identity CRITICALITY reject TYPE NG-RAN-Cell-Identity PRESENCE mandatory}|
- { ID id-RRCResumeCause CRITICALITY ignore TYPE RRCResumeCause PRESENCE optional },
+ { ID id-RRCResumeCause CRITICALITY ignore TYPE RRCResumeCause PRESENCE optional }|
+ { ID id-SDTSupportRequest CRITICALITY ignore TYPE SDTSupportRequest PRESENCE optional },
...
}
@@ -703,23 +881,49 @@ RetrieveUEContextResponse ::= SEQUENCE {
}
RetrieveUEContextResponse-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-newNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-newNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-oldNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory}|
+ { ID id-UEContextInfoRetrUECtxtResp CRITICALITY reject TYPE UEContextInfoRetrUECtxtResp PRESENCE mandatory}|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
+ { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }|
+ { ID id-LocationReportingInformation CRITICALITY ignore TYPE LocationReportingInformation PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }|
+ { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }|
+ { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
+ { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE optional }|
+ { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }|
+ { ID id-MDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
+ { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional }|
+ { ID id-UEContextRefAtSN-HORequest CRITICALITY ignore TYPE UEContextRefAtSN-HORequest PRESENCE optional }|
+ { ID id-TimeSynchronizationAssistanceInformation CRITICALITY ignore TYPE TimeSynchronizationAssistanceInformation PRESENCE optional }|
+ { ID id-QMCConfigInfo CRITICALITY ignore TYPE QMCConfigInfo PRESENCE optional }|
+ { ID id-FiveGProSeAuthorized CRITICALITY ignore TYPE FiveGProSeAuthorized PRESENCE optional }|
+ { ID id-FiveGProSePC5QoSParameters CRITICALITY ignore TYPE FiveGProSePC5QoSParameters PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- RETRIEVE UE CONTEXT CONFIRM
+--
+-- **************************************************************
+
+RetrieveUEContextConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RetrieveUEContextConfirm-IEs}},
+ ...
+}
+RetrieveUEContextConfirm-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-oldNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
- { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory}|
- { ID id-UEContextInfoRetrUECtxtResp CRITICALITY reject TYPE UEContextInfoRetrUECtxtResp PRESENCE mandatory}|
- { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
- { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }|
- { ID id-LocationReportingInformation CRITICALITY ignore TYPE LocationReportingInformation PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
- { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional}|
- { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional}|
- { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }|
- { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE optional}|
- { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }|
- { ID id-MDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional },
+ { ID id-newNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-UEContextKeptIndicator CRITICALITY ignore TYPE UEContextKeptIndicator PRESENCE optional }|
+ { ID id-SDT-Termination-Request CRITICALITY ignore TYPE SDT-Termination-Request PRESENCE optional },
...
}
+
+
-- **************************************************************
--
-- RETRIEVE UE CONTEXT FAILURE
@@ -760,7 +964,10 @@ XnUAddressIndication-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-oldNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-XnUAddressInfoperPDUSession-List CRITICALITY reject TYPE XnUAddressInfoperPDUSession-List PRESENCE mandatory}|
{ ID id-CHO-MRDC-Indicator CRITICALITY reject TYPE CHO-MRDC-Indicator PRESENCE optional }|
- { ID id-CHO-MRDC-EarlyDataForwarding CRITICALITY ignore TYPE CHO-MRDC-EarlyDataForwarding PRESENCE optional },
+ { ID id-CHO-MRDC-EarlyDataForwarding CRITICALITY ignore TYPE CHO-MRDC-EarlyDataForwarding PRESENCE optional }|
+ { ID id-CPC-DataForwarding-Indicator CRITICALITY reject TYPE CPC-DataForwarding-Indicator PRESENCE optional }|
+ { ID id-MBS-DataForwarding-Indicator CRITICALITY ignore TYPE MBS-DataForwarding-Indicator PRESENCE optional }|
+ { ID id-MBS-SessionInformationResponse-List CRITICALITY ignore TYPE MBS-SessionInformationResponse-List PRESENCE optional },
...
}
@@ -796,17 +1003,29 @@ SNodeAdditionRequest-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-PCellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE optional }|
{ ID id-DesiredActNotificationLevel CRITICALITY ignore TYPE DesiredActNotificationLevel PRESENCE optional }|
{ ID id-AvailableDRBIDs CRITICALITY reject TYPE DRB-List PRESENCE conditional}
- -- The IE shall be present if there is at least one PDUSessionResourceSetupInfo-SNterminated included --|
+ -- The IE shall be present if there is at least one PDUSessionResourceSetupInfo-SNterminated included --|
{ ID id-S-NG-RANnodeMaxIPDataRate-UL CRITICALITY reject TYPE BitRate PRESENCE optional }|
{ ID id-S-NG-RANnodeMaxIPDataRate-DL CRITICALITY reject TYPE BitRate PRESENCE optional }|
- { ID id-LocationInformationSNReporting CRITICALITY ignore TYPE LocationInformationSNReporting PRESENCE optional}|
+ { ID id-LocationInformationSNReporting CRITICALITY ignore TYPE LocationInformationSNReporting PRESENCE optional }|
{ ID id-MR-DC-ResourceCoordinationInfo CRITICALITY ignore TYPE MR-DC-ResourceCoordinationInfo PRESENCE optional }|
- { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional}|
- { ID id-NE-DC-TDM-Pattern CRITICALITY ignore TYPE NE-DC-TDM-Pattern PRESENCE optional}|
- { ID id-S-NG-RANnode-Addition-Trigger-Ind CRITICALITY reject TYPE S-NG-RANnode-Addition-Trigger-Ind PRESENCE optional}|
- { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional}|
- { ID id-RequestedFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3 PRESENCE optional}|
- { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional},
+ { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }|
+ { ID id-NE-DC-TDM-Pattern CRITICALITY ignore TYPE NE-DC-TDM-Pattern PRESENCE optional }|
+ { ID id-S-NG-RANnode-Addition-Trigger-Ind CRITICALITY reject TYPE S-NG-RANnode-Addition-Trigger-Ind PRESENCE optional }|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
+ { ID id-RequestedFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3 PRESENCE optional }|
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }|
+ { ID id-SourceNG-RAN-node-ID CRITICALITY ignore TYPE GlobalNG-RANNode-ID PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }|
+ { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE optional }|
+ { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }|
+ { ID id-PSCellChangeHistory CRITICALITY ignore TYPE PSCellChangeHistory PRESENCE optional }|
+ { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional }|
+ { ID id-NoPDUSessionIndication CRITICALITY ignore TYPE NoPDUSessionIndication PRESENCE optional }|
+ { ID id-CHOinformation-AddReq CRITICALITY reject TYPE CHOinformation-AddReq PRESENCE optional }|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional }|
+ { ID id-CPAInformationRequest CRITICALITY reject TYPE CPAInformationRequest PRESENCE optional }|
+ { ID id-S-NG-RANnodeUE-Slice-MBR CRITICALITY reject TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-F1-terminatingIAB-donorIndicator CRITICALITY reject TYPE F1-terminatingIAB-donorIndicator PRESENCE optional },
...
}
@@ -819,7 +1038,7 @@ PDUSessionToBeAddedAddReq-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceSetupInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceSetupInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Setup Info – SN terminated IE
--- nor the PDU Session Resource Setup Info – MN terminated IE is present,
+-- nor the PDU Session Resource Setup Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.1.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionToBeAddedAddReq-Item-ExtIEs} } OPTIONAL,
...
@@ -858,7 +1077,10 @@ SNodeAdditionRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
{ ID id-LocationInformationSN CRITICALITY ignore TYPE Target-CGI PRESENCE optional }|
{ ID id-MR-DC-ResourceCoordinationInfo CRITICALITY ignore TYPE MR-DC-ResourceCoordinationInfo PRESENCE optional }|
- { ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional },
+ { ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional }|
+ { ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional }|
+ { ID id-CPAInformationAck CRITICALITY ignore TYPE CPAInformationAck PRESENCE optional },
...
}
@@ -869,7 +1091,7 @@ PDUSessionAdmittedAddedAddReqAck-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceSetupResponseInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceSetupResponseInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Setup Response Info – SN terminated IE
--- nor the PDU Session Resource Setup Response Info – MN terminated IE is present,
+-- nor the PDU Session Resource Setup Response Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.1.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedAddedAddReqAck-Item-ExtIEs} } OPTIONAL,
...
@@ -983,30 +1205,39 @@ SNodeModificationRequest ::= SEQUENCE {
}
SNodeModificationRequest-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
- { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
- { ID id-PDCPChangeIndication CRITICALITY ignore TYPE PDCPChangeIndication PRESENCE optional }|
- { ID id-selectedPLMN CRITICALITY ignore TYPE PLMN-Identity PRESENCE optional }|
- { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }|
- { ID id-SCGConfigurationQuery CRITICALITY ignore TYPE SCGConfigurationQuery PRESENCE optional }|
- { ID id-UEContextInfo-SNModRequest CRITICALITY reject TYPE UEContextInfo-SNModRequest PRESENCE optional }|
+ { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-PDCPChangeIndication CRITICALITY ignore TYPE PDCPChangeIndication PRESENCE optional }|
+ { ID id-selectedPLMN CRITICALITY ignore TYPE PLMN-Identity PRESENCE optional }|
+ { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }|
+ { ID id-SCGConfigurationQuery CRITICALITY ignore TYPE SCGConfigurationQuery PRESENCE optional }|
+ { ID id-UEContextInfo-SNModRequest CRITICALITY reject TYPE UEContextInfo-SNModRequest PRESENCE optional }|
-- WS modification: define a dedicated type
--- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }|
+-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }|
{ ID id-MN-to-SN-Container CRITICALITY ignore TYPE MN-to-SN-Container PRESENCE optional }|
- { ID id-requestedSplitSRB CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }|
- { ID id-requestedSplitSRBrelease CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }|
- { ID id-DesiredActNotificationLevel CRITICALITY ignore TYPE DesiredActNotificationLevel PRESENCE optional }|
- { ID id-AdditionalDRBIDs CRITICALITY reject TYPE DRB-List PRESENCE optional }|
- { ID id-S-NG-RANnodeMaxIPDataRate-UL CRITICALITY reject TYPE BitRate PRESENCE optional }|
- { ID id-S-NG-RANnodeMaxIPDataRate-DL CRITICALITY reject TYPE BitRate PRESENCE optional }|
- { ID id-LocationInformationSNReporting CRITICALITY ignore TYPE LocationInformationSNReporting PRESENCE optional}|
- { ID id-MR-DC-ResourceCoordinationInfo CRITICALITY ignore TYPE MR-DC-ResourceCoordinationInfo PRESENCE optional }|
- { ID id-PCellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE optional }|
- { ID id-NE-DC-TDM-Pattern CRITICALITY ignore TYPE NE-DC-TDM-Pattern PRESENCE optional}|
- { ID id-RequestedFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3 PRESENCE optional }|
+ { ID id-requestedSplitSRB CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }|
+ { ID id-requestedSplitSRBrelease CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }|
+ { ID id-DesiredActNotificationLevel CRITICALITY ignore TYPE DesiredActNotificationLevel PRESENCE optional }|
+ { ID id-AdditionalDRBIDs CRITICALITY reject TYPE DRB-List PRESENCE optional }|
+ { ID id-S-NG-RANnodeMaxIPDataRate-UL CRITICALITY reject TYPE BitRate PRESENCE optional }|
+ { ID id-S-NG-RANnodeMaxIPDataRate-DL CRITICALITY reject TYPE BitRate PRESENCE optional }|
+ { ID id-LocationInformationSNReporting CRITICALITY ignore TYPE LocationInformationSNReporting PRESENCE optional }|
+ { ID id-MR-DC-ResourceCoordinationInfo CRITICALITY ignore TYPE MR-DC-ResourceCoordinationInfo PRESENCE optional }|
+ { ID id-PCellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE optional }|
+ { ID id-NE-DC-TDM-Pattern CRITICALITY ignore TYPE NE-DC-TDM-Pattern PRESENCE optional }|
+ { ID id-RequestedFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3 PRESENCE optional }|
{ ID id-RequestedFastMCGRecoveryViaSRB3Release CRITICALITY ignore TYPE RequestedFastMCGRecoveryViaSRB3Release PRESENCE optional }|
- { ID id-SNTriggered CRITICALITY ignore TYPE SNTriggered PRESENCE optional},
+ { ID id-SNTriggered CRITICALITY ignore TYPE SNTriggered PRESENCE optional }|
+ { ID id-TargetNodeID CRITICALITY ignore TYPE GlobalNG-RANNode-ID PRESENCE optional }|
+ { ID id-PSCellHistoryInformationRetrieve CRITICALITY ignore TYPE PSCellHistoryInformationRetrieve PRESENCE optional }|
+ { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore TYPE UEHistoryInformationFromTheUE PRESENCE optional }|
+ { ID id-CHOinformation-ModReq CRITICALITY ignore TYPE CHOinformation-ModReq PRESENCE optional }|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional }|
+ { ID id-CPAInformationModReq CRITICALITY ignore TYPE CPAInformationModReq PRESENCE optional }|
+ { ID id-CPCInformationUpdate CRITICALITY ignore TYPE CPCInformationUpdate PRESENCE optional }|
+ { ID id-S-NG-RANnodeUE-Slice-MBR CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }|
+ { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional },
...
}
@@ -1036,7 +1267,7 @@ PDUSessionsToBeAdded-SNModRequest-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceSetupInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceSetupInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Setup Info – SN terminated IE
--- nor the PDU Session Resource Setup Info – MN terminated IE is present,
+-- nor the PDU Session Resource Setup Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.3.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionsToBeAdded-SNModRequest-Item-ExtIEs} } OPTIONAL,
...
@@ -1055,7 +1286,7 @@ PDUSessionsToBeModified-SNModRequest-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceModificationInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceModificationInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Modification Info – SN terminated IE
--- nor the PDU Session Resource Modification Info – MN terminated IE is present,
+-- nor the PDU Session Resource Modification Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.3.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionsToBeModified-SNModRequest-Item-ExtIEs} } OPTIONAL,
...
@@ -1106,7 +1337,11 @@ SNodeModificationRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-PDUSessionDataForwarding-SNModResponse CRITICALITY ignore TYPE PDUSessionDataForwarding-SNModResponse PRESENCE optional }|
{ ID id-RRCConfigIndication CRITICALITY reject TYPE RRCConfigIndication PRESENCE optional }|
{ ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional }|
- { ID id-ReleaseFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE ReleaseFastMCGRecoveryViaSRB3 PRESENCE optional },
+ { ID id-ReleaseFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE ReleaseFastMCGRecoveryViaSRB3 PRESENCE optional }|
+ { ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }|
+ { ID id-SCGUEHistoryInformation CRITICALITY ignore TYPE SCGUEHistoryInformation PRESENCE optional }|
+ { ID id-SCGActivationStatus CRITICALITY ignore TYPE SCGActivationStatus PRESENCE optional }|
+ { ID id-CPAInformationModReqAck CRITICALITY ignore TYPE CPAInformationModReqAck PRESENCE optional },
...
}
PDUSessionAdmitted-SNModResponse ::= SEQUENCE {
@@ -1127,7 +1362,7 @@ PDUSessionAdmittedToBeAddedSNModResponse-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceSetupResponseInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceSetupResponseInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Setup Response Info – SN terminated IE
--- nor the PDU Session Resource Setup Response Info – MN terminated IE is present,
+-- nor the PDU Session Resource Setup Response Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.3.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedToBeAddedSNModResponse-Item-ExtIEs} } OPTIONAL,
...
@@ -1143,7 +1378,7 @@ PDUSessionAdmittedToBeModifiedSNModResponse-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceModificationResponseInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceModificationResponseInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Modification Response Info – SN terminated IE
--- nor the PDU Session Resource Modification Response Info – MN terminated IE is present,
+-- nor the PDU Session Resource Modification Response Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.3.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedToBeModifiedSNModResponse-Item-ExtIEs} } OPTIONAL,
...
@@ -1188,6 +1423,7 @@ PDUSessionDataForwarding-SNModResponse-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
ReleaseFastMCGRecoveryViaSRB3 ::= ENUMERATED {true, ...}
+
-- **************************************************************
--
-- S-NODE MODIFICATION REQUEST REJECT
@@ -1234,8 +1470,12 @@ SNodeModificationRequired-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-MR-DC-ResourceCoordinationInfo CRITICALITY ignore TYPE MR-DC-ResourceCoordinationInfo PRESENCE optional }|
{ ID id-RRCConfigIndication CRITICALITY reject TYPE RRCConfigIndication PRESENCE optional }|
{ ID id-AvailableFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE AvailableFastMCGRecoveryViaSRB3 PRESENCE optional }|
- { ID id-ReleaseFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE ReleaseFastMCGRecoveryViaSRB3 PRESENCE optional }|
- { ID id-SCGIndicator CRITICALITY ignore TYPE SCGIndicator PRESENCE optional },
+ { ID id-ReleaseFastMCGRecoveryViaSRB3 CRITICALITY ignore TYPE ReleaseFastMCGRecoveryViaSRB3 PRESENCE optional }|
+ { ID id-SCGIndicator CRITICALITY ignore TYPE SCGIndicator PRESENCE optional }|
+ { ID id-SCGUEHistoryInformation CRITICALITY ignore TYPE SCGUEHistoryInformation PRESENCE optional }|
+ { ID id-SCGActivationRequest CRITICALITY ignore TYPE SCGActivationRequest PRESENCE optional }|
+ { ID id-CPACInformationModRequired CRITICALITY ignore TYPE CPACInformationModRequired PRESENCE optional }|
+ { ID id-SCGreconfigNotification CRITICALITY ignore TYPE SCGreconfigNotification PRESENCE optional },
...
}
PDUSessionToBeModifiedSNModRequired::= SEQUENCE (SIZE (1.. maxnoofPDUSessions)) OF PDUSessionToBeModifiedSNModRequired-Item
@@ -1245,7 +1485,7 @@ PDUSessionToBeModifiedSNModRequired-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceModRqdInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceModRqdInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Modification Required Info – SN terminated IE
--- nor the PDU Session Resource Modification Required Info – MN terminated IE is present,
+-- nor the PDU Session Resource Modification Required Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.4.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionToBeModifiedSNModRequired-Item-ExtIEs} } OPTIONAL,
...
@@ -1298,7 +1538,7 @@ PDUSessionAdmittedModSNModConfirm-Item ::= SEQUENCE {
sn-terminated PDUSessionResourceModConfirmInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceModConfirmInfo-MNterminated OPTIONAL,
-- NOTE: If neither the PDU Session Resource Modification Confirm Info – SN terminated IE
--- nor the PDU Session Resource Modification Confirm Info – MN terminated IE is present,
+-- nor the PDU Session Resource Modification Confirm Info – MN terminated IE is present,
-- abnormal conditions as specified in clause 8.3.4.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedModSNModConfirm-Item-ExtIEs} } OPTIONAL,
...
@@ -1358,7 +1598,7 @@ SNodeReleaseRequest-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE optional }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
- { ID id-PDUSessionToBeReleased-RelReq CRITICALITY ignore TYPE PDUSession-List-withCause PRESENCE mandatory}|
+ { ID id-PDUSessionToBeReleased-RelReq CRITICALITY ignore TYPE PDUSession-List-withCause PRESENCE optional }|
{ ID id-UEContextKeptIndicator CRITICALITY ignore TYPE UEContextKeptIndicator PRESENCE optional }|
-- WS modification: define a dedicated type
-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }|
@@ -1381,8 +1621,9 @@ SNodeReleaseRequestAcknowledge ::= SEQUENCE {
SNodeReleaseRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE optional }|
- { ID id-PDUSessionToBeReleased-RelReqAck CRITICALITY ignore TYPE PDUSessionToBeReleasedList-RelReqAck PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-PDUSessionToBeReleased-RelReqAck CRITICALITY ignore TYPE PDUSessionToBeReleasedList-RelReqAck PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-SCGUEHistoryInformation CRITICALITY ignore TYPE SCGUEHistoryInformation PRESENCE optional },
...
}
@@ -1432,8 +1673,9 @@ SNodeReleaseRequired-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-PDUSessionToBeReleasedList-RelRqd CRITICALITY ignore TYPE PDUSessionToBeReleasedList-RelRqd PRESENCE optional }|
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
-- WS modification: define a dedicated type
--- { ID id-SN-to-MN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional },
- { ID id-SN-to-MN-Container CRITICALITY ignore TYPE SN-to-MN-Container PRESENCE optional },
+-- { ID id-SN-to-MN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }|
+ { ID id-SN-to-MN-Container CRITICALITY ignore TYPE SN-to-MN-Container PRESENCE optional }|
+ { ID id-SCGUEHistoryInformation CRITICALITY ignore TYPE SCGUEHistoryInformation PRESENCE optional },
...
}
@@ -1529,8 +1771,12 @@ SNodeChangeRequired-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
{ ID id-PDUSession-SNChangeRequired-List CRITICALITY ignore TYPE PDUSession-SNChangeRequired-List PRESENCE optional }|
-- WS modification: define a dedicated type
--- { ID id-SN-to-MN-Container CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory},
- { ID id-SN-to-MN-Container CRITICALITY reject TYPE SN-to-MN-Container PRESENCE mandatory},
+-- { ID id-SN-to-MN-Container CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory}|
+ { ID id-SN-to-MN-Container CRITICALITY reject TYPE SN-to-MN-Container PRESENCE mandatory}|
+ { ID id-SCGUEHistoryInformation CRITICALITY ignore TYPE SCGUEHistoryInformation PRESENCE optional }|
+ { ID id-SNMobilityInformation CRITICALITY ignore TYPE SNMobilityInformation PRESENCE optional }|
+ { ID id-SourcePSCellID CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE optional }|
+ { ID id-CPCInformationRequired CRITICALITY ignore TYPE CPCInformationRequired PRESENCE optional },
...
}
@@ -1540,7 +1786,7 @@ PDUSession-SNChangeRequired-Item ::= SEQUENCE {
pduSessionId PDUSession-ID,
sn-terminated PDUSessionResourceChangeRequiredInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceChangeRequiredInfo-MNterminated OPTIONAL,
--- NOTE: If the PDU Session Resource Change Required Info – SN terminated IE is not present,
+-- NOTE: If the PDU Session Resource Change Required Info – SN terminated IE is not present,
-- abnormal conditions as specified in clause 8.3.5.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSession-SNChangeRequired-Item-ExtIEs} } OPTIONAL,
...
@@ -1566,22 +1812,27 @@ SNodeChangeConfirm-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-PDUSession-SNChangeConfirm-List CRITICALITY ignore TYPE PDUSession-SNChangeConfirm-List PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-CPCInformationConfirm CRITICALITY ignore TYPE CPCInformationConfirm PRESENCE optional }|
+-- WS modification: define a dedicated type
+-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional },
+ { ID id-MN-to-SN-Container CRITICALITY ignore TYPE MN-to-SN-Container PRESENCE optional },
...
}
PDUSession-SNChangeConfirm-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSession-SNChangeConfirm-Item
PDUSession-SNChangeConfirm-Item ::= SEQUENCE {
- pduSessionId PDUSession-ID,
+ pduSessionId PDUSession-ID,
sn-terminated PDUSessionResourceChangeConfirmInfo-SNterminated OPTIONAL,
mn-terminated PDUSessionResourceChangeConfirmInfo-MNterminated OPTIONAL,
--- NOTE: If the PDU Session Resource Change Confirm Info – SN terminated IE is not present,
+-- NOTE: If the PDU Session Resource Change Confirm Info – SN terminated IE is not present,
-- abnormal conditions as specified in clause 8.3.5.4 apply.
iE-Extension ProtocolExtensionContainer { {PDUSession-SNChangeConfirm-Item-ExtIEs} } OPTIONAL,
...
}
PDUSession-SNChangeConfirm-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ { ID id-AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated CRITICALITY ignore EXTENSION AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated PRESENCE optional},
...
}
@@ -1621,8 +1872,9 @@ RRCTransfer-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
{ ID id-SplitSRB-RRCTransfer CRITICALITY reject TYPE SplitSRB-RRCTransfer PRESENCE optional }|
{ ID id-UEReportRRCTransfer CRITICALITY reject TYPE UEReportRRCTransfer PRESENCE optional }|
- { ID id-FastMCGRecoveryRRCTransfer-SN-to-MN CRITICALITY ignore TYPE FastMCGRecoveryRRCTransfer PRESENCE optional}|
- { ID id-FastMCGRecoveryRRCTransfer-MN-to-SN CRITICALITY ignore TYPE FastMCGRecoveryRRCTransfer PRESENCE optional},
+ { ID id-FastMCGRecoveryRRCTransfer-SN-to-MN CRITICALITY ignore TYPE FastMCGRecoveryRRCTransfer PRESENCE optional }|
+ { ID id-FastMCGRecoveryRRCTransfer-MN-to-SN CRITICALITY ignore TYPE FastMCGRecoveryRRCTransfer PRESENCE optional }|
+ { ID id-SDT-SRB-between-NewNode-OldNode CRITICALITY ignore TYPE SDT-SRB-between-NewNode-OldNode PRESENCE optional },
...
}
@@ -1658,6 +1910,17 @@ FastMCGRecoveryRRCTransfer-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
...
}
+SDT-SRB-between-NewNode-OldNode::= SEQUENCE {
+ rrcContainer OCTET STRING,
+ srb-ID SRB-ID,
+ iE-Extensions ProtocolExtensionContainer { { SDT-SRB-between-NewNode-OldNode-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SDT-SRB-between-NewNode-OldNode-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
-- **************************************************************
--
-- NOTIFICATION CONTROL INDICATION
@@ -1748,17 +2011,19 @@ XnSetupRequest ::= SEQUENCE {
}
XnSetupRequest-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-GlobalNG-RAN-node-ID CRITICALITY reject TYPE GlobalNG-RANNode-ID PRESENCE mandatory}|
+ { ID id-GlobalNG-RAN-node-ID CRITICALITY reject TYPE GlobalNG-RANNode-ID PRESENCE mandatory}|
{ ID id-TAISupport-list CRITICALITY reject TYPE TAISupport-List PRESENCE mandatory}|
{ ID id-AMF-Region-Information CRITICALITY reject TYPE AMF-Region-Information PRESENCE mandatory}|
{ ID id-List-of-served-cells-NR CRITICALITY reject TYPE ServedCells-NR PRESENCE optional }|
{ ID id-List-of-served-cells-E-UTRA CRITICALITY reject TYPE ServedCells-E-UTRA PRESENCE optional }|
{ ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional }|
- { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional}|
+ { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional }|
{ ID id-PartialListIndicator-NR CRITICALITY ignore TYPE PartialListIndicator PRESENCE optional }|
{ ID id-CellAndCapacityAssistanceInfo-NR CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-NR PRESENCE optional }|
{ ID id-PartialListIndicator-EUTRA CRITICALITY ignore TYPE PartialListIndicator PRESENCE optional }|
- { ID id-CellAndCapacityAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-EUTRA PRESENCE optional },
+ { ID id-CellAndCapacityAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-EUTRA PRESENCE optional }|
+ { ID id-Local-NG-RAN-Node-Identifier CRITICALITY ignore TYPE Local-NG-RAN-Node-Identifier PRESENCE optional }|
+ { ID id-Neighbour-NG-RAN-Node-List CRITICALITY ignore TYPE Neighbour-NG-RAN-Node-List PRESENCE optional },
...
}
@@ -1781,11 +2046,13 @@ XnSetupResponse-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
{ ID id-AMF-Region-Information CRITICALITY reject TYPE AMF-Region-Information PRESENCE optional }|
{ ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional }|
- { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional }|
+ { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional }|
{ ID id-PartialListIndicator-NR CRITICALITY ignore TYPE PartialListIndicator PRESENCE optional }|
- { ID id-CellAndCapacityAssistanceInfo-NR CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-NR PRESENCE optional }|
+ { ID id-CellAndCapacityAssistanceInfo-NR CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-NR PRESENCE optional }|
{ ID id-PartialListIndicator-EUTRA CRITICALITY ignore TYPE PartialListIndicator PRESENCE optional }|
- { ID id-CellAndCapacityAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-EUTRA PRESENCE optional },
+ { ID id-CellAndCapacityAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAndCapacityAssistanceInfo-EUTRA PRESENCE optional }|
+ { ID id-Local-NG-RAN-Node-Identifier CRITICALITY ignore TYPE Local-NG-RAN-Node-Identifier PRESENCE optional }|
+ { ID id-Neighbour-NG-RAN-Node-List CRITICALITY ignore TYPE Neighbour-NG-RAN-Node-List PRESENCE optional },
...
}
@@ -1830,7 +2097,11 @@ NGRANNodeConfigurationUpdate-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-AMF-Region-Information-To-Add CRITICALITY reject TYPE AMF-Region-Information PRESENCE optional }|
{ ID id-AMF-Region-Information-To-Delete CRITICALITY reject TYPE AMF-Region-Information PRESENCE optional }|
{ ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional }|
- { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional },
+ { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional }|
+ { ID id-Coverage-Modification-List CRITICALITY reject TYPE Coverage-Modification-List PRESENCE optional }|
+ { ID id-Local-NG-RAN-Node-Identifier CRITICALITY ignore TYPE Local-NG-RAN-Node-Identifier PRESENCE optional }|
+ { ID id-Neighbour-NG-RAN-Node-List CRITICALITY ignore TYPE Neighbour-NG-RAN-Node-List PRESENCE optional }|
+ { ID id-Local-NG-RAN-Node-Identifier-Removal CRITICALITY ignore TYPE Local-NG-RAN-Node-Identifier PRESENCE optional },
...
}
@@ -1845,18 +2116,19 @@ ServedCellsToUpdateInitiatingNodeChoice-ExtIEs XNAP-PROTOCOL-IES ::= {
}
ConfigurationUpdate-gNB XNAP-PROTOCOL-IES ::= {
- { ID id-servedCellsToUpdate-NR CRITICALITY ignore TYPE ServedCellsToUpdate-NR PRESENCE optional }|
- { ID id-cellAssistanceInfo-NR CRITICALITY ignore TYPE CellAssistanceInfo-NR PRESENCE optional }|
- { ID id-cellAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAssistanceInfo-EUTRA PRESENCE optional },
+ { ID id-servedCellsToUpdate-NR CRITICALITY ignore TYPE ServedCellsToUpdate-NR PRESENCE optional }|
+ { ID id-cellAssistanceInfo-NR CRITICALITY ignore TYPE CellAssistanceInfo-NR PRESENCE optional }|
+ { ID id-cellAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAssistanceInfo-EUTRA PRESENCE optional }|
+ { ID id-ServedCellSpecificInfoReq-NR CRITICALITY ignore TYPE ServedCellSpecificInfoReq-NR PRESENCE optional},
...
}
ConfigurationUpdate-ng-eNB XNAP-PROTOCOL-IES ::= {
- { ID id-servedCellsToUpdate-E-UTRA CRITICALITY ignore TYPE ServedCellsToUpdate-E-UTRA PRESENCE optional }|
- { ID id-cellAssistanceInfo-NR CRITICALITY ignore TYPE CellAssistanceInfo-NR PRESENCE optional }|
+ { ID id-servedCellsToUpdate-E-UTRA CRITICALITY ignore TYPE ServedCellsToUpdate-E-UTRA PRESENCE optional }|
+ { ID id-cellAssistanceInfo-NR CRITICALITY ignore TYPE CellAssistanceInfo-NR PRESENCE optional }|
{ ID id-cellAssistanceInfo-EUTRA CRITICALITY ignore TYPE CellAssistanceInfo-EUTRA PRESENCE optional },
- ...
+ ...
}
@@ -1873,12 +2145,15 @@ NGRANNodeConfigurationUpdateAcknowledge ::= SEQUENCE {
}
NGRANNodeConfigurationUpdateAcknowledge-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-RespondingNodeTypeConfigUpdateAck CRITICALITY ignore TYPE RespondingNodeTypeConfigUpdateAck PRESENCE mandatory}|
- { ID id-TNLA-Setup-List CRITICALITY ignore TYPE TNLA-Setup-List PRESENCE optional }|
- { ID id-TNLA-Failed-To-Setup-List CRITICALITY ignore TYPE TNLA-Failed-To-Setup-List PRESENCE optional }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
- { ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional }|
- { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional },
+ { ID id-RespondingNodeTypeConfigUpdateAck CRITICALITY ignore TYPE RespondingNodeTypeConfigUpdateAck PRESENCE mandatory}|
+ { ID id-TNLA-Setup-List CRITICALITY ignore TYPE TNLA-Setup-List PRESENCE optional }|
+ { ID id-TNLA-Failed-To-Setup-List CRITICALITY ignore TYPE TNLA-Failed-To-Setup-List PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional }|
+ { ID id-TNLConfigurationInfo CRITICALITY ignore TYPE TNLConfigurationInfo PRESENCE optional }|
+ { ID id-Local-NG-RAN-Node-Identifier CRITICALITY ignore TYPE Local-NG-RAN-Node-Identifier PRESENCE optional }|
+ { ID id-Neighbour-NG-RAN-Node-List CRITICALITY ignore TYPE Neighbour-NG-RAN-Node-List PRESENCE optional }|
+ { ID id-Local-NG-RAN-Node-Identifier-Removal CRITICALITY ignore TYPE Local-NG-RAN-Node-Identifier PRESENCE optional },
...
}
RespondingNodeTypeConfigUpdateAck ::= CHOICE {
@@ -2003,8 +2278,8 @@ E-UTRA-NR-CellResourceCoordinationResponse::= SEQUENCE {
}
E-UTRA-NR-CellResourceCoordinationResponse-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-respondingNodeType-ResourceCoordResponse CRITICALITY reject TYPE RespondingNodeType-ResourceCoordResponse PRESENCE mandatory}|
- { ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional },
+ { ID id-respondingNodeType-ResourceCoordResponse CRITICALITY reject TYPE RespondingNodeType-ResourceCoordResponse PRESENCE mandatory}|
+ { ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional },
...
}
@@ -2160,7 +2435,7 @@ CellActivationResponse-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-ActivatedServedCells CRITICALITY reject TYPE ActivatedServedCells PRESENCE mandatory}|
{ ID id-ActivationIDforCellActivation CRITICALITY reject TYPE ActivationIDforCellActivation PRESENCE mandatory}|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
- { ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional },
+ { ID id-InterfaceInstanceIndication CRITICALITY reject TYPE InterfaceInstanceIndication PRESENCE optional },
...
}
@@ -2332,15 +2607,16 @@ HandoverReport ::= SEQUENCE {
HandoverReport-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-HandoverReportType CRITICALITY ignore TYPE HandoverReportType PRESENCE mandatory}|
{ ID id-HandoverCause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
- { ID id-SourceCellCGI CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE mandatory }|
- { ID id-TargetCellCGI CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE mandatory }|
- { ID id-ReEstablishmentCellCGI CRITICALITY ignore TYPE GlobalCell-ID PRESENCE conditional }|
+ { ID id-SourceCellCGI CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE mandatory }|
+ { ID id-TargetCellCGI CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE mandatory }|
+ { ID id-ReEstablishmentCellCGI CRITICALITY ignore TYPE GlobalCell-ID PRESENCE conditional }|
-- This IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell"
- { ID id-TargetCellinEUTRAN CRITICALITY ignore TYPE TargetCellinEUTRAN PRESENCE conditional }|
+ { ID id-TargetCellinEUTRAN CRITICALITY ignore TYPE TargetCellinEUTRAN PRESENCE conditional }|
-- This IE shall be present if the Handover Report Type IE is set to the value "Inter-system ping-pong"
- { ID id-SourceCellCRNTI CRITICALITY ignore TYPE C-RNTI PRESENCE optional }|
- { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional }|
- { ID id-UERLFReportContainer CRITICALITY ignore TYPE UERLFReportContainer PRESENCE optional },
+ { ID id-SourceCellCRNTI CRITICALITY ignore TYPE C-RNTI PRESENCE optional }|
+ { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional }|
+ { ID id-UERLFReportContainer CRITICALITY ignore TYPE UERLFReportContainer PRESENCE optional }|
+ { ID id-CHOConfiguration CRITICALITY ignore TYPE CHOConfiguration PRESENCE optional},
...
}
@@ -2358,7 +2634,7 @@ ResourceStatusRequest ::= SEQUENCE {
ResourceStatusRequest-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-NGRAN-Node1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
{ ID id-NGRAN-Node2-Measurement-ID CRITICALITY ignore TYPE Measurement-ID PRESENCE conditional}|
--- This IE shall be present if the Registration Request IE is set to the value "stop", "partial stop" or "add".
+-- This IE shall be present if the Registration Request IE is set to the value "stop" or "add".
{ ID id-RegistrationRequest CRITICALITY reject TYPE RegistrationRequest PRESENCE mandatory}|
{ ID id-ReportCharacteristics CRITICALITY reject TYPE ReportCharacteristics PRESENCE conditional}|
-- This IE shall be present if the Registration Request IE is set to the value "start".
@@ -2421,7 +2697,7 @@ ResourceStatusUpdate ::= SEQUENCE {
ResourceStatusUpdate-IEs XNAP-PROTOCOL-IES ::= {
{ ID id-NGRAN-Node1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
{ ID id-NGRAN-Node2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
- { ID id-CellMeasurementResult CRITICALITY ignore TYPE CellMeasurementResult PRESENCE mandatory},
+ { ID id-CellMeasurementResult CRITICALITY ignore TYPE CellMeasurementResult PRESENCE mandatory},
...
}
@@ -2437,11 +2713,12 @@ MobilityChangeRequest ::= SEQUENCE {
}
MobilityChangeRequest-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-NG-RANnode1CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
+ { ID id-NG-RANnode1CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
{ ID id-NG-RANnode2CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
- { ID id-NG-RANnode1MobilityParameters CRITICALITY reject TYPE MobilityParametersInformation PRESENCE optional}|
- { ID id-NG-RANnode2ProposedMobilityParameters CRITICALITY reject TYPE MobilityParametersInformation PRESENCE optional}|
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory},
+ { ID id-NG-RANnode1MobilityParameters CRITICALITY reject TYPE MobilityParametersInformation PRESENCE optional}|
+ { ID id-NG-RANnode2ProposedMobilityParameters CRITICALITY reject TYPE MobilityParametersInformation PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-SSBOffsets-List CRITICALITY ignore TYPE SSBOffsets-List PRESENCE optional},
...
}
@@ -2477,11 +2754,12 @@ MobilityChangeFailure ::= SEQUENCE {
}
MobilityChangeFailure-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-NG-RANnode1CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
- { ID id-NG-RANnode2CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
- { ID id-MobilityParametersModificationRange CRITICALITY reject TYPE MobilityParametersModificationRange PRESENCE optional}|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ { ID id-NG-RANnode1CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
+ { ID id-NG-RANnode2CellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-MobilityParametersModificationRange CRITICALITY reject TYPE MobilityParametersModificationRange PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-NG-RANnode2SSBOffsetsModificationRange CRITICALITY ignore TYPE NG-RANnode2SSBOffsetsModificationRange PRESENCE optional},
...
}
@@ -2497,7 +2775,484 @@ AccessAndMobilityIndication ::= SEQUENCE {
...
}
AccessAndMobilityIndication-IEs XNAP-PROTOCOL-IES ::= {
- { ID id-RACHReportInformation CRITICALITY ignore TYPE RACHReportInformation PRESENCE optional},
+ { ID id-RACHReportInformation CRITICALITY ignore TYPE RACHReportInformation PRESENCE optional}|
+ { ID id-SuccessfulHOReportInformation CRITICALITY ignore TYPE SuccessfulHOReportInformation PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- CELL TRAFFIC TRACE
+--
+-- **************************************************************
+
+CellTrafficTrace ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {CellTrafficTraceIEs} },
+ ...
+}
+
+CellTrafficTraceIEs XNAP-PROTOCOL-IES ::= {
+ { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-NG-RANTraceID CRITICALITY ignore TYPE NG-RANTraceID PRESENCE mandatory}|
+ { ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory}|
+ { ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional }|
+ { ID id-TraceCollectionEntityURI CRITICALITY ignore TYPE URIaddress PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- RAN MULTICAST GROUP PAGING
+--
+-- **************************************************************
+
+RANMulticastGroupPaging ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RANMulticastGroupPaging-IEs}},
+ ...
+}
+
+RANMulticastGroupPaging-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-MBS-Session-ID CRITICALITY reject TYPE MBS-Session-ID PRESENCE mandatory}|
+ { ID id-UEIdentityIndexList-MBSGroupPaging CRITICALITY reject TYPE UEIdentityIndexList-MBSGroupPaging PRESENCE mandatory}|
+ { ID id-MulticastRANPagingArea CRITICALITY reject TYPE RANPagingArea PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- SCG FAILURE INFORMATION REPORT
+--
+-- **************************************************************
+
+ScgFailureInformationReport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ ScgFailureInformationReport-IEs}},
+ ...
+}
+
+ScgFailureInformationReport-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory }|
+ { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory }|
+ { ID id-SourcePSCellCGI CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE optional }|
+ { ID id-FailedPSCellCGI CRITICALITY ignore TYPE GlobalNG-RANCell-ID PRESENCE optional }|
+ { ID id-SCGFailureReportContainer CRITICALITY ignore TYPE SCGFailureReportContainer PRESENCE mandatory }|
+ { ID id-SNMobilityInformation CRITICALITY ignore TYPE SNMobilityInformation PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- SCG FAILURE TRANSFER
+--
+-- **************************************************************
+
+ScgFailureTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ ScgFailureTransfer-IEs}},
+ ...
+}
+ScgFailureTransfer-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory }|
+ { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- F1-C TRAFFIC TRANSFER
+
+--
+-- **************************************************************
+
+F1CTrafficTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ F1CTrafficTransfer-IEs}},
+ ...
+}
+
+F1CTrafficTransfer-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-F1CTrafficContainer CRITICALITY reject TYPE F1CTrafficContainer PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- IAB TRANSPORT MIGRATION MANAGEMENT REQUEST
+--
+-- **************************************************************
+
+IABTransportMigrationManagementRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABTransportMigrationManagementRequest-IEs}},
+ ...
+}
+
+IABTransportMigrationManagementRequest-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-TrafficToBeAddedList CRITICALITY reject TYPE TrafficToBeAddedList PRESENCE optional }|
+ { ID id-TrafficToBeModifiedList CRITICALITY reject TYPE TrafficToBeModifiedList PRESENCE optional }|
+ { ID id-TrafficToBeReleaseInformation CRITICALITY reject TYPE TrafficToBeReleaseInformation PRESENCE optional }|
+ { ID id-IAB-TNL-Address-Request CRITICALITY reject TYPE IAB-TNL-Address-Request PRESENCE optional }|
+ { ID id-IABTNLAddressException CRITICALITY reject TYPE IABTNLAddressException PRESENCE optional },
+ ...
+}
+
+TrafficToBeAddedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficToBeAdded-Item
+
+TrafficToBeAdded-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ trafficProfile TrafficProfile,
+ f1-TerminatingTopologyBHInformation F1-TerminatingTopologyBHInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TrafficToBeAdded-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficToBeAdded-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TrafficToBeModifiedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficToBeModified-Item
+
+TrafficToBeModified-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ trafficProfile TrafficProfile OPTIONAL,
+ f1-TerminatingTopologyBHInformation F1-TerminatingTopologyBHInformation OPTIONAL,
+ iE-Extension ProtocolExtensionContainer { {TrafficToBeModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficToBeModified-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- IAB TRANSPORT MIGRATION MANAGEMENT RESPONSE
+--
+-- **************************************************************
+
+IABTransportMigrationManagementResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABTransportMigrationManagementResponse-IEs}},
+ ...
+}
+
+IABTransportMigrationManagementResponse-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-TrafficAddedList CRITICALITY reject TYPE TrafficAddedList PRESENCE optional }|
+ { ID id-TrafficModifiedList CRITICALITY reject TYPE TrafficModifiedList PRESENCE optional }|
+ { ID id-TrafficNotAddedList CRITICALITY reject TYPE TrafficNotAddedList PRESENCE optional }|
+ { ID id-TrafficNotModifiedList CRITICALITY reject TYPE TrafficNotModifiedList PRESENCE optional }|
+ { ID id-IAB-TNL-Address-Response CRITICALITY reject TYPE IAB-TNL-Address-Response PRESENCE optional }|
+ { ID id-TrafficReleasedList CRITICALITY reject TYPE TrafficReleasedList PRESENCE optional },
+ ...
+}
+
+TrafficAddedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficAdded-Item
+
+TrafficAdded-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ non-F1-TerminatingTopologyBHInformation Non-F1-TerminatingTopologyBHInformation,
+ iE-Extensions ProtocolExtensionContainer { {TrafficAdded-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficAdded-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TrafficModifiedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficModified-Item
+
+TrafficModified-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ non-F1-TerminatingTopologyBHInformation Non-F1-TerminatingTopologyBHInformation,
+ iE-Extensions ProtocolExtensionContainer { {TrafficModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficModified-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TrafficNotAddedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficNotAdded-Item
+
+TrafficNotAdded-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ casue Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TrafficNotAdded-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficNotAdded-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TrafficNotModifiedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficNotModified-Item
+
+TrafficNotModified-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ cause Cause OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TrafficNotModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficNotModified-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+TrafficReleasedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficReleased-Item
+
+TrafficReleased-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ bHInfoList BHInfoList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { TrafficReleased-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficReleased-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- **************************************************************
+--
+-- IAB TRANSPORT MIGRATION MANAGEMENT REJECT
+--
+-- **************************************************************
+
+IABTransportMigrationManagementReject ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABTransportMigrationManagementReject-IEs}},
+ ...
+}
+
+IABTransportMigrationManagementReject-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- IAB TRANSPORT MIGRATION MODIFICATION REQUEST
+--
+-- **************************************************************
+
+IABTransportMigrationModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABTransportMigrationModificationRequest-IEs}},
+ ...
+}
+
+IABTransportMigrationModificationRequest-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-TrafficRequiredToBeModifiedList CRITICALITY reject TYPE TrafficRequiredToBeModifiedList PRESENCE optional }|
+ { ID id-TrafficToBeReleaseInformation CRITICALITY reject TYPE TrafficToBeReleaseInformation PRESENCE optional }|
+ { ID id-IABTNLAddressToBeAdded CRITICALITY reject TYPE IAB-TNL-Address-Response PRESENCE optional }|
+ { ID id-IABTNLAddressToBeReleasedList CRITICALITY reject TYPE IABTNLAddressToBeReleasedList PRESENCE optional }|
+ { ID id-IABAuthorizationStatus CRITICALITY ignore TYPE IABAuthorizationStatus PRESENCE optional },
+ ...
+}
+
+TrafficRequiredToBeModifiedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficRequiredToBeModified-Item
+
+TrafficRequiredToBeModified-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ non-f1-TerminatingTopologyBHInformation Non-F1-TerminatingTopologyBHInformation,
+ iE-Extensions ProtocolExtensionContainer{ { TrafficRequiredToBeModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficRequiredToBeModified-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IABTNLAddressToBeReleasedList ::= SEQUENCE (SIZE(1..maxnoofTLAsIAB)) OF IABTNLAddressToBeReleased-Item
+
+IABTNLAddressToBeReleased-Item ::= SEQUENCE {
+ iabTNLAddress IABTNLAddress,
+ iE-Extensions ProtocolExtensionContainer{ { IABTNLAddressToBeReleased-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+IABTNLAddressToBeReleased-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- IAB TRANSPORT MIGRATION MODIFICATION RESPONSE
+--
+-- **************************************************************
+
+IABTransportMigrationModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABTransportMigrationModificationResponse-IEs}},
+ ...
+}
+
+IABTransportMigrationModificationResponse-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-TrafficRequiredModifiedList CRITICALITY reject TYPE TrafficRequiredModifiedList PRESENCE optional }|
+ { ID id-TrafficReleasedList CRITICALITY reject TYPE TrafficReleasedList PRESENCE optional },
+ ...
+}
+
+
+
+TrafficRequiredModifiedList ::= SEQUENCE (SIZE(1..maxnoofTrafficIndexEntries)) OF TrafficRequiredModified-Item
+
+TrafficRequiredModified-Item ::= SEQUENCE {
+ trafficIndex TrafficIndex,
+ iE-Extensions ProtocolExtensionContainer { { TrafficRequiredModified-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TrafficRequiredModified-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- **************************************************************
+--
+-- IAB RESOURCE COORDINATION REQUEST
+--
+-- **************************************************************
+
+IABResourceCoordinationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABResourceCoordinationRequest-IEs}},
+ ...
+}
+
+IABResourceCoordinationRequest-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-BoundaryNodeCellsList CRITICALITY reject TYPE BoundaryNodeCellsList PRESENCE optional }|
+ { ID id-ParentNodeCellsList CRITICALITY reject TYPE ParentNodeCellsList PRESENCE optional },
+ ...
+}
+
+
+BoundaryNodeCellsList ::= SEQUENCE (SIZE(1..maxnoofServedCellsIAB)) OF BoundaryNodeCellsList-Item
+
+BoundaryNodeCellsList-Item ::= SEQUENCE {
+ boundaryNodeCellInformation IABCellInformation,
+ iE-Extensions ProtocolExtensionContainer { {BoundaryNodeCellsList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+BoundaryNodeCellsList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ParentNodeCellsList ::= SEQUENCE (SIZE(1..maxnoofServingCells)) OF ParentNodeCellsList-Item
+
+ParentNodeCellsList-Item ::= SEQUENCE {
+ parentNodeCellInformation IABCellInformation,
+ iE-Extensions ProtocolExtensionContainer { {ParentNodeCellsList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ParentNodeCellsList-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- **************************************************************
+--
+-- IAB RESOURCE COORDINATION RESPONSE
+--
+-- **************************************************************
+
+IABResourceCoordinationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ IABResourceCoordinationResponse-IEs}},
+ ...
+}
+
+IABResourceCoordinationResponse-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-F1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-nonF1-Terminating-IAB-DonorUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-BoundaryNodeCellsList CRITICALITY reject TYPE BoundaryNodeCellsList PRESENCE optional }|
+ { ID id-ParentNodeCellsList CRITICALITY reject TYPE ParentNodeCellsList PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- CONDITIONAL PSCELL CHANGE CANCEL
+--
+-- **************************************************************
+
+CPCCancel ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ CPCCancel-IEs}},
+ ...
+}
+CPCCancel-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional }|
+ { ID id-target-S-NG-RANnodeID CRITICALITY reject TYPE GlobalNG-RANNode-ID PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- PARTIAL UE CONTEXT TRANSFER
+--
+-- **************************************************************
+PartialUEContextTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PartialUEContextTransfer-IEs}},
+ ...
+}
+
+PartialUEContextTransfer-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-newNG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-oldNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-SDTPartialUEContextInfo CRITICALITY ignore TYPE SDTPartialUEContextInfo PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- PARTIAL UE CONTEXT TRANSFER ACKNOWLEDGE
+--
+-- **************************************************************
+PartialUEContextTransferAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PartialUEContextTransferAcknowledge-IEs}},
+ ...
+}
+
+PartialUEContextTransferAcknowledge-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-newNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-oldNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-SDTDataForwardingDRBList CRITICALITY ignore TYPE SDTDataForwardingDRBList PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- PARTIAL UE CONTEXT TRANSFER FAILURE
+--
+-- **************************************************************
+
+PartialUEContextTransferFailure::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PartialUEContextTransferFailure-IEs}},
+ ...
+}
+
+PartialUEContextTransferFailure-IEs XNAP-PROTOCOL-IES ::= {
+ { ID id-newNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-oldNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
diff --git a/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn b/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn
index 9ed82e503b..94d99c9e7a 100644
--- a/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn
+++ b/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn
@@ -1,4 +1,4 @@
--- 3GPP TS 38.423 V16.7.0 (2021-10)
+-- 3GPP TS 38.423 V17.7.0 (2023-12)
-- 9.3.3 Elementary Procedure Definitions
-- **************************************************************
--
@@ -36,6 +36,7 @@ FROM XnAP-CommonDataTypes
RANPaging,
RetrieveUEContextRequest,
RetrieveUEContextResponse,
+ RetrieveUEContextConfirm,
RetrieveUEContextFailure,
XnUAddressIndication,
SecondaryRATDataUsageReport,
@@ -92,7 +93,23 @@ FROM XnAP-CommonDataTypes
MobilityChangeRequest,
MobilityChangeAcknowledge,
MobilityChangeFailure,
- AccessAndMobilityIndication
+ AccessAndMobilityIndication,
+ CellTrafficTrace,
+ RANMulticastGroupPaging,
+ ScgFailureInformationReport,
+ ScgFailureTransfer,
+ F1CTrafficTransfer,
+ IABTransportMigrationManagementRequest,
+ IABTransportMigrationManagementResponse,
+ IABTransportMigrationManagementReject,
+ IABTransportMigrationModificationRequest,
+ IABTransportMigrationModificationResponse,
+ IABResourceCoordinationRequest,
+ IABResourceCoordinationResponse,
+ CPCCancel,
+ PartialUEContextTransfer,
+ PartialUEContextTransferAcknowledge,
+ PartialUEContextTransferFailure
FROM XnAP-PDU-Contents
@@ -134,7 +151,18 @@ FROM XnAP-PDU-Contents
id-resourceStatusReportingInitiation,
id-resourceStatusReporting,
id-mobilitySettingsChange,
- id-accessAndMobilityIndication
+ id-accessAndMobilityIndication,
+ id-cellTrafficTrace,
+ id-RANMulticastGroupPaging,
+ id-scgFailureInformationReport,
+ id-scgFailureTransfer,
+ id-f1CTrafficTransfer,
+ id-iABTransportMigrationManagement,
+ id-iABTransportMigrationModification,
+ id-iABResourceCoordination,
+ id-retrieveUEContextConfirm,
+ id-cPCCancel,
+ id-partialUEContextTransfer
FROM XnAP-Constants;
@@ -218,7 +246,11 @@ XNAP-ELEMENTARY-PROCEDURES-CLASS-1 XNAP-ELEMENTARY-PROCEDURE ::= {
cellActivation |
reset |
resourceStatusReportingInitiation |
- mobilitySettingsChange ,
+ mobilitySettingsChange |
+ iABTransportMigrationManagement |
+ iABTransportMigrationModification |
+ iABResourceCoordination |
+ partialUEContextTransfer ,
...
}
@@ -244,7 +276,14 @@ XNAP-ELEMENTARY-PROCEDURES-CLASS-2 XNAP-ELEMENTARY-PROCEDURE ::= {
failureIndication |
handoverReport |
resourceStatusReporting |
- accessAndMobilityIndication ,
+ accessAndMobilityIndication |
+ cellTrafficTrace |
+ rANMulticastGroupPaging |
+ scgFailureInformationReport |
+ scgFailureTransfer |
+ f1CTrafficTransfer |
+ retrieveUEContextConfirm |
+ cPCCancel ,
...
}
@@ -385,7 +424,7 @@ rRCTransfer XNAP-ELEMENTARY-PROCEDURE ::= {
xnRemoval XNAP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE XnRemovalRequest
SUCCESSFUL OUTCOME XnRemovalResponse
- UNSUCCESSFUL OUTCOME XnRemovalFailure
+ UNSUCCESSFUL OUTCOME XnRemovalFailure
PROCEDURE CODE id-xnRemoval
CRITICALITY reject
}
@@ -408,6 +447,13 @@ nGRANnodeConfigurationUpdate XNAP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY reject
}
+partialUEContextTransfer XNAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PartialUEContextTransfer
+ SUCCESSFUL OUTCOME PartialUEContextTransferAcknowledge
+ UNSUCCESSFUL OUTCOME PartialUEContextTransferFailure
+ PROCEDURE CODE id-partialUEContextTransfer
+ CRITICALITY reject
+}
e-UTRA-NR-CellResourceCoordination XNAP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE E-UTRA-NR-CellResourceCoordinationRequest
@@ -527,7 +573,7 @@ mobilitySettingsChange XNAP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE MobilityChangeRequest
SUCCESSFUL OUTCOME MobilityChangeAcknowledge
UNSUCCESSFUL OUTCOME MobilityChangeFailure
- PROCEDURE CODE id-mobilitySettingsChange
+ PROCEDURE CODE id-mobilitySettingsChange
CRITICALITY reject
}
@@ -535,7 +581,72 @@ mobilitySettingsChange XNAP-ELEMENTARY-PROCEDURE ::= {
accessAndMobilityIndication XNAP-ELEMENTARY-PROCEDURE ::={
INITIATING MESSAGE AccessAndMobilityIndication
PROCEDURE CODE id-accessAndMobilityIndication
- CRITICALITY ignore
+ CRITICALITY ignore
+}
+
+cellTrafficTrace XNAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE CellTrafficTrace
+ PROCEDURE CODE id-cellTrafficTrace
+ CRITICALITY ignore
+}
+
+rANMulticastGroupPaging XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE RANMulticastGroupPaging
+ PROCEDURE CODE id-RANMulticastGroupPaging
+ CRITICALITY reject
+}
+
+scgFailureInformationReport XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE ScgFailureInformationReport
+ PROCEDURE CODE id-scgFailureInformationReport
+ CRITICALITY ignore
+}
+
+scgFailureTransfer XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE ScgFailureTransfer
+ PROCEDURE CODE id-scgFailureTransfer
+ CRITICALITY ignore
+}
+
+f1CTrafficTransfer XNAP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE F1CTrafficTransfer
+ PROCEDURE CODE id-f1CTrafficTransfer
+ CRITICALITY reject
}
+iABTransportMigrationManagement XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE IABTransportMigrationManagementRequest
+ SUCCESSFUL OUTCOME IABTransportMigrationManagementResponse
+ UNSUCCESSFUL OUTCOME IABTransportMigrationManagementReject
+ PROCEDURE CODE id-iABTransportMigrationManagement
+ CRITICALITY reject
+}
+
+iABTransportMigrationModification XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE IABTransportMigrationModificationRequest
+ SUCCESSFUL OUTCOME IABTransportMigrationModificationResponse
+ PROCEDURE CODE id-iABTransportMigrationModification
+ CRITICALITY reject
+}
+
+iABResourceCoordination XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE IABResourceCoordinationRequest
+ SUCCESSFUL OUTCOME IABResourceCoordinationResponse
+ PROCEDURE CODE id-iABResourceCoordination
+ CRITICALITY reject
+}
+
+retrieveUEContextConfirm XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE RetrieveUEContextConfirm
+ PROCEDURE CODE id-retrieveUEContextConfirm
+ CRITICALITY ignore
+}
+
+cPCCancel XNAP-ELEMENTARY-PROCEDURE ::={
+ INITIATING MESSAGE CPCCancel
+ PROCEDURE CODE id-cPCCancel
+ CRITICALITY ignore
+}
+
+
END
diff --git a/epan/dissectors/asn1/xnap/packet-xnap-template.c b/epan/dissectors/asn1/xnap/packet-xnap-template.c
index 334aaa0f0a..4b28a7d036 100644
--- a/epan/dissectors/asn1/xnap/packet-xnap-template.c
+++ b/epan/dissectors/asn1/xnap/packet-xnap-template.c
@@ -1,7 +1,7 @@
/* packet-xnap.c
* Routines for dissecting NG-RAN Xn application protocol (XnAP)
* 3GPP TS 38.423 packet dissection
- * Copyright 2018-2021, Pascal Quantin <pascal@wireshark.org>
+ * Copyright 2018-2024, Pascal Quantin <pascal@wireshark.org>
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
@@ -10,7 +10,7 @@
* SPDX-License-Identifier: GPL-2.0-or-later
*
* Ref:
- * 3GPP TS 38.423 V16.7.0 (2021-10)
+ * 3GPP TS 38.423 V17.7.0 (2023-12)
*/
#include "config.h"
@@ -48,75 +48,92 @@
#include "packet-xnap-val.h"
/* Initialize the protocol and registered fields */
-static int proto_xnap = -1;
-static int hf_xnap_transportLayerAddressIPv4 = -1;
-static int hf_xnap_transportLayerAddressIPv6 = -1;
-static int hf_xnap_NG_RANTraceID_TraceID = -1;
-static int hf_xnap_NG_RANTraceID_TraceRecordingSessionReference = -1;
-static int hf_xnap_primaryRATRestriction_e_UTRA = -1;
-static int hf_xnap_primaryRATRestriction_nR = -1;
-static int hf_xnap_primaryRATRestriction_nR_unlicensed = -1;
-static int hf_xnap_primaryRATRestriction_reserved = -1;
-static int hf_xnap_secondaryRATRestriction_e_UTRA = -1;
-static int hf_xnap_secondaryRATRestriction_nR = -1;
-static int hf_xnap_secondaryRATRestriction_e_UTRA_unlicensed = -1;
-static int hf_xnap_secondaryRATRestriction_nR_unlicensed = -1;
-static int hf_xnap_secondaryRATRestriction_reserved = -1;
-static int hf_xnap_MDT_Location_Info_GNSS = -1;
-static int hf_xnap_MDT_Location_Info_reserved = -1;
-static int hf_xnap_MeasurementsToActivate_M1 = -1;
-static int hf_xnap_MeasurementsToActivate_M2 = -1;
-static int hf_xnap_MeasurementsToActivate_M3 = -1;
-static int hf_xnap_MeasurementsToActivate_M4 = -1;
-static int hf_xnap_MeasurementsToActivate_M5 = -1;
-static int hf_xnap_MeasurementsToActivate_LoggingM1FromEventTriggered = -1;
-static int hf_xnap_MeasurementsToActivate_M6 = -1;
-static int hf_xnap_MeasurementsToActivate_M7 = -1;
-static int hf_xnap_ReportCharacteristics_PRBPeriodic = -1;
-static int hf_xnap_ReportCharacteristics_TNLCapacityIndPeriodic = -1;
-static int hf_xnap_ReportCharacteristics_CompositeAvailableCapacityPeriodic = -1;
-static int hf_xnap_ReportCharacteristics_NumberOfActiveUEs = -1;
-static int hf_xnap_ReportCharacteristics_Reserved = -1;
+static int proto_xnap;
+static int hf_xnap_transportLayerAddressIPv4;
+static int hf_xnap_transportLayerAddressIPv6;
+static int hf_xnap_NG_RANTraceID_TraceID;
+static int hf_xnap_NG_RANTraceID_TraceRecordingSessionReference;
+static int hf_xnap_primaryRATRestriction_e_UTRA;
+static int hf_xnap_primaryRATRestriction_nR;
+static int hf_xnap_primaryRATRestriction_nR_unlicensed;
+static int hf_xnap_primaryRATRestriction_nR_LEO;
+static int hf_xnap_primaryRATRestriction_nR_MEO;
+static int hf_xnap_primaryRATRestriction_nR_GEO;
+static int hf_xnap_primaryRATRestriction_nR_OTHERSAT;
+static int hf_xnap_primaryRATRestriction_reserved;
+static int hf_xnap_secondaryRATRestriction_e_UTRA;
+static int hf_xnap_secondaryRATRestriction_nR;
+static int hf_xnap_secondaryRATRestriction_e_UTRA_unlicensed;
+static int hf_xnap_secondaryRATRestriction_nR_unlicensed;
+static int hf_xnap_secondaryRATRestriction_reserved;
+static int hf_xnap_MDT_Location_Info_GNSS;
+static int hf_xnap_MDT_Location_Info_reserved;
+static int hf_xnap_MeasurementsToActivate_M1;
+static int hf_xnap_MeasurementsToActivate_M2;
+static int hf_xnap_MeasurementsToActivate_M3;
+static int hf_xnap_MeasurementsToActivate_M4;
+static int hf_xnap_MeasurementsToActivate_M5;
+static int hf_xnap_MeasurementsToActivate_LoggingM1FromEventTriggered;
+static int hf_xnap_MeasurementsToActivate_M6;
+static int hf_xnap_MeasurementsToActivate_M7;
+static int hf_xnap_ReportCharacteristics_PRBPeriodic;
+static int hf_xnap_ReportCharacteristics_TNLCapacityIndPeriodic;
+static int hf_xnap_ReportCharacteristics_CompositeAvailableCapacityPeriodic;
+static int hf_xnap_ReportCharacteristics_NumberOfActiveUEs;
+static int hf_xnap_ReportCharacteristics_Reserved;
#include "packet-xnap-hf.c"
/* Initialize the subtree pointers */
-static gint ett_xnap = -1;
-static gint ett_xnap_RRC_Context = -1;
-static gint ett_nxap_container = -1;
-static gint ett_xnap_PLMN_Identity = -1;
-static gint ett_xnap_measurementTimingConfiguration = -1;
-static gint ett_xnap_TransportLayerAddress = -1;
-static gint ett_xnap_NG_RANTraceID = -1;
-static gint ett_xnap_LastVisitedEUTRANCellInformation = -1;
-static gint ett_xnap_LastVisitedNGRANCellInformation = -1;
-static gint ett_xnap_LastVisitedUTRANCellInformation = -1;
-static gint ett_xnap_LastVisitedGERANCellInformation = -1;
-static gint ett_xnap_UERadioCapabilityForPagingOfNR = -1;
-static gint ett_xnap_UERadioCapabilityForPagingOfEUTRA = -1;
-static gint ett_xnap_FiveGCMobilityRestrictionListContainer = -1;
-static gint ett_xnap_primaryRATRestriction = -1;
-static gint ett_xnap_secondaryRATRestriction = -1;
-static gint ett_xnap_ImmediateMDT_EUTRA = -1;
-static gint ett_xnap_MDT_Location_Info = -1;
-static gint ett_xnap_MeasurementsToActivate = -1;
-static gint ett_xnap_NRMobilityHistoryReport = -1;
-static gint ett_xnap_RACHReportContainer = -1;
-static gint ett_xnap_TargetCellinEUTRAN = -1;
-static gint ett_xnap_TDDULDLConfigurationCommonNR = -1;
-static gint ett_xnap_UERLFReportContainerLTE = -1;
-static gint ett_xnap_UERLFReportContainerNR = -1;
-static gint ett_xnap_burstArrivalTime = -1;
-static gint ett_xnap_ReportCharacteristics = -1;
-static gint ett_xnap_NRCellPRACHConfig = -1;
-static gint ett_xnap_anchorCarrier_NPRACHConfig = -1;
-static gint ett_xnap_anchorCarrier_EDT_NPRACHConfig = -1;
-static gint ett_xnap_anchorCarrier_Format2_NPRACHConfig = -1;
-static gint ett_xnap_anchorCarrier_Format2_EDT_NPRACHConfig = -1;
-static gint ett_xnap_non_anchorCarrier_NPRACHConfig = -1;
-static gint ett_xnap_non_anchorCarrier_Format2_NPRACHConfig = -1;
-static gint ett_xnap_anchorCarrier_NPRACHConfigTDD = -1;
-static gint ett_xnap_non_anchorCarrier_NPRACHConfigTDD = -1;
-static gint ett_xnap_non_anchorCarrierFrequency = -1;
+static gint ett_xnap;
+static gint ett_xnap_RRC_Context;
+static gint ett_xnap_container;
+static gint ett_xnap_PLMN_Identity;
+static gint ett_xnap_measurementTimingConfiguration;
+static gint ett_xnap_TransportLayerAddress;
+static gint ett_xnap_NG_RANTraceID;
+static gint ett_xnap_LastVisitedEUTRANCellInformation;
+static gint ett_xnap_LastVisitedNGRANCellInformation;
+static gint ett_xnap_LastVisitedUTRANCellInformation;
+static gint ett_xnap_LastVisitedGERANCellInformation;
+static gint ett_xnap_UERadioCapabilityForPagingOfNR;
+static gint ett_xnap_UERadioCapabilityForPagingOfEUTRA;
+static gint ett_xnap_FiveGCMobilityRestrictionListContainer;
+static gint ett_xnap_primaryRATRestriction;
+static gint ett_xnap_secondaryRATRestriction;
+static gint ett_xnap_ImmediateMDT_EUTRA;
+static gint ett_xnap_MDT_Location_Info;
+static gint ett_xnap_MeasurementsToActivate;
+static gint ett_xnap_NRMobilityHistoryReport;
+static gint ett_xnap_RACHReportContainer;
+static gint ett_xnap_TargetCellinEUTRAN;
+static gint ett_xnap_TDDULDLConfigurationCommonNR;
+static gint ett_xnap_UERLFReportContainerLTE;
+static gint ett_xnap_UERLFReportContainerNR;
+static gint ett_xnap_burstArrivalTime;
+static gint ett_xnap_ReportCharacteristics;
+static gint ett_xnap_NRCellPRACHConfig;
+static gint ett_xnap_anchorCarrier_NPRACHConfig;
+static gint ett_xnap_anchorCarrier_EDT_NPRACHConfig;
+static gint ett_xnap_anchorCarrier_Format2_NPRACHConfig;
+static gint ett_xnap_anchorCarrier_Format2_EDT_NPRACHConfig;
+static gint ett_xnap_non_anchorCarrier_NPRACHConfig;
+static gint ett_xnap_non_anchorCarrier_Format2_NPRACHConfig;
+static gint ett_xnap_anchorCarrier_NPRACHConfigTDD;
+static gint ett_xnap_non_anchorCarrier_NPRACHConfigTDD;
+static gint ett_xnap_non_anchorCarrierFrequency;
+static gint ett_xnap_cSI_RS_Configuration;
+static gint ett_xnap_sR_Configuration;
+static gint ett_xnap_pDCCH_ConfigSIB1;
+static gint ett_xnap_sCS_Common;
+static gint ett_xnap_LastVisitedPSCellInformation;
+static gint ett_xnap_MeasObjectContainer;
+static gint ett_xnap_RACH_Config_Common;
+static gint ett_xnap_RACH_Config_Common_IAB;
+static gint ett_xnap_ReportConfigContainer;
+static gint ett_xnap_RLC_Bearer_Configuration;
+static gint ett_xnap_SuccessfulHOReportContainer;
+static gint ett_xnap_UERLFReportContainerLTEExtendBand;
+static gint ett_xnap_MDTMode_EUTRA;
#include "packet-xnap-ett.c"
enum {
@@ -144,7 +161,6 @@ static const enum_val_t xnap_lte_rrc_context_vals[] = {
};
/* Global variables */
-static guint xnap_sctp_port = SCTP_PORT_XnAP;
static gint xnap_dissect_target_ng_ran_container_as = XNAP_NG_RAN_CONTAINER_AUTOMATIC;
static gint xnap_dissect_lte_rrc_context_as = XNAP_LTE_RRC_CONTEXT_LTE;
@@ -169,43 +185,43 @@ static dissector_handle_t xnap_handle;
static void
xnap_PacketLossRate_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v);
}
static void
xnap_PacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v);
}
static void
xnap_ExtendedPacketDelayBudget_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.2fms (%u)", (float)v/100, v);
}
static void
xnap_handoverTriggerChange_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%d)", ((float)v)/2, (gint32)v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%d)", ((float)v)/2, (gint32)v);
}
static void
xnap_Threshold_RSRP_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
}
static void
xnap_Threshold_RSRQ_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
}
static void
xnap_Threshold_SINR_fmt(gchar *s, guint32 v)
{
- g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
}
static const true_false_string xnap_tfs_activate_do_not_activate = {
@@ -365,9 +381,25 @@ void proto_register_xnap(void) {
{ "nR-unlicensed", "xnap.primaryRATRestriction.nR_unlicensed",
FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x20,
NULL, HFILL }},
+ { &hf_xnap_primaryRATRestriction_nR_LEO,
+ { "nR-LEO", "xnap.primaryRATRestriction.nR_LEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x10,
+ NULL, HFILL }},
+ { &hf_xnap_primaryRATRestriction_nR_MEO,
+ { "nR-MEO", "xnap.primaryRATRestriction.nR_MEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x08,
+ NULL, HFILL }},
+ { &hf_xnap_primaryRATRestriction_nR_GEO,
+ { "nR-GEO", "xnap.primaryRATRestriction.nR_GEO",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x04,
+ NULL, HFILL }},
+ { &hf_xnap_primaryRATRestriction_nR_OTHERSAT,
+ { "nR-unlicensed", "xnap.primaryRATRestriction.nR_unlicensed",
+ FT_BOOLEAN, 8, TFS(&tfs_restricted_not_restricted), 0x02,
+ NULL, HFILL }},
{ &hf_xnap_primaryRATRestriction_reserved,
{ "reserved", "xnap.primaryRATRestriction.reserved",
- FT_UINT8, BASE_HEX, NULL, 0x1f,
+ FT_UINT8, BASE_HEX, NULL, 0x01,
NULL, HFILL }},
{ &hf_xnap_secondaryRATRestriction_e_UTRA,
{ "e-UTRA", "xnap.secondaryRATRestriction.e_UTRA",
@@ -456,7 +488,7 @@ void proto_register_xnap(void) {
static gint *ett[] = {
&ett_xnap,
&ett_xnap_RRC_Context,
- &ett_nxap_container,
+ &ett_xnap_container,
&ett_xnap_PLMN_Identity,
&ett_xnap_measurementTimingConfiguration,
&ett_xnap_TransportLayerAddress,
@@ -491,6 +523,19 @@ void proto_register_xnap(void) {
&ett_xnap_anchorCarrier_NPRACHConfigTDD,
&ett_xnap_non_anchorCarrier_NPRACHConfigTDD,
&ett_xnap_non_anchorCarrierFrequency,
+ &ett_xnap_cSI_RS_Configuration,
+ &ett_xnap_sR_Configuration,
+ &ett_xnap_pDCCH_ConfigSIB1,
+ &ett_xnap_sCS_Common,
+ &ett_xnap_LastVisitedPSCellInformation,
+ &ett_xnap_MeasObjectContainer,
+ &ett_xnap_RACH_Config_Common,
+ &ett_xnap_RACH_Config_Common_IAB,
+ &ett_xnap_ReportConfigContainer,
+ &ett_xnap_RLC_Bearer_Configuration,
+ &ett_xnap_SuccessfulHOReportContainer,
+ &ett_xnap_UERLFReportContainerLTEExtendBand,
+ &ett_xnap_MDTMode_EUTRA,
#include "packet-xnap-ettarr.c"
};
@@ -508,13 +553,8 @@ void proto_register_xnap(void) {
xnap_proc_sout_dissector_table = register_dissector_table("xnap.proc.sout", "XNAP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_xnap, FT_UINT32, BASE_DEC);
xnap_proc_uout_dissector_table = register_dissector_table("xnap.proc.uout", "XNAP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_xnap, FT_UINT32, BASE_DEC);
- xnap_module = prefs_register_protocol(proto_xnap, proto_reg_handoff_xnap);
+ xnap_module = prefs_register_protocol(proto_xnap, NULL);
- prefs_register_uint_preference(xnap_module, "sctp.port",
- "XnAP SCTP Port",
- "Set the SCTP port for XnAP messages",
- 10,
- &xnap_sctp_port);
prefs_register_enum_preference(xnap_module, "dissect_target_ng_ran_container_as", "Dissect target NG-RAN container as",
"Select whether target NG-RAN container should be decoded automatically"
" (based on Xn Setup procedure) or manually",
@@ -528,21 +568,7 @@ void proto_register_xnap(void) {
void
proto_reg_handoff_xnap(void)
{
- static gboolean initialized = FALSE;
- static guint sctp_port;
-
- if (!initialized) {
- dissector_add_for_decode_as("sctp.port", xnap_handle);
- dissector_add_uint("sctp.ppi", XNAP_PROTOCOL_ID, xnap_handle);
- initialized = TRUE;
+ dissector_add_uint_with_preference("sctp.port", SCTP_PORT_XnAP, xnap_handle);
+ dissector_add_uint("sctp.ppi", XNAP_PROTOCOL_ID, xnap_handle);
#include "packet-xnap-dis-tab.c"
- } else {
- if (sctp_port != 0) {
- dissector_delete_uint("sctp.port", sctp_port, xnap_handle);
- }
- }
- sctp_port = xnap_sctp_port;
- if (sctp_port != 0) {
- dissector_add_uint("sctp.port", sctp_port, xnap_handle);
- }
}
diff --git a/epan/dissectors/asn1/xnap/xnap.cnf b/epan/dissectors/asn1/xnap/xnap.cnf
index 70a12dba4e..8449bb3fa1 100644
--- a/epan/dissectors/asn1/xnap/xnap.cnf
+++ b/epan/dissectors/asn1/xnap/xnap.cnf
@@ -1,6 +1,6 @@
# xnap.cnf
# xnap conformation file
-# Copyright 2018-2021 Pascal Quantin
+# Copyright 2018-2024 Pascal Quantin
#.OPT
PER
@@ -42,14 +42,11 @@ SuccessfulOutcome/value successfulOutcome_value
PrivateIE-Field/value privateIE_Field_value
#.OMIT_ASSIGNMENT
-DataForwardingAccepted
-InterfacesToTrace
Presence
ProtocolIE-FieldPair
ProtocolIE-ContainerList
ProtocolIE-ContainerPair
ProtocolIE-ContainerPairList
-ReferenceID
#.END
#.FN_BODY ProtocolIE-ID VAL_PTR = &xnap_data->protocol_ie_id
@@ -135,7 +132,7 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
proto_tree *subtree;
GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo);
- subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container);
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_container);
if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
source_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
(xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
@@ -153,17 +150,33 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
%(DEFAULT_BODY)s
if (parameter_tvb) {
proto_tree *subtree;
+ struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo);
GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo);
- subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container);
- if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- target_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
- (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_container);
+ if ((xnap_data->procedure_code == id_sNGRANnodeAdditionPreparation &&
+ xnap_data->message_type == INITIATING_MESSAGE) ||
+ (xnap_data->procedure_code == id_mNGRANnodeinitiatedSNGRANnodeModificationPreparation &&
+ xnap_data->message_type == INITIATING_MESSAGE) ||
+ (xnap_data->procedure_code == id_sNGRANnodeinitiatedSNGRANnodeModificationPreparation &&
+ xnap_data->message_type == UNSUCCESSFUL_OUTCOME) ||
+ (xnap_data->procedure_code == id_mNGRANnodeinitiatedSNGRANnodeRelease &&
+ xnap_data->message_type == INITIATING_MESSAGE)) {
dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) ||
- (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) {
- dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ } else if (xnap_data->procedure_code == id_sNGRANnodeinitiatedSNGRANnodeModificationPreparation &&
+ xnap_data->message_type == SUCCESSFUL_OUTCOME) {
+ if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
+ target_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
+ (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
+ dissect_nr_rrc_RRCReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
+ target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) ||
+ (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) {
+ dissect_lte_rrc_RRCConnectionReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ } else if (xnap_data->procedure_code == id_sNGRANnodeChange &&
+ xnap_data->message_type == SUCCESSFUL_OUTCOME) {
+ dissect_nr_rrc_RRCReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
}
@@ -173,18 +186,9 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
%(DEFAULT_BODY)s
if (parameter_tvb) {
proto_tree *subtree;
- GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo);
- subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container);
- if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- source_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
- (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
- dissect_nr_rrc_CG_Config_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) ||
- (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) {
- dissect_lte_rrc_SCG_Config_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- }
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_container);
+ dissect_nr_rrc_CG_Config_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
#.FN_BODY Configuration-successfully-applied/m-NG-RANNode-to-S-NG-RANNode-Container VAL_PTR = &parameter_tvb
@@ -195,7 +199,7 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
proto_tree *subtree;
GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo);
- subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container);
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_container);
if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
target_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
(xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
@@ -213,18 +217,20 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
%(DEFAULT_BODY)s
if (parameter_tvb) {
proto_tree *subtree;
- GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo);
- subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container);
- if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- target_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
- (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
- dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) ||
- (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) {
- dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- }
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_container);
+ dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY CPC-target-SN-required-list-Item/sN-to-MN-Container VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ proto_tree *subtree;
+
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_container);
+ dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
#.FN_BODY UEContextInfoRetrUECtxtResp/rrc-Context VAL_PTR = &parameter_tvb
@@ -237,11 +243,11 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS =
subtree = proto_item_add_subtree(actx->created_item, ett_xnap_RRC_Context);
if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- target_ranmode_id == GlobalNG_RANNode_ID_gNB) &&
+ target_ranmode_id == GlobalNG_RANNode_ID_gNB) ||
(xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) {
dissect_nr_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
} else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC &&
- target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) &&
+ target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) ||
(xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) {
dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
@@ -294,39 +300,38 @@ TAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
}
#.FIELD_ATTR
-BPLMN-ID-Info-NR-Item/nr-CI ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX
+BPLMN-ID-Info-NR-Item/nr-CI ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX BITMASK=0xFFFFFFFFF0
#.FIELD_ATTR
-Cell-Type-Choice/ng-ran-nr ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX
+Cell-Type-Choice/ng-ran-nr ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX BITMASK=0xFFFFFFFFF0
#.FIELD_ATTR
-NG-RAN-Cell-Identity/nr ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX
+NG-RAN-Cell-Identity/nr ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX BITMASK=0xFFFFFFFFF0
#.FIELD_ATTR
-NR-CGI/nr-CI ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX
+NR-CGI/nr-CI ABBREV=NR_Cell_Identity TYPE=FT_UINT40 DISPLAY=BASE_HEX BITMASK=0xFFFFFFFFF0
#.FN_BODY NR-Cell-Identity VAL_PTR = &cell_id_tvb HF_INDEX=-1
tvbuff_t *cell_id_tvb = NULL;
%(DEFAULT_BODY)s
if (cell_id_tvb) {
- guint64 cell_id = tvb_get_bits64(cell_id_tvb, 0, 36, ENC_BIG_ENDIAN);
- actx->created_item = proto_tree_add_uint64(tree, hf_index, cell_id_tvb, 0, 5, cell_id);
+ actx->created_item = proto_tree_add_item(tree, hf_index, cell_id_tvb, 0, 5, ENC_BIG_ENDIAN);
}
#.FIELD_ATTR
-BPLMN-ID-Info-EUTRA-Item/e-utraCI ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+BPLMN-ID-Info-EUTRA-Item/e-utraCI ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FIELD_ATTR
-Cell-Type-Choice/ng-ran-e-utra ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+Cell-Type-Choice/ng-ran-e-utra ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FIELD_ATTR
-Cell-Type-Choice/e-utran ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+Cell-Type-Choice/e-utran ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FIELD_ATTR
-E-UTRA-CGI/e-utra-CI ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+E-UTRA-CGI/e-utra-CI ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FIELD_ATTR
-NG-RAN-Cell-Identity/e-utra ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX
+NG-RAN-Cell-Identity/e-utra ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=BASE_HEX BITMASK=0xFFFFFFF0
#.FN_BODY NR-CGI
struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo);
@@ -342,8 +347,7 @@ NG-RAN-Cell-Identity/e-utra ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=B
tvbuff_t *cell_id_tvb = NULL;
%(DEFAULT_BODY)s
if (cell_id_tvb) {
- guint32 cell_id = tvb_get_bits32(cell_id_tvb, 0, 28, ENC_BIG_ENDIAN);
- actx->created_item = proto_tree_add_uint(tree, hf_index, cell_id_tvb, 0, 4, cell_id);
+ actx->created_item = proto_tree_add_item(tree, hf_index, cell_id_tvb, 0, 4, ENC_BIG_ENDIAN);
}
#.FN_BODY ServedCellInformation-NR/measurementTimingConfiguration VAL_PTR = &param_tvb
@@ -362,6 +366,17 @@ NG-RAN-Cell-Identity/e-utra ABBREV=E_UTRA_Cell_Identity TYPE=FT_UINT32 DISPLAY=B
dissect_nr_rrc_MeasurementTimingConfiguration_PDU(param_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY SuccessfulHOReportContainer VAL_PTR = &param_tvb
+ tvbuff_t *param_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (param_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_xnap_SuccessfulHOReportContainer);
+ dissect_nr_rrc_SuccessHO_Report_r17_PDU(param_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.TYPE_ATTR
+SurvivalTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_microseconds
+
#.TYPE_ATTR
BitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_sec
@@ -447,6 +462,15 @@ MaximumDataBurstVolume DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_byte_byt
dissect_s1ap_LastVisitedGERANCellInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY LastVisitedPSCellInformation VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_LastVisitedPSCellInformation);
+ dissect_ngap_LastVisitedPSCellInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.TYPE_ATTR
ExpectedUEMovingTrajectoryItem/timeStayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
@@ -507,8 +531,65 @@ VolumeTimedReport-Item/usageCountDL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&u
dissect_ngap_MobilityRestrictionList_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY IABCellInformation/cSI-RS-Configuration 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_xnap_cSI_RS_Configuration);
+ dissect_nr_rrc_NZP_CSI_RS_Resource_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY IABCellInformation/sR-Configuration 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_xnap_sR_Configuration);
+ dissect_nr_rrc_SchedulingRequestResourceConfig_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY IABCellInformation/pDCCH-ConfigSIB1 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_xnap_pDCCH_ConfigSIB1);
+ dissect_nr_rrc_PDCCH_ConfigSIB1_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY IABCellInformation/sCS-Common 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_xnap_sCS_Common);
+ dissect_nr_rrc_subCarrierSpacingCommon_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.TYPE_ATTR
+IABTNLAddress/iPv4Address TYPE=FT_IPv4
+#.FN_BODY IABTNLAddress/iPv4Address VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 4, ENC_BIG_ENDIAN);
+
+#.TYPE_ATTR
+IABTNLAddress/iPv6Address TYPE=FT_IPv6
+#.FN_BODY IABTNLAddress/iPv6Address VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 16, ENC_BIG_ENDIAN);
+
#.TYPE_ATTR
-BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
+IABTNLAddress/iPv6Prefix TYPE=FT_BYTES
+#.FN_BODY IABTNLAddress/iPv6Prefix VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 8, ENC_NA);
+
+#.TYPE_ATTR
+BluetoothName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY BluetoothName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -522,6 +603,10 @@ BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
&hf_xnap_primaryRATRestriction_e_UTRA,
&hf_xnap_primaryRATRestriction_nR,
&hf_xnap_primaryRATRestriction_nR_unlicensed,
+ &hf_xnap_primaryRATRestriction_nR_LEO,
+ &hf_xnap_primaryRATRestriction_nR_MEO,
+ &hf_xnap_primaryRATRestriction_nR_GEO,
+ &hf_xnap_primaryRATRestriction_nR_OTHERSAT,
&hf_xnap_primaryRATRestriction_reserved,
NULL
};
@@ -548,15 +633,6 @@ BluetoothName TYPE=FT_STRING DISPLAY = STR_UNICODE
#.TYPE_ATTR
ExtendedPacketDelayBudget DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(xnap_ExtendedPacketDelayBudget_fmt)
-#.FN_BODY ImmediateMDT-EUTRA VAL_PTR = &parameter_tvb
- tvbuff_t *parameter_tvb = NULL;
- proto_tree *subtree;
-%(DEFAULT_BODY)s
- if (parameter_tvb) {
- subtree = proto_item_add_subtree(actx->created_item, ett_xnap_ImmediateMDT_EUTRA);
- dissect_s1ap_ImmediateMDT_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
- }
-
#.TYPE_ATTR
M7period DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_minutes
@@ -573,6 +649,14 @@ M7period DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_minutes
proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
}
+#.FN_BODY MeasObjectContainer 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_xnap_MeasObjectContainer);
+ dissect_nr_rrc_MeasObjectToAddMod_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY MeasurementsToActivate VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -612,6 +696,22 @@ MobilityParametersModificationRange/handoverTriggerChange DISPLAY=BASE_CUSTOM ST
#.TYPE_ATTR
OfferedCapacity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kbps
+#.FN_BODY RACH-Config-Common 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_xnap_RACH_Config_Common);
+ dissect_nr_rrc_RACH_ConfigCommon_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY RACH-Config-Common-IAB 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_xnap_RACH_Config_Common_IAB);
+ dissect_nr_rrc_rach_ConfigCommonIAB_r16_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY RACHReportContainer VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -620,6 +720,30 @@ OfferedCapacity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_kbps
dissect_nr_rrc_RA_ReportList_r16_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY ReportConfigContainer 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_xnap_ReportConfigContainer);
+ dissect_nr_rrc_ReportConfigToAddMod_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SDT-DRBsToBeSetupList-Item/dRB-RLC-Bearer-Configuration 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_xnap_RLC_Bearer_Configuration);
+ dissect_nr_rrc_RLC_BearerConfig_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY SDT-SRBsToBeSetupList-Item/sRB-RLC-Bearer-Configuration 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_xnap_RLC_Bearer_Configuration);
+ dissect_nr_rrc_RLC_BearerConfig_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY TargetCellinEUTRAN VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -654,6 +778,15 @@ Threshold-SINR DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(xnap_Threshold_SINR_fmt)
dissect_lte_rrc_RLF_Report_r9_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
+#.FN_BODY UERLFReportContainerLTEExtendBand VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_xnap_UERLFReportContainerLTEExtendBand);
+ dissect_lte_rrc_RLF_Report_v9e0_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.FN_BODY UERLFReportContainerNR VAL_PTR = &parameter_tvb
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -663,7 +796,7 @@ Threshold-SINR DISPLAY=BASE_CUSTOM STRINGS=CF_FUNC(xnap_Threshold_SINR_fmt)
}
#.TYPE_ATTR
-WLANName TYPE=FT_STRING DISPLAY = STR_UNICODE
+WLANName TYPE=FT_STRING DISPLAY = BASE_NONE
#.FN_BODY WLANName VAL_PTR = &parameter_tvb HF_INDEX = -1
tvbuff_t *parameter_tvb = NULL;
%(DEFAULT_BODY)s
@@ -789,6 +922,14 @@ TSCAssistanceInformation/periodicity DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&
#.TYPE_ATTR
QosMonitoringReportingFrequency DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+#.FN_BODY MDTMode-EUTRA VAL_PTR = &mdt_mode_eutra_tvb
+ tvbuff_t *mdt_mode_eutra_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (mdt_mode_eutra_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_xnap_MDTMode_EUTRA);
+ dissect_s1ap_MDTMode_PDU(mdt_mode_eutra_tvb, actx->pinfo, subtree, NULL);
+ }
+
#.END
#.FN_HDR HandoverRequest
@@ -871,6 +1012,12 @@ QosMonitoringReportingFrequency DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdateAcknowledge");
#.FN_HDR NGRANNodeConfigurationUpdateFailure
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdateFailure");
+#.FN_HDR PartialUEContextTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PartialUEContextTransfer");
+#.FN_HDR PartialUEContextTransferAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PartialUEContextTransferAcknowledge");
+#.FN_HDR PartialUEContextTransferFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PartialUEContextTransferFailure");
#.FN_HDR E-UTRA-NR-CellResourceCoordinationRequest
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-UTRA-NR-CellResourceCoordinationRequest");
#.FN_HDR E-UTRA-NR-CellResourceCoordinationResponse
@@ -925,6 +1072,34 @@ QosMonitoringReportingFrequency DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MobilityChangeFailure");
#.FN_HDR AccessAndMobilityIndication
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "AccessAndMobilityIndication");
+#.FN_HDR CellTrafficTrace
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace");
+#.FN_HDR RANMulticastGroupPaging
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANMulticastGroupPaging");
+#.FN_HDR ScgFailureInformationReport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ScgFailureInformationReport");
+#.FN_HDR ScgFailureTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ScgFailureTransfer");
+#.FN_HDR F1CTrafficTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "F1CTrafficTransfer");
+#.FN_HDR IABTransportMigrationManagementRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABTransportMigrationManagementRequest");
+#.FN_HDR IABTransportMigrationManagementResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABTransportMigrationManagementResponse");
+#.FN_HDR IABTransportMigrationManagementReject
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABTransportMigrationManagementReject");
+#.FN_HDR IABTransportMigrationModificationRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABTransportMigrationModificationRequest");
+#.FN_HDR IABTransportMigrationModificationResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABTransportMigrationModificationResponse");
+#.FN_HDR IABResourceCoordinationRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABResourceCoordinationRequest");
+#.FN_HDR IABResourceCoordinationResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IABResourceCoordinationResponse");
+#.FN_HDR RetrieveUEContextConfirm
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextConfirm");
+#.FN_HDR CPCCancel
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CPCCancel");
#.ASSIGN_VALUE_TO_TYPE # XnAP does not have constants assigned to types, they are pure INTEGER
# ProcedureCode
@@ -966,258 +1141,397 @@ id-resourceStatusReportingInitiation ProcedureCode
id-resourceStatusReporting ProcedureCode
id-mobilitySettingsChange ProcedureCode
id-accessAndMobilityIndication ProcedureCode
+id-cellTrafficTrace ProcedureCode
+id-RANMulticastGroupPaging ProcedureCode
+id-scgFailureInformationReport ProcedureCode
+id-ProcedureCode41-NotToBeUsed ProcedureCode
+id-scgFailureTransfer ProcedureCode
+id-f1CTrafficTransfer ProcedureCode
+id-iABTransportMigrationManagement ProcedureCode
+id-iABTransportMigrationModification ProcedureCode
+id-iABResourceCoordination ProcedureCode
+id-retrieveUEContextConfirm ProcedureCode
+id-cPCCancel ProcedureCode
+id-partialUEContextTransfer ProcedureCode
# ProtocolIE-ID
-id-ActivatedServedCells ProtocolIE-ID
-id-ActivationIDforCellActivation ProtocolIE-ID
-id-admittedSplitSRB ProtocolIE-ID
-id-admittedSplitSRBrelease ProtocolIE-ID
-id-AMF-Region-Information ProtocolIE-ID
-id-AssistanceDataForRANPaging ProtocolIE-ID
-id-BearersSubjectToCounterCheck ProtocolIE-ID
-id-Cause ProtocolIE-ID
-id-cellAssistanceInfo-NR ProtocolIE-ID
-id-ConfigurationUpdateInitiatingNodeChoice ProtocolIE-ID
-id-CriticalityDiagnostics ProtocolIE-ID
-id-XnUAddressInfoperPDUSession-List ProtocolIE-ID
-id-DRBsSubjectToStatusTransfer-List ProtocolIE-ID
-id-ExpectedUEBehaviour ProtocolIE-ID
-id-GlobalNG-RAN-node-ID ProtocolIE-ID
-id-GUAMI ProtocolIE-ID
-id-indexToRatFrequSelectionPriority ProtocolIE-ID
-id-initiatingNodeType-ResourceCoordRequest ProtocolIE-ID
-id-List-of-served-cells-E-UTRA ProtocolIE-ID
-id-List-of-served-cells-NR ProtocolIE-ID
-id-LocationReportingInformation ProtocolIE-ID
-id-MAC-I ProtocolIE-ID
-id-MaskedIMEISV ProtocolIE-ID
-id-M-NG-RANnodeUEXnAPID ProtocolIE-ID
-id-MN-to-SN-Container ProtocolIE-ID
-id-MobilityRestrictionList ProtocolIE-ID
-id-new-NG-RAN-Cell-Identity ProtocolIE-ID
-id-newNG-RANnodeUEXnAPID ProtocolIE-ID
-id-UEReportRRCTransfer ProtocolIE-ID
-id-oldNG-RANnodeUEXnAPID ProtocolIE-ID
-id-OldtoNewNG-RANnodeResumeContainer ProtocolIE-ID
-id-PagingDRX ProtocolIE-ID
-id-PCellID ProtocolIE-ID
-id-PDCPChangeIndication ProtocolIE-ID
-id-PDUSessionAdmittedAddedAddReqAck ProtocolIE-ID
-id-PDUSessionAdmittedModSNModConfirm ProtocolIE-ID
-id-PDUSessionAdmitted-SNModResponse ProtocolIE-ID
-id-PDUSessionNotAdmittedAddReqAck ProtocolIE-ID
-id-PDUSessionNotAdmitted-SNModResponse ProtocolIE-ID
-id-PDUSessionReleasedList-RelConf ProtocolIE-ID
-id-PDUSessionReleasedSNModConfirm ProtocolIE-ID
-id-PDUSessionResourcesActivityNotifyList ProtocolIE-ID
-id-PDUSessionResourcesAdmitted-List ProtocolIE-ID
-id-PDUSessionResourcesNotAdmitted-List ProtocolIE-ID
-id-PDUSessionResourcesNotifyList ProtocolIE-ID
-id-PDUSession-SNChangeConfirm-List ProtocolIE-ID
-id-PDUSession-SNChangeRequired-List ProtocolIE-ID
-id-PDUSessionToBeAddedAddReq ProtocolIE-ID
-id-PDUSessionToBeModifiedSNModRequired ProtocolIE-ID
-id-PDUSessionToBeReleasedList-RelRqd ProtocolIE-ID
-id-PDUSessionToBeReleased-RelReq ProtocolIE-ID
-id-PDUSessionToBeReleasedSNModRequired ProtocolIE-ID
-id-RANPagingArea ProtocolIE-ID
-id-PagingPriority ProtocolIE-ID
-id-requestedSplitSRB ProtocolIE-ID
-id-requestedSplitSRBrelease ProtocolIE-ID
-id-ResetRequestTypeInfo ProtocolIE-ID
-id-ResetResponseTypeInfo ProtocolIE-ID
-id-RespondingNodeTypeConfigUpdateAck ProtocolIE-ID
-id-respondingNodeType-ResourceCoordResponse ProtocolIE-ID
-id-ResponseInfo-ReconfCompl ProtocolIE-ID
-id-RRCConfigIndication ProtocolIE-ID
-id-RRCResumeCause ProtocolIE-ID
-id-SCGConfigurationQuery ProtocolIE-ID
-id-selectedPLMN ProtocolIE-ID
-id-ServedCellsToActivate ProtocolIE-ID
-id-servedCellsToUpdate-E-UTRA ProtocolIE-ID
-id-ServedCellsToUpdateInitiatingNodeChoice ProtocolIE-ID
-id-servedCellsToUpdate-NR ProtocolIE-ID
-id-s-ng-RANnode-SecurityKey ProtocolIE-ID
-id-S-NG-RANnodeUE-AMBR ProtocolIE-ID
-id-S-NG-RANnodeUEXnAPID ProtocolIE-ID
-id-SN-to-MN-Container ProtocolIE-ID
-id-sourceNG-RANnodeUEXnAPID ProtocolIE-ID
-id-SplitSRB-RRCTransfer ProtocolIE-ID
-id-TAISupport-list ProtocolIE-ID
-id-TimeToWait ProtocolIE-ID
-id-Target2SourceNG-RANnodeTranspContainer ProtocolIE-ID
-id-targetCellGlobalID ProtocolIE-ID
-id-targetNG-RANnodeUEXnAPID ProtocolIE-ID
-id-target-S-NG-RANnodeID ProtocolIE-ID
-id-TraceActivation ProtocolIE-ID
-id-UEContextID ProtocolIE-ID
-id-UEContextInfoHORequest ProtocolIE-ID
-id-UEContextInfoRetrUECtxtResp ProtocolIE-ID
-id-UEContextInfo-SNModRequest ProtocolIE-ID
-id-UEContextKeptIndicator ProtocolIE-ID
-id-UEContextRefAtSN-HORequest ProtocolIE-ID
-id-UEHistoryInformation ProtocolIE-ID
-id-UEIdentityIndexValue ProtocolIE-ID
-id-UERANPagingIdentity ProtocolIE-ID
-id-UESecurityCapabilities ProtocolIE-ID
-id-UserPlaneTrafficActivityReport ProtocolIE-ID
-id-XnRemovalThreshold ProtocolIE-ID
-id-DesiredActNotificationLevel ProtocolIE-ID
-id-AvailableDRBIDs ProtocolIE-ID
-id-AdditionalDRBIDs ProtocolIE-ID
-id-SpareDRBIDs ProtocolIE-ID
-id-RequiredNumberOfDRBIDs ProtocolIE-ID
-id-TNLA-To-Add-List ProtocolIE-ID
-id-TNLA-To-Update-List ProtocolIE-ID
-id-TNLA-To-Remove-List ProtocolIE-ID
-id-TNLA-Setup-List ProtocolIE-ID
-id-TNLA-Failed-To-Setup-List ProtocolIE-ID
-id-PDUSessionToBeReleased-RelReqAck ProtocolIE-ID
-id-S-NG-RANnodeMaxIPDataRate-UL ProtocolIE-ID
-id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID
-id-Additional-UL-NG-U-TNLatUPF-List ProtocolIE-ID
-id-SecondarydataForwardingInfoFromTarget-List ProtocolIE-ID
-id-LocationInformationSNReporting ProtocolIE-ID
-id-LocationInformationSN ProtocolIE-ID
-id-LastE-UTRANPLMNIdentity ProtocolIE-ID
-id-S-NG-RANnodeMaxIPDataRate-DL ProtocolIE-ID
-id-MaxIPrate-DL ProtocolIE-ID
-id-SecurityResult ProtocolIE-ID
-id-S-NSSAI ProtocolIE-ID
-id-MR-DC-ResourceCoordinationInfo ProtocolIE-ID
-id-AMF-Region-Information-To-Add ProtocolIE-ID
-id-AMF-Region-Information-To-Delete ProtocolIE-ID
-id-OldQoSFlowMap-ULendmarkerexpected ProtocolIE-ID
-id-RANPagingFailure ProtocolIE-ID
-id-UERadioCapabilityForPaging ProtocolIE-ID
-id-PDUSessionDataForwarding-SNModResponse ProtocolIE-ID
-id-DRBsNotAdmittedSetupModifyList ProtocolIE-ID
-id-Secondary-MN-Xn-U-TNLInfoatM ProtocolIE-ID
-id-NE-DC-TDM-Pattern ProtocolIE-ID
-id-PDUSessionCommonNetworkInstance ProtocolIE-ID
-id-BPLMN-ID-Info-EUTRA ProtocolIE-ID
-id-BPLMN-ID-Info-NR ProtocolIE-ID
-id-InterfaceInstanceIndication ProtocolIE-ID
-id-S-NG-RANnode-Addition-Trigger-Ind ProtocolIE-ID
-id-DefaultDRB-Allowed ProtocolIE-ID
-id-DRB-IDs-takenintouse ProtocolIE-ID
-id-SplitSessionIndicator ProtocolIE-ID
-id-CNTypeRestrictionsForEquivalent ProtocolIE-ID
-id-CNTypeRestrictionsForServing ProtocolIE-ID
-id-DRBs-transferred-to-MN ProtocolIE-ID
-id-ULForwardingProposal ProtocolIE-ID
-id-EndpointIPAddressAndPort ProtocolIE-ID
-id-IntendedTDD-DL-ULConfiguration-NR ProtocolIE-ID
-id-TNLConfigurationInfo ProtocolIE-ID
-id-PartialListIndicator-NR ProtocolIE-ID
-id-MessageOversizeNotification ProtocolIE-ID
-id-CellAndCapacityAssistanceInfo-NR ProtocolIE-ID
-id-NG-RANTraceID ProtocolIE-ID
-id-NonGBRResources-Offered ProtocolIE-ID
-id-FastMCGRecoveryRRCTransfer-SN-to-MN ProtocolIE-ID
-id-RequestedFastMCGRecoveryViaSRB3 ProtocolIE-ID
-id-AvailableFastMCGRecoveryViaSRB3 ProtocolIE-ID
-id-RequestedFastMCGRecoveryViaSRB3Release ProtocolIE-ID
-id-ReleaseFastMCGRecoveryViaSRB3 ProtocolIE-ID
-id-FastMCGRecoveryRRCTransfer-MN-to-SN ProtocolIE-ID
-id-ExtendedRATRestrictionInformation ProtocolIE-ID
-id-QoSMonitoringRequest ProtocolIE-ID
-id-FiveGCMobilityRestrictionListContainer ProtocolIE-ID
-id-PartialListIndicator-EUTRA ProtocolIE-ID
-id-CellAndCapacityAssistanceInfo-EUTRA ProtocolIE-ID
-id-CHOinformation-Req ProtocolIE-ID
-id-CHOinformation-Ack ProtocolIE-ID
-id-targetCellsToCancel ProtocolIE-ID
-id-requestedTargetCellGlobalID ProtocolIE-ID
-id-procedureStage ProtocolIE-ID
-id-DAPSRequestInfo ProtocolIE-ID
-id-DAPSResponseInfo-List ProtocolIE-ID
-id-CHO-MRDC-Indicator ProtocolIE-ID
-id-OffsetOfNbiotChannelNumberToDL-EARFCN ProtocolIE-ID
-id-OffsetOfNbiotChannelNumberToUL-EARFCN ProtocolIE-ID
-id-NBIoT-UL-DL-AlignmentOffset ProtocolIE-ID
-id-LTEV2XServicesAuthorized ProtocolIE-ID
-id-NRV2XServicesAuthorized ProtocolIE-ID
-id-LTEUESidelinkAggregateMaximumBitRate ProtocolIE-ID
-id-NRUESidelinkAggregateMaximumBitRate ProtocolIE-ID
-id-PC5QoSParameters ProtocolIE-ID
-id-AlternativeQoSParaSetList ProtocolIE-ID
-id-CurrentQoSParaSetIndex ProtocolIE-ID
-id-MobilityInformation ProtocolIE-ID
-id-InitiatingCondition-FailureIndication ProtocolIE-ID
-id-UEHistoryInformationFromTheUE ProtocolIE-ID
-id-HandoverReportType ProtocolIE-ID
-id-HandoverCause ProtocolIE-ID
-id-SourceCellCGI ProtocolIE-ID
-id-TargetCellCGI ProtocolIE-ID
-id-ReEstablishmentCellCGI ProtocolIE-ID
-id-TargetCellinEUTRAN ProtocolIE-ID
-id-SourceCellCRNTI ProtocolIE-ID
-id-UERLFReportContainer ProtocolIE-ID
-id-NGRAN-Node1-Measurement-ID ProtocolIE-ID
-id-NGRAN-Node2-Measurement-ID ProtocolIE-ID
-id-RegistrationRequest ProtocolIE-ID
-id-ReportCharacteristics ProtocolIE-ID
-id-CellToReport ProtocolIE-ID
-id-ReportingPeriodicity ProtocolIE-ID
-id-CellMeasurementResult ProtocolIE-ID
-id-NG-RANnode1CellID ProtocolIE-ID
-id-NG-RANnode2CellID ProtocolIE-ID
-id-NG-RANnode1MobilityParameters ProtocolIE-ID
-id-NG-RANnode2ProposedMobilityParameters ProtocolIE-ID
-id-MobilityParametersModificationRange ProtocolIE-ID
-id-TDDULDLConfigurationCommonNR ProtocolIE-ID
-id-CarrierList ProtocolIE-ID
-id-ULCarrierList ProtocolIE-ID
-id-FrequencyShift7p5khz ProtocolIE-ID
-id-SSB-PositionsInBurst ProtocolIE-ID
-id-NRCellPRACHConfig ProtocolIE-ID
-id-RACHReportInformation ProtocolIE-ID
-id-IABNodeIndication ProtocolIE-ID
-id-Redundant-UL-NG-U-TNLatUPF ProtocolIE-ID
-id-CNPacketDelayBudgetDownlink ProtocolIE-ID
-id-CNPacketDelayBudgetUplink ProtocolIE-ID
-id-Additional-Redundant-UL-NG-U-TNLatUPF-List ProtocolIE-ID
-id-RedundantCommonNetworkInstance ProtocolIE-ID
-id-TSCTrafficCharacteristics ProtocolIE-ID
-id-RedundantQoSFlowIndicator ProtocolIE-ID
-id-Redundant-DL-NG-U-TNLatNG-RAN ProtocolIE-ID
-id-ExtendedPacketDelayBudget ProtocolIE-ID
-id-Additional-PDCP-Duplication-TNL-List ProtocolIE-ID
-id-RedundantPDUSessionInformation ProtocolIE-ID
-id-UsedRSNInformation ProtocolIE-ID
-id-RLCDuplicationInformation ProtocolIE-ID
-id-NPN-Broadcast-Information ProtocolIE-ID
-id-NPNPagingAssistanceInformation ProtocolIE-ID
-id-NPNMobilityInformation ProtocolIE-ID
-id-NPN-Support ProtocolIE-ID
-id-MDT-Configuration ProtocolIE-ID
-id-MDTPLMNList ProtocolIE-ID
-id-TraceCollectionEntityURI ProtocolIE-ID
-id-UERadioCapabilityID ProtocolIE-ID
-id-CSI-RSTransmissionIndication ProtocolIE-ID
-id-SNTriggered ProtocolIE-ID
-id-DLCarrierList ProtocolIE-ID
-id-ExtendedTAISliceSupportList ProtocolIE-ID
-id-cellAssistanceInfo-EUTRA ProtocolIE-ID
-id-ConfiguredTACIndication ProtocolIE-ID
-id-secondary-SN-UL-PDCP-UP-TNLInfo ProtocolIE-ID
-id-pdcpDuplicationConfiguration ProtocolIE-ID
-id-duplicationActivation ProtocolIE-ID
-id-NPRACHConfiguration ProtocolIE-ID
-id-QosMonitoringReportingFrequency ProtocolIE-ID
-id-QoSFlowsMappedtoDRB-SetupResponse-MNterminated ProtocolIE-ID
-id-DL-scheduling-PDCCH-CCE-usage ProtocolIE-ID
-id-UL-scheduling-PDCCH-CCE-usage ProtocolIE-ID
-id-SFN-Offset ProtocolIE-ID
-id-QoSMonitoringDisabled ProtocolIE-ID
-id-ExtendedUEIdentityIndexValue ProtocolIE-ID
-id-PagingeDRXInformation ProtocolIE-ID
-id-CHO-MRDC-EarlyDataForwarding ProtocolIE-ID
-id-SCGIndicator ProtocolIE-ID
-id-UESpecificDRX ProtocolIE-ID
-id-PDUSessionExpectedUEActivityBehaviour ProtocolIE-ID
-id-QoS-Mapping-Information ProtocolIE-ID
+id-ActivatedServedCells ProtocolIE-ID
+id-ActivationIDforCellActivation ProtocolIE-ID
+id-admittedSplitSRB ProtocolIE-ID
+id-admittedSplitSRBrelease ProtocolIE-ID
+id-AMF-Region-Information ProtocolIE-ID
+id-AssistanceDataForRANPaging ProtocolIE-ID
+id-BearersSubjectToCounterCheck ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-cellAssistanceInfo-NR ProtocolIE-ID
+id-ConfigurationUpdateInitiatingNodeChoice ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-XnUAddressInfoperPDUSession-List ProtocolIE-ID
+id-DRBsSubjectToStatusTransfer-List ProtocolIE-ID
+id-ExpectedUEBehaviour ProtocolIE-ID
+id-GlobalNG-RAN-node-ID ProtocolIE-ID
+id-GUAMI ProtocolIE-ID
+id-indexToRatFrequSelectionPriority ProtocolIE-ID
+id-initiatingNodeType-ResourceCoordRequest ProtocolIE-ID
+id-List-of-served-cells-E-UTRA ProtocolIE-ID
+id-List-of-served-cells-NR ProtocolIE-ID
+id-LocationReportingInformation ProtocolIE-ID
+id-MAC-I ProtocolIE-ID
+id-MaskedIMEISV ProtocolIE-ID
+id-M-NG-RANnodeUEXnAPID ProtocolIE-ID
+id-MN-to-SN-Container ProtocolIE-ID
+id-MobilityRestrictionList ProtocolIE-ID
+id-new-NG-RAN-Cell-Identity ProtocolIE-ID
+id-newNG-RANnodeUEXnAPID ProtocolIE-ID
+id-UEReportRRCTransfer ProtocolIE-ID
+id-oldNG-RANnodeUEXnAPID ProtocolIE-ID
+id-OldtoNewNG-RANnodeResumeContainer ProtocolIE-ID
+id-PagingDRX ProtocolIE-ID
+id-PCellID ProtocolIE-ID
+id-PDCPChangeIndication ProtocolIE-ID
+id-PDUSessionAdmittedAddedAddReqAck ProtocolIE-ID
+id-PDUSessionAdmittedModSNModConfirm ProtocolIE-ID
+id-PDUSessionAdmitted-SNModResponse ProtocolIE-ID
+id-PDUSessionNotAdmittedAddReqAck ProtocolIE-ID
+id-PDUSessionNotAdmitted-SNModResponse ProtocolIE-ID
+id-PDUSessionReleasedList-RelConf ProtocolIE-ID
+id-PDUSessionReleasedSNModConfirm ProtocolIE-ID
+id-PDUSessionResourcesActivityNotifyList ProtocolIE-ID
+id-PDUSessionResourcesAdmitted-List ProtocolIE-ID
+id-PDUSessionResourcesNotAdmitted-List ProtocolIE-ID
+id-PDUSessionResourcesNotifyList ProtocolIE-ID
+id-PDUSession-SNChangeConfirm-List ProtocolIE-ID
+id-PDUSession-SNChangeRequired-List ProtocolIE-ID
+id-PDUSessionToBeAddedAddReq ProtocolIE-ID
+id-PDUSessionToBeModifiedSNModRequired ProtocolIE-ID
+id-PDUSessionToBeReleasedList-RelRqd ProtocolIE-ID
+id-PDUSessionToBeReleased-RelReq ProtocolIE-ID
+id-PDUSessionToBeReleasedSNModRequired ProtocolIE-ID
+id-RANPagingArea ProtocolIE-ID
+id-PagingPriority ProtocolIE-ID
+id-requestedSplitSRB ProtocolIE-ID
+id-requestedSplitSRBrelease ProtocolIE-ID
+id-ResetRequestTypeInfo ProtocolIE-ID
+id-ResetResponseTypeInfo ProtocolIE-ID
+id-RespondingNodeTypeConfigUpdateAck ProtocolIE-ID
+id-respondingNodeType-ResourceCoordResponse ProtocolIE-ID
+id-ResponseInfo-ReconfCompl ProtocolIE-ID
+id-RRCConfigIndication ProtocolIE-ID
+id-RRCResumeCause ProtocolIE-ID
+id-SCGConfigurationQuery ProtocolIE-ID
+id-selectedPLMN ProtocolIE-ID
+id-ServedCellsToActivate ProtocolIE-ID
+id-servedCellsToUpdate-E-UTRA ProtocolIE-ID
+id-ServedCellsToUpdateInitiatingNodeChoice ProtocolIE-ID
+id-servedCellsToUpdate-NR ProtocolIE-ID
+id-s-ng-RANnode-SecurityKey ProtocolIE-ID
+id-S-NG-RANnodeUE-AMBR ProtocolIE-ID
+id-S-NG-RANnodeUEXnAPID ProtocolIE-ID
+id-SN-to-MN-Container ProtocolIE-ID
+id-sourceNG-RANnodeUEXnAPID ProtocolIE-ID
+id-SplitSRB-RRCTransfer ProtocolIE-ID
+id-TAISupport-list ProtocolIE-ID
+id-TimeToWait ProtocolIE-ID
+id-Target2SourceNG-RANnodeTranspContainer ProtocolIE-ID
+id-targetCellGlobalID ProtocolIE-ID
+id-targetNG-RANnodeUEXnAPID ProtocolIE-ID
+id-target-S-NG-RANnodeID ProtocolIE-ID
+id-TraceActivation ProtocolIE-ID
+id-UEContextID ProtocolIE-ID
+id-UEContextInfoHORequest ProtocolIE-ID
+id-UEContextInfoRetrUECtxtResp ProtocolIE-ID
+id-UEContextInfo-SNModRequest ProtocolIE-ID
+id-UEContextKeptIndicator ProtocolIE-ID
+id-UEContextRefAtSN-HORequest ProtocolIE-ID
+id-UEHistoryInformation ProtocolIE-ID
+id-UEIdentityIndexValue ProtocolIE-ID
+id-UERANPagingIdentity ProtocolIE-ID
+id-UESecurityCapabilities ProtocolIE-ID
+id-UserPlaneTrafficActivityReport ProtocolIE-ID
+id-XnRemovalThreshold ProtocolIE-ID
+id-DesiredActNotificationLevel ProtocolIE-ID
+id-AvailableDRBIDs ProtocolIE-ID
+id-AdditionalDRBIDs ProtocolIE-ID
+id-SpareDRBIDs ProtocolIE-ID
+id-RequiredNumberOfDRBIDs ProtocolIE-ID
+id-TNLA-To-Add-List ProtocolIE-ID
+id-TNLA-To-Update-List ProtocolIE-ID
+id-TNLA-To-Remove-List ProtocolIE-ID
+id-TNLA-Setup-List ProtocolIE-ID
+id-TNLA-Failed-To-Setup-List ProtocolIE-ID
+id-PDUSessionToBeReleased-RelReqAck ProtocolIE-ID
+id-S-NG-RANnodeMaxIPDataRate-UL ProtocolIE-ID
+id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID
+id-Additional-UL-NG-U-TNLatUPF-List ProtocolIE-ID
+id-SecondarydataForwardingInfoFromTarget-List ProtocolIE-ID
+id-LocationInformationSNReporting ProtocolIE-ID
+id-LocationInformationSN ProtocolIE-ID
+id-LastE-UTRANPLMNIdentity ProtocolIE-ID
+id-S-NG-RANnodeMaxIPDataRate-DL ProtocolIE-ID
+id-MaxIPrate-DL ProtocolIE-ID
+id-SecurityResult ProtocolIE-ID
+id-S-NSSAI ProtocolIE-ID
+id-MR-DC-ResourceCoordinationInfo ProtocolIE-ID
+id-AMF-Region-Information-To-Add ProtocolIE-ID
+id-AMF-Region-Information-To-Delete ProtocolIE-ID
+id-OldQoSFlowMap-ULendmarkerexpected ProtocolIE-ID
+id-RANPagingFailure ProtocolIE-ID
+id-UERadioCapabilityForPaging ProtocolIE-ID
+id-PDUSessionDataForwarding-SNModResponse ProtocolIE-ID
+id-DRBsNotAdmittedSetupModifyList ProtocolIE-ID
+id-Secondary-MN-Xn-U-TNLInfoatM ProtocolIE-ID
+id-NE-DC-TDM-Pattern ProtocolIE-ID
+id-PDUSessionCommonNetworkInstance ProtocolIE-ID
+id-BPLMN-ID-Info-EUTRA ProtocolIE-ID
+id-BPLMN-ID-Info-NR ProtocolIE-ID
+id-InterfaceInstanceIndication ProtocolIE-ID
+id-S-NG-RANnode-Addition-Trigger-Ind ProtocolIE-ID
+id-DefaultDRB-Allowed ProtocolIE-ID
+id-DRB-IDs-takenintouse ProtocolIE-ID
+id-SplitSessionIndicator ProtocolIE-ID
+id-CNTypeRestrictionsForEquivalent ProtocolIE-ID
+id-CNTypeRestrictionsForServing ProtocolIE-ID
+id-DRBs-transferred-to-MN ProtocolIE-ID
+id-ULForwardingProposal ProtocolIE-ID
+id-EndpointIPAddressAndPort ProtocolIE-ID
+id-IntendedTDD-DL-ULConfiguration-NR ProtocolIE-ID
+id-TNLConfigurationInfo ProtocolIE-ID
+id-PartialListIndicator-NR ProtocolIE-ID
+id-MessageOversizeNotification ProtocolIE-ID
+id-CellAndCapacityAssistanceInfo-NR ProtocolIE-ID
+id-NG-RANTraceID ProtocolIE-ID
+id-NonGBRResources-Offered ProtocolIE-ID
+id-FastMCGRecoveryRRCTransfer-SN-to-MN ProtocolIE-ID
+id-RequestedFastMCGRecoveryViaSRB3 ProtocolIE-ID
+id-AvailableFastMCGRecoveryViaSRB3 ProtocolIE-ID
+id-RequestedFastMCGRecoveryViaSRB3Release ProtocolIE-ID
+id-ReleaseFastMCGRecoveryViaSRB3 ProtocolIE-ID
+id-FastMCGRecoveryRRCTransfer-MN-to-SN ProtocolIE-ID
+id-ExtendedRATRestrictionInformation ProtocolIE-ID
+id-QoSMonitoringRequest ProtocolIE-ID
+id-FiveGCMobilityRestrictionListContainer ProtocolIE-ID
+id-PartialListIndicator-EUTRA ProtocolIE-ID
+id-CellAndCapacityAssistanceInfo-EUTRA ProtocolIE-ID
+id-CHOinformation-Req ProtocolIE-ID
+id-CHOinformation-Ack ProtocolIE-ID
+id-targetCellsToCancel ProtocolIE-ID
+id-requestedTargetCellGlobalID ProtocolIE-ID
+id-procedureStage ProtocolIE-ID
+id-DAPSRequestInfo ProtocolIE-ID
+id-DAPSResponseInfo-List ProtocolIE-ID
+id-CHO-MRDC-Indicator ProtocolIE-ID
+id-OffsetOfNbiotChannelNumberToDL-EARFCN ProtocolIE-ID
+id-OffsetOfNbiotChannelNumberToUL-EARFCN ProtocolIE-ID
+id-NBIoT-UL-DL-AlignmentOffset ProtocolIE-ID
+id-LTEV2XServicesAuthorized ProtocolIE-ID
+id-NRV2XServicesAuthorized ProtocolIE-ID
+id-LTEUESidelinkAggregateMaximumBitRate ProtocolIE-ID
+id-NRUESidelinkAggregateMaximumBitRate ProtocolIE-ID
+id-PC5QoSParameters ProtocolIE-ID
+id-AlternativeQoSParaSetList ProtocolIE-ID
+id-CurrentQoSParaSetIndex ProtocolIE-ID
+id-MobilityInformation ProtocolIE-ID
+id-InitiatingCondition-FailureIndication ProtocolIE-ID
+id-UEHistoryInformationFromTheUE ProtocolIE-ID
+id-HandoverReportType ProtocolIE-ID
+id-HandoverCause ProtocolIE-ID
+id-SourceCellCGI ProtocolIE-ID
+id-TargetCellCGI ProtocolIE-ID
+id-ReEstablishmentCellCGI ProtocolIE-ID
+id-TargetCellinEUTRAN ProtocolIE-ID
+id-SourceCellCRNTI ProtocolIE-ID
+id-UERLFReportContainer ProtocolIE-ID
+id-NGRAN-Node1-Measurement-ID ProtocolIE-ID
+id-NGRAN-Node2-Measurement-ID ProtocolIE-ID
+id-RegistrationRequest ProtocolIE-ID
+id-ReportCharacteristics ProtocolIE-ID
+id-CellToReport ProtocolIE-ID
+id-ReportingPeriodicity ProtocolIE-ID
+id-CellMeasurementResult ProtocolIE-ID
+id-NG-RANnode1CellID ProtocolIE-ID
+id-NG-RANnode2CellID ProtocolIE-ID
+id-NG-RANnode1MobilityParameters ProtocolIE-ID
+id-NG-RANnode2ProposedMobilityParameters ProtocolIE-ID
+id-MobilityParametersModificationRange ProtocolIE-ID
+id-TDDULDLConfigurationCommonNR ProtocolIE-ID
+id-CarrierList ProtocolIE-ID
+id-ULCarrierList ProtocolIE-ID
+id-FrequencyShift7p5khz ProtocolIE-ID
+id-SSB-PositionsInBurst ProtocolIE-ID
+id-NRCellPRACHConfig ProtocolIE-ID
+id-RACHReportInformation ProtocolIE-ID
+id-IABNodeIndication ProtocolIE-ID
+id-Redundant-UL-NG-U-TNLatUPF ProtocolIE-ID
+id-CNPacketDelayBudgetDownlink ProtocolIE-ID
+id-CNPacketDelayBudgetUplink ProtocolIE-ID
+id-Additional-Redundant-UL-NG-U-TNLatUPF-List ProtocolIE-ID
+id-RedundantCommonNetworkInstance ProtocolIE-ID
+id-TSCTrafficCharacteristics ProtocolIE-ID
+id-RedundantQoSFlowIndicator ProtocolIE-ID
+id-Redundant-DL-NG-U-TNLatNG-RAN ProtocolIE-ID
+id-ExtendedPacketDelayBudget ProtocolIE-ID
+id-Additional-PDCP-Duplication-TNL-List ProtocolIE-ID
+id-RedundantPDUSessionInformation ProtocolIE-ID
+id-UsedRSNInformation ProtocolIE-ID
+id-RLCDuplicationInformation ProtocolIE-ID
+id-NPN-Broadcast-Information ProtocolIE-ID
+id-NPNPagingAssistanceInformation ProtocolIE-ID
+id-NPNMobilityInformation ProtocolIE-ID
+id-NPN-Support ProtocolIE-ID
+id-MDT-Configuration ProtocolIE-ID
+id-MDTPLMNList ProtocolIE-ID
+id-TraceCollectionEntityURI ProtocolIE-ID
+id-UERadioCapabilityID ProtocolIE-ID
+id-CSI-RSTransmissionIndication ProtocolIE-ID
+id-SNTriggered ProtocolIE-ID
+id-DLCarrierList ProtocolIE-ID
+id-ExtendedTAISliceSupportList ProtocolIE-ID
+id-cellAssistanceInfo-EUTRA ProtocolIE-ID
+id-ConfiguredTACIndication ProtocolIE-ID
+id-secondary-SN-UL-PDCP-UP-TNLInfo ProtocolIE-ID
+id-pdcpDuplicationConfiguration ProtocolIE-ID
+id-duplicationActivation ProtocolIE-ID
+id-NPRACHConfiguration ProtocolIE-ID
+id-QosMonitoringReportingFrequency ProtocolIE-ID
+id-QoSFlowsMappedtoDRB-SetupResponse-MNterminated ProtocolIE-ID
+id-DL-scheduling-PDCCH-CCE-usage ProtocolIE-ID
+id-UL-scheduling-PDCCH-CCE-usage ProtocolIE-ID
+id-SFN-Offset ProtocolIE-ID
+id-QoSMonitoringDisabled ProtocolIE-ID
+id-ExtendedUEIdentityIndexValue ProtocolIE-ID
+id-EUTRAPagingeDRXInformation ProtocolIE-ID
+id-CHO-MRDC-EarlyDataForwarding ProtocolIE-ID
+id-SCGIndicator ProtocolIE-ID
+id-UESpecificDRX ProtocolIE-ID
+id-PDUSessionExpectedUEActivityBehaviour ProtocolIE-ID
+id-QoS-Mapping-Information ProtocolIE-ID
+id-AdditionLocationInformation ProtocolIE-ID
+id-dataForwardingInfoFromTargetE-UTRANnode ProtocolIE-ID
+id-DirectForwardingPathAvailability ProtocolIE-ID
+id-SourceNG-RAN-node-ID ProtocolIE-ID
+id-SourceDLForwardingIPAddress ProtocolIE-ID
+id-SourceNodeDLForwardingIPAddress ProtocolIE-ID
+id-ExtendedReportIntervalMDT ProtocolIE-ID
+id-SecurityIndication ProtocolIE-ID
+id-RRCConnReestab-Indicator ProtocolIE-ID
+id-TargetNodeID ProtocolIE-ID
+id-ManagementBasedMDTPLMNList ProtocolIE-ID
+id-PrivacyIndicator ProtocolIE-ID
+id-TraceCollectionEntityIPAddress ProtocolIE-ID
+id-M4ReportAmount ProtocolIE-ID
+id-M5ReportAmount ProtocolIE-ID
+id-M6ReportAmount ProtocolIE-ID
+id-M7ReportAmount ProtocolIE-ID
+id-BeamMeasurementIndicationM1 ProtocolIE-ID
+id-MBS-Session-ID ProtocolIE-ID
+id-UEIdentityIndexList-MBSGroupPaging ProtocolIE-ID
+id-MulticastRANPagingArea ProtocolIE-ID
+id-Supported-MBS-FSA-ID-List ProtocolIE-ID
+id-MBS-SessionInformation-List ProtocolIE-ID
+id-MBS-SessionInformationResponse-List ProtocolIE-ID
+id-MBS-SessionAssociatedInformation ProtocolIE-ID
+id-SuccessfulHOReportInformation ProtocolIE-ID
+id-SliceRadioResourceStatus-List ProtocolIE-ID
+id-CompositeAvailableCapacitySupplementaryUplink ProtocolIE-ID
+id-SCGUEHistoryInformation ProtocolIE-ID
+id-SSBOffsets-List ProtocolIE-ID
+id-NG-RANnode2SSBOffsetModificationRange ProtocolIE-ID
+id-Coverage-Modification-List ProtocolIE-ID
+id-NR-U-Channel-List ProtocolIE-ID
+id-SourcePSCellCGI ProtocolIE-ID
+id-FailedPSCellCGI ProtocolIE-ID
+id-SCGFailureReportContainer ProtocolIE-ID
+id-SNMobilityInformation ProtocolIE-ID
+id-SourcePSCellID ProtocolIE-ID
+id-SuitablePSCellCGI ProtocolIE-ID
+id-PSCellChangeHistory ProtocolIE-ID
+id-CHOConfiguration ProtocolIE-ID
+id-NR-U-ChannelInfo-List ProtocolIE-ID
+id-PSCellHistoryInformationRetrieve ProtocolIE-ID
+id-NG-RANnode2SSBOffsetsModificationRange ProtocolIE-ID
+id-MIMOPRBusageInformation ProtocolIE-ID
+id-F1CTrafficContainer ProtocolIE-ID
+id-IAB-MT-Cell-List ProtocolIE-ID
+id-NoPDUSessionIndication ProtocolIE-ID
+id-IAB-TNL-Address-Request ProtocolIE-ID
+id-IAB-TNL-Address-Response ProtocolIE-ID
+id-TrafficToBeAddedList ProtocolIE-ID
+id-TrafficToBeModifiedList ProtocolIE-ID
+id-TrafficToBeReleaseInformation ProtocolIE-ID
+id-TrafficAddedList ProtocolIE-ID
+id-TrafficModifiedList ProtocolIE-ID
+id-TrafficNotAddedList ProtocolIE-ID
+id-TrafficNotModifiedList ProtocolIE-ID
+id-TrafficRequiredToBeModifiedList ProtocolIE-ID
+id-TrafficRequiredModifiedList ProtocolIE-ID
+id-TrafficReleasedList ProtocolIE-ID
+id-IABTNLAddressToBeAdded ProtocolIE-ID
+id-IABTNLAddressToBeReleasedList ProtocolIE-ID
+id-nonF1-Terminating-IAB-DonorUEXnAPID ProtocolIE-ID
+id-F1-Terminating-IAB-DonorUEXnAPID ProtocolIE-ID
+id-BoundaryNodeCellsList ProtocolIE-ID
+id-ParentNodeCellsList ProtocolIE-ID
+id-tdd-GNB-DU-Cell-Resource-Configuration ProtocolIE-ID
+id-UL-GNB-DU-Cell-Resource-Configuration ProtocolIE-ID
+id-DL-GNB-DU-Cell-Resource-Configuration ProtocolIE-ID
+id-permutation ProtocolIE-ID
+id-IABTNLAddressException ProtocolIE-ID
+id-CHOinformation-AddReq ProtocolIE-ID
+id-CHOinformation-ModReq ProtocolIE-ID
+id-SurvivalTime ProtocolIE-ID
+id-TimeSynchronizationAssistanceInformation ProtocolIE-ID
+id-SCGActivationRequest ProtocolIE-ID
+id-SCGActivationStatus ProtocolIE-ID
+id-CPAInformationRequest ProtocolIE-ID
+id-CPAInformationAck ProtocolIE-ID
+id-CPCInformationRequired ProtocolIE-ID
+id-CPCInformationConfirm ProtocolIE-ID
+id-CPAInformationModReq ProtocolIE-ID
+id-CPAInformationModReqAck ProtocolIE-ID
+id-CPC-DataForwarding-Indicator ProtocolIE-ID
+id-CPCInformationUpdate ProtocolIE-ID
+id-CPACInformationModRequired ProtocolIE-ID
+id-QMCConfigInfo ProtocolIE-ID
+id-ProtocolIE-ID338-NotToBeUsed ProtocolIE-ID
+id-Additional-Measurement-Timing-Configuration-List ProtocolIE-ID
+id-PDUSession-PairID ProtocolIE-ID
+id-Local-NG-RAN-Node-Identifier ProtocolIE-ID
+id-Neighbour-NG-RAN-Node-List ProtocolIE-ID
+id-Local-NG-RAN-Node-Identifier-Removal ProtocolIE-ID
+id-FiveGProSeAuthorized ProtocolIE-ID
+id-FiveGProSePC5QoSParameters ProtocolIE-ID
+id-FiveGProSeUEPC5AggregateMaximumBitRate ProtocolIE-ID
+id-ServedCellSpecificInfoReq-NR ProtocolIE-ID
+id-NRPagingeDRXInformation ProtocolIE-ID
+id-NRPagingeDRXInformationforRRCINACTIVE ProtocolIE-ID
+id-Redcap-Bcast-Information ProtocolIE-ID
+id-SDTSupportRequest ProtocolIE-ID
+id-SDT-SRB-between-NewNode-OldNode ProtocolIE-ID
+id-SDT-Termination-Request ProtocolIE-ID
+id-SDTPartialUEContextInfo ProtocolIE-ID
+id-SDTDataForwardingDRBList ProtocolIE-ID
+id-PagingCause ProtocolIE-ID
+id-PEIPSassistanceInformation ProtocolIE-ID
+id-UESliceMaximumBitRateList ProtocolIE-ID
+id-S-NG-RANnodeUE-Slice-MBR ProtocolIE-ID
+id-PositioningInformation ProtocolIE-ID
+id-UEAssistantIdentifier ProtocolIE-ID
+id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID
+id-F1-terminatingIAB-donorIndicator ProtocolIE-ID
+id-TAINSAGSupportList ProtocolIE-ID
+id-SCGreconfigNotification ProtocolIE-ID
+id-earlyMeasurement ProtocolIE-ID
+id-BeamMeasurementsReportConfiguration ProtocolIE-ID
+id-CoverageModificationCause ProtocolIE-ID
+id-AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated ProtocolIE-ID
+id-UERLFReportContainerLTEExtension ProtocolIE-ID
+id-ExcessPacketDelayThresholdConfiguration ProtocolIE-ID
+id-HashedUEIdentityIndexValue ProtocolIE-ID
+id-QosFlowMappingIndication ProtocolIE-ID
+id-Full-and-Short-I-RNTI-Profile-List ProtocolIE-ID
+id-MBS-DataForwarding-Indicator ProtocolIE-ID
+id-IABAuthorizationStatus ProtocolIE-ID
+
#.REGISTER
@@ -1396,87 +1710,212 @@ UERadioCapabilityID N xnap.ies id-UERadioCapabilit
SNTriggered N xnap.ies id-SNTriggered
CellAssistanceInfo-EUTRA N xnap.ies id-cellAssistanceInfo-EUTRA
ExtendedUEIdentityIndexValue N xnap.ies id-ExtendedUEIdentityIndexValue
-PagingeDRXInformation N xnap.ies id-PagingeDRXInformation
+EUTRAPagingeDRXInformation N xnap.ies id-EUTRAPagingeDRXInformation
CHO-MRDC-EarlyDataForwarding N xnap.ies id-CHO-MRDC-EarlyDataForwarding
SCGIndicator N xnap.ies id-SCGIndicator
UESpecificDRX N xnap.ies id-UESpecificDRX
+DirectForwardingPathAvailability N xnap.ies id-DirectForwardingPathAvailability
+GlobalNG-RANNode-ID N xnap.ies id-SourceNG-RAN-node-ID
+GlobalNG-RANNode-ID N xnap.ies id-TargetNodeID
+MDTPLMNList N xnap.ies id-ManagementBasedMDTPLMNList
+PrivacyIndicator N xnap.ies id-PrivacyIndicator
+TransportLayerAddress N xnap.ies id-TraceCollectionEntityIPAddress
+MBS-Session-ID N xnap.ies id-MBS-Session-ID
+UEIdentityIndexList-MBSGroupPaging N xnap.ies id-UEIdentityIndexList-MBSGroupPaging
+RANPagingArea N xnap.ies id-MulticastRANPagingArea
+MBS-SessionInformationResponse-List N xnap.ies id-MBS-SessionInformationResponse-List
+SuccessfulHOReportInformation N xnap.ies id-SuccessfulHOReportInformation
+SCGUEHistoryInformation N xnap.ies id-SCGUEHistoryInformation
+SSBOffsets-List N xnap.ies id-SSBOffsets-List
+Coverage-Modification-List N xnap.ies id-Coverage-Modification-List
+GlobalNG-RANCell-ID N xnap.ies id-SourcePSCellCGI
+GlobalNG-RANCell-ID N xnap.ies id-FailedPSCellCGI
+SCGFailureReportContainer N xnap.ies id-SCGFailureReportContainer
+SNMobilityInformation N xnap.ies id-SNMobilityInformation
+GlobalNG-RANCell-ID N xnap.ies id-SourcePSCellID
+PSCellChangeHistory N xnap.ies id-PSCellChangeHistory
+CHOConfiguration N xnap.ies id-CHOConfiguration
+PSCellHistoryInformationRetrieve N xnap.ies id-PSCellHistoryInformationRetrieve
+NG-RANnode2SSBOffsetsModificationRange N xnap.ies id-NG-RANnode2SSBOffsetsModificationRange
+F1CTrafficContainer N xnap.ies id-F1CTrafficContainer
+NoPDUSessionIndication N xnap.ies id-NoPDUSessionIndication
+IAB-TNL-Address-Request N xnap.ies id-IAB-TNL-Address-Request
+IAB-TNL-Address-Response N xnap.ies id-IAB-TNL-Address-Response
+TrafficToBeAddedList N xnap.ies id-TrafficToBeAddedList
+TrafficToBeModifiedList N xnap.ies id-TrafficToBeModifiedList
+TrafficToBeReleaseInformation N xnap.ies id-TrafficToBeReleaseInformation
+TrafficAddedList N xnap.ies id-TrafficAddedList
+TrafficModifiedList N xnap.ies id-TrafficModifiedList
+TrafficNotAddedList N xnap.ies id-TrafficNotAddedList
+TrafficNotModifiedList N xnap.ies id-TrafficNotModifiedList
+TrafficRequiredToBeModifiedList N xnap.ies id-TrafficRequiredToBeModifiedList
+TrafficRequiredModifiedList N xnap.ies id-TrafficRequiredModifiedList
+TrafficReleasedList N xnap.ies id-TrafficReleasedList
+IAB-TNL-Address-Response N xnap.ies id-IABTNLAddressToBeAdded
+IABTNLAddressToBeReleasedList N xnap.ies id-IABTNLAddressToBeReleasedList
+NG-RANnodeUEXnAPID N xnap.ies id-nonF1-Terminating-IAB-DonorUEXnAPID
+NG-RANnodeUEXnAPID N xnap.ies id-F1-Terminating-IAB-DonorUEXnAPID
+BoundaryNodeCellsList N xnap.ies id-BoundaryNodeCellsList
+ParentNodeCellsList N xnap.ies id-ParentNodeCellsList
+IABTNLAddressException N xnap.ies id-IABTNLAddressException
+CHOinformation-AddReq N xnap.ies id-CHOinformation-AddReq
+CHOinformation-ModReq N xnap.ies id-CHOinformation-ModReq
+TimeSynchronizationAssistanceInformation N xnap.ies id-TimeSynchronizationAssistanceInformation
+SCGActivationRequest N xnap.ies id-SCGActivationRequest
+SCGActivationStatus N xnap.ies id-SCGActivationStatus
+CPAInformationRequest N xnap.ies id-CPAInformationRequest
+CPAInformationAck N xnap.ies id-CPAInformationAck
+CPCInformationRequired N xnap.ies id-CPCInformationRequired
+CPCInformationConfirm N xnap.ies id-CPCInformationConfirm
+CPAInformationModReq N xnap.ies id-CPAInformationModReq
+CPAInformationModReqAck N xnap.ies id-CPAInformationModReqAck
+CPC-DataForwarding-Indicator N xnap.ies id-CPC-DataForwarding-Indicator
+CPCInformationUpdate N xnap.ies id-CPCInformationUpdate
+CPACInformationModRequired N xnap.ies id-CPACInformationModRequired
+QMCConfigInfo N xnap.ies id-QMCConfigInfo
+Local-NG-RAN-Node-Identifier N xnap.ies id-Local-NG-RAN-Node-Identifier
+Neighbour-NG-RAN-Node-List N xnap.ies id-Neighbour-NG-RAN-Node-List
+Local-NG-RAN-Node-Identifier N xnap.ies id-Local-NG-RAN-Node-Identifier-Removal
+FiveGProSeAuthorized N xnap.ies id-FiveGProSeAuthorized
+FiveGProSePC5QoSParameters N xnap.ies id-FiveGProSePC5QoSParameters
+ServedCellSpecificInfoReq-NR N xnap.ies id-ServedCellSpecificInfoReq-NR
+NRPagingeDRXInformation N xnap.ies id-NRPagingeDRXInformation
+NRPagingeDRXInformationforRRCINACTIVE N xnap.ies id-NRPagingeDRXInformationforRRCINACTIVE
+SDTSupportRequest N xnap.ies id-SDTSupportRequest
+SDT-SRB-between-NewNode-OldNode N xnap.ies id-SDT-SRB-between-NewNode-OldNode
+SDT-Termination-Request N xnap.ies id-SDT-Termination-Request
+SDTPartialUEContextInfo N xnap.ies id-SDTPartialUEContextInfo
+SDTDataForwardingDRBList N xnap.ies id-SDTDataForwardingDRBList
+PagingCause N xnap.ies id-PagingCause
+PEIPSassistanceInformation N xnap.ies id-PEIPSassistanceInformation
+UESliceMaximumBitRateList N xnap.ies id-S-NG-RANnodeUE-Slice-MBR
+MDTPLMNModificationList N xnap.ies id-ManagementBasedMDTPLMNModificationList
+F1-terminatingIAB-donorIndicator N xnap.ies id-F1-terminatingIAB-donorIndicator
+SCGreconfigNotification N xnap.ies id-SCGreconfigNotification
+UERLFReportContainerLTEExtension N xnap.ies id-UERLFReportContainerLTEExtension
+HashedUEIdentityIndexValue N xnap.ies id-HashedUEIdentityIndexValue
+Full-and-Short-I-RNTI-Profile-List N xnap.ies id-Full-and-Short-I-RNTI-Profile-List
+MBS-DataForwarding-Indicator N xnap.ies id-MBS-DataForwarding-Indicator
+IABAuthorizationStatus N xnap.ies id-IABAuthorizationStatus
#XNAP-PROTOCOL-EXTENSION
-Additional-UL-NG-U-TNLatUPF-List N xnap.extension id-Additional-UL-NG-U-TNLatUPF-List
-SecondarydataForwardingInfoFromTarget-List N xnap.extension id-SecondarydataForwardingInfoFromTarget-List
-PLMN-Identity N xnap.extension id-LastE-UTRANPLMNIdentity
-MaxIPrate N xnap.extension id-MaxIPrate-DL
-SecurityResult N xnap.extension id-SecurityResult
-S-NSSAI N xnap.extension id-S-NSSAI
-QoSFlows-List N xnap.extension id-OldQoSFlowMap-ULendmarkerexpected
-DRB-List-withCause N xnap.extension id-DRBsNotAdmittedSetupModifyList
-UPTransportLayerInformation N xnap.extension id-Secondary-MN-Xn-U-TNLInfoatM
-PDUSessionCommonNetworkInstance N xnap.extension id-PDUSessionCommonNetworkInstance
-BPLMN-ID-Info-EUTRA N xnap.extension id-BPLMN-ID-Info-EUTRA
-BPLMN-ID-Info-NR N xnap.extension id-BPLMN-ID-Info-NR
-DefaultDRB-Allowed N xnap.extension id-DefaultDRB-Allowed
-DRB-List N xnap.extension id-DRB-IDs-takenintouse
-SplitSessionIndicator N xnap.extension id-SplitSessionIndicator
-CNTypeRestrictionsForEquivalent N xnap.extension id-CNTypeRestrictionsForEquivalent
-CNTypeRestrictionsForServing N xnap.extension id-CNTypeRestrictionsForServing
-ULForwardingProposal N xnap.extension id-ULForwardingProposal
-FiveGCMobilityRestrictionListContainer N xnap.extension id-FiveGCMobilityRestrictionListContainer
-IntendedTDD-DL-ULConfiguration-NR N xnap.extension id-IntendedTDD-DL-ULConfiguration-NR
-PartialListIndicator N xnap.extension id-PartialListIndicator-NR
-CellAndCapacityAssistanceInfo-NR N xnap.extension id-CellAndCapacityAssistanceInfo-NR
-NonGBRResources-Offered N xnap.extension id-NonGBRResources-Offered
-ExtendedRATRestrictionInformation N xnap.extension id-ExtendedRATRestrictionInformation
-QosMonitoringRequest N xnap.extension id-QoSMonitoringRequest
-DAPSRequestInfo N xnap.extension id-DAPSRequestInfo
-OffsetOfNbiotChannelNumberToEARFCN N xnap.extension id-OffsetOfNbiotChannelNumberToDL-EARFCN
-OffsetOfNbiotChannelNumberToEARFCN N xnap.extension id-OffsetOfNbiotChannelNumberToUL-EARFCN
-NBIoT-UL-DL-AlignmentOffset N xnap.extension id-NBIoT-UL-DL-AlignmentOffset
-LTEUESidelinkAggregateMaximumBitRate N xnap.extension id-LTEUESidelinkAggregateMaximumBitRate
-NRUESidelinkAggregateMaximumBitRate N xnap.extension id-NRUESidelinkAggregateMaximumBitRate
-AlternativeQoSParaSetList N xnap.extension id-AlternativeQoSParaSetList
-QoSParaSetNotifyIndex N xnap.extension id-CurrentQoSParaSetIndex
-TDDULDLConfigurationCommonNR N xnap.extension id-TDDULDLConfigurationCommonNR
-NRCarrierList N xnap.extension id-CarrierList
-NRCarrierList N xnap.extension id-ULCarrierList
-FrequencyShift7p5khz N xnap.extension id-FrequencyShift7p5khz
-SSB-PositionsInBurst N xnap.extension id-SSB-PositionsInBurst
-NRCellPRACHConfig N xnap.extension id-NRCellPRACHConfig
-UPTransportLayerInformation N xnap.extension id-Redundant-UL-NG-U-TNLatUPF
-ExtendedPacketDelayBudget N xnap.extension id-CNPacketDelayBudgetDownlink
-ExtendedPacketDelayBudget N xnap.extension id-CNPacketDelayBudgetUplink
-Additional-UL-NG-U-TNLatUPF-List N xnap.extension id-Additional-Redundant-UL-NG-U-TNLatUPF-List
-PDUSessionCommonNetworkInstance N xnap.extension id-RedundantCommonNetworkInstance
-TSCTrafficCharacteristics N xnap.extension id-TSCTrafficCharacteristics
-RedundantQoSFlowIndicator N xnap.extension id-RedundantQoSFlowIndicator
-UPTransportLayerInformation N xnap.extension id-Redundant-DL-NG-U-TNLatNG-RAN
-ExtendedPacketDelayBudget N xnap.extension id-ExtendedPacketDelayBudget
-Additional-PDCP-Duplication-TNL-List N xnap.extension id-Additional-PDCP-Duplication-TNL-List
-RedundantPDUSessionInformation N xnap.extension id-RedundantPDUSessionInformation
-RedundantPDUSessionInformation N xnap.extension id-UsedRSNInformation
-RLCDuplicationInformation N xnap.extension id-RLCDuplicationInformation
-NPN-Broadcast-Information N xnap.extension id-NPN-Broadcast-Information
-NPNPagingAssistanceInformation N xnap.extension id-NPNPagingAssistanceInformation
-NPNMobilityInformation N xnap.extension id-NPNMobilityInformation
-NPN-Support N xnap.extension id-NPN-Support
-MDT-Configuration N xnap.extension id-MDT-Configuration
-MDTPLMNList N xnap.extension id-MDTPLMNList
-URIaddress N xnap.extension id-TraceCollectionEntityURI
-UERadioCapabilityID N xnap.extension id-UERadioCapabilityID
-CSI-RSTransmissionIndication N xnap.extension id-CSI-RSTransmissionIndication
-ExtendedSliceSupportList N xnap.extension id-ExtendedTAISliceSupportList
-ConfiguredTACIndication N xnap.extension id-ConfiguredTACIndication
-UPTransportParameters N xnap.extension id-secondary-SN-UL-PDCP-UP-TNLInfo
-PDCPDuplicationConfiguration N xnap.extension id-pdcpDuplicationConfiguration
-DuplicationActivation N xnap.extension id-duplicationActivation
-NPRACHConfiguration N xnap.extension id-NPRACHConfiguration
-QosMonitoringReportingFrequency N xnap.extension id-QosMonitoringReportingFrequency
-QoSFlowsMappedtoDRB-SetupResponse-MNterminated N xnap.extension id-QoSFlowsMappedtoDRB-SetupResponse-MNterminated
-DL-scheduling-PDCCH-CCE-usage N xnap.extension id-DL-scheduling-PDCCH-CCE-usage
-UL-scheduling-PDCCH-CCE-usage N xnap.extension id-UL-scheduling-PDCCH-CCE-usage
-SFN-Offset N xnap.extension id-SFN-Offset
-QoSMonitoringDisabled N xnap.extension id-QoSMonitoringDisabled
-ExpectedUEActivityBehaviour N xnap.extension id-PDUSessionExpectedUEActivityBehaviour
-QoS-Mapping-Information N xnap.extension id-QoS-Mapping-Information
+Additional-UL-NG-U-TNLatUPF-List N xnap.extension id-Additional-UL-NG-U-TNLatUPF-List
+SecondarydataForwardingInfoFromTarget-List N xnap.extension id-SecondarydataForwardingInfoFromTarget-List
+PLMN-Identity N xnap.extension id-LastE-UTRANPLMNIdentity
+MaxIPrate N xnap.extension id-MaxIPrate-DL
+SecurityResult N xnap.extension id-SecurityResult
+S-NSSAI N xnap.extension id-S-NSSAI
+QoSFlows-List N xnap.extension id-OldQoSFlowMap-ULendmarkerexpected
+DRB-List-withCause N xnap.extension id-DRBsNotAdmittedSetupModifyList
+UPTransportLayerInformation N xnap.extension id-Secondary-MN-Xn-U-TNLInfoatM
+PDUSessionCommonNetworkInstance N xnap.extension id-PDUSessionCommonNetworkInstance
+BPLMN-ID-Info-EUTRA N xnap.extension id-BPLMN-ID-Info-EUTRA
+BPLMN-ID-Info-NR N xnap.extension id-BPLMN-ID-Info-NR
+DefaultDRB-Allowed N xnap.extension id-DefaultDRB-Allowed
+DRB-List N xnap.extension id-DRB-IDs-takenintouse
+SplitSessionIndicator N xnap.extension id-SplitSessionIndicator
+CNTypeRestrictionsForEquivalent N xnap.extension id-CNTypeRestrictionsForEquivalent
+CNTypeRestrictionsForServing N xnap.extension id-CNTypeRestrictionsForServing
+ULForwardingProposal N xnap.extension id-ULForwardingProposal
+FiveGCMobilityRestrictionListContainer N xnap.extension id-FiveGCMobilityRestrictionListContainer
+IntendedTDD-DL-ULConfiguration-NR N xnap.extension id-IntendedTDD-DL-ULConfiguration-NR
+PartialListIndicator N xnap.extension id-PartialListIndicator-NR
+CellAndCapacityAssistanceInfo-NR N xnap.extension id-CellAndCapacityAssistanceInfo-NR
+NonGBRResources-Offered N xnap.extension id-NonGBRResources-Offered
+ExtendedRATRestrictionInformation N xnap.extension id-ExtendedRATRestrictionInformation
+QosMonitoringRequest N xnap.extension id-QoSMonitoringRequest
+DAPSRequestInfo N xnap.extension id-DAPSRequestInfo
+OffsetOfNbiotChannelNumberToEARFCN N xnap.extension id-OffsetOfNbiotChannelNumberToDL-EARFCN
+OffsetOfNbiotChannelNumberToEARFCN N xnap.extension id-OffsetOfNbiotChannelNumberToUL-EARFCN
+NBIoT-UL-DL-AlignmentOffset N xnap.extension id-NBIoT-UL-DL-AlignmentOffset
+LTEUESidelinkAggregateMaximumBitRate N xnap.extension id-LTEUESidelinkAggregateMaximumBitRate
+NRUESidelinkAggregateMaximumBitRate N xnap.extension id-NRUESidelinkAggregateMaximumBitRate
+AlternativeQoSParaSetList N xnap.extension id-AlternativeQoSParaSetList
+QoSParaSetNotifyIndex N xnap.extension id-CurrentQoSParaSetIndex
+TDDULDLConfigurationCommonNR N xnap.extension id-TDDULDLConfigurationCommonNR
+NRCarrierList N xnap.extension id-CarrierList
+NRCarrierList N xnap.extension id-ULCarrierList
+FrequencyShift7p5khz N xnap.extension id-FrequencyShift7p5khz
+SSB-PositionsInBurst N xnap.extension id-SSB-PositionsInBurst
+NRCellPRACHConfig N xnap.extension id-NRCellPRACHConfig
+UPTransportLayerInformation N xnap.extension id-Redundant-UL-NG-U-TNLatUPF
+ExtendedPacketDelayBudget N xnap.extension id-CNPacketDelayBudgetDownlink
+ExtendedPacketDelayBudget N xnap.extension id-CNPacketDelayBudgetUplink
+Additional-UL-NG-U-TNLatUPF-List N xnap.extension id-Additional-Redundant-UL-NG-U-TNLatUPF-List
+PDUSessionCommonNetworkInstance N xnap.extension id-RedundantCommonNetworkInstance
+TSCTrafficCharacteristics N xnap.extension id-TSCTrafficCharacteristics
+RedundantQoSFlowIndicator N xnap.extension id-RedundantQoSFlowIndicator
+UPTransportLayerInformation N xnap.extension id-Redundant-DL-NG-U-TNLatNG-RAN
+ExtendedPacketDelayBudget N xnap.extension id-ExtendedPacketDelayBudget
+Additional-PDCP-Duplication-TNL-List N xnap.extension id-Additional-PDCP-Duplication-TNL-List
+RedundantPDUSessionInformation N xnap.extension id-RedundantPDUSessionInformation
+RedundantPDUSessionInformation N xnap.extension id-UsedRSNInformation
+RLCDuplicationInformation N xnap.extension id-RLCDuplicationInformation
+NPN-Broadcast-Information N xnap.extension id-NPN-Broadcast-Information
+NPNPagingAssistanceInformation N xnap.extension id-NPNPagingAssistanceInformation
+NPNMobilityInformation N xnap.extension id-NPNMobilityInformation
+NPN-Support N xnap.extension id-NPN-Support
+MDT-Configuration N xnap.extension id-MDT-Configuration
+MDTPLMNList N xnap.extension id-MDTPLMNList
+URIaddress N xnap.extension id-TraceCollectionEntityURI
+UERadioCapabilityID N xnap.extension id-UERadioCapabilityID
+CSI-RSTransmissionIndication N xnap.extension id-CSI-RSTransmissionIndication
+ExtendedSliceSupportList N xnap.extension id-ExtendedTAISliceSupportList
+ConfiguredTACIndication N xnap.extension id-ConfiguredTACIndication
+UPTransportParameters N xnap.extension id-secondary-SN-UL-PDCP-UP-TNLInfo
+PDCPDuplicationConfiguration N xnap.extension id-pdcpDuplicationConfiguration
+DuplicationActivation N xnap.extension id-duplicationActivation
+NPRACHConfiguration N xnap.extension id-NPRACHConfiguration
+QosMonitoringReportingFrequency N xnap.extension id-QosMonitoringReportingFrequency
+QoSFlowsMappedtoDRB-SetupResponse-MNterminated N xnap.extension id-QoSFlowsMappedtoDRB-SetupResponse-MNterminated
+DL-scheduling-PDCCH-CCE-usage N xnap.extension id-DL-scheduling-PDCCH-CCE-usage
+UL-scheduling-PDCCH-CCE-usage N xnap.extension id-UL-scheduling-PDCCH-CCE-usage
+SFN-Offset N xnap.extension id-SFN-Offset
+QoSMonitoringDisabled N xnap.extension id-QoSMonitoringDisabled
+ExpectedUEActivityBehaviour N xnap.extension id-PDUSessionExpectedUEActivityBehaviour
+QoS-Mapping-Information N xnap.extension id-QoS-Mapping-Information
+Cause N xnap.extension id-Cause
+AdditionLocationInformation N xnap.extension id-AdditionLocationInformation
+DataForwardingInfoFromTargetE-UTRANnode N xnap.extension id-dataForwardingInfoFromTargetE-UTRANnode
+TransportLayerAddress N xnap.extension id-SourceDLForwardingIPAddress
+TransportLayerAddress N xnap.extension id-SourceNodeDLForwardingIPAddress
+ExtendedReportIntervalMDT N xnap.extension id-ExtendedReportIntervalMDT
+SecurityIndication N xnap.extension id-SecurityIndication
+RRCConnReestab-Indicator N xnap.extension id-RRCConnReestab-Indicator
+M4ReportAmountMDT N xnap.extension id-M4ReportAmount
+M5ReportAmountMDT N xnap.extension id-M5ReportAmount
+M6ReportAmountMDT N xnap.extension id-M6ReportAmount
+M7ReportAmountMDT N xnap.extension id-M7ReportAmount
+BeamMeasurementIndicationM1 N xnap.extension id-BeamMeasurementIndicationM1
+Supported-MBS-FSA-ID-List N xnap.extension id-Supported-MBS-FSA-ID-List
+MBS-SessionInformation-List N xnap.extension id-MBS-SessionInformation-List
+MBS-SessionAssociatedInformation N xnap.extension id-MBS-SessionAssociatedInformation
+SliceRadioResourceStatus-List N xnap.extension id-SliceRadioResourceStatus-List
+CompositeAvailableCapacity N xnap.extension id-CompositeAvailableCapacitySupplementaryUplink
+NR-U-Channel-List N xnap.extension id-NR-U-Channel-List
+NR-U-ChannelInfo-List N xnap.extension id-NR-U-ChannelInfo-List
+MIMOPRBusageInformation N xnap.extension id-MIMOPRBusageInformation
+NoPDUSessionIndication N xnap.extension id-NoPDUSessionIndication
+GNB-DU-Cell-Resource-Configuration N xnap.extension id-tdd-GNB-DU-Cell-Resource-Configuration
+GNB-DU-Cell-Resource-Configuration N xnap.extension id-UL-GNB-DU-Cell-Resource-Configuration
+GNB-DU-Cell-Resource-Configuration N xnap.extension id-DL-GNB-DU-Cell-Resource-Configuration
+Permutation N xnap.extension id-permutation
+SurvivalTime N xnap.extension id-SurvivalTime
+Additional-Measurement-Timing-Configuration-List N xnap.extension id-Additional-Measurement-Timing-Configuration-List
+PDUSession-PairID N xnap.extension id-PDUSession-PairID
+NRUESidelinkAggregateMaximumBitRate N xnap.extension id-FiveGProSeUEPC5AggregateMaximumBitRate
+ServedCellSpecificInfoReq-NR N xnap.extension id-ServedCellSpecificInfoReq-NR
+Redcap-Bcast-Information N xnap.extension id-Redcap-Bcast-Information
+UESliceMaximumBitRateList N xnap.extension id-UESliceMaximumBitRateList
+PositioningInformation N xnap.extension id-PositioningInformation
+NG-RANnodeUEXnAPID N xnap.extension id-UEAssistantIdentifier
+TAINSAGSupportList N xnap.extension id-TAINSAGSupportList
+EarlyMeasurement N xnap.extension id-earlyMeasurement
+BeamMeasurementsReportConfiguration N xnap.extension id-BeamMeasurementsReportConfiguration
+CoverageModificationCause N xnap.extension id-CoverageModificationCause
+AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated N xnap.extension id-AdditionalListofPDUSessionResourceChangeConfirmInfo-SNterminated
+ExcessPacketDelayThresholdConfiguration N xnap.extension id-ExcessPacketDelayThresholdConfiguration
+QoSFlowMappingIndication N xnap.extension id-QosFlowMappingIndication
#XNAP-ELEMENTARY-PROCEDURE
HandoverRequest N xnap.proc.imsg id-handoverPreparation
@@ -1538,6 +1977,10 @@ NGRANNodeConfigurationUpdate N xnap.proc.imsg id-nGRANnodeConfigur
NGRANNodeConfigurationUpdateAcknowledge N xnap.proc.sout id-nGRANnodeConfigurationUpdate
NGRANNodeConfigurationUpdateFailure N xnap.proc.uout id-nGRANnodeConfigurationUpdate
+PartialUEContextTransfer N xnap.proc.imsg id-partialUEContextTransfer
+PartialUEContextTransferAcknowledge N xnap.proc.sout id-partialUEContextTransfer
+PartialUEContextTransferFailure N xnap.proc.uout id-partialUEContextTransfer
+
E-UTRA-NR-CellResourceCoordinationRequest N xnap.proc.imsg id-e-UTRA-NR-CellResourceCoordination
E-UTRA-NR-CellResourceCoordinationResponse N xnap.proc.sout id-e-UTRA-NR-CellResourceCoordination
@@ -1583,4 +2026,28 @@ MobilityChangeAcknowledge N xnap.proc.sout id-mobilitySettingsC
MobilityChangeFailure N xnap.proc.uout id-mobilitySettingsChange
AccessAndMobilityIndication N xnap.proc.imsg id-accessAndMobilityIndication
+
+CellTrafficTrace N xnap.proc.imsg id-cellTrafficTrace
+
+RANMulticastGroupPaging N xnap.proc.imsg id-RANMulticastGroupPaging
+
+ScgFailureInformationReport N xnap.proc.imsg id-scgFailureInformationReport
+
+ScgFailureTransfer N xnap.proc.imsg id-scgFailureTransfer
+
+F1CTrafficTransfer N xnap.proc.imsg id-f1CTrafficTransfer
+
+IABTransportMigrationManagementRequest N xnap.proc.imsg id-iABTransportMigrationManagement
+IABTransportMigrationManagementResponse N xnap.proc.sout id-iABTransportMigrationManagement
+IABTransportMigrationManagementReject N xnap.proc.uout id-iABTransportMigrationManagement
+
+IABTransportMigrationModificationRequest N xnap.proc.imsg id-iABTransportMigrationModification
+IABTransportMigrationModificationResponse N xnap.proc.sout id-iABTransportMigrationModification
+
+IABResourceCoordinationRequest N xnap.proc.imsg id-iABResourceCoordination
+IABResourceCoordinationResponse N xnap.proc.sout id-iABResourceCoordination
+
+RetrieveUEContextConfirm N xnap.proc.imsg id-retrieveUEContextConfirm
+
+CPCCancel N xnap.proc.imsg id-cPCCancel
#.END
diff --git a/epan/dissectors/asn1/z3950/packet-z3950-template.c b/epan/dissectors/asn1/z3950/packet-z3950-template.c
index 9359deb714..c637ffe580 100644
--- a/epan/dissectors/asn1/z3950/packet-z3950-template.c
+++ b/epan/dissectors/asn1/z3950/packet-z3950-template.c
@@ -14,12 +14,12 @@
*
* References:
* ISO 2709: https://www.iso.org/standard/41319.html
- * MARC21: http://www.loc.gov/marc/bibliographic/
- * Z39.50 Maintenance Agency: http://www.loc.gov/z3950/agency/
- * Z39.50 2003 standard: http://www.loc.gov/z3950/agency/Z39-50-2003.pdf
+ * MARC21: https://www.loc.gov/marc/bibliographic/
+ * Z39.50 Maintenance Agency: https://www.loc.gov/z3950/agency/
+ * Z39.50 2003 standard: https://www.loc.gov/z3950/agency/Z39-50-2003.pdf
* Z39.50 1995 ASN.1: https://www.loc.gov/z3950/agency/asn1.html
* Registered Z39.50 Object Identifiers:
- * http://www.loc.gov/z3950/agency/defns/oids.html
+ * https://www.loc.gov/z3950/agency/defns/oids.html
* Bib-1 Attribute Set: https://www.loc.gov/z3950/agency/defns/bib1.html
* Bib-1 Diagnostics: https://www.loc.gov/z3950/agency/defns/bib1diag.html
* RFC for Z39.50 over TCP/IP: https://tools.ietf.org/html/rfc1729
@@ -105,7 +105,7 @@ void proto_reg_handoff_z3950(void);
void proto_register_z3950(void);
/* Initialize the protocol and registered fields */
-static int proto_z3950 = -1;
+static int proto_z3950;
static int global_z3950_port = Z3950_PORT;
static gboolean z3950_desegment = TRUE;
@@ -293,7 +293,7 @@ static const value_string z3950_bib1_at_use[] = {
{ 1108, "DC-Source" },
{ 1109, "DC-Relation" },
{ 1110, "DC-Coverage" },
- { 1111, "DC-RightsManagment" },
+ { 1111, "DC-RightsManagement" },
{ 1112, "GILS Controlled Subject Index" },
{ 1113, "GILS Subject Thesaurus" },
{ 1114, "GILS Index Terms -- Controlled" },
@@ -643,7 +643,7 @@ static const value_string z3950_bib1_diagconditions[] = {
{ 1067, "Encapsulation: Encapsulated sequence of PDUs not supported" },
{ 1068, "Encapsulation: Base operation (and encapsulated PDUs) not executed based on pre-screening analysis" },
{ 1069, "No syntaxes available for this request" },
- { 1070, "user not authorized to receive record(s) in requested syntax" },
+ { 1070, "User not authorized to receive record(s) in requested syntax" },
{ 1071, "preferredRecordSyntax not supplied" },
{ 1072, "Query term includes characters that do not translate into the target character set" },
{ 1073, "Database records do not contain data associated with access point" },
@@ -653,11 +653,11 @@ static const value_string z3950_bib1_diagconditions[] = {
#include "packet-z3950-hf.c"
-static int hf_z3950_referenceId_printable = -1;
-static int hf_z3950_general_printable = -1;
+static int hf_z3950_referenceId_printable;
+static int hf_z3950_general_printable;
/* Initialize the subtree pointers */
-static int ett_z3950 = -1;
+static int ett_z3950;
#include "packet-z3950-ett.c"
@@ -666,52 +666,52 @@ static int ett_z3950 = -1;
static int dissect_marc_record(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void * data _U_);
/* MARC fields */
-static int hf_marc_record = -1;
-static int hf_marc_record_terminator = -1;
-static int hf_marc_leader = -1;
-static int hf_marc_leader_length = -1;
-static int hf_marc_leader_status = -1;
-static int hf_marc_leader_type = -1;
-static int hf_marc_leader_biblevel = -1;
-static int hf_marc_leader_control = -1;
-static int hf_marc_leader_encoding = -1;
-static int hf_marc_leader_indicator_count = -1;
-static int hf_marc_leader_subfield_count = -1;
-static int hf_marc_leader_data_offset = -1;
-static int hf_marc_leader_encoding_level = -1;
-static int hf_marc_leader_descriptive_cataloging = -1;
-static int hf_marc_leader_multipart_level = -1;
-static int hf_marc_leader_length_of_field_length = -1;
-static int hf_marc_leader_starting_character_position_length = -1;
-static int hf_marc_leader_implementation_defined_length = -1;
-static int hf_marc_directory = -1;
-static int hf_marc_directory_entry = -1;
-static int hf_marc_directory_entry_tag = -1;
-static int hf_marc_directory_entry_length = -1;
-static int hf_marc_directory_entry_starting_position = -1;
-static int hf_marc_directory_terminator = -1;
-static int hf_marc_fields = -1;
-static int hf_marc_field = -1;
-static int hf_marc_field_control = -1;
-static int hf_marc_field_terminator = -1;
-static int hf_marc_field_indicator1 = -1;
-static int hf_marc_field_indicator2 = -1;
-static int hf_marc_field_subfield_indicator = -1;
-static int hf_marc_field_subfield_tag = -1;
-static int hf_marc_field_subfield = -1;
+static int hf_marc_record;
+static int hf_marc_record_terminator;
+static int hf_marc_leader;
+static int hf_marc_leader_length;
+static int hf_marc_leader_status;
+static int hf_marc_leader_type;
+static int hf_marc_leader_biblevel;
+static int hf_marc_leader_control;
+static int hf_marc_leader_encoding;
+static int hf_marc_leader_indicator_count;
+static int hf_marc_leader_subfield_count;
+static int hf_marc_leader_data_offset;
+static int hf_marc_leader_encoding_level;
+static int hf_marc_leader_descriptive_cataloging;
+static int hf_marc_leader_multipart_level;
+static int hf_marc_leader_length_of_field_length;
+static int hf_marc_leader_starting_character_position_length;
+static int hf_marc_leader_implementation_defined_length;
+static int hf_marc_directory;
+static int hf_marc_directory_entry;
+static int hf_marc_directory_entry_tag;
+static int hf_marc_directory_entry_length;
+static int hf_marc_directory_entry_starting_position;
+static int hf_marc_directory_terminator;
+static int hf_marc_fields;
+static int hf_marc_field;
+static int hf_marc_field_control;
+static int hf_marc_field_terminator;
+static int hf_marc_field_indicator1;
+static int hf_marc_field_indicator2;
+static int hf_marc_field_subfield_indicator;
+static int hf_marc_field_subfield_tag;
+static int hf_marc_field_subfield;
/* MARC subtree pointers */
-static int ett_marc_record = -1;
-static int ett_marc_leader = -1;
-static int ett_marc_directory = -1;
-static int ett_marc_directory_entry = -1;
-static int ett_marc_fields = -1;
-static int ett_marc_field = -1;
+static int ett_marc_record;
+static int ett_marc_leader;
+static int ett_marc_directory;
+static int ett_marc_directory_entry;
+static int ett_marc_fields;
+static int ett_marc_field;
/* MARC expert fields */
-static expert_field ei_marc_invalid_length = EI_INIT;
-static expert_field ei_marc_invalid_value = EI_INIT;
-static expert_field ei_marc_invalid_record_length = EI_INIT;
+static expert_field ei_marc_invalid_length;
+static expert_field ei_marc_invalid_value;
+static expert_field ei_marc_invalid_record_length;
/* MARC value strings */
@@ -882,7 +882,7 @@ static const value_string marc_tag_names[] = {
};
static int
-dissect_z3950_printable_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_z3950_printable_OCTET_STRING(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
tvbuff_t *next_tvb = NULL;
int hf_alternate = -1;
guint old_offset = offset;
@@ -933,7 +933,7 @@ dissect_z3950(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U
col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
/* create the z3950 protocol tree */
- z3950_item = proto_tree_add_item(tree, proto_z3950, tvb, 0, -1, FALSE);
+ z3950_item = proto_tree_add_item(tree, proto_z3950, tvb, 0, -1, ENC_NA);
z3950_tree = proto_item_add_subtree(z3950_item, ett_z3950);
return dissect_z3950_PDU(FALSE, tvb, offset, &asn1_ctx, z3950_tree, -1);
@@ -1566,7 +1566,7 @@ dissect_marc_record(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *
if (marc_directory[dir_index].tag < 10) {
proto_tree_add_item(field_tree, hf_marc_field_control,
- tvb, offset, marc_directory[dir_index].length - 1, ENC_ASCII|ENC_NA);
+ tvb, offset, marc_directory[dir_index].length - 1, ENC_ASCII);
offset += marc_directory[dir_index].length - 1;
proto_tree_add_item(field_tree, hf_marc_field_terminator,
tvb, offset, 1, ENC_ASCII);
@@ -1592,12 +1592,12 @@ dissect_marc_record(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *
MARC_SUBFIELD_INDICATOR);
if (next_subfield >= 0) {
proto_tree_add_item(field_tree, hf_marc_field_subfield,
- tvb, offset, next_subfield - offset, ENC_ASCII|ENC_NA);
+ tvb, offset, next_subfield - offset, ENC_ASCII);
offset += (next_subfield - offset);
}
else {
proto_tree_add_item(field_tree, hf_marc_field_subfield,
- tvb, offset, next_offset - offset, ENC_ASCII|ENC_NA);
+ tvb, offset, next_offset - offset, ENC_ASCII);
offset = next_offset;
}
} while (offset < next_offset);