summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/s1ap
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
commite4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch)
tree68cb5ef9081156392f1dd62a00c6ccc1451b93df /epan/dissectors/asn1/s1ap
parentInitial commit. (diff)
downloadwireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz
wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/asn1/s1ap')
-rw-r--r--epan/dissectors/asn1/s1ap/CMakeLists.txt45
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn34
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-Constants.asn539
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-Containers.asn199
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-IEs.asn3328
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn3370
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn779
-rw-r--r--epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn335
-rw-r--r--epan/dissectors/asn1/s1ap/packet-s1ap-template.c843
-rw-r--r--epan/dissectors/asn1/s1ap/packet-s1ap-template.h41
-rw-r--r--epan/dissectors/asn1/s1ap/s1ap.cnf2729
11 files changed, 12242 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/s1ap/CMakeLists.txt b/epan/dissectors/asn1/s1ap/CMakeLists.txt
new file mode 100644
index 00000000..6ac8be13
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/CMakeLists.txt
@@ -0,0 +1,45 @@
+# 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 s1ap )
+
+set( PROTO_OPT )
+
+set( EXPORT_FILES
+ ${PROTOCOL_NAME}-exp.cnf
+)
+
+set( EXT_ASN_FILE_LIST
+)
+
+set( ASN_FILE_LIST
+ S1AP-CommonDataTypes.asn
+ S1AP-Constants.asn
+ S1AP-Containers.asn
+ S1AP-IEs.asn
+ S1AP-PDU-Contents.asn
+ S1AP-PDU-Descriptions.asn
+ S1AP-SonTransfer-IEs.asn
+)
+
+set( EXTRA_DIST
+ ${ASN_FILE_LIST}
+ packet-${PROTOCOL_NAME}-template.c
+ packet-${PROTOCOL_NAME}-template.h
+ ${PROTOCOL_NAME}.cnf
+)
+
+set( SRC_FILES
+ ${EXTRA_DIST}
+ ${EXT_ASN_FILE_LIST}
+)
+
+set( A2W_FLAGS )
+
+ASN2WRS()
diff --git a/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn b/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn
new file mode 100644
index 00000000..6f03db3c
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-CommonDataTypes.asn
@@ -0,0 +1,34 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- 9.3.5 Common Definitions
+-- **************************************************************
+--
+-- Common definitions
+--
+-- **************************************************************
+
+S1AP-CommonDataTypes {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-CommonDataTypes (3) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+Criticality ::= ENUMERATED { reject, ignore, notify }
+
+Presence ::= ENUMERATED { optional, conditional, mandatory }
+
+PrivateIE-ID ::= CHOICE {
+ local INTEGER (0..65535),
+ global OBJECT IDENTIFIER
+}
+
+ProcedureCode ::= INTEGER (0..255)
+
+ProtocolExtensionID ::= INTEGER (0..65535)
+
+ProtocolIE-ID ::= INTEGER (0..65535)
+
+TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessfull-outcome }
+
+END
diff --git a/epan/dissectors/asn1/s1ap/S1AP-Constants.asn b/epan/dissectors/asn1/s1ap/S1AP-Constants.asn
new file mode 100644
index 00000000..3e111932
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-Constants.asn
@@ -0,0 +1,539 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- 9.3.6 Constant Definitions
+-- **************************************************************
+--
+-- Constant definitions
+--
+-- **************************************************************
+
+S1AP-Constants {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-Constants (4) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+ ProcedureCode,
+ ProtocolIE-ID
+
+FROM S1AP-CommonDataTypes;
+
+
+-- **************************************************************
+--
+-- Elementary Procedures
+--
+-- **************************************************************
+
+id-HandoverPreparation ProcedureCode ::= 0
+id-HandoverResourceAllocation ProcedureCode ::= 1
+id-HandoverNotification ProcedureCode ::= 2
+id-PathSwitchRequest ProcedureCode ::= 3
+id-HandoverCancel ProcedureCode ::= 4
+id-E-RABSetup ProcedureCode ::= 5
+id-E-RABModify ProcedureCode ::= 6
+id-E-RABRelease ProcedureCode ::= 7
+id-E-RABReleaseIndication ProcedureCode ::= 8
+id-InitialContextSetup ProcedureCode ::= 9
+id-Paging ProcedureCode ::= 10
+id-downlinkNASTransport ProcedureCode ::= 11
+id-initialUEMessage ProcedureCode ::= 12
+id-uplinkNASTransport ProcedureCode ::= 13
+id-Reset ProcedureCode ::= 14
+id-ErrorIndication ProcedureCode ::= 15
+id-NASNonDeliveryIndication ProcedureCode ::= 16
+id-S1Setup ProcedureCode ::= 17
+id-UEContextReleaseRequest ProcedureCode ::= 18
+id-DownlinkS1cdma2000tunnelling ProcedureCode ::= 19
+id-UplinkS1cdma2000tunnelling ProcedureCode ::= 20
+id-UEContextModification ProcedureCode ::= 21
+id-UECapabilityInfoIndication ProcedureCode ::= 22
+id-UEContextRelease ProcedureCode ::= 23
+id-eNBStatusTransfer ProcedureCode ::= 24
+id-MMEStatusTransfer ProcedureCode ::= 25
+id-DeactivateTrace ProcedureCode ::= 26
+id-TraceStart ProcedureCode ::= 27
+id-TraceFailureIndication ProcedureCode ::= 28
+id-ENBConfigurationUpdate ProcedureCode ::= 29
+id-MMEConfigurationUpdate ProcedureCode ::= 30
+id-LocationReportingControl ProcedureCode ::= 31
+id-LocationReportingFailureIndication ProcedureCode ::= 32
+id-LocationReport ProcedureCode ::= 33
+id-OverloadStart ProcedureCode ::= 34
+id-OverloadStop ProcedureCode ::= 35
+id-WriteReplaceWarning ProcedureCode ::= 36
+id-eNBDirectInformationTransfer ProcedureCode ::= 37
+id-MMEDirectInformationTransfer ProcedureCode ::= 38
+id-PrivateMessage ProcedureCode ::= 39
+id-eNBConfigurationTransfer ProcedureCode ::= 40
+id-MMEConfigurationTransfer ProcedureCode ::= 41
+id-CellTrafficTrace ProcedureCode ::= 42
+id-Kill ProcedureCode ::= 43
+id-downlinkUEAssociatedLPPaTransport ProcedureCode ::= 44
+id-uplinkUEAssociatedLPPaTransport ProcedureCode ::= 45
+id-downlinkNonUEAssociatedLPPaTransport ProcedureCode ::= 46
+id-uplinkNonUEAssociatedLPPaTransport ProcedureCode ::= 47
+id-UERadioCapabilityMatch ProcedureCode ::= 48
+id-PWSRestartIndication ProcedureCode ::= 49
+id-E-RABModificationIndication ProcedureCode ::= 50
+id-PWSFailureIndication ProcedureCode ::= 51
+id-RerouteNASRequest ProcedureCode ::= 52
+id-UEContextModificationIndication ProcedureCode ::= 53
+id-ConnectionEstablishmentIndication ProcedureCode ::= 54
+id-UEContextSuspend ProcedureCode ::= 55
+id-UEContextResume ProcedureCode ::= 56
+id-NASDeliveryIndication ProcedureCode ::= 57
+id-RetrieveUEInformation ProcedureCode ::= 58
+id-UEInformationTransfer ProcedureCode ::= 59
+id-eNBCPRelocationIndication ProcedureCode ::= 60
+id-MMECPRelocationIndication ProcedureCode ::= 61
+id-SecondaryRATDataUsageReport ProcedureCode ::= 62
+id-UERadioCapabilityIDMapping ProcedureCode ::= 63
+id-HandoverSuccess ProcedureCode ::= 64
+id-eNBEarlyStatusTransfer ProcedureCode ::= 65
+id-MMEEarlyStatusTransfer ProcedureCode ::= 66
+
+-- **************************************************************
+--
+-- Extension constants
+--
+-- **************************************************************
+
+maxPrivateIEs INTEGER ::= 65535
+maxProtocolExtensions INTEGER ::= 65535
+maxProtocolIEs INTEGER ::= 65535
+-- **************************************************************
+--
+-- Lists
+--
+-- **************************************************************
+
+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
+
+
+-- **************************************************************
+--
+-- IEs
+--
+-- **************************************************************
+
+id-MME-UE-S1AP-ID ProtocolIE-ID ::= 0
+id-HandoverType ProtocolIE-ID ::= 1
+id-Cause ProtocolIE-ID ::= 2
+id-SourceID ProtocolIE-ID ::= 3
+id-TargetID ProtocolIE-ID ::= 4
+--WS extension
+id-Unknown-5 ProtocolIE-ID ::= 5
+id-Unknown-6 ProtocolIE-ID ::= 6
+id-Unknown-7 ProtocolIE-ID ::= 7
+id-eNB-UE-S1AP-ID ProtocolIE-ID ::= 8
+--WS extension
+id-Unknown-9 ProtocolIE-ID ::= 9
+id-Unknown-10 ProtocolIE-ID ::= 10
+id-Unknown-11 ProtocolIE-ID ::= 11
+id-E-RABSubjecttoDataForwardingList ProtocolIE-ID ::= 12
+id-E-RABtoReleaseListHOCmd ProtocolIE-ID ::= 13
+id-E-RABDataForwardingItem ProtocolIE-ID ::= 14
+id-E-RABReleaseItemBearerRelComp ProtocolIE-ID ::= 15
+id-E-RABToBeSetupListBearerSUReq ProtocolIE-ID ::= 16
+id-E-RABToBeSetupItemBearerSUReq ProtocolIE-ID ::= 17
+id-E-RABAdmittedList ProtocolIE-ID ::= 18
+id-E-RABFailedToSetupListHOReqAck ProtocolIE-ID ::= 19
+id-E-RABAdmittedItem ProtocolIE-ID ::= 20
+id-E-RABFailedtoSetupItemHOReqAck ProtocolIE-ID ::= 21
+id-E-RABToBeSwitchedDLList ProtocolIE-ID ::= 22
+id-E-RABToBeSwitchedDLItem ProtocolIE-ID ::= 23
+id-E-RABToBeSetupListCtxtSUReq ProtocolIE-ID ::= 24
+id-TraceActivation ProtocolIE-ID ::= 25
+id-NAS-PDU ProtocolIE-ID ::= 26
+id-E-RABToBeSetupItemHOReq ProtocolIE-ID ::= 27
+id-E-RABSetupListBearerSURes ProtocolIE-ID ::= 28
+id-E-RABFailedToSetupListBearerSURes ProtocolIE-ID ::= 29
+id-E-RABToBeModifiedListBearerModReq ProtocolIE-ID ::= 30
+id-E-RABModifyListBearerModRes ProtocolIE-ID ::= 31
+id-E-RABFailedToModifyList ProtocolIE-ID ::= 32
+id-E-RABToBeReleasedList ProtocolIE-ID ::= 33
+id-E-RABFailedToReleaseList ProtocolIE-ID ::= 34
+id-E-RABItem ProtocolIE-ID ::= 35
+id-E-RABToBeModifiedItemBearerModReq ProtocolIE-ID ::= 36
+id-E-RABModifyItemBearerModRes ProtocolIE-ID ::= 37
+id-E-RABReleaseItem ProtocolIE-ID ::= 38
+id-E-RABSetupItemBearerSURes ProtocolIE-ID ::= 39
+id-SecurityContext ProtocolIE-ID ::= 40
+id-HandoverRestrictionList ProtocolIE-ID ::= 41
+--WS extension
+id-Unknown-42 ProtocolIE-ID ::= 42
+id-UEPagingID ProtocolIE-ID ::= 43
+id-pagingDRX ProtocolIE-ID ::= 44
+--WS extension
+id-Unknown-45 ProtocolIE-ID ::= 45
+id-TAIList ProtocolIE-ID ::= 46
+id-TAIItem ProtocolIE-ID ::= 47
+id-E-RABFailedToSetupListCtxtSURes ProtocolIE-ID ::= 48
+id-E-RABReleaseItemHOCmd ProtocolIE-ID ::= 49
+id-E-RABSetupItemCtxtSURes ProtocolIE-ID ::= 50
+id-E-RABSetupListCtxtSURes ProtocolIE-ID ::= 51
+id-E-RABToBeSetupItemCtxtSUReq ProtocolIE-ID ::= 52
+id-E-RABToBeSetupListHOReq ProtocolIE-ID ::= 53
+--WS extension
+id-Unknown-54 ProtocolIE-ID ::= 54
+id-GERANtoLTEHOInformationRes ProtocolIE-ID ::= 55
+--WS extension
+id-Unknown-56 ProtocolIE-ID ::= 56
+id-UTRANtoLTEHOInformationRes ProtocolIE-ID ::= 57
+id-CriticalityDiagnostics ProtocolIE-ID ::= 58
+id-Global-ENB-ID ProtocolIE-ID ::= 59
+id-eNBname ProtocolIE-ID ::= 60
+id-MMEname ProtocolIE-ID ::= 61
+--WS extension
+id-Unknown-62 ProtocolIE-ID ::= 62
+id-ServedPLMNs ProtocolIE-ID ::= 63
+id-SupportedTAs ProtocolIE-ID ::= 64
+id-TimeToWait ProtocolIE-ID ::= 65
+id-uEaggregateMaximumBitrate ProtocolIE-ID ::= 66
+id-TAI ProtocolIE-ID ::= 67
+--WS extension
+id-Unknown-68 ProtocolIE-ID ::= 68
+id-E-RABReleaseListBearerRelComp ProtocolIE-ID ::= 69
+id-cdma2000PDU ProtocolIE-ID ::= 70
+id-cdma2000RATType ProtocolIE-ID ::= 71
+id-cdma2000SectorID ProtocolIE-ID ::= 72
+id-SecurityKey ProtocolIE-ID ::= 73
+id-UERadioCapability ProtocolIE-ID ::= 74
+id-GUMMEI-ID ProtocolIE-ID ::= 75
+--WS extension
+id-Unknown-76 ProtocolIE-ID ::= 76
+id-Unknown-77 ProtocolIE-ID ::= 77
+id-E-RABInformationListItem ProtocolIE-ID ::= 78
+id-Direct-Forwarding-Path-Availability ProtocolIE-ID ::= 79
+id-UEIdentityIndexValue ProtocolIE-ID ::= 80
+--WS extension
+id-Unknown-81 ProtocolIE-ID ::= 81
+id-Unknown-82 ProtocolIE-ID ::= 82
+id-cdma2000HOStatus ProtocolIE-ID ::= 83
+id-cdma2000HORequiredIndication ProtocolIE-ID ::= 84
+--WS extension
+id-Unknown-85 ProtocolIE-ID ::= 85
+id-E-UTRAN-Trace-ID ProtocolIE-ID ::= 86
+id-RelativeMMECapacity ProtocolIE-ID ::= 87
+id-SourceMME-UE-S1AP-ID ProtocolIE-ID ::= 88
+id-Bearers-SubjectToStatusTransfer-Item ProtocolIE-ID ::= 89
+id-eNB-StatusTransfer-TransparentContainer ProtocolIE-ID ::= 90
+id-UE-associatedLogicalS1-ConnectionItem ProtocolIE-ID ::= 91
+id-ResetType ProtocolIE-ID ::= 92
+id-UE-associatedLogicalS1-ConnectionListResAck ProtocolIE-ID ::= 93
+id-E-RABToBeSwitchedULItem ProtocolIE-ID ::= 94
+id-E-RABToBeSwitchedULList ProtocolIE-ID ::= 95
+id-S-TMSI ProtocolIE-ID ::= 96
+id-cdma2000OneXRAND ProtocolIE-ID ::= 97
+id-RequestType ProtocolIE-ID ::= 98
+id-UE-S1AP-IDs ProtocolIE-ID ::= 99
+id-EUTRAN-CGI ProtocolIE-ID ::= 100
+id-OverloadResponse ProtocolIE-ID ::= 101
+id-cdma2000OneXSRVCCInfo ProtocolIE-ID ::= 102
+id-E-RABFailedToBeReleasedList ProtocolIE-ID ::= 103
+id-Source-ToTarget-TransparentContainer ProtocolIE-ID ::= 104
+id-ServedGUMMEIs ProtocolIE-ID ::= 105
+id-SubscriberProfileIDforRFP ProtocolIE-ID ::= 106
+id-UESecurityCapabilities ProtocolIE-ID ::= 107
+id-CSFallbackIndicator ProtocolIE-ID ::= 108
+id-CNDomain ProtocolIE-ID ::= 109
+id-E-RABReleasedList ProtocolIE-ID ::= 110
+id-MessageIdentifier ProtocolIE-ID ::= 111
+id-SerialNumber ProtocolIE-ID ::= 112
+id-WarningAreaList ProtocolIE-ID ::= 113
+id-RepetitionPeriod ProtocolIE-ID ::= 114
+id-NumberofBroadcastRequest ProtocolIE-ID ::= 115
+id-WarningType ProtocolIE-ID ::= 116
+id-WarningSecurityInfo ProtocolIE-ID ::= 117
+id-DataCodingScheme ProtocolIE-ID ::= 118
+id-WarningMessageContents ProtocolIE-ID ::= 119
+id-BroadcastCompletedAreaList ProtocolIE-ID ::= 120
+id-Inter-SystemInformationTransferTypeEDT ProtocolIE-ID ::= 121
+id-Inter-SystemInformationTransferTypeMDT ProtocolIE-ID ::= 122
+id-Target-ToSource-TransparentContainer ProtocolIE-ID ::= 123
+id-SRVCCOperationPossible ProtocolIE-ID ::= 124
+id-SRVCCHOIndication ProtocolIE-ID ::= 125
+id-NAS-DownlinkCount ProtocolIE-ID ::= 126
+id-CSG-Id ProtocolIE-ID ::= 127
+id-CSG-IdList ProtocolIE-ID ::= 128
+id-SONConfigurationTransferECT ProtocolIE-ID ::= 129
+id-SONConfigurationTransferMCT ProtocolIE-ID ::= 130
+id-TraceCollectionEntityIPAddress ProtocolIE-ID ::= 131
+id-MSClassmark2 ProtocolIE-ID ::= 132
+id-MSClassmark3 ProtocolIE-ID ::= 133
+id-RRC-Establishment-Cause ProtocolIE-ID ::= 134
+id-NASSecurityParametersfromE-UTRAN ProtocolIE-ID ::= 135
+id-NASSecurityParameterstoE-UTRAN ProtocolIE-ID ::= 136
+id-DefaultPagingDRX ProtocolIE-ID ::= 137
+id-Source-ToTarget-TransparentContainer-Secondary ProtocolIE-ID ::= 138
+id-Target-ToSource-TransparentContainer-Secondary ProtocolIE-ID ::= 139
+id-EUTRANRoundTripDelayEstimationInfo ProtocolIE-ID ::= 140
+id-BroadcastCancelledAreaList ProtocolIE-ID ::= 141
+id-ConcurrentWarningMessageIndicator ProtocolIE-ID ::= 142
+id-Data-Forwarding-Not-Possible ProtocolIE-ID ::= 143
+id-ExtendedRepetitionPeriod ProtocolIE-ID ::= 144
+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-PS-ServiceNotAvailable ProtocolIE-ID ::= 150
+id-PagingPriority ProtocolIE-ID ::= 151
+id-x2TNLConfigurationInfo ProtocolIE-ID ::= 152
+id-eNBX2ExtendedTransportLayerAddresses ProtocolIE-ID ::= 153
+id-GUMMEIList ProtocolIE-ID ::= 154
+id-GW-TransportLayerAddress ProtocolIE-ID ::= 155
+id-Correlation-ID ProtocolIE-ID ::= 156
+id-SourceMME-GUMMEI ProtocolIE-ID ::= 157
+id-MME-UE-S1AP-ID-2 ProtocolIE-ID ::= 158
+id-RegisteredLAI ProtocolIE-ID ::= 159
+id-RelayNode-Indicator ProtocolIE-ID ::= 160
+id-TrafficLoadReductionIndication ProtocolIE-ID ::= 161
+id-MDTConfiguration ProtocolIE-ID ::= 162
+id-MMERelaySupportIndicator ProtocolIE-ID ::= 163
+id-GWContextReleaseIndication ProtocolIE-ID ::= 164
+id-ManagementBasedMDTAllowed ProtocolIE-ID ::= 165
+id-PrivacyIndicator ProtocolIE-ID ::= 166
+id-Time-UE-StayedInCell-EnhancedGranularity ProtocolIE-ID ::= 167
+id-HO-Cause ProtocolIE-ID ::= 168
+id-VoiceSupportMatchIndicator ProtocolIE-ID ::= 169
+id-GUMMEIType ProtocolIE-ID ::= 170
+id-M3Configuration ProtocolIE-ID ::= 171
+id-M4Configuration ProtocolIE-ID ::= 172
+id-M5Configuration ProtocolIE-ID ::= 173
+id-MDT-Location-Info ProtocolIE-ID ::= 174
+id-MobilityInformation ProtocolIE-ID ::= 175
+id-Tunnel-Information-for-BBF ProtocolIE-ID ::= 176
+id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 177
+id-SignallingBasedMDTPLMNList ProtocolIE-ID ::= 178
+id-ULCOUNTValueExtended ProtocolIE-ID ::= 179
+id-DLCOUNTValueExtended ProtocolIE-ID ::= 180
+id-ReceiveStatusOfULPDCPSDUsExtended ProtocolIE-ID ::= 181
+id-ECGIListForRestart ProtocolIE-ID ::= 182
+id-SIPTO-Correlation-ID ProtocolIE-ID ::= 183
+id-SIPTO-L-GW-TransportLayerAddress ProtocolIE-ID ::= 184
+id-TransportInformation ProtocolIE-ID ::= 185
+id-LHN-ID ProtocolIE-ID ::= 186
+id-AdditionalCSFallbackIndicator ProtocolIE-ID ::= 187
+id-TAIListForRestart ProtocolIE-ID ::= 188
+id-UserLocationInformation ProtocolIE-ID ::= 189
+id-EmergencyAreaIDListForRestart ProtocolIE-ID ::= 190
+id-KillAllWarningMessages ProtocolIE-ID ::= 191
+id-Masked-IMEISV ProtocolIE-ID ::= 192
+id-eNBIndirectX2TransportLayerAddresses ProtocolIE-ID ::= 193
+id-uE-HistoryInformationFromTheUE ProtocolIE-ID ::= 194
+id-ProSeAuthorized ProtocolIE-ID ::= 195
+id-ExpectedUEBehaviour ProtocolIE-ID ::= 196
+id-LoggedMBSFNMDT ProtocolIE-ID ::= 197
+id-UERadioCapabilityForPaging ProtocolIE-ID ::= 198
+id-E-RABToBeModifiedListBearerModInd ProtocolIE-ID ::= 199
+id-E-RABToBeModifiedItemBearerModInd ProtocolIE-ID ::= 200
+id-E-RABNotToBeModifiedListBearerModInd ProtocolIE-ID ::= 201
+id-E-RABNotToBeModifiedItemBearerModInd ProtocolIE-ID ::= 202
+id-E-RABModifyListBearerModConf ProtocolIE-ID ::= 203
+id-E-RABModifyItemBearerModConf ProtocolIE-ID ::= 204
+id-E-RABFailedToModifyListBearerModConf ProtocolIE-ID ::= 205
+id-SON-Information-Report ProtocolIE-ID ::= 206
+id-Muting-Availability-Indication ProtocolIE-ID ::= 207
+id-Muting-Pattern-Information ProtocolIE-ID ::= 208
+id-Synchronisation-Information ProtocolIE-ID ::= 209
+id-E-RABToBeReleasedListBearerModConf ProtocolIE-ID ::= 210
+id-AssistanceDataForPaging ProtocolIE-ID ::= 211
+id-CellIdentifierAndCELevelForCECapableUEs ProtocolIE-ID ::= 212
+id-InformationOnRecommendedCellsAndENBsForPaging ProtocolIE-ID ::= 213
+id-RecommendedCellItem ProtocolIE-ID ::= 214
+id-RecommendedENBItem ProtocolIE-ID ::= 215
+id-ProSeUEtoNetworkRelaying ProtocolIE-ID ::= 216
+id-ULCOUNTValuePDCP-SNlength18 ProtocolIE-ID ::= 217
+id-DLCOUNTValuePDCP-SNlength18 ProtocolIE-ID ::= 218
+id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 ProtocolIE-ID ::= 219
+id-M6Configuration ProtocolIE-ID ::= 220
+id-M7Configuration ProtocolIE-ID ::= 221
+id-PWSfailedECGIList ProtocolIE-ID ::= 222
+id-MME-Group-ID ProtocolIE-ID ::= 223
+id-Additional-GUTI ProtocolIE-ID ::= 224
+id-S1-Message ProtocolIE-ID ::= 225
+id-CSGMembershipInfo ProtocolIE-ID ::= 226
+id-Paging-eDRXInformation ProtocolIE-ID ::= 227
+id-UE-RetentionInformation ProtocolIE-ID ::= 228
+--WS extension
+id-Unknown-229 ProtocolIE-ID ::= 229
+id-UE-Usage-Type ProtocolIE-ID ::= 230
+id-extended-UEIdentityIndexValue ProtocolIE-ID ::= 231
+id-RAT-Type ProtocolIE-ID ::= 232
+id-BearerType ProtocolIE-ID ::= 233
+id-NB-IoT-DefaultPagingDRX ProtocolIE-ID ::= 234
+id-E-RABFailedToResumeListResumeReq ProtocolIE-ID ::= 235
+id-E-RABFailedToResumeItemResumeReq ProtocolIE-ID ::= 236
+id-E-RABFailedToResumeListResumeRes ProtocolIE-ID ::= 237
+id-E-RABFailedToResumeItemResumeRes ProtocolIE-ID ::= 238
+id-NB-IoT-Paging-eDRXInformation ProtocolIE-ID ::= 239
+id-V2XServicesAuthorized ProtocolIE-ID ::= 240
+id-UEUserPlaneCIoTSupportIndicator ProtocolIE-ID ::= 241
+id-CE-mode-B-SupportIndicator ProtocolIE-ID ::= 242
+id-SRVCCOperationNotPossible ProtocolIE-ID ::= 243
+id-NB-IoT-UEIdentityIndexValue ProtocolIE-ID ::= 244
+id-RRC-Resume-Cause ProtocolIE-ID ::= 245
+id-DCN-ID ProtocolIE-ID ::= 246
+id-ServedDCNs ProtocolIE-ID ::= 247
+id-UESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 248
+id-DLNASPDUDeliveryAckRequest ProtocolIE-ID ::= 249
+id-Coverage-Level ProtocolIE-ID ::= 250
+id-EnhancedCoverageRestricted ProtocolIE-ID ::= 251
+id-UE-Level-QoS-Parameters ProtocolIE-ID ::= 252
+id-DL-CP-SecurityInformation ProtocolIE-ID ::= 253
+id-UL-CP-SecurityInformation ProtocolIE-ID ::= 254
+id-extended-e-RAB-MaximumBitrateDL ProtocolIE-ID ::= 255
+id-extended-e-RAB-MaximumBitrateUL ProtocolIE-ID ::= 256
+id-extended-e-RAB-GuaranteedBitrateDL ProtocolIE-ID ::= 257
+id-extended-e-RAB-GuaranteedBitrateUL ProtocolIE-ID ::= 258
+id-extended-uEaggregateMaximumBitRateDL ProtocolIE-ID ::= 259
+id-extended-uEaggregateMaximumBitRateUL ProtocolIE-ID ::= 260
+id-NRrestrictioninEPSasSecondaryRAT ProtocolIE-ID ::= 261
+id-UEAppLayerMeasConfig ProtocolIE-ID ::= 262
+id-UE-Application-Layer-Measurement-Capability ProtocolIE-ID ::= 263
+id-SecondaryRATDataUsageReportList ProtocolIE-ID ::= 264
+id-SecondaryRATDataUsageReportItem ProtocolIE-ID ::= 265
+id-HandoverFlag ProtocolIE-ID ::= 266
+id-E-RABUsageReportItem ProtocolIE-ID ::= 267
+id-SecondaryRATDataUsageRequest ProtocolIE-ID ::= 268
+id-NRUESecurityCapabilities ProtocolIE-ID ::= 269
+id-UnlicensedSpectrumRestriction ProtocolIE-ID ::= 270
+id-CE-ModeBRestricted ProtocolIE-ID ::= 271
+id-LTE-M-Indication ProtocolIE-ID ::= 272
+id-DownlinkPacketLossRate ProtocolIE-ID ::= 273
+id-UplinkPacketLossRate ProtocolIE-ID ::= 274
+id-UECapabilityInfoRequest ProtocolIE-ID ::= 275
+id-serviceType ProtocolIE-ID ::= 276
+id-AerialUEsubscriptionInformation ProtocolIE-ID ::= 277
+id-Subscription-Based-UE-DifferentiationInfo ProtocolIE-ID ::= 278
+--WS extension
+id-Unknown-279 ProtocolIE-ID ::= 279
+id-EndIndication ProtocolIE-ID ::= 280
+id-EDT-Session ProtocolIE-ID ::= 281
+id-CNTypeRestrictions ProtocolIE-ID ::= 282
+id-PendingDataIndication ProtocolIE-ID ::= 283
+id-BluetoothMeasurementConfiguration ProtocolIE-ID ::= 284
+id-WLANMeasurementConfiguration ProtocolIE-ID ::= 285
+id-WarningAreaCoordinates ProtocolIE-ID ::= 286
+id-NRrestrictionin5GS ProtocolIE-ID ::= 287
+id-PSCellInformation ProtocolIE-ID ::= 288
+--WS extension
+id-Unknown-289 ProtocolIE-ID ::= 289
+id-LastNG-RANPLMNIdentity ProtocolIE-ID ::= 290
+id-ConnectedengNBList ProtocolIE-ID ::= 291
+id-ConnectedengNBToAddList ProtocolIE-ID ::= 292
+id-ConnectedengNBToRemoveList ProtocolIE-ID ::= 293
+id-EN-DCSONConfigurationTransfer-ECT ProtocolIE-ID ::= 294
+id-EN-DCSONConfigurationTransfer-MCT ProtocolIE-ID ::= 295
+id-IMSvoiceEPSfallbackfrom5G ProtocolIE-ID ::= 296
+id-TimeSinceSecondaryNodeRelease ProtocolIE-ID ::= 297
+id-RequestTypeAdditionalInfo ProtocolIE-ID ::= 298
+id-AdditionalRRMPriorityIndex ProtocolIE-ID ::= 299
+id-ContextatSource ProtocolIE-ID ::= 300
+id-IAB-Authorized ProtocolIE-ID ::= 301
+id-IAB-Node-Indication ProtocolIE-ID ::= 302
+id-IAB-Supported ProtocolIE-ID ::= 303
+id-DataSize ProtocolIE-ID ::= 304
+id-Ethernet-Type ProtocolIE-ID ::= 305
+id-NRV2XServicesAuthorized ProtocolIE-ID ::= 306
+id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 307
+id-PC5QoSParameters ProtocolIE-ID ::= 308
+id-IntersystemSONConfigurationTransferMCT ProtocolIE-ID ::= 309
+id-IntersystemSONConfigurationTransferECT ProtocolIE-ID ::= 310
+id-IntersystemMeasurementConfiguration ProtocolIE-ID ::= 311
+id-SourceNodeID ProtocolIE-ID ::= 312
+id-NB-IoT-RLF-Report-Container ProtocolIE-ID ::= 313
+id-UERadioCapabilityID ProtocolIE-ID ::= 314
+id-UERadioCapability-NR-Format ProtocolIE-ID ::= 315
+id-MDTConfigurationNR ProtocolIE-ID ::= 316
+id-DAPSRequestInfo ProtocolIE-ID ::= 317
+id-DAPSResponseInfoList ProtocolIE-ID ::= 318
+id-DAPSResponseInfoItem ProtocolIE-ID ::= 319
+id-NotifySourceeNB ProtocolIE-ID ::= 320
+id-eNB-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID ::= 321
+id-Bearers-SubjectToEarlyStatusTransfer-Item ProtocolIE-ID ::= 322
+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
new file mode 100644
index 00000000..9b53fe64
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-Containers.asn
@@ -0,0 +1,199 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- 9.3.7 Container Definitions
+-- **************************************************************
+--
+-- Container definitions
+--
+-- **************************************************************
+
+S1AP-Containers {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-Containers (5) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+ Criticality,
+ Presence,
+ PrivateIE-ID,
+ ProtocolExtensionID,
+ ProtocolIE-ID
+FROM S1AP-CommonDataTypes
+
+ maxPrivateIEs,
+ maxProtocolExtensions,
+ maxProtocolIEs
+FROM S1AP-Constants;
+
+-- **************************************************************
+--
+-- Class Definition for Protocol IEs
+--
+-- **************************************************************
+
+S1AP-PROTOCOL-IES ::= CLASS {
+ &id ProtocolIE-ID UNIQUE,
+ &criticality Criticality,
+ &Value,
+ &presence Presence
+}
+WITH SYNTAX {
+ ID &id
+ CRITICALITY &criticality
+ TYPE &Value
+ PRESENCE &presence
+}
+
+-- **************************************************************
+--
+-- Class Definition for Protocol IEs
+--
+-- **************************************************************
+
+S1AP-PROTOCOL-IES-PAIR ::= CLASS {
+ &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
+}
+
+-- **************************************************************
+--
+-- Class Definition for Protocol Extensions
+--
+-- **************************************************************
+
+S1AP-PROTOCOL-EXTENSION ::= CLASS {
+ &id ProtocolExtensionID UNIQUE,
+ &criticality Criticality,
+ &Extension,
+ &presence Presence
+}
+WITH SYNTAX {
+ ID &id
+ CRITICALITY &criticality
+ EXTENSION &Extension
+ PRESENCE &presence
+}
+
+-- **************************************************************
+--
+-- Class Definition for Private IEs
+--
+-- **************************************************************
+
+S1AP-PRIVATE-IES ::= CLASS {
+ &id PrivateIE-ID,
+ &criticality Criticality,
+ &Value,
+ &presence Presence
+}
+WITH SYNTAX {
+ ID &id
+ CRITICALITY &criticality
+ TYPE &Value
+ PRESENCE &presence
+}
+
+-- **************************************************************
+--
+-- Container for Protocol IEs
+--
+-- **************************************************************
+
+ProtocolIE-Container {S1AP-PROTOCOL-IES : IEsSetParam} ::=
+ SEQUENCE (SIZE (0..maxProtocolIEs)) OF
+ ProtocolIE-Field {{IEsSetParam}}
+
+ProtocolIE-SingleContainer {S1AP-PROTOCOL-IES : IEsSetParam} ::=
+ ProtocolIE-Field {{IEsSetParam}}
+
+ProtocolIE-Field {S1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
+ id S1AP-PROTOCOL-IES.&id ({IEsSetParam}),
+ criticality S1AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
+ value S1AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
+}
+
+-- **************************************************************
+--
+-- Container for Protocol IE Pairs
+--
+-- **************************************************************
+
+ProtocolIE-ContainerPair {S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ SEQUENCE (SIZE (0..maxProtocolIEs)) OF
+ ProtocolIE-FieldPair {{IEsSetParam}}
+
+ProtocolIE-FieldPair {S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
+ id S1AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}),
+ firstCriticality S1AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}),
+ firstValue S1AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}),
+ secondCriticality S1AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}),
+ secondValue S1AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
+}
+
+-- **************************************************************
+--
+-- Container Lists for Protocol IE Containers
+--
+-- **************************************************************
+
+ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES : IEsSetParam} ::=
+ SEQUENCE (SIZE (lowerBound..upperBound)) OF
+ ProtocolIE-SingleContainer {{IEsSetParam}}
+
+ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ SEQUENCE (SIZE (lowerBound..upperBound)) OF
+ ProtocolIE-ContainerPair {{IEsSetParam}}
+
+-- **************************************************************
+--
+-- Container for Protocol Extensions
+--
+-- **************************************************************
+
+ProtocolExtensionContainer {S1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
+ ProtocolExtensionField {{ExtensionSetParam}}
+
+ProtocolExtensionField {S1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
+ id S1AP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}),
+ criticality S1AP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}),
+ extensionValue S1AP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id})
+}
+
+-- **************************************************************
+--
+-- Container for Private IEs
+--
+-- **************************************************************
+
+PrivateIE-Container {S1AP-PRIVATE-IES : IEsSetParam } ::=
+ SEQUENCE (SIZE (1.. maxPrivateIEs)) OF
+ PrivateIE-Field {{IEsSetParam}}
+
+PrivateIE-Field {S1AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
+ id S1AP-PRIVATE-IES.&id ({IEsSetParam}),
+ criticality S1AP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}),
+ value S1AP-PRIVATE-IES.&Value ({IEsSetParam}{@id})
+}
+
+END
diff --git a/epan/dissectors/asn1/s1ap/S1AP-IEs.asn b/epan/dissectors/asn1/s1ap/S1AP-IEs.asn
new file mode 100644
index 00000000..ab6c5a8a
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-IEs.asn
@@ -0,0 +1,3328 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- 9.3.4 Information Element Definitions
+-- **************************************************************
+--
+-- Information Element Definitions
+--
+-- **************************************************************
+
+S1AP-IEs {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-IEs (2) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+ id-E-RABInformationListItem,
+ id-E-RABItem,
+ id-GUMMEIType,
+ id-Bearers-SubjectToStatusTransfer-Item,
+ id-Time-Synchronisation-Info,
+ id-x2TNLConfigurationInfo,
+ id-eNBX2ExtendedTransportLayerAddresses,
+ id-MDTConfiguration,
+ id-Time-UE-StayedInCell-EnhancedGranularity,
+ id-HO-Cause,
+ id-M3Configuration,
+ id-M4Configuration,
+ id-M5Configuration,
+ id-MDT-Location-Info,
+ id-SignallingBasedMDTPLMNList,
+ id-MobilityInformation,
+ id-ULCOUNTValueExtended,
+ id-DLCOUNTValueExtended,
+ id-ReceiveStatusOfULPDCPSDUsExtended,
+ id-eNBIndirectX2TransportLayerAddresses,
+ id-Muting-Availability-Indication,
+ id-Muting-Pattern-Information,
+ id-NRrestrictioninEPSasSecondaryRAT,
+ id-NRrestrictionin5GS,
+ id-Synchronisation-Information,
+ id-uE-HistoryInformationFromTheUE,
+ id-LoggedMBSFNMDT,
+ id-SON-Information-Report,
+ id-RecommendedCellItem,
+ id-RecommendedENBItem,
+ id-ProSeUEtoNetworkRelaying,
+ id-ULCOUNTValuePDCP-SNlength18,
+ id-DLCOUNTValuePDCP-SNlength18,
+ id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18,
+ id-M6Configuration,
+ id-M7Configuration,
+ id-RAT-Type,
+ id-extended-e-RAB-MaximumBitrateDL,
+ id-extended-e-RAB-MaximumBitrateUL,
+ id-extended-e-RAB-GuaranteedBitrateDL,
+ id-extended-e-RAB-GuaranteedBitrateUL,
+ id-extended-uEaggregateMaximumBitRateDL,
+ id-extended-uEaggregateMaximumBitRateUL,
+ id-SecondaryRATDataUsageReportItem,
+ id-E-RABUsageReportItem,
+ id-UEAppLayerMeasConfig,
+ id-serviceType,
+ id-UnlicensedSpectrumRestriction,
+ id-CNTypeRestrictions,
+ id-DownlinkPacketLossRate,
+ id-UplinkPacketLossRate,
+ id-BluetoothMeasurementConfiguration,
+ id-WLANMeasurementConfiguration,
+ id-LastNG-RANPLMNIdentity,
+ id-PSCellInformation,
+ id-IMSvoiceEPSfallbackfrom5G,
+ id-RequestTypeAdditionalInfo,
+ id-AdditionalRRMPriorityIndex,
+ id-ContextatSource,
+ id-IntersystemMeasurementConfiguration,
+ id-SourceNodeID,
+ id-NB-IoT-RLF-Report-Container,
+ id-MDTConfigurationNR,
+ id-DAPSRequestInfo,
+ id-DAPSResponseInfoList,
+ id-DAPSResponseInfoItem,
+ 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,
+ maxnoofBPLMNs,
+ maxnoofPLMNsPerMME,
+ maxnoofTACs,
+ maxnoofEPLMNs,
+ maxnoofEPLMNsPlusOne,
+ maxnoofForbLACs,
+ maxnoofForbTACs,
+ maxnoofCellsinUEHistoryInfo,
+ maxnoofCellID,
+ maxnoofDCNs,
+ maxnoofEmergencyAreaID,
+ maxnoofTAIforWarning,
+ maxnoofCellinTAI,
+ maxnoofCellinEAI,
+ maxnoofeNBX2TLAs,
+ maxnoofeNBX2ExtTLAs,
+ maxnoofeNBX2GTPTLAs,
+ maxnoofRATs,
+ maxnoofGroupIDs,
+ maxnoofMMECs,
+ maxnoofTAforMDT,
+ maxnoofCellIDforMDT,
+ maxnoofMDTPLMNs,
+ maxnoofCellsforRestart,
+ maxnoofRestartTAIs,
+ maxnoofRestartEmergencyAreaIDs,
+ maxnoofMBSFNAreaMDT,
+ maxEARFCN,
+ maxnoofCellsineNB,
+ maxnoofRecommendedCells,
+ maxnoofRecommendedENBs,
+ maxnooftimeperiods,
+ maxnoofCellIDforQMC,
+ maxnoofTAforQMC,
+ maxnoofPLMNforQMC,
+ maxnoofBluetoothName,
+ maxnoofWLANName,
+ maxnoofConnectedengNBs,
+ maxnoofPC5QoSFlows,
+ maxnooffrequencies,
+ maxNARFCN,
+ maxRS-IndexCellQual,
+ maxnoofPSCellsPerPrimaryCellinUEHistoryInfo,
+ maxnoofTACsInNTN,
+ maxnoofSensorName
+
+
+
+
+FROM S1AP-Constants
+
+ Criticality,
+ ProcedureCode,
+ ProtocolIE-ID,
+ TriggeringMessage
+FROM S1AP-CommonDataTypes
+
+ ProtocolExtensionContainer{},
+ S1AP-PROTOCOL-EXTENSION,
+ ProtocolIE-SingleContainer{},
+ S1AP-PROTOCOL-IES
+
+FROM S1AP-Containers;
+
+-- A
+
+Additional-GUTI::= SEQUENCE {
+ gUMMEI GUMMEI,
+ m-TMSI M-TMSI,
+ iE-Extensions ProtocolExtensionContainer { {Additional-GUTI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Additional-GUTI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AdditionalRRMPriorityIndex ::= BIT STRING (SIZE(32))
+
+AerialUEsubscriptionInformation ::= ENUMERATED {
+ allowed,
+ not-allowed,
+ ...
+}
+
+AreaScopeOfMDT ::= CHOICE {
+ cellBased CellBasedMDT,
+ tABased TABasedMDT,
+ pLMNWide NULL,
+ ...,
+ tAIBased TAIBasedMDT
+}
+
+
+AreaScopeOfQMC ::= CHOICE {
+ cellBased CellBasedQMC,
+ tABased TABasedQMC,
+ tAIBased TAIBasedQMC,
+ pLMNAreaBased PLMNAreaBasedQMC,
+ ...
+}
+
+AllocationAndRetentionPriority ::= SEQUENCE {
+ priorityLevel PriorityLevel,
+ pre-emptionCapability Pre-emptionCapability,
+ pre-emptionVulnerability Pre-emptionVulnerability,
+ iE-Extensions ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AllocationAndRetentionPriority-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AssistanceDataForCECapableUEs ::= SEQUENCE {
+ cellIdentifierAndCELevelForCECapableUEs CellIdentifierAndCELevelForCECapableUEs,
+ iE-Extensions ProtocolExtensionContainer { { InformationForCECapableUEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+InformationForCECapableUEs-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AssistanceDataForPaging ::= SEQUENCE {
+ assistanceDataForRecommendedCells AssistanceDataForRecommendedCells OPTIONAL,
+ assistanceDataForCECapableUEs AssistanceDataForCECapableUEs OPTIONAL,
+ pagingAttemptInformation PagingAttemptInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { AssistanceDataForPaging-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AssistanceDataForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AssistanceDataForRecommendedCells ::= SEQUENCE {
+ recommendedCellsForPaging RecommendedCellsForPaging,
+ iE-Extensions ProtocolExtensionContainer { { AssistanceDataForRecommendedCells-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AssistanceDataForRecommendedCells-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- B
+
+Bearers-SubjectToStatusTransferList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { Bearers-SubjectToStatusTransfer-ItemIEs } }
+
+Bearers-SubjectToStatusTransfer-ItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Bearers-SubjectToStatusTransfer-Item CRITICALITY ignore TYPE Bearers-SubjectToStatusTransfer-Item PRESENCE mandatory },
+ ...
+}
+
+Bearers-SubjectToStatusTransfer-Item ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ uL-COUNTvalue COUNTvalue,
+ dL-COUNTvalue COUNTvalue,
+ receiveStatusofULPDCPSDUs ReceiveStatusofULPDCPSDUs OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {Bearers-SubjectToStatusTransfer-ItemExtIEs} } OPTIONAL,
+ ...
+}
+
+Bearers-SubjectToStatusTransfer-ItemExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ULCOUNTValueExtended CRITICALITY ignore EXTENSION COUNTValueExtended PRESENCE optional}|
+ { ID id-DLCOUNTValueExtended CRITICALITY ignore EXTENSION COUNTValueExtended PRESENCE optional}|
+ { ID id-ReceiveStatusOfULPDCPSDUsExtended CRITICALITY ignore EXTENSION ReceiveStatusOfULPDCPSDUsExtended PRESENCE optional}|
+ { ID id-ULCOUNTValuePDCP-SNlength18 CRITICALITY ignore EXTENSION COUNTvaluePDCP-SNlength18 PRESENCE optional}|
+ { ID id-DLCOUNTValuePDCP-SNlength18 CRITICALITY ignore EXTENSION COUNTvaluePDCP-SNlength18 PRESENCE optional}|
+ { ID id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 CRITICALITY ignore EXTENSION ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 PRESENCE optional},
+ ...
+}
+
+Bearers-SubjectToEarlyStatusTransferList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { Bearers-SubjectToEarlyStatusTransfer-ItemIEs } }
+
+Bearers-SubjectToEarlyStatusTransfer-ItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Bearers-SubjectToEarlyStatusTransfer-Item CRITICALITY ignore TYPE Bearers-SubjectToEarlyStatusTransfer-Item PRESENCE mandatory},
+ ...
+}
+
+Bearers-SubjectToEarlyStatusTransfer-Item ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ dLCOUNT-PDCP-SNlength DLCOUNT-PDCP-SNlength,
+ iE-Extensions ProtocolExtensionContainer { {Bearers-SubjectToEarlyStatusTransfer-ItemExtIEs} } OPTIONAL,
+ ...
+}
+
+Bearers-SubjectToEarlyStatusTransfer-ItemExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BearerType ::= ENUMERATED {
+ non-IP,
+ ...
+}
+
+BitRate ::= INTEGER (0..10000000000)
+
+BluetoothMeasurementConfiguration ::= SEQUENCE {
+ bluetoothMeasConfig BluetoothMeasConfig,
+ bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL,
+ bt-rssi ENUMERATED {true, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { BluetoothMeasurementConfiguration-ExtIEs } } OPTIONAL,
+ ...
+}
+
+BluetoothMeasurementConfiguration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+BluetoothMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofBluetoothName)) OF BluetoothName
+
+BluetoothMeasConfig::= ENUMERATED {setup,...}
+
+BluetoothName ::= OCTET STRING (SIZE (1..248))
+
+BPLMNs ::= SEQUENCE (SIZE(1.. maxnoofBPLMNs)) OF PLMNidentity
+
+BroadcastCancelledAreaList ::= CHOICE {
+ cellID-Cancelled CellID-Cancelled,
+ tAI-Cancelled TAI-Cancelled,
+ emergencyAreaID-Cancelled EmergencyAreaID-Cancelled,
+ ...
+}
+
+BroadcastCompletedAreaList ::= CHOICE {
+ cellID-Broadcast CellID-Broadcast,
+ tAI-Broadcast TAI-Broadcast,
+ emergencyAreaID-Broadcast EmergencyAreaID-Broadcast,
+ ...
+}
+
+
+-- C
+
+CancelledCellinEAI ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CancelledCellinEAI-Item
+
+CancelledCellinEAI-Item ::= SEQUENCE {
+ eCGI EUTRAN-CGI,
+ numberOfBroadcasts NumberOfBroadcasts,
+ iE-Extensions ProtocolExtensionContainer { {CancelledCellinEAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CancelledCellinEAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CancelledCellinTAI ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CancelledCellinTAI-Item
+
+CancelledCellinTAI-Item ::= SEQUENCE{
+ eCGI EUTRAN-CGI,
+ numberOfBroadcasts NumberOfBroadcasts,
+ iE-Extensions ProtocolExtensionContainer { {CancelledCellinTAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CancelledCellinTAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Cause ::= CHOICE {
+ radioNetwork CauseRadioNetwork,
+ transport CauseTransport,
+ nas CauseNas,
+ protocol CauseProtocol,
+ misc CauseMisc,
+ ...
+}
+
+CauseMisc ::= ENUMERATED {
+ control-processing-overload,
+ not-enough-user-plane-processing-resources,
+ hardware-failure,
+ om-intervention,
+ unspecified,
+ unknown-PLMN,
+...
+}
+
+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,
+ ...
+}
+
+CauseRadioNetwork ::= ENUMERATED {
+ unspecified,
+ tx2relocoverall-expiry,
+ successful-handover,
+ release-due-to-eutran-generated-reason,
+ handover-cancelled,
+ partial-handover,
+ ho-failure-in-target-EPC-eNB-or-target-system,
+ ho-target-not-allowed,
+ tS1relocoverall-expiry,
+ tS1relocprep-expiry,
+ cell-not-available,
+ unknown-targetID,
+ no-radio-resources-available-in-target-cell,
+ unknown-mme-ue-s1ap-id,
+ unknown-enb-ue-s1ap-id,
+ unknown-pair-ue-s1ap-id,
+ handover-desirable-for-radio-reason,
+ time-critical-handover,
+ resource-optimisation-handover,
+ reduce-load-in-serving-cell,
+ user-inactivity,
+ radio-connection-with-ue-lost,
+ load-balancing-tau-required,
+ cs-fallback-triggered,
+ ue-not-available-for-ps-service,
+ radio-resources-not-available,
+ failure-in-radio-interface-procedure,
+ invalid-qos-combination,
+ interrat-redirection,
+ interaction-with-other-procedure,
+ unknown-E-RAB-ID,
+ multiple-E-RAB-ID-instances,
+ encryption-and-or-integrity-protection-algorithms-not-supported,
+ s1-intra-system-handover-triggered,
+ s1-inter-system-handover-triggered,
+ x2-handover-triggered,
+ ...,
+ redirection-towards-1xRTT,
+ not-supported-QCI-value,
+ invalid-CSG-Id,
+ release-due-to-pre-emption,
+ n26-interface-not-available,
+ insufficient-ue-capabilities,
+ maximum-bearer-pre-emption-rate-exceeded,
+ up-integrity-protection-not-possible
+
+}
+
+CauseTransport ::= ENUMERATED {
+ transport-resource-unavailable,
+ unspecified,
+ ...
+}
+
+CauseNas ::= ENUMERATED {
+ normal-release,
+ authentication-failure,
+ detach,
+ unspecified,
+ ...,
+ csg-subscription-expiry,
+ uE-not-in-PLMN-serving-area
+}
+
+CellAccessMode ::= ENUMERATED {
+ hybrid,
+ ...
+}
+
+CellIdentifierAndCELevelForCECapableUEs ::= SEQUENCE {
+ global-Cell-ID EUTRAN-CGI,
+ cELevel CELevel,
+ iE-Extensions ProtocolExtensionContainer { { CellIdentifierAndCELevelForCECapableUEs-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellIdentifierAndCELevelForCECapableUEs-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CELevel ::= OCTET STRING
+
+CE-mode-B-SupportIndicator ::= ENUMERATED {
+ supported,
+ ...
+}
+
+CellIdentity ::= BIT STRING (SIZE (28))
+
+CellID-Broadcast ::= SEQUENCE (SIZE(1..maxnoofCellID)) OF CellID-Broadcast-Item
+
+CellID-Broadcast-Item ::= SEQUENCE {
+ eCGI EUTRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CellID-Broadcast-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellID-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellID-Cancelled::= SEQUENCE (SIZE(1..maxnoofCellID)) OF CellID-Cancelled-Item
+
+CellID-Cancelled-Item ::= SEQUENCE {
+ eCGI EUTRAN-CGI,
+ numberOfBroadcasts NumberOfBroadcasts,
+ iE-Extensions ProtocolExtensionContainer { {CellID-Cancelled-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellID-Cancelled-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellBasedMDT::= SEQUENCE {
+ cellIdListforMDT CellIdListforMDT,
+ iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellBasedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellIdListforMDT ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF EUTRAN-CGI
+
+CellBasedQMC::= SEQUENCE {
+ cellIdListforQMC CellIdListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {CellBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellBasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellIdListforQMC ::= SEQUENCE (SIZE(1..maxnoofCellIDforQMC)) OF EUTRAN-CGI
+
+Cdma2000PDU ::= OCTET STRING
+
+Cdma2000RATType ::= ENUMERATED {
+ hRPD,
+ onexRTT,
+ ...
+}
+
+Cdma2000SectorID ::= OCTET STRING
+
+Cdma2000HOStatus ::= ENUMERATED {
+ hOSuccess,
+ hOFailure,
+ ...
+}
+
+Cdma2000HORequiredIndication ::= ENUMERATED {
+ true,
+ ...
+}
+
+Cdma2000OneXSRVCCInfo ::= SEQUENCE {
+ cdma2000OneXMEID Cdma2000OneXMEID,
+ cdma2000OneXMSI Cdma2000OneXMSI,
+ cdma2000OneXPilot Cdma2000OneXPilot,
+ iE-Extensions ProtocolExtensionContainer { {Cdma2000OneXSRVCCInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Cdma2000OneXSRVCCInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Cdma2000OneXMEID ::= OCTET STRING
+
+Cdma2000OneXMSI ::= OCTET STRING
+
+Cdma2000OneXPilot ::= OCTET STRING
+
+Cdma2000OneXRAND ::= OCTET STRING
+
+
+Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ...}
+
+CellType ::= SEQUENCE {
+ cell-Size Cell-Size,
+ iE-Extensions ProtocolExtensionContainer { { CellType-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CellType-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CGI ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ lAC LAC,
+ cI CI,
+ rAC RAC OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CGI-ExtIEs} } OPTIONAL,
+ ...
+ }
+
+CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CI ::= OCTET STRING (SIZE (2))
+
+CNDomain ::= ENUMERATED {
+ ps,
+ cs
+}
+
+CNTypeRestrictions::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF CNTypeRestrictions-Item
+
+CNTypeRestrictions-Item ::= SEQUENCE {
+ pLMN-Identity PLMNidentity,
+ cNType CNType,
+ iE-Extensions ProtocolExtensionContainer { { CNTypeRestrictions-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CNTypeRestrictions-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CNType ::= ENUMERATED {
+ fiveGCForbidden,
+ ...,
+ epc-Forbiddden
+}
+
+ConcurrentWarningMessageIndicator ::= ENUMERATED {
+ true
+}
+
+ConnectedengNBList ::= SEQUENCE (SIZE(1..maxnoofConnectedengNBs)) OF ConnectedengNBItem
+
+ConnectedengNBItem ::= SEQUENCE {
+ en-gNB-ID En-gNB-ID,
+ supportedTAs SupportedTAs,
+ iE-Extensions ProtocolExtensionContainer { {ConnectedengNBItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ConnectedengNBItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ContextatSource ::= SEQUENCE {
+ sourceNG-RAN-node-ID Global-RAN-NODE-ID,
+ rAN-UE-NGAP-ID RAN-UE-NGAP-ID,
+ iE-Extensions ProtocolExtensionContainer { {ContextatSource-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ContextatSource-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Correlation-ID ::= OCTET STRING (SIZE (4))
+
+CSFallbackIndicator ::= ENUMERATED {
+ cs-fallback-required,
+ ...,
+ cs-fallback-high-priority
+}
+
+AdditionalCSFallbackIndicator ::= ENUMERATED {
+ no-restriction,
+ restriction,
+ ...
+}
+
+CSG-Id ::= BIT STRING (SIZE (27))
+
+
+CSG-IdList ::= SEQUENCE (SIZE (1.. maxnoofCSGs)) OF CSG-IdList-Item
+
+CSG-IdList-Item ::= SEQUENCE {
+ cSG-Id CSG-Id,
+ iE-Extensions ProtocolExtensionContainer { {CSG-IdList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CSG-IdList-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CSGMembershipStatus ::= ENUMERATED {
+ member,
+ not-member
+}
+
+
+COUNTvalue ::= SEQUENCE {
+ pDCP-SN PDCP-SN,
+ hFN HFN,
+ iE-Extensions ProtocolExtensionContainer { {COUNTvalue-ExtIEs} } OPTIONAL,
+ ...
+}
+COUNTvalue-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+COUNTValueExtended ::= SEQUENCE {
+ pDCP-SNExtended PDCP-SNExtended,
+ hFNModified HFNModified,
+ iE-Extensions ProtocolExtensionContainer { {COUNTValueExtended-ExtIEs} } OPTIONAL,
+ ...
+}
+
+COUNTValueExtended-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+COUNTvaluePDCP-SNlength18 ::= SEQUENCE {
+ pDCP-SNlength18 PDCP-SNlength18,
+ hFNforPDCP-SNlength18 HFNforPDCP-SNlength18,
+ iE-Extensions ProtocolExtensionContainer { {COUNTvaluePDCP-SNlength18-ExtIEs} } OPTIONAL,
+ ...
+}
+
+COUNTvaluePDCP-SNlength18-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Coverage-Level ::= ENUMERATED {
+ extendedcoverage,
+ ...
+}
+
+CriticalityDiagnostics ::= SEQUENCE {
+ procedureCode ProcedureCode OPTIONAL,
+ triggeringMessage TriggeringMessage OPTIONAL,
+ procedureCriticality Criticality OPTIONAL,
+ iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CriticalityDiagnostics-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1.. maxnoofErrors)) OF CriticalityDiagnostics-IE-Item
+
+CriticalityDiagnostics-IE-Item ::= SEQUENCE {
+ iECriticality Criticality,
+ iE-ID ProtocolIE-ID,
+ typeOfError TypeOfError,
+ iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-IE-Item-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CriticalityDiagnostics-IE-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- D
+
+DAPSRequestInfo ::= SEQUENCE {
+ dAPSIndicator ENUMERATED {dAPS-HO-required, ...},
+ iE-Extensions ProtocolExtensionContainer { {DAPSRequestInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DAPSRequestInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DAPSResponseInfoList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { DAPSResponseInfoListIEs } }
+
+DAPSResponseInfoListIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-DAPSResponseInfoItem CRITICALITY ignore TYPE DAPSResponseInfoItem PRESENCE mandatory},
+ ...
+}
+
+DAPSResponseInfoItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ dAPSResponseInfo DAPSResponseInfo,
+ iE-Extensions ProtocolExtensionContainer { {DAPSResponseInfoItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DAPSResponseInfoItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+DAPSResponseInfo ::= SEQUENCE {
+ dapsresponseindicator ENUMERATED {dAPS-HO-accepted,dAPS-HO-not-accepted,...},
+ iE-Extensions ProtocolExtensionContainer { { DAPSResponseInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DAPSResponseInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DataCodingScheme ::= BIT STRING (SIZE (8))
+
+DataSize ::= INTEGER(1..4095, ...)
+
+DCN-ID ::= INTEGER (0..65535)
+
+ServedDCNs ::= SEQUENCE (SIZE(0..maxnoofDCNs)) OF ServedDCNsItem
+
+ServedDCNsItem ::= SEQUENCE {
+ dCN-ID DCN-ID,
+ relativeDCNCapacity RelativeMMECapacity,
+ iE-Extensions ProtocolExtensionContainer { {ServedDCNsItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedDCNsItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DL-CP-SecurityInformation ::= SEQUENCE {
+ dl-NAS-MAC DL-NAS-MAC,
+ iE-Extensions ProtocolExtensionContainer { { DL-CP-SecurityInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+DL-CP-SecurityInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DL-Forwarding ::= ENUMERATED {
+ dL-Forwarding-proposed,
+ ...
+}
+
+DL-NAS-MAC ::= BIT STRING (SIZE (16))
+
+DLCOUNT-PDCP-SNlength ::= CHOICE {
+ dLCOUNTValuePDCP-SNlength12 COUNTvalue,
+ dLCOUNTValuePDCP-SNlength15 COUNTValueExtended,
+ dLCOUNTValuePDCP-SNlength18 COUNTvaluePDCP-SNlength18,
+ ...
+}
+
+Direct-Forwarding-Path-Availability ::= ENUMERATED {
+ directPathAvailable,
+ ...
+}
+
+Data-Forwarding-Not-Possible ::= ENUMERATED {
+ data-Forwarding-not-Possible,
+ ...
+}
+
+DLNASPDUDeliveryAckRequest ::= ENUMERATED {
+ requested,
+ ...
+}
+
+-- E
+
+EARFCN ::= INTEGER(0..maxEARFCN, ...)
+
+ECGIList ::= SEQUENCE (SIZE(1..maxnoofCellID)) OF EUTRAN-CGI
+
+PWSfailedECGIList ::= SEQUENCE (SIZE(1..maxnoofCellsineNB)) OF EUTRAN-CGI
+
+EDT-Session ::= ENUMERATED {
+ true,
+ ...
+}
+
+EmergencyAreaIDList ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID
+
+EmergencyAreaID ::= OCTET STRING (SIZE (3))
+
+EmergencyAreaID-Broadcast ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID-Broadcast-Item
+
+EmergencyAreaID-Broadcast-Item ::= SEQUENCE {
+ emergencyAreaID EmergencyAreaID,
+ completedCellinEAI CompletedCellinEAI,
+ iE-Extensions ProtocolExtensionContainer { {EmergencyAreaID-Broadcast-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EmergencyAreaID-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EmergencyAreaID-Cancelled ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID-Cancelled-Item
+
+EmergencyAreaID-Cancelled-Item ::= SEQUENCE {
+ emergencyAreaID EmergencyAreaID,
+ cancelledCellinEAI CancelledCellinEAI,
+ iE-Extensions ProtocolExtensionContainer { {EmergencyAreaID-Cancelled-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+EmergencyAreaID-Cancelled-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CompletedCellinEAI ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CompletedCellinEAI-Item
+
+CompletedCellinEAI-Item ::= SEQUENCE {
+ eCGI EUTRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CompletedCellinEAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompletedCellinEAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ECGI-List ::= SEQUENCE (SIZE(1..maxnoofCellsineNB)) OF EUTRAN-CGI
+
+EmergencyAreaIDListForRestart ::= SEQUENCE (SIZE(1..maxnoofRestartEmergencyAreaIDs)) OF EmergencyAreaID
+
+EmergencyIndicator ::= ENUMERATED {
+ true,
+ ...
+}
+
+ENB-EarlyStatusTransfer-TransparentContainer ::= SEQUENCE {
+ bearers-SubjectToEarlyStatusTransferList Bearers-SubjectToEarlyStatusTransferList,
+ iE-Extensions ProtocolExtensionContainer { {ENB-EarlyStatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ENB-EarlyStatusTransfer-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ENB-ID ::= CHOICE {
+ macroENB-ID BIT STRING (SIZE(20)),
+ homeENB-ID BIT STRING (SIZE(28)),
+ ... ,
+ short-macroENB-ID BIT STRING (SIZE(18)),
+ long-macroENB-ID BIT STRING (SIZE(21))
+}
+
+En-gNB-ID ::= BIT STRING (SIZE(22..32, ...))
+
+GERAN-Cell-ID ::= SEQUENCE {
+ lAI LAI,
+ rAC RAC,
+ cI CI,
+ iE-Extensions ProtocolExtensionContainer { { GERAN-Cell-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GERAN-Cell-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Global-ENB-ID ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ eNB-ID ENB-ID,
+ iE-Extensions ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GlobalENB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Global-en-gNB-ID ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ en-gNB-ID En-gNB-ID,
+ iE-Extensions ProtocolExtensionContainer { {Global-en-gNB-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Global-en-gNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GUMMEIList::= SEQUENCE (SIZE (1.. maxnoofMMECs)) OF GUMMEI
+
+ENB-StatusTransfer-TransparentContainer ::= SEQUENCE {
+ bearers-SubjectToStatusTransferList Bearers-SubjectToStatusTransferList,
+ iE-Extensions ProtocolExtensionContainer { {ENB-StatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ENB-StatusTransfer-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ENB-UE-S1AP-ID ::= INTEGER (0..16777215)
+
+ENBname ::= PrintableString (SIZE (1..150,...))
+
+ENBX2TLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2TLAs)) OF TransportLayerAddress
+
+EncryptionAlgorithms ::= BIT STRING (SIZE (16,...))
+
+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" --
+ iE-Extensions ProtocolExtensionContainer { {EN-DCSONConfigurationTransfer-ExtIEs} } OPTIONAL,
+...
+}
+
+EN-DCSONConfigurationTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EN-DCSONTransferType ::= CHOICE {
+ request EN-DCTransferTypeRequest,
+ reply EN-DCTransferTypeReply,
+ ...
+}
+
+EN-DCTransferTypeRequest ::= SEQUENCE {
+ sourceeNB EN-DCSONeNBIdentification,
+ targetengNB EN-DCSONengNBIdentification,
+ targeteNB EN-DCSONeNBIdentification OPTIONAL,
+ associatedTAI TAI OPTIONAL,
+ broadcast5GSTAI FiveGSTAI OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {EN-DCTransferTypeRequest-ExtIEs} } OPTIONAL,
+...
+}
+
+EN-DCTransferTypeRequest-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EN-DCTransferTypeReply ::= SEQUENCE {
+ sourceengNB EN-DCSONengNBIdentification,
+ targeteNB EN-DCSONeNBIdentification,
+ iE-Extensions ProtocolExtensionContainer { {EN-DCTransferTypeReply-ExtIEs} } OPTIONAL,
+...
+}
+
+EN-DCTransferTypeReply-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EN-DCSONeNBIdentification ::= SEQUENCE {
+ globaleNBID Global-ENB-ID,
+ selectedTAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {EN-DCSONeNBIdentification-ExtIEs} } OPTIONAL,
+...
+}
+
+EN-DCSONeNBIdentification-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EN-DCSONengNBIdentification ::= SEQUENCE {
+ globalengNBID Global-en-gNB-ID,
+ selectedTAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {EN-DCSONengNBIdentification-ExtIEs} } OPTIONAL,
+...
+}
+
+EN-DCSONengNBIdentification-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EndIndication ::= ENUMERATED {
+ no-further-data,
+ further-data-exists,
+ ...
+}
+
+EnhancedCoverageRestricted ::= ENUMERATED {
+ restricted,
+ ...
+}
+
+CE-ModeBRestricted ::= ENUMERATED {
+ restricted,
+ not-restricted,
+ ...
+}
+
+EPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMNidentity
+EventType ::= ENUMERATED {
+ direct,
+ change-of-serve-cell,
+ stop-change-of-serve-cell,
+ ...
+}
+
+E-RAB-ID ::= INTEGER (0..15, ...)
+
+E-RABInformationList ::= SEQUENCE (SIZE (1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { E-RABInformationListIEs } }
+
+E-RABInformationListIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABInformationListItem CRITICALITY ignore TYPE E-RABInformationListItem PRESENCE mandatory },
+ ...
+}
+
+E-RABInformationListItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ dL-Forwarding DL-Forwarding OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABInformationListItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { 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},
+ ...
+}
+
+E-RABList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABItemIEs} }
+
+E-RABItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABItem CRITICALITY ignore TYPE E-RABItem PRESENCE mandatory },
+ ...
+}
+
+E-RABItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { {E-RABItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+E-RABLevelQoSParameters ::= SEQUENCE {
+ qCI QCI,
+ allocationRetentionPriority AllocationAndRetentionPriority,
+ gbrQosInformation GBR-QosInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABQoSParameters-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+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 ::= {
+ { ID id-E-RABUsageReportItem CRITICALITY ignore TYPE E-RABUsageReportItem PRESENCE mandatory },
+ ...
+}
+
+E-RABUsageReportItem ::= SEQUENCE {
+ startTimestamp OCTET STRING (SIZE(4)),
+ endTimestamp OCTET STRING (SIZE(4)),
+ usageCountUL INTEGER (0..18446744073709551615),
+ usageCountDL INTEGER (0..18446744073709551615),
+ iE-Extensions ProtocolExtensionContainer { { E-RABUsageReportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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 --
+ { ID id-DownlinkPacketLossRate CRITICALITY ignore EXTENSION Packet-LossRate PRESENCE optional}|
+ { ID id-UplinkPacketLossRate CRITICALITY ignore EXTENSION Packet-LossRate PRESENCE optional},
+ ...
+}
+
+Ethernet-Type ::= ENUMERATED {
+ true,
+ ...
+}
+
+EUTRAN-CGI ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ cell-ID CellIdentity,
+ iE-Extensions ProtocolExtensionContainer { {EUTRAN-CGI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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,
+ iE-Extensions ProtocolExtensionContainer { { ExpectedUEBehaviour-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ExpectedUEBehaviour-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ExpectedUEActivityBehaviour ::= SEQUENCE {
+ expectedActivityPeriod ExpectedActivityPeriod OPTIONAL,
+ expectedIdlePeriod ExpectedIdlePeriod OPTIONAL,
+ sourceofUEActivityBehaviourInformation SourceOfUEActivityBehaviourInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ExpectedUEActivityBehaviour-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ExpectedUEActivityBehaviour-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ExpectedActivityPeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181,...)
+
+ExpectedIdlePeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181,...)
+
+SourceOfUEActivityBehaviourInformation ::= ENUMERATED {
+ subscription-information,
+ statistics,
+ ...
+}
+
+ExpectedHOInterval ::= ENUMERATED {
+ sec15, sec30, sec60, sec90, sec120, sec180, long-time,
+ ...
+}
+
+ExtendedBitRate ::= INTEGER (10000000001..4000000000000, ...)
+
+ExtendedRNC-ID ::= INTEGER (4096..65535)
+
+ExtendedRepetitionPeriod ::= INTEGER (4096..131071)
+
+Extended-UEIdentityIndexValue ::= BIT STRING (SIZE (14))
+
+-- F
+
+FiveGSTAC ::= OCTET STRING (SIZE (3))
+
+FiveGSTAI ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ fiveGSTAC FiveGSTAC,
+ iE-Extensions ProtocolExtensionContainer { {FiveGSTAI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FiveGSTAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+FiveQI ::= INTEGER (0..255, ...)
+
+ForbiddenInterRATs ::= ENUMERATED {
+ all,
+ geran,
+ utran,
+ cdma2000,
+ ...,
+ geranandutran,
+ cdma2000andutran
+
+}
+
+ForbiddenTAs ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenTAs-Item
+
+ForbiddenTAs-Item ::= SEQUENCE {
+ pLMN-Identity PLMNidentity,
+ forbiddenTACs ForbiddenTACs,
+ iE-Extensions ProtocolExtensionContainer { {ForbiddenTAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ForbiddenTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC
+
+ForbiddenLAs ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF ForbiddenLAs-Item
+
+ForbiddenLAs-Item ::= SEQUENCE {
+ pLMN-Identity PLMNidentity,
+ forbiddenLACs ForbiddenLACs,
+ iE-Extensions ProtocolExtensionContainer { {ForbiddenLAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ForbiddenLAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC
+
+-- G
+
+GBR-QosInformation ::= SEQUENCE {
+ e-RAB-MaximumBitrateDL BitRate,
+ e-RAB-MaximumBitrateUL BitRate,
+ e-RAB-GuaranteedBitrateDL BitRate,
+ e-RAB-GuaranteedBitrateUL BitRate,
+ iE-Extensions ProtocolExtensionContainer { { GBR-QosInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GBR-QosInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+-- Extension for maximum bitrate > 10G bps --
+ { ID id-extended-e-RAB-MaximumBitrateDL CRITICALITY ignore EXTENSION ExtendedBitRate PRESENCE optional}|
+ { ID id-extended-e-RAB-MaximumBitrateUL CRITICALITY ignore EXTENSION ExtendedBitRate PRESENCE optional}|
+ { ID id-extended-e-RAB-GuaranteedBitrateDL CRITICALITY ignore EXTENSION ExtendedBitRate PRESENCE optional}|
+ { ID id-extended-e-RAB-GuaranteedBitrateUL CRITICALITY ignore EXTENSION ExtendedBitRate PRESENCE optional},
+ ...}
+
+
+GTP-TEID ::= OCTET STRING (SIZE (4))
+
+GUMMEI ::= SEQUENCE {
+ pLMN-Identity PLMNidentity,
+ mME-Group-ID MME-Group-ID,
+ mME-Code MME-Code,
+ iE-Extensions ProtocolExtensionContainer { {GUMMEI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GUMMEI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GUMMEIType ::= ENUMERATED {
+ native,
+ mapped,
+ ...,
+ mappedFrom5G
+}
+
+GWContextReleaseIndication ::= ENUMERATED {
+ true,
+ ...
+}
+
+-- H
+
+HandoverFlag ::= ENUMERATED {
+ handoverPreparation,
+ ...
+}
+
+
+HandoverRestrictionList ::= SEQUENCE {
+ servingPLMN PLMNidentity,
+ equivalentPLMNs EPLMNs OPTIONAL,
+ forbiddenTAs ForbiddenTAs OPTIONAL,
+ forbiddenLAs ForbiddenLAs OPTIONAL,
+ forbiddenInterRATs ForbiddenInterRATs OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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-RAT-Restrictions CRITICALITY ignore EXTENSION RAT-Restrictions PRESENCE optional},
+ ...
+}
+
+HandoverType ::= ENUMERATED {
+ intralte,
+ ltetoutran,
+ ltetogeran,
+ utrantolte,
+ gerantolte,
+ ...,
+ eps-to-5gs,
+ fivegs-to-eps
+}
+
+HFN ::= INTEGER (0..1048575)
+
+HFNModified ::= INTEGER (0..131071)
+
+HFNforPDCP-SNlength18 ::= INTEGER (0..16383)
+
+Hysteresis ::= INTEGER (0..30)
+
+-- I
+
+Masked-IMEISV ::= BIT STRING (SIZE (64))
+
+ImmediateMDT ::= SEQUENCE {
+ measurementsToActivate MeasurementsToActivate,
+ m1reportingTrigger M1ReportingTrigger,
+ m1thresholdeventA2 M1ThresholdEventA2 OPTIONAL,
+-- Included in case of event-triggered, or event-triggered periodic reporting for measurement M1
+ m1periodicReporting M1PeriodicReporting OPTIONAL,
+-- Included in case of periodic or event-triggered periodic reporting
+ iE-Extensions ProtocolExtensionContainer { { ImmediateMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ImmediateMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-M3Configuration CRITICALITY ignore EXTENSION M3Configuration PRESENCE conditional}|
+ { ID id-M4Configuration CRITICALITY ignore EXTENSION M4Configuration PRESENCE conditional}|
+ { ID id-M5Configuration CRITICALITY ignore EXTENSION M5Configuration PRESENCE conditional}|
+ { ID id-MDT-Location-Info CRITICALITY ignore EXTENSION MDT-Location-Info PRESENCE optional}|
+ { 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-SensorMeasurementConfiguration CRITICALITY ignore EXTENSION SensorMeasurementConfiguration PRESENCE optional},
+ ...
+}
+
+IMSI ::= OCTET STRING (SIZE (3..8))
+
+InformationOnRecommendedCellsAndENBsForPaging ::= SEQUENCE {
+ recommendedCellsForPaging RecommendedCellsForPaging,
+ recommendENBsForPaging RecommendedENBsForPaging,
+ iE-Extensions ProtocolExtensionContainer { { InformationOnRecommendedCellsAndENBsForPaging-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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))
+
+IntersystemMeasurementConfiguration ::= SEQUENCE {
+ rSRP INTEGER (0.. 127) OPTIONAL,
+ rSRQ INTEGER (0.. 127) OPTIONAL,
+ sINR INTEGER (0.. 127) OPTIONAL,
+ interSystemMeasurementParameters InterSystemMeasurementParameters,
+ iE-Extensions ProtocolExtensionContainer { { IntersystemMeasurementConfiguration-ExtIEs} } OPTIONAL,
+ ...
+}
+IntersystemMeasurementConfiguration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+InterSystemMeasurementParameters ::= SEQUENCE {
+ measurementDuration INTEGER (1..100),
+ interSystemMeasurementList InterSystemMeasurementList OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { InterSystemMeasurementParameters-ExtIEs} } OPTIONAL,
+ ...
+}
+InterSystemMeasurementParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+InterSystemMeasurementList ::= SEQUENCE (SIZE(1.. maxnooffrequencies)) OF InterSystemMeasurementItem
+
+InterSystemMeasurementItem ::= SEQUENCE {
+ freqBandIndicatorNR INTEGER (1..1024),
+ sSBfrequencies INTEGER (0..maxNARFCN),
+ 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,
+ excludedCellsToAddModList OCTET STRING OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { InterSystemMeasurementItem-ExtIEs} } OPTIONAL
+}
+
+InterSystemMeasurementItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+IntersystemSONConfigurationTransfer ::= OCTET STRING
+
+IMSvoiceEPSfallbackfrom5G ::= ENUMERATED {
+ true,
+ ...
+}
+
+IAB-Authorized ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+IAB-Node-Indication ::= ENUMERATED {
+ true,
+ ...
+}
+
+IAB-Supported ::= ENUMERATED {
+ true,
+ ...
+}
+
+-- J
+-- K
+
+KillAllWarningMessages ::= ENUMERATED {true}
+
+-- L
+
+
+LAC ::= OCTET STRING (SIZE (2))
+
+LAI ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ lAC LAC,
+ iE-Extensions ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+LastVisitedCell-Item ::= CHOICE {
+ e-UTRAN-Cell LastVisitedEUTRANCellInformation,
+ uTRAN-Cell LastVisitedUTRANCellInformation,
+ gERAN-Cell LastVisitedGERANCellInformation,
+ ...,
+ nG-RAN-Cell LastVisitedNGRANCellInformation
+}
+LastVisitedEUTRANCellInformation ::= SEQUENCE {
+ global-Cell-ID EUTRAN-CGI,
+ cellType CellType,
+ time-UE-StayedInCell Time-UE-StayedInCell,
+ iE-Extensions ProtocolExtensionContainer { { LastVisitedEUTRANCellInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+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-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 ::= {
+ ...
+}
+
+LastVisitedNGRANCellInformation ::= OCTET STRING
+
+LastVisitedUTRANCellInformation ::= OCTET STRING
+
+LastVisitedGERANCellInformation ::= CHOICE {
+ undefined NULL,
+ ...
+}
+
+L3-Information ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+LPPa-PDU ::= OCTET STRING
+
+LHN-ID ::= OCTET STRING(SIZE (32..256))
+
+Links-to-log ::= ENUMERATED {uplink, downlink, both-uplink-and-downlink, ...}
+
+ListeningSubframePattern ::= SEQUENCE {
+ pattern-period ENUMERATED {ms1280, ms2560, ms5120, ms10240, ...},
+ pattern-offset INTEGER (0..10239, ...),
+ iE-Extensions ProtocolExtensionContainer { { ListeningSubframePattern-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ListeningSubframePattern-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+...
+}
+
+LoggedMDT ::= SEQUENCE {
+ loggingInterval LoggingInterval,
+ loggingDuration LoggingDuration,
+ iE-Extensions ProtocolExtensionContainer { {LoggedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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-LoggedMDTTrigger CRITICALITY ignore EXTENSION LoggedMDTTrigger PRESENCE optional}|
+ { ID id-SensorMeasurementConfiguration CRITICALITY ignore EXTENSION SensorMeasurementConfiguration PRESENCE optional},
+...
+}
+
+LoggingInterval ::= ENUMERATED {ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440}
+
+LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120}
+
+LoggedMBSFNMDT ::= SEQUENCE {
+ loggingInterval LoggingInterval,
+ loggingDuration LoggingDuration,
+ mBSFN-ResultToLog MBSFN-ResultToLog OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { LoggedMBSFNMDT-ExtIEs } } OPTIONAL,
+ ...
+}
+
+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 {
+ m3period M3period,
+ iE-Extensions ProtocolExtensionContainer { { M3Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M3Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+M3period ::= ENUMERATED {ms100, ms1000, ms10000, ...,ms1024, ms1280, ms2048, ms2560, ms5120, ms10240, min1 }
+
+M4Configuration ::= SEQUENCE {
+ m4period M4period,
+ m4-links-to-log Links-to-log,
+ iE-Extensions ProtocolExtensionContainer { { M4Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M4Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
+
+M5Configuration ::= SEQUENCE {
+ m5period M5period,
+ m5-links-to-log Links-to-log,
+ iE-Extensions ProtocolExtensionContainer { { M5Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M5Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+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" --
+ m6-links-to-log Links-to-log,
+ iE-Extensions ProtocolExtensionContainer { { M6Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M6Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+M6report-Interval ::= ENUMERATED { ms1024, ms2048, ms5120, ms10240, ... }
+
+M6delay-threshold ::= ENUMERATED { ms30, ms40, ms50, ms60, ms70, ms80, ms90, ms100, ms150, ms300, ms500, ms750, ... }
+
+M7Configuration ::= SEQUENCE {
+ m7period M7period,
+ m7-links-to-log Links-to-log,
+ iE-Extensions ProtocolExtensionContainer { { M7Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M7Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+M7period ::= INTEGER(1..60, ...)
+
+MDT-Activation ::= ENUMERATED {
+ immediate-MDT-only,
+ immediate-MDT-and-Trace,
+ logged-MDT-only,
+ ...,
+ logged-MBSFN-MDT
+}
+
+MDT-Location-Info ::= BIT STRING (SIZE (8))
+
+MDT-Configuration ::= SEQUENCE {
+ mdt-Activation MDT-Activation,
+ areaScopeOfMDT AreaScopeOfMDT,
+ mDTMode MDTMode,
+ iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+MDT-Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SignallingBasedMDTPLMNList CRITICALITY ignore EXTENSION MDTPLMNList PRESENCE optional },
+ ...
+}
+
+ManagementBasedMDTAllowed ::= ENUMERATED {allowed, ...}
+
+MBSFN-ResultToLog ::= SEQUENCE (SIZE(1..maxnoofMBSFNAreaMDT)) OF MBSFN-ResultToLogInfo
+
+MBSFN-ResultToLogInfo ::= SEQUENCE {
+ mBSFN-AreaId INTEGER (0..255) OPTIONAL,
+ carrierFreq EARFCN,
+ iE-Extensions ProtocolExtensionContainer { { MBSFN-ResultToLogInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MBSFN-ResultToLogInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMNidentity
+
+PrivacyIndicator ::= ENUMERATED {
+ immediate-MDT,
+ logged-MDT,
+ ...
+}
+
+MDTMode ::= CHOICE {
+ immediateMDT ImmediateMDT,
+ loggedMDT LoggedMDT,
+ ...,
+ mDTMode-Extension MDTMode-Extension
+}
+
+MDTMode-Extension ::= ProtocolIE-SingleContainer {{ MDTMode-ExtensionIE }}
+
+MDTMode-ExtensionIE S1AP-PROTOCOL-IES ::= {
+ { ID id-LoggedMBSFNMDT CRITICALITY ignore TYPE LoggedMBSFNMDT PRESENCE mandatory}
+}
+
+MeasurementsToActivate ::= BIT STRING (SIZE (8))
+
+MeasurementThresholdA2 ::= CHOICE {
+ threshold-RSRP Threshold-RSRP,
+ threshold-RSRQ Threshold-RSRQ,
+ ...
+}
+
+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))
+
+MMEname ::= PrintableString (SIZE (1..150,...))
+
+MMEPagingTarget ::= CHOICE {
+ global-ENB-ID Global-ENB-ID,
+ tAI TAI,
+ ...
+}
+
+MMERelaySupportIndicator ::= ENUMERATED {true, ...}
+
+MME-Group-ID ::= OCTET STRING (SIZE (2))
+
+MME-Code ::= OCTET STRING (SIZE (1))
+
+MME-UE-S1AP-ID ::= INTEGER (0..4294967295)
+M-TMSI ::= OCTET STRING (SIZE (4))
+
+MSClassmark2 ::= OCTET STRING
+MSClassmark3 ::= OCTET STRING
+
+MutingAvailabilityIndication ::= ENUMERATED {
+ available,
+ unavailable,
+ ...
+}
+
+
+MutingPatternInformation ::= SEQUENCE {
+ muting-pattern-period ENUMERATED {ms0, ms1280, ms2560, ms5120, ms10240, ...},
+ muting-pattern-offset INTEGER (0..10239, ...) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {MutingPatternInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MutingPatternInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MDT-ConfigurationNR ::= OCTET STRING
+
+-- N
+
+NAS-PDU ::= OCTET STRING
+
+NASSecurityParametersfromE-UTRAN ::= OCTET STRING
+
+NASSecurityParameterstoE-UTRAN ::= OCTET STRING
+
+NB-IoT-DefaultPagingDRX ::= ENUMERATED {
+ v128,
+ v256,
+ v512,
+ v1024,
+ ...
+ }
+
+NB-IoT-PagingDRX ::= ENUMERATED { v32, v64, v128, v256, v512, v1024,...}
+
+NB-IoT-Paging-eDRXInformation ::= SEQUENCE {
+ nB-IoT-paging-eDRX-Cycle NB-IoT-Paging-eDRX-Cycle,
+ nB-IoT-pagingTimeWindow NB-IoT-PagingTimeWindow OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { NB-IoT-Paging-eDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NB-IoT-Paging-eDRXInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NB-IoT-Paging-eDRX-Cycle ::= ENUMERATED{hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, hf512, hf1024, ...}
+
+NB-IoT-PagingTimeWindow ::= ENUMERATED{s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, ...}
+
+NB-IoT-RLF-Report-Container ::= OCTET STRING
+
+NB-IoT-UEIdentityIndexValue ::= BIT STRING (SIZE (12))
+
+NextPagingAreaScope ::= ENUMERATED {
+ same,
+ changed,
+ ...
+}
+
+NotifySourceeNB ::= ENUMERATED {
+ notifySource,
+ ...
+}
+
+NRCellIdentity ::= BIT STRING (SIZE(36))
+
+NR-CGI ::= SEQUENCE {
+ pLMNIdentity PLMNidentity,
+ nRCellIdentity NRCellIdentity,
+ iE-Extensions ProtocolExtensionContainer { {NR-CGI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NR-CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+NRencryptionAlgorithms ::= BIT STRING (SIZE (16,...))
+NRintegrityProtectionAlgorithms ::= BIT STRING (SIZE (16,...))
+
+NRrestrictioninEPSasSecondaryRAT ::= ENUMERATED {
+ nRrestrictedinEPSasSecondaryRAT,
+ ...
+}
+
+NRrestrictionin5GS ::= ENUMERATED {
+ nRrestrictedin5GS,
+ ...
+}
+
+NRUESecurityCapabilities ::= SEQUENCE {
+ nRencryptionAlgorithms NRencryptionAlgorithms,
+ nRintegrityProtectionAlgorithms NRintegrityProtectionAlgorithms,
+ iE-Extensions ProtocolExtensionContainer { { NRUESecurityCapabilities-ExtIEs} } OPTIONAL,
+...
+}
+
+NRUESecurityCapabilities-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NumberofBroadcastRequest ::= INTEGER (0..65535)
+
+NumberOfBroadcasts ::= INTEGER (0..65535)
+
+NRV2XServicesAuthorized ::= SEQUENCE {
+ vehicleUE VehicleUE OPTIONAL,
+ pedestrianUE PedestrianUE OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {NRV2XServicesAuthorized-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRV2XServicesAuthorized-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+NRUESidelinkAggregateMaximumBitrate ::= SEQUENCE {
+ uEaggregateMaximumBitRate BitRate,
+ iE-Extensions ProtocolExtensionContainer { {NRUESidelinkAggregateMaximumBitrate-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NRUESidelinkAggregateMaximumBitrate-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- O
+OldBSS-ToNewBSS-Information ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+OverloadAction ::= ENUMERATED {
+ reject-non-emergency-mo-dt,
+ reject-rrc-cr-signalling,
+ permit-emergency-sessions-and-mobile-terminated-services-only,
+ ...,
+ permit-high-priority-sessions-and-mobile-terminated-services-only,
+ reject-delay-tolerant-access,
+ permit-high-priority-sessions-and-exception-reporting-and-mobile-terminated-services-only,
+ not-accept-mo-data-or-delay-tolerant-access-from-CP-CIoT
+
+}
+
+OverloadResponse ::= CHOICE {
+ overloadAction OverloadAction,
+ ...
+}
+
+
+-- P
+
+Packet-LossRate ::= INTEGER(0..1000)
+
+PagingAttemptInformation ::= SEQUENCE {
+ pagingAttemptCount PagingAttemptCount,
+ intendedNumberOfPagingAttempts IntendedNumberOfPagingAttempts,
+ nextPagingAreaScope NextPagingAreaScope OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PagingAttemptInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PagingAttemptInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PagingAttemptCount ::= INTEGER (1..16, ...)
+
+Paging-eDRXInformation ::= SEQUENCE {
+ paging-eDRX-Cycle Paging-eDRX-Cycle,
+ pagingTimeWindow PagingTimeWindow OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { Paging-eDRXInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Paging-eDRXInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Paging-eDRX-Cycle ::= ENUMERATED{hfhalf, hf1, hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, ...}
+
+PagingTimeWindow ::= ENUMERATED{s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, ...}
+
+PagingDRX ::= ENUMERATED {
+ v32,
+ v64,
+ v128,
+ v256,
+ ...
+ }
+
+PagingPriority ::= ENUMERATED {
+ priolevel1,
+ priolevel2,
+ priolevel3,
+ priolevel4,
+ priolevel5,
+ priolevel6,
+ priolevel7,
+ priolevel8,
+ ...
+}
+
+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,
+ iE-Extensions ProtocolExtensionContainer { { PC5QoSParameters-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PC5QoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PC5QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF PC5QoSFlowItem
+
+PC5QoSFlowItem::= SEQUENCE {
+ pQI FiveQI,
+ pc5FlowBitRates PC5FlowBitRates OPTIONAL,
+ range Range OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { PC5QoSFlowItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PC5QoSFlowItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+PC5FlowBitRates ::= SEQUENCE {
+ guaranteedFlowBitRate BitRate,
+ maximumFlowBitRate BitRate,
+ iE-Extensions ProtocolExtensionContainer { { PC5FlowBitRates-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PC5FlowBitRates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+...
+}
+PDCP-SN ::= INTEGER (0..4095)
+
+PDCP-SNExtended ::= INTEGER (0..32767)
+
+PDCP-SNlength18 ::= INTEGER (0..262143)
+
+PendingDataIndication ::= ENUMERATED {
+ true,
+ ...
+}
+
+M1PeriodicReporting ::= SEQUENCE {
+ reportInterval ReportIntervalMDT,
+ reportAmount ReportAmountMDT,
+ iE-Extensions ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M1PeriodicReporting-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PLMNidentity ::= TBCD-STRING
+
+PLMNAreaBasedQMC ::= SEQUENCE {
+ plmnListforQMC PLMNListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {PLMNAreaBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PLMNAreaBasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PLMNListforQMC ::= SEQUENCE (SIZE(1..maxnoofPLMNforQMC)) OF PLMNidentity
+
+Port-Number ::= OCTET STRING (SIZE (2))
+
+Pre-emptionCapability ::= ENUMERATED {
+ shall-not-trigger-pre-emption,
+ may-trigger-pre-emption
+}
+
+Pre-emptionVulnerability ::= ENUMERATED {
+ not-pre-emptable,
+ pre-emptable
+}
+
+PriorityLevel ::= INTEGER { spare (0), highest (1), lowest (14), no-priority (15) } (0..15)
+
+ProSeAuthorized ::= SEQUENCE {
+ proSeDirectDiscovery ProSeDirectDiscovery OPTIONAL,
+ proSeDirectCommunication ProSeDirectCommunication OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {ProSeAuthorized-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ProSeAuthorized-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ProSeUEtoNetworkRelaying CRITICALITY ignore EXTENSION ProSeUEtoNetworkRelaying PRESENCE optional},
+ ...
+}
+
+ProSeDirectDiscovery ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+ProSeUEtoNetworkRelaying ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+ProSeDirectCommunication ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+PS-ServiceNotAvailable ::= ENUMERATED {
+ ps-service-not-available,
+ ...
+}
+
+PSCellInformation ::= SEQUENCE {
+ nCGI NR-CGI,
+ iE-Extensions ProtocolExtensionContainer { { PSCellInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PSCellInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- Q
+
+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, ...}
+
+ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))
+
+ReceiveStatusOfULPDCPSDUsExtended ::= BIT STRING (SIZE(1..16384))
+
+ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 ::= BIT STRING (SIZE(1..131072))
+
+RecommendedCellsForPaging ::= SEQUENCE {
+ recommendedCellList RecommendedCellList,
+ iE-Extensions ProtocolExtensionContainer { { RecommendedCellsForPaging-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RecommendedCellsForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RecommendedCellList ::= SEQUENCE (SIZE(1.. maxnoofRecommendedCells)) OF ProtocolIE-SingleContainer { { RecommendedCellItemIEs } }
+
+RecommendedCellItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-RecommendedCellItem CRITICALITY ignore TYPE RecommendedCellItem PRESENCE mandatory },
+ ...
+}
+
+RecommendedCellItem::= SEQUENCE {
+ eUTRAN-CGI EUTRAN-CGI,
+ timeStayedInCell INTEGER (0..4095) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RecommendedCellsForPagingItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RecommendedCellsForPagingItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RecommendedENBsForPaging ::= SEQUENCE {
+ recommendedENBList RecommendedENBList,
+ iE-Extensions ProtocolExtensionContainer { { RecommendedENBsForPaging-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RecommendedENBsForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RecommendedENBList::= SEQUENCE (SIZE(1.. maxnoofRecommendedENBs)) OF ProtocolIE-SingleContainer { { RecommendedENBItemIEs } }
+
+RecommendedENBItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-RecommendedENBItem CRITICALITY ignore TYPE RecommendedENBItem PRESENCE mandatory },
+ ...
+}
+
+RecommendedENBItem ::= SEQUENCE {
+ mMEPagingTarget MMEPagingTarget,
+ iE-Extensions ProtocolExtensionContainer { { RecommendedENBItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RecommendedENBItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RelativeMMECapacity ::= INTEGER (0..255)
+
+RelayNode-Indicator ::= ENUMERATED {
+ true,
+ ...
+}
+
+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}
+
+ReportIntervalMDT ::= ENUMERATED {ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60}
+
+M1ReportingTrigger ::= ENUMERATED{
+ periodic,
+ a2eventtriggered,
+ ...,
+ a2eventtriggered-periodic
+}
+
+RequestType ::= SEQUENCE {
+ eventType EventType,
+ reportArea ReportArea,
+ iE-Extensions ProtocolExtensionContainer { { RequestType-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+RequestType-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-RequestTypeAdditionalInfo CRITICALITY ignore EXTENSION RequestTypeAdditionalInfo PRESENCE optional },
+ ...
+}
+
+RequestTypeAdditionalInfo ::= ENUMERATED {
+ includePSCell,
+ ...
+}
+
+RIMTransfer ::= SEQUENCE {
+ rIMInformation RIMInformation,
+ rIMRoutingAddress RIMRoutingAddress OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { RIMTransfer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RIMTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+RIMInformation ::= OCTET STRING
+
+RIMRoutingAddress ::= CHOICE {
+ gERAN-Cell-ID GERAN-Cell-ID,
+ ...,
+ targetRNC-ID TargetRNC-ID,
+ eHRPD-Sector-ID OCTET STRING (SIZE(16))
+}
+
+ReportArea ::= ENUMERATED {
+ ecgi,
+ ...
+}
+
+RepetitionPeriod ::= INTEGER (0..4095)
+
+RLFReportInformation ::= SEQUENCE {
+ uE-RLF-Report-Container UE-RLF-Report-Container,
+ uE-RLF-Report-Container-for-extended-bands UE-RLF-Report-Container-for-extended-bands OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{ RLFReportInformation-ExtIEs}} OPTIONAL,
+ ...
+}
+
+RLFReportInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-NB-IoT-RLF-Report-Container CRITICALITY ignore EXTENSION NB-IoT-RLF-Report-Container PRESENCE optional},
+ ...
+}
+
+RNC-ID ::= INTEGER (0..4095)
+
+RRC-Container ::= OCTET STRING
+
+RRC-Establishment-Cause ::= ENUMERATED {
+ emergency,
+ highPriorityAccess,
+ mt-Access,
+ mo-Signalling,
+ mo-Data,
+ ...,
+ delay-TolerantAccess,
+ mo-VoiceCall,
+ mo-ExceptionData
+}
+
+ECGIListForRestart ::= SEQUENCE (SIZE(1..maxnoofCellsforRestart)) OF EUTRAN-CGI
+
+Routing-ID ::= INTEGER (0..255)
+
+-- S
+
+
+SecurityKey ::= BIT STRING (SIZE(256))
+
+
+
+SecurityContext ::= SEQUENCE {
+ nextHopChainingCount INTEGER (0..7),
+ nextHopParameter SecurityKey,
+ iE-Extensions ProtocolExtensionContainer { { SecurityContext-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+SecurityContext-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SecondaryRATType ::= ENUMERATED {
+ nR,
+ ...,
+ unlicensed
+}
+
+
+SecondaryRATDataUsageRequest ::= ENUMERATED {
+ requested,
+ ...
+}
+
+SecondaryRATDataUsageReportList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {SecondaryRATDataUsageReportItemIEs} }
+
+SecondaryRATDataUsageReportItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-SecondaryRATDataUsageReportItem CRITICALITY ignore TYPE SecondaryRATDataUsageReportItem PRESENCE mandatory },
+ ...
+}
+
+SecondaryRATDataUsageReportItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ secondaryRATType SecondaryRATType,
+ e-RABUsageReportList E-RABUsageReportList,
+ iE-Extensions ProtocolExtensionContainer { { SecondaryRATDataUsageReportItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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{
+ qMC-for-streaming-service,
+ qMC-for-MTSI-service,
+ ...
+}
+
+SONInformation ::= CHOICE{
+ sONInformationRequest SONInformationRequest,
+ sONInformationReply SONInformationReply,
+ ...,
+ sONInformation-Extension SONInformation-Extension
+}
+
+SONInformation-Extension ::= ProtocolIE-SingleContainer {{ SONInformation-ExtensionIE }}
+
+SONInformation-ExtensionIE S1AP-PROTOCOL-IES ::= {
+ { ID id-SON-Information-Report CRITICALITY ignore TYPE SONInformationReport PRESENCE mandatory}
+}
+
+SONInformationRequest ::= ENUMERATED {
+ x2TNL-Configuration-Info,
+ ...,
+ time-Synchronisation-Info,
+ activate-Muting,
+ deactivate-Muting}
+
+SONInformationReply ::= SEQUENCE {
+ x2TNLConfigurationInfo X2TNLConfigurationInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{SONInformationReply-ExtIEs}} OPTIONAL,
+ ...
+}
+
+SONInformationReply-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+-- Extension for Release 9 to transfer Time synchronisation information --
+ {ID id-Time-Synchronisation-Info CRITICALITY ignore EXTENSION TimeSynchronisationInfo PRESENCE optional},
+ ...,
+ {ID id-Muting-Pattern-Information CRITICALITY ignore EXTENSION MutingPatternInformation PRESENCE optional}
+}
+
+SONInformationReport ::= CHOICE{
+ rLFReportInformation RLFReportInformation,
+ ...
+}
+
+SONConfigurationTransfer ::= SEQUENCE {
+ targeteNB-ID TargeteNB-ID,
+ sourceeNB-ID SourceeNB-ID,
+ sONInformation SONInformation,
+ iE-Extensions ProtocolExtensionContainer { { SONConfigurationTransfer-ExtIEs} } OPTIONAL,
+...
+}
+
+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" --}|
+-- 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 " --},
+ ...
+}
+
+
+SynchronisationInformation ::= SEQUENCE {
+ sourceStratumLevel StratumLevel OPTIONAL,
+ listeningSubframePattern ListeningSubframePattern OPTIONAL,
+ aggressoreCGI-List ECGI-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {SynchronisationInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SynchronisationInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+Source-ToTarget-TransparentContainer ::= OCTET STRING
+-- 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.
+
+SourceBSS-ToTargetBSS-TransparentContainer ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+SourceeNB-ID ::= SEQUENCE {
+ global-ENB-ID Global-ENB-ID,
+ selected-TAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {SourceeNB-ID-ExtIEs} } OPTIONAL
+}
+
+SourceeNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SRVCCOperationNotPossible ::= ENUMERATED {
+ notPossible,
+ ...
+}
+
+SRVCCOperationPossible ::= ENUMERATED {
+ possible,
+ ...
+}
+
+SRVCCHOIndication ::= ENUMERATED {
+ pSandCS,
+ cSonly,
+ ...
+}
+
+SourceNodeID ::= CHOICE {
+ sourceNgRanNode-ID SourceNgRanNode-ID,
+ sourceNodeID-Extension SourceNodeID-Extension
+}
+
+SourceNodeID-Extension ::= ProtocolIE-SingleContainer {{ SourceNodeID-ExtensionIE }}
+
+SourceNodeID-ExtensionIE S1AP-PROTOCOL-IES ::= {
+...
+}
+
+SourceeNB-ToTargeteNB-TransparentContainer ::= SEQUENCE {
+ rRC-Container RRC-Container,
+ e-RABInformationList E-RABInformationList OPTIONAL,
+ targetCell-ID EUTRAN-CGI,
+ subscriberProfileIDforRFP SubscriberProfileIDforRFP OPTIONAL,
+ uE-HistoryInformation UE-HistoryInformation,
+ iE-Extensions ProtocolExtensionContainer { {SourceeNB-ToTargeteNB-TransparentContainer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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-AdditionalRRMPriorityIndex CRITICALITY ignore EXTENSION AdditionalRRMPriorityIndex 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-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},
+ ...
+}
+
+SourceNgRanNode-ID ::= SEQUENCE {
+ global-RAN-NODE-ID Global-RAN-NODE-ID,
+ selected-TAI FiveGSTAI,
+ iE-Extensions ProtocolExtensionContainer { { SourceNgRanNode-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SourceNgRanNode-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SourceRNC-ToTargetRNC-TransparentContainer ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+SourceNgRanNode-ToTargetNgRanNode-TransparentContainer ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+ServedGUMMEIs ::= SEQUENCE (SIZE (1.. maxnoofRATs)) OF ServedGUMMEIsItem
+
+ServedGUMMEIsItem ::= SEQUENCE {
+ servedPLMNs ServedPLMNs,
+ servedGroupIDs ServedGroupIDs,
+ servedMMECs ServedMMECs,
+ iE-Extensions ProtocolExtensionContainer { {ServedGUMMEIsItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedGUMMEIsItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-GUMMEIType CRITICALITY ignore EXTENSION GUMMEIType PRESENCE optional},
+ ...
+}
+
+ServedGroupIDs ::= SEQUENCE (SIZE(1.. maxnoofGroupIDs)) OF MME-Group-ID
+ServedMMECs ::= SEQUENCE (SIZE(1.. maxnoofMMECs)) OF MME-Code
+
+ServedPLMNs ::= SEQUENCE (SIZE(1.. maxnoofPLMNsPerMME)) OF PLMNidentity
+
+SubscriberProfileIDforRFP ::= INTEGER (1..256)
+
+Subscription-Based-UE-DifferentiationInfo ::= SEQUENCE {
+ 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 { { Subscription-Based-UE-DifferentiationInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Subscription-Based-UE-DifferentiationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ScheduledCommunicationTime ::= SEQUENCE {
+ dayofWeek BIT STRING (SIZE(7)) OPTIONAL,
+ timeofDayStart INTEGER (0..86399, ...) OPTIONAL,
+ timeofDayEnd INTEGER (0..86399, ...) OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ScheduledCommunicationTime-ExtIEs}} OPTIONAL,
+ ...
+}
+
+ScheduledCommunicationTime-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+SupportedTAs ::= SEQUENCE (SIZE(1.. maxnoofTACs)) OF SupportedTAs-Item
+
+SupportedTAs-Item ::= SEQUENCE {
+ tAC TAC,
+ broadcastPLMNs BPLMNs,
+ iE-Extensions ProtocolExtensionContainer { {SupportedTAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SupportedTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ -- Extension for Release 13 to transfer RAT-Type per TAC --
+ {ID id-RAT-Type CRITICALITY reject EXTENSION RAT-Type PRESENCE optional},
+ ...
+}
+
+StratumLevel ::= INTEGER (0..3, ...)
+
+SynchronisationStatus ::= ENUMERATED { synchronous, asynchronous, ... }
+
+TimeSynchronisationInfo ::= SEQUENCE {
+ stratumLevel StratumLevel,
+ synchronisationStatus SynchronisationStatus,
+ iE-Extensions ProtocolExtensionContainer { { TimeSynchronisationInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TimeSynchronisationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ -- Extension for Release 12 to transfer Muting Availability Indication --
+ {ID id-Muting-Availability-Indication CRITICALITY ignore EXTENSION MutingAvailabilityIndication PRESENCE optional},
+ ...
+}
+
+S-TMSI ::= SEQUENCE {
+ mMEC MME-Code,
+ m-TMSI M-TMSI,
+ iE-Extensions ProtocolExtensionContainer { {S-TMSI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+S-TMSI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- T
+
+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,
+ ...
+}
+
+TAIBasedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI
+
+TAIListforWarning ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI
+
+TAI ::= SEQUENCE {
+ pLMNidentity PLMNidentity,
+ tAC TAC,
+ iE-Extensions ProtocolExtensionContainer { {TAI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAI-Broadcast ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI-Broadcast-Item
+
+TAI-Broadcast-Item ::= SEQUENCE {
+ tAI TAI,
+ completedCellinTAI CompletedCellinTAI,
+ iE-Extensions ProtocolExtensionContainer { {TAI-Broadcast-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAI-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAI-Cancelled ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI-Cancelled-Item
+
+TAI-Cancelled-Item ::= SEQUENCE {
+ tAI TAI,
+ cancelledCellinTAI CancelledCellinTAI,
+ iE-Extensions ProtocolExtensionContainer { {TAI-Cancelled-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAI-Cancelled-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TABasedMDT ::= SEQUENCE {
+ tAListforMDT TAListforMDT,
+ iE-Extensions ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TABasedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC
+
+TABasedQMC ::= SEQUENCE {
+ tAListforQMC TAListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {TABasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TABasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAC
+
+TAIBasedQMC ::= SEQUENCE {
+ tAIListforQMC TAIListforQMC,
+ iE-Extensions ProtocolExtensionContainer { {TAIBasedQMC-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAIBasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAIListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAI
+
+CompletedCellinTAI ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CompletedCellinTAI-Item
+
+CompletedCellinTAI-Item ::= SEQUENCE{
+ eCGI EUTRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CompletedCellinTAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompletedCellinTAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TBCD-STRING ::= OCTET STRING (SIZE (3))
+
+TargetID ::= CHOICE {
+ targeteNB-ID TargeteNB-ID,
+ targetRNC-ID TargetRNC-ID,
+ cGI CGI,
+ ...,
+ targetgNgRanNode-ID TargetNgRanNode-ID
+}
+
+TargeteNB-ID ::= SEQUENCE {
+ global-ENB-ID Global-ENB-ID,
+ selected-TAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {TargeteNB-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargeteNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TargetRNC-ID ::= SEQUENCE {
+ lAI LAI,
+ rAC RAC OPTIONAL,
+ rNC-ID RNC-ID,
+ extendedRNC-ID ExtendedRNC-ID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TargetRNC-ID-ExtIEs} } OPTIONAL,
+ ...
+ }
+
+
+TargetRNC-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TargetNgRanNode-ID ::= SEQUENCE {
+ global-RAN-NODE-ID Global-RAN-NODE-ID,
+ selected-TAI FiveGSTAI,
+ iE-Extensions ProtocolExtensionContainer { { TargetNgRanNode-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargetNgRanNode-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Global-RAN-NODE-ID::= CHOICE {
+ gNB GNB,
+ ng-eNB NG-eNB,
+ ...
+}
+
+GNB ::= SEQUENCE {
+ global-gNB-ID Global-GNB-ID,
+ iE-Extensions ProtocolExtensionContainer { {GNB-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GNB-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+Global-GNB-ID ::= SEQUENCE {
+ pLMN-Identity PLMNidentity,
+ gNB-ID GNB-Identity,
+ iE-Extensions ProtocolExtensionContainer { { Global-GNB-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Global-GNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GNB-Identity ::= CHOICE {
+ gNB-ID GNB-ID,
+ ...
+}
+
+NG-eNB ::= SEQUENCE {
+ global-ng-eNB-ID Global-ENB-ID,
+ iE-Extensions ProtocolExtensionContainer { { NG-eNB-ExtIEs} } OPTIONAL,
+ ...
+}
+
+NG-eNB-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GNB-ID ::= BIT STRING (SIZE(22..32))
+
+TargeteNB-ToSourceeNB-TransparentContainer ::= SEQUENCE {
+ rRC-Container RRC-Container,
+ iE-Extensions ProtocolExtensionContainer { {TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { 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 },
+ ...
+}
+
+Target-ToSource-TransparentContainer ::= OCTET STRING
+-- This IE includes a transparent container from the target RAN node to the source RAN node.
+-- The octets of the OCTET STRING are coded according to the specifications of the target system.
+
+TargetRNC-ToSourceRNC-TransparentContainer ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+TargetBSS-ToSourceBSS-TransparentContainer ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+TargetNgRanNode-ToSourceNgRanNode-TransparentContainer ::= OCTET STRING
+-- This is a dummy IE used only as a reference to the actual definition in relevant specification.
+
+M1ThresholdEventA2 ::= SEQUENCE {
+ measurementThreshold MeasurementThresholdA2,
+ iE-Extensions ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M1ThresholdEventA2-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+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)
+
+Time-UE-StayedInCell-EnhancedGranularity ::= INTEGER (0..40950)
+
+TimeSinceSecondaryNodeRelease ::= OCTET STRING (SIZE(4))
+
+TransportInformation ::= SEQUENCE {
+ transportLayerAddress TransportLayerAddress,
+ uL-GTP-TEID GTP-TEID,
+ ...
+}
+
+TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...))
+
+TraceActivation ::= SEQUENCE {
+ e-UTRAN-Trace-ID E-UTRAN-Trace-ID,
+ interfacesToTrace InterfacesToTrace,
+traceDepth TraceDepth,
+traceCollectionEntityIPAddress TransportLayerAddress,
+ iE-Extensions ProtocolExtensionContainer { { TraceActivation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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 --
+ { 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 },
+ ...
+}
+
+TraceDepth ::= ENUMERATED {
+ minimum,
+ medium,
+ maximum,
+ minimumWithoutVendorSpecificExtension,
+ mediumWithoutVendorSpecificExtension,
+ maximumWithoutVendorSpecificExtension,
+ ...
+}
+
+E-UTRAN-Trace-ID ::= OCTET STRING (SIZE (8))
+
+TrafficLoadReductionIndication ::= INTEGER (1..99)
+
+TunnelInformation ::= SEQUENCE {
+ transportLayerAddress TransportLayerAddress,
+ uDP-Port-Number Port-Number OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {Tunnel-Information-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Tunnel-Information-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TypeOfError ::= ENUMERATED {
+ not-understood,
+ missing,
+ ...
+}
+
+TAIListForRestart ::= SEQUENCE (SIZE(1..maxnoofRestartTAIs)) OF TAI
+
+-- U
+
+UEAggregateMaximumBitrate ::= SEQUENCE {
+ uEaggregateMaximumBitRateDL BitRate,
+ uEaggregateMaximumBitRateUL BitRate,
+ iE-Extensions ProtocolExtensionContainer { {UEAggregate-MaximumBitrates-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+-- Extension for maximum bitrate > 10G bps --
+ { ID id-extended-uEaggregateMaximumBitRateDL CRITICALITY ignore EXTENSION ExtendedBitRate PRESENCE optional}|
+ { ID id-extended-uEaggregateMaximumBitRateUL CRITICALITY ignore EXTENSION ExtendedBitRate PRESENCE optional},
+ ...
+}
+
+UEAppLayerMeasConfig ::= SEQUENCE {
+ containerForAppLayerMeasConfig OCTET STRING (SIZE(1..1000)),
+ areaScopeOfQMC AreaScopeOfQMC,
+ iE-Extensions ProtocolExtensionContainer { {UEAppLayerMeasConfig-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAppLayerMeasConfig-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ {ID id-serviceType CRITICALITY ignore EXTENSION ServiceType PRESENCE optional},
+ ...
+}
+
+UECapabilityInfoRequest ::= ENUMERATED {
+ requested,
+ ...
+}
+
+UE-RetentionInformation ::= ENUMERATED {
+ ues-retained,
+ ...}
+
+UE-S1AP-IDs ::= CHOICE{
+ uE-S1AP-ID-pair UE-S1AP-ID-pair,
+ mME-UE-S1AP-ID MME-UE-S1AP-ID,
+ ...
+}
+
+UE-S1AP-ID-pair ::= SEQUENCE{
+ mME-UE-S1AP-ID MME-UE-S1AP-ID,
+ eNB-UE-S1AP-ID ENB-UE-S1AP-ID,
+ iE-Extensions ProtocolExtensionContainer { {UE-S1AP-ID-pair-ExtIEs} } OPTIONAL,
+ ...
+}
+UE-S1AP-ID-pair-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+UE-associatedLogicalS1-ConnectionItem ::= SEQUENCE {
+ mME-UE-S1AP-ID MME-UE-S1AP-ID OPTIONAL,
+ eNB-UE-S1AP-ID ENB-UE-S1AP-ID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { UE-associatedLogicalS1-ConnectionItemExtIEs} } OPTIONAL,
+ ...
+}
+
+
+UE-associatedLogicalS1-ConnectionItemExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UEIdentityIndexValue ::= BIT STRING (SIZE (10))
+
+UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCellsinUEHistoryInfo)) OF LastVisitedCell-Item
+
+UE-HistoryInformationFromTheUE ::= OCTET STRING
+
+UEPagingID ::= CHOICE {
+ s-TMSI S-TMSI,
+ iMSI IMSI,
+ ...
+ }
+
+UERadioCapability ::= OCTET STRING
+
+UERadioCapabilityForPaging ::= OCTET STRING
+
+UERadioCapabilityID ::= OCTET STRING
+
+UE-RLF-Report-Container ::= OCTET STRING
+
+UE-RLF-Report-Container-for-extended-bands ::= OCTET STRING
+
+UESecurityCapabilities ::= SEQUENCE {
+ encryptionAlgorithms EncryptionAlgorithms,
+ integrityProtectionAlgorithms IntegrityProtectionAlgorithms,
+ iE-Extensions ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} } OPTIONAL,
+...
+}
+
+UESecurityCapabilities-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UESidelinkAggregateMaximumBitrate ::= SEQUENCE {
+ uESidelinkAggregateMaximumBitRate BitRate,
+ iE-Extensions ProtocolExtensionContainer { {UE-Sidelink-Aggregate-MaximumBitrates-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UE-Sidelink-Aggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UE-Usage-Type ::= INTEGER (0..255)
+
+UL-CP-SecurityInformation ::= SEQUENCE {
+ ul-NAS-MAC UL-NAS-MAC,
+ ul-NAS-Count UL-NAS-Count,
+ iE-Extensions ProtocolExtensionContainer { { UL-CP-SecurityInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UL-CP-SecurityInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UL-NAS-MAC ::= BIT STRING (SIZE (16))
+
+UL-NAS-Count ::= BIT STRING (SIZE (5))
+
+UnlicensedSpectrumRestriction ::= ENUMERATED {
+ unlicensed-restricted,
+ ...
+}
+
+
+URI-Address ::= VisibleString
+
+UserLocationInformation ::= SEQUENCE {
+ eutran-cgi EUTRAN-CGI,
+ tai TAI,
+ iE-Extensions ProtocolExtensionContainer { { UserLocationInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UserLocationInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-PSCellInformation CRITICALITY ignore EXTENSION PSCellInformation PRESENCE optional}|
+ { ID id-LTE-NTN-TAI-Information CRITICALITY ignore EXTENSION LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+
+UEUserPlaneCIoTSupportIndicator ::= ENUMERATED {
+ supported,
+ ...
+}
+
+UE-Application-Layer-Measurement-Capability ::= BIT STRING (SIZE (8))
+
+-- First bit: QoE Measurement for streaming service
+-- Second bit: QoE Measurement for MTSI service
+
+-- Note that undefined bits are considered as a spare bit and spare bits shall be set to 0 by the transmitter and shall be ignored by the receiver.
+
+-- V
+
+VoiceSupportMatchIndicator ::= ENUMERATED {
+ supported,
+ not-supported,
+ ...
+}
+
+V2XServicesAuthorized ::= SEQUENCE {
+ vehicleUE VehicleUE OPTIONAL,
+ pedestrianUE PedestrianUE OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {V2XServicesAuthorized-ExtIEs} } OPTIONAL,
+ ...
+}
+
+V2XServicesAuthorized-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+VehicleUE ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+PedestrianUE ::= ENUMERATED {
+ authorized,
+ not-authorized,
+ ...
+}
+
+-- W
+
+WarningAreaCoordinates ::= OCTET STRING (SIZE(1..1024))
+
+WarningAreaList ::= CHOICE {
+ cellIDList ECGIList,
+ trackingAreaListforWarning TAIListforWarning,
+ emergencyAreaIDList EmergencyAreaIDList,
+ ...
+}
+
+
+WarningType ::= OCTET STRING (SIZE (2))
+
+WarningSecurityInfo ::= OCTET STRING (SIZE (50))
+
+
+WarningMessageContents ::= OCTET STRING (SIZE(1..9600))
+
+WLANMeasurementConfiguration ::= SEQUENCE {
+ wlanMeasConfig WLANMeasConfig,
+ wlanMeasConfigNameList WLANMeasConfigNameList OPTIONAL,
+ wlan-rssi ENUMERATED {true, ...} OPTIONAL,
+ wlan-rtt ENUMERATED {true, ...} OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { WLANMeasurementConfiguration-ExtIEs } } OPTIONAL,
+ ...
+}
+
+WLANMeasurementConfiguration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+WLANMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofWLANName)) OF WLANName
+
+WLANMeasConfig::= ENUMERATED {setup,...}
+
+WLANName ::= OCTET STRING (SIZE (1..32))
+
+WUS-Assistance-Information ::= SEQUENCE {
+ pagingProbabilityInformation PagingProbabilityInformation,
+ iE-Extensions ProtocolExtensionContainer { { WUS-Assistance-Information-ExtIEs } } OPTIONAL,
+ ...
+}
+
+WUS-Assistance-Information-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- X
+
+
+X2TNLConfigurationInfo ::= SEQUENCE {
+ eNBX2TransportLayerAddresses ENBX2TLAs,
+ iE-Extensions ProtocolExtensionContainer { { X2TNLConfigurationInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+X2TNLConfigurationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+-- Extension for Release 10 to transfer the IPsec and U-plane addresses during ANR action --
+ {ID id-eNBX2ExtendedTransportLayerAddresses CRITICALITY ignore EXTENSION ENBX2ExtTLAs PRESENCE optional}|
+-- Extension for Release 12 to transfer the IP addresses of the X2 GW --
+ {ID id-eNBIndirectX2TransportLayerAddresses CRITICALITY ignore EXTENSION ENBIndirectX2TransportLayerAddresses PRESENCE optional},
+ ...
+}
+
+ENBX2ExtTLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2ExtTLAs)) OF ENBX2ExtTLA
+
+ENBX2ExtTLA ::= SEQUENCE {
+ iPsecTLA TransportLayerAddress OPTIONAL,
+ gTPTLAa ENBX2GTPTLAs OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ENBX2ExtTLA-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ENBX2ExtTLA-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ENBX2GTPTLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2GTPTLAs)) OF TransportLayerAddress
+
+ENBIndirectX2TransportLayerAddresses ::= SEQUENCE (SIZE(1..maxnoofeNBX2TLAs)) OF TransportLayerAddress
+
+-- Y
+-- Z
+
+END
diff --git a/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn b/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn
new file mode 100644
index 00000000..f781fd7a
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-PDU-Contents.asn
@@ -0,0 +1,3370 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- 9.3.3 PDU Definitions
+-- **************************************************************
+--
+-- PDU definitions for S1AP.
+--
+-- **************************************************************
+
+S1AP-PDU-Contents {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-PDU-Contents (1) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+
+ UEAggregateMaximumBitrate,
+ BearerType,
+ Cause,
+ CellAccessMode,
+ Cdma2000HORequiredIndication,
+ Cdma2000HOStatus,
+ Cdma2000OneXSRVCCInfo,
+ Cdma2000OneXRAND,
+ Cdma2000PDU,
+ Cdma2000RATType,
+ Cdma2000SectorID,
+ EUTRANRoundTripDelayEstimationInfo,
+ CNDomain,
+ ConcurrentWarningMessageIndicator,
+ CriticalityDiagnostics,
+ CSFallbackIndicator,
+ CSG-Id,
+ CSG-IdList,
+ CSGMembershipStatus,
+ Data-Forwarding-Not-Possible,
+ Direct-Forwarding-Path-Availability,
+ Global-ENB-ID,
+ EUTRAN-CGI,
+ ENBname,
+ ENB-StatusTransfer-TransparentContainer,
+ ENB-UE-S1AP-ID,
+ ExtendedRepetitionPeriod,
+ GTP-TEID,
+ GUMMEI,
+ GUMMEIType,
+ HandoverRestrictionList,
+ HandoverType,
+ Masked-IMEISV,
+ LAI,
+ LPPa-PDU,
+ ManagementBasedMDTAllowed,
+ MDTPLMNList,
+ MMEname,
+ MMERelaySupportIndicator,
+ MME-UE-S1AP-ID,
+ MSClassmark2,
+ MSClassmark3,
+ NAS-PDU,
+ NASSecurityParametersfromE-UTRAN,
+ NASSecurityParameterstoE-UTRAN,
+ OverloadResponse,
+ PagingDRX,
+ PagingPriority,
+ PLMNidentity,
+ ProSeAuthorized,
+ RIMTransfer,
+ RelativeMMECapacity,
+ RequestType,
+ E-RAB-ID,
+ E-RABLevelQoSParameters,
+ E-RABList,
+ RelayNode-Indicator,
+ Routing-ID,
+ SecurityKey,
+ SecurityContext,
+ ServedGUMMEIs,
+ SONConfigurationTransfer,
+ Source-ToTarget-TransparentContainer,
+ SourceBSS-ToTargetBSS-TransparentContainer,
+ SourceeNB-ToTargeteNB-TransparentContainer,
+ SourceRNC-ToTargetRNC-TransparentContainer,
+ SubscriberProfileIDforRFP,
+ SRVCCOperationNotPossible,
+ SRVCCOperationPossible,
+ SRVCCHOIndication,
+ SupportedTAs,
+ TAI,
+ Target-ToSource-TransparentContainer,
+ TargetBSS-ToSourceBSS-TransparentContainer,
+ TargeteNB-ToSourceeNB-TransparentContainer,
+ TargetID,
+ TargetRNC-ToSourceRNC-TransparentContainer,
+ TimeToWait,
+ TraceActivation,
+ TrafficLoadReductionIndication,
+ E-UTRAN-Trace-ID,
+ TransportLayerAddress,
+ UEIdentityIndexValue,
+ UEPagingID,
+ UERadioCapability,
+ UERadioCapabilityForPaging,
+ UE-RetentionInformation,
+ UE-S1AP-IDs,
+ UE-associatedLogicalS1-ConnectionItem,
+ UESecurityCapabilities,
+ S-TMSI,
+ MessageIdentifier,
+ SerialNumber,
+ WarningAreaList,
+ RepetitionPeriod,
+ NumberofBroadcastRequest,
+ WarningType,
+ WarningSecurityInfo,
+ DataCodingScheme,
+ WarningMessageContents,
+ BroadcastCompletedAreaList,
+ RRC-Establishment-Cause,
+ BroadcastCancelledAreaList,
+ PS-ServiceNotAvailable,
+ GUMMEIList,
+ Correlation-ID,
+ GWContextReleaseIndication,
+ PrivacyIndicator,
+ VoiceSupportMatchIndicator,
+ TunnelInformation,
+ KillAllWarningMessages,
+ TransportInformation,
+ LHN-ID,
+ UserLocationInformation,
+ AdditionalCSFallbackIndicator,
+ ECGIListForRestart,
+ TAIListForRestart,
+ EmergencyAreaIDListForRestart,
+ ExpectedUEBehaviour,
+ Paging-eDRXInformation,
+ Extended-UEIdentityIndexValue,
+ MME-Group-ID,
+ Additional-GUTI,
+ PWSfailedECGIList,
+ CellIdentifierAndCELevelForCECapableUEs,
+ AssistanceDataForPaging,
+ InformationOnRecommendedCellsAndENBsForPaging,
+ UE-Usage-Type,
+ UEUserPlaneCIoTSupportIndicator,
+ NB-IoT-DefaultPagingDRX,
+ NB-IoT-Paging-eDRXInformation,
+ CE-mode-B-SupportIndicator,
+ NB-IoT-UEIdentityIndexValue,
+ V2XServicesAuthorized,
+ DCN-ID,
+ ServedDCNs,
+ UESidelinkAggregateMaximumBitrate,
+ DLNASPDUDeliveryAckRequest,
+ Coverage-Level,
+ EnhancedCoverageRestricted,
+ DL-CP-SecurityInformation,
+ UL-CP-SecurityInformation,
+ SecondaryRATDataUsageRequest,
+ SecondaryRATDataUsageReportList,
+ HandoverFlag,
+ NRUESecurityCapabilities,
+ UE-Application-Layer-Measurement-Capability,
+ CE-ModeBRestricted,
+ Packet-LossRate,
+ UECapabilityInfoRequest,
+ SourceNgRanNode-ToTargetNgRanNode-TransparentContainer,
+ TargetNgRanNode-ToSourceNgRanNode-TransparentContainer,
+ EndIndication,
+ EDT-Session,
+ LTE-M-Indication,
+ AerialUEsubscriptionInformation,
+ PendingDataIndication,
+ WarningAreaCoordinates,
+ Subscription-Based-UE-DifferentiationInfo,
+ PSCellInformation,
+ NR-CGI,
+ ConnectedengNBList,
+ EN-DCSONConfigurationTransfer,
+ TimeSinceSecondaryNodeRelease,
+ AdditionalRRMPriorityIndex,
+ IAB-Authorized,
+ IAB-Node-Indication,
+ IAB-Supported,
+ DataSize,
+ Ethernet-Type,
+ NRV2XServicesAuthorized,
+ NRUESidelinkAggregateMaximumBitrate,
+ PC5QoSParameters,
+ IntersystemSONConfigurationTransfer,
+ UERadioCapabilityID,
+ NotifySourceeNB,
+ ENB-EarlyStatusTransfer-TransparentContainer,
+ WUS-Assistance-Information,
+ NB-IoT-PagingDRX,
+ PagingCause,
+ SecurityIndication,
+ SecurityResult,
+ LTE-NTN-TAI-Information
+
+
+
+
+FROM S1AP-IEs
+
+ PrivateIE-Container{},
+ ProtocolExtensionContainer{},
+ ProtocolIE-Container{},
+ ProtocolIE-ContainerList{},
+ ProtocolIE-ContainerPair{},
+ ProtocolIE-ContainerPairList{},
+ ProtocolIE-SingleContainer{},
+ S1AP-PRIVATE-IES,
+ S1AP-PROTOCOL-EXTENSION,
+ S1AP-PROTOCOL-IES,
+ S1AP-PROTOCOL-IES-PAIR
+FROM S1AP-Containers
+
+
+ id-AssistanceDataForPaging,
+ id-AerialUEsubscriptionInformation,
+ id-uEaggregateMaximumBitrate,
+ id-BearerType,
+ id-Cause,
+ id-CellAccessMode,
+ id-CellIdentifierAndCELevelForCECapableUEs,
+ id-cdma2000HORequiredIndication,
+ id-cdma2000HOStatus,
+ id-cdma2000OneXSRVCCInfo,
+ id-cdma2000OneXRAND,
+ id-cdma2000PDU,
+ id-cdma2000RATType,
+ id-cdma2000SectorID,
+ id-EUTRANRoundTripDelayEstimationInfo,
+ id-CNDomain,
+ id-ConcurrentWarningMessageIndicator,
+ id-CriticalityDiagnostics,
+ id-CSFallbackIndicator,
+ id-CSG-Id,
+ id-CSG-IdList,
+ id-CSGMembershipStatus,
+ id-Data-Forwarding-Not-Possible,
+ id-DefaultPagingDRX,
+ id-Direct-Forwarding-Path-Availability,
+ id-Global-ENB-ID,
+ id-EUTRAN-CGI,
+ id-eNBname,
+ id-eNB-StatusTransfer-TransparentContainer,
+ id-eNB-UE-S1AP-ID,
+ id-GERANtoLTEHOInformationRes,
+ id-GUMMEI-ID,
+ id-GUMMEIType,
+ id-HandoverRestrictionList,
+ id-HandoverType,
+ id-Masked-IMEISV,
+ id-InformationOnRecommendedCellsAndENBsForPaging,
+ id-InitialContextSetup,
+ id-Inter-SystemInformationTransferTypeEDT,
+ id-Inter-SystemInformationTransferTypeMDT,
+ id-LPPa-PDU,
+ id-NAS-DownlinkCount,
+ id-ManagementBasedMDTAllowed,
+ id-ManagementBasedMDTPLMNList,
+ id-MMEname,
+ id-MME-UE-S1AP-ID,
+ id-MSClassmark2,
+ id-MSClassmark3,
+ id-NAS-PDU,
+ id-NASSecurityParametersfromE-UTRAN,
+ id-NASSecurityParameterstoE-UTRAN,
+ id-OverloadResponse,
+ id-pagingDRX,
+ id-PagingPriority,
+ id-RelativeMMECapacity,
+ id-RequestType,
+ id-Routing-ID,
+ id-E-RABAdmittedItem,
+ id-E-RABAdmittedList,
+ id-E-RABDataForwardingItem,
+ id-E-RABFailedToModifyList,
+ id-E-RABFailedToReleaseList,
+ id-E-RABFailedtoSetupItemHOReqAck,
+ id-E-RABFailedToSetupListBearerSURes,
+ id-E-RABFailedToSetupListCtxtSURes,
+ id-E-RABFailedToSetupListHOReqAck,
+ id-E-RABFailedToBeReleasedList,
+ id-E-RABFailedToResumeListResumeReq,
+ id-E-RABFailedToResumeItemResumeReq,
+ id-E-RABFailedToResumeListResumeRes,
+ id-E-RABFailedToResumeItemResumeRes,
+ id-E-RABModify,
+ id-E-RABModifyItemBearerModRes,
+ id-E-RABModifyListBearerModRes,
+ id-E-RABRelease,
+ id-E-RABReleaseItemBearerRelComp,
+ id-E-RABReleaseItemHOCmd,
+ id-E-RABReleaseListBearerRelComp,
+ id-E-RABReleaseIndication,
+ id-E-RABSetup,
+ id-E-RABSetupItemBearerSURes,
+ id-E-RABSetupItemCtxtSURes,
+ id-E-RABSetupListBearerSURes,
+ id-E-RABSetupListCtxtSURes,
+ id-E-RABSubjecttoDataForwardingList,
+ id-E-RABToBeModifiedItemBearerModReq,
+ id-E-RABToBeModifiedListBearerModReq,
+ id-E-RABToBeModifiedListBearerModInd,
+ id-E-RABToBeModifiedItemBearerModInd,
+ id-E-RABNotToBeModifiedListBearerModInd,
+ id-E-RABNotToBeModifiedItemBearerModInd,
+ id-E-RABModifyListBearerModConf,
+ id-E-RABModifyItemBearerModConf,
+ id-E-RABFailedToModifyListBearerModConf,
+ id-E-RABToBeReleasedListBearerModConf,
+ id-E-RABToBeReleasedList,
+ id-E-RABReleasedList,
+ id-E-RABToBeSetupItemBearerSUReq,
+ id-E-RABToBeSetupItemCtxtSUReq,
+ id-E-RABToBeSetupItemHOReq,
+ id-E-RABToBeSetupListBearerSUReq,
+ id-E-RABToBeSetupListCtxtSUReq,
+ id-E-RABToBeSetupListHOReq,
+ id-E-RABToBeSwitchedDLItem,
+ id-E-RABToBeSwitchedDLList,
+ id-E-RABToBeSwitchedULList,
+ id-E-RABToBeSwitchedULItem,
+ id-E-RABtoReleaseListHOCmd,
+ id-ProSeAuthorized,
+ id-SecurityKey,
+ id-SecurityContext,
+ id-ServedGUMMEIs,
+ id-SONConfigurationTransferECT,
+ id-SONConfigurationTransferMCT,
+ id-Source-ToTarget-TransparentContainer,
+ id-Source-ToTarget-TransparentContainer-Secondary,
+ id-SourceMME-UE-S1AP-ID,
+ id-SRVCCOperationNotPossible,
+ id-SRVCCOperationPossible,
+ id-SRVCCHOIndication,
+ id-SubscriberProfileIDforRFP,
+ id-SupportedTAs,
+ id-S-TMSI,
+ id-TAI,
+ id-TAIItem,
+ id-TAIList,
+ id-Target-ToSource-TransparentContainer,
+ id-Target-ToSource-TransparentContainer-Secondary,
+ id-TargetID,
+ id-TimeToWait,
+ id-TraceActivation,
+ id-TrafficLoadReductionIndication,
+ id-E-UTRAN-Trace-ID,
+ id-UEIdentityIndexValue,
+ id-UEPagingID,
+ id-UERadioCapability,
+ id-UERadioCapabilityForPaging,
+ id-UTRANtoLTEHOInformationRes,
+ id-UE-associatedLogicalS1-ConnectionListResAck,
+ id-UE-associatedLogicalS1-ConnectionItem,
+ id-UE-RetentionInformation,
+ id-UESecurityCapabilities,
+ id-UE-S1AP-IDs,
+ id-V2XServicesAuthorized,
+ id-ResetType,
+ id-MessageIdentifier,
+ id-SerialNumber,
+ id-WarningAreaList,
+ id-RepetitionPeriod,
+ id-NumberofBroadcastRequest,
+ id-WarningType,
+ id-WarningSecurityInfo,
+ id-DataCodingScheme,
+ id-WarningMessageContents,
+ id-BroadcastCompletedAreaList,
+ id-BroadcastCancelledAreaList,
+ id-RRC-Establishment-Cause,
+ id-TraceCollectionEntityIPAddress,
+ id-AdditionalRRMPriorityIndex,
+ id-MDTConfigurationNR,
+ maxnoofTAIs,
+ maxnoofErrors,
+ maxnoofE-RABs,
+ maxnoofIndividualS1ConnectionsToReset,
+ maxnoofEmergencyAreaID,
+ maxnoofCellID,
+ maxnoofTAIforWarning,
+ maxnoofCellinTAI,
+ maxnoofCellinEAI,
+ id-ExtendedRepetitionPeriod,
+ id-PS-ServiceNotAvailable,
+ id-RegisteredLAI,
+ id-GUMMEIList,
+ id-SourceMME-GUMMEI,
+ id-MME-UE-S1AP-ID-2,
+ id-GW-TransportLayerAddress,
+ id-RelayNode-Indicator,
+ id-Correlation-ID,
+ id-MMERelaySupportIndicator,
+ id-GWContextReleaseIndication,
+ id-PrivacyIndicator,
+ id-VoiceSupportMatchIndicator,
+ id-Tunnel-Information-for-BBF,
+ id-SIPTO-Correlation-ID,
+ id-SIPTO-L-GW-TransportLayerAddress,
+ id-KillAllWarningMessages,
+ id-TransportInformation,
+ id-LHN-ID,
+ id-UserLocationInformation,
+ id-AdditionalCSFallbackIndicator,
+ id-ECGIListForRestart,
+ id-TAIListForRestart,
+ id-EmergencyAreaIDListForRestart,
+ id-ExpectedUEBehaviour,
+ id-Paging-eDRXInformation,
+ id-extended-UEIdentityIndexValue,
+ id-CSGMembershipInfo,
+ id-MME-Group-ID,
+ id-Additional-GUTI,
+ id-S1-Message,
+ id-PWSfailedECGIList,
+ id-PWSFailureIndication,
+ id-UE-Usage-Type,
+ id-UEUserPlaneCIoTSupportIndicator,
+ id-NB-IoT-DefaultPagingDRX,
+ id-NB-IoT-Paging-eDRXInformation,
+ id-CE-mode-B-SupportIndicator,
+ id-NB-IoT-UEIdentityIndexValue,
+ id-RRC-Resume-Cause,
+ id-DCN-ID,
+ id-ServedDCNs,
+ id-UESidelinkAggregateMaximumBitrate,
+ id-DLNASPDUDeliveryAckRequest,
+ id-Coverage-Level,
+ id-EnhancedCoverageRestricted,
+ id-UE-Level-QoS-Parameters,
+ id-DL-CP-SecurityInformation,
+ id-UL-CP-SecurityInformation,
+ id-SecondaryRATDataUsageRequest,
+ id-SecondaryRATDataUsageReportList,
+ id-HandoverFlag,
+ id-NRUESecurityCapabilities,
+ id-UE-Application-Layer-Measurement-Capability,
+ id-CE-ModeBRestricted,
+ id-DownlinkPacketLossRate,
+ id-UplinkPacketLossRate,
+ id-UECapabilityInfoRequest,
+ id-EndIndication,
+ id-EDT-Session,
+ id-LTE-M-Indication,
+ id-PendingDataIndication,
+ id-WarningAreaCoordinates,
+ id-Subscription-Based-UE-DifferentiationInfo,
+ id-PSCellInformation,
+ id-ConnectedengNBList,
+ id-ConnectedengNBToAddList,
+ id-ConnectedengNBToRemoveList,
+ id-EN-DCSONConfigurationTransfer-ECT,
+ id-EN-DCSONConfigurationTransfer-MCT,
+ id-TimeSinceSecondaryNodeRelease,
+ id-IAB-Authorized,
+ id-IAB-Node-Indication,
+ id-IAB-Supported,
+ id-DataSize,
+ id-Ethernet-Type,
+ id-NRV2XServicesAuthorized,
+ id-NRUESidelinkAggregateMaximumBitrate,
+ id-PC5QoSParameters,
+ id-IntersystemSONConfigurationTransferMCT,
+ id-IntersystemSONConfigurationTransferECT,
+ id-UERadioCapabilityID,
+ id-UERadioCapability-NR-Format,
+ id-NotifySourceeNB,
+ id-eNB-EarlyStatusTransfer-TransparentContainer,
+ id-WUS-Assistance-Information,
+ 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;
+
+-- **************************************************************
+--
+-- Common Container Lists
+--
+-- **************************************************************
+
+E-RAB-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxnoofE-RABs, {IEsSetParam} }
+E-RAB-IE-ContainerPairList { S1AP-PROTOCOL-IES-PAIR : IEsSetParam } ::= ProtocolIE-ContainerPairList { 1, maxnoofE-RABs, {IEsSetParam} }
+ProtocolError-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxnoofE-RABs, {IEsSetParam} }
+
+-- **************************************************************
+--
+-- HANDOVER PREPARATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Handover Required
+--
+-- **************************************************************
+
+HandoverRequired ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverRequiredIEs} },
+ ...
+}
+
+HandoverRequiredIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-TargetID CRITICALITY reject TYPE TargetID PRESENCE mandatory}|
+ { ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore TYPE Direct-Forwarding-Path-Availability PRESENCE optional}|
+ { ID id-SRVCCHOIndication CRITICALITY reject TYPE SRVCCHOIndication PRESENCE optional}|
+ { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory}|
+ { ID id-Source-ToTarget-TransparentContainer-Secondary CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE optional}|
+ { ID id-MSClassmark2 CRITICALITY reject TYPE MSClassmark2 PRESENCE conditional}|
+ { ID id-MSClassmark3 CRITICALITY ignore TYPE MSClassmark3 PRESENCE conditional}|
+ { ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional}|
+ { ID id-CellAccessMode CRITICALITY reject TYPE CellAccessMode PRESENCE optional}|
+ { ID id-PS-ServiceNotAvailable CRITICALITY ignore TYPE PS-ServiceNotAvailable PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Handover Command
+--
+-- **************************************************************
+
+HandoverCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverCommandIEs} },
+ ...
+}
+
+HandoverCommandIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory}|
+ { ID id-NASSecurityParametersfromE-UTRAN CRITICALITY reject TYPE NASSecurityParametersfromE-UTRAN PRESENCE conditional
+ -- This IE shall be present if HandoverType IE is set to value "LTEtoUTRAN" or "LTEtoGERAN" --}|
+ { ID id-E-RABSubjecttoDataForwardingList CRITICALITY ignore TYPE E-RABSubjecttoDataForwardingList PRESENCE optional}|
+ { ID id-E-RABtoReleaseListHOCmd CRITICALITY ignore TYPE E-RABList PRESENCE optional}|
+ { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory}|
+ { ID id-Target-ToSource-TransparentContainer-Secondary CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+E-RABSubjecttoDataForwardingList ::= E-RAB-IE-ContainerList { {E-RABDataForwardingItemIEs} }
+
+E-RABDataForwardingItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABDataForwardingItem CRITICALITY ignore TYPE E-RABDataForwardingItem PRESENCE mandatory },
+ ...
+}
+
+E-RABDataForwardingItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ dL-transportLayerAddress TransportLayerAddress OPTIONAL,
+ dL-gTP-TEID GTP-TEID OPTIONAL,
+ uL-TransportLayerAddress TransportLayerAddress OPTIONAL,
+ uL-GTP-TEID GTP-TEID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { E-RABDataForwardingItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABDataForwardingItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- Handover Preparation Failure
+--
+-- **************************************************************
+
+HandoverPreparationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverPreparationFailureIEs} },
+ ...
+}
+
+HandoverPreparationFailureIEs 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-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- HANDOVER RESOURCE ALLOCATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Handover Request
+--
+-- **************************************************************
+
+HandoverRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {HandoverRequestIEs} },
+ ...
+}
+
+HandoverRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE mandatory}|
+ { ID id-E-RABToBeSetupListHOReq CRITICALITY reject TYPE E-RABToBeSetupListHOReq PRESENCE mandatory}|
+ { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory}|
+ { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory}|
+ { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional}|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional}|
+ { ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE optional}|
+ { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional}|
+ { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory}|
+ { ID id-NASSecurityParameterstoE-UTRAN CRITICALITY reject TYPE NASSecurityParameterstoE-UTRAN PRESENCE conditional
+ -- This IE shall be present if the Handover Type IE is set to the value "UTRANtoLTE" or "GERANtoLTE" -- }|
+ { ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
+ { ID id-GUMMEI-ID CRITICALITY ignore TYPE GUMMEI PRESENCE optional}|
+ { ID id-MME-UE-S1AP-ID-2 CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE optional}|
+ { ID id-ManagementBasedMDTAllowed CRITICALITY ignore TYPE ManagementBasedMDTAllowed PRESENCE optional}|
+ { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional}|
+ { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional}|
+ { ID id-ExpectedUEBehaviour CRITICALITY ignore TYPE ExpectedUEBehaviour 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-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
+ { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional }|
+ { ID id-IAB-Authorized CRITICALITY reject TYPE IAB-Authorized 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}, ...
+}
+
+E-RABToBeSetupListHOReq ::= E-RAB-IE-ContainerList { {E-RABToBeSetupItemHOReqIEs} }
+
+E-RABToBeSetupItemHOReqIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeSetupItemHOReq CRITICALITY reject TYPE E-RABToBeSetupItemHOReq PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeSetupItemHOReq ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ e-RABlevelQosParameters E-RABLevelQoSParameters,
+ iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemHOReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- Handover Request Acknowledge
+--
+-- **************************************************************
+
+HandoverRequestAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {HandoverRequestAcknowledgeIEs} },
+ ...
+}
+
+HandoverRequestAcknowledgeIEs 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-E-RABAdmittedList CRITICALITY ignore TYPE E-RABAdmittedList PRESENCE mandatory}|
+ { ID id-E-RABFailedToSetupListHOReqAck CRITICALITY ignore TYPE E-RABFailedtoSetupListHOReqAck PRESENCE optional}|
+ { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory}|
+ { ID id-CSG-Id CRITICALITY ignore TYPE CSG-Id PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-CellAccessMode CRITICALITY ignore TYPE CellAccessMode PRESENCE optional}|
+ { ID id-CE-mode-B-SupportIndicator CRITICALITY ignore TYPE CE-mode-B-SupportIndicator PRESENCE optional},
+ ...
+}
+
+E-RABAdmittedList ::= E-RAB-IE-ContainerList { {E-RABAdmittedItemIEs} }
+
+E-RABAdmittedItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABAdmittedItem CRITICALITY ignore TYPE E-RABAdmittedItem PRESENCE mandatory },
+ ...
+}
+
+E-RABAdmittedItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ dL-transportLayerAddress TransportLayerAddress OPTIONAL,
+ dL-gTP-TEID GTP-TEID OPTIONAL,
+ uL-TransportLayerAddress TransportLayerAddress OPTIONAL,
+ uL-GTP-TEID GTP-TEID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABAdmittedItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABAdmittedItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+E-RABFailedtoSetupListHOReqAck ::= E-RAB-IE-ContainerList { {E-RABFailedtoSetupItemHOReqAckIEs} }
+
+E-RABFailedtoSetupItemHOReqAckIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABFailedtoSetupItemHOReqAck CRITICALITY ignore TYPE E-RABFailedToSetupItemHOReqAck PRESENCE mandatory },
+ ...
+}
+
+E-RABFailedToSetupItemHOReqAck ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { E-RABFailedToSetupItemHOReqAckExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABFailedToSetupItemHOReqAckExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Handover Failure
+--
+-- **************************************************************
+
+HandoverFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverFailureIEs} },
+ ...
+}
+
+HandoverFailureIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- HANDOVER NOTIFICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Handover Notify
+--
+-- **************************************************************
+
+HandoverNotify ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverNotifyIEs} },
+ ...
+}
+
+HandoverNotifyIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
+-- Extension for Release 11 to support BBAI --
+ { 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-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- PATH SWITCH REQUEST ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Path Switch Request
+--
+-- **************************************************************
+
+PathSwitchRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PathSwitchRequestIEs} },
+ ...
+}
+
+PathSwitchRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-E-RABToBeSwitchedDLList CRITICALITY reject TYPE E-RABToBeSwitchedDLList PRESENCE mandatory}|
+ { ID id-SourceMME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
+ { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory}|
+ { ID id-CSG-Id CRITICALITY ignore TYPE CSG-Id PRESENCE optional}|
+ { ID id-CellAccessMode CRITICALITY ignore TYPE CellAccessMode PRESENCE optional}|
+ { ID id-SourceMME-GUMMEI CRITICALITY ignore TYPE GUMMEI PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
+-- Extension for Release 11 to support BBAI --
+ { 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-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-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+
+E-RABToBeSwitchedDLList ::= E-RAB-IE-ContainerList { {E-RABToBeSwitchedDLItemIEs} }
+
+E-RABToBeSwitchedDLItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeSwitchedDLItem CRITICALITY reject TYPE E-RABToBeSwitchedDLItem PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeSwitchedDLItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { { E-RABToBeSwitchedDLItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABToBeSwitchedDLItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-SecurityIndication CRITICALITY ignore EXTENSION SecurityIndication PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- Path Switch Request Acknowledge
+--
+-- **************************************************************
+
+PathSwitchRequestAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PathSwitchRequestAcknowledgeIEs} },
+ ...
+}
+
+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-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-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-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE optional}|
+ { ID id-E-RABToBeUpdatedList CRITICALITY ignore TYPE E-RABToBeUpdatedList PRESENCE optional},
+ ...
+}
+
+E-RABToBeSwitchedULList ::= E-RAB-IE-ContainerList { {E-RABToBeSwitchedULItemIEs} }
+
+E-RABToBeSwitchedULItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeSwitchedULItem CRITICALITY ignore TYPE E-RABToBeSwitchedULItem PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeSwitchedULItem ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { { E-RABToBeSwitchedULItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+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 ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- Path Switch Request Failure
+--
+-- **************************************************************
+
+PathSwitchRequestFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { PathSwitchRequestFailureIEs} },
+ ...
+}
+
+PathSwitchRequestFailureIEs 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-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- HANDOVER CANCEL ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Handover Cancel
+--
+-- **************************************************************
+
+HandoverCancel ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverCancelIEs} },
+ ...
+}
+
+HandoverCancelIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- Handover Cancel Request Acknowledge
+--
+-- **************************************************************
+
+HandoverCancelAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverCancelAcknowledgeIEs} },
+ ...
+}
+
+HandoverCancelAcknowledgeIEs 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-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- HANDOVER SUCCESS ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Handover Success
+--
+-- **************************************************************
+
+HandoverSuccess ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { HandoverSuccessIEs} },
+ ...
+}
+
+HandoverSuccessIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- eNB EARLY STATUS TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- eNB Early Status Transfer
+--
+-- **************************************************************
+
+ENBEarlyStatusTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ENBEarlyStatusTransferIEs} },
+ ...
+}
+
+ENBEarlyStatusTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE ENB-EarlyStatusTransfer-TransparentContainer PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- MME EARLY STATUS TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MME Early Status Transfer
+--
+-- **************************************************************
+
+MMEEarlyStatusTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MMEEarlyStatusTransferIEs} },
+ ...
+}
+
+MMEEarlyStatusTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE ENB-EarlyStatusTransfer-TransparentContainer PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- E-RAB SETUP ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- E-RAB Setup Request
+--
+-- **************************************************************
+
+E-RABSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABSetupRequestIEs} },
+ ...
+}
+
+E-RABSetupRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-E-RABToBeSetupListBearerSUReq CRITICALITY reject TYPE E-RABToBeSetupListBearerSUReq PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeSetupListBearerSUReq ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABToBeSetupItemBearerSUReqIEs} }
+
+E-RABToBeSetupItemBearerSUReqIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeSetupItemBearerSUReq CRITICALITY reject TYPE E-RABToBeSetupItemBearerSUReq PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeSetupItemBearerSUReq ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ e-RABlevelQoSParameters E-RABLevelQoSParameters,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ nAS-PDU NAS-PDU,
+ iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemBearerSUReqExtIEs} } OPTIONAL,
+ ...
+}
+
+
+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-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- E-RAB Setup Response
+--
+-- **************************************************************
+
+E-RABSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABSetupResponseIEs} },
+ ...
+}
+
+E-RABSetupResponseIEs 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-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-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional },
+ ...
+}
+
+
+E-RABSetupListBearerSURes ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABSetupItemBearerSUResIEs} }
+
+E-RABSetupItemBearerSUResIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABSetupItemBearerSURes CRITICALITY ignore TYPE E-RABSetupItemBearerSURes PRESENCE mandatory },
+ ...
+}
+
+E-RABSetupItemBearerSURes ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { {E-RABSetupItemBearerSUResExtIEs} } OPTIONAL,
+ ...
+}
+
+
+E-RABSetupItemBearerSUResExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- E-RAB MODIFY ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- E-RAB Modify Request
+--
+-- **************************************************************
+
+E-RABModifyRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABModifyRequestIEs} },
+ ...
+}
+
+E-RABModifyRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-E-RABToBeModifiedListBearerModReq CRITICALITY reject TYPE E-RABToBeModifiedListBearerModReq PRESENCE mandatory }|
+ { ID id-SecondaryRATDataUsageRequest CRITICALITY ignore TYPE SecondaryRATDataUsageRequest PRESENCE optional },
+ ...
+}
+
+E-RABToBeModifiedListBearerModReq ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABToBeModifiedItemBearerModReqIEs} }
+
+E-RABToBeModifiedItemBearerModReqIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeModifiedItemBearerModReq CRITICALITY reject TYPE E-RABToBeModifiedItemBearerModReq PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeModifiedItemBearerModReq ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ e-RABLevelQoSParameters E-RABLevelQoSParameters,
+ nAS-PDU NAS-PDU,
+ iE-Extensions ProtocolExtensionContainer { {E-RABToBeModifyItemBearerModReqExtIEs} } OPTIONAL,
+ ...
+}
+
+
+E-RABToBeModifyItemBearerModReqExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ { ID id-TransportInformation CRITICALITY reject EXTENSION TransportInformation PRESENCE optional},
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- E-RAB Modify Response
+--
+-- **************************************************************
+
+E-RABModifyResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABModifyResponseIEs} },
+ ...
+}
+
+E-RABModifyResponseIEs 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-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-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional },
+ ...
+}
+
+
+E-RABModifyListBearerModRes ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABModifyItemBearerModResIEs} }
+
+E-RABModifyItemBearerModResIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABModifyItemBearerModRes CRITICALITY ignore TYPE E-RABModifyItemBearerModRes PRESENCE mandatory},
+ ...
+}
+
+E-RABModifyItemBearerModRes ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ iE-Extensions ProtocolExtensionContainer { {E-RABModifyItemBearerModResExtIEs} } OPTIONAL,
+ ...
+}
+
+
+E-RABModifyItemBearerModResExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+
+-- **************************************************************
+--
+-- E-RAB RELEASE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- E-RAB Release Command
+--
+-- **************************************************************
+
+E-RABReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABReleaseCommandIEs} },
+ ...
+}
+
+E-RABReleaseCommandIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-E-RABToBeReleasedList CRITICALITY ignore TYPE E-RABList PRESENCE mandatory }|
+ { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- E-RAB Release Response
+--
+-- **************************************************************
+
+E-RABReleaseResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { E-RABReleaseResponseIEs } },
+ ...
+}
+
+E-RABReleaseResponseIEs 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-E-RABReleaseListBearerRelComp CRITICALITY ignore TYPE E-RABReleaseListBearerRelComp PRESENCE optional }|
+ { ID id-E-RABFailedToReleaseList CRITICALITY ignore TYPE E-RABList PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+-- Extension for Release 12 to support User Location Information --
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }|
+ { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional },
+ ...
+}
+
+
+E-RABReleaseListBearerRelComp ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABReleaseItemBearerRelCompIEs} }
+
+E-RABReleaseItemBearerRelCompIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABReleaseItemBearerRelComp CRITICALITY ignore TYPE E-RABReleaseItemBearerRelComp PRESENCE mandatory },
+ ...
+}
+
+E-RABReleaseItemBearerRelComp ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ iE-Extensions ProtocolExtensionContainer { {E-RABReleaseItemBearerRelCompExtIEs} } OPTIONAL,
+ ...
+}
+
+
+E-RABReleaseItemBearerRelCompExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- E-RAB RELEASE INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- E-RAB Release Indication
+--
+-- **************************************************************
+
+E-RABReleaseIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABReleaseIndicationIEs} },
+ ...
+}
+
+E-RABReleaseIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-E-RABReleasedList CRITICALITY ignore TYPE E-RABList PRESENCE mandatory }|
+-- Extension for Release 12 to support User Location Information --
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }|
+ { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional },
+ ...
+}
+-- **************************************************************
+--
+-- INITIAL CONTEXT SETUP ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Initial Context Setup Request
+--
+-- **************************************************************
+
+InitialContextSetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {InitialContextSetupRequestIEs} },
+ ...
+}
+
+InitialContextSetupRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE mandatory}|
+ { ID id-E-RABToBeSetupListCtxtSUReq CRITICALITY reject TYPE E-RABToBeSetupListCtxtSUReq PRESENCE mandatory}|
+ { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory}|
+ { ID id-SecurityKey CRITICALITY reject TYPE SecurityKey PRESENCE mandatory}|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional}|
+ { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional}|
+ { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional}|
+ { ID id-SubscriberProfileIDforRFP CRITICALITY ignore TYPE SubscriberProfileIDforRFP PRESENCE optional}|
+ { ID id-CSFallbackIndicator CRITICALITY reject TYPE CSFallbackIndicator PRESENCE optional}|
+ { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
+ { ID id-RegisteredLAI CRITICALITY ignore TYPE LAI PRESENCE optional}|
+ { ID id-GUMMEI-ID CRITICALITY ignore TYPE GUMMEI PRESENCE optional}|
+ { ID id-MME-UE-S1AP-ID-2 CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE optional}|
+ { ID id-ManagementBasedMDTAllowed CRITICALITY ignore TYPE ManagementBasedMDTAllowed PRESENCE optional}|
+ { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional}|
+ { ID id-AdditionalCSFallbackIndicator CRITICALITY ignore TYPE AdditionalCSFallbackIndicator PRESENCE conditional}|
+ { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional}|
+ { ID id-ExpectedUEBehaviour CRITICALITY ignore TYPE ExpectedUEBehaviour 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-Subscription-Based-UE-DifferentiationInfo CRITICALITY ignore TYPE Subscription-Based-UE-DifferentiationInfo PRESENCE optional}|
+ { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional }|
+ { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized 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},
+ ...
+}
+
+
+
+
+E-RABToBeSetupListCtxtSUReq ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABToBeSetupItemCtxtSUReqIEs} }
+
+E-RABToBeSetupItemCtxtSUReqIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeSetupItemCtxtSUReq CRITICALITY reject TYPE E-RABToBeSetupItemCtxtSUReq PRESENCE mandatory },
+ ...
+}
+
+E-RABToBeSetupItemCtxtSUReq ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ e-RABlevelQoSParameters E-RABLevelQoSParameters,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ nAS-PDU NAS-PDU OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemCtxtSUReqExtIEs} } OPTIONAL,
+ ...
+}
+
+
+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-SecurityIndication CRITICALITY reject EXTENSION SecurityIndication PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Initial Context Setup Response
+--
+-- **************************************************************
+
+InitialContextSetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {InitialContextSetupResponseIEs} },
+ ...
+}
+
+InitialContextSetupResponseIEs 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-E-RABSetupListCtxtSURes CRITICALITY ignore TYPE E-RABSetupListCtxtSURes PRESENCE mandatory }|
+ { ID id-E-RABFailedToSetupListCtxtSURes CRITICALITY ignore TYPE E-RABList PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+E-RABSetupListCtxtSURes ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABSetupItemCtxtSUResIEs} }
+
+E-RABSetupItemCtxtSUResIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABSetupItemCtxtSURes CRITICALITY ignore TYPE E-RABSetupItemCtxtSURes PRESENCE mandatory },
+ ...
+}
+
+E-RABSetupItemCtxtSURes ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { {E-RABSetupItemCtxtSUResExtIEs} } OPTIONAL,
+ ...
+}
+
+
+E-RABSetupItemCtxtSUResExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Initial Context Setup Failure
+--
+-- **************************************************************
+
+InitialContextSetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {InitialContextSetupFailureIEs} },
+ ...
+}
+
+InitialContextSetupFailureIEs 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-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- PAGING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
+-- **************************************************************
+--
+-- Paging
+--
+-- **************************************************************
+
+Paging ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{PagingIEs}},
+ ...
+}
+
+PagingIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-UEIdentityIndexValue CRITICALITY ignore TYPE UEIdentityIndexValue PRESENCE mandatory}|
+ { ID id-UEPagingID CRITICALITY ignore TYPE UEPagingID PRESENCE mandatory}|
+ { ID id-pagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional}|
+ { ID id-CNDomain CRITICALITY ignore TYPE CNDomain PRESENCE mandatory}|
+ { ID id-TAIList CRITICALITY ignore TYPE TAIList PRESENCE mandatory}|
+ { 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 --
+ { 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}|
+ { ID id-NB-IoT-Paging-eDRXInformation CRITICALITY ignore TYPE NB-IoT-Paging-eDRXInformation PRESENCE optional}|
+ { ID id-NB-IoT-UEIdentityIndexValue CRITICALITY ignore TYPE NB-IoT-UEIdentityIndexValue PRESENCE optional}|
+ { ID id-EnhancedCoverageRestricted CRITICALITY ignore TYPE EnhancedCoverageRestricted PRESENCE optional}|
+ { 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-PagingCause CRITICALITY ignore TYPE PagingCause PRESENCE optional},
+ ...
+}
+
+TAIList::= SEQUENCE (SIZE(1.. maxnoofTAIs)) OF ProtocolIE-SingleContainer {{TAIItemIEs}}
+
+TAIItemIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-TAIItem CRITICALITY ignore TYPE TAIItem PRESENCE mandatory },
+ ...
+}
+
+TAIItem ::= SEQUENCE {
+ tAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {TAIItemExtIEs} } OPTIONAL,
+ ...
+}
+
+
+TAIItemExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- UE CONTEXT RELEASE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Context Release Request
+--
+-- **************************************************************
+
+UEContextReleaseRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UEContextReleaseRequest-IEs}},
+ ...
+}
+
+UEContextReleaseRequest-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-GWContextReleaseIndication CRITICALITY reject TYPE GWContextReleaseIndication PRESENCE optional }|
+ { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Context Release Command
+--
+-- **************************************************************
+
+UEContextReleaseCommand ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UEContextReleaseCommand-IEs}},
+ ...
+}
+
+UEContextReleaseCommand-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-UE-S1AP-IDs CRITICALITY reject TYPE UE-S1AP-IDs PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Context Release Complete
+--
+-- **************************************************************
+
+UEContextReleaseComplete ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UEContextReleaseComplete-IEs}},
+ ...
+}
+
+UEContextReleaseComplete-IEs 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-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+-- Extension for Release 12 to support User Location Information --
+ { 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 --
+ { 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 },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- UE CONTEXT MODIFICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Context Modification Request
+--
+-- **************************************************************
+
+UEContextModificationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextModificationRequestIEs} },
+ ...
+}
+
+UEContextModificationRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-SecurityKey CRITICALITY reject TYPE SecurityKey PRESENCE optional}|
+ { ID id-SubscriberProfileIDforRFP CRITICALITY ignore TYPE SubscriberProfileIDforRFP PRESENCE optional}|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY ignore TYPE UEAggregateMaximumBitrate PRESENCE optional}|
+ { ID id-CSFallbackIndicator CRITICALITY reject TYPE CSFallbackIndicator PRESENCE optional}|
+ { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
+ { ID id-RegisteredLAI CRITICALITY ignore TYPE LAI PRESENCE optional}|
+ { ID id-AdditionalCSFallbackIndicator CRITICALITY ignore TYPE AdditionalCSFallbackIndicator PRESENCE conditional}|
+ { ID id-ProSeAuthorized CRITICALITY ignore TYPE ProSeAuthorized PRESENCE optional}|
+ { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional}|
+ { ID id-SRVCCOperationNotPossible CRITICALITY ignore TYPE SRVCCOperationNotPossible PRESENCE optional}|
+ { ID id-V2XServicesAuthorized CRITICALITY ignore TYPE V2XServicesAuthorized PRESENCE optional}|
+ { ID id-UESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE UESidelinkAggregateMaximumBitrate PRESENCE optional}|
+ { ID id-NRUESecurityCapabilities CRITICALITY ignore TYPE NRUESecurityCapabilities PRESENCE optional}|
+ { ID id-AerialUEsubscriptionInformation CRITICALITY ignore TYPE AerialUEsubscriptionInformation PRESENCE optional}|
+ { ID id-AdditionalRRMPriorityIndex CRITICALITY ignore TYPE AdditionalRRMPriorityIndex PRESENCE optional}|
+ { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized 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},
+ ...
+}
+-- **************************************************************
+--
+-- UE Context Modification Response
+--
+-- **************************************************************
+
+UEContextModificationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextModificationResponseIEs} },
+ ...
+}
+
+UEContextModificationResponseIEs 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-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+-- **************************************************************
+--
+-- UE Context Modification Failure
+--
+-- **************************************************************
+
+UEContextModificationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextModificationFailureIEs} },
+ ...
+}
+
+UEContextModificationFailureIEs 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-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- UE RADIO CAPABILITY MATCH ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Radio Capability Match Request
+--
+-- **************************************************************
+
+UERadioCapabilityMatchRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UERadioCapabilityMatchRequestIEs} },
+ ...
+}
+
+UERadioCapabilityMatchRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }|
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Radio Capability Match Response
+--
+-- **************************************************************
+
+UERadioCapabilityMatchResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UERadioCapabilityMatchResponseIEs} },
+ ...
+}
+
+UERadioCapabilityMatchResponseIEs 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-VoiceSupportMatchIndicator CRITICALITY reject TYPE VoiceSupportMatchIndicator PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- NAS TRANSPORT ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- DOWNLINK NAS TRANSPORT
+--
+-- **************************************************************
+
+DownlinkNASTransport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{DownlinkNASTransport-IEs}},
+ ...
+}
+
+DownlinkNASTransport-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory}|
+ { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional}|
+ { 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-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-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-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- INITIAL UE MESSAGE
+--
+-- **************************************************************
+
+InitialUEMessage ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{InitialUEMessage-IEs}},
+ ...
+}
+
+InitialUEMessage-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory}|
+ { ID id-TAI CRITICALITY reject TYPE TAI PRESENCE mandatory}|
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ { ID id-RRC-Establishment-Cause CRITICALITY ignore TYPE RRC-Establishment-Cause PRESENCE mandatory}|
+ { ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE optional}|
+ { ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional}|
+ { ID id-GUMMEI-ID CRITICALITY reject TYPE GUMMEI PRESENCE optional}|
+ { ID id-CellAccessMode CRITICALITY reject TYPE CellAccessMode PRESENCE optional}|
+ { ID id-GW-TransportLayerAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE optional}|
+ { ID id-RelayNode-Indicator CRITICALITY reject TYPE RelayNode-Indicator PRESENCE optional}|
+ { ID id-GUMMEIType CRITICALITY ignore TYPE GUMMEIType PRESENCE optional}|
+-- Extension for Release 11 to support BBAI --
+ { ID id-Tunnel-Information-for-BBF CRITICALITY ignore TYPE TunnelInformation 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-MME-Group-ID CRITICALITY ignore TYPE MME-Group-ID PRESENCE optional}|
+ { ID id-UE-Usage-Type CRITICALITY ignore TYPE UE-Usage-Type PRESENCE optional}|
+ { ID id-CE-mode-B-SupportIndicator CRITICALITY ignore TYPE CE-mode-B-SupportIndicator PRESENCE optional}|
+ { ID id-DCN-ID CRITICALITY ignore TYPE DCN-ID PRESENCE optional}|
+ { 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-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- UPLINK NAS TRANSPORT
+--
+-- **************************************************************
+
+UplinkNASTransport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UplinkNASTransport-IEs}},
+ ...
+}
+
+UplinkNASTransport-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory}|
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
+ { 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-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+-- **************************************************************
+--
+-- NAS NON DELIVERY INDICATION
+--
+-- **************************************************************
+
+NASNonDeliveryIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{NASNonDeliveryIndication-IEs}},
+ ...
+}
+
+NASNonDeliveryIndication-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- REROUTE NAS REQUEST
+--
+-- **************************************************************
+
+RerouteNASRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RerouteNASRequest-IEs}},
+ ...
+}
+
+-- WS modification, add a definition for S1 Message
+S1-Message ::= OCTET STRING
+
+RerouteNASRequest-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE optional}|
+-- WS modification, add a definition for S1 Message
+-- { ID id-S1-Message CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory}|
+ { ID id-S1-Message CRITICALITY reject TYPE S1-Message PRESENCE mandatory}|
+ { ID id-MME-Group-ID CRITICALITY reject TYPE MME-Group-ID PRESENCE mandatory}|
+ { ID id-Additional-GUTI CRITICALITY ignore TYPE Additional-GUTI PRESENCE optional}|
+ { ID id-UE-Usage-Type CRITICALITY ignore TYPE UE-Usage-Type PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- NAS DELIVERY INDICATION
+--
+-- **************************************************************
+
+NASDeliveryIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { NASDeliveryIndicationIEs} },
+ ...
+}
+
+NASDeliveryIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- RESET ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Reset
+--
+-- **************************************************************
+
+Reset ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ResetIEs} },
+ ...
+}
+
+ResetIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-ResetType CRITICALITY reject TYPE ResetType PRESENCE mandatory },
+ ...
+}
+
+ResetType ::= CHOICE {
+ s1-Interface ResetAll,
+ partOfS1-Interface UE-associatedLogicalS1-ConnectionListRes,
+ ...
+}
+
+
+
+ResetAll ::= ENUMERATED {
+ reset-all,
+ ...
+}
+
+UE-associatedLogicalS1-ConnectionListRes ::= SEQUENCE (SIZE(1.. maxnoofIndividualS1ConnectionsToReset)) OF ProtocolIE-SingleContainer { { UE-associatedLogicalS1-ConnectionItemRes } }
+
+UE-associatedLogicalS1-ConnectionItemRes S1AP-PROTOCOL-IES ::= {
+ { ID id-UE-associatedLogicalS1-ConnectionItem CRITICALITY reject TYPE UE-associatedLogicalS1-ConnectionItem PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Reset Acknowledge
+--
+-- **************************************************************
+
+ResetAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ResetAcknowledgeIEs} },
+ ...
+}
+
+ResetAcknowledgeIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-UE-associatedLogicalS1-ConnectionListResAck CRITICALITY ignore TYPE UE-associatedLogicalS1-ConnectionListResAck PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+UE-associatedLogicalS1-ConnectionListResAck ::= SEQUENCE (SIZE(1.. maxnoofIndividualS1ConnectionsToReset)) OF ProtocolIE-SingleContainer { { UE-associatedLogicalS1-ConnectionItemResAck } }
+
+UE-associatedLogicalS1-ConnectionItemResAck S1AP-PROTOCOL-IES ::= {
+ { ID id-UE-associatedLogicalS1-ConnectionItem CRITICALITY ignore TYPE UE-associatedLogicalS1-ConnectionItem PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- ERROR INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Error Indication
+--
+-- **************************************************************
+
+ErrorIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ErrorIndicationIEs}},
+ ...
+}
+
+ErrorIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE optional }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE optional }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }|
+ { ID id-S-TMSI CRITICALITY ignore TYPE S-TMSI PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- S1 SETUP ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- S1 Setup Request
+--
+-- **************************************************************
+
+S1SetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {S1SetupRequestIEs} },
+ ...
+}
+
+S1SetupRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Global-ENB-ID CRITICALITY reject TYPE Global-ENB-ID PRESENCE mandatory}|
+ { ID id-eNBname CRITICALITY ignore TYPE ENBname PRESENCE optional}|
+ { ID id-SupportedTAs CRITICALITY reject TYPE SupportedTAs PRESENCE mandatory}|
+ { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory}|
+ { ID id-CSG-IdList CRITICALITY reject TYPE CSG-IdList PRESENCE optional}|
+ { ID id-UE-RetentionInformation CRITICALITY ignore TYPE UE-RetentionInformation PRESENCE optional}|
+ { ID id-NB-IoT-DefaultPagingDRX CRITICALITY ignore TYPE NB-IoT-DefaultPagingDRX PRESENCE optional}|
+ { ID id-ConnectedengNBList CRITICALITY ignore TYPE ConnectedengNBList PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- S1 Setup Response
+--
+-- **************************************************************
+
+S1SetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {S1SetupResponseIEs} },
+ ...
+}
+
+
+S1SetupResponseIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MMEname CRITICALITY ignore TYPE MMEname PRESENCE optional}|
+ { ID id-ServedGUMMEIs CRITICALITY reject TYPE ServedGUMMEIs PRESENCE mandatory}|
+ { ID id-RelativeMMECapacity CRITICALITY ignore TYPE RelativeMMECapacity PRESENCE mandatory}|
+ { ID id-MMERelaySupportIndicator CRITICALITY ignore TYPE MMERelaySupportIndicator PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-UE-RetentionInformation CRITICALITY ignore TYPE UE-RetentionInformation PRESENCE optional}|
+ { ID id-ServedDCNs CRITICALITY ignore TYPE ServedDCNs PRESENCE optional}|
+ { ID id-IAB-Supported CRITICALITY ignore TYPE IAB-Supported PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- S1 Setup Failure
+--
+-- **************************************************************
+
+S1SetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {S1SetupFailureIEs} },
+ ...
+}
+
+S1SetupFailureIEs S1AP-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 },
+ ...
+}
+
+-- **************************************************************
+--
+-- ENB CONFIGURATION UPDATE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- eNB Configuration Update
+--
+-- **************************************************************
+
+ENBConfigurationUpdate ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ENBConfigurationUpdateIEs} },
+ ...
+}
+
+ENBConfigurationUpdateIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-eNBname CRITICALITY ignore TYPE ENBname PRESENCE optional}|
+ { ID id-SupportedTAs CRITICALITY reject TYPE SupportedTAs PRESENCE optional}|
+ { ID id-CSG-IdList CRITICALITY reject TYPE CSG-IdList PRESENCE optional}|
+ { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional}|
+ { ID id-NB-IoT-DefaultPagingDRX CRITICALITY ignore TYPE NB-IoT-DefaultPagingDRX PRESENCE optional}|
+ { ID id-ConnectedengNBToAddList CRITICALITY ignore TYPE ConnectedengNBList PRESENCE optional}|
+ { ID id-ConnectedengNBToRemoveList CRITICALITY ignore TYPE ConnectedengNBList PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- eNB Configuration Update Acknowledge
+--
+-- **************************************************************
+
+ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ENBConfigurationUpdateAcknowledgeIEs} },
+ ...
+}
+
+
+ENBConfigurationUpdateAcknowledgeIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- eNB Configuration Update Failure
+--
+-- **************************************************************
+
+ENBConfigurationUpdateFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ENBConfigurationUpdateFailureIEs} },
+ ...
+}
+
+ENBConfigurationUpdateFailureIEs S1AP-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 },
+...
+}
+
+
+-- **************************************************************
+--
+-- MME CONFIGURATION UPDATE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MME Configuration Update
+--
+-- **************************************************************
+
+MMEConfigurationUpdate ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MMEConfigurationUpdateIEs} },
+ ...
+}
+
+MMEConfigurationUpdateIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MMEname CRITICALITY ignore TYPE MMEname PRESENCE optional }|
+ { ID id-ServedGUMMEIs CRITICALITY reject TYPE ServedGUMMEIs PRESENCE optional }|
+ { ID id-RelativeMMECapacity CRITICALITY reject TYPE RelativeMMECapacity PRESENCE optional }|
+ { ID id-ServedDCNs CRITICALITY ignore TYPE ServedDCNs PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- MME Configuration Update Acknowledge
+--
+-- **************************************************************
+
+MMEConfigurationUpdateAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MMEConfigurationUpdateAcknowledgeIEs} },
+ ...
+}
+
+
+MMEConfigurationUpdateAcknowledgeIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MME Configuration Update Failure
+--
+-- **************************************************************
+
+MMEConfigurationUpdateFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MMEConfigurationUpdateFailureIEs} },
+ ...
+}
+
+MMEConfigurationUpdateFailureIEs S1AP-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 },
+ ...
+}
+
+-- **************************************************************
+--
+-- DOWNLINK S1 CDMA2000 TUNNELLING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Downlink S1 CDMA2000 Tunnelling
+--
+-- **************************************************************
+
+DownlinkS1cdma2000tunnelling ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {DownlinkS1cdma2000tunnellingIEs} },
+ ...
+}
+
+DownlinkS1cdma2000tunnellingIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-E-RABSubjecttoDataForwardingList CRITICALITY ignore TYPE E-RABSubjecttoDataForwardingList PRESENCE optional }|
+ { ID id-cdma2000HOStatus CRITICALITY ignore TYPE Cdma2000HOStatus PRESENCE optional }|
+ { ID id-cdma2000RATType CRITICALITY reject TYPE Cdma2000RATType PRESENCE mandatory }|
+ { ID id-cdma2000PDU CRITICALITY reject TYPE Cdma2000PDU PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- UPLINK S1 CDMA2000 TUNNELLING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Uplink S1 CDMA2000 Tunnelling
+--
+-- **************************************************************
+
+UplinkS1cdma2000tunnelling ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {UplinkS1cdma2000tunnellingIEs} },
+ ...
+}
+
+UplinkS1cdma2000tunnellingIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-cdma2000RATType CRITICALITY reject TYPE Cdma2000RATType PRESENCE mandatory }|
+ { ID id-cdma2000SectorID CRITICALITY reject TYPE Cdma2000SectorID PRESENCE mandatory }|
+ { ID id-cdma2000HORequiredIndication CRITICALITY ignore TYPE Cdma2000HORequiredIndication PRESENCE optional }|
+ { ID id-cdma2000OneXSRVCCInfo CRITICALITY reject TYPE Cdma2000OneXSRVCCInfo PRESENCE optional }|
+ { ID id-cdma2000OneXRAND CRITICALITY reject TYPE Cdma2000OneXRAND PRESENCE optional }|
+ { ID id-cdma2000PDU CRITICALITY reject TYPE Cdma2000PDU PRESENCE mandatory }|
+ { ID id-EUTRANRoundTripDelayEstimationInfo CRITICALITY ignore TYPE EUTRANRoundTripDelayEstimationInfo PRESENCE optional },
+ -- Extension for Release 9 to assist target HRPD access with the acquisition of the UE --
+ ...
+}
+
+
+-- **************************************************************
+--
+-- UE CAPABILITY INFO INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Capability Info Indication
+--
+-- **************************************************************
+
+UECapabilityInfoIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UECapabilityInfoIndicationIEs} },
+ ...
+}
+
+UECapabilityInfoIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE mandatory}|
+ { 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-UERadioCapabilityForPaging-NR-Format CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- eNB STATUS TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- eNB Status Transfer
+--
+-- **************************************************************
+
+ENBStatusTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ENBStatusTransferIEs} },
+ ...
+}
+
+ENBStatusTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-StatusTransfer-TransparentContainer CRITICALITY reject TYPE ENB-StatusTransfer-TransparentContainer PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MME STATUS TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MME Status Transfer
+--
+-- **************************************************************
+
+MMEStatusTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {MMEStatusTransferIEs} },
+ ...
+}
+
+MMEStatusTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-StatusTransfer-TransparentContainer CRITICALITY reject TYPE ENB-StatusTransfer-TransparentContainer PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- TRACE ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- Trace Start
+--
+-- **************************************************************
+
+TraceStart ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {TraceStartIEs} },
+ ...
+}
+
+TraceStartIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- Trace Failure Indication
+--
+-- **************************************************************
+
+TraceFailureIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {TraceFailureIndicationIEs} },
+ ...
+}
+
+TraceFailureIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-E-UTRAN-Trace-ID CRITICALITY ignore TYPE E-UTRAN-Trace-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- DEACTIVATE TRACE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Deactivate Trace
+--
+-- **************************************************************
+
+DeactivateTrace ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { DeactivateTraceIEs} },
+ ...
+}
+
+DeactivateTraceIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-E-UTRAN-Trace-ID CRITICALITY ignore TYPE E-UTRAN-Trace-ID PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- CELL TRAFFIC TRACE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Cell Traffic Trace
+--
+-- **************************************************************
+
+CellTrafficTrace ::= SEQUENCE {
+protocolIEs ProtocolIE-Container { { CellTrafficTraceIEs } },
+...
+}
+
+CellTrafficTraceIEs S1AP-PROTOCOL-IES ::= {
+ {ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ {ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ {ID id-E-UTRAN-Trace-ID CRITICALITY ignore TYPE E-UTRAN-Trace-ID PRESENCE mandatory }|
+ {ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory }|
+ {ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }|
+ {ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- LOCATION ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Location Reporting Control
+--
+-- **************************************************************
+
+LocationReportingControl ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { LocationReportingControlIEs} },
+ ...
+}
+
+LocationReportingControlIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- Location Report Failure Indication
+--
+-- **************************************************************
+
+LocationReportingFailureIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { LocationReportingFailureIndicationIEs} },
+ ...
+}
+
+LocationReportingFailureIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- Location Report
+--
+-- **************************************************************
+
+LocationReport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { LocationReportIEs} },
+ ...
+}
+
+LocationReportIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { 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-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- OVERLOAD ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Overload Start
+--
+-- **************************************************************
+
+OverloadStart ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {OverloadStartIEs} },
+ ...
+}
+
+OverloadStartIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-OverloadResponse CRITICALITY reject TYPE OverloadResponse PRESENCE mandatory }|
+ { ID id-GUMMEIList CRITICALITY ignore TYPE GUMMEIList PRESENCE optional }|
+ { ID id-TrafficLoadReductionIndication CRITICALITY ignore TYPE TrafficLoadReductionIndication PRESENCE optional },
+ ...
+}
+-- **************************************************************
+--
+-- Overload Stop
+--
+-- **************************************************************
+
+OverloadStop ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {OverloadStopIEs} },
+ ...
+}
+
+OverloadStopIEs S1AP-PROTOCOL-IES ::= {
+{ ID id-GUMMEIList CRITICALITY ignore TYPE GUMMEIList PRESENCE optional },
+ ...
+}
+-- **************************************************************
+--
+-- WRITE-REPLACE WARNING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Write-Replace Warning Request
+--
+-- **************************************************************
+
+
+WriteReplaceWarningRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {WriteReplaceWarningRequestIEs} },
+ ...
+}
+
+WriteReplaceWarningRequestIEs S1AP-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 }|
+ { ID id-RepetitionPeriod CRITICALITY reject TYPE RepetitionPeriod PRESENCE mandatory }|
+ { ID id-ExtendedRepetitionPeriod CRITICALITY reject TYPE ExtendedRepetitionPeriod PRESENCE optional }|
+ { ID id-NumberofBroadcastRequest CRITICALITY reject TYPE NumberofBroadcastRequest PRESENCE mandatory }|
+ { ID id-WarningType CRITICALITY ignore TYPE WarningType PRESENCE optional }|
+ { ID id-WarningSecurityInfo CRITICALITY ignore TYPE WarningSecurityInfo PRESENCE optional }|
+ { ID id-DataCodingScheme CRITICALITY ignore TYPE DataCodingScheme PRESENCE optional }|
+ { ID id-WarningMessageContents CRITICALITY ignore TYPE WarningMessageContents PRESENCE optional }|
+ { ID id-ConcurrentWarningMessageIndicator CRITICALITY reject TYPE ConcurrentWarningMessageIndicator PRESENCE optional }|
+ { ID id-WarningAreaCoordinates CRITICALITY ignore TYPE WarningAreaCoordinates PRESENCE optional },
+ ...
+}
+-- **************************************************************
+--
+-- Write-Replace Warning Response
+--
+-- **************************************************************
+
+WriteReplaceWarningResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {WriteReplaceWarningResponseIEs} },
+ ...
+}
+
+WriteReplaceWarningResponseIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }|
+ { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }|
+ { ID id-BroadcastCompletedAreaList CRITICALITY ignore TYPE BroadcastCompletedAreaList PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- eNB DIRECT INFORMATION TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- eNB Direct Information Transfer
+--
+-- **************************************************************
+
+ENBDirectInformationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ ENBDirectInformationTransferIEs}},
+ ...
+}
+
+ENBDirectInformationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Inter-SystemInformationTransferTypeEDT CRITICALITY reject TYPE Inter-SystemInformationTransferType PRESENCE mandatory },
+ ...
+}
+
+Inter-SystemInformationTransferType ::= CHOICE {
+ rIMTransfer RIMTransfer,
+ ...
+}
+
+-- **************************************************************
+--
+-- MME DIRECT INFORMATION TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MME Direct Information Transfer
+--
+-- **************************************************************
+
+MMEDirectInformationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MMEDirectInformationTransferIEs}},
+ ...
+}
+
+MMEDirectInformationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Inter-SystemInformationTransferTypeMDT CRITICALITY reject TYPE Inter-SystemInformationTransferType PRESENCE mandatory },
+ ...
+}
+-- **************************************************************
+--
+-- eNB CONFIGURATION TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- eNB Configuration Transfer
+--
+-- **************************************************************
+
+ENBConfigurationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ ENBConfigurationTransferIEs}},
+ ...
+}
+
+ENBConfigurationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-SONConfigurationTransferECT CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }|
+ { ID id-EN-DCSONConfigurationTransfer-ECT CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }|
+ { ID id-IntersystemSONConfigurationTransferECT CRITICALITY ignore TYPE IntersystemSONConfigurationTransfer PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- MME CONFIGURATION TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MME Configuration Transfer
+--
+-- **************************************************************
+
+MMEConfigurationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MMEConfigurationTransferIEs}},
+ ...
+}
+
+MMEConfigurationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-SONConfigurationTransferMCT CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }|
+ { ID id-EN-DCSONConfigurationTransfer-MCT CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }|
+ { ID id-IntersystemSONConfigurationTransferMCT CRITICALITY ignore TYPE IntersystemSONConfigurationTransfer PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- PRIVATE MESSAGE ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Private Message
+--
+-- **************************************************************
+
+PrivateMessage ::= SEQUENCE {
+ privateIEs PrivateIE-Container {{PrivateMessageIEs}},
+ ...
+}
+
+PrivateMessageIEs S1AP-PRIVATE-IES ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- KILL PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- Kill Request
+--
+-- **************************************************************
+
+
+KillRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {KillRequestIEs} },
+ ...
+}
+
+KillRequestIEs S1AP-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}|
+ { ID id-KillAllWarningMessages CRITICALITY reject TYPE KillAllWarningMessages PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- Kill Response
+--
+-- **************************************************************
+
+KillResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {KillResponseIEs} },
+ ...
+}
+
+KillResponseIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }|
+ { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }|
+ { ID id-BroadcastCancelledAreaList CRITICALITY ignore TYPE BroadcastCancelledAreaList PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- PWS RESTART INDICATION PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- PWS Restart Indication
+--
+-- **************************************************************
+
+PWSRestartIndication::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PWSRestartIndicationIEs}},
+ ...
+}
+
+PWSRestartIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-ECGIListForRestart CRITICALITY reject TYPE ECGIListForRestart PRESENCE mandatory}|
+ { ID id-Global-ENB-ID CRITICALITY reject TYPE Global-ENB-ID PRESENCE mandatory}|
+ { ID id-TAIListForRestart CRITICALITY reject TYPE TAIListForRestart PRESENCE mandatory}|
+ { ID id-EmergencyAreaIDListForRestart CRITICALITY reject TYPE EmergencyAreaIDListForRestart PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- PWS Failure Indication
+--
+-- **************************************************************
+
+PWSFailureIndication::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ PWSFailureIndicationIEs}},
+ ...
+}
+
+PWSFailureIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-PWSfailedECGIList CRITICALITY reject TYPE PWSfailedECGIList PRESENCE mandatory}|
+ { ID id-Global-ENB-ID CRITICALITY reject TYPE Global-ENB-ID PRESENCE mandatory},
+ ...
+}
+
+-- **************************************************************
+--
+-- LPPA TRANSPORT ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- DOWNLINK UE ASSOCIATED LPPA TRANSPORT
+--
+-- **************************************************************
+
+DownlinkUEAssociatedLPPaTransport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{DownlinkUEAssociatedLPPaTransport-IEs}},
+ ...
+}
+
+DownlinkUEAssociatedLPPaTransport-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-Routing-ID CRITICALITY reject TYPE Routing-ID PRESENCE mandatory }|
+ { ID id-LPPa-PDU CRITICALITY reject TYPE LPPa-PDU PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- UPLINK UE ASSOCIATED LPPA TRANSPORT
+--
+-- **************************************************************
+
+UplinkUEAssociatedLPPaTransport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UplinkUEAssociatedLPPaTransport-IEs}},
+ ...
+}
+
+UplinkUEAssociatedLPPaTransport-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-Routing-ID CRITICALITY reject TYPE Routing-ID PRESENCE mandatory }|
+ { ID id-LPPa-PDU CRITICALITY reject TYPE LPPa-PDU PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- DOWNLINK NON UE ASSOCIATED LPPA TRANSPORT
+--
+-- **************************************************************
+
+DownlinkNonUEAssociatedLPPaTransport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{DownlinkNonUEAssociatedLPPaTransport-IEs}},
+ ...
+}
+
+DownlinkNonUEAssociatedLPPaTransport-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Routing-ID CRITICALITY reject TYPE Routing-ID PRESENCE mandatory }|
+ { ID id-LPPa-PDU CRITICALITY reject TYPE LPPa-PDU PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- UPLINK NON UE ASSOCIATED LPPA TRANSPORT
+--
+-- **************************************************************
+
+UplinkNonUEAssociatedLPPaTransport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UplinkNonUEAssociatedLPPaTransport-IEs}},
+ ...
+}
+
+UplinkNonUEAssociatedLPPaTransport-IEs S1AP-PROTOCOL-IES ::= {
+ { ID id-Routing-ID CRITICALITY reject TYPE Routing-ID PRESENCE mandatory }|
+ { ID id-LPPa-PDU CRITICALITY reject TYPE LPPa-PDU PRESENCE mandatory },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- E-RAB MODIFICATION INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- E-RAB Modification Indication
+--
+-- **************************************************************
+
+E-RABModificationIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { E-RABModificationIndicationIEs} },
+ ...
+}
+
+E-RABModificationIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-E-RABToBeModifiedListBearerModInd CRITICALITY reject TYPE E-RABToBeModifiedListBearerModInd PRESENCE mandatory}|
+ { ID id-E-RABNotToBeModifiedListBearerModInd CRITICALITY reject TYPE E-RABNotToBeModifiedListBearerModInd PRESENCE optional}|
+ { ID id-CSGMembershipInfo CRITICALITY reject TYPE CSGMembershipInfo PRESENCE optional}|
+-- Extension for Release 11 to support BBAI --
+ { ID id-Tunnel-Information-for-BBF CRITICALITY ignore TYPE TunnelInformation PRESENCE optional}|
+ { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional }|
+{ ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional },
+ ...
+}
+
+E-RABToBeModifiedListBearerModInd ::= E-RAB-IE-ContainerList { {E-RABToBeModifiedItemBearerModIndIEs} }
+
+E-RABToBeModifiedItemBearerModIndIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABToBeModifiedItemBearerModInd CRITICALITY reject TYPE E-RABToBeModifiedItemBearerModInd PRESENCE mandatory},
+ ...
+}
+
+E-RABToBeModifiedItemBearerModInd ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ dL-GTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { { E-RABToBeModifiedItemBearerModInd-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABToBeModifiedItemBearerModInd-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+E-RABNotToBeModifiedListBearerModInd ::= E-RAB-IE-ContainerList { {E-RABNotToBeModifiedItemBearerModIndIEs} }
+
+E-RABNotToBeModifiedItemBearerModIndIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABNotToBeModifiedItemBearerModInd CRITICALITY reject TYPE E-RABNotToBeModifiedItemBearerModInd PRESENCE mandatory},
+ ...
+}
+
+E-RABNotToBeModifiedItemBearerModInd ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ transportLayerAddress TransportLayerAddress,
+ dL-GTP-TEID GTP-TEID,
+ iE-Extensions ProtocolExtensionContainer { { E-RABNotToBeModifiedItemBearerModInd-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABNotToBeModifiedItemBearerModInd-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CSGMembershipInfo ::= SEQUENCE {
+ cSGMembershipStatus CSGMembershipStatus,
+ cSG-Id CSG-Id,
+ cellAccessMode CellAccessMode OPTIONAL,
+ pLMNidentity PLMNidentity OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { CSGMembershipInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CSGMembershipInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- E-RAB Modification Confirm
+--
+-- **************************************************************
+
+E-RABModificationConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {E-RABModificationConfirmIEs} },
+ ...
+}
+
+E-RABModificationConfirmIEs 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-E-RABModifyListBearerModConf CRITICALITY ignore TYPE E-RABModifyListBearerModConf PRESENCE optional}|
+ { ID id-E-RABFailedToModifyListBearerModConf CRITICALITY ignore TYPE E-RABList PRESENCE optional}|
+ { ID id-E-RABToBeReleasedListBearerModConf CRITICALITY ignore TYPE E-RABList PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional},
+ ...
+}
+
+E-RABModifyListBearerModConf ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABModifyItemBearerModConfIEs} }
+
+E-RABModifyItemBearerModConfIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABModifyItemBearerModConf CRITICALITY ignore TYPE E-RABModifyItemBearerModConf PRESENCE mandatory},
+ ...
+}
+
+E-RABModifyItemBearerModConf ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ iE-Extensions ProtocolExtensionContainer { {E-RABModifyItemBearerModConfExtIEs} } OPTIONAL,
+ ...
+}
+
+
+E-RABModifyItemBearerModConfExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- **************************************************************
+--
+-- UE CONTEXT MODIFICATION INDICATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Context Modification Indication
+--
+-- **************************************************************
+
+UEContextModificationIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextModificationIndicationIEs} },
+ ...
+}
+
+UEContextModificationIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-CSGMembershipInfo CRITICALITY reject TYPE CSGMembershipInfo PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- UE Context Modification Confirm
+--
+-- **************************************************************
+
+UEContextModificationConfirm ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {UEContextModificationConfirmIEs} },
+ ...
+}
+
+UEContextModificationConfirmIEs 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-CSGMembershipStatus CRITICALITY ignore TYPE CSGMembershipStatus PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- UE CONTEXT SUSPEND ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Context Suspend Request
+--
+-- **************************************************************
+
+UEContextSuspendRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextSuspendRequestIEs} },
+ ...
+}
+
+UEContextSuspendRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-InformationOnRecommendedCellsAndENBsForPaging CRITICALITY ignore TYPE InformationOnRecommendedCellsAndENBsForPaging PRESENCE optional}|
+ { ID id-CellIdentifierAndCELevelForCECapableUEs CRITICALITY ignore TYPE CellIdentifierAndCELevelForCECapableUEs PRESENCE optional}|
+ { ID id-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE optional }|
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }|
+ { ID id-TimeSinceSecondaryNodeRelease CRITICALITY ignore TYPE TimeSinceSecondaryNodeRelease PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Context Suspend Response
+--
+-- **************************************************************
+
+UEContextSuspendResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {UEContextSuspendResponseIEs} },
+ ...
+}
+
+UEContextSuspendResponseIEs 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-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- UE CONTEXT RESUME ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Context Resume Request
+--
+-- **************************************************************
+
+UEContextResumeRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextResumeRequestIEs} },
+ ...
+}
+
+UEContextResumeRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-E-RABFailedToResumeListResumeReq CRITICALITY reject TYPE E-RABFailedToResumeListResumeReq PRESENCE optional}|
+ { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRC-Establishment-Cause PRESENCE optional},
+ ...
+}
+
+E-RABFailedToResumeListResumeReq ::= E-RAB-IE-ContainerList { {E-RABFailedToResumeItemResumeReqIEs} }
+
+E-RABFailedToResumeItemResumeReqIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABFailedToResumeItemResumeReq CRITICALITY reject TYPE E-RABFailedToResumeItemResumeReq PRESENCE mandatory},
+ ...
+}
+
+E-RABFailedToResumeItemResumeReq ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { E-RABFailedToResumeItemResumeReq-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABFailedToResumeItemResumeReq-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Context Resume Response
+--
+-- **************************************************************
+
+UEContextResumeResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextResumeResponseIEs} },
+ ...
+}
+
+UEContextResumeResponseIEs 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-E-RABFailedToResumeListResumeRes CRITICALITY reject TYPE E-RABFailedToResumeListResumeRes PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE optional}|
+ { ID id-PendingDataIndication CRITICALITY ignore TYPE PendingDataIndication PRESENCE optional},
+ ...
+}
+
+E-RABFailedToResumeListResumeRes ::= E-RAB-IE-ContainerList { {E-RABFailedToResumeItemResumeResIEs} }
+
+E-RABFailedToResumeItemResumeResIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-E-RABFailedToResumeItemResumeRes CRITICALITY reject TYPE E-RABFailedToResumeItemResumeRes PRESENCE mandatory},
+ ...
+}
+
+E-RABFailedToResumeItemResumeRes ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { E-RABFailedToResumeItemResumeRes-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABFailedToResumeItemResumeRes-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Context Resume Failure
+--
+-- **************************************************************
+
+UEContextResumeFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEContextResumeFailureIEs} },
+ ...
+}
+
+UEContextResumeFailureIEs 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-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- Connection Establishment Indication
+--
+-- **************************************************************
+
+ConnectionEstablishmentIndication::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { {ConnectionEstablishmentIndicationIEs} },
+ ...
+}
+
+ConnectionEstablishmentIndicationIEs 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-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }|
+ { ID id-EnhancedCoverageRestricted CRITICALITY ignore TYPE EnhancedCoverageRestricted PRESENCE optional }|
+ { ID id-DL-CP-SecurityInformation CRITICALITY ignore TYPE DL-CP-SecurityInformation PRESENCE optional }|
+ { ID id-CE-ModeBRestricted CRITICALITY ignore TYPE CE-ModeBRestricted PRESENCE optional}|
+ { 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-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- Retrieve UE Information
+--
+-- **************************************************************
+
+RetrieveUEInformation ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { RetrieveUEInformationIEs} },
+ ...
+}
+
+RetrieveUEInformationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE mandatory},
+...
+
+}
+
+
+-- **************************************************************
+
+-- UE Information Transfer
+--
+-- **************************************************************
+UEInformationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UEInformationTransferIEs} },
+ ...
+}
+
+UEInformationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE mandatory}|
+ { 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-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- eNB CP Relocation Indication
+--
+-- **************************************************************
+
+ENBCPRelocationIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { ENBCPRelocationIndicationIEs} },
+ ...
+}
+
+ENBCPRelocationIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory}|
+ { 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-LTE-NTN-TAI-Information CRITICALITY ignore TYPE LTE-NTN-TAI-Information PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MME CP Relocation Indication
+--
+-- **************************************************************
+
+MMECPRelocationIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { MMECPRelocationIndicationIEs} },
+ ...
+}
+
+MMECPRelocationIndicationIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory}|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Secondary RAT Data Usage Report
+--
+-- **************************************************************
+
+SecondaryRATDataUsageReport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { SecondaryRATDataUsageReportIEs} },
+ ...
+}
+
+SecondaryRATDataUsageReportIEs 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-SecondaryRATDataUsageReportList CRITICALITY ignore TYPE SecondaryRATDataUsageReportList PRESENCE mandatory}|
+ { ID id-HandoverFlag CRITICALITY ignore TYPE HandoverFlag PRESENCE optional}|
+ { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional}|
+ { ID id-TimeSinceSecondaryNodeRelease CRITICALITY ignore TYPE TimeSinceSecondaryNodeRelease PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- UE RADIO CAPABILITY ID MAPPING PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- UE Radio Capability ID Mapping Request
+--
+-- **************************************************************
+
+UERadioCapabilityIDMappingRequest::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UERadioCapabilityIDMappingRequestIEs} },
+ ...
+}
+
+UERadioCapabilityIDMappingRequestIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- UE Radio Capability ID Mapping Response
+--
+-- **************************************************************
+
+UERadioCapabilityIDMappingResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container { { UERadioCapabilityIDMappingResponseIEs} },
+ ...
+}
+
+UERadioCapabilityIDMappingResponseIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE mandatory }|
+ { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+END
diff --git a/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn b/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn
new file mode 100644
index 00000000..f3956daa
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-PDU-Descriptions.asn
@@ -0,0 +1,779 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- 9.3.2 Elementary Procedure Definitions
+-- **************************************************************
+--
+-- Elementary Procedure definitions
+--
+-- **************************************************************
+
+S1AP-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-PDU-Descriptions (0)}
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+ Criticality,
+ ProcedureCode
+FROM S1AP-CommonDataTypes
+
+ CellTrafficTrace,
+ DeactivateTrace,
+ DownlinkUEAssociatedLPPaTransport,
+ DownlinkNASTransport,
+ DownlinkNonUEAssociatedLPPaTransport,
+ DownlinkS1cdma2000tunnelling,
+ ENBDirectInformationTransfer,
+ ENBStatusTransfer,
+ ENBConfigurationUpdate,
+ ENBConfigurationUpdateAcknowledge,
+ ENBConfigurationUpdateFailure,
+ ErrorIndication,
+ HandoverCancel,
+ HandoverCancelAcknowledge,
+ HandoverCommand,
+ HandoverFailure,
+ HandoverNotify,
+ HandoverPreparationFailure,
+ HandoverRequest,
+ HandoverRequestAcknowledge,
+ HandoverRequired,
+ InitialContextSetupFailure,
+ InitialContextSetupRequest,
+ InitialContextSetupResponse,
+ InitialUEMessage,
+ KillRequest,
+ KillResponse,
+ LocationReportingControl,
+ LocationReportingFailureIndication,
+ LocationReport,
+ MMEConfigurationUpdate,
+ MMEConfigurationUpdateAcknowledge,
+ MMEConfigurationUpdateFailure,
+ MMEDirectInformationTransfer,
+ MMEStatusTransfer,
+ NASNonDeliveryIndication,
+ OverloadStart,
+ OverloadStop,
+ Paging,
+ PathSwitchRequest,
+ PathSwitchRequestAcknowledge,
+ PathSwitchRequestFailure,
+ PrivateMessage,
+ Reset,
+ ResetAcknowledge,
+ S1SetupFailure,
+ S1SetupRequest,
+ S1SetupResponse,
+ E-RABModifyRequest,
+ E-RABModifyResponse,
+ E-RABModificationIndication,
+ E-RABModificationConfirm,
+ E-RABReleaseCommand,
+ E-RABReleaseResponse,
+ E-RABReleaseIndication,
+ E-RABSetupRequest,
+ E-RABSetupResponse,
+ TraceFailureIndication,
+ TraceStart,
+ UECapabilityInfoIndication,
+ UEContextModificationFailure,
+ UEContextModificationRequest,
+ UEContextModificationResponse,
+ UEContextReleaseCommand,
+ UEContextReleaseComplete,
+ UEContextReleaseRequest,
+ UERadioCapabilityMatchRequest,
+ UERadioCapabilityMatchResponse,
+ UplinkUEAssociatedLPPaTransport,
+ UplinkNASTransport,
+ UplinkNonUEAssociatedLPPaTransport,
+ UplinkS1cdma2000tunnelling,
+ WriteReplaceWarningRequest,
+ WriteReplaceWarningResponse,
+ ENBConfigurationTransfer,
+ MMEConfigurationTransfer,
+ PWSRestartIndication,
+ UEContextModificationIndication,
+ UEContextModificationConfirm,
+ RerouteNASRequest,
+ PWSFailureIndication,
+ UEContextSuspendRequest,
+ UEContextSuspendResponse,
+ UEContextResumeRequest,
+ UEContextResumeResponse,
+ UEContextResumeFailure,
+ ConnectionEstablishmentIndication,
+ NASDeliveryIndication,
+ RetrieveUEInformation,
+ UEInformationTransfer,
+ ENBCPRelocationIndication,
+ MMECPRelocationIndication,
+ SecondaryRATDataUsageReport,
+ UERadioCapabilityIDMappingRequest,
+ UERadioCapabilityIDMappingResponse,
+ HandoverSuccess,
+ ENBEarlyStatusTransfer,
+ MMEEarlyStatusTransfer
+
+
+FROM S1AP-PDU-Contents
+
+ id-CellTrafficTrace,
+ id-DeactivateTrace,
+ id-downlinkUEAssociatedLPPaTransport,
+ id-downlinkNASTransport,
+ id-downlinkNonUEAssociatedLPPaTransport,
+ id-DownlinkS1cdma2000tunnelling,
+ id-eNBStatusTransfer,
+ id-ErrorIndication,
+ id-HandoverCancel,
+ id-HandoverNotification,
+ id-HandoverPreparation,
+ id-HandoverResourceAllocation,
+ id-InitialContextSetup,
+ id-initialUEMessage,
+ id-ENBConfigurationUpdate,
+ id-Kill,
+ id-LocationReportingControl,
+ id-LocationReportingFailureIndication,
+ id-LocationReport,
+ id-eNBDirectInformationTransfer,
+ id-MMEConfigurationUpdate,
+ id-MMEDirectInformationTransfer,
+ id-MMEStatusTransfer,
+ id-NASNonDeliveryIndication,
+ id-OverloadStart,
+ id-OverloadStop,
+ id-Paging,
+ id-PathSwitchRequest,
+ id-PrivateMessage,
+ id-Reset,
+ id-S1Setup,
+ id-E-RABModify,
+ id-E-RABModificationIndication,
+ id-E-RABRelease,
+ id-E-RABReleaseIndication,
+ id-E-RABSetup,
+ id-TraceFailureIndication,
+ id-TraceStart,
+ id-UECapabilityInfoIndication,
+ id-UEContextModification,
+ id-UEContextRelease,
+ id-UEContextReleaseRequest,
+ id-UERadioCapabilityMatch,
+ id-uplinkUEAssociatedLPPaTransport,
+ id-uplinkNASTransport,
+ id-uplinkNonUEAssociatedLPPaTransport,
+ id-UplinkS1cdma2000tunnelling,
+ id-WriteReplaceWarning,
+ id-eNBConfigurationTransfer,
+ id-MMEConfigurationTransfer,
+ id-PWSRestartIndication,
+ id-UEContextModificationIndication,
+ id-RerouteNASRequest,
+ id-PWSFailureIndication,
+ id-UEContextSuspend,
+ id-UEContextResume,
+ id-ConnectionEstablishmentIndication,
+ id-NASDeliveryIndication,
+ id-RetrieveUEInformation,
+ id-UEInformationTransfer,
+ id-eNBCPRelocationIndication,
+ id-MMECPRelocationIndication,
+ id-SecondaryRATDataUsageReport,
+ id-UERadioCapabilityIDMapping,
+ id-HandoverSuccess,
+ id-eNBEarlyStatusTransfer,
+ id-MMEEarlyStatusTransfer
+
+
+FROM S1AP-Constants;
+
+
+-- **************************************************************
+--
+-- Interface Elementary Procedure Class
+--
+-- **************************************************************
+
+S1AP-ELEMENTARY-PROCEDURE ::= CLASS {
+ &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]
+}
+
+-- **************************************************************
+--
+-- Interface PDU Definition
+--
+-- **************************************************************
+
+S1AP-PDU ::= CHOICE {
+ initiatingMessage InitiatingMessage,
+ successfulOutcome SuccessfulOutcome,
+ unsuccessfulOutcome UnsuccessfulOutcome,
+ ...
+}
+
+InitiatingMessage ::= SEQUENCE {
+ procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
+ criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value S1AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+}
+
+SuccessfulOutcome ::= SEQUENCE {
+ procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
+ criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value S1AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+}
+
+UnsuccessfulOutcome ::= SEQUENCE {
+ procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
+ criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value S1AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+}
+
+-- **************************************************************
+--
+-- Interface Elementary Procedure List
+--
+-- **************************************************************
+
+S1AP-ELEMENTARY-PROCEDURES S1AP-ELEMENTARY-PROCEDURE ::= {
+ S1AP-ELEMENTARY-PROCEDURES-CLASS-1 |
+ S1AP-ELEMENTARY-PROCEDURES-CLASS-2,
+ ...
+}
+
+
+S1AP-ELEMENTARY-PROCEDURES-CLASS-1 S1AP-ELEMENTARY-PROCEDURE ::= {
+ handoverPreparation |
+ handoverResourceAllocation |
+ pathSwitchRequest |
+ e-RABSetup |
+ e-RABModify |
+ e-RABRelease |
+ initialContextSetup |
+ handoverCancel |
+ kill |
+ reset |
+ s1Setup |
+ uEContextModification |
+ uEContextRelease |
+ eNBConfigurationUpdate |
+ mMEConfigurationUpdate |
+ writeReplaceWarning ,
+ ...,
+ uERadioCapabilityMatch |
+ e-RABModificationIndication |
+ uEContextModificationIndication |
+ uEContextSuspend |
+ uEContextResume |
+ uERadioCapabilityIDMapping
+}
+
+S1AP-ELEMENTARY-PROCEDURES-CLASS-2 S1AP-ELEMENTARY-PROCEDURE ::= {
+ handoverNotification |
+ e-RABReleaseIndication |
+ paging |
+ downlinkNASTransport |
+ initialUEMessage |
+ uplinkNASTransport |
+ errorIndication |
+ nASNonDeliveryIndication |
+ uEContextReleaseRequest |
+ downlinkS1cdma2000tunnelling |
+ uplinkS1cdma2000tunnelling |
+ uECapabilityInfoIndication |
+ eNBStatusTransfer |
+ mMEStatusTransfer |
+ deactivateTrace |
+ traceStart |
+ traceFailureIndication |
+ cellTrafficTrace |
+ locationReportingControl |
+ locationReportingFailureIndication |
+ locationReport |
+ overloadStart |
+ overloadStop |
+ eNBDirectInformationTransfer |
+ mMEDirectInformationTransfer |
+ eNBConfigurationTransfer |
+ mMEConfigurationTransfer |
+ privateMessage ,
+ ...,
+ downlinkUEAssociatedLPPaTransport |
+ uplinkUEAssociatedLPPaTransport |
+ downlinkNonUEAssociatedLPPaTransport |
+ uplinkNonUEAssociatedLPPaTransport |
+ pWSRestartIndication |
+ rerouteNASRequest |
+ pWSFailureIndication |
+ connectionEstablishmentIndication |
+ nASDeliveryIndication |
+ retrieveUEInformation |
+ uEInformationTransfer |
+ eNBCPRelocationIndication |
+ mMECPRelocationIndication |
+ secondaryRATDataUsageReport |
+ handoverSuccess |
+ eNBEarlyStatusTransfer |
+ mMEEarlyStatusTransfer
+}
+
+-- **************************************************************
+--
+-- Interface Elementary Procedures
+--
+-- **************************************************************
+
+handoverPreparation S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverRequired
+ SUCCESSFUL OUTCOME HandoverCommand
+ UNSUCCESSFUL OUTCOME HandoverPreparationFailure
+ PROCEDURE CODE id-HandoverPreparation
+ CRITICALITY reject
+}
+
+handoverResourceAllocation S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverRequest
+ SUCCESSFUL OUTCOME HandoverRequestAcknowledge
+ UNSUCCESSFUL OUTCOME HandoverFailure
+ PROCEDURE CODE id-HandoverResourceAllocation
+ CRITICALITY reject
+}
+
+handoverNotification S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverNotify
+ PROCEDURE CODE id-HandoverNotification
+ CRITICALITY ignore
+}
+
+pathSwitchRequest S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PathSwitchRequest
+ SUCCESSFUL OUTCOME PathSwitchRequestAcknowledge
+ UNSUCCESSFUL OUTCOME PathSwitchRequestFailure
+ PROCEDURE CODE id-PathSwitchRequest
+ CRITICALITY reject
+}
+
+e-RABSetup S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E-RABSetupRequest
+ SUCCESSFUL OUTCOME E-RABSetupResponse
+ PROCEDURE CODE id-E-RABSetup
+ CRITICALITY reject
+}
+
+e-RABModify S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E-RABModifyRequest
+ SUCCESSFUL OUTCOME E-RABModifyResponse
+ PROCEDURE CODE id-E-RABModify
+ CRITICALITY reject
+}
+
+e-RABRelease S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E-RABReleaseCommand
+ SUCCESSFUL OUTCOME E-RABReleaseResponse
+ PROCEDURE CODE id-E-RABRelease
+ CRITICALITY reject
+}
+
+e-RABReleaseIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E-RABReleaseIndication
+ PROCEDURE CODE id-E-RABReleaseIndication
+ CRITICALITY ignore
+}
+
+initialContextSetup S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE InitialContextSetupRequest
+ SUCCESSFUL OUTCOME InitialContextSetupResponse
+ UNSUCCESSFUL OUTCOME InitialContextSetupFailure
+ PROCEDURE CODE id-InitialContextSetup
+ CRITICALITY reject
+}
+
+uEContextReleaseRequest S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextReleaseRequest
+ PROCEDURE CODE id-UEContextReleaseRequest
+ CRITICALITY ignore
+}
+
+paging S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE Paging
+ PROCEDURE CODE id-Paging
+ CRITICALITY ignore
+}
+
+downlinkNASTransport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DownlinkNASTransport
+ PROCEDURE CODE id-downlinkNASTransport
+ CRITICALITY ignore
+}
+
+initialUEMessage S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE InitialUEMessage
+ PROCEDURE CODE id-initialUEMessage
+ CRITICALITY ignore
+}
+
+uplinkNASTransport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UplinkNASTransport
+ PROCEDURE CODE id-uplinkNASTransport
+ CRITICALITY ignore
+}
+nASNonDeliveryIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE NASNonDeliveryIndication
+ PROCEDURE CODE id-NASNonDeliveryIndication
+ CRITICALITY ignore
+}
+
+handoverCancel S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverCancel
+ SUCCESSFUL OUTCOME HandoverCancelAcknowledge
+ PROCEDURE CODE id-HandoverCancel
+ CRITICALITY reject
+}
+
+reset S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE Reset
+ SUCCESSFUL OUTCOME ResetAcknowledge
+ PROCEDURE CODE id-Reset
+ CRITICALITY reject
+}
+
+errorIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ErrorIndication
+ PROCEDURE CODE id-ErrorIndication
+ CRITICALITY ignore
+}
+
+s1Setup S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE S1SetupRequest
+ SUCCESSFUL OUTCOME S1SetupResponse
+ UNSUCCESSFUL OUTCOME S1SetupFailure
+ PROCEDURE CODE id-S1Setup
+ CRITICALITY reject
+}
+
+eNBConfigurationUpdate S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBConfigurationUpdate
+ SUCCESSFUL OUTCOME ENBConfigurationUpdateAcknowledge
+ UNSUCCESSFUL OUTCOME ENBConfigurationUpdateFailure
+ PROCEDURE CODE id-ENBConfigurationUpdate
+ CRITICALITY reject
+}
+
+mMEConfigurationUpdate S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMEConfigurationUpdate
+ SUCCESSFUL OUTCOME MMEConfigurationUpdateAcknowledge
+ UNSUCCESSFUL OUTCOME MMEConfigurationUpdateFailure
+ PROCEDURE CODE id-MMEConfigurationUpdate
+ CRITICALITY reject
+}
+
+downlinkS1cdma2000tunnelling S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DownlinkS1cdma2000tunnelling
+ PROCEDURE CODE id-DownlinkS1cdma2000tunnelling
+ CRITICALITY ignore
+}
+
+uplinkS1cdma2000tunnelling S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UplinkS1cdma2000tunnelling
+ PROCEDURE CODE id-UplinkS1cdma2000tunnelling
+ CRITICALITY ignore
+}
+
+uEContextModification S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextModificationRequest
+ SUCCESSFUL OUTCOME UEContextModificationResponse
+ UNSUCCESSFUL OUTCOME UEContextModificationFailure
+ PROCEDURE CODE id-UEContextModification
+ CRITICALITY reject
+}
+
+uECapabilityInfoIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UECapabilityInfoIndication
+ PROCEDURE CODE id-UECapabilityInfoIndication
+ CRITICALITY ignore
+}
+
+uEContextRelease S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextReleaseCommand
+ SUCCESSFUL OUTCOME UEContextReleaseComplete
+ PROCEDURE CODE id-UEContextRelease
+ CRITICALITY reject
+}
+
+eNBStatusTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBStatusTransfer
+ PROCEDURE CODE id-eNBStatusTransfer
+ CRITICALITY ignore
+}
+
+mMEStatusTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMEStatusTransfer
+ PROCEDURE CODE id-MMEStatusTransfer
+ CRITICALITY ignore
+}
+
+deactivateTrace S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DeactivateTrace
+ PROCEDURE CODE id-DeactivateTrace
+ CRITICALITY ignore
+}
+
+traceStart S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE TraceStart
+ PROCEDURE CODE id-TraceStart
+ CRITICALITY ignore
+}
+
+traceFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE TraceFailureIndication
+ PROCEDURE CODE id-TraceFailureIndication
+ CRITICALITY ignore
+}
+cellTrafficTrace S1AP-ELEMENTARY-PROCEDURE ::={
+INITIATING MESSAGE CellTrafficTrace
+PROCEDURE CODE id-CellTrafficTrace
+CRITICALITY ignore
+}
+
+locationReportingControl S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE LocationReportingControl
+ PROCEDURE CODE id-LocationReportingControl
+ CRITICALITY ignore
+}
+
+locationReportingFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE LocationReportingFailureIndication
+ PROCEDURE CODE id-LocationReportingFailureIndication
+ CRITICALITY ignore
+}
+
+locationReport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE LocationReport
+ PROCEDURE CODE id-LocationReport
+ CRITICALITY ignore
+}
+
+overloadStart S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE OverloadStart
+ PROCEDURE CODE id-OverloadStart
+ CRITICALITY ignore
+}
+
+overloadStop S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE OverloadStop
+ PROCEDURE CODE id-OverloadStop
+ CRITICALITY reject
+}
+
+writeReplaceWarning S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE WriteReplaceWarningRequest
+ SUCCESSFUL OUTCOME WriteReplaceWarningResponse
+ PROCEDURE CODE id-WriteReplaceWarning
+ CRITICALITY reject
+}
+
+eNBDirectInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBDirectInformationTransfer
+ PROCEDURE CODE id-eNBDirectInformationTransfer
+ CRITICALITY ignore
+}
+
+mMEDirectInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMEDirectInformationTransfer
+ PROCEDURE CODE id-MMEDirectInformationTransfer
+ CRITICALITY ignore
+}
+
+eNBConfigurationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBConfigurationTransfer
+ PROCEDURE CODE id-eNBConfigurationTransfer
+ CRITICALITY ignore
+}
+
+mMEConfigurationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMEConfigurationTransfer
+ PROCEDURE CODE id-MMEConfigurationTransfer
+ CRITICALITY ignore
+}
+
+
+privateMessage S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PrivateMessage
+ PROCEDURE CODE id-PrivateMessage
+ CRITICALITY ignore
+}
+
+pWSRestartIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PWSRestartIndication
+ PROCEDURE CODE id-PWSRestartIndication
+ CRITICALITY ignore
+}
+
+kill S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE KillRequest
+ SUCCESSFUL OUTCOME KillResponse
+ PROCEDURE CODE id-Kill
+ CRITICALITY reject
+}
+
+downlinkUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DownlinkUEAssociatedLPPaTransport
+ PROCEDURE CODE id-downlinkUEAssociatedLPPaTransport
+ CRITICALITY ignore
+}
+
+uplinkUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UplinkUEAssociatedLPPaTransport
+ PROCEDURE CODE id-uplinkUEAssociatedLPPaTransport
+ CRITICALITY ignore
+}
+downlinkNonUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE DownlinkNonUEAssociatedLPPaTransport
+ PROCEDURE CODE id-downlinkNonUEAssociatedLPPaTransport
+ CRITICALITY ignore
+}
+
+uplinkNonUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UplinkNonUEAssociatedLPPaTransport
+ PROCEDURE CODE id-uplinkNonUEAssociatedLPPaTransport
+ CRITICALITY ignore
+}
+
+uERadioCapabilityMatch S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UERadioCapabilityMatchRequest
+ SUCCESSFUL OUTCOME UERadioCapabilityMatchResponse
+ PROCEDURE CODE id-UERadioCapabilityMatch
+ CRITICALITY reject
+}
+
+e-RABModificationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE E-RABModificationIndication
+ SUCCESSFUL OUTCOME E-RABModificationConfirm
+ PROCEDURE CODE id-E-RABModificationIndication
+ CRITICALITY reject
+}
+
+uEContextModificationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextModificationIndication
+ SUCCESSFUL OUTCOME UEContextModificationConfirm
+ PROCEDURE CODE id-UEContextModificationIndication
+ CRITICALITY reject
+}
+
+rerouteNASRequest S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RerouteNASRequest
+ PROCEDURE CODE id-RerouteNASRequest
+ CRITICALITY reject
+}
+
+pWSFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PWSFailureIndication
+ PROCEDURE CODE id-PWSFailureIndication
+ CRITICALITY ignore
+}
+
+uEContextSuspend S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextSuspendRequest
+ SUCCESSFUL OUTCOME UEContextSuspendResponse
+ PROCEDURE CODE id-UEContextSuspend
+ CRITICALITY reject
+}
+
+uEContextResume S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextResumeRequest
+ SUCCESSFUL OUTCOME UEContextResumeResponse
+ UNSUCCESSFUL OUTCOME UEContextResumeFailure
+ PROCEDURE CODE id-UEContextResume
+ CRITICALITY reject
+}
+
+connectionEstablishmentIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ConnectionEstablishmentIndication
+ PROCEDURE CODE id-ConnectionEstablishmentIndication
+ CRITICALITY reject
+}
+
+nASDeliveryIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE NASDeliveryIndication
+ PROCEDURE CODE id-NASDeliveryIndication
+ CRITICALITY ignore
+}
+
+retrieveUEInformation S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RetrieveUEInformation
+ PROCEDURE CODE id-RetrieveUEInformation
+ CRITICALITY reject
+}
+
+uEInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEInformationTransfer
+ PROCEDURE CODE id-UEInformationTransfer
+ CRITICALITY reject
+}
+
+eNBCPRelocationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBCPRelocationIndication
+ PROCEDURE CODE id-eNBCPRelocationIndication
+ CRITICALITY reject
+}
+
+mMECPRelocationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMECPRelocationIndication
+ PROCEDURE CODE id-MMECPRelocationIndication
+ CRITICALITY reject
+}
+
+secondaryRATDataUsageReport S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE SecondaryRATDataUsageReport
+ PROCEDURE CODE id-SecondaryRATDataUsageReport
+ CRITICALITY ignore
+}
+
+uERadioCapabilityIDMapping S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UERadioCapabilityIDMappingRequest
+ SUCCESSFUL OUTCOME UERadioCapabilityIDMappingResponse
+ PROCEDURE CODE id-UERadioCapabilityIDMapping
+ CRITICALITY reject
+}
+
+handoverSuccess S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverSuccess
+ PROCEDURE CODE id-HandoverSuccess
+ CRITICALITY ignore
+}
+
+eNBEarlyStatusTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBEarlyStatusTransfer
+ PROCEDURE CODE id-eNBEarlyStatusTransfer
+ CRITICALITY reject
+}
+
+mMEEarlyStatusTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMEEarlyStatusTransfer
+ PROCEDURE CODE id-MMEEarlyStatusTransfer
+ CRITICALITY ignore
+}
+
+END
diff --git a/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn b/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn
new file mode 100644
index 00000000..73d734fe
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/S1AP-SonTransfer-IEs.asn
@@ -0,0 +1,335 @@
+-- 3GPP TS 36.413 V17.5.0 (2023-06)
+-- B.2 ASN.1 definition
+-- **************************************************************
+--
+-- IE definitions for the SON Transfer application
+-- The IEs in this ASN.1 module shall be defined and encoded
+-- using the same rules as applicable for the S1AP-IEs module.
+--
+-- **************************************************************
+SonTransfer-IEs
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+--
+-- Generic IEs for the SON Transfer application
+--
+
+SONtransferApplicationIdentity ::= ENUMERATED {
+ cell-load-reporting,
+ ...,
+ multi-cell-load-reporting,
+ event-triggered-cell-load-reporting,
+ ho-reporting,
+ eutran-cell-activation,
+ energy-savings-indication,
+ failure-event-reporting
+}
+
+SONtransferRequestContainer ::= CHOICE{
+ cellLoadReporting NULL,
+ ...,
+ multiCellLoadReporting MultiCellLoadReportingRequest,
+ eventTriggeredCellLoadReporting EventTriggeredCellLoadReportingRequest,
+ hOReporting HOReport,
+ eutranCellActivation CellActivationRequest,
+ energySavingsIndication CellStateIndication,
+ failureEventReporting FailureEventReport
+}
+
+SONtransferResponseContainer ::= CHOICE{
+ cellLoadReporting CellLoadReportingResponse,
+ ...,
+ multiCellLoadReporting MultiCellLoadReportingResponse,
+ eventTriggeredCellLoadReporting EventTriggeredCellLoadReportingResponse,
+ hOReporting NULL,
+ eutranCellActivation CellActivationResponse,
+ energySavingsIndication NULL,
+ failureEventReporting NULL
+}
+
+SONtransferCause ::= CHOICE {
+ cellLoadReporting CellLoadReportingCause,
+ ...,
+ multiCellLoadReporting CellLoadReportingCause,
+ eventTriggeredCellLoadReporting CellLoadReportingCause,
+ hOReporting HOReportingCause,
+ eutranCellActivation CellActivationCause,
+ energySavingsIndication CellStateIndicationCause,
+ failureEventReporting FailureEventReportingCause
+}
+
+
+CellLoadReportingCause ::= ENUMERATED {
+ application-container-syntax-error,
+ inconsistent-reporting-cell-identifier,
+ unspecified,
+ ...
+}
+
+HOReportingCause ::= ENUMERATED {
+ application-container-syntax-error,
+ inconsistent-reporting-cell-identifier,
+ unspecified,
+ ...
+}
+
+CellActivationCause ::= ENUMERATED {
+ application-container-syntax-error,
+ inconsistent-reporting-cell-identifier,
+ unspecified,
+ ...
+}
+
+CellStateIndicationCause ::= ENUMERATED {
+ application-container-syntax-error,
+ inconsistent-reporting-cell-identifier,
+ unspecified,
+ ...
+}
+
+FailureEventReportingCause ::= ENUMERATED {
+ application-container-syntax-error,
+ inconsistent-reporting-cell-identifier,
+ unspecified,
+ ...
+}
+
+--
+-- IEs for Cell Load Reporting application
+--
+
+CellLoadReportingResponse::= CHOICE{
+ eUTRAN EUTRANcellLoadReportingResponse,
+ uTRAN OCTET STRING,
+ gERAN OCTET STRING,
+ ...,
+ eHRPD EHRPDSectorLoadReportingResponse
+}
+
+CompositeAvailableCapacityGroup ::= OCTET STRING
+
+EUTRANcellLoadReportingResponse ::= SEQUENCE {
+ compositeAvailableCapacityGroup CompositeAvailableCapacityGroup,
+ ...
+}
+
+--
+-- IEs for Multi-Cell Load Reporting application
+--
+
+EUTRANResponse::= SEQUENCE {
+ cell-ID OCTET STRING,
+ eUTRANcellLoadReportingResponse EUTRANcellLoadReportingResponse,
+ ...
+}
+
+EHRPD-Sector-ID ::= OCTET STRING (SIZE (16))
+
+IRAT-Cell-ID ::= CHOICE{
+ eUTRAN OCTET STRING,
+ uTRAN OCTET STRING,
+ gERAN OCTET STRING,
+ ...,
+ eHRPD EHRPD-Sector-ID
+}
+
+RequestedCellList ::= SEQUENCE (SIZE(1.. maxnoofIRATReportingCells)) OF IRAT-Cell-ID
+
+MultiCellLoadReportingRequest::= SEQUENCE {
+ requestedCellList RequestedCellList,
+ ...
+}
+
+ReportingCellList-Item ::= SEQUENCE {
+ cell-ID IRAT-Cell-ID,
+ ...
+}
+
+ReportingCellList ::= SEQUENCE (SIZE(1.. maxnoofIRATReportingCells)) OF ReportingCellList-Item
+
+MultiCellLoadReportingResponse ::= SEQUENCE (SIZE(1.. maxnoofIRATReportingCells)) OF MultiCellLoadReportingResponse-Item
+
+MultiCellLoadReportingResponse-Item ::= CHOICE{
+ eUTRANResponse EUTRANResponse,
+ uTRANResponse OCTET STRING,
+ gERANResponse OCTET STRING,
+ ...,
+ eHRPD EHRPDMultiSectorLoadReportingResponseItem
+}
+
+
+--
+-- IEs for Event-triggered Cell Load Reporting application
+--
+
+NumberOfMeasurementReportingLevels ::= ENUMERATED {
+ rl2,
+ rl3,
+ rl4,
+ rl5,
+ rl10,
+ ...
+}
+
+EventTriggeredCellLoadReportingRequest ::= SEQUENCE {
+ numberOfMeasurementReportingLevels NumberOfMeasurementReportingLevels,
+ ...
+}
+
+OverloadFlag ::= ENUMERATED {
+ overload,
+ ...
+}
+
+EventTriggeredCellLoadReportingResponse ::= SEQUENCE {
+ cellLoadReportingResponse CellLoadReportingResponse,
+ overloadFlag OverloadFlag OPTIONAL,
+ ...
+}
+
+--
+-- IEs for HO Reporting application
+--
+
+
+
+HOReport::= SEQUENCE {
+ hoType HoType,
+ hoReportType HoReportType,
+ hosourceID IRAT-Cell-ID,
+ hoTargetID IRAT-Cell-ID,
+ candidateCellList CandidateCellList,
+ ...,
+ candidatePCIList CandidatePCIList OPTIONAL
+}
+
+HoType ::= ENUMERATED {
+ ltetoutran,
+ ltetogeran,
+ ...
+}
+
+HoReportType ::= ENUMERATED {
+ unnecessaryhotoanotherrat,
+ ...,
+ earlyirathandover
+}
+
+CandidateCellList ::= SEQUENCE (SIZE(1..maxnoofcandidateCells)) OF IRAT-Cell-ID
+
+CandidatePCIList ::= SEQUENCE (SIZE(1..maxnoofcandidateCells)) OF CandidatePCI
+
+CandidatePCI ::= SEQUENCE {
+ pCI INTEGER (0..503),
+ eARFCN OCTET STRING,
+ ...
+}
+
+--
+-- IEs for E-UTRAN Cell Activation application
+--
+
+CellActivationRequest ::= SEQUENCE {
+ cellsToActivateList CellsToActivateList,
+ minimumActivationTime INTEGER (1..60) OPTIONAL,
+...
+}
+
+CellsToActivateList ::= SEQUENCE (SIZE(1.. maxnoofCellineNB)) OF CellsToActivateList-Item
+
+CellsToActivateList-Item ::= SEQUENCE {
+ cell-ID OCTET STRING,
+ ...
+}
+
+CellActivationResponse ::= SEQUENCE {
+ activatedCellsList ActivatedCellsList,
+ ...
+}
+
+ActivatedCellsList ::= SEQUENCE (SIZE(0.. maxnoofCellineNB)) OF ActivatedCellsList-Item
+
+ActivatedCellsList-Item ::= SEQUENCE {
+ cell-ID OCTET STRING,
+ ...
+}
+
+--
+-- IEs for Energy Savings Indication application
+--
+
+CellStateIndication ::= SEQUENCE {
+ notificationCellList NotificationCellList,
+ ...
+}
+
+NotificationCellList ::= SEQUENCE (SIZE(1.. maxnoofCellineNB)) OF NotificationCellList-Item
+
+NotificationCellList-Item ::= SEQUENCE {
+ cell-ID OCTET STRING,
+ notifyFlag NotifyFlag,
+ ...
+}
+
+NotifyFlag ::= ENUMERATED {
+ activated,
+ deactivated,
+ ...
+}
+
+FailureEventReport::= CHOICE {
+ tooEarlyInterRATHOReportFromEUTRAN TooEarlyInterRATHOReportReportFromEUTRAN,
+ ...
+}
+
+TooEarlyInterRATHOReportReportFromEUTRAN ::= SEQUENCE {
+ uERLFReportContainer OCTET STRING,
+ mobilityInformation MobilityInformation OPTIONAL,
+ ...
+}
+
+-- WS modification, already defined in S1AP-IEs.asn
+--MobilityInformation ::= BIT STRING (SIZE(32))
+
+
+--
+-- IEs for reporting of eHRPD load
+--
+
+EHRPDCapacityValue ::= INTEGER (0..100)
+
+EHRPDSectorCapacityClassValue ::= INTEGER (1..100, ...)
+
+EHRPDSectorLoadReportingResponse ::= SEQUENCE {
+ dL-EHRPD-CompositeAvailableCapacity EHRPDCompositeAvailableCapacity,
+ uL-EHRPD-CompositeAvailableCapacity EHRPDCompositeAvailableCapacity,
+ ...
+}
+
+EHRPDCompositeAvailableCapacity ::= SEQUENCE {
+ eHRPDSectorCapacityClassValue EHRPDSectorCapacityClassValue,
+ eHRPDCapacityValue EHRPDCapacityValue,
+ ...
+}
+
+EHRPDMultiSectorLoadReportingResponseItem ::= SEQUENCE {
+ eHRPD-Sector-ID EHRPD-Sector-ID,
+ eHRPDSectorLoadReportingResponse EHRPDSectorLoadReportingResponse,
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Constants
+--
+-- **************************************************************
+
+maxnoofIRATReportingCells INTEGER ::= 128
+maxnoofcandidateCells INTEGER ::= 16
+maxnoofCellineNB INTEGER ::= 256
+
+END
diff --git a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
new file mode 100644
index 00000000..a5e2e878
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
@@ -0,0 +1,843 @@
+/* packet-s1ap.c
+ * Routines for E-UTRAN S1 Application Protocol (S1AP) packet dissection
+ * Copyright 2007-2016, Anders Broman <anders.broman@ericsson.com>
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ *
+ * Based on the RANAP dissector
+ *
+ * References: 3GPP TS 36.413 V17.5.0 (2023-06)
+ */
+
+#include "config.h"
+
+#include <epan/packet.h>
+
+#include <epan/strutil.h>
+#include <epan/asn1.h>
+#include <epan/prefs.h>
+#include <epan/sctpppids.h>
+#include <epan/expert.h>
+#include <epan/conversation.h>
+#include <epan/proto_data.h>
+#include <epan/exceptions.h>
+#include <epan/show_exception.h>
+
+#include "packet-ber.h"
+#include "packet-per.h"
+#include "packet-e212.h"
+#include "packet-sccp.h"
+#include "packet-lte-rrc.h"
+#include "packet-ranap.h"
+#include "packet-bssgp.h"
+#include "packet-s1ap.h"
+#include "packet-a21.h"
+#include "packet-gsm_map.h"
+#include "packet-cell_broadcast.h"
+#include "packet-gsm_a_common.h"
+#include "packet-ntp.h"
+#include "packet-ngap.h"
+
+#define PNAME "S1 Application Protocol"
+#define PSNAME "S1AP"
+#define PFNAME "s1ap"
+
+/* Dissector will use SCTP PPID 18 or SCTP port. IANA assigned port = 36412 */
+#define SCTP_PORT_S1AP 36412
+
+void proto_register_s1ap(void);
+void proto_reg_handoff_s1ap(void);
+
+static dissector_handle_t gcsna_handle;
+static dissector_handle_t nas_eps_handle;
+static dissector_handle_t lppa_handle;
+static dissector_handle_t bssgp_handle;
+static dissector_handle_t lte_rrc_ue_radio_access_cap_info_handle;
+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_EIA7 = -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 hf_s1ap_rAT_RestrictionInformation_LEO = -1;
+static int hf_s1ap_rAT_RestrictionInformation_MEO = -1;
+static int hf_s1ap_rAT_RestrictionInformation_GEO = -1;
+static int hf_s1ap_rAT_RestrictionInformation_OTHERSAT = -1;
+static int hf_s1ap_rAT_RestrictionInformation_Reserved = -1;
+#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_excludedCellsToAddModList = -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_rAT_RestrictionInformation = -1;
+#include "packet-s1ap-ett.c"
+
+static expert_field ei_s1ap_number_pages_le15 = EI_INIT;
+
+enum{
+ INITIATING_MESSAGE,
+ SUCCESSFUL_OUTCOME,
+ UNSUCCESSFUL_OUTCOME
+};
+
+struct s1ap_conv_info {
+ wmem_map_t *nbiot_ta;
+ wmem_tree_t *nbiot_enb_ue_s1ap_id;
+};
+
+struct s1ap_supported_ta {
+ guint16 tac;
+ wmem_array_t *plmn;
+};
+
+struct s1ap_tai {
+ guint32 plmn;
+ guint16 tac;
+};
+
+struct s1ap_private_data {
+ struct s1ap_conv_info *s1ap_conv;
+ guint32 procedure_code;
+ guint32 protocol_ie_id;
+ guint32 protocol_extension_id;
+ guint32 handover_type_value;
+ guint32 message_type;
+ guint8 data_coding_scheme;
+ struct s1ap_supported_ta *supported_ta;
+ const char *obj_id;
+ struct s1ap_tai *tai;
+ guint16 enb_ue_s1ap_id;
+ gboolean srvcc_ho_cs_only;
+ guint8 transparent_container_type;
+ e212_number_type_t number_type;
+};
+
+enum {
+ S1AP_LTE_CONTAINER_AUTOMATIC,
+ S1AP_LTE_CONTAINER_LEGACY,
+ S1AP_LTE_CONTAINER_NBIOT
+};
+
+static const enum_val_t s1ap_lte_container_vals[] = {
+ {"automatic", "Automatic", S1AP_LTE_CONTAINER_AUTOMATIC},
+ {"legacy", "Legacy LTE", S1AP_LTE_CONTAINER_LEGACY},
+ {"nb-iot","NB-IoT", S1AP_LTE_CONTAINER_NBIOT},
+ {NULL, NULL, -1}
+};
+
+enum {
+ SOURCE_TO_TARGET_TRANSPARENT_CONTAINER = 1,
+ TARGET_TO_SOURCE_TRANSPARENT_CONTAINER
+};
+
+/* Global variables */
+static gboolean g_s1ap_dissect_container = TRUE;
+static gint g_s1ap_dissect_lte_container_as = S1AP_LTE_CONTAINER_AUTOMATIC;
+
+static dissector_handle_t s1ap_handle;
+
+/* Dissector tables */
+static dissector_table_t s1ap_ies_dissector_table;
+static dissector_table_t s1ap_ies_p1_dissector_table;
+static dissector_table_t s1ap_ies_p2_dissector_table;
+static dissector_table_t s1ap_extension_dissector_table;
+static dissector_table_t s1ap_proc_imsg_dissector_table;
+static dissector_table_t s1ap_proc_sout_dissector_table;
+static dissector_table_t s1ap_proc_uout_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);
+*/
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+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 int dissect_InitialUEMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data);
+#if 0
+static int dissect_SourceRNC_ToTargetRNC_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_TargetRNC_ToSourceRNC_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_SourceBSS_ToTargetBSS_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_TargetBSS_ToSourceBSS_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+#endif
+
+static void
+s1ap_Threshold_RSRP_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-140, v);
+}
+
+static void
+s1ap_Threshold_RSRQ_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-20, v);
+}
+
+static void
+s1ap_Hysteresis_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", (float)v/2, v);
+}
+
+static const true_false_string s1ap_tfs_interfacesToTrace = {
+ "Should be traced",
+ "Should not be traced"
+};
+
+static void
+s1ap_Time_UE_StayedInCell_EnhancedGranularity_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fs", ((float)v)/10);
+}
+
+const value_string s1ap_serialNumber_gs_vals[] = {
+ { 0, "Display mode immediate, cell wide"},
+ { 1, "Display mode normal, PLMN wide"},
+ { 2, "Display mode normal, tracking area wide"},
+ { 3, "Display mode normal, cell wide"},
+ { 0, NULL},
+};
+
+const value_string s1ap_warningType_vals[] = {
+ { 0, "Earthquake"},
+ { 1, "Tsunami"},
+ { 2, "Earthquake and Tsunami"},
+ { 3, "Test"},
+ { 4, "Other"},
+ { 0, NULL},
+};
+
+void
+dissect_s1ap_warningMessageContents(tvbuff_t *warning_msg_tvb, proto_tree *tree, packet_info *pinfo, guint8 dcs, int hf_nb_pages, int hf_decoded_page)
+{
+ guint32 offset;
+ guint8 nb_of_pages, length, *str;
+ proto_item *ti;
+ tvbuff_t *cb_data_page_tvb, *cb_data_tvb;
+ int i;
+
+ nb_of_pages = tvb_get_guint8(warning_msg_tvb, 0);
+ ti = proto_tree_add_uint(tree, hf_nb_pages, warning_msg_tvb, 0, 1, nb_of_pages);
+ if (nb_of_pages > 15) {
+ expert_add_info_format(pinfo, ti, &ei_s1ap_number_pages_le15,
+ "Number of pages should be <=15 (found %u)", nb_of_pages);
+ nb_of_pages = 15;
+ }
+ for (i = 0, offset = 1; i < nb_of_pages; i++) {
+ length = tvb_get_guint8(warning_msg_tvb, offset+82);
+ cb_data_page_tvb = tvb_new_subset_length(warning_msg_tvb, offset, length);
+ cb_data_tvb = dissect_cbs_data(dcs, cb_data_page_tvb, tree, pinfo, 0);
+ if (cb_data_tvb) {
+ str = tvb_get_string_enc(pinfo->pool, cb_data_tvb, 0, tvb_reported_length(cb_data_tvb), ENC_UTF_8|ENC_NA);
+ proto_tree_add_string_format(tree, hf_decoded_page, warning_msg_tvb, offset, 83,
+ str, "Decoded Page %u: %s", i+1, str);
+ }
+ offset += 83;
+ }
+}
+
+static void
+s1ap_EUTRANRoundTripDelayEstimationInfo_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%uTs (%u)", 16*v, v);
+}
+
+static const true_false_string s1ap_tfs_activate_do_not_activate = {
+ "Activate",
+ "Do not activate"
+};
+
+static void
+s1ap_Packet_LossRate_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v);
+}
+
+static void
+s1ap_threshold_nr_rsrp_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%u)", (gint32)v-156, v);
+}
+
+static void
+s1ap_threshold_nr_rsrq_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-43, v);
+}
+
+static void
+s1ap_threshold_nr_sinr_fmt(gchar *s, guint32 v)
+{
+ snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB (%u)", ((float)v/2)-23, v);
+}
+
+static struct s1ap_private_data*
+s1ap_get_private_data(packet_info *pinfo)
+{
+ struct s1ap_private_data *s1ap_data = (struct s1ap_private_data*)p_get_proto_data(pinfo->pool, pinfo, proto_s1ap, 0);
+ if (!s1ap_data) {
+ s1ap_data = wmem_new0(pinfo->pool, struct s1ap_private_data);
+ p_add_proto_data(pinfo->pool, pinfo, proto_s1ap, 0, s1ap_data);
+ }
+ return s1ap_data;
+}
+
+static gboolean
+s1ap_is_nbiot_ue(packet_info *pinfo)
+{
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ if (s1ap_data->s1ap_conv) {
+ wmem_tree_key_t tree_key[3];
+ guint32 *id;
+ guint32 enb_ue_s1ap_id = s1ap_data->enb_ue_s1ap_id;
+
+ tree_key[0].length = 1;
+ tree_key[0].key = &enb_ue_s1ap_id;
+ tree_key[1].length = 1;
+ tree_key[1].key = &pinfo->num;
+ tree_key[2].length = 0;
+ tree_key[2].key = NULL;
+ id = (guint32*)wmem_tree_lookup32_array_le(s1ap_data->s1ap_conv->nbiot_enb_ue_s1ap_id, tree_key);
+ if (id && (*id == enb_ue_s1ap_id)) {
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+#include "packet-s1ap-fn.c"
+
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ s1ap_ctx_t s1ap_ctx;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ s1ap_ctx.message_type = s1ap_data->message_type;
+ s1ap_ctx.ProcedureCode = s1ap_data->procedure_code;
+ s1ap_ctx.ProtocolIE_ID = s1ap_data->protocol_ie_id;
+ s1ap_ctx.ProtocolExtensionID = s1ap_data->protocol_extension_id;
+
+ return (dissector_try_uint_new(s1ap_ies_dissector_table, s1ap_data->protocol_ie_id, tvb, pinfo, tree, FALSE, &s1ap_ctx)) ? tvb_captured_length(tvb) : 0;
+}
+/* Currently not used
+static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ return (dissector_try_uint(s1ap_ies_p1_dissector_table, s1ap_data->protocol_ie_id, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ return (dissector_try_uint(s1ap_ies_p2_dissector_table, s1ap_data->protocol_ie_id, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0;
+}
+*/
+
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ s1ap_ctx_t s1ap_ctx;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ s1ap_ctx.message_type = s1ap_data->message_type;
+ s1ap_ctx.ProcedureCode = s1ap_data->procedure_code;
+ s1ap_ctx.ProtocolIE_ID = s1ap_data->protocol_ie_id;
+ s1ap_ctx.ProtocolExtensionID = s1ap_data->protocol_extension_id;
+
+ return (dissector_try_uint_new(s1ap_extension_dissector_table, s1ap_data->protocol_extension_id, tvb, pinfo, tree, FALSE, &s1ap_ctx)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
+{
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ return (dissector_try_uint_new(s1ap_proc_imsg_dissector_table, s1ap_data->procedure_code, tvb, pinfo, tree, FALSE, data)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
+{
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ return (dissector_try_uint_new(s1ap_proc_sout_dissector_table, s1ap_data->procedure_code, tvb, pinfo, tree, FALSE, data)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
+{
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(pinfo);
+
+ return (dissector_try_uint_new(s1ap_proc_uout_dissector_table, s1ap_data->procedure_code, tvb, pinfo, tree, FALSE, data)) ? tvb_captured_length(tvb) : 0;
+}
+
+
+static int
+dissect_s1ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
+{
+ proto_item *s1ap_item = NULL;
+ proto_tree *s1ap_tree = NULL;
+ conversation_t *conversation;
+ struct s1ap_private_data* s1ap_data;
+
+ /* make entry in the Protocol column on summary display */
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "S1AP");
+ col_clear(pinfo->cinfo, COL_INFO);
+
+ /* create the s1ap protocol tree */
+ s1ap_item = proto_tree_add_item(tree, proto_s1ap, tvb, 0, -1, ENC_NA);
+ s1ap_tree = proto_item_add_subtree(s1ap_item, ett_s1ap);
+
+ s1ap_data = s1ap_get_private_data(pinfo);
+ conversation = find_or_create_conversation(pinfo);
+ s1ap_data->s1ap_conv = (struct s1ap_conv_info *)conversation_get_proto_data(conversation, proto_s1ap);
+ if (!s1ap_data->s1ap_conv) {
+ s1ap_data->s1ap_conv = wmem_new(wmem_file_scope(), struct s1ap_conv_info);
+ s1ap_data->s1ap_conv->nbiot_ta = wmem_map_new(wmem_file_scope(), wmem_int64_hash, g_int64_equal);
+ s1ap_data->s1ap_conv->nbiot_enb_ue_s1ap_id = wmem_tree_new(wmem_file_scope());
+ conversation_add_proto_data(conversation, proto_s1ap, s1ap_data->s1ap_conv);
+ }
+
+ dissect_S1AP_PDU_PDU(tvb, pinfo, s1ap_tree, NULL);
+ return tvb_captured_length(tvb);
+}
+
+/*--- proto_reg_handoff_s1ap ---------------------------------------*/
+void
+proto_reg_handoff_s1ap(void)
+{
+ 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"
+}
+
+/*--- proto_register_s1ap -------------------------------------------*/
+void proto_register_s1ap(void) {
+
+ /* List of fields */
+
+ static hf_register_info hf[] = {
+ { &hf_s1ap_transportLayerAddressIPv4,
+ { "transportLayerAddress(IPv4)", "s1ap.transportLayerAddressIPv4",
+ FT_IPv4, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_transportLayerAddressIPv6,
+ { "transportLayerAddress(IPv6)", "s1ap.transportLayerAddressIPv6",
+ FT_IPv6, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_E_UTRAN_Trace_ID_TraceID,
+ { "TraceID", "s1ap.E_UTRAN_Trace_ID.TraceID",
+ FT_UINT24, BASE_HEX, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_E_UTRAN_Trace_ID_TraceRecordingSessionReference,
+ { "TraceRecordingSessionReference", "s1ap.E_UTRAN_Trace_ID.TraceRecordingSessionReference",
+ FT_UINT16, BASE_HEX, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_interfacesToTrace_S1_MME,
+ { "S1-MME", "s1ap.interfacesToTrace.S1_MME",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x80,
+ NULL, HFILL }},
+ { &hf_s1ap_interfacesToTrace_X2,
+ { "X2", "s1ap.interfacesToTrace.X2",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x40,
+ NULL, HFILL }},
+ { &hf_s1ap_interfacesToTrace_Uu,
+ { "Uu", "s1ap.interfacesToTrace.Uu",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x20,
+ NULL, HFILL }},
+ { &hf_s1ap_interfacesToTrace_F1_C,
+ { "F1-C", "s1ap.interfacesToTrace.F1_C",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x10,
+ NULL, HFILL }},
+ { &hf_s1ap_interfacesToTrace_E1,
+ { "E1", "s1ap.interfacesToTrace.E1",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_interfacesToTrace), 0x08,
+ NULL, HFILL }},
+ { &hf_s1ap_interfacesToTrace_Reserved,
+ { "Reserved", "s1ap.interfacesToTrace.Reserved",
+ FT_UINT8, BASE_HEX, NULL, 0x07,
+ NULL, HFILL }},
+ { &hf_s1ap_encryptionAlgorithms_EEA1,
+ { "128-EEA1", "s1ap.encryptionAlgorithms.EEA1",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x8000,
+ NULL, HFILL }},
+ { &hf_s1ap_encryptionAlgorithms_EEA2,
+ { "128-EEA2", "s1ap.encryptionAlgorithms.EEA2",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x4000,
+ NULL, HFILL }},
+ { &hf_s1ap_encryptionAlgorithms_EEA3,
+ { "128-EEA3", "s1ap.encryptionAlgorithms.EEA3",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x2000,
+ NULL, HFILL }},
+ { &hf_s1ap_encryptionAlgorithms_Reserved,
+ { "Reserved", "s1ap.encryptionAlgorithms.Reserved",
+ FT_UINT16, BASE_HEX, NULL, 0x1fff,
+ NULL, HFILL }},
+ { &hf_s1ap_integrityProtectionAlgorithms_EIA1,
+ { "128-EIA1", "s1ap.integrityProtectionAlgorithms.EIA1",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x8000,
+ NULL, HFILL }},
+ { &hf_s1ap_integrityProtectionAlgorithms_EIA2,
+ { "128-EIA2", "s1ap.integrityProtectionAlgorithms.EIA2",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x4000,
+ NULL, HFILL }},
+ { &hf_s1ap_integrityProtectionAlgorithms_EIA3,
+ { "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, 0x1dff,
+ NULL, HFILL }},
+ { &hf_s1ap_SerialNumber_gs,
+ { "Geographical Scope", "s1ap.SerialNumber.gs",
+ FT_UINT16, BASE_DEC, VALS(s1ap_serialNumber_gs_vals), 0xc000,
+ NULL, HFILL }},
+ { &hf_s1ap_SerialNumber_msg_code,
+ { "Message Code", "s1ap.SerialNumber.msg_code",
+ FT_UINT16, BASE_DEC, NULL, 0x3ff0,
+ NULL, HFILL }},
+ { &hf_s1ap_SerialNumber_upd_nb,
+ { "Update Number", "s1ap.SerialNumber.upd_nb",
+ FT_UINT16, BASE_DEC, NULL, 0x000f,
+ NULL, HFILL }},
+ { &hf_s1ap_WarningType_value,
+ { "Warning Type Value", "s1ap.WarningType.value",
+ FT_UINT16, BASE_DEC, VALS(s1ap_warningType_vals), 0xfe00,
+ NULL, HFILL }},
+ { &hf_s1ap_WarningType_emergency_user_alert,
+ { "Emergency User Alert", "s1ap.WarningType.emergency_user_alert",
+ FT_BOOLEAN, 16, TFS(&tfs_yes_no), 0x0100,
+ NULL, HFILL }},
+ { &hf_s1ap_WarningType_popup,
+ { "Popup", "s1ap.WarningType.popup",
+ FT_BOOLEAN, 16, TFS(&tfs_yes_no), 0x0080,
+ NULL, HFILL }},
+ { &hf_s1ap_WarningMessageContents_nb_pages,
+ { "Number of Pages", "s1ap.WarningMessageContents.nb_pages",
+ FT_UINT8, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_WarningMessageContents_decoded_page,
+ { "Decoded Page", "s1ap.WarningMessageContents.decoded_page",
+ FT_STRING, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M1,
+ { "M1", "s1ap.measurementsToActivate.M1",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x80,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M2,
+ { "M2", "s1ap.measurementsToActivate.M2",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x40,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M3,
+ { "M3", "s1ap.measurementsToActivate.M3",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x20,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M4,
+ { "M4", "s1ap.measurementsToActivate.M4",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x10,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M5,
+ { "M5", "s1ap.measurementsToActivate.M5",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x08,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_LoggingM1FromEventTriggered,
+ { "LoggingOfM1FromEventTriggeredMeasurementReports", "s1ap.measurementsToActivate.LoggingM1FromEventTriggered",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x04,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M6,
+ { "M6", "s1ap.measurementsToActivate.M6",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x02,
+ NULL, HFILL }},
+ { &hf_s1ap_measurementsToActivate_M7,
+ { "M7", "s1ap.measurementsToActivate.M7",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x01,
+ NULL, HFILL }},
+ { &hf_s1ap_MDT_Location_Info_GNSS,
+ { "GNSS", "s1ap.MDT_Location_Info.GNSS",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x80,
+ NULL, HFILL }},
+ { &hf_s1ap_MDT_Location_Info_E_CID,
+ { "E-CID", "s1ap.MDT_Location_Info.E_CID",
+ FT_BOOLEAN, 8, TFS(&s1ap_tfs_activate_do_not_activate), 0x40,
+ NULL, HFILL }},
+ { &hf_s1ap_MDT_Location_Info_Reserved,
+ { "Reserved", "s1ap.MDT_Location_Info.Reserved",
+ FT_UINT8, BASE_HEX, NULL, 0x3f,
+ NULL, HFILL }},
+ { &hf_s1ap_NRencryptionAlgorithms_NEA1,
+ { "128-NEA1", "s1ap.NRencryptionAlgorithms.NEA1",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x8000,
+ NULL, HFILL }},
+ { &hf_s1ap_NRencryptionAlgorithms_NEA2,
+ { "128-NEA2", "s1ap.NRencryptionAlgorithms.NEA2",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x4000,
+ NULL, HFILL }},
+ { &hf_s1ap_NRencryptionAlgorithms_NEA3,
+ { "128-NEA3", "s1ap.NRencryptionAlgorithms.NEA3",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x2000,
+ NULL, HFILL }},
+ { &hf_s1ap_NRencryptionAlgorithms_Reserved,
+ { "Reserved", "s1ap.NRencryptionAlgorithms.Reserved",
+ FT_UINT16, BASE_HEX, NULL, 0x1fff,
+ NULL, HFILL }},
+ { &hf_s1ap_NRintegrityProtectionAlgorithms_NIA1,
+ { "128-NIA1", "s1ap.NRintegrityProtectionAlgorithms.NIA1",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x8000,
+ NULL, HFILL }},
+ { &hf_s1ap_NRintegrityProtectionAlgorithms_NIA2,
+ { "128-NIA2", "s1ap.NRintegrityProtectionAlgorithms.NIA2",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x4000,
+ NULL, HFILL }},
+ { &hf_s1ap_NRintegrityProtectionAlgorithms_NIA3,
+ { "128-NIA3", "s1ap.NRintegrityProtectionAlgorithms.NIA3",
+ FT_BOOLEAN, 16, TFS(&tfs_supported_not_supported), 0x2000,
+ NULL, HFILL }},
+ { &hf_s1ap_NRintegrityProtectionAlgorithms_Reserved,
+ { "Reserved", "s1ap.NRintegrityProtectionAlgorithms.Reserved",
+ FT_UINT16, BASE_HEX, NULL, 0x1fff,
+ NULL, HFILL }},
+ { &hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_streaming_service,
+ { "QoE Measurement for streaming service", "s1ap.UE_Application_Layer_Measurement_Capability.QoE_Measurement_for_streaming_service",
+ FT_BOOLEAN, 8, TFS(&tfs_supported_not_supported), 0x80,
+ NULL, HFILL }},
+ { &hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_MTSI_service,
+ { "QoE Measurement for MTSI service", "s1ap.UE_Application_Layer_Measurement_Capability.QoE_Measurement_for_MTSI_service",
+ FT_BOOLEAN, 8, TFS(&tfs_supported_not_supported), 0x40,
+ NULL, HFILL }},
+ { &hf_s1ap_UE_Application_Layer_Measurement_Capability_Reserved,
+ { "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"
+ };
+
+ /* List of subtrees */
+ static gint *ett[] = {
+ &ett_s1ap,
+ &ett_s1ap_TransportLayerAddress,
+ &ett_s1ap_ToTargetTransparentContainer,
+ &ett_s1ap_ToSourceTransparentContainer,
+ &ett_s1ap_RRCContainer,
+ &ett_s1ap_UERadioCapability,
+ &ett_s1ap_RIMInformation,
+ &ett_s1ap_Cdma2000PDU,
+ &ett_s1ap_Cdma2000SectorID,
+ &ett_s1ap_UERadioPagingInformation,
+ &ett_s1ap_UE_HistoryInformationFromTheUE,
+ &ett_s1ap_CELevel,
+ &ett_s1ap_UE_RLF_Report_Container,
+ &ett_s1ap_UE_RLF_Report_Container_for_extended_bands,
+ &ett_s1ap_S1_Message,
+ &ett_s1ap_E_UTRAN_Trace_ID,
+ &ett_s1ap_InterfacesToTrace,
+ &ett_s1ap_EncryptionAlgorithms,
+ &ett_s1ap_IntegrityProtectionAlgorithms,
+ &ett_s1ap_LastVisitedNGRANCellInformation,
+ &ett_s1ap_LastVisitedUTRANCellInformation,
+ &ett_s1ap_SerialNumber,
+ &ett_s1ap_WarningType,
+ &ett_s1ap_DataCodingScheme,
+ &ett_s1ap_WarningMessageContents,
+ &ett_s1ap_MSClassmark,
+ &ett_s1ap_MeasurementsToActivate,
+ &ett_s1ap_MDT_Location_Info,
+ &ett_s1ap_IMSI,
+ &ett_s1ap_NASSecurityParameters,
+ &ett_s1ap_NRencryptionAlgorithms,
+ &ett_s1ap_NRintegrityProtectionAlgorithms,
+ &ett_s1ap_UE_Application_Layer_Measurement_Capability,
+ &ett_s1ap_sMTC,
+ &ett_s1ap_threshRS_Index_r15,
+ &ett_s1ap_sSBToMeasure,
+ &ett_s1ap_sSRSSIMeasurement,
+ &ett_s1ap_quantityConfigNR_R15,
+ &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"
+ };
+
+ static ei_register_info ei[] = {
+ { &ei_s1ap_number_pages_le15, { "s1ap.number_pages_le15", PI_MALFORMED, PI_ERROR, "Number of pages should be <=15", EXPFILL }}
+ };
+
+ module_t *s1ap_module;
+ expert_module_t* expert_s1ap;
+
+ /* Register protocol */
+ proto_s1ap = proto_register_protocol(PNAME, PSNAME, PFNAME);
+ /* Register fields and subtrees */
+ proto_register_field_array(proto_s1ap, hf, array_length(hf));
+ proto_register_subtree_array(ett, array_length(ett));
+ expert_s1ap = expert_register_protocol(proto_s1ap);
+ expert_register_field_array(expert_s1ap, ei, array_length(ei));
+
+ /* Register dissector */
+ s1ap_handle = register_dissector("s1ap", dissect_s1ap, proto_s1ap);
+
+ /* Register dissector tables */
+ s1ap_ies_dissector_table = register_dissector_table("s1ap.ies", "S1AP-PROTOCOL-IES", proto_s1ap, FT_UINT32, BASE_DEC);
+ s1ap_ies_p1_dissector_table = register_dissector_table("s1ap.ies.pair.first", "S1AP-PROTOCOL-IES-PAIR FirstValue", proto_s1ap, FT_UINT32, BASE_DEC);
+ s1ap_ies_p2_dissector_table = register_dissector_table("s1ap.ies.pair.second", "S1AP-PROTOCOL-IES-PAIR SecondValue", proto_s1ap, FT_UINT32, BASE_DEC);
+ s1ap_extension_dissector_table = register_dissector_table("s1ap.extension", "S1AP-PROTOCOL-EXTENSION", proto_s1ap, FT_UINT32, BASE_DEC);
+ s1ap_proc_imsg_dissector_table = register_dissector_table("s1ap.proc.imsg", "S1AP-ELEMENTARY-PROCEDURE InitiatingMessage", proto_s1ap, FT_UINT32, BASE_DEC);
+ s1ap_proc_sout_dissector_table = register_dissector_table("s1ap.proc.sout", "S1AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_s1ap, FT_UINT32, BASE_DEC);
+ 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, NULL);
+
+ 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",
+ &g_s1ap_dissect_lte_container_as, s1ap_lte_container_vals, FALSE);
+}
+
+/*
+ * 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/s1ap/packet-s1ap-template.h b/epan/dissectors/asn1/s1ap/packet-s1ap-template.h
new file mode 100644
index 00000000..a8998971
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/packet-s1ap-template.h
@@ -0,0 +1,41 @@
+/* packet-s1ap.h
+ * Routines for E-UTRAN S1 Application Protocol (S1AP) packet dissection
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#ifndef PACKET_S1AP_H
+#define PACKET_S1AP_H
+
+typedef struct _s1ap_ctx_t {
+ guint32 message_type;
+ guint32 ProcedureCode;
+ guint32 ProtocolIE_ID;
+ guint32 ProtocolExtensionID;
+} s1ap_ctx_t;
+
+extern const value_string s1ap_warningType_vals[];
+extern const value_string s1ap_serialNumber_gs_vals[];
+
+void dissect_s1ap_warningMessageContents(tvbuff_t *warning_msg_tvb, proto_tree *tree, packet_info *pinfo, guint8 dcs, int hf_nb_pages, int hf_decoded_page);
+
+#include "packet-s1ap-exp.h"
+
+#endif /* PACKET_S1AP_H */
+
+/*
+ * 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/s1ap/s1ap.cnf b/epan/dissectors/asn1/s1ap/s1ap.cnf
new file mode 100644
index 00000000..61cde3a2
--- /dev/null
+++ b/epan/dissectors/asn1/s1ap/s1ap.cnf
@@ -0,0 +1,2729 @@
+# s1ap.cnf
+# s1ap conformation file
+
+#.OPT
+PER
+ALIGNED
+#.END
+
+#.USE_VALS_EXT
+CauseRadioNetwork
+ProcedureCode
+ProtocolIE-ID
+
+#.EXPORTS ONLY_VALS WS_DLL
+CauseRadioNetwork
+CauseTransport
+CauseNas
+CauseProtocol
+CauseMisc
+Cause
+
+#.EXPORTS
+EN-DCSONConfigurationTransfer_PDU
+ENB-StatusTransfer-TransparentContainer_PDU
+EUTRAN-CGI_PDU
+Global-ENB-ID_PDU
+Global-ENB-ID
+HandoverRestrictionList_PDU
+IntersystemSONConfigurationTransfer_PDU
+LastVisitedEUTRANCellInformation_PDU
+LastVisitedGERANCellInformation_PDU
+MDTMode_PDU
+PSCellInformation_PDU
+SourceeNB-ToTargeteNB-TransparentContainer_PDU
+SONConfigurationTransfer_PDU
+SONtransferApplicationIdentity_PDU
+SONtransferRequestContainer_PDU
+SONtransferRequestContainer
+SONtransferResponseContainer_PDU
+SONtransferResponseContainer
+SONtransferCause_PDU
+TargeteNB-ToSourceeNB-TransparentContainer_PDU
+UE-HistoryInformation_PDU
+
+#.PDU
+EN-DCSONConfigurationTransfer
+ENB-StatusTransfer-TransparentContainer
+EUTRAN-CGI
+HandoverRestrictionList
+IntersystemSONConfigurationTransfer
+LastVisitedEUTRANCellInformation
+LastVisitedGERANCellInformation
+MDTMode
+PSCellInformation
+S1AP-PDU
+SourceeNB-ToTargeteNB-TransparentContainer
+SONConfigurationTransfer
+SONtransferApplicationIdentity
+SONtransferRequestContainer
+SONtransferResponseContainer
+SONtransferCause
+TargeteNB-ToSourceeNB-TransparentContainer
+UE-HistoryInformation
+
+#.MAKE_ENUM
+HandoverType
+ProcedureCode
+ProtocolIE-ID
+RAT-Type
+SRVCCHOIndication
+
+#.NO_EMIT
+TBCD-STRING
+SourceBSS-ToTargetBSS-TransparentContainer
+TargetBSS-ToSourceBSS-TransparentContainer
+SourceRNC-ToTargetRNC-TransparentContainer
+TargetRNC-ToSourceRNC-TransparentContainer
+SourceNgRanNode-ToTargetNgRanNode-TransparentContainer
+TargetNgRanNode-ToSourceNgRanNode-TransparentContainer
+ReportingCellList
+ReportingCellList-Item
+
+#.OMIT_ASSIGNMENT
+# Get rid of unused code warnings
+ProtocolIE-FieldPair
+ProtocolIE-ContainerPair
+ProtocolIE-ContainerPairList
+ProtocolError-IE-ContainerList
+E-RAB-IE-ContainerPairList
+Presence
+L3-Information
+OldBSS-ToNewBSS-Information
+#.END
+
+
+#.TYPE_RENAME
+
+InitiatingMessage/value InitiatingMessage_value
+SuccessfulOutcome/value SuccessfulOutcome_value
+UnsuccessfulOutcome/value UnsuccessfulOutcome_value
+
+#.FIELD_RENAME
+
+InitiatingMessage/value initiatingMessagevalue
+UnsuccessfulOutcome/value unsuccessfulOutcome_value
+SuccessfulOutcome/value successfulOutcome_value
+
+
+PrivateIE-Field/id private_id
+ProtocolExtensionField/id ext_id
+
+#PrivateIE-Field/value private_value
+ProtocolIE-Field/value ie_field_value
+
+#.FIELD_ATTR
+UE-associatedLogicalS1-ConnectionItem/eNB-UE-S1AP-ID ABBREV=ENB_UE_S1AP_ID
+UE-associatedLogicalS1-ConnectionItem/mME-UE-S1AP-ID ABBREV=MME_UE_S1AP_ID
+UE-S1AP-ID-pair/eNB-UE-S1AP-ID ABBREV=ENB_UE_S1AP_ID
+UE-S1AP-ID-pair/mME-UE-S1AP-ID ABBREV=MME_UE_S1AP_ID
+UE-S1AP-IDs/mME-UE-S1AP-ID ABBREV=MME_UE_S1AP_ID
+
+#.FN_BODY ProtocolIE-ID VAL_PTR=&s1ap_data->protocol_ie_id
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+
+#.FN_FTR ProtocolIE-ID
+ if (tree) {
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s",
+ val_to_str_ext(s1ap_data->protocol_ie_id, &s1ap_ProtocolIE_ID_vals_ext, "unknown (%d)"));
+ }
+#.END
+
+
+
+#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
+# Currently not used
+# FN_PARS ProtocolIE-FieldPair/firstValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairFirstValue
+# FN_PARS ProtocolIE-FieldPair/secondValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairSecondValue
+
+#.FN_BODY ProtocolExtensionID VAL_PTR=&s1ap_data->protocol_extension_id
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+
+#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
+
+#.FN_BODY ProcedureCode VAL_PTR = &s1ap_data->procedure_code
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+#.END
+
+#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
+#.FN_HDR InitiatingMessage/value
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->message_type = INITIATING_MESSAGE;
+#.FN_PARS SuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_SuccessfulOutcomeValue
+#.FN_HDR SuccessfulOutcome/value
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->message_type = SUCCESSFUL_OUTCOME;
+#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
+#.FN_HDR UnsuccessfulOutcome/value
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->message_type = UNSUCCESSFUL_OUTCOME;
+
+#--- Parameterization is not supported in asn2wrs ---
+
+#ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES : IEsSetParam} ::=
+# SEQUENCE (SIZE (lowerBound..upperBound)) OF
+# ProtocolIE-Container {{IEsSetParam}}
+
+#.FN_PARS ProtocolIE-ContainerList
+MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
+MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
+#.FN_HDR ProtocolIE-ContainerList
+ static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
+ { "lowerBound", ASN1_PAR_INTEGER },
+ { "upperBound", ASN1_PAR_INTEGER },
+ { NULL, (asn1_par_type)0 }
+ };
+ asn1_stack_frame_check(actx, "ProtocolIE-ContainerList", ProtocolIE_ContainerList_pars);
+#.END
+
+#ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+# SEQUENCE (SIZE (lowerBound..upperBound)) OF
+# ProtocolIE-ContainerPair {{IEsSetParam}}
+
+# Currently not used
+# FN_PARS ProtocolIE-ContainerPairList
+#MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
+#MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
+# FN_HDR ProtocolIE-ContainerPairList
+# static const asn1_par_def_t ProtocolIE_ContainerPairList_pars[] = {
+# { "lowerBound", ASN1_PAR_INTEGER },
+# { "upperBound", ASN1_PAR_INTEGER },
+# { NULL, 0 }
+# };
+# asn1_stack_frame_check(actx, "ProtocolIE-ContainerPairList", ProtocolIE_ContainerPairList_pars);
+# END
+
+#E-RAB-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxnoofE-RABs, {IEsSetParam} }
+#.FN_BODY E-RAB-IE-ContainerList
+ asn1_stack_frame_push(%(ACTX)s, "ProtocolIE-ContainerList");
+ asn1_param_push_integer(%(ACTX)s, 1);
+ asn1_param_push_integer(%(ACTX)s, maxnoofE_RABs);
+%(DEFAULT_BODY)s
+ asn1_stack_frame_pop(%(ACTX)s, "ProtocolIE-ContainerList");
+#.END
+
+# E-RAB-IE-ContainerPairList { S1AP-PROTOCOL-IES-PAIR : IEsSetParam } ::= ProtocolIE-ContainerPairList { 1, maxnoofE-RABs, {IEsSetParam} }
+# Currently not used
+# FN_BODY SAEB-IE-ContainerPairList
+# asn1_stack_frame_push(%(ACTX)s, "ProtocolIE-ContainerPairList");
+# asn1_param_push_integer(%(ACTX)s, 1);
+# asn1_param_push_integer(%(ACTX)s, maxnoofE_RABs);
+#%(DEFAULT_BODY)s
+# asn1_stack_frame_pop(%(ACTX)s, "ProtocolIE-ContainerPairList");
+# END
+
+# Currently not used
+# ProtocolError-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxnoofE-RABs, {IEsSetParam} }
+# FN_BODY ProtocolError-IE-ContainerList
+# asn1_stack_frame_push(%(ACTX)s, "ProtocolIE-ContainerList");
+# asn1_param_push_integer(%(ACTX)s, 1);
+# asn1_param_push_integer(%(ACTX)s, maxnoofE_RABs);
+#%(DEFAULT_BODY)s
+# asn1_stack_frame_pop(%(ACTX)s, "ProtocolIE-ContainerList");
+# END
+
+#.FN_HDR PrivateIE-ID
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->obj_id = NULL;
+
+#.FN_BODY PrivateIE-ID/global FN_VARIANT = _str VAL_PTR = &s1ap_data->obj_id
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+
+#.FN_BODY PrivateIE-Field/value
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ if (s1ap_data->obj_id) {
+ offset = call_per_oid_callback(s1ap_data->obj_id, tvb, actx->pinfo, tree, offset, actx, hf_index);
+ } else {
+%(DEFAULT_BODY)s
+ }
+
+
+# following construction is not supported by asn2wrs
+# PLMNidentity ::= TBCD-STRING (SIZE (3))
+# TBCD-STRING ::= OCTET STRING
+
+#.FN_BODY PLMNidentity VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ e212_number_type_t number_type = s1ap_data->number_type;
+ s1ap_data->number_type = E212_NONE;
+
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ 3, 3, FALSE, &parameter_tvb);
+ if(tvb_reported_length(tvb)==0)
+ return offset;
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, tree, 0, number_type, FALSE);
+ if (s1ap_data->supported_ta) {
+ guint32 plmn = tvb_get_ntoh24(parameter_tvb, 0);
+ wmem_array_append_one(s1ap_data->supported_ta->plmn, plmn);
+ } else if (s1ap_data->tai) {
+ s1ap_data->tai->plmn = tvb_get_ntoh24(parameter_tvb, 0);
+ }
+#.END
+
+#.FN_BODY ENBname VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+ int length;
+ gboolean is_ascii;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ length = tvb_reported_length(parameter_tvb);
+
+ is_ascii = tvb_ascii_isprint(parameter_tvb, 0, length);
+ 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
+ tvbuff_t *parameter_tvb=NULL;
+ int length;
+ gboolean is_ascii;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ length = tvb_reported_length(parameter_tvb);
+
+ is_ascii = tvb_ascii_isprint(parameter_tvb, 0, length);
+ if (is_ascii)
+ proto_item_append_text(actx->created_item," (%%s)",tvb_format_text(actx->pinfo->pool, parameter_tvb, 0, length));
+
+#.END
+
+
+#.FN_BODY NAS-PDU VAL_PTR = &parameter_tvb
+
+tvbuff_t *parameter_tvb=NULL;
+
+%(DEFAULT_BODY)s
+
+ if ((tvb_reported_length(parameter_tvb)>0)&&(nas_eps_handle))
+ call_dissector(nas_eps_handle,parameter_tvb,%(ACTX)s->pinfo, tree);
+
+#.FN_BODY LPPa-PDU VAL_PTR = &parameter_tvb
+
+ tvbuff_t *parameter_tvb=NULL;
+
+%(DEFAULT_BODY)s
+
+ if ((tvb_reported_length(parameter_tvb)>0)&&(lppa_handle))
+ call_dissector(lppa_handle, parameter_tvb, %(ACTX)s->pinfo, tree);
+
+#.FN_BODY TransportLayerAddress VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+ proto_tree *subtree;
+ gint tvb_len;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+# The Transport Layer Address signalled in S1-AP messages is a bit string of
+# a) 32 bits in case of IPv4 address according to IETF RFC 791 [6]; or
+# b) 128 bits in case of IPv6 address according to IETF RFC 2460 [5]; or
+# c) 160 bits if both IPv4 and IPv6 addresses are signalled, in which case the IPv4 address is contained in the first 32 bits.
+ /* Get the length */
+ tvb_len = tvb_reported_length(parameter_tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_TransportLayerAddress);
+ if (tvb_len==4) {
+ /* IPv4 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv4, parameter_tvb, 0, 4, ENC_BIG_ENDIAN);
+ } else if (tvb_len==16) {
+ /* IPv6 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv6, parameter_tvb, 0, 16, ENC_NA);
+ } else if (tvb_len==20) {
+ /* IPv4 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv4, parameter_tvb, 0, 4, ENC_BIG_ENDIAN);
+ /* IPv6 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv6, parameter_tvb, 4, 16, ENC_NA);
+ }
+
+#.TYPE_ATTR
+Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC
+#.FN_BODY Port-Number VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_HDR InitialUEMessage
+ /* Set the direction of the message */
+ actx->pinfo->link_dir=P2P_DIR_UL;
+
+#.FN_HDR DownlinkNASTransport
+ /* Set the direction of the message */
+ actx->pinfo->link_dir=P2P_DIR_DL;
+
+#.FN_HDR UplinkNASTransport
+ /* Set the direction of the message */
+ actx->pinfo->link_dir=P2P_DIR_UL;
+
+#.FN_BODY HandoverType VAL_PTR = &s1ap_data->handover_type_value
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+
+#.FN_BODY SRVCCHOIndication VAL_PTR = &srvcc_ho_ind
+ guint32 srvcc_ho_ind;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+ if (srvcc_ho_ind == cSonly)
+ s1ap_data->srvcc_ho_cs_only = TRUE;
+
+#Undef the value before use
+#.FN_HDR HandoverRequired
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->handover_type_value = 0xff;
+ s1ap_data->srvcc_ho_cs_only = FALSE;
+#.FN_HDR HandoverCommand
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->handover_type_value = 0xff;
+#.FN_HDR HandoverRequest
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->handover_type_value = 0xff;
+#.FN_HDR HandoverRequestAcknowledge
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->handover_type_value = 0xff;
+
+#.FN_BODY SourceeNB-ToTargeteNB-TransparentContainer
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ volatile guint32 _offset;
+
+ s1ap_data->transparent_container_type = SOURCE_TO_TARGET_TRANSPARENT_CONTAINER;
+ _offset = offset;
+ TRY {
+
+ offset = dissect_per_sequence(tvb, _offset, actx, tree, hf_index,
+ ett_s1ap_SourceeNB_ToTargeteNB_TransparentContainer, SourceeNB_ToTargeteNB_TransparentContainer_sequence);
+ } CATCH_ALL {
+ show_exception(tvb, actx->pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ offset = _offset;
+
+
+
+#.FN_BODY Source-ToTarget-TransparentContainer VAL_PTR = &parameter_tvb
+# I think the message is "directly encoded" into the octet string(no "double encoding")
+# (Compare RANAP)
+# Annex A
+# ...Therefore the container content is encoded according to the
+# rules which are specified for the target radio system. In section 8.4.1.2,
+# it is described how the container shall be encoded with respect to the scenario
+# in which it is used.
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+ %(DEFAULT_BODY)s
+
+ if ((g_s1ap_dissect_container)&&(parameter_tvb) && (tvb_reported_length(parameter_tvb) > 0)) {
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ /* 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_s1ap_ToTargetTransparentContainer);
+
+ switch(s1ap_data->handover_type_value){
+ /*
+ HandoverType ::= ENUMERATED {
+ intralte,
+ ltetoutran,
+ ltetogeran,
+ utrantolte,
+ gerantolte,
+ ...
+ eps_to_5gs,
+ fivegs_to_eps
+ } */
+ case intralte:
+ /* intralte
+ Intra E-UTRAN handover Source eNB to Target eNB
+ Transparent Container 36.413
+ */
+ case utrantolte:
+ /* utrantolte */
+ case gerantolte:
+ /* gerantolte */
+ case fivegs_to_eps:
+ /* fivegs_to_eps */
+ dissect_s1ap_SourceeNB_ToTargeteNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case ltetoutran:
+ /* ltetoutran
+ Source RNC to Target RNC
+ Transparent Container 25.413
+ */
+ dissect_ranap_SourceRNC_ToTargetRNC_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case ltetogeran:
+ /* ltetogeran
+ Source BSS to Target BSS
+ Transparent Container 48.018
+ or
+ Old BSS to New BSS information elements
+ Transparent Container 48.008
+ */
+ if (s1ap_data->srvcc_ho_cs_only)
+ bssmap_old_bss_to_new_bss_info(parameter_tvb, subtree, actx->pinfo);
+ else
+ de_bssgp_source_BSS_to_target_BSS_transp_cont(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
+ break;
+ case eps_to_5gs:
+ /* eps_to_5gs */
+ dissect_ngap_SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ break;
+ default:
+ break;
+ }
+ /* Enable writing of the column again */
+ col_set_writable(actx->pinfo->cinfo, COL_INFO, TRUE);
+ }
+
+#.FN_BODY TargeteNB-ToSourceeNB-TransparentContainer
+ 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;
+ TRY {
+
+ _offset = dissect_per_sequence(tvb, _offset, actx, tree, hf_index,
+ ett_s1ap_TargeteNB_ToSourceeNB_TransparentContainer, TargeteNB_ToSourceeNB_TransparentContainer_sequence);
+ } CATCH_ALL {
+ show_exception(tvb, actx->pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ 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")
+# See Target-ToSource-TransparentContainer in RANAP
+
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+
+ if ((g_s1ap_dissect_container)&&(parameter_tvb) && (tvb_reported_length(parameter_tvb) > 0)) {
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_ToSourceTransparentContainer);
+
+ switch(s1ap_data->handover_type_value){
+ /*
+ HandoverType ::= ENUMERATED {
+ intralte,
+ ltetoutran,
+ ltetogeran,
+ utrantolte,
+ gerantolte,
+ ...
+ eps_to_5gs,
+ fivegs_to_eps
+ } */
+ case intralte:
+ /* intralte
+ Intra E-UTRAN handover Target eNB to Source eNB
+ Transparent Container 36.413
+ */
+ case utrantolte:
+ /* utrantolte */
+ case gerantolte:
+ /* gerantolte */
+ case fivegs_to_eps:
+ /* fivegs_to_eps */
+ dissect_s1ap_TargeteNB_ToSourceeNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case ltetoutran:
+ /* ltetoutran
+ Target RNC to Source RNC
+ Transparent Container 25.413
+ */
+ dissect_ranap_TargetRNC_ToSourceRNC_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ break;
+ case ltetogeran:
+ /* ltetogeran
+ Target BSS to Source BSS
+ Transparent Container 48.018
+ */
+ de_bssgp_target_BSS_to_source_BSS_transp_cont(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
+ break;
+ case eps_to_5gs:
+ /* eps_to_5gs */
+ dissect_ngap_TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ break;
+ default:
+ break;
+ }
+ }
+#SourceBSS-ToTargetBSS-TransparentContainer
+#SourceRNC-ToTargetRNC-TransparentContainer
+#TargetRNC-ToSourceRNC-TransparentContainer
+#TargetBSS-ToSourceBSS-TransparentContainer
+
+#.FN_BODY RRC-Container VAL_PTR = &parameter_tvb
+
+# Extracts from the standard:
+# Includes the RRC Handover Preparation Information message as defined
+# in subclause 10.2.2 of [16].
+# [16] 3GPP TS 36.331: "Evolved Universal Terrestrial Radio Access (E-UTRAN); Radio Resource
+# Control (RRC) Protocol Specification3GPP TS 36.331:
+# "Evolved Universal Terrestrial Radio Access (E-UTRAN); Radio Resource
+# Control (RRC) Protocol Specification.
+# :
+# 9.2.1.7 Source eNB to Target eNB Transparent Container
+# The Source eNB to target eNB Transparent Container IE is an information element
+# that is produced by the source eNB and is transmitted to the target eNB.
+# For inter-system handovers to E-UTRAN, the IE is transmitted from the external
+# handover source to the target eNB. This IE is transparent to the EPC.
+#
+# RRC Container M OCTET STRING Includes the RRC Handover Preparation Information
+# message as defined in subclause 10.2.2 of [16].
+# :
+# 9.2.1.8 Target eNB to Source eNB Transparent Container
+# The Target eNB to Source eNB Transparent Container IE is an information element
+# that is produced by the target eNB and is transmitted to the source eNB.
+# For inter-system handovers to E-UTRAN, the IE is transmitted from the target
+# eNB to the external relocation source.
+# :
+# RRC Container M OCTET STRING Includes the RRC E-UTRA Handover Command message
+# as defined in subclause 10.2.2 of [16].
+# --- End quote ---
+# Source eNB to Target eNB Transparent Container is present in
+# HandoverRequired and HandoverRequest.
+# Target eNB to Source eNB Transparent Container is present in
+# HandoverCommand and HandoverRequestAcknowledge.
+
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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:
+ /* 9.2.1.7 Source eNB to Target eNB Transparent Container */
+ 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 {
+ dissect_lte_rrc_HandoverPreparationInformation_NB_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ } else {
+ TRY {
+ dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ }
+ break;
+ case TARGET_TO_SOURCE_TRANSPARENT_CONTAINER:
+ /* 9.2.1.8 Target eNB to Source eNB Transparent Container */
+ TRY {
+ dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ break;
+ default:
+ break;
+ }
+ offset = saved_offset;
+ }
+
+#.FN_BODY UE-HistoryInformationFromTheUE VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ if (g_s1ap_dissect_container) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UE_HistoryInformationFromTheUE);
+ TRY {
+ dissect_lte_rrc_VisitedCellInfoList_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ }
+
+#.FN_BODY UERadioCapability VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ 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_UERadioCapability);
+ 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)) {
+ handle = lte_rrc_ue_radio_access_cap_info_nb_handle;
+ } else {
+ handle = lte_rrc_ue_radio_access_cap_info_handle;
+ }
+ if (handle) {
+ TRY {
+ call_dissector(handle, parameter_tvb, actx->pinfo, subtree);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ }
+ }
+
+#.TYPE_ATTR
+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
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+
+ if (!parameter_tvb)
+ return offset;
+
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_RIMInformation);
+ if ((tvb_reported_length(parameter_tvb)>0)&&(bssgp_handle)){
+ col_set_fence(%(ACTX)s->pinfo->cinfo, COL_INFO);
+ call_dissector(bssgp_handle,parameter_tvb,%(ACTX)s->pinfo, subtree);
+ }
+
+
+#.FN_BODY Cdma2000PDU VAL_PTR = &parameter_tvb
+
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+if (gcsna_handle) {
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_Cdma2000PDU);
+ call_dissector(gcsna_handle, parameter_tvb, %(ACTX)s->pinfo, subtree);
+}
+
+
+#.FN_BODY Cdma2000SectorID VAL_PTR = &parameter_tvb
+/* 9.2.1.25
+ * This IE is set to CDMA2000 Reference Cell ID
+ * corresponding to the HRPD/1xRTT sector under
+ * the HRPD AN/1xBS to which the eNB has initiated the UE
+ * to handover to. The CDMA2000 Reference Cell
+ * ID is statically configured in the eNB.
+ */
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_Cdma2000SectorID);
+ dissect_a21_ie_common(parameter_tvb, %(ACTX)s->pinfo, NULL/* Top tree not needed */, subtree, 0, 0 /* message_type not needed */);
+
+#.FN_BODY UERadioCapabilityForPaging VAL_PTR = &parameter_tvb
+# 9.2.1.98 UE Radio Capability for Paging
+# Includes the UERadioPagingInformation message as defined in 10.2.2 of TS 36.331 [16].
+
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ 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_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;
+ }
+ if (handle) {
+ TRY {
+ call_dissector(handle, parameter_tvb, actx->pinfo, subtree);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ }
+ }
+
+#.FN_BODY CELevel VAL_PTR = &parameter_tvb
+# 9.2.1.109 Cell Identifier and Coverage Enhancement Level
+# Includes the UEPagingCoverageInformation message as defined in 10.2.2 of TS 36.331
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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 {
+ dissect_lte_rrc_UEPagingCoverageInformation_NB_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ } else {
+ TRY {
+ dissect_lte_rrc_UEPagingCoverageInformation_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 VAL_PTR = &parameter_tvb
+# 9.2.3.40 RLF Report Information
+# Includes the rlf-Report-r9 contained in UEInformationResponse message as defined in TS 36.331
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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);
+ }
+ 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
+# 9.2.3.40 RLF Report Information
+# Includes the rlf-Report-v9e0 contained in UEInformationResponse message as defined in TS 36.331
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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);
+ }
+ CATCH_BOUNDS_ERRORS {
+ 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
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ offset = saved_offset;
+ }
+
+#.FN_BODY TooEarlyInterRATHOReportReportFromEUTRAN/uERLFReportContainer VAL_PTR = &parameter_tvb
+# B.1.17 Failure Event Report
+# Includes the RLF Report contained in the UEInformationResponse message (TS 36.331 [16])
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ offset = saved_offset;
+ }
+
+#.TYPE_ATTR
+ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = &s1ap_ProtocolIE_ID_vals_ext
+
+#.FN_BODY S1-Message VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_S1_Message);
+ col_set_fence(actx->pinfo->cinfo, COL_INFO);
+ call_dissector(s1ap_handle, parameter_tvb, actx->pinfo, subtree);
+
+#.FN_BODY E-UTRAN-Trace-ID VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_E_UTRAN_Trace_ID);
+ dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE);
+ proto_tree_add_item(subtree, hf_s1ap_E_UTRAN_Trace_ID_TraceID, parameter_tvb, 3, 3, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_s1ap_E_UTRAN_Trace_ID_TraceRecordingSessionReference, parameter_tvb, 6, 2, ENC_BIG_ENDIAN);
+
+#.FN_BODY InterfacesToTrace VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_interfacesToTrace_S1_MME,
+ &hf_s1ap_interfacesToTrace_X2,
+ &hf_s1ap_interfacesToTrace_Uu,
+ &hf_s1ap_interfacesToTrace_F1_C,
+ &hf_s1ap_interfacesToTrace_E1,
+ &hf_s1ap_interfacesToTrace_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_InterfacesToTrace);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+IntersystemMeasurementConfiguration/rSRP DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_threshold_nr_rsrp_fmt)
+
+#.TYPE_ATTR
+IntersystemMeasurementConfiguration/rSRQ DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_threshold_nr_rsrq_fmt)
+
+#.TYPE_ATTR
+IntersystemMeasurementConfiguration/sINR DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_threshold_nr_sinr_fmt)
+
+#.TYPE_ATTR
+InterSystemMeasurementParameters/measurementDuration DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+BitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_sec
+
+#.FN_BODY InterSystemMeasurementItem/sMTC VAL_PTR = &ssb_mtc_tvb
+ tvbuff_t *ssb_mtc_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ssb_mtc_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_sMTC);
+ dissect_lte_rrc_MTC_SSB_NR_r15_PDU(ssb_mtc_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY InterSystemMeasurementItem/threshRS-Index-r15 VAL_PTR = &threshold_list_tvb
+ tvbuff_t *threshold_list_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (threshold_list_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_threshRS_Index_r15);
+ dissect_lte_rrc_ThresholdListNR_r15_PDU(threshold_list_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY InterSystemMeasurementItem/sSBToMeasure VAL_PTR = &ssb_to_meas_tvb
+ tvbuff_t *ssb_to_meas_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ssb_to_meas_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_sSBToMeasure);
+ dissect_lte_rrc_SSB_ToMeasure_r15_PDU(ssb_to_meas_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY InterSystemMeasurementItem/sSRSSIMeasurement VAL_PTR = &ss_rssi_meas_tvb
+ tvbuff_t *ss_rssi_meas_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (ss_rssi_meas_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_sSRSSIMeasurement);
+ dissect_lte_rrc_SS_RSSI_Measurement_r15_PDU(ss_rssi_meas_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY InterSystemMeasurementItem/quantityConfigNR-R15 VAL_PTR = &quantity_config_nr_tvb
+ tvbuff_t *quantity_config_nr_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (quantity_config_nr_tvb) {
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_quantityConfigNR_R15);
+ dissect_lte_rrc_QuantityConfigNR_r15_PDU(quantity_config_nr_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY InterSystemMeasurementItem/excludedCellsToAddModList VAL_PTR = &excluded_cells_list_tvb
+ tvbuff_t *excluded_cells_list_tvb = NULL;
+%(DEFAULT_BODY)s
+ 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
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_GUMMEI;
+%(DEFAULT_BODY)s
+
+#.TYPE_ATTR
+MME-Code TYPE = FT_UINT8 DISPLAY = BASE_DEC_HEX
+#.FN_BODY MME-Code VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+MME-Group-ID TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
+#.FN_BODY MME-Group-ID VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY EncryptionAlgorithms VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_encryptionAlgorithms_EEA1,
+ &hf_s1ap_encryptionAlgorithms_EEA2,
+ &hf_s1ap_encryptionAlgorithms_EEA3,
+ &hf_s1ap_encryptionAlgorithms_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_EncryptionAlgorithms);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 2, fields, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY IntegrityProtectionAlgorithms VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_integrityProtectionAlgorithms_EIA1,
+ &hf_s1ap_integrityProtectionAlgorithms_EIA2,
+ &hf_s1ap_integrityProtectionAlgorithms_EIA3,
+ &hf_s1ap_integrityProtectionAlgorithms_EIA7,
+ &hf_s1ap_integrityProtectionAlgorithms_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_IntegrityProtectionAlgorithms);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 2, fields, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+Time-UE-StayedInCell DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+Time-UE-StayedInCell-EnhancedGranularity DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_Time_UE_StayedInCell_EnhancedGranularity_fmt)
+
+#.FN_BODY TimeSinceSecondaryNodeRelease VAL_PTR=&parameter_tvb HF_INDEX=-1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 4, ENC_BIG_ENDIAN);
+ }
+
+#.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;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ offset = saved_offset;
+ }
+
+#.FN_BODY LastVisitedUTRANCellInformation VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb;
+ proto_tree *subtree;
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ 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);
+ }
+ CATCH_BOUNDS_ERRORS {
+ show_exception(parameter_tvb, actx->pinfo, subtree, EXCEPT_CODE, GET_MESSAGE);
+ }
+ ENDTRY;
+ offset = saved_offset;
+ }
+
+#.TYPE_ATTR
+MessageIdentifier TYPE = FT_UINT16 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = &lte_rrc_messageIdentifier_vals_ext
+
+#.FN_BODY MessageIdentifier VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY SerialNumber 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_s1ap_SerialNumber);
+ proto_tree_add_item(subtree, hf_s1ap_SerialNumber_gs, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_s1ap_SerialNumber_msg_code, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_s1ap_SerialNumber_upd_nb, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+RepetitionPeriod DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.FN_BODY WarningType 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_s1ap_WarningType);
+ proto_tree_add_item(subtree, hf_s1ap_WarningType_value, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_s1ap_WarningType_emergency_user_alert, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(subtree, hf_s1ap_WarningType_popup, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY DataCodingScheme VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ proto_tree *subtree;
+
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_DataCodingScheme);
+ s1ap_data->data_coding_scheme = dissect_cbs_data_coding_scheme(parameter_tvb, actx->pinfo, subtree, 0);
+ }
+
+#.TYPE_ATTR
+DataSize DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_bits
+
+#.FN_BODY WarningMessageContents VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_WarningMessageContents);
+ dissect_s1ap_warningMessageContents(parameter_tvb, subtree, actx->pinfo, s1ap_data->data_coding_scheme, hf_s1ap_WarningMessageContents_nb_pages, hf_s1ap_WarningMessageContents_decoded_page);
+ }
+
+#.FN_BODY MSClassmark2 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_s1ap_MSClassmark);
+ de_ms_cm_2(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
+ }
+
+#.FN_BODY MSClassmark3 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_s1ap_MSClassmark);
+ de_ms_cm_3(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
+ }
+
+#.TYPE_ATTR
+EUTRANRoundTripDelayEstimationInfo DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_EUTRANRoundTripDelayEstimationInfo_fmt)
+
+#.TYPE_ATTR
+ExtendedRepetitionPeriod DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.FN_BODY MeasurementsToActivate VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_measurementsToActivate_M1,
+ &hf_s1ap_measurementsToActivate_M2,
+ &hf_s1ap_measurementsToActivate_M3,
+ &hf_s1ap_measurementsToActivate_M4,
+ &hf_s1ap_measurementsToActivate_M5,
+ &hf_s1ap_measurementsToActivate_LoggingM1FromEventTriggered,
+ &hf_s1ap_measurementsToActivate_M6,
+ &hf_s1ap_measurementsToActivate_M7,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_MeasurementsToActivate);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY MDT-Location-Info VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_MDT_Location_Info_GNSS,
+ &hf_s1ap_MDT_Location_Info_E_CID,
+ &hf_s1ap_MDT_Location_Info_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_MDT_Location_Info);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+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
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA);
+#.END
+
+#.TYPE_ATTR
+ExpectedActivityPeriod DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+ExpectedIdlePeriod DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.FN_BODY E-RABUsageReportItem/startTimestamp VAL_PTR = &timestamp_tvb
+ tvbuff_t *timestamp_tvb = NULL;
+%(DEFAULT_BODY)s
+
+#.FN_FTR E-RABUsageReportItem/startTimestamp
+ if (timestamp_tvb) {
+ proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
+ }
+
+#.FN_BODY E-RABUsageReportItem/endTimestamp VAL_PTR = &timestamp_tvb
+ tvbuff_t *timestamp_tvb = NULL;
+%(DEFAULT_BODY)s
+
+#.FN_FTR E-RABUsageReportItem/endTimestamp
+ if (timestamp_tvb) {
+ proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
+ }
+
+#.TYPE_ATTR
+E-RABUsageReportItem/usageCountUL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_octet_octets
+
+#.TYPE_ATTR
+E-RABUsageReportItem/usageCountDL DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_octet_octets
+
+#.TYPE_ATTR
+ExtendedBitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_sec
+
+#.FN_BODY NRencryptionAlgorithms VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ static int * const fields[] = {
+ &hf_s1ap_NRencryptionAlgorithms_NEA1,
+ &hf_s1ap_NRencryptionAlgorithms_NEA2,
+ &hf_s1ap_NRencryptionAlgorithms_NEA3,
+ &hf_s1ap_NRencryptionAlgorithms_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_NRencryptionAlgorithms);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 2, fields, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY NRintegrityProtectionAlgorithms VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ static int * const fields[] = {
+ &hf_s1ap_NRintegrityProtectionAlgorithms_NIA1,
+ &hf_s1ap_NRintegrityProtectionAlgorithms_NIA2,
+ &hf_s1ap_NRintegrityProtectionAlgorithms_NIA3,
+ &hf_s1ap_NRintegrityProtectionAlgorithms_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_NRintegrityProtectionAlgorithms);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 2, fields, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY UE-Application-Layer-Measurement-Capability VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if(parameter_tvb){
+ static int * const fields[] = {
+ &hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_streaming_service,
+ &hf_s1ap_UE_Application_Layer_Measurement_Capability_QoE_Measurement_for_MTSI_service,
+ &hf_s1ap_UE_Application_Layer_Measurement_Capability_Reserved,
+ NULL
+ };
+ proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UE_Application_Layer_Measurement_Capability);
+ proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+TAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
+#.FN_BODY TAC VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ if (s1ap_data->supported_ta) {
+ s1ap_data->supported_ta->tac = tvb_get_ntohs(parameter_tvb, 0);
+ } else if (s1ap_data->tai) {
+ s1ap_data->tai->tac = tvb_get_ntohs(parameter_tvb, 0);
+ }
+ }
+
+#.FN_BODY LAI
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_LAI;
+%(DEFAULT_BODY)s
+
+#.TYPE_ATTR
+LAC TYPE = FT_UINT16 DISPLAY = BASE_DEC_HEX
+#.FN_BODY LAC VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+RAC TYPE = FT_UINT8 DISPLAY = BASE_DEC_HEX
+#.FN_BODY RAC VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 1, ENC_BIG_ENDIAN);
+ }
+
+#.FN_BODY FiveGSTAI
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_5GSTAI;
+%(DEFAULT_BODY)s
+
+#.TYPE_ATTR
+FiveGSTAC TYPE = FT_UINT24 DISPLAY = BASE_DEC_HEX
+#.FN_BODY FiveGSTAC VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 3, ENC_BIG_ENDIAN);
+ }
+
+#.TYPE_ATTR
+M-TMSI TYPE = FT_UINT32 DISPLAY = BASE_DEC_HEX
+#.FN_BODY M-TMSI VAL_PTR = &parameter_tvb HF_INDEX = -1
+ tvbuff_t *parameter_tvb = NULL;
+ proto_item *ti;
+%(DEFAULT_BODY)s
+ if (parameter_tvb) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 4, ENC_BIG_ENDIAN);
+ ti = proto_tree_add_item(tree, hf_3gpp_tmsi, tvb, 0, 4, ENC_BIG_ENDIAN);
+ proto_item_set_hidden(ti);
+
+ }
+
+#.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_s1ap_IMSI);
+ dissect_e212_imsi(parameter_tvb, actx->pinfo, subtree, 0, tvb_reported_length(parameter_tvb), FALSE);
+ }
+
+#.FN_BODY NASSecurityParametersfromE-UTRAN 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_s1ap_NASSecurityParameters);
+ de_emm_sec_par_from_eutra(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
+ }
+
+#.FN_BODY NASSecurityParameterstoE-UTRAN 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_s1ap_NASSecurityParameters);
+ de_emm_sec_par_to_eutra(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
+ }
+
+#.FN_HDR SupportedTAs-Item
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+
+ if (!PINFO_FD_VISITED(actx->pinfo) &&
+ (s1ap_data->message_type == INITIATING_MESSAGE) &&
+ ((s1ap_data->procedure_code == id_S1Setup) ||
+ (s1ap_data->procedure_code == id_ENBConfigurationUpdate))) {
+ s1ap_data->supported_ta = wmem_new0(actx->pinfo->pool, struct s1ap_supported_ta);
+ s1ap_data->supported_ta->plmn = wmem_array_new(actx->pinfo->pool, sizeof(guint32));
+ }
+
+#.FN_FTR SupportedTAs-Item
+ s1ap_data->supported_ta = NULL;
+
+#.FN_BODY RAT-Type VAL_PTR = &rat_type
+ 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_othersat) {
+ guint64 *key;
+ guint i;
+
+ for (i = 0; i < wmem_array_get_count(s1ap_data->supported_ta->plmn); i++) {
+ key = wmem_new(wmem_file_scope(), guint64);
+ *key = ((*(guint32*)wmem_array_index(s1ap_data->supported_ta->plmn, i)) << 16) | s1ap_data->supported_ta->tac;
+ wmem_map_insert(s1ap_data->s1ap_conv->nbiot_ta, key, GUINT_TO_POINTER(1));
+ }
+ }
+
+#.FN_BODY ENB-UE-S1AP-ID VAL_PTR = &enb_ue_s1ap_id
+ guint32 enb_ue_s1ap_id;
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+%(DEFAULT_BODY)s
+ if (hf_index == hf_s1ap_eNB_UE_S1AP_ID) {
+ proto_item *item;
+ item = proto_tree_add_uint(tree, hf_s1ap_ENB_UE_S1AP_ID_PDU, tvb, offset, 0 , enb_ue_s1ap_id );
+ proto_item_set_hidden(item);
+ }
+
+ s1ap_data->enb_ue_s1ap_id = (guint16)enb_ue_s1ap_id;
+
+#.FN_BODY MME-UE-S1AP-ID VAL_PTR = &mme_ue_s1ap_id
+ guint32 mme_ue_s1ap_id;
+%(DEFAULT_BODY)s
+ if (hf_index == hf_s1ap_mME_UE_S1AP_ID) {
+ proto_item *item;
+ item = proto_tree_add_uint(tree, hf_s1ap_MME_UE_S1AP_ID_PDU, tvb, offset, 0 , mme_ue_s1ap_id );
+ proto_item_set_hidden(item);
+ }
+
+#.FN_BODY TAI
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_TAI;
+ s1ap_data->tai = wmem_new0(actx->pinfo->pool, struct s1ap_tai);
+%(DEFAULT_BODY)s
+ if (!PINFO_FD_VISITED(actx->pinfo) && s1ap_data->s1ap_conv &&
+ (s1ap_data->message_type == INITIATING_MESSAGE) &&
+ (s1ap_data->procedure_code == id_initialUEMessage)) {
+ guint64 key = (s1ap_data->tai->plmn << 16) | s1ap_data->tai->tac;
+
+ if (wmem_map_lookup(s1ap_data->s1ap_conv->nbiot_ta, &key)) {
+ wmem_tree_key_t tree_key[3];
+ guint32 *id = wmem_new(wmem_file_scope(), guint32);
+
+ *id = s1ap_data->enb_ue_s1ap_id;
+ tree_key[0].length = 1;
+ tree_key[0].key = id;
+ tree_key[1].length = 1;
+ tree_key[1].key = &actx->pinfo->num;
+ tree_key[2].length = 0;
+ tree_key[2].key = NULL;
+ wmem_tree_insert32_array(s1ap_data->s1ap_conv->nbiot_enb_ue_s1ap_id, tree_key, id);
+ }
+ }
+
+#.TYPE_ATTR
+Packet-LossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(s1ap_Packet_LossRate_fmt)
+
+#.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
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA);
+#.END
+
+#.TYPE_ATTR
+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
+ actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, -1, ENC_UTF_8|ENC_NA);
+#.END
+
+#.TYPE_ATTR
+Subscription-Based-UE-DifferentiationInfo/periodicTime DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+ScheduledCommunicationTime/timeofDayStart DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+ScheduledCommunicationTime/timeofDayEnd DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_seconds
+
+#.TYPE_ATTR
+TrafficLoadReductionIndication DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_percent
+
+#.FN_BODY MDT-ConfigurationNR 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_s1ap_MDT_ConfigurationNR);
+ dissect_ngap_MDT_Configuration_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.FN_BODY IntersystemSONConfigurationTransfer 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_s1ap_IntersystemSONConfigurationTransfer);
+ dissect_ngap_SONConfigurationTransfer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
+ }
+
+#.ASSIGN_VALUE_TO_TYPE # S1AP does not have constants assigned to types, they are pure INTEGER
+# ProcedureCode
+
+id-HandoverPreparation ProcedureCode
+id-HandoverResourceAllocation ProcedureCode
+id-HandoverNotification ProcedureCode
+id-PathSwitchRequest ProcedureCode
+id-HandoverCancel ProcedureCode
+id-E-RABSetup ProcedureCode
+id-E-RABModify ProcedureCode
+id-E-RABRelease ProcedureCode
+id-E-RABReleaseIndication ProcedureCode
+id-InitialContextSetup ProcedureCode
+id-Paging ProcedureCode
+id-downlinkNASTransport ProcedureCode
+id-initialUEMessage ProcedureCode
+id-uplinkNASTransport ProcedureCode
+id-Reset ProcedureCode
+id-ErrorIndication ProcedureCode
+id-NASNonDeliveryIndication ProcedureCode
+id-S1Setup ProcedureCode
+id-UEContextReleaseRequest ProcedureCode
+id-DownlinkS1cdma2000tunnelling ProcedureCode
+id-UplinkS1cdma2000tunnelling ProcedureCode
+id-UEContextModification ProcedureCode
+id-UECapabilityInfoIndication ProcedureCode
+id-UEContextRelease ProcedureCode
+id-eNBStatusTransfer ProcedureCode
+id-MMEStatusTransfer ProcedureCode
+id-DeactivateTrace ProcedureCode
+id-TraceStart ProcedureCode
+id-TraceFailureIndication ProcedureCode
+id-ENBConfigurationUpdate ProcedureCode
+id-MMEConfigurationUpdate ProcedureCode
+id-LocationReportingControl ProcedureCode
+id-LocationReportingFailureIndication ProcedureCode
+id-LocationReport ProcedureCode
+id-OverloadStart ProcedureCode
+id-OverloadStop ProcedureCode
+id-WriteReplaceWarning ProcedureCode
+id-eNBDirectInformationTransfer ProcedureCode
+id-MMEDirectInformationTransfer ProcedureCode
+id-PrivateMessage ProcedureCode
+id-eNBConfigurationTransfer ProcedureCode
+id-MMEConfigurationTransfer ProcedureCode
+id-CellTrafficTrace ProcedureCode
+id-Kill ProcedureCode
+id-downlinkUEAssociatedLPPaTransport ProcedureCode
+id-uplinkUEAssociatedLPPaTransport ProcedureCode
+id-downlinkNonUEAssociatedLPPaTransport ProcedureCode
+id-uplinkNonUEAssociatedLPPaTransport ProcedureCode
+id-UERadioCapabilityMatch ProcedureCode
+id-PWSRestartIndication ProcedureCode
+id-E-RABModificationIndication ProcedureCode
+id-PWSFailureIndication ProcedureCode
+id-RerouteNASRequest ProcedureCode
+id-UEContextModificationIndication ProcedureCode
+id-ConnectionEstablishmentIndication ProcedureCode
+id-UEContextSuspend ProcedureCode
+id-UEContextResume ProcedureCode
+id-NASDeliveryIndication ProcedureCode
+id-RetrieveUEInformation ProcedureCode
+id-UEInformationTransfer ProcedureCode
+id-eNBCPRelocationIndication ProcedureCode
+id-MMECPRelocationIndication ProcedureCode
+id-SecondaryRATDataUsageReport ProcedureCode
+id-HandoverSuccess ProcedureCode
+id-eNBEarlyStatusTransfer ProcedureCode
+id-MMEEarlyStatusTransfer ProcedureCode
+
+# ProtocolIE-ID
+id-MME-UE-S1AP-ID ProtocolIE-ID
+id-HandoverType ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-TargetID ProtocolIE-ID
+id-eNB-UE-S1AP-ID ProtocolIE-ID
+id-E-RABSubjecttoDataForwardingList ProtocolIE-ID
+id-E-RABtoReleaseListHOCmd ProtocolIE-ID
+id-E-RABDataForwardingItem ProtocolIE-ID
+id-E-RABReleaseItemBearerRelComp ProtocolIE-ID
+id-E-RABToBeSetupListBearerSUReq ProtocolIE-ID
+id-E-RABToBeSetupItemBearerSUReq ProtocolIE-ID
+id-E-RABAdmittedList ProtocolIE-ID
+id-E-RABFailedToSetupListHOReqAck ProtocolIE-ID
+id-E-RABAdmittedItem ProtocolIE-ID
+id-E-RABFailedtoSetupItemHOReqAck ProtocolIE-ID
+id-E-RABToBeSwitchedDLList ProtocolIE-ID
+id-E-RABToBeSwitchedDLItem ProtocolIE-ID
+id-E-RABToBeSetupListCtxtSUReq ProtocolIE-ID
+id-TraceActivation ProtocolIE-ID
+id-NAS-PDU ProtocolIE-ID
+id-E-RABToBeSetupItemHOReq ProtocolIE-ID
+id-E-RABSetupListBearerSURes ProtocolIE-ID
+id-E-RABFailedToSetupListBearerSURes ProtocolIE-ID
+id-E-RABToBeModifiedListBearerModReq ProtocolIE-ID
+id-E-RABModifyListBearerModRes ProtocolIE-ID
+id-E-RABFailedToModifyList ProtocolIE-ID
+id-E-RABToBeReleasedList ProtocolIE-ID
+id-E-RABFailedToReleaseList ProtocolIE-ID
+id-E-RABItem ProtocolIE-ID
+id-E-RABToBeModifiedItemBearerModReq ProtocolIE-ID
+id-E-RABModifyItemBearerModRes ProtocolIE-ID
+id-E-RABReleaseItem ProtocolIE-ID
+id-E-RABSetupItemBearerSURes ProtocolIE-ID
+id-SecurityContext ProtocolIE-ID
+id-HandoverRestrictionList ProtocolIE-ID
+id-UEPagingID ProtocolIE-ID
+id-pagingDRX ProtocolIE-ID
+id-TAIList ProtocolIE-ID
+id-TAIItem ProtocolIE-ID
+id-E-RABFailedToSetupListCtxtSURes ProtocolIE-ID
+id-E-RABReleaseItemHOCmd ProtocolIE-ID
+id-E-RABSetupItemCtxtSURes ProtocolIE-ID
+id-E-RABSetupListCtxtSURes ProtocolIE-ID
+id-E-RABToBeSetupItemCtxtSUReq ProtocolIE-ID
+id-E-RABToBeSetupListHOReq ProtocolIE-ID
+id-GERANtoLTEHOInformationRes ProtocolIE-ID
+id-UTRANtoLTEHOInformationRes ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-eNBname ProtocolIE-ID
+id-MMEname ProtocolIE-ID
+id-Global-ENB-ID ProtocolIE-ID
+id-ServedPLMNs ProtocolIE-ID
+id-SupportedTAs ProtocolIE-ID
+id-TimeToWait ProtocolIE-ID
+id-uEaggregateMaximumBitrate ProtocolIE-ID
+id-TAI ProtocolIE-ID
+id-E-RABReleaseListBearerRelComp ProtocolIE-ID
+id-cdma2000PDU ProtocolIE-ID
+id-cdma2000RATType ProtocolIE-ID
+id-cdma2000SectorID ProtocolIE-ID
+id-SecurityKey ProtocolIE-ID
+id-UERadioCapability ProtocolIE-ID
+id-GUMMEI-ID ProtocolIE-ID
+id-E-RABInformationListItem ProtocolIE-ID
+id-Direct-Forwarding-Path-Availability ProtocolIE-ID
+id-UEIdentityIndexValue ProtocolIE-ID
+id-cdma2000HOStatus ProtocolIE-ID
+id-cdma2000HORequiredIndication ProtocolIE-ID
+id-E-UTRAN-Trace-ID ProtocolIE-ID
+id-RelativeMMECapacity ProtocolIE-ID
+id-SourceMME-UE-S1AP-ID ProtocolIE-ID
+id-Bearers-SubjectToStatusTransfer-Item ProtocolIE-ID
+id-eNB-StatusTransfer-TransparentContainer ProtocolIE-ID
+id-UE-associatedLogicalS1-ConnectionItem ProtocolIE-ID
+id-ResetType ProtocolIE-ID
+id-UE-associatedLogicalS1-ConnectionListResAck ProtocolIE-ID
+id-E-RABToBeSwitchedULItem ProtocolIE-ID
+id-E-RABToBeSwitchedULList ProtocolIE-ID
+id-S-TMSI ProtocolIE-ID
+id-cdma2000OneXRAND ProtocolIE-ID
+id-RequestType ProtocolIE-ID
+id-UE-S1AP-IDs ProtocolIE-ID
+id-EUTRAN-CGI ProtocolIE-ID
+id-OverloadResponse ProtocolIE-ID
+id-cdma2000OneXSRVCCInfo ProtocolIE-ID
+id-E-RABFailedToBeReleasedList ProtocolIE-ID
+id-Source-ToTarget-TransparentContainer ProtocolIE-ID
+id-ServedGUMMEIs ProtocolIE-ID
+id-SubscriberProfileIDforRFP ProtocolIE-ID
+id-UESecurityCapabilities ProtocolIE-ID
+id-CSFallbackIndicator ProtocolIE-ID
+id-CNDomain ProtocolIE-ID
+id-E-RABReleasedList ProtocolIE-ID
+id-MessageIdentifier ProtocolIE-ID
+id-SerialNumber ProtocolIE-ID
+id-WarningAreaList ProtocolIE-ID
+id-RepetitionPeriod ProtocolIE-ID
+id-NumberofBroadcastRequest ProtocolIE-ID
+id-WarningType ProtocolIE-ID
+id-WarningSecurityInfo ProtocolIE-ID
+id-DataCodingScheme ProtocolIE-ID
+id-WarningMessageContents ProtocolIE-ID
+id-BroadcastCompletedAreaList ProtocolIE-ID
+id-Inter-SystemInformationTransferTypeEDT ProtocolIE-ID
+id-Inter-SystemInformationTransferTypeMDT ProtocolIE-ID
+id-Target-ToSource-TransparentContainer ProtocolIE-ID
+id-SRVCCOperationPossible ProtocolIE-ID
+id-SRVCCHOIndication ProtocolIE-ID
+id-NAS-DownlinkCount ProtocolIE-ID
+id-CSG-Id ProtocolIE-ID
+id-CSG-IdList ProtocolIE-ID
+id-SONConfigurationTransferECT ProtocolIE-ID
+id-SONConfigurationTransferMCT ProtocolIE-ID
+id-TraceCollectionEntityIPAddress ProtocolIE-ID
+id-MSClassmark2 ProtocolIE-ID
+id-MSClassmark3 ProtocolIE-ID
+id-RRC-Establishment-Cause ProtocolIE-ID
+id-NASSecurityParametersfromE-UTRAN ProtocolIE-ID
+id-NASSecurityParameterstoE-UTRAN ProtocolIE-ID
+id-DefaultPagingDRX ProtocolIE-ID
+id-Source-ToTarget-TransparentContainer-Secondary ProtocolIE-ID
+id-Target-ToSource-TransparentContainer-Secondary ProtocolIE-ID
+id-EUTRANRoundTripDelayEstimationInfo ProtocolIE-ID
+id-BroadcastCancelledAreaList ProtocolIE-ID
+id-ConcurrentWarningMessageIndicator ProtocolIE-ID
+id-Data-Forwarding-Not-Possible ProtocolIE-ID
+id-ExtendedRepetitionPeriod ProtocolIE-ID
+id-CellAccessMode ProtocolIE-ID
+id-CSGMembershipStatus ProtocolIE-ID
+id-LPPa-PDU ProtocolIE-ID
+id-Routing-ID ProtocolIE-ID
+id-Time-Synchronisation-Info ProtocolIE-ID
+id-PS-ServiceNotAvailable ProtocolIE-ID
+id-PagingPriority ProtocolIE-ID
+id-x2TNLConfigurationInfo ProtocolIE-ID
+id-eNBX2ExtendedTransportLayerAddresses ProtocolIE-ID
+id-GUMMEIList ProtocolIE-ID
+id-GW-TransportLayerAddress ProtocolIE-ID
+id-Correlation-ID ProtocolIE-ID
+id-SourceMME-GUMMEI ProtocolIE-ID
+id-MME-UE-S1AP-ID-2 ProtocolIE-ID
+id-RegisteredLAI ProtocolIE-ID
+id-RelayNode-Indicator ProtocolIE-ID
+id-TrafficLoadReductionIndication ProtocolIE-ID
+id-MDTConfiguration ProtocolIE-ID
+id-MMERelaySupportIndicator ProtocolIE-ID
+id-GWContextReleaseIndication ProtocolIE-ID
+id-ManagementBasedMDTAllowed ProtocolIE-ID
+id-PrivacyIndicator ProtocolIE-ID
+id-Time-UE-StayedInCell-EnhancedGranularity ProtocolIE-ID
+id-HO-Cause ProtocolIE-ID
+id-VoiceSupportMatchIndicator ProtocolIE-ID
+id-GUMMEIType ProtocolIE-ID
+id-M3Configuration ProtocolIE-ID
+id-M4Configuration ProtocolIE-ID
+id-M5Configuration ProtocolIE-ID
+id-MDT-Location-Info ProtocolIE-ID
+id-MobilityInformation ProtocolIE-ID
+id-Tunnel-Information-for-BBF ProtocolIE-ID
+id-ManagementBasedMDTPLMNList ProtocolIE-ID
+id-SignallingBasedMDTPLMNList ProtocolIE-ID
+id-ULCOUNTValueExtended ProtocolIE-ID
+id-DLCOUNTValueExtended ProtocolIE-ID
+id-ReceiveStatusOfULPDCPSDUsExtended ProtocolIE-ID
+id-ECGIListForRestart ProtocolIE-ID
+id-SIPTO-Correlation-ID ProtocolIE-ID
+id-SIPTO-L-GW-TransportLayerAddress ProtocolIE-ID
+id-TransportInformation ProtocolIE-ID
+id-LHN-ID ProtocolIE-ID
+id-AdditionalCSFallbackIndicator ProtocolIE-ID
+id-TAIListForRestart ProtocolIE-ID
+id-UserLocationInformation ProtocolIE-ID
+id-EmergencyAreaIDListForRestart ProtocolIE-ID
+id-KillAllWarningMessages ProtocolIE-ID
+id-Masked-IMEISV ProtocolIE-ID
+id-eNBIndirectX2TransportLayerAddresses ProtocolIE-ID
+id-uE-HistoryInformationFromTheUE ProtocolIE-ID
+id-ProSeAuthorized ProtocolIE-ID
+id-ExpectedUEBehaviour ProtocolIE-ID
+id-LoggedMBSFNMDT ProtocolIE-ID
+id-UERadioCapabilityForPaging ProtocolIE-ID
+id-E-RABToBeModifiedListBearerModInd ProtocolIE-ID
+id-E-RABToBeModifiedItemBearerModInd ProtocolIE-ID
+id-E-RABNotToBeModifiedListBearerModInd ProtocolIE-ID
+id-E-RABNotToBeModifiedItemBearerModInd ProtocolIE-ID
+id-E-RABModifyListBearerModConf ProtocolIE-ID
+id-E-RABModifyItemBearerModConf ProtocolIE-ID
+id-E-RABFailedToModifyListBearerModConf ProtocolIE-ID
+id-SON-Information-Report ProtocolIE-ID
+id-Muting-Availability-Indication ProtocolIE-ID
+id-Muting-Pattern-Information ProtocolIE-ID
+id-Synchronisation-Information ProtocolIE-ID
+id-E-RABToBeReleasedListBearerModConf ProtocolIE-ID
+id-AssistanceDataForPaging ProtocolIE-ID
+id-CellIdentifierAndCELevelForCECapableUEs ProtocolIE-ID
+id-InformationOnRecommendedCellsAndENBsForPaging ProtocolIE-ID
+id-RecommendedCellItem ProtocolIE-ID
+id-RecommendedENBItem ProtocolIE-ID
+id-ProSeUEtoNetworkRelaying ProtocolIE-ID
+id-ULCOUNTValuePDCP-SNlength18 ProtocolIE-ID
+id-DLCOUNTValuePDCP-SNlength18 ProtocolIE-ID
+id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 ProtocolIE-ID
+id-M6Configuration ProtocolIE-ID
+id-M7Configuration ProtocolIE-ID
+id-PWSfailedECGIList ProtocolIE-ID
+id-MME-Group-ID ProtocolIE-ID
+id-Additional-GUTI ProtocolIE-ID
+id-S1-Message ProtocolIE-ID
+id-CSGMembershipInfo ProtocolIE-ID
+id-Paging-eDRXInformation ProtocolIE-ID
+id-UE-RetentionInformation ProtocolIE-ID
+id-UE-Usage-Type ProtocolIE-ID
+id-extended-UEIdentityIndexValue ProtocolIE-ID
+id-RAT-Type ProtocolIE-ID
+id-BearerType ProtocolIE-ID
+id-NB-IoT-DefaultPagingDRX ProtocolIE-ID
+id-E-RABFailedToResumeListResumeReq ProtocolIE-ID
+id-E-RABFailedToResumeItemResumeReq ProtocolIE-ID
+id-E-RABFailedToResumeListResumeRes ProtocolIE-ID
+id-E-RABFailedToResumeItemResumeRes ProtocolIE-ID
+id-NB-IoT-Paging-eDRXInformation ProtocolIE-ID
+id-V2XServicesAuthorized ProtocolIE-ID
+id-UEUserPlaneCIoTSupportIndicator ProtocolIE-ID
+id-CE-mode-B-SupportIndicator ProtocolIE-ID
+id-SRVCCOperationNotPossible ProtocolIE-ID
+id-NB-IoT-UEIdentityIndexValue ProtocolIE-ID
+id-RRC-Resume-Cause ProtocolIE-ID
+id-DCN-ID ProtocolIE-ID
+id-ServedDCNs ProtocolIE-ID
+id-UESidelinkAggregateMaximumBitrate ProtocolIE-ID
+id-DLNASPDUDeliveryAckRequest ProtocolIE-ID
+id-Coverage-Level ProtocolIE-ID
+id-EnhancedCoverageRestricted ProtocolIE-ID
+id-UE-Level-QoS-Parameters ProtocolIE-ID
+id-DL-CP-SecurityInformation ProtocolIE-ID
+id-UL-CP-SecurityInformation ProtocolIE-ID
+id-extended-e-RAB-MaximumBitrateDL ProtocolIE-ID
+id-extended-e-RAB-MaximumBitrateUL ProtocolIE-ID
+id-extended-e-RAB-GuaranteedBitrateDL ProtocolIE-ID
+id-extended-e-RAB-GuaranteedBitrateUL ProtocolIE-ID
+id-extended-uEaggregateMaximumBitRateDL ProtocolIE-ID
+id-extended-uEaggregateMaximumBitRateUL ProtocolIE-ID
+id-NRrestrictioninEPSasSecondaryRAT ProtocolIE-ID
+id-UEAppLayerMeasConfig ProtocolIE-ID
+id-UE-Application-Layer-Measurement-Capability ProtocolIE-ID
+id-SecondaryRATDataUsageReportList ProtocolIE-ID
+id-SecondaryRATDataUsageReportItem ProtocolIE-ID
+id-HandoverFlag ProtocolIE-ID
+id-E-RABUsageReportItem ProtocolIE-ID
+id-SecondaryRATDataUsageRequest ProtocolIE-ID
+id-NRUESecurityCapabilities ProtocolIE-ID
+id-UnlicensedSpectrumRestriction ProtocolIE-ID
+id-CE-ModeBRestricted ProtocolIE-ID
+id-LTE-M-Indication ProtocolIE-ID
+id-DownlinkPacketLossRate ProtocolIE-ID
+id-UplinkPacketLossRate ProtocolIE-ID
+id-UECapabilityInfoRequest ProtocolIE-ID
+id-serviceType ProtocolIE-ID
+id-AerialUEsubscriptionInformation ProtocolIE-ID
+id-Subscription-Based-UE-DifferentiationInfo ProtocolIE-ID
+id-EndIndication ProtocolIE-ID
+id-EDT-Session ProtocolIE-ID
+id-CNTypeRestrictions ProtocolIE-ID
+id-PendingDataIndication ProtocolIE-ID
+id-BluetoothMeasurementConfiguration ProtocolIE-ID
+id-WLANMeasurementConfiguration ProtocolIE-ID
+id-WarningAreaCoordinates ProtocolIE-ID
+id-NRrestrictionin5GS ProtocolIE-ID
+id-PSCellInformation ProtocolIE-ID
+id-LastNG-RANPLMNIdentity ProtocolIE-ID
+id-ConnectedengNBList ProtocolIE-ID
+id-ConnectedengNBToAddList ProtocolIE-ID
+id-ConnectedengNBToRemoveList ProtocolIE-ID
+id-EN-DCSONConfigurationTransfer-ECT ProtocolIE-ID
+id-EN-DCSONConfigurationTransfer-MCT ProtocolIE-ID
+id-IMSvoiceEPSfallbackfrom5G ProtocolIE-ID
+id-TimeSinceSecondaryNodeRelease ProtocolIE-ID
+id-RequestTypeAdditionalInfo ProtocolIE-ID
+id-AdditionalRRMPriorityIndex ProtocolIE-ID
+id-ContextatSource ProtocolIE-ID
+id-IAB-Authorized ProtocolIE-ID
+id-IAB-Node-Indication ProtocolIE-ID
+id-IAB-Supported ProtocolIE-ID
+id-DataSize ProtocolIE-ID
+id-Ethernet-Type ProtocolIE-ID
+id-NRV2XServicesAuthorized ProtocolIE-ID
+id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID
+id-PC5QoSParameters ProtocolIE-ID
+id-IntersystemSONConfigurationTransferMCT ProtocolIE-ID
+id-IntersystemSONConfigurationTransferECT ProtocolIE-ID
+id-IntersystemMeasurementConfiguration ProtocolIE-ID
+id-SourceNodeID ProtocolIE-ID
+id-NB-IoT-RLF-Report-Container ProtocolIE-ID
+id-UERadioCapabilityID ProtocolIE-ID
+id-UERadioCapability-NR-Format ProtocolIE-ID
+id-MDTConfigurationNR ProtocolIE-ID
+id-DAPSRequestInfo ProtocolIE-ID
+id-DAPSResponseInfoList ProtocolIE-ID
+id-DAPSResponseInfoItem ProtocolIE-ID
+id-NotifySourceeNB ProtocolIE-ID
+id-eNB-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID
+id-Bearers-SubjectToEarlyStatusTransfer-Item ProtocolIE-ID
+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
+
+#.REGISTER
+
+#S1AP-PROTOCOL-IES
+MME-UE-S1AP-ID N s1ap.ies id-MME-UE-S1AP-ID
+HandoverType N s1ap.ies id-HandoverType
+Cause N s1ap.ies id-Cause
+TargetID N s1ap.ies id-TargetID
+ENB-UE-S1AP-ID N s1ap.ies id-eNB-UE-S1AP-ID
+E-RABSubjecttoDataForwardingList N s1ap.ies id-E-RABSubjecttoDataForwardingList
+E-RABList N s1ap.ies id-E-RABtoReleaseListHOCmd
+E-RABDataForwardingItem N s1ap.ies id-E-RABDataForwardingItem
+E-RABReleaseItemBearerRelComp N s1ap.ies id-E-RABReleaseItemBearerRelComp
+E-RABToBeSetupListBearerSUReq N s1ap.ies id-E-RABToBeSetupListBearerSUReq
+E-RABToBeSetupItemBearerSUReq N s1ap.ies id-E-RABToBeSetupItemBearerSUReq
+E-RABAdmittedList N s1ap.ies id-E-RABAdmittedList
+E-RABFailedtoSetupListHOReqAck N s1ap.ies id-E-RABFailedToSetupListHOReqAck
+E-RABAdmittedItem N s1ap.ies id-E-RABAdmittedItem
+E-RABFailedToSetupItemHOReqAck N s1ap.ies id-E-RABFailedtoSetupItemHOReqAck
+E-RABToBeSwitchedDLList N s1ap.ies id-E-RABToBeSwitchedDLList
+E-RABToBeSwitchedDLItem N s1ap.ies id-E-RABToBeSwitchedDLItem
+E-RABToBeSetupListCtxtSUReq N s1ap.ies id-E-RABToBeSetupListCtxtSUReq
+TraceActivation N s1ap.ies id-TraceActivation
+E-UTRAN-Trace-ID N s1ap.ies id-E-UTRAN-Trace-ID
+NAS-PDU N s1ap.ies id-NAS-PDU
+E-RABToBeSetupItemHOReq N s1ap.ies id-E-RABToBeSetupItemHOReq
+E-RABSetupListBearerSURes N s1ap.ies id-E-RABSetupListBearerSURes
+E-RABList N s1ap.ies id-E-RABFailedToSetupListBearerSURes
+E-RABToBeModifiedListBearerModReq N s1ap.ies id-E-RABToBeModifiedListBearerModReq
+E-RABModifyListBearerModRes N s1ap.ies id-E-RABModifyListBearerModRes
+E-RABList N s1ap.ies id-E-RABFailedToModifyList
+E-RABList N s1ap.ies id-E-RABToBeReleasedList
+E-RABList N s1ap.ies id-E-RABFailedToReleaseList
+E-RABItem N s1ap.ies id-E-RABItem
+E-RABToBeModifiedItemBearerModReq N s1ap.ies id-E-RABToBeModifiedItemBearerModReq
+E-RABModifyItemBearerModRes N s1ap.ies id-E-RABModifyItemBearerModRes
+#SAEBearerReleaseItem N s1ap.ies id-E-RABReleaseItem
+E-RABSetupItemBearerSURes N s1ap.ies id-E-RABSetupItemBearerSURes
+SecurityContext N s1ap.ies id-SecurityContext
+HandoverRestrictionList N s1ap.ies id-HandoverRestrictionList
+UEPagingID N s1ap.ies id-UEPagingID
+PagingDRX N s1ap.ies id-pagingDRX
+TAIList N s1ap.ies id-TAIList
+TAIItem N s1ap.ies id-TAIItem
+E-RABList N s1ap.ies id-E-RABFailedToSetupListCtxtSURes
+#E-RABReleaseItemHOCmd N s1ap.ies id-E-RABReleaseItemHOCmd
+E-RABSetupItemCtxtSURes N s1ap.ies id-E-RABSetupItemCtxtSURes
+E-RABSetupListCtxtSURes N s1ap.ies id-E-RABSetupListCtxtSURes
+E-RABToBeSetupItemCtxtSUReq N s1ap.ies id-E-RABToBeSetupItemCtxtSUReq
+E-RABToBeSetupListHOReq N s1ap.ies id-E-RABToBeSetupListHOReq
+#UTRANtoLTEHOInformationRes N s1ap.ies id-UTRANtoLTEHOInformationRes
+CriticalityDiagnostics N s1ap.ies id-CriticalityDiagnostics
+Global-ENB-ID N s1ap.ies id-Global-ENB-ID
+ENBname N s1ap.ies id-eNBname
+MMEname N s1ap.ies id-MMEname
+ServedPLMNs N s1ap.ies id-ServedPLMNs
+SupportedTAs N s1ap.ies id-SupportedTAs
+TimeToWait N s1ap.ies id-TimeToWait
+UEAggregateMaximumBitrate N s1ap.ies id-uEaggregateMaximumBitrate
+TAI N s1ap.ies id-TAI
+E-RABReleaseListBearerRelComp N s1ap.ies id-E-RABReleaseListBearerRelComp
+Cdma2000PDU N s1ap.ies id-cdma2000PDU
+Cdma2000RATType N s1ap.ies id-cdma2000RATType
+Cdma2000SectorID N s1ap.ies id-cdma2000SectorID
+SecurityKey N s1ap.ies id-SecurityKey
+UERadioCapability N s1ap.ies id-UERadioCapability
+GUMMEI N s1ap.ies id-GUMMEI-ID
+E-RABInformationListItem N s1ap.ies id-E-RABInformationListItem
+Direct-Forwarding-Path-Availability N s1ap.ies id-Direct-Forwarding-Path-Availability
+UEIdentityIndexValue N s1ap.ies id-UEIdentityIndexValue
+Cdma2000HOStatus N s1ap.ies id-cdma2000HOStatus
+Cdma2000HORequiredIndication N s1ap.ies id-cdma2000HORequiredIndication
+RelativeMMECapacity N s1ap.ies id-RelativeMMECapacity
+MME-UE-S1AP-ID N s1ap.ies id-SourceMME-UE-S1AP-ID
+Bearers-SubjectToStatusTransfer-Item N s1ap.ies id-Bearers-SubjectToStatusTransfer-Item
+ENB-StatusTransfer-TransparentContainer N s1ap.ies id-eNB-StatusTransfer-TransparentContainer
+UE-associatedLogicalS1-ConnectionItem N s1ap.ies id-UE-associatedLogicalS1-ConnectionItem
+ResetType N s1ap.ies id-ResetType
+UE-associatedLogicalS1-ConnectionListResAck N s1ap.ies id-UE-associatedLogicalS1-ConnectionListResAck
+E-RABToBeSwitchedULItem N s1ap.ies id-E-RABToBeSwitchedULItem
+E-RABToBeSwitchedULList N s1ap.ies id-E-RABToBeSwitchedULList
+S-TMSI N s1ap.ies id-S-TMSI
+Cdma2000OneXRAND N s1ap.ies id-cdma2000OneXRAND
+RequestType N s1ap.ies id-RequestType
+UE-S1AP-IDs N s1ap.ies id-UE-S1AP-IDs
+EUTRAN-CGI N s1ap.ies id-EUTRAN-CGI
+OverloadResponse N s1ap.ies id-OverloadResponse
+Cdma2000OneXSRVCCInfo N s1ap.ies id-cdma2000OneXSRVCCInfo
+#SAEBearerList N s1ap.ies id-E-RABFailedToBeReleasedList
+Source-ToTarget-TransparentContainer N s1ap.ies id-Source-ToTarget-TransparentContainer
+ServedGUMMEIs N s1ap.ies id-ServedGUMMEIs
+SubscriberProfileIDforRFP N s1ap.ies id-SubscriberProfileIDforRFP
+UESecurityCapabilities N s1ap.ies id-UESecurityCapabilities
+CSFallbackIndicator N s1ap.ies id-CSFallbackIndicator
+CNDomain N s1ap.ies id-CNDomain
+E-RABList N s1ap.ies id-E-RABReleasedList
+MessageIdentifier N s1ap.ies id-MessageIdentifier
+SerialNumber N s1ap.ies id-SerialNumber
+WarningAreaList N s1ap.ies id-WarningAreaList
+RepetitionPeriod N s1ap.ies id-RepetitionPeriod
+NumberofBroadcastRequest N s1ap.ies id-NumberofBroadcastRequest
+WarningType N s1ap.ies id-WarningType
+WarningSecurityInfo N s1ap.ies id-WarningSecurityInfo
+DataCodingScheme N s1ap.ies id-DataCodingScheme
+WarningMessageContents N s1ap.ies id-WarningMessageContents
+BroadcastCompletedAreaList N s1ap.ies id-BroadcastCompletedAreaList
+Inter-SystemInformationTransferType N s1ap.ies id-Inter-SystemInformationTransferTypeEDT
+Inter-SystemInformationTransferType N s1ap.ies id-Inter-SystemInformationTransferTypeMDT
+Target-ToSource-TransparentContainer N s1ap.ies id-Target-ToSource-TransparentContainer
+SRVCCOperationPossible N s1ap.ies id-SRVCCOperationPossible
+SRVCCHOIndication N s1ap.ies id-SRVCCHOIndication
+CSG-Id N s1ap.ies id-CSG-Id
+CSG-IdList N s1ap.ies id-CSG-IdList
+SONConfigurationTransfer N s1ap.ies id-SONConfigurationTransferECT
+SONConfigurationTransfer N s1ap.ies id-SONConfigurationTransferMCT
+TransportLayerAddress N s1ap.ies id-TraceCollectionEntityIPAddress
+MSClassmark2 N s1ap.ies id-MSClassmark2
+MSClassmark3 N s1ap.ies id-MSClassmark3
+RRC-Establishment-Cause N s1ap.ies id-RRC-Establishment-Cause
+NASSecurityParametersfromE-UTRAN N s1ap.ies id-NASSecurityParametersfromE-UTRAN
+NASSecurityParameterstoE-UTRAN N s1ap.ies id-NASSecurityParameterstoE-UTRAN
+PagingDRX N s1ap.ies id-DefaultPagingDRX
+Source-ToTarget-TransparentContainer N s1ap.ies id-Source-ToTarget-TransparentContainer-Secondary
+Target-ToSource-TransparentContainer N s1ap.ies id-Target-ToSource-TransparentContainer-Secondary
+EUTRANRoundTripDelayEstimationInfo N s1ap.ies id-EUTRANRoundTripDelayEstimationInfo
+BroadcastCancelledAreaList N s1ap.ies id-BroadcastCancelledAreaList
+ConcurrentWarningMessageIndicator N s1ap.ies id-ConcurrentWarningMessageIndicator
+ExtendedRepetitionPeriod N s1ap.ies id-ExtendedRepetitionPeriod
+CellAccessMode N s1ap.ies id-CellAccessMode
+CSGMembershipStatus N s1ap.ies id-CSGMembershipStatus
+LPPa-PDU N s1ap.ies id-LPPa-PDU
+Routing-ID N s1ap.ies id-Routing-ID
+PS-ServiceNotAvailable N s1ap.ies id-PS-ServiceNotAvailable
+PagingPriority N s1ap.ies id-PagingPriority
+GUMMEIList N s1ap.ies id-GUMMEIList
+TransportLayerAddress N s1ap.ies id-GW-TransportLayerAddress
+GUMMEI N s1ap.ies id-SourceMME-GUMMEI
+MME-UE-S1AP-ID N s1ap.ies id-MME-UE-S1AP-ID-2
+LAI N s1ap.ies id-RegisteredLAI
+RelayNode-Indicator N s1ap.ies id-RelayNode-Indicator
+TrafficLoadReductionIndication N s1ap.ies id-TrafficLoadReductionIndication
+MMERelaySupportIndicator N s1ap.ies id-MMERelaySupportIndicator
+GWContextReleaseIndication N s1ap.ies id-GWContextReleaseIndication
+ManagementBasedMDTAllowed N s1ap.ies id-ManagementBasedMDTAllowed
+PrivacyIndicator N s1ap.ies id-PrivacyIndicator
+VoiceSupportMatchIndicator N s1ap.ies id-VoiceSupportMatchIndicator
+GUMMEIType N s1ap.ies id-GUMMEIType
+TunnelInformation N s1ap.ies id-Tunnel-Information-for-BBF
+MDTPLMNList N s1ap.ies id-ManagementBasedMDTPLMNList
+ECGIListForRestart N s1ap.ies id-ECGIListForRestart
+TransportLayerAddress N s1ap.ies id-SIPTO-L-GW-TransportLayerAddress
+LHN-ID N s1ap.ies id-LHN-ID
+AdditionalCSFallbackIndicator N s1ap.ies id-AdditionalCSFallbackIndicator
+TAIListForRestart N s1ap.ies id-TAIListForRestart
+UserLocationInformation N s1ap.ies id-UserLocationInformation
+KillAllWarningMessages N s1ap.ies id-KillAllWarningMessages
+Masked-IMEISV N s1ap.ies id-Masked-IMEISV
+ProSeAuthorized N s1ap.ies id-ProSeAuthorized
+ExpectedUEBehaviour N s1ap.ies id-ExpectedUEBehaviour
+UERadioCapabilityForPaging N s1ap.ies id-UERadioCapabilityForPaging
+E-RABToBeModifiedListBearerModInd N s1ap.ies id-E-RABToBeModifiedListBearerModInd
+E-RABToBeModifiedItemBearerModInd N s1ap.ies id-E-RABToBeModifiedItemBearerModInd
+E-RABNotToBeModifiedListBearerModInd N s1ap.ies id-E-RABNotToBeModifiedListBearerModInd
+E-RABNotToBeModifiedItemBearerModInd N s1ap.ies id-E-RABNotToBeModifiedItemBearerModInd
+E-RABModifyListBearerModConf N s1ap.ies id-E-RABModifyListBearerModConf
+E-RABModifyItemBearerModConf N s1ap.ies id-E-RABModifyItemBearerModConf
+E-RABList N s1ap.ies id-E-RABFailedToModifyListBearerModConf
+SONInformationReport N s1ap.ies id-SON-Information-Report
+E-RABList N s1ap.ies id-E-RABToBeReleasedListBearerModConf
+AssistanceDataForPaging N s1ap.ies id-AssistanceDataForPaging
+CellIdentifierAndCELevelForCECapableUEs N s1ap.ies id-CellIdentifierAndCELevelForCECapableUEs
+InformationOnRecommendedCellsAndENBsForPaging N s1ap.ies id-InformationOnRecommendedCellsAndENBsForPaging
+RecommendedCellItem N s1ap.ies id-RecommendedCellItem
+RecommendedENBItem N s1ap.ies id-RecommendedENBItem
+PWSfailedECGIList N s1ap.ies id-PWSfailedECGIList
+MME-Group-ID N s1ap.ies id-MME-Group-ID
+Additional-GUTI N s1ap.ies id-Additional-GUTI
+S1-Message N s1ap.ies id-S1-Message
+CSGMembershipInfo N s1ap.ies id-CSGMembershipInfo
+Paging-eDRXInformation N s1ap.ies id-Paging-eDRXInformation
+UE-RetentionInformation N s1ap.ies id-UE-RetentionInformation
+UE-Usage-Type N s1ap.ies id-UE-Usage-Type
+Extended-UEIdentityIndexValue N s1ap.ies id-extended-UEIdentityIndexValue
+NB-IoT-DefaultPagingDRX N s1ap.ies id-NB-IoT-DefaultPagingDRX
+E-RABFailedToResumeListResumeReq N s1ap.ies id-E-RABFailedToResumeListResumeReq
+E-RABFailedToResumeItemResumeReq N s1ap.ies id-E-RABFailedToResumeItemResumeReq
+E-RABFailedToResumeListResumeRes N s1ap.ies id-E-RABFailedToResumeListResumeRes
+E-RABFailedToResumeItemResumeRes N s1ap.ies id-E-RABFailedToResumeItemResumeRes
+NB-IoT-Paging-eDRXInformation N s1ap.ies id-NB-IoT-Paging-eDRXInformation
+UEUserPlaneCIoTSupportIndicator N s1ap.ies id-UEUserPlaneCIoTSupportIndicator
+CE-mode-B-SupportIndicator N s1ap.ies id-CE-mode-B-SupportIndicator
+SRVCCOperationNotPossible N s1ap.ies id-SRVCCOperationNotPossible
+NB-IoT-UEIdentityIndexValue N s1ap.ies id-NB-IoT-UEIdentityIndexValue
+RRC-Establishment-Cause N s1ap.ies id-RRC-Resume-Cause
+V2XServicesAuthorized N s1ap.ies id-V2XServicesAuthorized
+UESidelinkAggregateMaximumBitrate N s1ap.ies id-UESidelinkAggregateMaximumBitrate
+EnhancedCoverageRestricted N s1ap.ies id-EnhancedCoverageRestricted
+DLNASPDUDeliveryAckRequest N s1ap.ies id-DLNASPDUDeliveryAckRequest
+DCN-ID N s1ap.ies id-DCN-ID
+Coverage-Level N s1ap.ies id-Coverage-Level
+ServedDCNs N s1ap.ies id-ServedDCNs
+DL-CP-SecurityInformation N s1ap.ies id-DL-CP-SecurityInformation
+E-RABLevelQoSParameters N s1ap.ies id-UE-Level-QoS-Parameters
+UL-CP-SecurityInformation N s1ap.ies id-UL-CP-SecurityInformation
+E-RABUsageReportItem N s1ap.ies id-E-RABUsageReportItem
+SecondaryRATDataUsageReportItem N s1ap.ies id-SecondaryRATDataUsageReportItem
+NRUESecurityCapabilities N s1ap.ies id-NRUESecurityCapabilities
+SecondaryRATDataUsageRequest N s1ap.ies id-SecondaryRATDataUsageRequest
+SecondaryRATDataUsageReportList N s1ap.ies id-SecondaryRATDataUsageReportList
+UE-Application-Layer-Measurement-Capability N s1ap.ies id-UE-Application-Layer-Measurement-Capability
+HandoverFlag N s1ap.ies id-HandoverFlag
+EmergencyAreaIDListForRestart N s1ap.ies id-EmergencyAreaIDListForRestart
+CE-ModeBRestricted N s1ap.ies id-CE-ModeBRestricted
+AerialUEsubscriptionInformation N s1ap.ies id-AerialUEsubscriptionInformation
+UECapabilityInfoRequest N s1ap.ies id-UECapabilityInfoRequest
+EndIndication N s1ap.ies id-EndIndication
+EDT-Session N s1ap.ies id-EDT-Session
+LTE-M-Indication N s1ap.ies id-LTE-M-Indication
+Subscription-Based-UE-DifferentiationInfo N s1ap.ies id-Subscription-Based-UE-DifferentiationInfo
+PendingDataIndication N s1ap.ies id-PendingDataIndication
+WarningAreaCoordinates N s1ap.ies id-WarningAreaCoordinates
+PSCellInformation N s1ap.ies id-PSCellInformation
+ConnectedengNBList N s1ap.ies id-ConnectedengNBList
+ConnectedengNBList N s1ap.ies id-ConnectedengNBToAddList
+ConnectedengNBList N s1ap.ies id-ConnectedengNBToRemoveList
+EN-DCSONConfigurationTransfer N s1ap.ies id-EN-DCSONConfigurationTransfer-ECT
+EN-DCSONConfigurationTransfer N s1ap.ies id-EN-DCSONConfigurationTransfer-MCT
+TimeSinceSecondaryNodeRelease N s1ap.ies id-TimeSinceSecondaryNodeRelease
+AdditionalRRMPriorityIndex N s1ap.ies id-AdditionalRRMPriorityIndex
+IAB-Authorized N s1ap.ies id-IAB-Authorized
+IAB-Node-Indication N s1ap.ies id-IAB-Node-Indication
+IAB-Supported N s1ap.ies id-IAB-Supported
+DataSize N s1ap.ies id-DataSize
+NRV2XServicesAuthorized N s1ap.ies id-NRV2XServicesAuthorized
+NRUESidelinkAggregateMaximumBitrate N s1ap.ies id-NRUESidelinkAggregateMaximumBitrate
+PC5QoSParameters N s1ap.ies id-PC5QoSParameters
+IntersystemSONConfigurationTransfer N s1ap.ies id-IntersystemSONConfigurationTransferMCT
+IntersystemSONConfigurationTransfer N s1ap.ies id-IntersystemSONConfigurationTransferECT
+UERadioCapabilityID N s1ap.ies id-UERadioCapabilityID
+UERadioCapability N s1ap.ies id-UERadioCapability-NR-Format
+DAPSResponseInfoItem N s1ap.ies id-DAPSResponseInfoItem
+NotifySourceeNB N s1ap.ies id-NotifySourceeNB
+ENB-EarlyStatusTransfer-TransparentContainer N s1ap.ies id-eNB-EarlyStatusTransfer-TransparentContainer
+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
+#RAB-SetupOrModifyItemSecond N s1ap.ies.pair.second id-RAB-SetupOrModifyItem
+
+#S1AP-PROTOCOL-EXTENSION
+#RAB-Parameters N s1ap.extension id-AlternativeRABConfiguration
+#Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf N s1ap.extension id-Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf
+Data-Forwarding-Not-Possible N s1ap.extension id-Data-Forwarding-Not-Possible
+TimeSynchronisationInfo N s1ap.extension id-Time-Synchronisation-Info
+X2TNLConfigurationInfo N s1ap.extension id-x2TNLConfigurationInfo
+ENBX2ExtTLAs N s1ap.extension id-eNBX2ExtendedTransportLayerAddresses
+Correlation-ID N s1ap.extension id-Correlation-ID
+MDT-Configuration N s1ap.extension id-MDTConfiguration
+Time-UE-StayedInCell-EnhancedGranularity N s1ap.extension id-Time-UE-StayedInCell-EnhancedGranularity
+Cause N s1ap.extension id-HO-Cause
+M3Configuration N s1ap.extension id-M3Configuration
+M4Configuration N s1ap.extension id-M4Configuration
+M5Configuration N s1ap.extension id-M5Configuration
+MDT-Location-Info N s1ap.extension id-MDT-Location-Info
+MobilityInformation N s1ap.extension id-MobilityInformation
+MDTPLMNList N s1ap.extension id-SignallingBasedMDTPLMNList
+COUNTValueExtended N s1ap.extension id-ULCOUNTValueExtended
+COUNTValueExtended N s1ap.extension id-DLCOUNTValueExtended
+ReceiveStatusOfULPDCPSDUsExtended N s1ap.extension id-ReceiveStatusOfULPDCPSDUsExtended
+Correlation-ID N s1ap.extension id-SIPTO-Correlation-ID
+TransportInformation N s1ap.extension id-TransportInformation
+ENBIndirectX2TransportLayerAddresses N s1ap.extension id-eNBIndirectX2TransportLayerAddresses
+LoggedMBSFNMDT N s1ap.extension id-LoggedMBSFNMDT
+UE-HistoryInformationFromTheUE N s1ap.extension id-uE-HistoryInformationFromTheUE
+MutingAvailabilityIndication N s1ap.extension id-Muting-Availability-Indication
+MutingPatternInformation N s1ap.extension id-Muting-Pattern-Information
+SynchronisationInformation N s1ap.extension id-Synchronisation-Information
+ProSeUEtoNetworkRelaying N s1ap.extension id-ProSeUEtoNetworkRelaying
+COUNTvaluePDCP-SNlength18 N s1ap.extension id-ULCOUNTValuePDCP-SNlength18
+COUNTvaluePDCP-SNlength18 N s1ap.extension id-DLCOUNTValuePDCP-SNlength18
+ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 N s1ap.extension id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18
+M6Configuration N s1ap.extension id-M6Configuration
+M7Configuration N s1ap.extension id-M7Configuration
+RAT-Type N s1ap.extension id-RAT-Type
+BearerType N s1ap.extension id-BearerType
+ExtendedBitRate N s1ap.extension id-extended-e-RAB-MaximumBitrateDL
+ExtendedBitRate N s1ap.extension id-extended-e-RAB-MaximumBitrateUL
+ExtendedBitRate N s1ap.extension id-extended-e-RAB-GuaranteedBitrateDL
+ExtendedBitRate N s1ap.extension id-extended-e-RAB-GuaranteedBitrateUL
+NRrestrictioninEPSasSecondaryRAT N s1ap.extension id-NRrestrictioninEPSasSecondaryRAT
+UEAppLayerMeasConfig N s1ap.extension id-UEAppLayerMeasConfig
+ExtendedBitRate N s1ap.extension id-extended-uEaggregateMaximumBitRateDL
+ExtendedBitRate N s1ap.extension id-extended-uEaggregateMaximumBitRateUL
+UnlicensedSpectrumRestriction N s1ap.extension id-UnlicensedSpectrumRestriction
+CNTypeRestrictions N s1ap.extension id-CNTypeRestrictions
+Packet-LossRate N s1ap.extension id-DownlinkPacketLossRate
+Packet-LossRate N s1ap.extension id-UplinkPacketLossRate
+ServiceType N s1ap.extension id-serviceType
+BluetoothMeasurementConfiguration N s1ap.extension id-BluetoothMeasurementConfiguration
+WLANMeasurementConfiguration N s1ap.extension id-WLANMeasurementConfiguration
+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-RequestTypeAdditionalInfo
+ContextatSource N s1ap.extension id-ContextatSource
+Ethernet-Type N s1ap.extension id-Ethernet-Type
+IntersystemMeasurementConfiguration N s1ap.extension id-IntersystemMeasurementConfiguration
+SourceNodeID N s1ap.extension id-SourceNodeID
+NB-IoT-RLF-Report-Container N s1ap.extension id-NB-IoT-RLF-Report-Container
+MDT-ConfigurationNR N s1ap.extension id-MDTConfigurationNR
+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
+HandoverCommand N s1ap.proc.sout id-HandoverPreparation
+HandoverPreparationFailure N s1ap.proc.uout id-HandoverPreparation
+
+HandoverRequest N s1ap.proc.imsg id-HandoverResourceAllocation
+HandoverRequestAcknowledge N s1ap.proc.sout id-HandoverResourceAllocation
+HandoverFailure N s1ap.proc.uout id-HandoverResourceAllocation
+
+HandoverNotify N s1ap.proc.imsg id-HandoverNotification
+
+PathSwitchRequest N s1ap.proc.imsg id-PathSwitchRequest
+PathSwitchRequestAcknowledge N s1ap.proc.sout id-PathSwitchRequest
+PathSwitchRequestFailure N s1ap.proc.uout id-PathSwitchRequest
+
+E-RABSetupRequest N s1ap.proc.imsg id-E-RABSetup
+E-RABSetupResponse N s1ap.proc.sout id-E-RABSetup
+
+E-RABModifyRequest N s1ap.proc.imsg id-E-RABModify
+E-RABModifyResponse N s1ap.proc.sout id-E-RABModify
+
+E-RABReleaseCommand N s1ap.proc.imsg id-E-RABRelease
+E-RABReleaseResponse N s1ap.proc.sout id-E-RABRelease
+
+E-RABReleaseIndication N s1ap.proc.imsg id-E-RABReleaseIndication
+
+InitialContextSetupRequest N s1ap.proc.imsg id-InitialContextSetup
+InitialContextSetupResponse N s1ap.proc.sout id-InitialContextSetup
+InitialContextSetupFailure N s1ap.proc.uout id-InitialContextSetup
+
+UEContextReleaseRequest N s1ap.proc.imsg id-UEContextReleaseRequest
+
+Paging N s1ap.proc.imsg id-Paging
+
+DownlinkNASTransport N s1ap.proc.imsg id-downlinkNASTransport
+
+InitialUEMessage N s1ap.proc.imsg id-initialUEMessage
+
+UplinkNASTransport N s1ap.proc.imsg id-uplinkNASTransport
+
+NASNonDeliveryIndication N s1ap.proc.imsg id-NASNonDeliveryIndication
+
+HandoverCancel N s1ap.proc.imsg id-HandoverCancel
+HandoverCancelAcknowledge N s1ap.proc.sout id-HandoverCancel
+
+Reset N s1ap.proc.imsg id-Reset
+ResetAcknowledge N s1ap.proc.sout id-Reset
+
+ErrorIndication N s1ap.proc.imsg id-ErrorIndication
+
+S1SetupRequest N s1ap.proc.imsg id-S1Setup
+S1SetupResponse N s1ap.proc.sout id-S1Setup
+S1SetupFailure N s1ap.proc.uout id-S1Setup
+
+DownlinkS1cdma2000tunnelling N s1ap.proc.imsg id-DownlinkS1cdma2000tunnelling
+
+ENBConfigurationUpdate N s1ap.proc.imsg id-ENBConfigurationUpdate
+ENBConfigurationUpdateAcknowledge N s1ap.proc.sout id-ENBConfigurationUpdate
+ENBConfigurationUpdateFailure N s1ap.proc.uout id-ENBConfigurationUpdate
+
+MMEConfigurationUpdate N s1ap.proc.imsg id-MMEConfigurationUpdate
+MMEConfigurationUpdateAcknowledge N s1ap.proc.sout id-MMEConfigurationUpdate
+MMEConfigurationUpdateFailure N s1ap.proc.uout id-MMEConfigurationUpdate
+
+UplinkS1cdma2000tunnelling N s1ap.proc.imsg id-UplinkS1cdma2000tunnelling
+
+UEContextModificationRequest N s1ap.proc.imsg id-UEContextModification
+UEContextModificationResponse N s1ap.proc.sout id-UEContextModification
+UEContextModificationFailure N s1ap.proc.uout id-UEContextModification
+
+UECapabilityInfoIndication N s1ap.proc.imsg id-UECapabilityInfoIndication
+
+UEContextReleaseCommand N s1ap.proc.imsg id-UEContextRelease
+UEContextReleaseComplete N s1ap.proc.sout id-UEContextRelease
+
+ENBStatusTransfer N s1ap.proc.imsg id-eNBStatusTransfer
+
+MMEStatusTransfer N s1ap.proc.imsg id-MMEStatusTransfer
+
+DeactivateTrace N s1ap.proc.imsg id-DeactivateTrace
+
+TraceStart N s1ap.proc.imsg id-TraceStart
+
+TraceFailureIndication N s1ap.proc.imsg id-TraceFailureIndication
+
+LocationReportingControl N s1ap.proc.imsg id-LocationReportingControl
+
+LocationReportingFailureIndication N s1ap.proc.imsg id-LocationReportingFailureIndication
+
+LocationReport N s1ap.proc.imsg id-LocationReport
+
+OverloadStart N s1ap.proc.imsg id-OverloadStart
+
+OverloadStop N s1ap.proc.imsg id-OverloadStop
+
+WriteReplaceWarningRequest N s1ap.proc.imsg id-WriteReplaceWarning
+WriteReplaceWarningResponse N s1ap.proc.sout id-WriteReplaceWarning
+
+ENBDirectInformationTransfer N s1ap.proc.imsg id-eNBDirectInformationTransfer
+
+MMEDirectInformationTransfer N s1ap.proc.imsg id-MMEDirectInformationTransfer
+
+ENBConfigurationTransfer N s1ap.proc.imsg id-eNBConfigurationTransfer
+
+MMEConfigurationTransfer N s1ap.proc.imsg id-MMEConfigurationTransfer
+
+CellTrafficTrace N s1ap.proc.imsg id-CellTrafficTrace
+
+PrivateMessage N s1ap.proc.imsg id-PrivateMessage
+
+PWSRestartIndication N s1ap.proc.imsg id-PWSRestartIndication
+
+KillRequest N s1ap.proc.imsg id-Kill
+KillResponse N s1ap.proc.sout id-Kill
+
+DownlinkUEAssociatedLPPaTransport N s1ap.proc.imsg id-downlinkUEAssociatedLPPaTransport
+
+UplinkUEAssociatedLPPaTransport N s1ap.proc.imsg id-uplinkUEAssociatedLPPaTransport
+
+DownlinkNonUEAssociatedLPPaTransport N s1ap.proc.imsg id-downlinkNonUEAssociatedLPPaTransport
+
+UplinkNonUEAssociatedLPPaTransport N s1ap.proc.imsg id-uplinkNonUEAssociatedLPPaTransport
+
+UERadioCapabilityMatchRequest N s1ap.proc.imsg id-UERadioCapabilityMatch
+UERadioCapabilityMatchResponse N s1ap.proc.sout id-UERadioCapabilityMatch
+
+E-RABModificationIndication N s1ap.proc.imsg id-E-RABModificationIndication
+E-RABModificationConfirm N s1ap.proc.sout id-E-RABModificationIndication
+
+UEContextModificationIndication N s1ap.proc.imsg id-UEContextModificationIndication
+UEContextModificationConfirm N s1ap.proc.sout id-UEContextModificationIndication
+
+RerouteNASRequest N s1ap.proc.imsg id-RerouteNASRequest
+
+PWSFailureIndication N s1ap.proc.imsg id-PWSFailureIndication
+
+ConnectionEstablishmentIndication N s1ap.proc.imsg id-ConnectionEstablishmentIndication
+
+UEContextSuspendRequest N s1ap.proc.imsg id-UEContextSuspend
+UEContextSuspendResponse N s1ap.proc.sout id-UEContextSuspend
+
+UEContextResumeRequest N s1ap.proc.imsg id-UEContextResume
+UEContextResumeResponse N s1ap.proc.sout id-UEContextResume
+UEContextResumeFailure N s1ap.proc.uout id-UEContextResume
+
+NASDeliveryIndication N s1ap.proc.imsg id-NASDeliveryIndication
+
+RetrieveUEInformation N s1ap.proc.imsg id-RetrieveUEInformation
+
+UEInformationTransfer N s1ap.proc.imsg id-UEInformationTransfer
+
+ENBCPRelocationIndication N s1ap.proc.imsg id-eNBCPRelocationIndication
+
+MMECPRelocationIndication N s1ap.proc.imsg id-MMECPRelocationIndication
+
+SecondaryRATDataUsageReport N s1ap.proc.imsg id-SecondaryRATDataUsageReport
+
+UERadioCapabilityIDMappingRequest N s1ap.proc.imsg id-UERadioCapabilityIDMapping
+UERadioCapabilityIDMappingResponse N s1ap.proc.sout id-UERadioCapabilityIDMapping
+
+HandoverSuccess N s1ap.proc.imsg id-HandoverSuccess
+
+ENBEarlyStatusTransfer N s1ap.proc.imsg id-eNBEarlyStatusTransfer
+
+MMEEarlyStatusTransfer N s1ap.proc.imsg id-MMEEarlyStatusTransfer
+
+
+#.FN_HDR HandoverRequired
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequired");
+#.FN_HDR HandoverCommand
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCommand");
+#.FN_HDR HandoverPreparationFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverPreparationFailure");
+#.FN_HDR HandoverRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequest");
+#.FN_HDR HandoverRequestAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequestAcknowledge");
+#.FN_HDR HandoverFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverFailure");
+#.FN_HDR HandoverNotify
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverNotify");
+#.FN_HDR PathSwitchRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequest");
+#.FN_HDR PathSwitchRequestAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestAcknowledge");
+#.FN_HDR PathSwitchRequestFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PathSwitchRequestFailure");
+#.FN_HDR HandoverCancel
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancel");
+#.FN_HDR HandoverCancelAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancelAcknowledge");
+#.FN_HDR E-RABSetupRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABSetupRequest");
+#.FN_HDR E-RABSetupResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABSetupResponse");
+#.FN_HDR E-RABModifyRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModifyRequest");
+#.FN_HDR E-RABModifyResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModifyResponse");
+#.FN_HDR E-RABReleaseCommand
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABReleaseCommand");
+#.FN_HDR E-RABReleaseResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABReleaseResponse");
+#.FN_HDR E-RABReleaseIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABReleaseIndication");
+#.FN_HDR InitialContextSetupRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupRequest");
+#.FN_HDR InitialContextSetupResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupResponse");
+#.FN_HDR InitialContextSetupFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialContextSetupFailure");
+#.FN_HDR Paging
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Paging");
+#.FN_HDR UEContextReleaseRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseRequest");
+#.FN_HDR UEContextReleaseCommand
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseCommand");
+#.FN_HDR UEContextReleaseComplete
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextReleaseComplete");
+#.FN_HDR UEContextModificationRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationRequest");
+#.FN_HDR UEContextModificationResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationResponse");
+#.FN_HDR UEContextModificationFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationFailure");
+#.FN_HDR UERadioCapabilityMatchRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityMatchRequest");
+#.FN_HDR UERadioCapabilityMatchResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UERadioCapabilityMatchResponse");
+#.FN_HDR DownlinkNASTransport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkNASTransport");
+#.FN_HDR InitialUEMessage
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InitialUEMessage");
+#.FN_HDR UplinkNASTransport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkNASTransport");
+#.FN_HDR NASNonDeliveryIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NASNonDeliveryIndication");
+#.FN_HDR RerouteNASRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RerouteNASRequest");
+#.FN_HDR Reset
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Reset");
+#.FN_HDR ResetAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetAcknowledge");
+#.FN_HDR ErrorIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication");
+#.FN_HDR S1SetupRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "S1SetupRequest");
+#.FN_HDR S1SetupResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "S1SetupResponse");
+#.FN_HDR S1SetupFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "S1SetupFailure");
+#.FN_HDR ENBConfigurationUpdate
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdate");
+#.FN_HDR ENBConfigurationUpdateAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdateAcknowledge");
+#.FN_HDR ENBConfigurationUpdateFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationUpdateFailure");
+#.FN_HDR MMEConfigurationUpdate
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationUpdate");
+#.FN_HDR MMEConfigurationUpdateAcknowledge
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationUpdateAcknowledge");
+#.FN_HDR MMEConfigurationUpdateFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationUpdateFailure");
+#.FN_HDR DownlinkS1cdma2000tunnelling
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkS1cdma2000tunnelling");
+#.FN_HDR UplinkS1cdma2000tunnelling
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkS1cdma2000tunnelling");
+#.FN_HDR UECapabilityInfoIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UECapabilityInfoIndication");
+#.FN_HDR ENBStatusTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBStatusTransfer");
+#.FN_HDR MMEStatusTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEStatusTransfer");
+#.FN_HDR TraceStart
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceStart");
+#.FN_HDR TraceFailureIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceFailureIndication");
+#.FN_HDR DeactivateTrace
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DeactivateTrace");
+#.FN_HDR CellTrafficTrace
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace");
+#.FN_HDR LocationReportingControl
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReportingControl");
+#.FN_HDR LocationReportingFailureIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReportingFailureIndication");
+#.FN_HDR LocationReport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LocationReport");
+#.FN_HDR OverloadStart
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "OverloadStart");
+#.FN_HDR OverloadStop
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "OverloadStop");
+#.FN_HDR WriteReplaceWarningRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningRequest");
+#.FN_HDR WriteReplaceWarningResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WriteReplaceWarningResponse");
+#.FN_HDR ENBDirectInformationTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBDirectInformationTransfer");
+#.FN_HDR MMEDirectInformationTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEDirectInformationTransfer");
+#.FN_HDR ENBConfigurationTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBConfigurationTransfer");
+#.FN_HDR MMEConfigurationTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEConfigurationTransfer");
+#.FN_HDR PrivateMessage
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage");
+#.FN_HDR KillRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "KillRequest");
+#.FN_HDR KillResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "KillResponse");
+#.FN_HDR PWSRestartIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSRestartIndication");
+#.FN_HDR PWSFailureIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PWSFailureIndication");
+#.FN_HDR DownlinkUEAssociatedLPPaTransport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkUEAssociatedLPPaTransport");
+#.FN_HDR UplinkUEAssociatedLPPaTransport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkUEAssociatedLPPaTransport");
+#.FN_HDR DownlinkNonUEAssociatedLPPaTransport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DownlinkNonUEAssociatedLPPaTransport");
+#.FN_HDR UplinkNonUEAssociatedLPPaTransport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UplinkNonUEAssociatedLPPaTransport");
+#.FN_HDR E-RABModificationIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModificationIndication");
+#.FN_HDR E-RABModificationConfirm
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-RABModificationConfirm");
+#.FN_HDR UEContextModificationIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationIndication");
+#.FN_HDR UEContextModificationConfirm
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextModificationConfirm");
+#.FN_HDR UEContextSuspendRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendRequest");
+#.FN_HDR UEContextSuspendResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextSuspendResponse");
+#.FN_HDR UEContextResumeRequest
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeRequest");
+#.FN_HDR UEContextResumeResponse
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeResponse");
+#.FN_HDR UEContextResumeFailure
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextResumeFailure");
+#.FN_HDR ConnectionEstablishmentIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ConnectionEstablishmentIndication");
+#.FN_HDR NASDeliveryIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NASDeliveryIndication");
+#.FN_HDR RetrieveUEInformation
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEInformation");
+#.FN_HDR UEInformationTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationTransfer");
+#.FN_HDR ENBCPRelocationIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBCPRelocationIndication");
+#.FN_HDR MMECPRelocationIndication
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMECPRelocationIndication");
+#.FN_HDR SecondaryRATDataUsageReport
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecondaryRATDataUsageReport");
+#.FN_HDR UERadioCapabilityIDMappingRequest
+ 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 HandoverSuccess
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverSuccess");
+#.FN_HDR ENBEarlyStatusTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ENBEarlyStatusTransfer");
+#.FN_HDR MMEEarlyStatusTransfer
+ col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MMEEarlyStatusTransfer");
+#.END
+
+# 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, " [RadioNetwork-cause=%%s]", val_to_str_const(value, s1ap_CauseRadioNetwork_vals, "Unknown"));
+
+#.FN_BODY CauseTransport VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Transport-cause=%%s]", val_to_str_const(value, s1ap_CauseTransport_vals, "Unknown"));
+
+#.FN_BODY CauseNas VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [NAS-cause=%%s]", val_to_str_const(value, s1ap_CauseNas_vals, "Unknown"));
+
+#.FN_BODY CauseProtocol VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Protocol-cause=%%s]", val_to_str_const(value, s1ap_CauseProtocol_vals, "Unknown"));
+
+#.FN_BODY CauseMisc VAL_PTR=&value
+ guint32 value;
+%(DEFAULT_BODY)s
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [Misc-cause=%%s]", val_to_str_const(value, s1ap_CauseMisc_vals, "Unknown"));
+
+#.END
+
+#.FN_BODY CGI
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_CGI;
+%(DEFAULT_BODY)s
+
+#.FN_BODY EUTRAN-CGI
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_ECGI;
+%(DEFAULT_BODY)s
+
+#.FIELD_ATTR
+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) {
+ actx->created_item = proto_tree_add_item(tree, hf_index, cell_id_tvb, 0, 4, ENC_BIG_ENDIAN);
+ }
+#.END
+
+#.FN_BODY NR-CGI
+ struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo);
+ s1ap_data->number_type = E212_NRCGI;
+%(DEFAULT_BODY)s
+
+#
+# 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:
+#