aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/x2ap
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/asn1/x2ap')
-rw-r--r--epan/dissectors/asn1/x2ap/CMakeLists.txt52
-rw-r--r--epan/dissectors/asn1/x2ap/Makefile.am23
-rw-r--r--epan/dissectors/asn1/x2ap/Makefile.common45
-rw-r--r--epan/dissectors/asn1/x2ap/Makefile.nmake26
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn51
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-Constants.asn189
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-Containers.asn195
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-IEs.asn1374
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn1066
-rw-r--r--epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn313
-rw-r--r--epan/dissectors/asn1/x2ap/packet-x2ap-template.c212
-rw-r--r--epan/dissectors/asn1/x2ap/x2ap.cnf424
12 files changed, 3970 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/x2ap/CMakeLists.txt b/epan/dissectors/asn1/x2ap/CMakeLists.txt
new file mode 100644
index 0000000000..d9267a98a4
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/CMakeLists.txt
@@ -0,0 +1,52 @@
+# CMakeLists.txt
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+
+set( PROTOCOL_NAME x2ap )
+
+set( PROTO_OPT )
+
+set( EXT_ASN_FILE_LIST
+)
+
+set( ASN_FILE_LIST
+ X2AP-CommonDataTypes.asn
+ X2AP-Constants.asn
+ X2AP-Containers.asn
+ X2AP-IEs.asn
+ X2AP-PDU-Contents.asn
+ X2AP-PDU-Descriptions.asn
+)
+
+set( EXTRA_DIST
+ ${ASN_FILE_LIST}
+ packet-${PROTOCOL_NAME}-template.c
+ ${PROTOCOL_NAME}.cnf
+)
+
+set( SRC_FILES
+ ${EXTRA_DIST}
+ ${EXT_ASN_FILE_LIST}
+)
+
+set( A2W_FLAGS )
+
+ASN2WRS()
+
diff --git a/epan/dissectors/asn1/x2ap/Makefile.am b/epan/dissectors/asn1/x2ap/Makefile.am
new file mode 100644
index 0000000000..72d28e600b
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/Makefile.am
@@ -0,0 +1,23 @@
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+include ../Makefile.preinc
+include Makefile.common
+include ../Makefile.inc
+
diff --git a/epan/dissectors/asn1/x2ap/Makefile.common b/epan/dissectors/asn1/x2ap/Makefile.common
new file mode 100644
index 0000000000..acb56be71a
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/Makefile.common
@@ -0,0 +1,45 @@
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+PROTOCOL_NAME = x2ap
+
+EXT_ASN_FILE_LIST =
+
+ASN_FILE_LIST = \
+ X2AP-CommonDataTypes.asn \
+ X2AP-Constants.asn \
+ X2AP-Containers.asn \
+ X2AP-IEs.asn \
+ X2AP-PDU-Contents.asn \
+ X2AP-PDU-Descriptions.asn
+
+EXTRA_DIST = \
+ $(EXTRA_DIST_COMMON) \
+ $(ASN_FILE_LIST) \
+ packet-$(PROTOCOL_NAME)-template.c \
+ $(PROTOCOL_NAME).cnf
+
+SRC_FILES = \
+ $(EXTRA_DIST) \
+ $(EXT_ASN_FILE_LIST)
+
+A2W_FLAGS =
+
+EXTRA_CNF =
+
diff --git a/epan/dissectors/asn1/x2ap/Makefile.nmake b/epan/dissectors/asn1/x2ap/Makefile.nmake
new file mode 100644
index 0000000000..d296638ddd
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/Makefile.nmake
@@ -0,0 +1,26 @@
+## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+include ../../../../config.nmake
+include ../Makefile.preinc.nmake
+include Makefile.common
+include ../Makefile.inc.nmake
+
diff --git a/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn b/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn
new file mode 100644
index 0000000000..a738ddfcec
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/X2AP-CommonDataTypes.asn
@@ -0,0 +1,51 @@
+-- 3GPP TS 36.423 V12.2.0 (2014-06)
+
+-- 9.3.6 Common definitions
+-- **************************************************************
+--
+-- Common definitions
+--
+-- **************************************************************
+
+X2AP-CommonDataTypes {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-CommonDataTypes (3) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- Extension constants
+--
+-- **************************************************************
+
+maxPrivateIEs INTEGER ::= 65535
+maxProtocolExtensions INTEGER ::= 65535
+maxProtocolIEs INTEGER ::= 65535
+
+-- **************************************************************
+--
+-- Common Data Types
+--
+-- **************************************************************
+
+Criticality ::= ENUMERATED { reject, ignore, notify }
+
+Presence ::= ENUMERATED { optional, conditional, mandatory }
+
+PrivateIE-ID ::= CHOICE {
+ local INTEGER (0.. maxPrivateIEs),
+ global OBJECT IDENTIFIER
+}
+
+ProcedureCode ::= INTEGER (0..255)
+
+
+ProtocolIE-ID ::= INTEGER (0..maxProtocolIEs)
+
+
+TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome}
+
+END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-Constants.asn b/epan/dissectors/asn1/x2ap/X2AP-Constants.asn
new file mode 100644
index 0000000000..2fadd89053
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/X2AP-Constants.asn
@@ -0,0 +1,189 @@
+-- 3GPP TS 36.423 V10.3.0 (2011-09)
+-- 9.3.7 Constant Definitions
+-- **************************************************************
+--
+-- Constant definitions
+--
+-- **************************************************************
+
+X2AP-Constants {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Constants (4) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+ ProcedureCode,
+ ProtocolIE-ID
+FROM X2AP-CommonDataTypes;
+
+-- **************************************************************
+--
+-- Elementary Procedures
+--
+-- **************************************************************
+
+id-handoverPreparation ProcedureCode ::= 0
+id-handoverCancel ProcedureCode ::= 1
+id-loadIndication ProcedureCode ::= 2
+id-errorIndication ProcedureCode ::= 3
+id-snStatusTransfer ProcedureCode ::= 4
+id-uEContextRelease ProcedureCode ::= 5
+id-x2Setup ProcedureCode ::= 6
+id-reset ProcedureCode ::= 7
+id-eNBConfigurationUpdate ProcedureCode ::= 8
+id-resourceStatusReportingInitiation ProcedureCode ::= 9
+id-resourceStatusReporting ProcedureCode ::= 10
+id-privateMessage ProcedureCode ::= 11
+id-mobilitySettingsChange ProcedureCode ::= 12
+id-rLFIndication ProcedureCode ::= 13
+id-handoverReport ProcedureCode ::= 14
+id-cellActivation ProcedureCode ::= 15
+id-x2Release ProcedureCode ::= 16
+id-x2MessageTransfer ProcedureCode ::= 17
+
+
+
+-- **************************************************************
+--
+-- Lists
+--
+-- **************************************************************
+
+maxEARFCN INTEGER ::= 65535
+maxEARFCNPlusOne INTEGER ::= 65536
+newmaxEARFCN INTEGER ::= 262143
+maxInterfaces INTEGER ::= 16
+maxCellineNB INTEGER ::= 256
+maxnoofBands INTEGER ::= 16
+maxnoofBearers INTEGER ::= 256
+maxNrOfErrors INTEGER ::= 256
+maxnoofPDCP-SN INTEGER ::= 16
+maxnoofEPLMNs INTEGER ::= 15
+maxnoofEPLMNsPlusOne INTEGER ::= 16
+maxnoofForbLACs INTEGER ::= 4096
+maxnoofForbTACs INTEGER ::= 4096
+maxnoofBPLMNs INTEGER ::= 6
+maxnoofNeighbours INTEGER ::= 512
+maxnoofPRBs INTEGER ::= 110
+maxPools INTEGER ::= 16
+maxnoofCells INTEGER ::= 16
+maxnoofMBSFN INTEGER ::= 8
+maxFailedMeasObjects INTEGER ::= 32
+maxnoofCellIDforMDT INTEGER ::= 32
+maxnoofTAforMDT INTEGER ::= 8
+maxnoofMBMSServiceAreaIdentities INTEGER ::= 256
+maxnoofMDTPLMNs INTEGER ::= 16
+
+
+-- **************************************************************
+--
+-- IEs
+--
+-- **************************************************************
+
+id-E-RABs-Admitted-Item ProtocolIE-ID ::= 0
+id-E-RABs-Admitted-List ProtocolIE-ID ::= 1
+id-E-RAB-Item ProtocolIE-ID ::= 2
+id-E-RABs-NotAdmitted-List ProtocolIE-ID ::= 3
+id-E-RABs-ToBeSetup-Item ProtocolIE-ID ::= 4
+id-Cause ProtocolIE-ID ::= 5
+id-CellInformation ProtocolIE-ID ::= 6
+id-CellInformation-Item ProtocolIE-ID ::= 7
+id-New-eNB-UE-X2AP-ID ProtocolIE-ID ::= 9
+id-Old-eNB-UE-X2AP-ID ProtocolIE-ID ::= 10
+id-TargetCell-ID ProtocolIE-ID ::= 11
+id-TargeteNBtoSource-eNBTransparentContainer ProtocolIE-ID ::= 12
+id-TraceActivation ProtocolIE-ID ::= 13
+id-UE-ContextInformation ProtocolIE-ID ::= 14
+id-UE-HistoryInformation ProtocolIE-ID ::= 15
+id-UE-X2AP-ID ProtocolIE-ID ::= 16
+id-CriticalityDiagnostics ProtocolIE-ID ::= 17
+id-E-RABs-SubjectToStatusTransfer-List ProtocolIE-ID ::= 18
+id-E-RABs-SubjectToStatusTransfer-Item ProtocolIE-ID ::= 19
+id-ServedCells ProtocolIE-ID ::= 20
+id-GlobalENB-ID ProtocolIE-ID ::= 21
+id-TimeToWait ProtocolIE-ID ::= 22
+id-GUMMEI-ID ProtocolIE-ID ::= 23
+id-GUGroupIDList ProtocolIE-ID ::= 24
+id-ServedCellsToAdd ProtocolIE-ID ::= 25
+id-ServedCellsToModify ProtocolIE-ID ::= 26
+id-ServedCellsToDelete ProtocolIE-ID ::= 27
+id-Registration-Request ProtocolIE-ID ::= 28
+id-CellToReport ProtocolIE-ID ::= 29
+id-ReportingPeriodicity ProtocolIE-ID ::= 30
+id-CellToReport-Item ProtocolIE-ID ::= 31
+id-CellMeasurementResult ProtocolIE-ID ::= 32
+id-CellMeasurementResult-Item ProtocolIE-ID ::= 33
+id-GUGroupIDToAddList ProtocolIE-ID ::= 34
+id-GUGroupIDToDeleteList ProtocolIE-ID ::= 35
+id-SRVCCOperationPossible ProtocolIE-ID ::= 36
+id-Measurement-ID ProtocolIE-ID ::= 37
+id-ReportCharacteristics ProtocolIE-ID ::= 38
+id-ENB1-Measurement-ID ProtocolIE-ID ::= 39
+id-ENB2-Measurement-ID ProtocolIE-ID ::= 40
+id-Number-of-Antennaports ProtocolIE-ID ::= 41
+id-CompositeAvailableCapacityGroup ProtocolIE-ID ::= 42
+id-ENB1-Cell-ID ProtocolIE-ID ::= 43
+id-ENB2-Cell-ID ProtocolIE-ID ::= 44
+id-ENB2-Proposed-Mobility-Parameters ProtocolIE-ID ::= 45
+id-ENB1-Mobility-Parameters ProtocolIE-ID ::= 46
+id-ENB2-Mobility-Parameters-Modification-Range ProtocolIE-ID ::= 47
+id-FailureCellPCI ProtocolIE-ID ::= 48
+id-Re-establishmentCellECGI ProtocolIE-ID ::= 49
+id-FailureCellCRNTI ProtocolIE-ID ::= 50
+id-ShortMAC-I ProtocolIE-ID ::= 51
+id-SourceCellECGI ProtocolIE-ID ::= 52
+id-FailureCellECGI ProtocolIE-ID ::= 53
+id-HandoverReportType ProtocolIE-ID ::= 54
+id-PRACH-Configuration ProtocolIE-ID ::= 55
+id-MBSFN-Subframe-Info ProtocolIE-ID ::= 56
+id-ServedCellsToActivate ProtocolIE-ID ::= 57
+id-ActivatedCellList ProtocolIE-ID ::= 58
+id-DeactivationIndication ProtocolIE-ID ::= 59
+id-UE-RLF-Report-Container ProtocolIE-ID ::= 60
+id-ABSInformation ProtocolIE-ID ::= 61
+id-InvokeIndication ProtocolIE-ID ::= 62
+id-ABS-Status ProtocolIE-ID ::= 63
+id-PartialSuccessIndicator ProtocolIE-ID ::= 64
+id-MeasurementInitiationResult-List ProtocolIE-ID ::= 65
+id-MeasurementInitiationResult-Item ProtocolIE-ID ::= 66
+id-MeasurementFailureCause-Item ProtocolIE-ID ::= 67
+id-CompleteFailureCauseInformation-List ProtocolIE-ID ::= 68
+id-CompleteFailureCauseInformation-Item ProtocolIE-ID ::= 69
+id-CSG-Id ProtocolIE-ID ::= 70
+id-CSGMembershipStatus ProtocolIE-ID ::= 71
+id-MDTConfiguration ProtocolIE-ID ::= 72
+id-ManagementBasedMDTallowed ProtocolIE-ID ::= 74
+id-RRCConnSetupIndicator ProtocolIE-ID ::= 75
+id-NeighbourTAC ProtocolIE-ID ::= 76
+id-Time-UE-StayedInCell-EnhancedGranularity ProtocolIE-ID ::= 77
+id-RRCConnReestabIndicator ProtocolIE-ID ::= 78
+id-MBMS-Service-Area-List ProtocolIE-ID ::= 79
+id-HO-cause ProtocolIE-ID ::= 80
+id-TargetCellInUTRAN ProtocolIE-ID ::= 81
+id-MobilityInformation ProtocolIE-ID ::= 82
+id-SourceCellCRNTI ProtocolIE-ID ::= 83
+id-MultibandInfoList ProtocolIE-ID ::= 84
+id-M3Configuration ProtocolIE-ID ::= 85
+id-M4Configuration ProtocolIE-ID ::= 86
+id-M5Configuration ProtocolIE-ID ::= 87
+id-MDT-Location-Info ProtocolIE-ID ::= 88
+id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 89
+id-SignallingBasedMDTPLMNList ProtocolIE-ID ::= 90
+id-ReceiveStatusOfULPDCPSDUsExtended ProtocolIE-ID ::= 91
+id-ULCOUNTValueExtended ProtocolIE-ID ::= 92
+id-DLCOUNTValueExtended ProtocolIE-ID ::= 93
+id-eARFCNExtension ProtocolIE-ID ::= 94
+id-UL-EARFCNExtension ProtocolIE-ID ::= 95
+id-DL-EARFCNExtension ProtocolIE-ID ::= 96
+id-AdditionalSpecialSubframe-Info ProtocolIE-ID ::= 97
+id-Masked-IMEISV ProtocolIE-ID ::= 98
+id-IntendedULDLConfiguration ProtocolIE-ID ::= 99
+id-ExtendedULInterferenceOverloadInfo ProtocolIE-ID ::= 100
+id-RNL-Header ProtocolIE-ID ::= 101
+id-x2APMessage ProtocolIE-ID ::= 102
+
+END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-Containers.asn b/epan/dissectors/asn1/x2ap/X2AP-Containers.asn
new file mode 100644
index 0000000000..caf6a5f95e
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/X2AP-Containers.asn
@@ -0,0 +1,195 @@
+-- 3GPP TS 36.423 V12.2.0 (2014-06)
+-- 9.3.8 Container Definitions
+-- **************************************************************
+--
+-- Container definitions
+--
+-- **************************************************************
+X2AP-Containers {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Containers (5) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+ maxPrivateIEs,
+ maxProtocolExtensions,
+ maxProtocolIEs,
+ Criticality,
+ Presence,
+ PrivateIE-ID,
+ ProtocolIE-ID
+FROM X2AP-CommonDataTypes;
+
+-- **************************************************************
+--
+-- Class Definition for Protocol IEs
+--
+-- **************************************************************
+
+X2AP-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
+--
+-- **************************************************************
+
+X2AP-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
+--
+-- **************************************************************
+
+X2AP-PROTOCOL-EXTENSION ::= CLASS {
+ &id ProtocolIE-ID UNIQUE,
+ &criticality Criticality,
+ &Extension,
+ &presence Presence
+}
+WITH SYNTAX {
+ ID &id
+ CRITICALITY &criticality
+ EXTENSION &Extension
+ PRESENCE &presence
+}
+
+-- **************************************************************
+--
+-- Class Definition for Private IEs
+--
+-- **************************************************************
+
+X2AP-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 {X2AP-PROTOCOL-IES : IEsSetParam} ::=
+ SEQUENCE (SIZE (0..maxProtocolIEs)) OF
+ ProtocolIE-Field {{IEsSetParam}}
+
+ProtocolIE-Single-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
+ ProtocolIE-Field {{IEsSetParam}}
+
+ProtocolIE-Field {X2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
+ id X2AP-PROTOCOL-IES.&id ({IEsSetParam}),
+ criticality X2AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
+ value X2AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
+}
+
+-- **************************************************************
+--
+-- Container for Protocol IE Pairs
+--
+-- **************************************************************
+
+ProtocolIE-ContainerPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ SEQUENCE (SIZE (0..maxProtocolIEs)) OF
+ ProtocolIE-FieldPair {{IEsSetParam}}
+
+ProtocolIE-FieldPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
+ id X2AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}),
+ firstCriticality X2AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}),
+ firstValue X2AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}),
+ secondCriticality X2AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}),
+ secondValue X2AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
+}
+
+-- **************************************************************
+--
+-- Container Lists for Protocol IE Containers
+--
+-- **************************************************************
+
+ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-PROTOCOL-IES : IEsSetParam} ::=
+ SEQUENCE (SIZE (lowerBound..upperBound)) OF
+ ProtocolIE-Container {{IEsSetParam}}
+
+ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
+ SEQUENCE (SIZE (lowerBound..upperBound)) OF
+ ProtocolIE-ContainerPair {{IEsSetParam}}
+
+-- **************************************************************
+--
+-- Container for Protocol Extensions
+--
+-- **************************************************************
+
+ProtocolExtensionContainer {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
+ SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
+ ProtocolExtensionField {{ExtensionSetParam}}
+
+ProtocolExtensionField {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
+ id X2AP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}),
+ criticality X2AP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}),
+ extensionValue X2AP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id})
+}
+
+-- **************************************************************
+--
+-- Container for Private IEs
+--
+-- **************************************************************
+
+PrivateIE-Container {X2AP-PRIVATE-IES : IEsSetParam} ::=
+ SEQUENCE (SIZE (1..maxPrivateIEs)) OF
+ PrivateIE-Field {{IEsSetParam}}
+
+PrivateIE-Field {X2AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
+ id X2AP-PRIVATE-IES.&id ({IEsSetParam}),
+ criticality X2AP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}),
+ value X2AP-PRIVATE-IES.&Value ({IEsSetParam}{@id})
+}
+
+END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-IEs.asn b/epan/dissectors/asn1/x2ap/X2AP-IEs.asn
new file mode 100644
index 0000000000..2431695732
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/X2AP-IEs.asn
@@ -0,0 +1,1374 @@
+-- 3GPP TS 36.423 V12.2.0 (2014-06)
+-- 9.3.5 Information Element Definitions
+-- **************************************************************
+--
+-- Information Element Definitions
+--
+-- **************************************************************
+
+X2AP-IEs {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-IEs (2) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+
+ id-E-RAB-Item,
+ id-Number-of-Antennaports,
+ id-MBSFN-Subframe-Info,
+ id-PRACH-Configuration,
+ id-CSG-Id,
+ id-MDTConfiguration,
+ id-SignallingBasedMDTPLMNList,
+ id-MultibandInfoList,
+ id-NeighbourTAC,
+ id-Time-UE-StayedInCell-EnhancedGranularity,
+ id-MBMS-Service-Area-List,
+ id-HO-cause,
+ id-eARFCNExtension,
+ id-DL-EARFCNExtension,
+ id-UL-EARFCNExtension,
+ id-M3Configuration,
+ id-M4Configuration,
+ id-M5Configuration,
+ id-MDT-Location-Info,
+ id-AdditionalSpecialSubframe-Info,
+ maxnoofBearers,
+ maxCellineNB,
+ maxEARFCN,
+ maxEARFCNPlusOne,
+ newmaxEARFCN,
+ maxInterfaces,
+
+ maxnoofBands,
+ maxnoofBPLMNs,
+ maxnoofCells,
+ maxnoofEPLMNs,
+ maxnoofEPLMNsPlusOne,
+ maxnoofForbLACs,
+ maxnoofForbTACs,
+ maxnoofNeighbours,
+ maxnoofPRBs,
+ maxNrOfErrors,
+ maxPools,
+ maxnoofMBSFN,
+ maxnoofTAforMDT,
+ maxnoofCellIDforMDT,
+ maxnoofMBMSServiceAreaIdentities,
+ maxnoofMDTPLMNs
+
+FROM X2AP-Constants
+
+ Criticality,
+ ProcedureCode,
+ ProtocolIE-ID,
+ TriggeringMessage
+FROM X2AP-CommonDataTypes
+
+ ProtocolExtensionContainer{},
+ ProtocolIE-Single-Container{},
+
+ X2AP-PROTOCOL-EXTENSION,
+ X2AP-PROTOCOL-IES
+FROM X2AP-Containers;
+
+-- A
+
+ABSInformation ::= CHOICE {
+ fdd ABSInformationFDD,
+ tdd ABSInformationTDD,
+ abs-inactive NULL,
+ ...
+}
+
+ABSInformationFDD ::= SEQUENCE {
+ abs-pattern-info BIT STRING (SIZE(40)),
+ numberOfCellSpecificAntennaPorts ENUMERATED {one, two, four, ...},
+ measurement-subset BIT STRING (SIZE(40)),
+ iE-Extensions ProtocolExtensionContainer { { ABSInformationFDD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ABSInformationFDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ABSInformationTDD ::= SEQUENCE {
+ abs-pattern-info BIT STRING (SIZE(1..70, ...)),
+ numberOfCellSpecificAntennaPorts ENUMERATED {one, two, four, ...},
+ measurement-subset BIT STRING (SIZE(1..70, ...)),
+ iE-Extensions ProtocolExtensionContainer { { ABSInformationTDD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ABSInformationTDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ABS-Status ::= SEQUENCE {
+ dL-ABS-status DL-ABS-status,
+ usableABSInformation UsableABSInformation,
+ iE-Extensions ProtocolExtensionContainer { {ABS-Status-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ABS-Status-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+DL-ABS-status::= INTEGER (0..100)
+
+AdditionalSpecialSubframe-Info ::= SEQUENCE {
+ additionalspecialSubframePatterns AdditionalSpecialSubframePatterns,
+ cyclicPrefixDL CyclicPrefixDL,
+ cyclicPrefixUL CyclicPrefixUL,
+ iE-Extensions ProtocolExtensionContainer { { AdditionalSpecialSubframe-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AdditionalSpecialSubframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AdditionalSpecialSubframePatterns ::= ENUMERATED {
+ ssp0,
+ ssp1,
+ ssp2,
+ ssp3,
+ ssp4,
+ ssp5,
+ ssp6,
+ ssp7,
+ ssp8,
+ ssp9,
+ ...
+}
+
+AS-SecurityInformation ::= SEQUENCE {
+ key-eNodeB-star Key-eNodeB-Star,
+ nextHopChainingCount NextHopChainingCount,
+ iE-Extensions ProtocolExtensionContainer { { AS-SecurityInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AS-SecurityInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+AllocationAndRetentionPriority ::= SEQUENCE {
+ priorityLevel PriorityLevel,
+ pre-emptionCapability Pre-emptionCapability,
+ pre-emptionVulnerability Pre-emptionVulnerability,
+ iE-Extensions ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL,
+ ...
+}
+
+AllocationAndRetentionPriority-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+AreaScopeOfMDT ::= CHOICE {
+ cellBased CellBasedMDT,
+ tABased TABasedMDT,
+ pLMNWide NULL,
+ ...,
+ tAIBased TAIBasedMDT
+}
+
+-- B
+
+
+BitRate ::= INTEGER (0..10000000000)
+BroadcastPLMNs-Item ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF PLMN-Identity
+
+
+-- C
+
+CapacityValue ::= INTEGER (0..100)
+
+CellCapacityClassValue ::= INTEGER (1..100, ...)
+
+Cause ::= CHOICE {
+ radioNetwork CauseRadioNetwork,
+ transport CauseTransport,
+ protocol CauseProtocol,
+ misc CauseMisc,
+ ...
+}
+
+CauseMisc ::= ENUMERATED {
+ control-processing-overload,
+ hardware-failure,
+ om-intervention,
+ not-enough-user-plane-processing-resources,
+ unspecified,
+ ...
+}
+
+CauseProtocol ::= ENUMERATED {
+ transfer-syntax-error,
+ abstract-syntax-error-reject,
+ abstract-syntax-error-ignore-and-notify,
+ message-not-compatible-with-receiver-state,
+ semantic-error,
+ unspecified,
+ abstract-syntax-error-falsely-constructed-message,
+ ...
+}
+
+CauseRadioNetwork ::= ENUMERATED {
+ handover-desirable-for-radio-reasons,
+ time-critical-handover,
+ resource-optimisation-handover,
+ reduce-load-in-serving-cell,
+ partial-handover,
+ unknown-new-eNB-UE-X2AP-ID,
+ unknown-old-eNB-UE-X2AP-ID,
+ unknown-pair-of-UE-X2AP-ID,
+ ho-target-not-allowed,
+ tx2relocoverall-expiry,
+ trelocprep-expiry,
+ cell-not-available,
+ no-radio-resources-available-in-target-cell,
+ invalid-MME-GroupID,
+ unknown-MME-Code,
+ encryption-and-or-integrity-protection-algorithms-not-supported,
+ reportCharacteristicsEmpty,
+ noReportPeriodicity,
+ existingMeasurementID,
+ unknown-eNB-Measurement-ID,
+ measurement-temporarily-not-available,
+ unspecified,
+ ...,
+ load-balancing,
+ handover-optimisation,
+ value-out-of-allowed-range,
+ multiple-E-RAB-ID-instances,
+ switch-off-ongoing,
+ not-supported-QCI-value,
+ measurement-not-supported-for-the-object
+
+}
+
+CauseTransport ::= ENUMERATED {
+ transport-resource-unavailable,
+ unspecified,
+ ...
+}
+
+CellBasedMDT::= SEQUENCE {
+ cellIdListforMDT CellIdListforMDT,
+ iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellBasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CellIdListforMDT ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF ECGI
+
+Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ... }
+
+
+CellType ::= SEQUENCE {
+ cell-Size Cell-Size,
+ iE-Extensions ProtocolExtensionContainer { { CellType-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CellType-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CompositeAvailableCapacityGroup ::= SEQUENCE {
+ dL-CompositeAvailableCapacity CompositeAvailableCapacity,
+ uL-CompositeAvailableCapacity CompositeAvailableCapacity,
+ iE-Extensions ProtocolExtensionContainer { { CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompositeAvailableCapacityGroup-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CompositeAvailableCapacity ::= SEQUENCE {
+ cellCapacityClassValue CellCapacityClassValue OPTIONAL,
+ capacityValue CapacityValue,
+ iE-Extensions ProtocolExtensionContainer { { CompositeAvailableCapacity-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompositeAvailableCapacity-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+COUNTvalue ::= SEQUENCE {
+ pDCP-SN PDCP-SN,
+ hFN HFN,
+ iE-Extensions ProtocolExtensionContainer { { COUNTvalue-ExtIEs} } OPTIONAL,
+ ...
+}
+
+COUNTvalue-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+COUNTValueExtended ::= SEQUENCE {
+ pDCP-SNExtended PDCP-SNExtended,
+ hFNModified HFNModified,
+ iE-Extensions ProtocolExtensionContainer { { COUNTValueExtended-ExtIEs} } OPTIONAL,
+ ...
+}
+
+COUNTValueExtended-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CriticalityDiagnostics ::= SEQUENCE {
+ procedureCode ProcedureCode OPTIONAL,
+ triggeringMessage TriggeringMessage OPTIONAL,
+ procedureCriticality Criticality OPTIONAL,
+ iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-ExtIEs} } OPTIONAL,
+ ...
+}
+
+
+CriticalityDiagnostics-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF
+ SEQUENCE {
+ iECriticality Criticality,
+ iE-ID ProtocolIE-ID,
+ typeOfError TypeOfError,
+ iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CriticalityDiagnostics-IE-List-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+CRNTI ::= BIT STRING (SIZE (16))
+
+CSGMembershipStatus ::= ENUMERATED {
+ member,
+ not-member
+}
+
+CSG-Id ::= BIT STRING (SIZE (27))
+
+CyclicPrefixDL ::= ENUMERATED {
+ normal,
+ extended,
+ ...
+}
+
+CyclicPrefixUL ::= ENUMERATED {
+ normal,
+ extended,
+ ...
+}
+
+
+-- D
+
+DeactivationIndication::= ENUMERATED {
+ deactivated,
+ ...
+}
+
+DL-Forwarding ::= ENUMERATED {
+ dL-forwardingProposed,
+ ...
+}
+
+DL-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-Total-PRB-usage::= INTEGER (0..100)
+
+-- E
+
+EARFCN ::= INTEGER (0..maxEARFCN)
+
+EARFCNExtension ::= INTEGER(maxEARFCNPlusOne..newmaxEARFCN, ...)
+
+FDD-Info ::= SEQUENCE {
+ uL-EARFCN EARFCN,
+ dL-EARFCN EARFCN,
+ uL-Transmission-Bandwidth Transmission-Bandwidth,
+ dL-Transmission-Bandwidth Transmission-Bandwidth,
+ iE-Extensions ProtocolExtensionContainer { {FDD-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+FDD-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-UL-EARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional}|
+ { ID id-DL-EARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional},
+ ...
+}
+
+TDD-Info ::= SEQUENCE {
+ eARFCN EARFCN,
+ transmission-Bandwidth Transmission-Bandwidth,
+ subframeAssignment SubframeAssignment,
+ specialSubframe-Info SpecialSubframe-Info,
+ iE-Extensions ProtocolExtensionContainer { {TDD-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+TDD-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-AdditionalSpecialSubframe-Info CRITICALITY ignore EXTENSION AdditionalSpecialSubframe-Info PRESENCE optional}|
+ { ID id-eARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional},
+ ...
+}
+
+EUTRA-Mode-Info ::= CHOICE {
+ fDD FDD-Info,
+ tDD TDD-Info,
+ ...
+}
+
+ECGI ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ eUTRANcellIdentifier EUTRANCellIdentifier,
+ iE-Extensions ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ECGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ENB-ID ::= CHOICE {
+ macro-eNB-ID BIT STRING (SIZE (20)),
+ home-eNB-ID BIT STRING (SIZE (28)),
+ ...
+}
+
+EncryptionAlgorithms ::= BIT STRING (SIZE (16, ...))
+
+EPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMN-Identity
+
+E-RAB-ID ::= INTEGER (0..15, ...)
+
+E-RAB-Level-QoS-Parameters ::= SEQUENCE {
+ qCI QCI,
+ allocationAndRetentionPriority AllocationAndRetentionPriority,
+ gbrQosInformation GBR-QosInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { E-RAB-Level-QoS-Parameters-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RAB-Level-QoS-Parameters-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+E-RAB-List ::= SEQUENCE (SIZE(1.. maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RAB-ItemIEs} }
+
+E-RAB-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-E-RAB-Item CRITICALITY ignore TYPE E-RAB-Item PRESENCE mandatory },
+ ...
+}
+
+E-RAB-Item ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { {E-RAB-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RAB-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+EUTRANCellIdentifier ::= BIT STRING (SIZE (28))
+
+EUTRANTraceID ::= OCTET STRING (SIZE (8))
+
+
+EventType ::= ENUMERATED{
+ change-of-serving-cell,
+ ...
+}
+
+ExtendedULInterferenceOverloadInfo ::= SEQUENCE {
+ associatedSubframes BIT STRING (SIZE (5)),
+ extended-ul-InterferenceOverloadIndication UL-InterferenceOverloadIndication,
+ iE-Extensions ProtocolExtensionContainer { { ExtendedULInterferenceOverloadInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ExtendedULInterferenceOverloadInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- F
+
+ForbiddenInterRATs ::= ENUMERATED {
+ all,
+ geran,
+ utran,
+ cdma2000,
+ ...,
+ geranandutran,
+ cdma2000andutran
+
+}
+
+ForbiddenTAs ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenTAs-Item
+
+ForbiddenTAs-Item ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ forbiddenTACs ForbiddenTACs,
+ iE-Extensions ProtocolExtensionContainer { {ForbiddenTAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ForbiddenTAs-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC
+
+ForbiddenLAs ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF ForbiddenLAs-Item
+
+ForbiddenLAs-Item ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ forbiddenLACs ForbiddenLACs,
+ iE-Extensions ProtocolExtensionContainer { {ForbiddenLAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ForbiddenLAs-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC
+
+Fourframes ::= BIT STRING (SIZE (24))
+
+FreqBandIndicator ::= INTEGER (1..256, ...)
+
+-- 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 X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GlobalENB-ID ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ eNB-ID ENB-ID,
+ iE-Extensions ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GlobalENB-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GTPtunnelEndpoint ::= SEQUENCE {
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEI,
+ iE-Extensions ProtocolExtensionContainer { {GTPtunnelEndpoint-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GTPtunnelEndpoint-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+GTP-TEI ::= OCTET STRING (SIZE (4))
+
+GUGroupIDList ::= SEQUENCE (SIZE (1..maxPools)) OF GU-Group-ID
+
+
+GU-Group-ID ::= SEQUENCE {
+ pLMN-Identity PLMN-Identity,
+ mME-Group-ID MME-Group-ID,
+ iE-Extensions ProtocolExtensionContainer { {GU-Group-ID-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GU-Group-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+GUMMEI ::= SEQUENCE {
+
+ gU-Group-ID GU-Group-ID,
+ mME-Code MME-Code,
+ iE-Extensions ProtocolExtensionContainer { {GUMMEI-ExtIEs} } OPTIONAL,
+ ...
+}
+
+GUMMEI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+-- H
+
+HandoverReportType ::= ENUMERATED {
+ hoTooEarly,
+ hoToWrongCell,
+ ...,
+ interRATpingpong
+}
+
+HandoverRestrictionList ::= SEQUENCE {
+ servingPLMN PLMN-Identity,
+ equivalentPLMNs EPLMNs OPTIONAL,
+ forbiddenTAs ForbiddenTAs OPTIONAL,
+ forbiddenLAs ForbiddenLAs OPTIONAL,
+ forbiddenInterRATs ForbiddenInterRATs OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} } OPTIONAL,
+ ...
+}
+
+HandoverRestrictionList-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+HFN ::= INTEGER (0..1048575)
+
+HFNModified ::= INTEGER (0..131071)
+
+HWLoadIndicator ::= SEQUENCE {
+ dLHWLoadIndicator LoadIndicator,
+ uLHWLoadIndicator LoadIndicator,
+ iE-Extensions ProtocolExtensionContainer { { HWLoadIndicator-ExtIEs} } OPTIONAL,
+ ...
+}
+
+HWLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+-- I
+
+Masked-IMEISV ::= BIT STRING (SIZE (64))
+
+InvokeIndication ::= ENUMERATED{
+ abs-information,
+ ...
+}
+
+IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16, ...))
+
+InterfacesToTrace ::= BIT STRING (SIZE (8))
+-- J
+-- K
+
+
+Key-eNodeB-Star ::= BIT STRING (SIZE(256))
+
+-- L
+
+
+LAC ::= OCTET STRING (SIZE (2)) --(EXCEPT ('0000'H|'FFFE'H))
+
+LastVisitedCell-Item ::= CHOICE {
+ e-UTRAN-Cell LastVisitedEUTRANCellInformation,
+ uTRAN-Cell LastVisitedUTRANCellInformation,
+ gERAN-Cell LastVisitedGERANCellInformation,
+ ...
+}
+
+LastVisitedEUTRANCellInformation ::= SEQUENCE {
+ global-Cell-ID ECGI,
+ cellType CellType,
+ time-UE-StayedInCell Time-UE-StayedInCell,
+ iE-Extensions ProtocolExtensionContainer { { LastVisitedEUTRANCellInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LastVisitedEUTRANCellInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+-- Extension for Rel-11 to support enhanced granularity for time UE stayed in cell --
+ { ID id-Time-UE-StayedInCell-EnhancedGranularity CRITICALITY ignore EXTENSION Time-UE-StayedInCell-EnhancedGranularity PRESENCE optional}|
+ { ID id-HO-cause CRITICALITY ignore EXTENSION Cause PRESENCE optional},
+ ...
+}
+
+LastVisitedUTRANCellInformation ::= OCTET STRING
+
+LastVisitedGERANCellInformation ::= CHOICE {
+ undefined NULL,
+ ...
+}
+
+Links-to-log ::= ENUMERATED {uplink, downlink, both-uplink-and-downlink, ...}
+
+LoadIndicator ::= ENUMERATED {
+ lowLoad,
+ mediumLoad,
+ highLoad,
+ overLoad,
+ ...
+}
+
+
+
+LocationReportingInformation ::= SEQUENCE {
+ eventType EventType,
+ reportArea ReportArea,
+ iE-Extensions ProtocolExtensionContainer { {LocationReportingInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+ ...
+}
+
+-- M
+
+M3Configuration ::= SEQUENCE {
+ m3period M3period,
+ iE-Extensions ProtocolExtensionContainer { { M3Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M3Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+M3period ::= ENUMERATED {ms100, ms1000, ms10000, ... }
+
+M4Configuration ::= SEQUENCE {
+ m4period M4period,
+ m4-links-to-log Links-to-log,
+ iE-Extensions ProtocolExtensionContainer { { M4Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M4Configuration-ExtIEs X2AP-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 X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... }
+
+MDT-Activation ::= ENUMERATED {
+ immediate-MDT-only,
+ immediate-MDT-and-Trace,
+ ...
+}
+
+MDT-Configuration ::= SEQUENCE {
+ mdt-Activation MDT-Activation,
+ areaScopeOfMDT AreaScopeOfMDT,
+ 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 for measurement M1
+ iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MDT-Configuration-ExtIEs X2AP-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-SignallingBasedMDTPLMNList CRITICALITY ignore EXTENSION MDTPLMNList PRESENCE optional},
+ ...
+}
+
+MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMN-Identity
+
+MDT-Location-Info ::= BIT STRING (SIZE (8))
+
+MeasurementsToActivate::= BIT STRING (SIZE (8))
+
+MeasurementThresholdA2 ::= CHOICE {
+ threshold-RSRP Threshold-RSRP,
+ threshold-RSRQ Threshold-RSRQ,
+ ...
+}
+
+MME-Group-ID ::= OCTET STRING (SIZE (2))
+
+MME-Code ::= OCTET STRING (SIZE (1))
+
+Measurement-ID ::= INTEGER (1..4095, ...)
+
+MBMS-Service-Area-Identity-List ::= SEQUENCE (SIZE(1.. maxnoofMBMSServiceAreaIdentities)) OF MBMS-Service-Area-Identity
+
+MBMS-Service-Area-Identity ::= OCTET STRING (SIZE (2))
+
+MBSFN-Subframe-Infolist::= SEQUENCE (SIZE(1.. maxnoofMBSFN)) OF MBSFN-Subframe-Info
+
+MBSFN-Subframe-Info ::= SEQUENCE {
+ radioframeAllocationPeriod RadioframeAllocationPeriod,
+ radioframeAllocationOffset RadioframeAllocationOffset,
+ subframeAllocation SubframeAllocation,
+ iE-Extensions ProtocolExtensionContainer { { MBSFN-Subframe-Info-ExtIEs } } OPTIONAL,
+ ...
+}
+
+MBSFN-Subframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ManagementBasedMDTallowed ::= ENUMERATED {allowed, ...}
+
+MobilityParametersModificationRange ::= SEQUENCE {
+ handoverTriggerChangeLowerLimit INTEGER (-20..20),
+ handoverTriggerChangeUpperLimit INTEGER (-20..20),
+ ...
+}
+
+MobilityParametersInformation ::= SEQUENCE {
+ handoverTriggerChange INTEGER (-20..20),
+ ...
+}
+
+MultibandInfoList ::= SEQUENCE (SIZE(1..maxnoofBands)) OF BandInfo
+
+
+BandInfo ::= SEQUENCE {
+ freqBandIndicator FreqBandIndicator,
+ iE-Extensions ProtocolExtensionContainer { { BandInfo-ExtIEs } } OPTIONAL,
+ ...
+}
+
+BandInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- N
+
+Neighbour-Information ::= SEQUENCE (SIZE (0..maxnoofNeighbours)) OF SEQUENCE {
+ eCGI ECGI,
+ pCI PCI,
+ eARFCN EARFCN,
+ iE-Extensions ProtocolExtensionContainer { {Neighbour-Information-ExtIEs} } OPTIONAL,
+ ...
+}
+
+Neighbour-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-NeighbourTAC CRITICALITY ignore EXTENSION TAC PRESENCE optional}|
+ { ID id-eARFCNExtension CRITICALITY reject EXTENSION EARFCNExtension PRESENCE optional},
+ ...
+}
+
+NextHopChainingCount ::= INTEGER (0..7)
+
+Number-of-Antennaports ::= ENUMERATED {
+ an1,
+ an2,
+ an4,
+ ...
+}
+
+-- O
+
+Oneframe ::= BIT STRING (SIZE (6))
+
+-- P
+
+PDCP-SN ::= INTEGER (0..4095)
+
+PDCP-SNExtended ::= INTEGER (0..32767)
+
+PCI ::= INTEGER (0..503, ...)
+
+M1PeriodicReporting ::= SEQUENCE {
+ reportInterval ReportIntervalMDT,
+ reportAmount ReportAmountMDT,
+ iE-Extensions ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M1PeriodicReporting-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+PLMN-Identity ::= OCTET STRING (SIZE(3))
+
+PRACH-Configuration ::= SEQUENCE {
+ rootSequenceIndex INTEGER (0..837),
+ zeroCorrelationIndex INTEGER (0..15),
+ highSpeedFlag BOOLEAN,
+ prach-FreqOffset INTEGER (0..94),
+ prach-ConfigIndex INTEGER (0..63) OPTIONAL, -- present for TDD --
+ iE-Extensions ProtocolExtensionContainer { {PRACH-Configuration-ExtIEs} } OPTIONAL,
+ ...
+}
+
+PRACH-Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+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)
+
+-- Q
+
+QCI ::= INTEGER (0..255)
+
+-- R
+
+RadioframeAllocationOffset ::= INTEGER (0..7, ...)
+
+RadioframeAllocationPeriod ::= ENUMERATED{
+ n1,
+ n2,
+ n4,
+ n8,
+ n16,
+ n32,
+ ...
+}
+
+
+RadioResourceStatus ::= SEQUENCE {
+ dL-GBR-PRB-usage DL-GBR-PRB-usage,
+ uL-GBR-PRB-usage UL-GBR-PRB-usage,
+ dL-non-GBR-PRB-usage DL-non-GBR-PRB-usage,
+ uL-non-GBR-PRB-usage UL-non-GBR-PRB-usage,
+ dL-Total-PRB-usage DL-Total-PRB-usage,
+ uL-Total-PRB-usage UL-Total-PRB-usage,
+ iE-Extensions ProtocolExtensionContainer { {RadioResourceStatus-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RadioResourceStatus-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))
+
+ReceiveStatusOfULPDCPSDUsExtended ::= BIT STRING (SIZE(1..16384))
+
+Registration-Request ::= ENUMERATED {
+ start,
+ stop,
+ ...
+}
+
+RelativeNarrowbandTxPower ::= SEQUENCE {
+
+ rNTP-PerPRB BIT STRING (SIZE(6..110, ...)),
+ rNTP-Threshold RNTP-Threshold,
+ numberOfCellSpecificAntennaPorts ENUMERATED {one, two, four, ...},
+ p-B INTEGER (0..3,...),
+ pDCCH-InterferenceImpact INTEGER (0..4,...),
+ iE-Extensions ProtocolExtensionContainer { { RelativeNarrowbandTxPower-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RelativeNarrowbandTxPower-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, rinfinity}
+
+ReportArea ::= ENUMERATED{
+ ecgi,
+ ...
+}
+
+ReportIntervalMDT ::= ENUMERATED {ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60}
+
+ReportCharacteristics ::= BIT STRING (SIZE (32))
+
+M1ReportingTrigger::= ENUMERATED{
+ periodic,
+ a2eventtriggered,
+ ...,
+ a2eventtriggered-periodic
+}
+
+RNTP-Threshold ::= ENUMERATED {
+ minusInfinity,
+ minusEleven,
+ minusTen,
+ minusNine,
+ minusEight,
+ minusSeven,
+ minusSix,
+ minusFive,
+ minusFour,
+ minusThree,
+ minusTwo,
+ minusOne,
+ zero,
+ one,
+ two,
+ three,
+ ...
+}
+
+RRC-Context ::= OCTET STRING
+
+RRCConnReestabIndicator ::= ENUMERATED {
+ reconfigurationFailure, handoverFailure, otherFailure, ...
+}
+-- The values correspond to the values of ReestablishmentCause reported from the UE in the RRCConnectionReestablishmentRequest, as defined in TS 36.331 [9]
+
+RRCConnSetupIndicator::= ENUMERATED {
+ rrcConnSetup,
+ ...
+}
+
+-- S
+
+S1TNLLoadIndicator ::= SEQUENCE {
+ dLS1TNLLoadIndicator LoadIndicator,
+ uLS1TNLLoadIndicator LoadIndicator,
+ iE-Extensions ProtocolExtensionContainer { { S1TNLLoadIndicator-ExtIEs} } OPTIONAL,
+ ...
+}
+
+S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+
+ServedCells ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE {
+ servedCellInfo ServedCell-Information,
+ neighbour-Info Neighbour-Information OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {ServedCell-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedCell-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ServedCell-Information ::= SEQUENCE {
+ pCI PCI,
+ cellId ECGI,
+ tAC TAC,
+ broadcastPLMNs BroadcastPLMNs-Item,
+ eUTRA-Mode-Info EUTRA-Mode-Info,
+ iE-Extensions ProtocolExtensionContainer { {ServedCell-Information-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-Number-of-Antennaports CRITICALITY ignore EXTENSION Number-of-Antennaports PRESENCE optional }|
+ { ID id-PRACH-Configuration CRITICALITY ignore EXTENSION PRACH-Configuration PRESENCE optional }|
+ { ID id-MBSFN-Subframe-Info CRITICALITY ignore EXTENSION MBSFN-Subframe-Infolist PRESENCE optional }|
+ { ID id-CSG-Id CRITICALITY ignore EXTENSION CSG-Id PRESENCE optional }|
+ { ID id-MBMS-Service-Area-List CRITICALITY ignore EXTENSION MBMS-Service-Area-Identity-List PRESENCE optional }|
+ { ID id-MultibandInfoList CRITICALITY ignore EXTENSION MultibandInfoList PRESENCE optional },
+ ...
+}
+
+ShortMAC-I ::= BIT STRING (SIZE(16))
+
+SRVCCOperationPossible ::= ENUMERATED {
+ possible,
+ ...
+}
+
+SubframeAssignment ::= ENUMERATED {
+ sa0,
+ sa1,
+ sa2,
+ sa3,
+ sa4,
+ sa5,
+ sa6,
+ ...
+}
+
+SpecialSubframe-Info ::= SEQUENCE {
+ specialSubframePatterns SpecialSubframePatterns,
+ cyclicPrefixDL CyclicPrefixDL,
+ cyclicPrefixUL CyclicPrefixUL,
+ iE-Extensions ProtocolExtensionContainer { { SpecialSubframe-Info-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SpecialSubframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SpecialSubframePatterns ::= ENUMERATED {
+ ssp0,
+ ssp1,
+ ssp2,
+ ssp3,
+ ssp4,
+ ssp5,
+ ssp6,
+ ssp7,
+ ssp8,
+ ...
+}
+
+SubscriberProfileIDforRFP ::= INTEGER (1..256)
+
+SubframeAllocation ::= CHOICE {
+ oneframe Oneframe,
+ fourframes Fourframes,
+ ...
+}
+
+-- T
+
+TAC ::= OCTET STRING (SIZE (2))
+
+TABasedMDT::= SEQUENCE {
+ tAListforMDT TAListforMDT,
+ iE-Extensions ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TABasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC
+
+TAIBasedMDT ::= SEQUENCE {
+ tAIListforMDT TAIListforMDT,
+ iE-Extensions ProtocolExtensionContainer { {TAIBasedMDT-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAIBasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI-Item
+
+TAI-Item ::= SEQUENCE {
+ tAC TAC,
+ pLMN-Identity PLMN-Identity,
+ iE-Extensions ProtocolExtensionContainer { { TAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAI-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TargetCellInUTRAN ::= OCTET STRING -- This IE is to be encoded according to the UTRAN Cell ID in the Last Visited UTRAN Cell Information IE in TS 25.413 [24]
+
+M1ThresholdEventA2 ::= SEQUENCE {
+ measurementThreshold MeasurementThresholdA2,
+ iE-Extensions ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL,
+ ...
+}
+
+M1ThresholdEventA2-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+TargeteNBtoSource-eNBTransparentContainer ::= OCTET STRING
+
+Threshold-RSRP ::= INTEGER(0..97)
+
+Threshold-RSRQ ::= INTEGER(0..34)
+
+TimeToWait ::= ENUMERATED {
+ v1s,
+ v2s,
+ v5s,
+ v10s,
+ v20s,
+ v60s,
+ ...
+}
+
+Time-UE-StayedInCell ::= INTEGER (0..4095)
+
+Time-UE-StayedInCell-EnhancedGranularity ::= INTEGER (0..40950)
+
+
+TraceActivation ::= SEQUENCE {
+ eUTRANTraceID EUTRANTraceID,
+ interfacesToTrace InterfacesToTrace,
+traceDepth TraceDepth,
+traceCollectionEntityIPAddress TraceCollectionEntityIPAddress,
+ iE-Extensions ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TraceActivation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-MDTConfiguration CRITICALITY ignore EXTENSION MDT-Configuration PRESENCE optional},
+ ...
+}
+
+TraceCollectionEntityIPAddress ::= BIT STRING (SIZE(1..160, ...))
+
+TraceDepth ::= ENUMERATED {
+ minimum,
+ medium,
+ maximum,
+ minimumWithoutVendorSpecificExtension,
+ mediumWithoutVendorSpecificExtension,
+ maximumWithoutVendorSpecificExtension,
+ ...
+}
+
+
+
+
+Transmission-Bandwidth ::= ENUMERATED {
+ bw6,
+ bw15,
+ bw25,
+ bw50,
+ bw75,
+ bw100,
+ ...
+}
+
+TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...))
+
+TypeOfError ::= ENUMERATED {
+ not-understood,
+ missing,
+ ...
+}
+
+
+-- U
+
+UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCells)) OF LastVisitedCell-Item
+
+
+UE-S1AP-ID ::= INTEGER (0.. 4294967295)
+
+UE-X2AP-ID ::= INTEGER (0..4095)
+
+UEAggregateMaximumBitRate ::= SEQUENCE {
+ uEaggregateMaximumBitRateDownlink BitRate,
+ uEaggregateMaximumBitRateUplink BitRate,
+ iE-Extensions ProtocolExtensionContainer { {UEAggregate-MaximumBitrate-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UEAggregate-MaximumBitrate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UESecurityCapabilities ::= SEQUENCE {
+ encryptionAlgorithms EncryptionAlgorithms,
+ integrityProtectionAlgorithms IntegrityProtectionAlgorithms,
+ iE-Extensions ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} } OPTIONAL,
+...
+}
+
+UESecurityCapabilities-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UL-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-Total-PRB-usage::= INTEGER (0..100)
+
+UL-InterferenceOverloadIndication ::= SEQUENCE (SIZE(1..maxnoofPRBs)) OF UL-InterferenceOverloadIndication-Item
+
+UL-InterferenceOverloadIndication-Item ::= ENUMERATED {
+ high-interference,
+ medium-interference,
+ low-interference,
+ ...
+}
+
+UL-HighInterferenceIndicationInfo ::= SEQUENCE (SIZE(1..maxCellineNB)) OF UL-HighInterferenceIndicationInfo-Item
+
+UL-HighInterferenceIndicationInfo-Item ::= SEQUENCE {
+ target-Cell-ID ECGI,
+ ul-interferenceindication UL-HighInterferenceIndication,
+ iE-Extensions ProtocolExtensionContainer { { UL-HighInterferenceIndicationInfo-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UL-HighInterferenceIndicationInfo-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UL-HighInterferenceIndication ::= BIT STRING (SIZE(1..110, ...))
+
+UE-RLF-Report-Container::= OCTET STRING
+-- This IE is a transparent container and shall be encoded as the rlfReport field contained in the UEInformationResponse message as defined in TS 36.331 [9]
+
+UsableABSInformation ::= CHOICE {
+ fdd UsableABSInformationFDD,
+ tdd UsableABSInformationTDD,
+ ...
+}
+
+UsableABSInformationFDD ::= SEQUENCE {
+ usable-abs-pattern-info BIT STRING (SIZE(40)),
+ iE-Extensions ProtocolExtensionContainer { { UsableABSInformationFDD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UsableABSInformationFDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+UsableABSInformationTDD ::= SEQUENCE {
+ usaable-abs-pattern-info BIT STRING (SIZE(1..70, ...)),
+ iE-Extensions ProtocolExtensionContainer { { UsableABSInformationTDD-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UsableABSInformationTDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- V
+-- W
+-- X
+-- Y
+-- Z
+
+END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn b/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn
new file mode 100644
index 0000000000..a73d78794f
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/X2AP-PDU-Contents.asn
@@ -0,0 +1,1066 @@
+-- 3GPP TS 36.423 V12.2.0 (2014-06)
+-- 9.3.4 PDU Definitions
+-- **************************************************************
+--
+-- PDU definitions for X2AP.
+--
+-- **************************************************************
+
+X2AP-PDU-Contents {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Contents (1) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+ ABSInformation,
+ ABS-Status,
+ AS-SecurityInformation,
+ Cause,
+ CompositeAvailableCapacityGroup,
+ COUNTvalue,
+ CriticalityDiagnostics,
+ CRNTI,
+ CSGMembershipStatus,
+ CSG-Id,
+ DeactivationIndication,
+ DL-Forwarding,
+ ECGI,
+ E-RAB-ID,
+ E-RAB-Level-QoS-Parameters,
+ E-RAB-List,
+ EUTRANTraceID,
+ GlobalENB-ID,
+ GTPtunnelEndpoint,
+ GUGroupIDList,
+ GUMMEI,
+ HandoverReportType,
+ HandoverRestrictionList,
+ Masked-IMEISV,
+ InvokeIndication,
+ LocationReportingInformation,
+ MDT-Configuration,
+ ManagementBasedMDTallowed,
+ MDTPLMNList,
+ Neighbour-Information,
+ PCI,
+ PDCP-SN,
+ PLMN-Identity,
+ ReceiveStatusofULPDCPSDUs,
+ Registration-Request,
+ RelativeNarrowbandTxPower,
+ RadioResourceStatus,
+ RRCConnReestabIndicator,
+ RRCConnSetupIndicator,
+ UE-RLF-Report-Container,
+ RRC-Context,
+ ServedCell-Information,
+ ServedCells,
+ ShortMAC-I,
+ SRVCCOperationPossible,
+ SubscriberProfileIDforRFP,
+ TargetCellInUTRAN,
+ TargeteNBtoSource-eNBTransparentContainer,
+ TimeToWait,
+ TraceActivation,
+ TraceDepth,
+
+ TransportLayerAddress,
+ UEAggregateMaximumBitRate,
+ UE-HistoryInformation,
+ UE-S1AP-ID,
+ UESecurityCapabilities,
+ UE-X2AP-ID,
+ UL-HighInterferenceIndicationInfo,
+ UL-InterferenceOverloadIndication,
+ HWLoadIndicator,
+ S1TNLLoadIndicator,
+ Measurement-ID,
+ ReportCharacteristics,
+ MobilityParametersInformation,
+ MobilityParametersModificationRange,
+ ReceiveStatusOfULPDCPSDUsExtended,
+ COUNTValueExtended,
+ SubframeAssignment,
+ ExtendedULInterferenceOverloadInfo
+
+
+
+FROM X2AP-IEs
+
+ PrivateIE-Container{},
+ ProtocolExtensionContainer{},
+ ProtocolIE-Container{},
+ ProtocolIE-ContainerList{},
+ ProtocolIE-ContainerPair{},
+ ProtocolIE-ContainerPairList{},
+ ProtocolIE-Single-Container{},
+ X2AP-PRIVATE-IES,
+ X2AP-PROTOCOL-EXTENSION,
+ X2AP-PROTOCOL-IES,
+ X2AP-PROTOCOL-IES-PAIR
+FROM X2AP-Containers
+
+ id-ABSInformation,
+ id-ActivatedCellList,
+ id-Cause,
+ id-CellInformation,
+ id-CellInformation-Item,
+ id-CellMeasurementResult,
+ id-CellMeasurementResult-Item,
+ id-CellToReport,
+ id-CellToReport-Item,
+ id-CompositeAvailableCapacityGroup,
+ id-CriticalityDiagnostics,
+ id-DeactivationIndication,
+ id-E-RABs-Admitted-Item,
+ id-E-RABs-Admitted-List,
+ id-E-RABs-NotAdmitted-List,
+ id-E-RABs-SubjectToStatusTransfer-List,
+ id-E-RABs-SubjectToStatusTransfer-Item,
+ id-E-RABs-ToBeSetup-Item,
+ id-GlobalENB-ID,
+ id-GUGroupIDList,
+ id-GUGroupIDToAddList,
+ id-GUGroupIDToDeleteList,
+ id-GUMMEI-ID,
+ id-Masked-IMEISV,
+ id-InvokeIndication,
+ id-New-eNB-UE-X2AP-ID,
+ id-Old-eNB-UE-X2AP-ID,
+ id-Registration-Request,
+ id-ReportingPeriodicity,
+ id-ServedCells,
+ id-ServedCellsToActivate,
+ id-ServedCellsToAdd,
+ id-ServedCellsToModify,
+ id-ServedCellsToDelete,
+ id-SRVCCOperationPossible,
+ id-TargetCell-ID,
+ id-TargeteNBtoSource-eNBTransparentContainer,
+ id-TimeToWait,
+ id-TraceActivation,
+ id-UE-ContextInformation,
+ id-UE-HistoryInformation,
+ id-UE-X2AP-ID,
+ id-Measurement-ID,
+ id-ReportCharacteristics,
+ id-ENB1-Measurement-ID,
+ id-ENB2-Measurement-ID,
+ id-ENB1-Cell-ID,
+ id-ENB2-Cell-ID,
+ id-ENB2-Proposed-Mobility-Parameters,
+ id-ENB1-Mobility-Parameters,
+ id-ENB2-Mobility-Parameters-Modification-Range,
+ id-FailureCellPCI,
+ id-Re-establishmentCellECGI,
+ id-FailureCellCRNTI,
+ id-ShortMAC-I,
+ id-SourceCellECGI,
+ id-FailureCellECGI,
+ id-HandoverReportType,
+ id-UE-RLF-Report-Container,
+ id-PartialSuccessIndicator,
+ id-MeasurementInitiationResult-List,
+ id-MeasurementInitiationResult-Item,
+ id-MeasurementFailureCause-Item,
+ id-CompleteFailureCauseInformation-List,
+ id-CompleteFailureCauseInformation-Item,
+ id-CSGMembershipStatus,
+ id-CSG-Id,
+ id-MDTConfiguration,
+ id-ManagementBasedMDTallowed,
+ id-ABS-Status,
+ id-RRCConnSetupIndicator,
+ id-RRCConnReestabIndicator,
+ id-TargetCellInUTRAN,
+ id-MobilityInformation,
+ id-SourceCellCRNTI,
+ id-ManagementBasedMDTPLMNList,
+ id-ReceiveStatusOfULPDCPSDUsExtended,
+ id-ULCOUNTValueExtended,
+ id-DLCOUNTValueExtended,
+ id-IntendedULDLConfiguration,
+ id-ExtendedULInterferenceOverloadInfo,
+ id-RNL-Header,
+ id-x2APMessage,
+
+ maxCellineNB,
+ maxnoofBearers,
+ maxnoofPDCP-SN,
+ maxFailedMeasObjects,
+ maxnoofCellIDforMDT,
+ maxnoofTAforMDT
+
+FROM X2AP-Constants;
+
+-- **************************************************************
+--
+-- HANDOVER REQUEST
+--
+-- **************************************************************
+
+HandoverRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{HandoverRequest-IEs}},
+ ...
+}
+
+HandoverRequest-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-TargetCell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory}|
+ { ID id-GUMMEI-ID CRITICALITY reject TYPE GUMMEI PRESENCE mandatory}|
+ { ID id-UE-ContextInformation CRITICALITY reject TYPE UE-ContextInformation PRESENCE mandatory}|
+ { ID id-UE-HistoryInformation CRITICALITY ignore TYPE UE-HistoryInformation PRESENCE mandatory}|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional}|
+ { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional}|
+ { ID id-CSGMembershipStatus CRITICALITY reject TYPE CSGMembershipStatus PRESENCE optional}|
+ { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional}|
+ { ID id-Masked-IMEISV CRITICALITY ignore TYPE Masked-IMEISV PRESENCE optional},
+ ...
+}
+
+UE-ContextInformation ::= SEQUENCE {
+ mME-UE-S1AP-ID UE-S1AP-ID,
+ uESecurityCapabilities UESecurityCapabilities,
+ aS-SecurityInformation AS-SecurityInformation,
+ uEaggregateMaximumBitRate UEAggregateMaximumBitRate,
+ subscriberProfileIDforRFP SubscriberProfileIDforRFP OPTIONAL,
+ e-RABs-ToBeSetup-List E-RABs-ToBeSetup-List,
+ rRC-Context RRC-Context,
+ handoverRestrictionList HandoverRestrictionList OPTIONAL,
+ locationReportingInformation LocationReportingInformation OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {UE-ContextInformation-ExtIEs} } OPTIONAL,
+ ...
+}
+
+UE-ContextInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+{ ID id-ManagementBasedMDTallowed CRITICALITY ignore EXTENSION ManagementBasedMDTallowed PRESENCE optional }|
+{ ID id-ManagementBasedMDTPLMNList CRITICALITY ignore EXTENSION MDTPLMNList PRESENCE optional },
+ ...
+}
+
+E-RABs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeSetup-ItemIEs} }
+
+E-RABs-ToBeSetup-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-E-RABs-ToBeSetup-Item CRITICALITY ignore TYPE E-RABs-ToBeSetup-Item PRESENCE mandatory },
+ ...
+}
+
+E-RABs-ToBeSetup-Item ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ e-RAB-Level-QoS-Parameters E-RAB-Level-QoS-Parameters,
+ dL-Forwarding DL-Forwarding OPTIONAL,
+ uL-GTPtunnelEndpoint GTPtunnelEndpoint,
+ iE-Extensions ProtocolExtensionContainer { {E-RABs-ToBeSetup-ItemExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABs-ToBeSetup-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MobilityInformation ::= BIT STRING (SIZE(32))
+
+
+-- **************************************************************
+--
+-- HANDOVER REQUEST ACKNOWLEDGE
+--
+-- **************************************************************
+
+HandoverRequestAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{HandoverRequestAcknowledge-IEs}},
+ ...
+}
+
+HandoverRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-New-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-E-RABs-Admitted-List CRITICALITY ignore TYPE E-RABs-Admitted-List PRESENCE mandatory} |
+ { ID id-E-RABs-NotAdmitted-List CRITICALITY ignore TYPE E-RAB-List PRESENCE optional} |
+ { ID id-TargeteNBtoSource-eNBTransparentContainer CRITICALITY ignore TYPE TargeteNBtoSource-eNBTransparentContainer PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+E-RABs-Admitted-List ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ItemIEs} }
+
+E-RABs-Admitted-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-E-RABs-Admitted-Item CRITICALITY ignore TYPE E-RABs-Admitted-Item PRESENCE mandatory }
+}
+
+E-RABs-Admitted-Item ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+ uL-GTP-TunnelEndpoint GTPtunnelEndpoint OPTIONAL,
+ dL-GTP-TunnelEndpoint GTPtunnelEndpoint OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABs-Admitted-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABs-Admitted-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- HANDOVER PREPARATION FAILURE
+--
+-- **************************************************************
+
+HandoverPreparationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{HandoverPreparationFailure-IEs}},
+ ...
+}
+
+HandoverPreparationFailure-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} |
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+
+ ...
+}
+
+-- **************************************************************
+--
+-- Handover Report
+--
+-- **************************************************************
+
+HandoverReport ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{HandoverReport-IEs}},
+ ...
+}
+
+HandoverReport-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-HandoverReportType CRITICALITY ignore TYPE HandoverReportType PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-SourceCellECGI CRITICALITY ignore TYPE ECGI PRESENCE mandatory}|
+ { ID id-FailureCellECGI CRITICALITY ignore TYPE ECGI PRESENCE mandatory}|
+ { ID id-Re-establishmentCellECGI CRITICALITY ignore TYPE ECGI PRESENCE conditional} -- The IE shall be present if the Handover Report Type IE is set to “HO to Wrong Cell” -- |
+ { ID id-TargetCellInUTRAN CRITICALITY ignore TYPE TargetCellInUTRAN PRESENCE conditional} -- The IE shall be present if the Handover Report Type IE is set to "InterRAT ping-pong" --|
+ { ID id-SourceCellCRNTI CRITICALITY ignore TYPE CRNTI PRESENCE optional}|
+ { ID id-MobilityInformation CRITICALITY ignore TYPE MobilityInformation PRESENCE optional}|
+ { ID id-UE-RLF-Report-Container CRITICALITY ignore TYPE UE-RLF-Report-Container PRESENCE optional},
+ ...
+}
+
+-- **************************************************************
+--
+-- SN Status Transfer
+--
+-- **************************************************************
+
+SNStatusTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{SNStatusTransfer-IEs}},
+ ...
+}
+
+SNStatusTransfer-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-New-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-E-RABs-SubjectToStatusTransfer-List CRITICALITY ignore TYPE E-RABs-SubjectToStatusTransfer-List PRESENCE mandatory} ,
+ ...
+}
+
+E-RABs-SubjectToStatusTransfer-List ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { { E-RABs-SubjectToStatusTransfer-ItemIEs} }
+
+E-RABs-SubjectToStatusTransfer-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-E-RABs-SubjectToStatusTransfer-Item CRITICALITY ignore TYPE E-RABs-SubjectToStatusTransfer-Item PRESENCE mandatory }
+}
+
+E-RABs-SubjectToStatusTransfer-Item ::= SEQUENCE {
+ e-RAB-ID E-RAB-ID,
+
+ receiveStatusofULPDCPSDUs ReceiveStatusofULPDCPSDUs OPTIONAL,
+ uL-COUNTvalue COUNTvalue,
+ dL-COUNTvalue COUNTvalue,
+ iE-Extensions ProtocolExtensionContainer { {E-RABs-SubjectToStatusTransfer-ItemExtIEs} } OPTIONAL,
+ ...
+}
+
+E-RABs-SubjectToStatusTransfer-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-ReceiveStatusOfULPDCPSDUsExtended CRITICALITY ignore EXTENSION ReceiveStatusOfULPDCPSDUsExtended PRESENCE optional}|
+ { ID id-ULCOUNTValueExtended CRITICALITY ignore EXTENSION COUNTValueExtended PRESENCE optional}|
+ { ID id-DLCOUNTValueExtended CRITICALITY ignore EXTENSION COUNTValueExtended PRESENCE optional},
+ ...
+}
+
+
+
+
+
+-- **************************************************************
+--
+-- UE Context Release
+--
+-- **************************************************************
+
+UEContextRelease ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{UEContextRelease-IEs}},
+ ...
+}
+
+UEContextRelease-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-New-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} ,
+ ...
+}
+
+
+-- **************************************************************
+--
+-- HANDOVER CANCEL
+--
+-- **************************************************************
+
+HandoverCancel ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{HandoverCancel-IEs}},
+ ...
+}
+
+HandoverCancel-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY reject TYPE UE-X2AP-ID PRESENCE mandatory} |
+ { ID id-New-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE optional} |
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} ,
+ ...
+}
+
+-- **************************************************************
+--
+-- ERROR INDICATION
+--
+-- **************************************************************
+
+ErrorIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ErrorIndication-IEs}},
+ ...
+}
+
+ErrorIndication-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Old-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE optional} |
+ { ID id-New-eNB-UE-X2AP-ID CRITICALITY ignore TYPE UE-X2AP-ID PRESENCE optional} |
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional} |
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional} ,
+ ...
+}
+
+-- **************************************************************
+--
+-- Reset Request
+--
+-- **************************************************************
+
+ResetRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ResetRequest-IEs}},
+ ...
+}
+
+ResetRequest-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- Reset Response
+--
+-- **************************************************************
+
+ResetResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ResetResponse-IEs}},
+ ...
+}
+
+ResetResponse-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- X2 SETUP REQUEST
+--
+-- **************************************************************
+
+X2SetupRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{X2SetupRequest-IEs}},
+ ...
+}
+
+X2SetupRequest-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-GlobalENB-ID CRITICALITY reject TYPE GlobalENB-ID PRESENCE mandatory} |
+ { ID id-ServedCells CRITICALITY reject TYPE ServedCells PRESENCE mandatory} |
+ { ID id-GUGroupIDList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional},
+...
+}
+
+
+
+-- **************************************************************
+--
+-- X2 SETUP RESPONSE
+--
+-- **************************************************************
+
+X2SetupResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{X2SetupResponse-IEs}},
+ ...
+}
+
+X2SetupResponse-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-GlobalENB-ID CRITICALITY reject TYPE GlobalENB-ID PRESENCE mandatory} |
+ { ID id-ServedCells CRITICALITY reject TYPE ServedCells PRESENCE mandatory} |
+ { ID id-GUGroupIDList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- X2 SETUP FAILURE
+--
+-- **************************************************************
+
+X2SetupFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{X2SetupFailure-IEs}},
+ ...
+}
+
+X2SetupFailure-IEs X2AP-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 },
+
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- LOAD INFORMATION
+--
+-- **************************************************************
+
+LoadInformation ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{LoadInformation-IEs}},
+ ...
+}
+
+LoadInformation-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CellInformation CRITICALITY ignore TYPE CellInformation-List PRESENCE mandatory} ,
+ ...
+}
+
+CellInformation-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellInformation-ItemIEs} }
+
+CellInformation-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CellInformation-Item CRITICALITY ignore TYPE CellInformation-Item PRESENCE mandatory }
+}
+
+CellInformation-Item ::= SEQUENCE {
+ cell-ID ECGI,
+ ul-InterferenceOverloadIndication UL-InterferenceOverloadIndication OPTIONAL,
+ ul-HighInterferenceIndicationInfo UL-HighInterferenceIndicationInfo OPTIONAL,
+ relativeNarrowbandTxPower RelativeNarrowbandTxPower OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CellInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+{ ID id-ABSInformation CRITICALITY ignore EXTENSION ABSInformation PRESENCE optional }|
+{ ID id-InvokeIndication CRITICALITY ignore EXTENSION InvokeIndication PRESENCE optional }|
+{ ID id-IntendedULDLConfiguration CRITICALITY ignore EXTENSION SubframeAssignment PRESENCE optional }|
+{ ID id-ExtendedULInterferenceOverloadInfo CRITICALITY ignore EXTENSION ExtendedULInterferenceOverloadInfo PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- ENB CONFIGURATION UPDATE
+--
+-- **************************************************************
+
+ENBConfigurationUpdate ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ENBConfigurationUpdate-IEs}},
+ ...
+}
+
+ENBConfigurationUpdate-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ServedCellsToAdd CRITICALITY reject TYPE ServedCells PRESENCE optional} |
+ { ID id-ServedCellsToModify CRITICALITY reject TYPE ServedCellsToModify PRESENCE optional} |
+ { ID id-ServedCellsToDelete CRITICALITY reject TYPE Old-ECGIs PRESENCE optional} |
+ { ID id-GUGroupIDToAddList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional} |
+ { ID id-GUGroupIDToDeleteList CRITICALITY reject TYPE GUGroupIDList PRESENCE optional},
+ ...
+}
+
+ServedCellsToModify::= SEQUENCE (SIZE (1..maxCellineNB)) OF ServedCellsToModify-Item
+
+ServedCellsToModify-Item::= SEQUENCE {
+ old-ecgi ECGI,
+ servedCellInfo ServedCell-Information,
+ neighbour-Info Neighbour-Information OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { ServedCellsToModify-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedCellsToModify-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+{ ID id-DeactivationIndication CRITICALITY ignore EXTENSION DeactivationIndication PRESENCE optional },
+ ...
+}
+
+
+Old-ECGIs::= SEQUENCE (SIZE (1..maxCellineNB)) OF ECGI
+
+-- **************************************************************
+--
+-- ENB CONFIGURATION UPDATE ACKNOWLEDGE
+--
+-- **************************************************************
+
+ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ENBConfigurationUpdateAcknowledge-IEs}},
+ ...
+}
+
+ENBConfigurationUpdateAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+...
+}
+
+-- **************************************************************
+--
+-- ENB CONFIGURATION UPDATE FAIURE
+--
+-- **************************************************************
+
+ENBConfigurationUpdateFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ENBConfigurationUpdateFailure-IEs}},
+ ...
+}
+
+ENBConfigurationUpdateFailure-IEs X2AP-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 },
+ ...
+}
+
+
+
+-- **************************************************************
+--
+-- Resource Status Request
+--
+-- **************************************************************
+
+ResourceStatusRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ResourceStatusRequest-IEs}},
+ ...
+}
+
+ResourceStatusRequest-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-ENB2-Measurement-ID CRITICALITY ignore TYPE Measurement-ID PRESENCE conditional}|-- The IE shall be present if the Registration Request IE is set to “Stop”--
+ { ID id-Registration-Request CRITICALITY reject TYPE Registration-Request PRESENCE mandatory}|
+ { ID id-ReportCharacteristics CRITICALITY reject TYPE ReportCharacteristics PRESENCE optional}|
+ { ID id-CellToReport CRITICALITY ignore TYPE CellToReport-List PRESENCE mandatory}|
+ { ID id-ReportingPeriodicity CRITICALITY ignore TYPE ReportingPeriodicity PRESENCE optional}|
+ { ID id-PartialSuccessIndicator CRITICALITY ignore TYPE PartialSuccessIndicator PRESENCE optional},
+ ...
+}
+
+
+CellToReport-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellToReport-ItemIEs} }
+
+CellToReport-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CellToReport-Item CRITICALITY ignore TYPE CellToReport-Item PRESENCE mandatory }
+}
+
+CellToReport-Item ::= SEQUENCE {
+ cell-ID ECGI,
+ iE-Extensions ProtocolExtensionContainer { {CellToReport-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellToReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+ReportingPeriodicity ::= ENUMERATED {
+ one-thousand-ms,
+ two-thousand-ms,
+ five-thousand-ms,
+ ten-thousand-ms,
+...
+}
+
+PartialSuccessIndicator ::= ENUMERATED {
+ partial-success-allowed,
+...
+}
+
+-- **************************************************************
+--
+-- Resource Status Response
+--
+-- **************************************************************
+
+ResourceStatusResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ResourceStatusResponse-IEs}},
+ ...
+}
+
+ResourceStatusResponse-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-ENB2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-MeasurementInitiationResult-List CRITICALITY ignore TYPE MeasurementInitiationResult-List PRESENCE optional},
+ ...
+}
+
+
+MeasurementInitiationResult-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { { MeasurementInitiationResult-ItemIEs} }
+
+MeasurementInitiationResult-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-MeasurementInitiationResult-Item CRITICALITY ignore TYPE MeasurementInitiationResult-Item PRESENCE mandatory}
+}
+
+MeasurementInitiationResult-Item ::= SEQUENCE {
+ cell-ID ECGI,
+ measurementFailureCause-List MeasurementFailureCause-List OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { MeasurementInitiationResult-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MeasurementInitiationResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+MeasurementFailureCause-List ::= SEQUENCE (SIZE (1..maxFailedMeasObjects)) OF ProtocolIE-Single-Container { { MeasurementFailureCause-ItemIEs} }
+
+MeasurementFailureCause-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-MeasurementFailureCause-Item CRITICALITY ignore TYPE MeasurementFailureCause-Item PRESENCE mandatory}
+}
+
+MeasurementFailureCause-Item ::= SEQUENCE {
+ measurementFailedReportCharacteristics ReportCharacteristics,
+ cause Cause,
+ iE-Extensions ProtocolExtensionContainer { { MeasurementFailureCause-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+MeasurementFailureCause-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- Resource Status Failure
+--
+-- **************************************************************
+
+ResourceStatusFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ResourceStatusFailure-IEs}},
+ ...
+}
+
+ResourceStatusFailure-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-ENB2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional}|
+ { ID id-CompleteFailureCauseInformation-List CRITICALITY ignore TYPE CompleteFailureCauseInformation-List PRESENCE optional},
+ ...
+}
+
+CompleteFailureCauseInformation-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CompleteFailureCauseInformation-ItemIEs} }
+
+CompleteFailureCauseInformation-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CompleteFailureCauseInformation-Item CRITICALITY ignore TYPE CompleteFailureCauseInformation-Item PRESENCE mandatory}
+}
+
+CompleteFailureCauseInformation-Item ::= SEQUENCE {
+ cell-ID ECGI,
+ measurementFailureCause-List MeasurementFailureCause-List,
+ iE-Extensions ProtocolExtensionContainer { { CompleteFailureCauseInformation-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompleteFailureCauseInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- Resource Status Update
+--
+-- **************************************************************
+
+ResourceStatusUpdate ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ResourceStatusUpdate-IEs}},
+ ...
+}
+
+ResourceStatusUpdate-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-ENB2-Measurement-ID CRITICALITY reject TYPE Measurement-ID PRESENCE mandatory}|
+ { ID id-CellMeasurementResult CRITICALITY ignore TYPE CellMeasurementResult-List PRESENCE mandatory},
+ ...
+}
+
+CellMeasurementResult-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellMeasurementResult-ItemIEs} }
+
+CellMeasurementResult-ItemIEs X2AP-PROTOCOL-IES ::= {
+ { ID id-CellMeasurementResult-Item CRITICALITY ignore TYPE CellMeasurementResult-Item PRESENCE mandatory }
+}
+
+CellMeasurementResult-Item ::= SEQUENCE {
+ cell-ID ECGI,
+ hWLoadIndicator HWLoadIndicator OPTIONAL,
+ s1TNLLoadIndicator S1TNLLoadIndicator OPTIONAL,
+ radioResourceStatus RadioResourceStatus OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CellMeasurementResult-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CellMeasurementResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ { ID id-CompositeAvailableCapacityGroup CRITICALITY ignore EXTENSION CompositeAvailableCapacityGroup PRESENCE optional}|
+ { ID id-ABS-Status CRITICALITY ignore EXTENSION ABS-Status PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- PRIVATE MESSAGE
+--
+-- **************************************************************
+
+PrivateMessage ::= SEQUENCE {
+ privateIEs PrivateIE-Container {{PrivateMessage-IEs}},
+ ...
+}
+
+PrivateMessage-IEs X2AP-PRIVATE-IES ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- MOBILITY CHANGE REQUEST
+--
+-- **************************************************************
+
+MobilityChangeRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{MobilityChangeRequest-IEs}},
+ ...
+}
+
+MobilityChangeRequest-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }|
+ { ID id-ENB2-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }|
+ { ID id-ENB1-Mobility-Parameters CRITICALITY ignore TYPE MobilityParametersInformation PRESENCE optional }|
+ { ID id-ENB2-Proposed-Mobility-Parameters CRITICALITY reject TYPE MobilityParametersInformation PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- MOBILITY CHANGE ACKNOWLEDGE
+--
+-- **************************************************************
+
+MobilityChangeAcknowledge ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{MobilityChangeAcknowledge-IEs}},
+ ...
+}
+
+MobilityChangeAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }|
+ { ID id-ENB2-Cell-ID CRITICALITY reject TYPE ECGI PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+
+-- **************************************************************
+--
+-- MOBILITY CHANGE FAILURE
+--
+-- **************************************************************
+
+MobilityChangeFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{MobilityChangeFailure-IEs}},
+ ...
+}
+
+MobilityChangeFailure-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ENB1-Cell-ID CRITICALITY ignore TYPE ECGI PRESENCE mandatory }|
+ { ID id-ENB2-Cell-ID CRITICALITY ignore TYPE ECGI PRESENCE mandatory }|
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-ENB2-Mobility-Parameters-Modification-Range CRITICALITY ignore TYPE MobilityParametersModificationRange PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- Radio Link Failure Indication
+--
+-- **************************************************************
+
+RLFIndication ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{RLFIndication-IEs}},
+ ...
+}
+
+RLFIndication-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-FailureCellPCI CRITICALITY ignore TYPE PCI PRESENCE mandatory}|
+ { ID id-Re-establishmentCellECGI CRITICALITY ignore TYPE ECGI PRESENCE mandatory}|
+ { ID id-FailureCellCRNTI CRITICALITY ignore TYPE CRNTI PRESENCE mandatory}|
+ { ID id-ShortMAC-I CRITICALITY ignore TYPE ShortMAC-I PRESENCE optional}|
+ { ID id-UE-RLF-Report-Container CRITICALITY ignore TYPE UE-RLF-Report-Container PRESENCE optional}|
+ { ID id-RRCConnSetupIndicator CRITICALITY reject TYPE RRCConnSetupIndicator PRESENCE optional}|
+ { ID id-RRCConnReestabIndicator CRITICALITY ignore TYPE RRCConnReestabIndicator PRESENCE optional},
+ ...
+}
+
+
+-- **************************************************************
+--
+-- Cell Activation Request
+--
+-- **************************************************************
+
+CellActivationRequest ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{CellActivationRequest-IEs}},
+ ...
+}
+
+CellActivationRequest-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ServedCellsToActivate CRITICALITY reject TYPE ServedCellsToActivate PRESENCE mandatory },
+ ...
+}
+
+ServedCellsToActivate::= SEQUENCE (SIZE (1..maxCellineNB)) OF ServedCellsToActivate-Item
+
+ServedCellsToActivate-Item::= SEQUENCE {
+ ecgi ECGI,
+ iE-Extensions ProtocolExtensionContainer { { ServedCellsToActivate-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedCellsToActivate-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+-- **************************************************************
+--
+-- Cell Activation Response
+--
+-- **************************************************************
+
+CellActivationResponse ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{CellActivationResponse-IEs}},
+ ...
+}
+
+CellActivationResponse-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-ActivatedCellList CRITICALITY ignore TYPE ActivatedCellList PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+ActivatedCellList ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ActivatedCellList-Item
+
+ActivatedCellList-Item::= SEQUENCE {
+ ecgi ECGI,
+ iE-Extensions ProtocolExtensionContainer { { ActivatedCellList-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ActivatedCellList-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+--**************************************************************
+--
+-- CELL ACTIVATION FAILURE
+--
+-- **************************************************************
+
+CellActivationFailure ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{CellActivationFailure-IEs}},
+ ...
+}
+
+CellActivationFailure-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ ...
+}
+
+-- **************************************************************
+--
+-- X2 RELEASE
+--
+-- **************************************************************
+
+X2Release ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{X2Release-IEs}},
+ ...
+}
+
+X2Release-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-GlobalENB-ID CRITICALITY reject TYPE GlobalENB-ID PRESENCE mandatory},
+...
+}
+
+-- **************************************************************
+--
+-- X2 Message Transfer
+--
+-- **************************************************************
+
+X2MessageTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{X2MessageTransfer-IEs}},
+ ...
+}
+
+X2MessageTransfer-IEs X2AP-PROTOCOL-IES ::= {
+ { ID id-RNL-Header CRITICALITY reject TYPE RNL-Header PRESENCE mandatory}|
+ { ID id-x2APMessage CRITICALITY reject TYPE X2AP-Message PRESENCE optional},
+ ...
+}
+
+RNL-Header ::= SEQUENCE {
+ target-GlobalENB-ID GlobalENB-ID OPTIONAL,
+ source-GlobalENB-ID GlobalENB-ID,
+ iE-Extensions ProtocolExtensionContainer { { RNL-Header-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+RNL-Header-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+X2AP-Message ::= OCTET STRING
+
+END
diff --git a/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn b/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn
new file mode 100644
index 0000000000..189e45ad5a
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/X2AP-PDU-Descriptions.asn
@@ -0,0 +1,313 @@
+-- 3GPP TS 36.423 V12.2.0 (2014-06)
+-- 9.3.3 Elementary Procedure Definitions
+-- **************************************************************
+--
+-- Elementary Procedure definitions
+--
+-- **************************************************************
+
+ X2AP-PDU-Descriptions {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
+eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Descriptions (0) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+-- **************************************************************
+--
+-- IE parameter types from other modules.
+--
+-- **************************************************************
+
+IMPORTS
+ Criticality,
+ ProcedureCode
+FROM X2AP-CommonDataTypes
+
+
+ CellActivationRequest,
+ CellActivationResponse,
+ CellActivationFailure,
+ ENBConfigurationUpdate,
+ ENBConfigurationUpdateAcknowledge,
+ ENBConfigurationUpdateFailure,
+ ErrorIndication,
+ HandoverCancel,
+ HandoverReport,
+ HandoverPreparationFailure,
+ HandoverRequest,
+ HandoverRequestAcknowledge,
+ LoadInformation,
+ PrivateMessage,
+ ResetRequest,
+ ResetResponse,
+ ResourceStatusFailure,
+ ResourceStatusRequest,
+ ResourceStatusResponse,
+ ResourceStatusUpdate,
+ RLFIndication,
+ SNStatusTransfer,
+ UEContextRelease,
+ X2SetupFailure,
+ X2SetupRequest,
+ X2SetupResponse,
+ MobilityChangeRequest,
+ MobilityChangeAcknowledge,
+ MobilityChangeFailure,
+ X2Release,
+ X2MessageTransfer
+
+
+
+FROM X2AP-PDU-Contents
+
+ id-cellActivation,
+ id-eNBConfigurationUpdate,
+ id-errorIndication,
+ id-handoverCancel,
+ id-handoverReport,
+ id-handoverPreparation,
+
+ id-loadIndication,
+ id-privateMessage,
+ id-reset,
+
+ id-resourceStatusReporting,
+ id-resourceStatusReportingInitiation,
+ id-rLFIndication,
+ id-snStatusTransfer,
+ id-uEContextRelease,
+ id-x2Setup,
+ id-mobilitySettingsChange,
+ id-x2Release,
+ id-x2MessageTransfer
+
+
+
+
+FROM X2AP-Constants;
+
+-- **************************************************************
+--
+-- Interface Elementary Procedure Class
+--
+-- **************************************************************
+
+X2AP-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
+--
+-- **************************************************************
+
+X2AP-PDU ::= CHOICE {
+ initiatingMessage InitiatingMessage,
+ successfulOutcome SuccessfulOutcome,
+ unsuccessfulOutcome UnsuccessfulOutcome,
+ ...
+}
+
+InitiatingMessage ::= SEQUENCE {
+ procedureCode X2AP-ELEMENTARY-PROCEDURE.&procedureCode ({X2AP-ELEMENTARY-PROCEDURES}),
+ criticality X2AP-ELEMENTARY-PROCEDURE.&criticality ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value X2AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+}
+
+SuccessfulOutcome ::= SEQUENCE {
+ procedureCode X2AP-ELEMENTARY-PROCEDURE.&procedureCode ({X2AP-ELEMENTARY-PROCEDURES}),
+ criticality X2AP-ELEMENTARY-PROCEDURE.&criticality ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value X2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+}
+
+UnsuccessfulOutcome ::= SEQUENCE {
+ procedureCode X2AP-ELEMENTARY-PROCEDURE.&procedureCode ({X2AP-ELEMENTARY-PROCEDURES}),
+ criticality X2AP-ELEMENTARY-PROCEDURE.&criticality ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ value X2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
+}
+
+
+-- **************************************************************
+--
+-- Interface Elementary Procedure List
+--
+-- **************************************************************
+
+X2AP-ELEMENTARY-PROCEDURES X2AP-ELEMENTARY-PROCEDURE ::= {
+ X2AP-ELEMENTARY-PROCEDURES-CLASS-1 |
+ X2AP-ELEMENTARY-PROCEDURES-CLASS-2 ,
+ ...
+}
+
+X2AP-ELEMENTARY-PROCEDURES-CLASS-1 X2AP-ELEMENTARY-PROCEDURE ::= {
+ handoverPreparation |
+ reset |
+ x2Setup |
+ resourceStatusReportingInitiation |
+ eNBConfigurationUpdate |
+ mobilitySettingsChange |
+ cellActivation ,
+ ...
+}
+
+X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= {
+ snStatusTransfer |
+ uEContextRelease |
+ handoverCancel |
+ errorIndication |
+ resourceStatusReporting |
+ loadIndication |
+ privateMessage |
+ rLFIndication |
+ handoverReport |
+ x2Release |
+ x2MessageTransfer,
+ ...
+
+}
+
+
+-- **************************************************************
+--
+-- Interface Elementary Procedures
+--
+-- **************************************************************
+
+handoverPreparation X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverRequest
+ SUCCESSFUL OUTCOME HandoverRequestAcknowledge
+ UNSUCCESSFUL OUTCOME HandoverPreparationFailure
+ PROCEDURE CODE id-handoverPreparation
+ CRITICALITY reject
+}
+
+snStatusTransfer X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE SNStatusTransfer
+ PROCEDURE CODE id-snStatusTransfer
+ CRITICALITY ignore
+}
+
+uEContextRelease X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE UEContextRelease
+ PROCEDURE CODE id-uEContextRelease
+ CRITICALITY ignore
+}
+
+
+handoverCancel X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverCancel
+ PROCEDURE CODE id-handoverCancel
+ CRITICALITY ignore
+}
+
+handoverReport X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE HandoverReport
+ PROCEDURE CODE id-handoverReport
+ CRITICALITY ignore
+}
+
+errorIndication X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ErrorIndication
+ PROCEDURE CODE id-errorIndication
+ CRITICALITY ignore
+}
+
+reset X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ResetRequest
+ SUCCESSFUL OUTCOME ResetResponse
+ PROCEDURE CODE id-reset
+ CRITICALITY reject
+}
+
+x2Setup X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE X2SetupRequest
+ SUCCESSFUL OUTCOME X2SetupResponse
+ UNSUCCESSFUL OUTCOME X2SetupFailure
+ PROCEDURE CODE id-x2Setup
+ CRITICALITY reject
+}
+
+
+loadIndication X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE LoadInformation
+ PROCEDURE CODE id-loadIndication
+ CRITICALITY ignore
+}
+
+eNBConfigurationUpdate X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBConfigurationUpdate
+ SUCCESSFUL OUTCOME ENBConfigurationUpdateAcknowledge
+ UNSUCCESSFUL OUTCOME ENBConfigurationUpdateFailure
+ PROCEDURE CODE id-eNBConfigurationUpdate
+ CRITICALITY reject
+}
+
+resourceStatusReportingInitiation X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ResourceStatusRequest
+ SUCCESSFUL OUTCOME ResourceStatusResponse
+ UNSUCCESSFUL OUTCOME ResourceStatusFailure
+ PROCEDURE CODE id-resourceStatusReportingInitiation
+ CRITICALITY reject
+}
+
+resourceStatusReporting X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ResourceStatusUpdate
+ PROCEDURE CODE id-resourceStatusReporting
+ CRITICALITY ignore
+}
+
+rLFIndication X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE RLFIndication
+ PROCEDURE CODE id-rLFIndication
+ CRITICALITY ignore
+}
+
+privateMessage X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE PrivateMessage
+ PROCEDURE CODE id-privateMessage
+ CRITICALITY ignore
+}
+
+mobilitySettingsChange X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MobilityChangeRequest
+ SUCCESSFUL OUTCOME MobilityChangeAcknowledge
+ UNSUCCESSFUL OUTCOME MobilityChangeFailure
+ PROCEDURE CODE id-mobilitySettingsChange
+ CRITICALITY reject
+}
+
+cellActivation X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE CellActivationRequest
+ SUCCESSFUL OUTCOME CellActivationResponse
+ UNSUCCESSFUL OUTCOME CellActivationFailure
+ PROCEDURE CODE id-cellActivation
+ CRITICALITY reject
+}
+
+x2Release X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE X2Release
+ PROCEDURE CODE id-x2Release
+ CRITICALITY reject
+}
+
+x2MessageTransfer X2AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE X2MessageTransfer
+ PROCEDURE CODE id-x2MessageTransfer
+ CRITICALITY reject
+}
+
+END
diff --git a/epan/dissectors/asn1/x2ap/packet-x2ap-template.c b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c
new file mode 100644
index 0000000000..e6c7984515
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/packet-x2ap-template.c
@@ -0,0 +1,212 @@
+/* packet-x2ap.c
+ * Routines for dissecting Evolved Universal Terrestrial Radio Access Network (EUTRAN);
+ * X2 Application Protocol (X2AP);
+ * 3GPP TS 36.423 packet dissection
+ * Copyright 2007-2010, Anders Broman <anders.broman@ericsson.com>
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Ref:
+ * 3GPP TS 36.423 V9.2.0 (2010-03)
+ */
+
+#include "config.h"
+
+#include <epan/packet.h>
+
+#include <epan/asn1.h>
+#include <epan/prefs.h>
+#include <epan/sctpppids.h>
+
+#include "packet-per.h"
+#include "packet-e212.h"
+#include "packet-lte-rrc.h"
+
+#ifdef _MSC_VER
+/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */
+#pragma warning(disable:4146)
+#endif
+
+#define PNAME "EUTRAN X2 Application Protocol (X2AP)"
+#define PSNAME "X2AP"
+#define PFNAME "x2ap"
+
+void proto_register_x2ap(void);
+
+/* Dissector will use SCTP PPID 27 or SCTP port. IANA assigned port = 36422 */
+#define SCTP_PORT_X2AP 36422
+
+#include "packet-x2ap-val.h"
+
+/* Initialize the protocol and registered fields */
+static int proto_x2ap = -1;
+static int hf_x2ap_transportLayerAddressIPv4 = -1;
+static int hf_x2ap_transportLayerAddressIPv6 = -1;
+#include "packet-x2ap-hf.c"
+
+/* Initialize the subtree pointers */
+static int ett_x2ap = -1;
+static int ett_x2ap_TransportLayerAddress = -1;
+#include "packet-x2ap-ett.c"
+
+/* Global variables */
+static guint32 ProcedureCode;
+static guint32 ProtocolIE_ID;
+static guint gbl_x2apSctpPort=SCTP_PORT_X2AP;
+
+/* Dissector tables */
+static dissector_table_t x2ap_ies_dissector_table;
+static dissector_table_t x2ap_extension_dissector_table;
+static dissector_table_t x2ap_proc_imsg_dissector_table;
+static dissector_table_t x2ap_proc_sout_dissector_table;
+static dissector_table_t x2ap_proc_uout_dissector_table;
+
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+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 *);
+void proto_reg_handoff_x2ap(void);
+
+#include "packet-x2ap-fn.c"
+
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ return (dissector_try_uint(x2ap_ies_dissector_table, ProtocolIE_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_)
+{
+ return (dissector_try_uint(x2ap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ return (dissector_try_uint(x2ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ return (dissector_try_uint(x2ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
+ return (dissector_try_uint(x2ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_captured_length(tvb) : 0;
+}
+
+static int
+dissect_x2ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
+{
+ proto_item *x2ap_item = NULL;
+ proto_tree *x2ap_tree = NULL;
+
+ /* make entry in the Protocol column on summary display */
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "X2AP");
+
+ /* create the x2ap protocol tree */
+ x2ap_item = proto_tree_add_item(tree, proto_x2ap, tvb, 0, -1, ENC_NA);
+ x2ap_tree = proto_item_add_subtree(x2ap_item, ett_x2ap);
+
+ return dissect_X2AP_PDU_PDU(tvb, pinfo, x2ap_tree, data);
+}
+
+/*--- proto_register_x2ap -------------------------------------------*/
+void proto_register_x2ap(void) {
+
+ /* List of fields */
+
+ static hf_register_info hf[] = {
+ { &hf_x2ap_transportLayerAddressIPv4,
+ { "transportLayerAddress(IPv4)", "x2ap.transportLayerAddressIPv4",
+ FT_IPv4, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_x2ap_transportLayerAddressIPv6,
+ { "transportLayerAddress(IPv6)", "x2ap.transportLayerAddressIPv6",
+ FT_IPv6, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+
+#include "packet-x2ap-hfarr.c"
+ };
+
+ /* List of subtrees */
+ static gint *ett[] = {
+ &ett_x2ap,
+ &ett_x2ap_TransportLayerAddress,
+#include "packet-x2ap-ettarr.c"
+ };
+
+ module_t *x2ap_module;
+
+ /* Register protocol */
+ proto_x2ap = proto_register_protocol(PNAME, PSNAME, PFNAME);
+ /* Register fields and subtrees */
+ proto_register_field_array(proto_x2ap, hf, array_length(hf));
+ proto_register_subtree_array(ett, array_length(ett));
+
+ /* Register dissector */
+ register_dissector("x2ap", dissect_x2ap, proto_x2ap);
+
+ /* Register dissector tables */
+ x2ap_ies_dissector_table = register_dissector_table("x2ap.ies", "X2AP-PROTOCOL-IES", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE);
+ x2ap_extension_dissector_table = register_dissector_table("x2ap.extension", "X2AP-PROTOCOL-EXTENSION", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE);
+ x2ap_proc_imsg_dissector_table = register_dissector_table("x2ap.proc.imsg", "X2AP-ELEMENTARY-PROCEDURE InitiatingMessage", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE);
+ x2ap_proc_sout_dissector_table = register_dissector_table("x2ap.proc.sout", "X2AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE);
+ x2ap_proc_uout_dissector_table = register_dissector_table("x2ap.proc.uout", "X2AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", FT_UINT32, BASE_DEC, DISSECTOR_TABLE_ALLOW_DUPLICATE);
+
+ /* Register configuration options for ports */
+ x2ap_module = prefs_register_protocol(proto_x2ap, proto_reg_handoff_x2ap);
+
+ prefs_register_uint_preference(x2ap_module, "sctp.port",
+ "X2AP SCTP Port",
+ "Set the SCTP port for X2AP messages",
+ 10,
+ &gbl_x2apSctpPort);
+
+}
+
+
+/*--- proto_reg_handoff_x2ap ---------------------------------------*/
+void
+proto_reg_handoff_x2ap(void)
+{
+ dissector_handle_t x2ap_handle;
+ static gboolean Initialized=FALSE;
+ static guint SctpPort;
+
+ x2ap_handle = find_dissector("x2ap");
+ if (!Initialized) {
+ dissector_add_for_decode_as("sctp.port", x2ap_handle);
+ dissector_add_uint("sctp.ppi", X2AP_PAYLOAD_PROTOCOL_ID, x2ap_handle);
+ Initialized=TRUE;
+#include "packet-x2ap-dis-tab.c"
+ } else {
+ if (SctpPort != 0) {
+ dissector_delete_uint("sctp.port", SctpPort, x2ap_handle);
+ }
+ }
+
+ SctpPort=gbl_x2apSctpPort;
+ if (SctpPort != 0) {
+ dissector_add_uint("sctp.port", SctpPort, x2ap_handle);
+ }
+
+}
+
+
diff --git a/epan/dissectors/asn1/x2ap/x2ap.cnf b/epan/dissectors/asn1/x2ap/x2ap.cnf
new file mode 100644
index 0000000000..6fe4b74535
--- /dev/null
+++ b/epan/dissectors/asn1/x2ap/x2ap.cnf
@@ -0,0 +1,424 @@
+# x2ap.cnf
+# x2ap conformation file
+# Copyright 2007 Anders Broman
+
+#.OPT
+PER
+ALIGNED
+#.END
+
+#.OMIT_ASSIGNMENT
+# Get rid of unused code warnings
+#.END
+
+#.PDU
+X2AP-PDU
+
+#.MAKE_ENUM
+ProtocolIE-ID
+ProcedureCode
+
+#.TYPE_RENAME
+
+ProtocolIE-Field/value ProtocolIE_Field_value
+PrivateIE-Field/value PrivateIE_Field_value
+InitiatingMessage/value InitiatingMessage_value
+SuccessfulOutcome/value SuccessfulOutcome_value
+UnsuccessfulOutcome/value UnsuccessfulOutcome_value
+
+
+#.FIELD_RENAME
+ProtocolExtensionField/id extension_id
+PrivateIE-Field/id private_id
+InitiatingMessage/value initiatingMessage_value
+
+ProtocolIE-Field/value protocolIE_Field_value
+SuccessfulOutcome/value successfulOutcome_value
+PrivateIE-Field/value privateIE_Field_value
+
+#.OMIT_ASSIGNMENT
+Presence
+ProtocolIE-FieldPair
+ProtocolIE-ContainerList
+ProtocolIE-ContainerPair
+ProtocolIE-ContainerPairList
+#.END
+
+#.FN_PARS ProtocolIE-ID VAL_PTR = &ProtocolIE_ID
+#.FN_FTR ProtocolIE-ID
+ if (tree) {
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(x2ap_ProtocolIE_ID_vals), "unknown (%d)"));
+ }
+#.END
+
+#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
+
+#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
+
+#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
+#.FN_FTR ProcedureCode
+ col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
+ val_to_str(ProcedureCode, x2ap_ProcedureCode_vals,
+ "unknown message"));
+#.END
+
+#.FN_HDR ProcedureCode
+ ProcedureCode = 0xFFFF;
+#.END
+
+
+#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
+
+#.FN_PARS SuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_SuccessfulOutcomeValue
+
+#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
+
+#.FN_BODY PLMN-Identity VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+
+%(DEFAULT_BODY)s
+
+ if(tvb_reported_length(tvb)==0)
+ return offset;
+
+ if (!parameter_tvb)
+ return offset;
+ dissect_e212_mcc_mnc(parameter_tvb, actx->pinfo, tree, 0, E212_NONE, FALSE);
+#.END
+
+#.FN_BODY TargeteNBtoSource-eNBTransparentContainer VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+ dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+
+#.TYPE_ATTR
+ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(x2ap_ProtocolIE_ID_vals)
+#.END
+
+#.FN_BODY TransportLayerAddress VAL_PTR = &parameter_tvb
+# For details on the Transport Layer Address, see
+# ref. [8], [19]
+# [8] 3GPP TS 36.424: "Evolved Universal Terrestrial Radio Access Network (E-UTRAN); X2 data transport".
+# [19] 3GPP TS 36.414: "Evolved Universal Terrestrial Radio Access Network (E-UTRAN); S1 data transport".
+ tvbuff_t *parameter_tvb=NULL;
+ proto_tree *subtree;
+ gint tvb_len;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+ /* Get the length */
+ tvb_len = tvb_reported_length(parameter_tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_x2ap_TransportLayerAddress);
+ if (tvb_len==4){
+ /* IPv4 */
+ proto_tree_add_item(subtree, hf_x2ap_transportLayerAddressIPv4, parameter_tvb, 0, tvb_len, ENC_BIG_ENDIAN);
+ }
+ if (tvb_len==16){
+ /* IPv6 */
+ proto_tree_add_item(subtree, hf_x2ap_transportLayerAddressIPv6, parameter_tvb, 0, tvb_len, ENC_NA);
+ }
+
+#.FN_BODY RRC-Context VAL_PTR = &parameter_tvb
+# Includes the RRC Handover Preparation Information message as defined in
+# subclause 10.2.2 of [9].
+# [9] 3GPP TS 36.331: "Evolved Universal Terrestrial Radio Access (E-UTRAN); Radio Resource
+# Control (RRC) Protocol Specification".
+ tvbuff_t *parameter_tvb=NULL;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+ dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, tree, NULL);
+
+#.ASSIGN_VALUE_TO_TYPE # X2AP does not have constants assigned to types, they are pure INTEGER
+# ProcedureCode
+
+id-handoverPreparation ProcedureCode
+id-handoverCancel ProcedureCode
+id-loadIndication ProcedureCode
+id-errorIndication ProcedureCode
+id-snStatusTransfer ProcedureCode
+id-uEContextRelease ProcedureCode
+id-x2Setup ProcedureCode
+id-reset ProcedureCode
+id-eNBConfigurationUpdate ProcedureCode
+id-resourceStatusReportingInitiation ProcedureCode
+id-resourceStatusReporting ProcedureCode
+id-privateMessage ProcedureCode
+id-mobilitySettingsChange ProcedureCode
+id-rLFIndication ProcedureCode
+id-handoverReport ProcedureCode
+id-cellActivation ProcedureCode
+id-x2Release ProcedureCode
+id-x2MessageTransfer ProcedureCode
+
+
+# ProtocolIE-ID
+
+id-E-RABs-Admitted-Item ProtocolIE-ID
+id-E-RABs-Admitted-List ProtocolIE-ID
+id-E-RAB-Item ProtocolIE-ID
+id-E-RABs-NotAdmitted-List ProtocolIE-ID
+id-E-RABs-ToBeSetup-Item ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-CellInformation ProtocolIE-ID
+id-CellInformation-Item ProtocolIE-ID
+id-New-eNB-UE-X2AP-ID ProtocolIE-ID
+id-Old-eNB-UE-X2AP-ID ProtocolIE-ID
+id-TargetCell-ID ProtocolIE-ID
+id-TargeteNBtoSource-eNBTransparentContainer ProtocolIE-ID
+id-TraceActivation ProtocolIE-ID
+id-UE-ContextInformation ProtocolIE-ID
+id-UE-HistoryInformation ProtocolIE-ID
+id-UE-X2AP-ID ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-E-RABs-SubjectToStatusTransfer-List ProtocolIE-ID
+id-E-RABs-SubjectToStatusTransfer-Item ProtocolIE-ID
+id-ServedCells ProtocolIE-ID
+id-GlobalENB-ID ProtocolIE-ID
+id-TimeToWait ProtocolIE-ID
+id-GUMMEI-ID ProtocolIE-ID
+id-GUGroupIDList ProtocolIE-ID
+id-ServedCellsToAdd ProtocolIE-ID
+id-ServedCellsToModify ProtocolIE-ID
+id-ServedCellsToDelete ProtocolIE-ID
+id-Registration-Request ProtocolIE-ID
+id-CellToReport ProtocolIE-ID
+id-ReportingPeriodicity ProtocolIE-ID
+id-CellToReport-Item ProtocolIE-ID
+id-CellMeasurementResult ProtocolIE-ID
+id-CellMeasurementResult-Item ProtocolIE-ID
+id-GUGroupIDToAddList ProtocolIE-ID
+id-GUGroupIDToDeleteList ProtocolIE-ID
+id-SRVCCOperationPossible ProtocolIE-ID
+id-Measurement-ID ProtocolIE-ID
+id-ReportCharacteristics ProtocolIE-ID
+id-ENB1-Measurement-ID ProtocolIE-ID
+id-ENB2-Measurement-ID ProtocolIE-ID
+id-Number-of-Antennaports ProtocolIE-ID
+id-CompositeAvailableCapacityGroup ProtocolIE-ID
+id-ENB1-Cell-ID ProtocolIE-ID
+id-ENB2-Cell-ID ProtocolIE-ID
+id-ENB2-Proposed-Mobility-Parameters ProtocolIE-ID
+id-ENB1-Mobility-Parameters ProtocolIE-ID
+id-ENB2-Mobility-Parameters-Modification-Range ProtocolIE-ID
+id-FailureCellPCI ProtocolIE-ID
+id-Re-establishmentCellECGI ProtocolIE-ID
+id-FailureCellCRNTI ProtocolIE-ID
+id-ShortMAC-I ProtocolIE-ID
+id-SourceCellECGI ProtocolIE-ID
+id-FailureCellECGI ProtocolIE-ID
+id-HandoverReportType ProtocolIE-ID
+id-PRACH-Configuration ProtocolIE-ID
+id-MBSFN-Subframe-Info ProtocolIE-ID
+id-ServedCellsToActivate ProtocolIE-ID
+id-ActivatedCellList ProtocolIE-ID
+id-DeactivationIndication ProtocolIE-ID
+id-UE-RLF-Report-Container ProtocolIE-ID
+id-ABSInformation ProtocolIE-ID
+id-InvokeIndication ProtocolIE-ID
+id-ABS-Status ProtocolIE-ID
+id-PartialSuccessIndicator ProtocolIE-ID
+id-MeasurementInitiationResult-List ProtocolIE-ID
+id-MeasurementInitiationResult-Item ProtocolIE-ID
+id-MeasurementFailureCause-Item ProtocolIE-ID
+id-CompleteFailureCauseInformation-List ProtocolIE-ID
+id-CompleteFailureCauseInformation-Item ProtocolIE-ID
+id-CSG-Id ProtocolIE-ID
+id-CSGMembershipStatus ProtocolIE-ID
+id-MDTConfiguration ProtocolIE-ID
+id-ManagementBasedMDTallowed ProtocolIE-ID
+id-RRCConnSetupIndicator ProtocolIE-ID
+id-NeighbourTAC ProtocolIE-ID
+id-Time-UE-StayedInCell-EnhancedGranularity ProtocolIE-ID
+id-RRCConnReestabIndicator ProtocolIE-ID
+id-MBMS-Service-Area-List ProtocolIE-ID
+id-HO-cause ProtocolIE-ID
+id-TargetCellInUTRAN ProtocolIE-ID
+id-MobilityInformation ProtocolIE-ID
+id-SourceCellCRNTI ProtocolIE-ID
+id-MultibandInfoList ProtocolIE-ID
+id-M3Configuration ProtocolIE-ID
+id-M4Configuration ProtocolIE-ID
+id-M5Configuration ProtocolIE-ID
+id-MDT-Location-Info ProtocolIE-ID
+id-ManagementBasedMDTPLMNList ProtocolIE-ID
+id-SignallingBasedMDTPLMNList ProtocolIE-ID
+id-ReceiveStatusOfULPDCPSDUsExtended ProtocolIE-ID
+id-ULCOUNTValueExtended ProtocolIE-ID
+id-DLCOUNTValueExtended ProtocolIE-ID
+id-eARFCNExtension ProtocolIE-ID
+id-UL-EARFCNExtension ProtocolIE-ID
+id-DL-EARFCNExtension ProtocolIE-ID
+id-AdditionalSpecialSubframe-Info ProtocolIE-ID
+id-Masked-IMEISV ProtocolIE-ID
+id-IntendedULDLConfiguration ProtocolIE-ID
+id-ExtendedULInterferenceOverloadInfo ProtocolIE-ID
+id-RNL-Header ProtocolIE-ID
+id-x2APMessage ProtocolIE-ID
+
+#.REGISTER
+
+#X2AP-PROTOCOL-IES
+E-RABs-Admitted-Item N x2ap.ies id-E-RABs-Admitted-Item
+E-RABs-Admitted-List N x2ap.ies id-E-RABs-Admitted-List
+E-RAB-Item N x2ap.ies id-E-RAB-Item
+E-RAB-List N x2ap.ies id-E-RABs-NotAdmitted-List
+E-RABs-ToBeSetup-Item N x2ap.ies id-E-RABs-ToBeSetup-Item
+Cause N x2ap.ies id-Cause
+CellInformation-List N x2ap.ies id-CellInformation
+CellInformation-Item N x2ap.ies id-CellInformation-Item
+UE-X2AP-ID N x2ap.ies id-New-eNB-UE-X2AP-ID
+UE-X2AP-ID N x2ap.ies id-Old-eNB-UE-X2AP-ID
+ECGI N x2ap.ies id-TargetCell-ID
+TargeteNBtoSource-eNBTransparentContainer N x2ap.ies id-TargeteNBtoSource-eNBTransparentContainer
+TraceActivation N x2ap.ies id-TraceActivation
+UE-ContextInformation N x2ap.ies id-UE-ContextInformation
+UE-HistoryInformation N x2ap.ies id-UE-HistoryInformation
+UE-X2AP-ID N x2ap.ies id-UE-X2AP-ID
+CriticalityDiagnostics N x2ap.ies id-CriticalityDiagnostics
+E-RABs-SubjectToStatusTransfer-List N x2ap.ies id-E-RABs-SubjectToStatusTransfer-List
+E-RABs-SubjectToStatusTransfer-Item N x2ap.ies id-E-RABs-SubjectToStatusTransfer-Item
+ServedCells N x2ap.ies id-ServedCells
+GlobalENB-ID N x2ap.ies id-GlobalENB-ID
+TimeToWait N x2ap.ies id-TimeToWait
+GUMMEI N x2ap.ies id-GUMMEI-ID
+GUGroupIDList N x2ap.ies id-GUGroupIDList
+ServedCells N x2ap.ies id-ServedCellsToAdd
+ServedCellsToModify N x2ap.ies id-ServedCellsToModify
+Old-ECGIs N x2ap.ies id-ServedCellsToDelete
+Registration-Request N x2ap.ies id-Registration-Request
+CellToReport-List N x2ap.ies id-CellToReport
+ReportingPeriodicity N x2ap.ies id-ReportingPeriodicity
+CellToReport-Item N x2ap.ies id-CellToReport-Item
+CellMeasurementResult-List N x2ap.ies id-CellMeasurementResult
+CellMeasurementResult-Item N x2ap.ies id-CellMeasurementResult-Item
+GUGroupIDList N x2ap.ies id-GUGroupIDToAddList
+GUGroupIDList N x2ap.ies id-GUGroupIDToDeleteList
+SRVCCOperationPossible N x2ap.ies id-SRVCCOperationPossible
+# N x2ap.ies id-Measurement-ID
+ReportCharacteristics N x2ap.ies id-ReportCharacteristics
+Measurement-ID N x2ap.ies id-ENB1-Measurement-ID
+Measurement-ID N x2ap.ies id-ENB2-Measurement-ID
+ECGI N x2ap.ies id-ENB1-Cell-ID
+ECGI N x2ap.ies id-ENB2-Cell-ID
+MobilityParametersInformation N x2ap.ies id-ENB2-Proposed-Mobility-Parameters
+MobilityParametersInformation N x2ap.ies id-ENB1-Mobility-Parameters
+MobilityParametersModificationRange N x2ap.ies id-ENB2-Mobility-Parameters-Modification-Range
+PCI N x2ap.ies id-FailureCellPCI
+ECGI N x2ap.ies id-Re-establishmentCellECGI
+CRNTI N x2ap.ies id-FailureCellCRNTI
+ShortMAC-I N x2ap.ies id-ShortMAC-I
+ECGI N x2ap.ies id-SourceCellECGI
+ECGI N x2ap.ies id-FailureCellECGI
+HandoverReportType N x2ap.ies id-HandoverReportType
+UE-RLF-Report-Container N x2ap.ies id-UE-RLF-Report-Container
+ServedCellsToActivate N x2ap.ies id-ServedCellsToActivate
+ActivatedCellList N x2ap.ies id-ActivatedCellList
+PartialSuccessIndicator N x2ap.ies id-PartialSuccessIndicator
+MeasurementInitiationResult-List N x2ap.ies id-MeasurementInitiationResult-List
+MeasurementInitiationResult-Item N x2ap.ies id-MeasurementInitiationResult-Item
+MeasurementFailureCause-Item N x2ap.ies id-MeasurementFailureCause-Item
+CompleteFailureCauseInformation-List N x2ap.ies id-CompleteFailureCauseInformation-List
+CompleteFailureCauseInformation-Item N x2ap.ies id-CompleteFailureCauseInformation-Item
+CSGMembershipStatus N x2ap.ies id-CSGMembershipStatus
+RRCConnSetupIndicator N x2ap.ies id-RRCConnSetupIndicator
+RRCConnReestabIndicator N x2ap.ies id-RRCConnReestabIndicator
+TargetCellInUTRAN N x2ap.ies id-TargetCellInUTRAN
+MobilityInformation N x2ap.ies id-MobilityInformation
+CRNTI N x2ap.ies id-SourceCellCRNTI
+Masked-IMEISV N x2ap.ies id-Masked-IMEISV
+RNL-Header N x2ap.ies id-RNL-Header
+X2AP-Message N x2ap.ies id-x2APMessage
+
+#X2AP-PROTOCOL-EXTENSION
+Number-of-Antennaports N x2ap.extension id-Number-of-Antennaports
+CompositeAvailableCapacityGroup N x2ap.extension id-CompositeAvailableCapacityGroup
+PRACH-Configuration N x2ap.extension id-PRACH-Configuration
+MBSFN-Subframe-Infolist N x2ap.extension id-MBSFN-Subframe-Info
+DeactivationIndication N x2ap.extension id-DeactivationIndication
+
+ABSInformation N x2ap.extension id-ABSInformation
+InvokeIndication N x2ap.extension id-InvokeIndication
+ABS-Status N x2ap.extension id-ABS-Status
+CSG-Id N x2ap.extension id-CSG-Id
+MDT-Configuration N x2ap.extension id-MDTConfiguration
+ManagementBasedMDTallowed N x2ap.extension id-ManagementBasedMDTallowed
+TAC N x2ap.extension id-NeighbourTAC
+Time-UE-StayedInCell-EnhancedGranularity N x2ap.extension id-Time-UE-StayedInCell-EnhancedGranularity
+MBMS-Service-Area-Identity-List N x2ap.extension id-MBMS-Service-Area-List
+Cause N x2ap.extension id-HO-cause
+MultibandInfoList N x2ap.extension id-MultibandInfoList
+M3Configuration N x2ap.extension id-M3Configuration
+M4Configuration N x2ap.extension id-M4Configuration
+M5Configuration N x2ap.extension id-M5Configuration
+MDT-Location-Info N x2ap.extension id-MDT-Location-Info
+MDTPLMNList N x2ap.extension id-ManagementBasedMDTPLMNList
+MDTPLMNList N x2ap.extension id-SignallingBasedMDTPLMNList
+ReceiveStatusOfULPDCPSDUsExtended N x2ap.extension id-ReceiveStatusOfULPDCPSDUsExtended
+COUNTValueExtended N x2ap.extension id-ULCOUNTValueExtended
+COUNTValueExtended N x2ap.extension id-DLCOUNTValueExtended
+EARFCNExtension N x2ap.extension id-eARFCNExtension
+EARFCNExtension N x2ap.extension id-UL-EARFCNExtension
+EARFCNExtension N x2ap.extension id-DL-EARFCNExtension
+AdditionalSpecialSubframe-Info N x2ap.extension id-AdditionalSpecialSubframe-Info
+SubframeAssignment N x2ap.extension id-IntendedULDLConfiguration
+ExtendedULInterferenceOverloadInfo N x2ap.extension id-ExtendedULInterferenceOverloadInfo
+
+# X2AP-PDU-Descriptions.asn Interface Elementary Procedures
+#X2AP-ELEMENTARY-PROCEDURE
+HandoverRequest N x2ap.proc.imsg id-handoverPreparation
+HandoverRequestAcknowledge N x2ap.proc.sout id-handoverPreparation
+HandoverPreparationFailure N x2ap.proc.uout id-handoverPreparation
+
+SNStatusTransfer N x2ap.proc.imsg id-snStatusTransfer
+
+UEContextRelease N x2ap.proc.imsg id-uEContextRelease
+
+HandoverCancel N x2ap.proc.imsg id-handoverCancel
+
+ErrorIndication N x2ap.proc.imsg id-errorIndication
+
+ResetRequest N x2ap.proc.imsg id-reset
+ResetResponse N x2ap.proc.sout id-reset
+
+X2SetupRequest N x2ap.proc.imsg id-x2Setup
+X2SetupResponse N x2ap.proc.sout id-x2Setup
+X2SetupFailure N x2ap.proc.uout id-x2Setup
+
+LoadInformation N x2ap.proc.imsg id-loadIndication
+
+ENBConfigurationUpdate N x2ap.proc.imsg id-eNBConfigurationUpdate
+ENBConfigurationUpdateAcknowledge N x2ap.proc.sout id-eNBConfigurationUpdate
+ENBConfigurationUpdateFailure N x2ap.proc.uout id-eNBConfigurationUpdate
+
+ResourceStatusRequest N x2ap.proc.imsg id-resourceStatusReportingInitiation
+ResourceStatusResponse N x2ap.proc.sout id-resourceStatusReportingInitiation
+ResourceStatusFailure N x2ap.proc.uout id-resourceStatusReportingInitiation
+
+ResourceStatusUpdate N x2ap.proc.imsg id-resourceStatusReporting
+
+PrivateMessage N x2ap.proc.imsg id-privateMessage
+
+HandoverReport N x2ap.proc.imsg id-handoverReport
+
+RLFIndication N x2ap.proc.imsg id-rLFIndication
+
+MobilityChangeRequest N x2ap.proc.imsg id-mobilitySettingsChange
+MobilityChangeAcknowledge N x2ap.proc.sout id-mobilitySettingsChange
+MobilityChangeFailure N x2ap.proc.uout id-mobilitySettingsChange
+
+CellActivationRequest N x2ap.proc.imsg id-cellActivation
+CellActivationResponse N x2ap.proc.sout id-cellActivation
+CellActivationFailure N x2ap.proc.uout id-cellActivation
+
+X2Release N x2ap.proc.imsg id-x2Release
+
+X2MessageTransfer N x2ap.proc.imsg id-x2MessageTransfer
+
+#.END