aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2009-03-23 17:31:50 +0000
committerAnders Broman <anders.broman@ericsson.com>2009-03-23 17:31:50 +0000
commitc84056b66dc4d448d1bccc81e83e0d72dbf9b98c (patch)
tree5d53fe73365fef1882c040d05e77c088e4f45166
parentaa4ddb790daa215564a03369764bf274dc589cb3 (diff)
Update to the 200903 release.
svn path=/trunk/; revision=27832
-rw-r--r--asn1/s1ap/S1AP-CommonDataTypes.asn3
-rw-r--r--asn1/s1ap/S1AP-Constants.asn35
-rw-r--r--asn1/s1ap/S1AP-Containers.asn3
-rw-r--r--asn1/s1ap/S1AP-IEs.asn318
-rw-r--r--asn1/s1ap/S1AP-PDU-Contents.asn360
-rw-r--r--asn1/s1ap/S1AP-PDU-Descriptions.asn58
-rw-r--r--asn1/s1ap/packet-s1ap-template.c12
-rw-r--r--asn1/s1ap/s1ap.cnf60
-rw-r--r--epan/dissectors/packet-s1ap.c1156
9 files changed, 1492 insertions, 513 deletions
diff --git a/asn1/s1ap/S1AP-CommonDataTypes.asn b/asn1/s1ap/S1AP-CommonDataTypes.asn
index 72ddceea17..ce9b6d7cce 100644
--- a/asn1/s1ap/S1AP-CommonDataTypes.asn
+++ b/asn1/s1ap/S1AP-CommonDataTypes.asn
@@ -1,5 +1,5 @@
-- $Id$
--- 3GPP TS 36.413 V8.3.0 (2008-09
+-- 3GPP TS 36.413 V8.5.0 (2009-03)
-- 9.3.5 Common Definitions
-- **************************************************************
--
@@ -33,3 +33,4 @@ ProtocolIE-ID ::= INTEGER (0..65535)
TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessfull-outcome }
END
+
diff --git a/asn1/s1ap/S1AP-Constants.asn b/asn1/s1ap/S1AP-Constants.asn
index e6df898143..0866cbd19b 100644
--- a/asn1/s1ap/S1AP-Constants.asn
+++ b/asn1/s1ap/S1AP-Constants.asn
@@ -1,5 +1,5 @@
-- $Id$
--- 3GPP TS 36.413 V8.4.0 (2008-12)
+-- 3GPP TS 36.413 V8.5.0 (2009-03)
-- 9.3.6 Constant Definitions
-- **************************************************************
--
@@ -74,7 +74,9 @@ id-WriteReplaceWarning ProcedureCode ::= 36
id-eNBDirectInformationTransfer ProcedureCode ::= 37
id-MMEDirectInformationTransfer ProcedureCode ::= 38
id-PrivateMessage ProcedureCode ::= 39
-
+id-eNBConfigurationTransfer ProcedureCode ::= 40
+id-MMEConfigurationTransfer ProcedureCode ::= 41
+id-CellTrafficTrace ProcedureCode ::= 42
-- **************************************************************
--
@@ -94,7 +96,7 @@ maxProtocolIEs INTEGER ::= 65535
maxNrOfCSGs INTEGER ::= 256
maxNrOfE-RABs INTEGER ::= 256
maxNrOfInterfaces INTEGER ::= 3 --FFS
-maxnoofTAI INTEGER ::= 256
+maxnoofTAIs INTEGER ::= 256
maxnoofTACs INTEGER ::= 256
maxNrOfErrors INTEGER ::= 256
maxnoofBPLMNs INTEGER ::= 6
@@ -106,12 +108,16 @@ maxnoofForbTACs INTEGER ::= 4096
maxNrOfIndividualS1ConnectionsToReset INTEGER ::= 256
maxnoofGUMMEIs INTEGER ::= 256 -- FFS
maxnoofCells INTEGER ::= 16
-maxnoofTAIforWarning INTEGER ::= 65535 -- FFS
-maxnoofCellID INTEGER ::= 65535 -- FFS
-maxnoofEmergencyAreaID INTEGER ::= 65535 -- FFS
-maxnoofCellinTAI INTEGER ::= 65535 -- FFS
-maxnoofCellinEAI INTEGER ::= 65535 -- FFS
+maxnoofTAIforWarning INTEGER ::= 65535
+maxnoofCellID INTEGER ::= 65535
+maxnoofEmergencyAreaID INTEGER ::= 65535
+maxnoofCellinTAI INTEGER ::= 65535
+maxnoofCellinEAI INTEGER ::= 65535
maxnoofeNBX2TLAs INTEGER ::= 2
+maxnoofRATs INTEGER ::= 8
+maxnoofGroupIDs INTEGER ::= 65535
+maxnoofMMECs INTEGER ::= 256
+
@@ -190,7 +196,7 @@ id-Direct-Forwarding-Path-Availability ProtocolIE-ID ::= 79
id-UEIdentityIndexValue ProtocolIE-ID ::= 80
id-cdma2000HOStatus ProtocolIE-ID ::= 83
id-cdma2000HORequiredIndication ProtocolIE-ID ::= 84
-id-TraceReference ProtocolIE-ID ::= 86
+id-E-UTRAN-Trace-ID ProtocolIE-ID ::= 86
id-RelativeMMECapacity ProtocolIE-ID ::= 87
id-SourceMME-UE-S1AP-ID ProtocolIE-ID ::= 88
id-Bearers-SubjectToStatusTransfer-Item ProtocolIE-ID ::= 89
@@ -233,5 +239,14 @@ id-SRVCCHOIndication ProtocolIE-ID ::= 125
id-NAS-DownlinkCount ProtocolIE-ID ::= 126
id-CSG-Id ProtocolIE-ID ::= 127
id-CSG-IdList ProtocolIE-ID ::= 128
-
+id-SONConfigurationTransferECT ProtocolIE-ID ::= 129
+id-SONConfigurationTransferMCT ProtocolIE-ID ::= 130
+id-TraceCollectionEntityIPAddress ProtocolIE-ID ::= 131
+id-MSClassmark2 ProtocolIE-ID ::= 132
+id-MSClassmark3 ProtocolIE-ID ::= 133
+id-RRC-Establishment-Cause ProtocolIE-ID ::= 134
+id-NASSecurityParametersfromE-UTRAN ProtocolIE-ID ::= 135
+id-NASSecurityParameterstoE-UTRAN ProtocolIE-ID ::= 136
+id-DefaultPagingDRX ProtocolIE-ID ::= 137
END
+
diff --git a/asn1/s1ap/S1AP-Containers.asn b/asn1/s1ap/S1AP-Containers.asn
index b6ebf173b9..40b57d079b 100644
--- a/asn1/s1ap/S1AP-Containers.asn
+++ b/asn1/s1ap/S1AP-Containers.asn
@@ -1,5 +1,5 @@
-- $Id$
--- 3GPP TS 36.413 V8.4.0 (2008-12)
+-- 3GPP TS 36.413 V8.5.0 (2009-03)
-- 9.3.7 Container Definitions
-- **************************************************************
--
@@ -202,3 +202,4 @@ END
+
diff --git a/asn1/s1ap/S1AP-IEs.asn b/asn1/s1ap/S1AP-IEs.asn
index 8411e45722..d6a5b9b11c 100644
--- a/asn1/s1ap/S1AP-IEs.asn
+++ b/asn1/s1ap/S1AP-IEs.asn
@@ -1,5 +1,5 @@
-- $Id$
--- 3GPP TS 36.413 V8.4.0 (2008-12)
+-- 3GPP TS 36.413 V8.5.0 (2009-03)
-- 9.3.4 Information Element Definitions
-- **************************************************************
--
@@ -37,7 +37,11 @@ IMPORTS
maxnoofEmergencyAreaID,
maxnoofTAIforWarning,
maxnoofCellinTAI,
- maxnoofCellinEAI
+ maxnoofCellinEAI,
+ maxnoofeNBX2TLAs,
+ maxnoofRATs,
+ maxnoofGroupIDs,
+ maxnoofMMECs
@@ -102,9 +106,15 @@ BroadcastCompletedAreaList ::= SEQUENCE {
cellID-Broadcast CellID-Broadcast,
tAI-Broadcast TAI-Broadcast,
emergencyAreaID-Broadcast EmergencyAreaID-Broadcast,
+ iE-Extensions ProtocolExtensionContainer { {BroadcastCompletedAreaList-ExtIEs} } OPTIONAL,
...
}
+BroadcastCompletedAreaList-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
-- C
Cause ::= CHOICE {
@@ -139,7 +149,6 @@ CauseProtocol ::= ENUMERATED {
CauseRadioNetwork ::= ENUMERATED {
unspecified,
- handover-triggered,
tx2relocoverall-expiry,
successful-handover,
release-due-to-eutran-generated-reason,
@@ -166,6 +175,15 @@ CauseRadioNetwork ::= ENUMERATED {
ue-not-available-for-ps-service,
radio-resources-not-available,
failure-in-radio-interface-procedure,
+ invalid-qos-combination,
+ interrat-redirection,
+ interaction-with-other-procedure,
+ unknown-E-RAB-ID,
+ multiple-E-RAB-ID-instances,
+ encryption-and-or-integrity-protection-algorithms-not-supported,
+ s1-intra-system-handover-triggered,
+ s1-inter-system-handover-triggered,
+ x2-handover-triggered,
...
}
@@ -190,9 +208,15 @@ CellID-Broadcast ::= SEQUENCE (SIZE(1..maxnoofCellID)) OF CellID-Broadcast-Item
CellID-Broadcast-Item ::= SEQUENCE {
eCGI EUTRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CellID-Broadcast-Item-ExtIEs} } OPTIONAL,
...
}
+CellID-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
Cdma2000PDU ::= OCTET STRING
Cdma2000RATType ::= ENUMERATED {
@@ -234,21 +258,37 @@ Cdma2000OneXPilot ::= OCTET STRING
Cdma2000OneXRAND ::= OCTET STRING
-CellType ::= ENUMERATED {ffs,...} -- FFS: The definition of CellType
+
+Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ...}
+
+CellType ::= SEQUENCE {
+ cell-Size Cell-Size,
+ iE-Extensions ProtocolExtensionContainer { { CellType-ExtIEs}} OPTIONAL,
+ ...
+}
+
+CellType-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
CGI ::= SEQUENCE {
pLMNidentity PLMNidentity,
lAC LAC,
cI CI,
- rAC RAC OPTIONAL
+ rAC RAC OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {CGI-ExtIEs} } OPTIONAL,
+ ...
}
+CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
CI ::= OCTET STRING (SIZE (2))
CNDomain ::= ENUMERATED {
- cs,
- ps
+ ps,
+ cs
}
CSFallbackIndicator ::= ENUMERATED {
@@ -256,21 +296,28 @@ CSFallbackIndicator ::= ENUMERATED {
...
}
-CSG-Id ::= BIT STRING (SIZE (28))
+CSG-Id ::= BIT STRING (SIZE (27))
CSG-IdList ::= SEQUENCE (SIZE (1..maxNrOfCSGs)) OF CSG-IdList-Item
CSG-IdList-Item ::= SEQUENCE {
cSG-Id CSG-Id,
+ iE-Extensions ProtocolExtensionContainer { {CSG-IdList-Item-ExtIEs} } OPTIONAL,
...
}
-
+CSG-IdList-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
COUNTvalue ::= SEQUENCE {
pDCP-SN PDCP-SN,
hFN HFN,
+ iE-Extensions ProtocolExtensionContainer { {COUNTvalue-ExtIEs} } OPTIONAL,
+ ...
+}
+COUNTvalue-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -322,19 +369,31 @@ ECGIList ::= SEQUENCE (SIZE(1..maxnoofCellID)) OF EUTRAN-CGI
EmergencyAreaIDList ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID
-EmergencyAreaID ::= OCTET STRING (SIZE (2))
+EmergencyAreaID ::= OCTET STRING (SIZE (3))
EmergencyAreaID-Broadcast ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID-Broadcast-Item
EmergencyAreaID-Broadcast-Item ::= SEQUENCE {
emergencyAreaID EmergencyAreaID,
- completedCellinEAI CompletedCellinEAI
+ completedCellinEAI CompletedCellinEAI,
+ iE-Extensions ProtocolExtensionContainer { {EmergencyAreaID-Broadcast-Item-ExtIEs} } OPTIONAL,
+ ...
}
+EmergencyAreaID-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
CompletedCellinEAI ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CompletedCellinEAI-Item
CompletedCellinEAI-Item ::= SEQUENCE {
eCGI EUTRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CompletedCellinEAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompletedCellinEAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -369,7 +428,7 @@ GlobalENB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
ENB-StatusTransfer-TransparentContainer ::= SEQUENCE {
- bearers-SubjectToStatusTransferList Bearers-SubjectToStatusTransferList OPTIONAL,
+ bearers-SubjectToStatusTransferList Bearers-SubjectToStatusTransferList,
iE-Extensions ProtocolExtensionContainer { {ENB-StatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL,
...
}
@@ -380,8 +439,9 @@ ENB-StatusTransfer-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
ENB-UE-S1AP-ID ::= INTEGER (0..16777215)
-ENBname ::= OCTET STRING
+ENBname ::= PrintableString (SIZE (1..150,...))
+ENBX2TLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2TLAs)) OF TransportLayerAddress
EncryptionAlgorithms ::= BIT STRING (SIZE (16,...))
@@ -412,6 +472,7 @@ ForbiddenInterRATs ::= ENUMERATED {
all,
geran,
utran,
+ cdma2000,
...
}
@@ -419,7 +480,13 @@ ForbiddenTAs ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenTAs-Item
ForbiddenTAs-Item ::= SEQUENCE {
pLMN-Identity PLMNidentity,
- forbiddenTACs ForbiddenTACs
+ forbiddenTACs ForbiddenTACs,
+ iE-Extensions ProtocolExtensionContainer { {ForbiddenTAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ForbiddenTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
}
ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC
@@ -428,7 +495,13 @@ ForbiddenLAs ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF ForbiddenLAs-Item
ForbiddenLAs-Item ::= SEQUENCE {
pLMN-Identity PLMNidentity,
- forbiddenLACs ForbiddenLACs
+ forbiddenLACs ForbiddenLACs,
+ iE-Extensions ProtocolExtensionContainer { {ForbiddenLAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ForbiddenLAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
}
ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC
@@ -471,7 +544,7 @@ HandoverRestrictionList ::= SEQUENCE {
forbiddenTAs ForbiddenTAs OPTIONAL,
forbiddenLAs ForbiddenLAs OPTIONAL,
forbiddenInterRATs ForbiddenInterRATs OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} } OPTIONAL,
...
}
@@ -496,25 +569,9 @@ IMSI ::= OCTET STRING (SIZE (3..8))
IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16,...))
-InterfacesToTraceList ::= SEQUENCE (SIZE (1..maxNrOfInterfaces)) OF InterfacesToTraceItem
+InterfacesToTrace ::= BIT STRING (SIZE (8))
-InterfacesToTraceItem ::= SEQUENCE {
- interfaceType InterfaceType,
- traceDepth TraceDepth,
- iE-Extensions ProtocolExtensionContainer { {InterfacesToTraceItem-ExtIEs} } OPTIONAL,
- ...
-}
-
-InterfacesToTraceItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
- ...
-}
-InterfaceType ::= ENUMERATED {
- s1,
- x2,
- uu,
-...
-}
-- J
-- K
@@ -526,7 +583,8 @@ LAC ::= OCTET STRING (SIZE (2))
LAI ::= SEQUENCE {
pLMNidentity PLMNidentity,
lAC LAC,
- iE-Extensions ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL,
+ ...
}
LAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
@@ -536,6 +594,7 @@ LAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
LastVisitedCell-Item ::= CHOICE {
e-UTRAN-Cell LastVisitedEUTRANCellInformation,
uTRAN-Cell LastVisitedUTRANCellInformation,
+ gERAN-Cell LastVisitedGERANCellInformation,
...
}
LastVisitedEUTRANCellInformation ::= SEQUENCE {
@@ -550,13 +609,19 @@ LastVisitedEUTRANCellInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
}
LastVisitedUTRANCellInformation ::= OCTET STRING
+LastVisitedGERANCellInformation ::= CHOICE {
+ undefined NULL,
+ ...
+}
+
+L3-Information ::= OCTET STRING
-- M
-MessageIdentifier ::= OCTET STRING (SIZE (16))
+MessageIdentifier ::= BIT STRING (SIZE (16))
-MMEname ::= OCTET STRING
+MMEname ::= PrintableString (SIZE (1..150,...))
MME-Group-ID ::= OCTET STRING (SIZE (2))
@@ -565,16 +630,24 @@ MME-Code ::= OCTET STRING (SIZE (1))
MME-UE-S1AP-ID ::= INTEGER (0..4294967295)
M-TMSI ::= OCTET STRING (SIZE (4))
+MSClassmark2 ::= OCTET STRING
+MSClassmark3 ::= OCTET STRING
-- N
NAS-PDU ::= OCTET STRING
+NASSecurityParametersfromE-UTRAN ::= OCTET STRING
+
+NASSecurityParameterstoE-UTRAN ::= OCTET STRING
+
NumberofBroadcastRequest ::= INTEGER (0..65535)
NumberofBroadcast ::= INTEGER (0..65535)
-- O
+OldBSS-ToNewBSS-Information ::= OCTET STRING
+
OverloadAction ::= ENUMERATED {
reject-non-emergency-mo-dt,
reject-all-rrc-cr-signalling,
@@ -617,7 +690,7 @@ PriorityLevel ::= INTEGER { spare (0), highest (1), lowest (14), no-priority
-- Q
-QCI ::= INTEGER (1..256)
+QCI ::= INTEGER (0..255)
-- R
@@ -658,7 +731,10 @@ RIMRoutingAddress ::= CHOICE {
...
}
-ReportArea ::= OCTET STRING
+ReportArea ::= ENUMERATED {
+ ecgi,
+ ...
+}
RepetitionPeriod ::= INTEGER (1..4096)
@@ -667,6 +743,15 @@ RNC-ID ::= INTEGER (0..4095)
RRC-Container ::= OCTET STRING
+RRC-Establishment-Cause ::= ENUMERATED {
+ emergency,
+ highPriorityAccess,
+ mt-Access,
+ mo-Signalling,
+ mo-Data,
+ ...
+}
+
-- S
E-RAB-ID ::= INTEGER (0..15, ...)
@@ -731,8 +816,8 @@ SecurityKey ::= BIT STRING (SIZE(256))
SecurityContext ::= SEQUENCE {
- nexthopchainingcount SecurityKey,
- nexthopparameter BIT STRING (SIZE(3)),
+ nextHopParameter INTEGER (0..7),
+ nextHopChainingCount SecurityKey,
iE-Extensions ProtocolExtensionContainer { { SecurityContext-ExtIEs} } OPTIONAL,
...
}
@@ -744,9 +829,54 @@ SecurityContext-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
SerialNumber ::= BIT STRING (SIZE (16))
+SONInformation ::= CHOICE{
+ sONInformationRequest SONInformationRequest,
+ sONInformationReply SONInformationReply,
+ ...
+}
+
+SONInformationRequest ::= ENUMERATED {
+ x2TNL-Configuration-Info,
+ ...
+}
+
+SONInformationReply ::= SEQUENCE {
+ x2TNLConfigurationInfo X2TNLConfigurationInfo OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer {{SONInformationReply-ExtIEs}} OPTIONAL,
+ ...
+}
+
+SONInformationReply-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+SONConfigurationTransfer ::= SEQUENCE {
+ targeteNB-ID TargeteNB-ID,
+ sourceeNB-ID SourceeNB-ID,
+ sONInformation SONInformation,
+ iE-Extensions ProtocolExtensionContainer { { SONConfigurationTransfer-ExtIEs} } OPTIONAL,
+...
+}
+
+SONConfigurationTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+
Source-ToTarget-TransparentContainer ::= OCTET STRING
SourceBSS-ToTargetBSS-TransparentContainer ::= OCTET STRING
+SourceeNB-ID ::= SEQUENCE {
+ global-ENB-ID Global-ENB-ID,
+ selected-TAI TAI,
+ iE-Extensions ProtocolExtensionContainer { {SourceeNB-ID-ExtIEs} } OPTIONAL
+}
+
+SourceeNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
SRVCCOperationPossible ::= ENUMERATED {
possible,
@@ -759,24 +889,40 @@ SRVCCHOIndication ::= ENUMERATED {
...
}
-SourceeNodeB-ToTargeteNodeB-TransparentContainer ::= SEQUENCE {
+SourceeNB-ToTargeteNB-TransparentContainer ::= SEQUENCE {
rRC-Container RRC-Container,
e-RABInformationList E-RABInformationList OPTIONAL,
targetCell-ID EUTRAN-CGI,
subscriberProfileIDforRFP SubscriberProfileIDforRFP OPTIONAL,
uE-HistoryInformation UE-HistoryInformation,
- iE-Extensions ProtocolExtensionContainer { {SourceeNodeB-ToTargeteNodeB-TransparentContainer-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {SourceeNB-ToTargeteNB-TransparentContainer-ExtIEs} } OPTIONAL,
...
}
-SourceeNodeB-ToTargeteNodeB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+SourceeNB-ToTargeteNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
SourceRNC-ToTargetRNC-TransparentContainer ::= OCTET STRING
-ServedGUMMEIs ::= SEQUENCE (SIZE(1.. maxnoofGUMMEIs)) OF GUMMEI
+
+ServedGUMMEIs ::= SEQUENCE (SIZE (1.. maxnoofRATs)) OF ServedGUMMEIsItem
+
+ServedGUMMEIsItem ::= SEQUENCE {
+ servedPLMNs ServedPLMNs,
+ servedGroupIDs ServedGroupIDs,
+ servedMMECs ServedMMECs,
+ iE-Extensions ProtocolExtensionContainer { {ServedGUMMEIsItem-ExtIEs} } OPTIONAL,
+ ...
+}
+
+ServedGUMMEIsItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+ServedGroupIDs ::= SEQUENCE (SIZE(1.. maxnoofGroupIDs)) OF MME-Group-ID
+ServedMMECs ::= SEQUENCE (SIZE(1.. maxnoofMMECs)) OF MME-Code
ServedPLMNs ::= SEQUENCE (SIZE(1.. maxnoofPLMNsPerMME)) OF PLMNidentity
@@ -787,15 +933,23 @@ SupportedTAs ::= SEQUENCE (SIZE(1.. maxnoofTACs)) OF SupportedTAs-Item
SupportedTAs-Item ::= SEQUENCE {
tAC TAC,
broadcastPLMNs BPLMNs,
+ iE-Extensions ProtocolExtensionContainer { {SupportedTAs-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+SupportedTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
S-TMSI ::= SEQUENCE {
mMEC MME-Code,
- m-TMSI M-TMSI,
+ iE-Extensions ProtocolExtensionContainer { {S-TMSI-ExtIEs} } OPTIONAL,
...
}
+S-TMSI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
-- T
@@ -806,7 +960,8 @@ TAIListforWarning ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI
TAI ::= SEQUENCE {
pLMNidentity PLMNidentity,
tAC TAC,
- iE-Extensions ProtocolExtensionContainer { {TAI-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { {TAI-ExtIEs} } OPTIONAL,
+ ...
}
TAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
@@ -817,13 +972,24 @@ TAI-Broadcast ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI-Broadcast-Item
TAI-Broadcast-Item ::= SEQUENCE {
tAI TAI,
- completedCellinTAI CompletedCellinTAI
+ completedCellinTAI CompletedCellinTAI,
+ iE-Extensions ProtocolExtensionContainer { {TAI-Broadcast-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+TAI-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
}
-CompletedCellinTAI ::= SEQUENCE (SIZE(0..maxnoofCellinTAI)) OF CompletedCellinTAI-Item
+CompletedCellinTAI ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CompletedCellinTAI-Item
CompletedCellinTAI-Item ::= SEQUENCE{
eCGI EUTRAN-CGI,
+ iE-Extensions ProtocolExtensionContainer { {CompletedCellinTAI-Item-ExtIEs} } OPTIONAL,
+ ...
+}
+
+CompletedCellinTAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -839,7 +1005,8 @@ TargetID ::= CHOICE {
TargeteNB-ID ::= SEQUENCE {
global-ENB-ID Global-ENB-ID,
selected-TAI TAI,
- iE-Extensions ProtocolExtensionContainer { {TargeteNB-ID-ExtIEs} } OPTIONAL
+ iE-Extensions ProtocolExtensionContainer { {TargeteNB-ID-ExtIEs} } OPTIONAL,
+ ...
}
TargeteNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
@@ -850,17 +1017,24 @@ TargetRNC-ID ::= SEQUENCE {
lAI LAI,
rAC RAC OPTIONAL,
rNC-ID RNC-ID,
- extendedRNC-ID ExtendedRNC-ID OPTIONAL
+ extendedRNC-ID ExtendedRNC-ID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TargetRNC-ID-ExtIEs} } OPTIONAL,
+ ...
}
-TargeteNodeB-ToSourceeNodeB-TransparentContainer ::= SEQUENCE {
+TargetRNC-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
+
+TargeteNB-ToSourceeNB-TransparentContainer ::= SEQUENCE {
rRC-Container RRC-Container,
- iE-Extensions ProtocolExtensionContainer { {TargeteNodeB-ToSourceeNodeB-TransparentContainer-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs} } OPTIONAL,
...
}
-TargeteNodeB-ToSourceeNodeB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
@@ -875,9 +1049,12 @@ Time-UE-StayedInCell ::= INTEGER (0..4095)
TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...))
TraceActivation ::= SEQUENCE {
- traceReference TraceReference,
- interfacesToTraceList InterfacesToTraceList,
- iE-Extensions ProtocolExtensionContainer { { TraceActivation-ExtIEs} } OPTIONAL
+ e-UTRAN-Trace-ID E-UTRAN-Trace-ID,
+ interfacesToTrace InterfacesToTrace,
+traceDepth TraceDepth,
+traceCollectionEntityIPAddress TransportLayerAddress,
+ iE-Extensions ProtocolExtensionContainer { { TraceActivation-ExtIEs} } OPTIONAL,
+ ...
}
TraceActivation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
@@ -888,13 +1065,13 @@ TraceDepth ::= ENUMERATED {
minimum,
medium,
maximum,
- vendorMinimum,
- vendorMedium,
- vendorMaximum,
+ minimumWithoutVendorSpecificExtension,
+ mediumWithoutVendorSpecificExtension,
+ maximumWithoutVendorSpecificExtension,
...
}
-TraceReference ::= OCTET STRING (SIZE (8))
+E-UTRAN-Trace-ID ::= OCTET STRING (SIZE (8))
TypeOfError ::= ENUMERATED {
not-understood,
@@ -925,9 +1102,15 @@ UE-S1AP-IDs ::= CHOICE{
UE-S1AP-ID-pair ::= SEQUENCE{
mME-UE-S1AP-ID MME-UE-S1AP-ID,
- eNB-UE-S1AP-ID ENB-UE-S1AP-ID
+ eNB-UE-S1AP-ID ENB-UE-S1AP-ID,
+ iE-Extensions ProtocolExtensionContainer { {UE-S1AP-ID-pair-ExtIEs} } OPTIONAL,
+ ...
+}
+UE-S1AP-ID-pair-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
}
+
UE-associatedLogicalS1-ConnectionItem ::= SEQUENCE {
mME-UE-S1AP-ID MME-UE-S1AP-ID OPTIONAL,
eNB-UE-S1AP-ID ENB-UE-S1AP-ID OPTIONAL,
@@ -979,14 +1162,25 @@ WarningType ::= OCTET STRING (SIZE (2))
WarningSecurityInfo ::= OCTET STRING (SIZE (50))
-WarningMessageContents ::= OCTET STRING
+WarningMessageContents ::= OCTET STRING (SIZE(1..9600))
-- X
+X2TNLConfigurationInfo ::= SEQUENCE {
+ eNBX2TransportLayerAddresses ENBX2TLAs,
+ iE-Extensions ProtocolExtensionContainer { { X2TNLConfigurationInfo-ExtIEs} } OPTIONAL,
+ ...
+}
+
+X2TNLConfigurationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+ ...
+}
+
-- Y
-- Z
END
+
diff --git a/asn1/s1ap/S1AP-PDU-Contents.asn b/asn1/s1ap/S1AP-PDU-Contents.asn
index 82a929f225..dc38a382c3 100644
--- a/asn1/s1ap/S1AP-PDU-Contents.asn
+++ b/asn1/s1ap/S1AP-PDU-Contents.asn
@@ -1,5 +1,5 @@
-- $Id$
--- 3GPP TS 36.413 V8.4.0 (2008-12)
+-- 3GPP TS 36.413 V8.5.0 (2009-03)
-- 9.3.3 PDU Definitions
-- **************************************************************
--
@@ -49,7 +49,11 @@ IMPORTS
HandoverType,
MMEname,
MME-UE-S1AP-ID,
+ MSClassmark2,
+ MSClassmark3,
NAS-PDU,
+ NASSecurityParametersfromE-UTRAN,
+ NASSecurityParameterstoE-UTRAN,
OverloadResponse,
PagingDRX,
PLMNidentity,
@@ -62,10 +66,10 @@ IMPORTS
SecurityKey,
SecurityContext,
ServedGUMMEIs,
- ServedPLMNs,
+ SONConfigurationTransfer,
Source-ToTarget-TransparentContainer,
SourceBSS-ToTargetBSS-TransparentContainer,
- SourceeNodeB-ToTargeteNodeB-TransparentContainer,
+ SourceeNB-ToTargeteNB-TransparentContainer,
SourceRNC-ToTargetRNC-TransparentContainer,
SubscriberProfileIDforRFP,
SRVCCOperationPossible,
@@ -74,12 +78,12 @@ IMPORTS
TAI,
Target-ToSource-TransparentContainer,
TargetBSS-ToSourceBSS-TransparentContainer,
- TargeteNodeB-ToSourceeNodeB-TransparentContainer,
+ TargeteNB-ToSourceeNB-TransparentContainer,
TargetID,
TargetRNC-ToSourceRNC-TransparentContainer,
TimeToWait,
TraceActivation,
- TraceReference,
+ E-UTRAN-Trace-ID,
TransportLayerAddress,
UEIdentityIndexValue,
UEPagingID,
@@ -97,7 +101,8 @@ IMPORTS
WarningSecurityInfo,
DataCodingScheme,
WarningMessageContents,
- BroadcastCompletedAreaList
+ BroadcastCompletedAreaList,
+ RRC-Establishment-Cause
FROM S1AP-IEs
@@ -129,6 +134,7 @@ FROM S1AP-Containers
id-CSFallbackIndicator,
id-CSG-Id,
id-CSG-IdList,
+ id-DefaultPagingDRX,
id-Direct-Forwarding-Path-Availability,
id-Global-ENB-ID,
id-EUTRAN-CGI,
@@ -144,7 +150,11 @@ FROM S1AP-Containers
id-NAS-DownlinkCount,
id-MMEname,
id-MME-UE-S1AP-ID,
+id-MSClassmark2,
+id-MSClassmark3,
id-NAS-PDU,
+ id-NASSecurityParametersfromE-UTRAN,
+ id-NASSecurityParameterstoE-UTRAN,
id-OverloadResponse,
id-pagingDRX,
id-RelativeMMECapacity,
@@ -191,7 +201,8 @@ FROM S1AP-Containers
id-SecurityKey,
id-SecurityContext,
id-ServedGUMMEIs,
- id-ServedPLMNs,
+ id-SONConfigurationTransferECT,
+ id-SONConfigurationTransferMCT,
id-Source-ToTarget-TransparentContainer,
id-SourceMME-UE-S1AP-ID,
id-SRVCCOperationPossible,
@@ -206,7 +217,7 @@ FROM S1AP-Containers
id-TargetID,
id-TimeToWait,
id-TraceActivation,
- id-TraceReference,
+ id-E-UTRAN-Trace-ID,
id-UEIdentityIndexValue,
id-UEPagingID,
id-UERadioCapability,
@@ -226,7 +237,9 @@ FROM S1AP-Containers
id-DataCodingScheme,
id-WarningMessageContents,
id-BroadcastCompletedAreaList,
- maxnoofTAI,
+ id-RRC-Establishment-Cause,
+ id-TraceCollectionEntityIPAddress,
+ maxnoofTAIs,
maxNrOfErrors,
maxNrOfE-RABs,
maxNrOfIndividualS1ConnectionsToReset,
@@ -245,13 +258,13 @@ FROM S1AP-Constants;
--
-- **************************************************************
-E-RAB-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxNrOfE-RABs, {IEsSetParam} }
-E-RAB-IE-ContainerPairList { S1AP-PROTOCOL-IES-PAIR : IEsSetParam } ::= ProtocolIE-ContainerPairList { 1, maxNrOfE-RABs, {IEsSetParam} }
-ProtocolError-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxNrOfE-RABs, {IEsSetParam} }
+E-RAB-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxNrOfE-RABs, {IEsSetParam} }
+E-RAB-IE-ContainerPairList { S1AP-PROTOCOL-IES-PAIR : IEsSetParam } ::= ProtocolIE-ContainerPairList { 1, maxNrOfE-RABs, {IEsSetParam} }
+ProtocolError-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxNrOfE-RABs, {IEsSetParam} }
-- **************************************************************
--
--- HANDOVER PREPARATION ELEMTARY PROCEDURE
+-- HANDOVER PREPARATION ELEMENTARY PROCEDURE
--
-- **************************************************************
@@ -267,14 +280,17 @@ HandoverRequired ::= SEQUENCE {
}
HandoverRequiredIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } |
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory } |
- { ID id-TargetID CRITICALITY reject TYPE TargetID PRESENCE mandatory } |
- { ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore TYPE Direct-Forwarding-Path-Availability PRESENCE optional } |
- { ID id-SRVCCHOIndication CRITICALITY reject TYPE SRVCCHOIndication PRESENCE optional }|
- { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory },
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } |
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory } |
+ { ID id-TargetID CRITICALITY reject TYPE TargetID PRESENCE mandatory } |
+ { ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore TYPE Direct-Forwarding-Path-Availability PRESENCE optional } |
+ { ID id-SRVCCHOIndication CRITICALITY reject TYPE SRVCCHOIndication PRESENCE optional }|
+ { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory }|
+ { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE optional }|
+ { ID id-MSClassmark2 CRITICALITY reject TYPE MSClassmark2 PRESENCE conditional }|
+ { ID id-MSClassmark3 CRITICALITY ignore TYPE MSClassmark3 PRESENCE conditional },
...
}
@@ -292,20 +308,19 @@ HandoverCommand ::= SEQUENCE {
}
HandoverCommandIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } |
- { ID id-NAS-DownlinkCount CRITICALITY reject TYPE NAS-DownlinkCount PRESENCE conditional
- -- This IE shall be present if Handover Type IE is not set to value "IntraLTE" -- }|
- { ID id-E-RABSubjecttoDataForwardingList CRITICALITY ignore TYPE E-RABSubjecttoDataForwardingList PRESENCE optional } |
- { ID id-E-RABtoReleaseListHOCmd CRITICALITY ignore TYPE E-RABList PRESENCE optional } |
- { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } |
+ { ID id-NASSecurityParametersfromE-UTRAN CRITICALITY reject TYPE NASSecurityParametersfromE-UTRAN PRESENCE conditional
+ -- This IE shall be present if HandoverType IE is set to value "LTEtoUTRAN" or "LTEtoGERAN" -- }|
+ { ID id-E-RABSubjecttoDataForwardingList CRITICALITY ignore TYPE E-RABSubjecttoDataForwardingList PRESENCE optional } |
+ { ID id-E-RABtoReleaseListHOCmd CRITICALITY ignore TYPE E-RABList PRESENCE optional } |
+ { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory }|
+ { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE optional }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
-NAS-DownlinkCount ::= BIT STRING (SIZE (4))
-
E-RABSubjecttoDataForwardingList ::= E-RAB-IE-ContainerList { {E-RABDataForwardingItemIEs} }
E-RABDataForwardingItemIEs S1AP-PROTOCOL-IES ::= {
@@ -314,12 +329,12 @@ E-RABDataForwardingItemIEs S1AP-PROTOCOL-IES ::= {
}
E-RABDataForwardingItem ::= SEQUENCE {
- e-RAB-ID E-RAB-ID,
- dL-transportLayerAddress TransportLayerAddress OPTIONAL,
- dL-gTP-TEID GTP-TEID OPTIONAL,
- uL-TransportLayerAddress TransportLayerAddress OPTIONAL,
- uL-GTP-TEID GTP-TEID OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { { E-RABDataForwardingItem-ExtIEs} } OPTIONAL,
+ e-RAB-ID E-RAB-ID,
+ dL-transportLayerAddress TransportLayerAddress OPTIONAL,
+ dL-gTP-TEID GTP-TEID OPTIONAL,
+ uL-TransportLayerAddress TransportLayerAddress OPTIONAL,
+ uL-GTP-TEID GTP-TEID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { { E-RABDataForwardingItem-ExtIEs} } OPTIONAL,
...
}
@@ -343,8 +358,8 @@ HandoverPreparationFailure ::= SEQUENCE {
HandoverPreparationFailureIEs S1AP-PROTOCOL-IES ::= {
{ ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
{ ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -366,18 +381,20 @@ HandoverRequest ::= SEQUENCE {
}
HandoverRequestIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } |
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory } |
- { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE mandatory }|
- { ID id-E-RABToBeSetupListHOReq CRITICALITY reject TYPE E-RABToBeSetupListHOReq PRESENCE mandatory } |
- { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory } |
- { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }|
- { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional }|
- { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
- { ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE optional }|
- { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }|
- { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory},
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } |
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory } |
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE mandatory }|
+ { ID id-E-RABToBeSetupListHOReq CRITICALITY reject TYPE E-RABToBeSetupListHOReq PRESENCE mandatory } |
+ { ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory } |
+ { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }|
+ { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional }|
+ { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }|
+ { ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE optional }|
+ { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }|
+ { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory}|
+ { ID id-NASSecurityParameterstoE-UTRAN CRITICALITY reject TYPE NASSecurityParameterstoE-UTRAN PRESENCE conditional
+ -- This IE shall be present if the Handover Type IE is set to the value "UTRANtoLTE" or "GERANtoLTE" -- },
...
}
@@ -389,11 +406,11 @@ E-RABToBeSetupItemHOReqIEs S1AP-PROTOCOL-IES ::= {
}
E-RABToBeSetupItemHOReq ::= SEQUENCE {
- e-RAB-ID E-RAB-ID,
+ e-RAB-ID E-RAB-ID,
transportLayerAddress TransportLayerAddress,
- gTP-TEID GTP-TEID,
+ gTP-TEID GTP-TEID,
e-RABlevelQosParameters E-RABLevelQoSParameters,
- iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemHOReq-ExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemHOReq-ExtIEs} } OPTIONAL,
...
}
@@ -413,13 +430,12 @@ HandoverRequestAcknowledge ::= SEQUENCE {
}
HandoverRequestAcknowledgeIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-HandoverType CRITICALITY ignore TYPE HandoverType PRESENCE mandatory } |
- { ID id-E-RABAdmittedList CRITICALITY ignore TYPE E-RABAdmittedList PRESENCE mandatory } |
- { ID id-E-RABFailedToSetupListHOReqAck CRITICALITY ignore TYPE E-RABFailedtoSetupListHOReqAck PRESENCE optional } |
- { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-eNB-UE-S1AP-ID CRITICALITY ignore TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-E-RABAdmittedList CRITICALITY ignore TYPE E-RABAdmittedList PRESENCE mandatory } |
+ { ID id-E-RABFailedToSetupListHOReqAck CRITICALITY ignore TYPE E-RABFailedtoSetupListHOReqAck PRESENCE optional } |
+ { ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -432,13 +448,13 @@ E-RABAdmittedItemIEs S1AP-PROTOCOL-IES ::= {
E-RABAdmittedItem ::= SEQUENCE {
e-RAB-ID E-RAB-ID,
- transportLayerAddress TransportLayerAddress,
- gTP-TEID GTP-TEID,
- dL-transportLayerAddress TransportLayerAddress OPTIONAL,
- dL-gTP-TEID GTP-TEID OPTIONAL,
- uL-TransportLayerAddress TransportLayerAddress OPTIONAL,
- uL-GTP-TEID GTP-TEID OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {E-RABAdmittedItem-ExtIEs} } OPTIONAL,
+ transportLayerAddress TransportLayerAddress,
+ gTP-TEID GTP-TEID,
+ dL-transportLayerAddress TransportLayerAddress OPTIONAL,
+ dL-gTP-TEID GTP-TEID OPTIONAL,
+ uL-TransportLayerAddress TransportLayerAddress OPTIONAL,
+ uL-GTP-TEID GTP-TEID OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABAdmittedItem-ExtIEs} } OPTIONAL,
...
}
@@ -477,9 +493,9 @@ HandoverFailure ::= SEQUENCE {
}
HandoverFailureIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
- { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
+ { ID id-MME-UE-S1AP-ID CRITICALITY ignore TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }|
+ { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@@ -501,11 +517,10 @@ HandoverNotify ::= SEQUENCE {
}
HandoverNotifyIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
- { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
- { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
- { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory },
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } |
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
...
}
@@ -528,11 +543,11 @@ PathSwitchRequest ::= SEQUENCE {
PathSwitchRequestIEs S1AP-PROTOCOL-IES ::= {
{ ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-E-RABToBeSwitchedDLList CRITICALITY reject TYPE E-RABToBeSwitchedDLList PRESENCE mandatory }|
- { ID id-SourceMME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
- { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
- { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory },
+ { ID id-E-RABToBeSwitchedDLList CRITICALITY reject TYPE E-RABToBeSwitchedDLList PRESENCE mandatory }|
+ { ID id-SourceMME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory}|
+ { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory },
...
}
@@ -585,7 +600,7 @@ E-RABToBeSwitchedULItemIEs S1AP-PROTOCOL-IES ::= {
}
E-RABToBeSwitchedULItem ::= SEQUENCE {
- e-RAB-ID E-RAB-ID,
+ e-RAB-ID E-RAB-ID,
transportLayerAddress TransportLayerAddress,
gTP-TEID GTP-TEID,
iE-Extensions ProtocolExtensionContainer { { E-RABToBeSwitchedULItem-ExtIEs} } OPTIONAL,
@@ -676,10 +691,10 @@ E-RABSetupRequest ::= SEQUENCE {
}
E-RABSetupRequestIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
- { ID id-E-RABToBeSetupListBearerSUReq CRITICALITY reject TYPE E-RABToBeSetupListBearerSUReq PRESENCE mandatory },
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-E-RABToBeSetupListBearerSUReq CRITICALITY reject TYPE E-RABToBeSetupListBearerSUReq PRESENCE mandatory },
...
}
@@ -691,10 +706,10 @@ E-RABToBeSetupItemBearerSUReqIEs S1AP-PROTOCOL-IES ::= {
}
E-RABToBeSetupItemBearerSUReq ::= SEQUENCE {
- e-RAB-ID E-RAB-ID,
- e-RABlevelQoSParameters E-RABLevelQoSParameters,
+ e-RAB-ID E-RAB-ID,
+ e-RABlevelQoSParameters E-RABLevelQoSParameters,
transportLayerAddress TransportLayerAddress,
- gTP-TEID GTP-TEID,
+ gTP-TEID GTP-TEID,
nAS-PDU NAS-PDU,
iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemBearerSUReqExtIEs} } OPTIONAL,
...
@@ -736,9 +751,9 @@ E-RABSetupItemBearerSUResIEs S1AP-PROTOCOL-IES ::= {
E-RABSetupItemBearerSURes ::= SEQUENCE {
e-RAB-ID E-RAB-ID,
- transportLayerAddress TransportLayerAddress,
+ transportLayerAddress TransportLayerAddress,
gTP-TEID GTP-TEID,
- iE-Extensions ProtocolExtensionContainer { {E-RABSetupItemBearerSUResExtIEs} } OPTIONAL,
+ iE-Extensions ProtocolExtensionContainer { {E-RABSetupItemBearerSUResExtIEs} } OPTIONAL,
...
}
@@ -767,10 +782,10 @@ E-RABModifyRequest ::= SEQUENCE {
}
E-RABModifyRequestIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
- { ID id-E-RABToBeModifiedListBearerModReq CRITICALITY reject TYPE E-RABToBeModifiedListBearerModReq PRESENCE mandatory },
+ { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
+ { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }|
+ { ID id-E-RABToBeModifiedListBearerModReq CRITICALITY reject TYPE E-RABToBeModifiedListBearerModReq PRESENCE mandatory },
...
}
@@ -782,8 +797,8 @@ E-RABToBeModifiedItemBearerModReqIEs S1AP-PROTOCOL-IES ::= {
}
E-RABToBeModifiedItemBearerModReq ::= SEQUENCE {
- e-RAB-ID E-RAB-ID,
- e-RABLevelQoSParameters E-RABLevelQoSParameters,
+ e-RAB-ID E-RAB-ID,
+ e-RABLevelQoSParameters E-RABLevelQoSParameters,
nAS-PDU NAS-PDU,
iE-Extensions ProtocolExtensionContainer { {E-RABToBeModifyItemBearerModReqExtIEs} } OPTIONAL,
...
@@ -851,7 +866,7 @@ E-RABModifyItemBearerModResExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
E-RABReleaseCommand ::= SEQUENCE {
- protocolIEs ProtocolIE-Container { {E-RABReleaseCommandIEs} },
+ protocolIEs ProtocolIE-Container { {E-RABReleaseCommandIEs} },
...
}
@@ -908,7 +923,7 @@ E-RABReleaseItemBearerRelCompExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- **************************************************************
--
--- E-RAB RELEASE REQUEST ELEMENTARY PROCEDURE
+-- E-RAB RELEASE INDICATION ELEMENTARY PROCEDURE
--
-- **************************************************************
@@ -926,7 +941,7 @@ E-RABReleaseIndication ::= SEQUENCE {
E-RABReleaseIndicationIEs S1AP-PROTOCOL-IES ::= {
{ ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }|
{ ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }|
- { ID id-E-RABReleasedList CRITICALITY ignore TYPE E-RABList PRESENCE mandatory },
+ { ID id-E-RABReleasedList CRITICALITY ignore TYPE E-RABList PRESENCE mandatory },
...
}
-- **************************************************************
@@ -977,7 +992,7 @@ E-RABToBeSetupItemCtxtSUReq ::= SEQUENCE {
e-RABlevelQoSParameters E-RABLevelQoSParameters,
transportLayerAddress TransportLayerAddress,
gTP-TEID GTP-TEID,
- nAS-PDU NAS-PDU,
+ nAS-PDU NAS-PDU OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {E-RABToBeSetupItemCtxtSUReqExtIEs} } OPTIONAL,
...
}
@@ -1065,11 +1080,12 @@ PagingIEs S1AP-PROTOCOL-IES ::= {
{ ID id-UEPagingID CRITICALITY ignore TYPE UEPagingID PRESENCE mandatory } |
{ ID id-pagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional } |
{ ID id-CNDomain CRITICALITY ignore TYPE CNDomain PRESENCE mandatory } |
- { ID id-TAIList CRITICALITY ignore TYPE TAIList PRESENCE mandatory },
+ { ID id-TAIList CRITICALITY ignore TYPE TAIList PRESENCE mandatory }|
+ { ID id-CSG-Id-List CRITICALITY ignore TYPE CSG-Id-List PRESENCE optional },
...
}
-TAIList::= SEQUENCE (SIZE(1.. maxnoofTAI)) OF ProtocolIE-SingleContainer {{TAIItemIEs}}
+TAIList::= SEQUENCE (SIZE(1.. maxnoofTAIs)) OF ProtocolIE-SingleContainer {{TAIItemIEs}}
TAIItemIEs S1AP-PROTOCOL-IES ::= {
{ ID id-TAIItem CRITICALITY ignore TYPE TAIItem PRESENCE mandatory },
@@ -1150,7 +1166,7 @@ UEContextReleaseComplete-IEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
--- UE Context Modification
+-- UE CONTEXT MODIFICATION ELEMENTARY PROCEDURE
--
-- **************************************************************
@@ -1211,6 +1227,12 @@ UEContextModificationFailureIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
+-- NAS TRANSPORT ELEMENTARY PROCEDURES
+--
+-- **************************************************************
+
+-- **************************************************************
+--
-- DOWNLINK NAS TRANSPORT
--
-- **************************************************************
@@ -1241,12 +1263,13 @@ InitialUEMessage ::= SEQUENCE {
}
InitialUEMessage-IEs S1AP-PROTOCOL-IES ::= {
- { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} |
- { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory} |
- { ID id-TAI CRITICALITY reject TYPE TAI PRESENCE mandatory}|
- { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory} |
- { ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE optional}|
- { ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional},
+ { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} |
+ { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory} |
+ { ID id-TAI CRITICALITY reject TYPE TAI PRESENCE mandatory} |
+ { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory} |
+ { ID id-RRC-Establishment-Cause CRITICALITY ignore TYPE RRC-Establishment-Cause PRESENCE mandatory} |
+ { ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE optional} |
+ { ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional}.
...
}
@@ -1400,10 +1423,11 @@ S1SetupRequest ::= SEQUENCE {
}
S1SetupRequestIEs S1AP-PROTOCOL-IES ::= {
- { ID id-Global-ENB-ID CRITICALITY reject TYPE Global-ENB-ID PRESENCE mandatory }|
- { ID id-eNBname CRITICALITY ignore TYPE ENBname PRESENCE mandatory }|
- { ID id-SupportedTAs CRITICALITY reject TYPE SupportedTAs PRESENCE mandatory }|
- { ID id-CSG-IdList CRITICALITY reject TYPE CSG-IdList PRESENCE optional},
+ { ID id-Global-ENB-ID CRITICALITY reject TYPE Global-ENB-ID PRESENCE mandatory}|
+ { ID id-eNBname CRITICALITY ignore TYPE ENBname PRESENCE optional}|
+ { ID id-SupportedTAs CRITICALITY reject TYPE SupportedTAs PRESENCE mandatory}|
+ { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory}|
+ { ID id-CSG-IdList CRITICALITY reject TYPE CSG-IdList PRESENCE optional},
...
}
@@ -1420,9 +1444,8 @@ S1SetupResponse ::= SEQUENCE {
S1SetupResponseIEs S1AP-PROTOCOL-IES ::= {
- { ID id-MMEname CRITICALITY ignore TYPE MMEname PRESENCE mandatory }|
- { ID id-ServedPLMNs CRITICALITY ignore TYPE ServedPLMNs PRESENCE mandatory }|
- { ID id-ServedGUMMEIs CRITICALITY ignore TYPE ServedGUMMEIs PRESENCE mandatory }|
+ { ID id-MMEname CRITICALITY ignore TYPE MMEname PRESENCE optional }|
+ { ID id-ServedGUMMEIs CRITICALITY reject TYPE ServedGUMMEIs PRESENCE mandatory }|
{ ID id-RelativeMMECapacity CRITICALITY ignore TYPE RelativeMMECapacity PRESENCE mandatory }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
@@ -1466,7 +1489,8 @@ ENBConfigurationUpdate ::= SEQUENCE {
ENBConfigurationUpdateIEs S1AP-PROTOCOL-IES ::= {
{ ID id-eNBname CRITICALITY ignore TYPE ENBname PRESENCE optional }|
{ ID id-SupportedTAs CRITICALITY reject TYPE SupportedTAs PRESENCE optional }|
- { ID id-CSG-IdList CRITICALITY reject TYPE CSG-IdList PRESENCE optional},
+ { ID id-CSG-IdList CRITICALITY reject TYPE CSG-IdList PRESENCE optional}|
+ { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional },
...
}
@@ -1525,7 +1549,6 @@ MMEConfigurationUpdate ::= SEQUENCE {
MMEConfigurationUpdateIEs S1AP-PROTOCOL-IES ::= {
{ ID id-MMEname CRITICALITY ignore TYPE MMEname PRESENCE optional }|
- { ID id-ServedPLMNs CRITICALITY reject TYPE ServedPLMNs PRESENCE optional }|
{ ID id-ServedGUMMEIs CRITICALITY reject TYPE ServedGUMMEIs PRESENCE optional }|
{ ID id-RelativeMMECapacity CRITICALITY reject TYPE RelativeMMECapacity PRESENCE optional},
...
@@ -1616,8 +1639,8 @@ UplinkS1cdma2000tunnelingIEs S1AP-PROTOCOL-IES ::= {
{ ID id-cdma2000RATType CRITICALITY reject TYPE Cdma2000RATType PRESENCE mandatory } |
{ ID id-cdma2000SectorID CRITICALITY reject TYPE Cdma2000SectorID PRESENCE mandatory } |
{ ID id-cdma2000HORequiredIndication CRITICALITY ignore TYPE Cdma2000HORequiredIndication PRESENCE optional } |
- { ID id-cdma2000OneXSRVCCInfo CRITICALITY ignore TYPE Cdma2000OneXSRVCCInfo PRESENCE optional } |
- { ID id-cdma2000OneXRAND CRITICALITY ignore TYPE Cdma2000OneXRAND PRESENCE optional } |
+ { ID id-cdma2000OneXSRVCCInfo CRITICALITY reject TYPE Cdma2000OneXSRVCCInfo PRESENCE optional } |
+ { ID id-cdma2000OneXRAND CRITICALITY reject TYPE Cdma2000OneXRAND PRESENCE optional } |
{ ID id-cdma2000PDU CRITICALITY reject TYPE Cdma2000PDU PRESENCE mandatory },
...
}
@@ -1733,7 +1756,7 @@ TraceFailureIndication ::= SEQUENCE {
TraceFailureIndicationIEs S1AP-PROTOCOL-IES ::= {
{ ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} |
{ ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} |
- { ID id-TraceReference CRITICALITY ignore TYPE TraceReference PRESENCE mandatory} |
+ { ID id-E-UTRAN-Trace-ID CRITICALITY ignore TYPE E-UTRAN-Trace-ID PRESENCE mandatory} |
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} ,
...
}
@@ -1758,12 +1781,44 @@ DeactivateTrace ::= SEQUENCE {
DeactivateTraceIEs S1AP-PROTOCOL-IES ::= {
{ ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} |
{ ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} |
- { ID id-TraceReference CRITICALITY ignore TYPE TraceReference PRESENCE mandatory },
+ { ID id-E-UTRAN-Trace-ID CRITICALITY ignore TYPE E-UTRAN-Trace-ID PRESENCE mandatory },
...
}
-- **************************************************************
--
+-- CELL TRAFFIC TRACE PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- CELL TRAFFIC TRACE
+--
+-- **************************************************************
+
+CellTrafficTrace ::= SEQUENCE {
+protocolIEs ProtocolIE-Container { { CellTrafficTraceIEs } },
+...
+}
+
+CellTrafficTraceIEs S1AP-PROTOCOL-IES ::= {
+ {ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} |
+ {ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} |
+ {ID id-E-UTRAN-Trace-ID CRITICALITY ignore TYPE E-UTRAN-Trace-ID PRESENCE mandatory}|
+ {ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}|
+ {ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory },
+ ...
+}
+
+-- **************************************************************
+--
+-- LOCATION ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
-- Location Reporting Control
--
-- **************************************************************
@@ -1794,7 +1849,7 @@ LocationReportingFailureIndication ::= SEQUENCE {
LocationReportingFailureIndicationIEs S1AP-PROTOCOL-IES ::= {
{ ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} |
{ ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} |
- { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional } ,
+ { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory},
...
}
@@ -1820,6 +1875,12 @@ LocationReportIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
+-- OVERLOAD ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
-- Overload Start
--
-- **************************************************************
@@ -1849,7 +1910,7 @@ OverloadStopIEs S1AP-PROTOCOL-IES ::= {
}
-- **************************************************************
--
--- WRITE-REPLACE WARNING PROCEDURE
+-- WRITE-REPLACE WARNING ELEMENTARY PROCEDURE
--
-- **************************************************************
@@ -1873,8 +1934,8 @@ WriteReplaceWarningRequestIEs S1AP-PROTOCOL-IES ::= {
{ ID id-NumberofBroadcastRequest CRITICALITY reject TYPE NumberofBroadcastRequest PRESENCE mandatory }|
{ ID id-WarningType CRITICALITY ignore TYPE WarningType PRESENCE optional }|
{ ID id-WarningSecurityInfo CRITICALITY ignore TYPE WarningSecurityInfo PRESENCE optional }|
- { ID id-DataCodingScheme CRITICALITY reject TYPE DataCodingScheme PRESENCE mandatory }|
- { ID id-WarningMessageContents CRITICALITY reject TYPE WarningMessageContents PRESENCE mandatory },
+ { ID id-DataCodingScheme CRITICALITY ignore TYPE DataCodingScheme PRESENCE optional }|
+ { ID id-WarningMessageContents CRITICALITY ignore TYPE WarningMessageContents PRESENCE optional },
...
}
-- **************************************************************
@@ -1944,7 +2005,49 @@ MMEDirectInformationTransferIEs S1AP-PROTOCOL-IES ::= {
{ ID id-Inter-SystemInformationTransferTypeMDT CRITICALITY reject TYPE Inter-SystemInformationTransferType PRESENCE mandatory} ,
...
}
+-- **************************************************************
+--
+-- eNB CONFIGURATION TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+-- **************************************************************
+--
+-- eNB Configuration Transfer
+--
+-- **************************************************************
+
+ENBConfigurationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ ENBConfigurationTransferIEs}},
+ ...
+}
+
+ENBConfigurationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-SONConfigurationTransferECT CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional} ,
+ ...
+}
+
+-- **************************************************************
+--
+-- MME CONFIGURATION TRANSFER ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+-- **************************************************************
+--
+-- MME Configuration Transfer
+--
+-- **************************************************************
+
+MMEConfigurationTransfer ::= SEQUENCE {
+ protocolIEs ProtocolIE-Container {{ MMEConfigurationTransferIEs}},
+ ...
+}
+
+MMEConfigurationTransferIEs S1AP-PROTOCOL-IES ::= {
+ { ID id-SONConfigurationTransferMCT CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional} ,
+ ...
+}
-- **************************************************************
--
@@ -1968,3 +2071,4 @@ PrivateMessageIEs S1AP-PRIVATE-IES ::= {
}
END
+
diff --git a/asn1/s1ap/S1AP-PDU-Descriptions.asn b/asn1/s1ap/S1AP-PDU-Descriptions.asn
index 897fc9c1ba..2429fc6237 100644
--- a/asn1/s1ap/S1AP-PDU-Descriptions.asn
+++ b/asn1/s1ap/S1AP-PDU-Descriptions.asn
@@ -1,5 +1,5 @@
-- $Id$
--- 3GPP TS 36.413 V8.4.0 (2008-12)
+-- 3GPP TS 36.413 V8.5.0 (2009-03)
-- 9.3.2 Elementary Procedure Definitions
-- **************************************************************
--
@@ -26,6 +26,7 @@ IMPORTS
ProcedureCode
FROM S1AP-CommonDataTypes
+ CellTrafficTrace,
DeactivateTrace,
DownlinkNASTransport,
DownlinkS1cdma2000tunneling,
@@ -88,11 +89,14 @@ FROM S1AP-CommonDataTypes
UplinkNASTransport,
UplinkS1cdma2000tunneling,
WriteReplaceWarningRequest,
- WriteReplaceWarningResponse
+ WriteReplaceWarningResponse,
+ ENBConfigurationTransfer,
+ MMEConfigurationTransfer
FROM S1AP-PDU-Contents
+ id-CellTrafficTrace,
id-DeactivateTrace,
id-downlinkNASTransport,
id-DownlinkS1cdma2000tunneling,
@@ -132,7 +136,9 @@ FROM S1AP-PDU-Contents
id-UEContextReleaseRequest,
id-uplinkNASTransport,
id-UplinkS1cdma2000tunneling,
- id-WriteReplaceWarning
+ id-WriteReplaceWarning,
+ id-eNBConfigurationTransfer,
+ id-MMEConfigurationTransfer
FROM S1AP-Constants;
@@ -150,11 +156,11 @@ S1AP-ELEMENTARY-PROCEDURE ::= CLASS {
&criticality Criticality DEFAULT ignore
}
WITH SYNTAX {
- INITIATING MESSAGE &InitiatingMessage
- [SUCCESSFUL OUTCOME &SuccessfulOutcome]
+ INITIATING MESSAGE &InitiatingMessage
+ [SUCCESSFUL OUTCOME &SuccessfulOutcome]
[UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome]
PROCEDURE CODE &procedureCode
- [CRITICALITY &criticality]
+ [CRITICALITY &criticality]
}
-- **************************************************************
@@ -172,19 +178,19 @@ S1AP-PDU ::= CHOICE {
InitiatingMessage ::= SEQUENCE {
procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
- criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
value S1AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
SuccessfulOutcome ::= SEQUENCE {
procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
- criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
value S1AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
UnsuccessfulOutcome ::= SEQUENCE {
procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
- criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
+ criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
value S1AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
@@ -205,9 +211,9 @@ S1AP-ELEMENTARY-PROCEDURES-CLASS-1 S1AP-ELEMENTARY-PROCEDURE ::= {
handoverPreparation |
handoverResourceAllocation |
pathSwitchRequest |
- e-RABSetup |
- e-RABModify |
- e-RABRelease |
+ e-RABSetup |
+ e-RABModify |
+ e-RABRelease |
initialContextSetup |
handoverCancel |
reset |
@@ -224,8 +230,8 @@ S1AP-ELEMENTARY-PROCEDURES-CLASS-2 S1AP-ELEMENTARY-PROCEDURE ::= {
handoverNotification |
e-RABReleaseIndication |
paging |
- downlinkNASTransport |
- initialUEMessage |
+ downlinkNASTransport |
+ initialUEMessage |
uplinkNASTransport |
errorIndication |
nASNonDeliveryIndication |
@@ -238,13 +244,16 @@ S1AP-ELEMENTARY-PROCEDURES-CLASS-2 S1AP-ELEMENTARY-PROCEDURE ::= {
deactivateTrace |
traceStart |
traceFailureIndication |
+ CellTrafficTrace |
locationReportingControl |
- locationReportingFailureIndication |
+ locationReportingFailureIndication |
locationReport |
overloadStart |
overloadStop |
eNBDirectInformationTransfer |
mMEDirectInformationTransfer |
+ eNBConfigurationTransfer |
+ mMEConfigurationTransfer |
privateMessage ,
...
}
@@ -462,6 +471,11 @@ traceFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
PROCEDURE CODE id-TraceFailureIndication
CRITICALITY ignore
}
+cellTrafficTrace S1AP-ELEMENTARY-PROCEDURE ::={
+INITIATING MESSAGE CellTrafficTrace
+PROCEDURE CODE id-CellTrafficTrace
+CRITICALITY ignore
+}
locationReportingControl S1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE LocationReportingControl
@@ -512,6 +526,19 @@ mMEDirectInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
CRITICALITY ignore
}
+eNBConfigurationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE ENBConfigurationTransfer
+ PROCEDURE CODE id-eNBConfigurationTransfer
+ CRITICALITY ignore
+}
+
+mMEConfigurationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
+ INITIATING MESSAGE MMEConfigurationTransfer
+ PROCEDURE CODE id-MMEConfigurationTransfer
+ CRITICALITY ignore
+}
+
+
privateMessage S1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PrivateMessage
PROCEDURE CODE id-PrivateMessage
@@ -521,3 +548,4 @@ privateMessage S1AP-ELEMENTARY-PROCEDURE ::= {
END
+
diff --git a/asn1/s1ap/packet-s1ap-template.c b/asn1/s1ap/packet-s1ap-template.c
index d5f2a05c14..52b5e2a7da 100644
--- a/asn1/s1ap/packet-s1ap-template.c
+++ b/asn1/s1ap/packet-s1ap-template.c
@@ -66,10 +66,13 @@ static dissector_handle_t nas_eps_handle;
/* Initialize the protocol and registered fields */
static int proto_s1ap = -1;
+static int hf_s1ap_transportLayerAddressIPv4 = -1;
+static int hf_s1ap_transportLayerAddressIPv6 = -1;
#include "packet-s1ap-hf.c"
/* Initialize the subtree pointers */
static int ett_s1ap = -1;
+static int ett_s1ap_TransportLayerAddress = -1;
#include "packet-s1ap-ett.c"
@@ -187,6 +190,14 @@ void proto_register_s1ap(void) {
/* List of fields */
static hf_register_info hf[] = {
+ { &hf_s1ap_transportLayerAddressIPv4,
+ { "transportLayerAddress(IPv4)", "s1ap.transportLayerAddressIPv4",
+ FT_IPv4, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_transportLayerAddressIPv6,
+ { "transportLayerAddress(IPv6)", "s1ap.transportLayerAddressIPv6",
+ FT_IPv4, BASE_HEX, NULL, 0,
+ NULL, HFILL }},
#include "packet-s1ap-hfarr.c"
};
@@ -194,6 +205,7 @@ void proto_register_s1ap(void) {
/* List of subtrees */
static gint *ett[] = {
&ett_s1ap,
+ &ett_s1ap_TransportLayerAddress,
#include "packet-s1ap-ettarr.c"
};
diff --git a/asn1/s1ap/s1ap.cnf b/asn1/s1ap/s1ap.cnf
index aae81b4374..98e1fa1fe7 100644
--- a/asn1/s1ap/s1ap.cnf
+++ b/asn1/s1ap/s1ap.cnf
@@ -43,7 +43,7 @@ UnsuccessfulOutcome/value unsuccessfulOutcome_value
SuccessfulOutcome/value successfulOutcome_value
-#PrivateIE-Field/id private_id
+PrivateIE-Field/id private_id
ProtocolExtensionField/id ext_id
#PrivateIE-Field/value private_value
@@ -199,6 +199,30 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
if ((tvb_length(parameter_tvb)>0)&&(nas_eps_handle))
call_dissector(nas_eps_handle,parameter_tvb,%(ACTX)s->pinfo, tree);
+#.FN_BODY TransportLayerAddress VAL_PTR = &parameter_tvb
+ tvbuff_t *parameter_tvb=NULL;
+ proto_tree *subtree;
+ gint tvb_len;
+
+%(DEFAULT_BODY)s
+ if (!parameter_tvb)
+ return offset;
+
+# The Transport Layer Address signalled in S1-AP messages is a bit string of
+# a) 32 bits in case of IPv4 address according to [6]; and
+# b) 128 bits in case of IPv6 address according to [5].
+ /* Get the length */
+ tvb_len = tvb_length(tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_TransportLayerAddress);
+ if (tvb_len==4){
+ /* IPv4 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv4, tvb, 0, tvb_len, FALSE);
+ }
+ if (tvb_len==16){
+ /* IPv6 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv6, tvb, 0, tvb_len, FALSE);
+ }
+
#.TYPE_ATTR
ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(s1ap_ProtocolIE_ID_vals)
@@ -245,7 +269,9 @@ id-WriteReplaceWarning ProcedureCode
id-eNBDirectInformationTransfer ProcedureCode
id-MMEDirectInformationTransfer ProcedureCode
id-PrivateMessage ProcedureCode
-
+id-eNBConfigurationTransfer ProcedureCode
+id-MMEConfigurationTransfer ProcedureCode
+id-CellTrafficTrace ProcedureCode
# ProtocolIE-ID
id-MME-UE-S1AP-ID ProtocolIE-ID
@@ -315,7 +341,7 @@ id-Direct-Forwarding-Path-Availability ProtocolIE-ID
id-UEIdentityIndexValue ProtocolIE-ID
id-cdma2000HOStatus ProtocolIE-ID
id-cdma2000HORequiredIndication ProtocolIE-ID
-id-TraceReference ProtocolIE-ID
+id-E-UTRAN-Trace-ID ProtocolIE-ID
id-RelativeMMECapacity ProtocolIE-ID
id-SourceMME-UE-S1AP-ID ProtocolIE-ID
id-Bearers-SubjectToStatusTransfer-Item ProtocolIE-ID
@@ -359,7 +385,15 @@ id-SRVCCHOIndication ProtocolIE-ID
id-NAS-DownlinkCount ProtocolIE-ID
id-CSG-Id ProtocolIE-ID
id-CSG-IdList ProtocolIE-ID
-
+id-SONConfigurationTransferECT ProtocolIE-ID
+id-SONConfigurationTransferMCT ProtocolIE-ID
+id-TraceCollectionEntityIPAddress ProtocolIE-ID
+id-MSClassmark2 ProtocolIE-ID
+id-MSClassmark3 ProtocolIE-ID
+id-RRC-Establishment-Cause ProtocolIE-ID
+id-NASSecurityParametersfromE-UTRAN ProtocolIE-ID
+id-NASSecurityParameterstoE-UTRAN ProtocolIE-ID
+id-DefaultPagingDRX ProtocolIE-ID
#.END
#.REGISTER_NEW
@@ -431,7 +465,6 @@ Direct-Forwarding-Path-Availability N s1ap.ies id-Direct-Forwarding-Path-Availa
UEIdentityIndexValue N s1ap.ies id-UEIdentityIndexValue
Cdma2000HOStatus N s1ap.ies id-cdma2000HOStatus
Cdma2000HORequiredIndication N s1ap.ies id-cdma2000HORequiredIndication
-TraceReference N s1ap.ies id-TraceReference
RelativeMMECapacity N s1ap.ies id-RelativeMMECapacity
MME-UE-S1AP-ID N s1ap.ies id-SourceMME-UE-S1AP-ID
Bearers-SubjectToStatusTransfer-Item N s1ap.ies id-Bearers-SubjectToStatusTransfer-Item
@@ -471,9 +504,17 @@ Inter-SystemInformationTransferType N s1ap.ies id-Inter-SystemInformationTransf
Target-ToSource-TransparentContainer N s1ap.ies id-Target-ToSource-TransparentContainer
SRVCCOperationPossible N s1ap.ies id-SRVCCOperationPossible
SRVCCHOIndication N s1ap.ies id-SRVCCHOIndication
-NAS-DownlinkCount N s1ap.ies id-NAS-DownlinkCount
CSG-Id N s1ap.ies id-CSG-Id
CSG-IdList N s1ap.ies id-CSG-IdList
+SONConfigurationTransfer N s1ap.ies id-SONConfigurationTransferECT
+SONConfigurationTransfer N s1ap.ies id-SONConfigurationTransferMCT
+TransportLayerAddress N s1ap.ies id-TraceCollectionEntityIPAddress
+MSClassmark2 N s1ap.ies id-MSClassmark2
+MSClassmark3 N s1ap.ies id-MSClassmark3
+RRC-Establishment-Cause N s1ap.ies id-RRC-Establishment-Cause
+NASSecurityParametersfromE-UTRAN N s1ap.ies id-NASSecurityParametersfromE-UTRAN
+NASSecurityParameterstoE-UTRAN N s1ap.ies id-NASSecurityParameterstoE-UTRAN
+PagingDRX N s1ap.ies id-DefaultPagingDRX
#S1AP-PROTOCOL-IES-PAIR
#RAB-SetupOrModifyItemFirst N s1ap.ies.pair.first id-RAB-SetupOrModifyItem
@@ -587,6 +628,13 @@ MMEDirectInformationTransfer N s1ap.proc.imsg id-MMEDirectInformationTransfer
PrivateMessage N s1ap.proc.imsg id-PrivateMessage
+ENBConfigurationTransfer N s1ap.proc.imsg id-eNBConfigurationTransfer
+
+MMEConfigurationTransfer N s1ap.proc.imsg id-MMEConfigurationTransfer
+
+CellTrafficTrace N s1ap.proc.imsg id-CellTrafficTrace
+
+
#.TYPE_ATTR
BitRate TYPE = FT_UINT64 DISPLAY = BASE_DEC STRINGS = NULL
#.END
diff --git a/epan/dissectors/packet-s1ap.c b/epan/dissectors/packet-s1ap.c
index cf17d56d72..5daa0c97c5 100644
--- a/epan/dissectors/packet-s1ap.c
+++ b/epan/dissectors/packet-s1ap.c
@@ -78,7 +78,7 @@ static dissector_handle_t nas_eps_handle;
#define maxNrOfCSGs 256
#define maxNrOfE_RABs 256
#define maxNrOfInterfaces 3
-#define maxnoofTAI 256
+#define maxnoofTAIs 256
#define maxnoofTACs 256
#define maxNrOfErrors 256
#define maxnoofBPLMNs 6
@@ -96,6 +96,9 @@ static dissector_handle_t nas_eps_handle;
#define maxnoofCellinTAI 65535
#define maxnoofCellinEAI 65535
#define maxnoofeNBX2TLAs 2
+#define maxnoofRATs 8
+#define maxnoofGroupIDs 65535
+#define maxnoofMMECs 256
typedef enum _ProcedureCode_enum {
id_HandoverPreparation = 0,
@@ -137,7 +140,10 @@ typedef enum _ProcedureCode_enum {
id_WriteReplaceWarning = 36,
id_eNBDirectInformationTransfer = 37,
id_MMEDirectInformationTransfer = 38,
- id_PrivateMessage = 39
+ id_PrivateMessage = 39,
+ id_eNBConfigurationTransfer = 40,
+ id_MMEConfigurationTransfer = 41,
+ id_CellTrafficTrace = 42
} ProcedureCode_enum;
typedef enum _ProtocolIE_ID_enum {
@@ -210,7 +216,7 @@ typedef enum _ProtocolIE_ID_enum {
id_UEIdentityIndexValue = 80,
id_cdma2000HOStatus = 83,
id_cdma2000HORequiredIndication = 84,
- id_TraceReference = 86,
+ id_E_UTRAN_Trace_ID = 86,
id_RelativeMMECapacity = 87,
id_SourceMME_UE_S1AP_ID = 88,
id_Bearers_SubjectToStatusTransfer_Item = 89,
@@ -252,7 +258,16 @@ typedef enum _ProtocolIE_ID_enum {
id_SRVCCHOIndication = 125,
id_NAS_DownlinkCount = 126,
id_CSG_Id = 127,
- id_CSG_IdList = 128
+ id_CSG_IdList = 128,
+ id_SONConfigurationTransferECT = 129,
+ id_SONConfigurationTransferMCT = 130,
+ id_TraceCollectionEntityIPAddress = 131,
+ id_MSClassmark2 = 132,
+ id_MSClassmark3 = 133,
+ id_RRC_Establishment_Cause = 134,
+ id_NASSecurityParametersfromE_UTRAN = 135,
+ id_NASSecurityParameterstoE_UTRAN = 136,
+ id_DefaultPagingDRX = 137
} ProtocolIE_ID_enum;
/*--- End of included file: packet-s1ap-val.h ---*/
@@ -261,6 +276,8 @@ typedef enum _ProtocolIE_ID_enum {
/* Initialize the protocol and registered fields */
static int proto_s1ap = -1;
+static int hf_s1ap_transportLayerAddressIPv4 = -1;
+static int hf_s1ap_transportLayerAddressIPv6 = -1;
/*--- Included file: packet-s1ap-hf.c ---*/
#line 1 "packet-s1ap-hf.c"
@@ -292,19 +309,25 @@ static int hf_s1ap_HandoverType_PDU = -1; /* HandoverType */
static int hf_s1ap_MessageIdentifier_PDU = -1; /* MessageIdentifier */
static int hf_s1ap_MMEname_PDU = -1; /* MMEname */
static int hf_s1ap_MME_UE_S1AP_ID_PDU = -1; /* MME_UE_S1AP_ID */
+static int hf_s1ap_MSClassmark2_PDU = -1; /* MSClassmark2 */
+static int hf_s1ap_MSClassmark3_PDU = -1; /* MSClassmark3 */
static int hf_s1ap_NAS_PDU_PDU = -1; /* NAS_PDU */
+static int hf_s1ap_NASSecurityParametersfromE_UTRAN_PDU = -1; /* NASSecurityParametersfromE_UTRAN */
+static int hf_s1ap_NASSecurityParameterstoE_UTRAN_PDU = -1; /* NASSecurityParameterstoE_UTRAN */
static int hf_s1ap_NumberofBroadcastRequest_PDU = -1; /* NumberofBroadcastRequest */
static int hf_s1ap_OverloadResponse_PDU = -1; /* OverloadResponse */
static int hf_s1ap_PagingDRX_PDU = -1; /* PagingDRX */
static int hf_s1ap_RelativeMMECapacity_PDU = -1; /* RelativeMMECapacity */
static int hf_s1ap_RequestType_PDU = -1; /* RequestType */
static int hf_s1ap_RepetitionPeriod_PDU = -1; /* RepetitionPeriod */
+static int hf_s1ap_RRC_Establishment_Cause_PDU = -1; /* RRC_Establishment_Cause */
static int hf_s1ap_E_RABInformationListItem_PDU = -1; /* E_RABInformationListItem */
static int hf_s1ap_E_RABList_PDU = -1; /* E_RABList */
static int hf_s1ap_E_RABItem_PDU = -1; /* E_RABItem */
static int hf_s1ap_SecurityKey_PDU = -1; /* SecurityKey */
static int hf_s1ap_SecurityContext_PDU = -1; /* SecurityContext */
static int hf_s1ap_SerialNumber_PDU = -1; /* SerialNumber */
+static int hf_s1ap_SONConfigurationTransfer_PDU = -1; /* SONConfigurationTransfer */
static int hf_s1ap_Source_ToTarget_TransparentContainer_PDU = -1; /* Source_ToTarget_TransparentContainer */
static int hf_s1ap_SRVCCOperationPossible_PDU = -1; /* SRVCCOperationPossible */
static int hf_s1ap_SRVCCHOIndication_PDU = -1; /* SRVCCHOIndication */
@@ -317,8 +340,8 @@ static int hf_s1ap_TAI_PDU = -1; /* TAI */
static int hf_s1ap_TargetID_PDU = -1; /* TargetID */
static int hf_s1ap_Target_ToSource_TransparentContainer_PDU = -1; /* Target_ToSource_TransparentContainer */
static int hf_s1ap_TimeToWait_PDU = -1; /* TimeToWait */
+static int hf_s1ap_TransportLayerAddress_PDU = -1; /* TransportLayerAddress */
static int hf_s1ap_TraceActivation_PDU = -1; /* TraceActivation */
-static int hf_s1ap_TraceReference_PDU = -1; /* TraceReference */
static int hf_s1ap_UEAggregateMaximumBitrate_PDU = -1; /* UEAggregateMaximumBitrate */
static int hf_s1ap_UE_S1AP_IDs_PDU = -1; /* UE_S1AP_IDs */
static int hf_s1ap_UE_associatedLogicalS1_ConnectionItem_PDU = -1; /* UE_associatedLogicalS1_ConnectionItem */
@@ -331,7 +354,6 @@ static int hf_s1ap_WarningSecurityInfo_PDU = -1; /* WarningSecurityInfo */
static int hf_s1ap_WarningMessageContents_PDU = -1; /* WarningMessageContents */
static int hf_s1ap_HandoverRequired_PDU = -1; /* HandoverRequired */
static int hf_s1ap_HandoverCommand_PDU = -1; /* HandoverCommand */
-static int hf_s1ap_NAS_DownlinkCount_PDU = -1; /* NAS_DownlinkCount */
static int hf_s1ap_E_RABSubjecttoDataForwardingList_PDU = -1; /* E_RABSubjecttoDataForwardingList */
static int hf_s1ap_E_RABDataForwardingItem_PDU = -1; /* E_RABDataForwardingItem */
static int hf_s1ap_HandoverPreparationFailure_PDU = -1; /* HandoverPreparationFailure */
@@ -411,6 +433,7 @@ static int hf_s1ap_MMEStatusTransfer_PDU = -1; /* MMEStatusTransfer */
static int hf_s1ap_TraceStart_PDU = -1; /* TraceStart */
static int hf_s1ap_TraceFailureIndication_PDU = -1; /* TraceFailureIndication */
static int hf_s1ap_DeactivateTrace_PDU = -1; /* DeactivateTrace */
+static int hf_s1ap_CellTrafficTrace_PDU = -1; /* CellTrafficTrace */
static int hf_s1ap_LocationReportingControl_PDU = -1; /* LocationReportingControl */
static int hf_s1ap_LocationReportingFailureIndication_PDU = -1; /* LocationReportingFailureIndication */
static int hf_s1ap_LocationReport_PDU = -1; /* LocationReport */
@@ -421,6 +444,8 @@ static int hf_s1ap_WriteReplaceWarningResponse_PDU = -1; /* WriteReplaceWarning
static int hf_s1ap_ENBDirectInformationTransfer_PDU = -1; /* ENBDirectInformationTransfer */
static int hf_s1ap_Inter_SystemInformationTransferType_PDU = -1; /* Inter_SystemInformationTransferType */
static int hf_s1ap_MMEDirectInformationTransfer_PDU = -1; /* MMEDirectInformationTransfer */
+static int hf_s1ap_ENBConfigurationTransfer_PDU = -1; /* ENBConfigurationTransfer */
+static int hf_s1ap_MMEConfigurationTransfer_PDU = -1; /* MMEConfigurationTransfer */
static int hf_s1ap_PrivateMessage_PDU = -1; /* PrivateMessage */
static int hf_s1ap_S1AP_PDU_PDU = -1; /* S1AP_PDU */
static int hf_s1ap_local = -1; /* INTEGER_0_65535 */
@@ -434,7 +459,7 @@ static int hf_s1ap_ProtocolExtensionContainer_item = -1; /* ProtocolExtensionFi
static int hf_s1ap_ext_id = -1; /* ProtocolExtensionID */
static int hf_s1ap_extensionValue = -1; /* T_extensionValue */
static int hf_s1ap_PrivateIE_Container_item = -1; /* PrivateIE_Field */
-static int hf_s1ap_id_01 = -1; /* PrivateIE_ID */
+static int hf_s1ap_private_id = -1; /* PrivateIE_ID */
static int hf_s1ap_value = -1; /* T_value */
static int hf_s1ap_priorityLevel = -1; /* PriorityLevel */
static int hf_s1ap_pre_emptionCapability = -1; /* Pre_emptionCapability */
@@ -459,6 +484,7 @@ static int hf_s1ap_eCGI = -1; /* EUTRAN_CGI */
static int hf_s1ap_cdma2000OneXMEID = -1; /* Cdma2000OneXMEID */
static int hf_s1ap_cdma2000OneXMSI = -1; /* Cdma2000OneXMSI */
static int hf_s1ap_cdma2000OneXPilot = -1; /* Cdma2000OneXPilot */
+static int hf_s1ap_cell_Size = -1; /* Cell_Size */
static int hf_s1ap_pLMNidentity = -1; /* PLMNidentity */
static int hf_s1ap_lAC = -1; /* LAC */
static int hf_s1ap_cI = -1; /* CI */
@@ -486,6 +512,7 @@ static int hf_s1ap_homeENB_ID = -1; /* BIT_STRING_SIZE_28 */
static int hf_s1ap_lAI = -1; /* LAI */
static int hf_s1ap_eNB_ID = -1; /* ENB_ID */
static int hf_s1ap_bearers_SubjectToStatusTransferList = -1; /* Bearers_SubjectToStatusTransferList */
+static int hf_s1ap_ENBX2TLAs_item = -1; /* TransportLayerAddress */
static int hf_s1ap_EPLMNs_item = -1; /* PLMNidentity */
static int hf_s1ap_cell_ID = -1; /* CellIdentity */
static int hf_s1ap_ForbiddenTAs_item = -1; /* ForbiddenTAs_Item */
@@ -506,14 +533,13 @@ static int hf_s1ap_equivalentPLMNs = -1; /* EPLMNs */
static int hf_s1ap_forbiddenTAs = -1; /* ForbiddenTAs */
static int hf_s1ap_forbiddenLAs = -1; /* ForbiddenLAs */
static int hf_s1ap_forbiddenInterRATs = -1; /* ForbiddenInterRATs */
-static int hf_s1ap_InterfacesToTraceList_item = -1; /* InterfacesToTraceItem */
-static int hf_s1ap_interfaceType = -1; /* InterfaceType */
-static int hf_s1ap_traceDepth = -1; /* TraceDepth */
static int hf_s1ap_e_UTRAN_Cell = -1; /* LastVisitedEUTRANCellInformation */
static int hf_s1ap_uTRAN_Cell = -1; /* LastVisitedUTRANCellInformation */
+static int hf_s1ap_gERAN_Cell = -1; /* LastVisitedGERANCellInformation */
static int hf_s1ap_global_Cell_ID = -1; /* EUTRAN_CGI */
static int hf_s1ap_cellType = -1; /* CellType */
static int hf_s1ap_time_UE_StayedInCell = -1; /* Time_UE_StayedInCell */
+static int hf_s1ap_undefined = -1; /* NULL */
static int hf_s1ap_overloadAction = -1; /* OverloadAction */
static int hf_s1ap_eventType = -1; /* EventType */
static int hf_s1ap_reportArea = -1; /* ReportArea */
@@ -527,34 +553,45 @@ static int hf_s1ap_cause = -1; /* Cause */
static int hf_s1ap_qCI = -1; /* QCI */
static int hf_s1ap_allocationRetentionPriority = -1; /* AllocationAndRetentionPriority */
static int hf_s1ap_gbrQosInformation = -1; /* GBR_QosInformation */
-static int hf_s1ap_nexthopchainingcount = -1; /* SecurityKey */
-static int hf_s1ap_nexthopparameter = -1; /* BIT_STRING_SIZE_3 */
+static int hf_s1ap_nextHopParameter = -1; /* INTEGER_0_7 */
+static int hf_s1ap_nextHopChainingCount = -1; /* SecurityKey */
+static int hf_s1ap_sONInformationRequest = -1; /* SONInformationRequest */
+static int hf_s1ap_sONInformationReply = -1; /* SONInformationReply */
+static int hf_s1ap_x2TNLConfigurationInfo = -1; /* X2TNLConfigurationInfo */
+static int hf_s1ap_targeteNB_ID = -1; /* TargeteNB_ID */
+static int hf_s1ap_sourceeNB_ID = -1; /* SourceeNB_ID */
+static int hf_s1ap_sONInformation = -1; /* SONInformation */
+static int hf_s1ap_global_ENB_ID = -1; /* Global_ENB_ID */
+static int hf_s1ap_selected_TAI = -1; /* TAI */
static int hf_s1ap_rRC_Container = -1; /* RRC_Container */
static int hf_s1ap_e_RABInformationList = -1; /* E_RABInformationList */
static int hf_s1ap_targetCell_ID = -1; /* EUTRAN_CGI */
static int hf_s1ap_subscriberProfileIDforRFP = -1; /* SubscriberProfileIDforRFP */
static int hf_s1ap_uE_HistoryInformation = -1; /* UE_HistoryInformation */
-static int hf_s1ap_ServedGUMMEIs_item = -1; /* GUMMEI */
+static int hf_s1ap_ServedGUMMEIs_item = -1; /* ServedGUMMEIsItem */
+static int hf_s1ap_servedPLMNs = -1; /* ServedPLMNs */
+static int hf_s1ap_servedGroupIDs = -1; /* ServedGroupIDs */
+static int hf_s1ap_servedMMECs = -1; /* ServedMMECs */
+static int hf_s1ap_ServedGroupIDs_item = -1; /* MME_Group_ID */
+static int hf_s1ap_ServedMMECs_item = -1; /* MME_Code */
static int hf_s1ap_ServedPLMNs_item = -1; /* PLMNidentity */
static int hf_s1ap_SupportedTAs_item = -1; /* SupportedTAs_Item */
static int hf_s1ap_tAC = -1; /* TAC */
static int hf_s1ap_broadcastPLMNs = -1; /* BPLMNs */
static int hf_s1ap_mMEC = -1; /* MME_Code */
-static int hf_s1ap_m_TMSI = -1; /* M_TMSI */
static int hf_s1ap_TAIListforWarning_item = -1; /* TAI */
static int hf_s1ap_TAI_Broadcast_item = -1; /* TAI_Broadcast_Item */
static int hf_s1ap_tAI = -1; /* TAI */
static int hf_s1ap_completedCellinTAI = -1; /* CompletedCellinTAI */
static int hf_s1ap_CompletedCellinTAI_item = -1; /* CompletedCellinTAI_Item */
-static int hf_s1ap_targeteNB_ID = -1; /* TargeteNB_ID */
static int hf_s1ap_targetRNC_ID = -1; /* TargetRNC_ID */
static int hf_s1ap_cGI = -1; /* CGI */
-static int hf_s1ap_global_ENB_ID = -1; /* Global_ENB_ID */
-static int hf_s1ap_selected_TAI = -1; /* TAI */
static int hf_s1ap_rNC_ID = -1; /* RNC_ID */
static int hf_s1ap_extendedRNC_ID = -1; /* ExtendedRNC_ID */
-static int hf_s1ap_traceReference = -1; /* TraceReference */
-static int hf_s1ap_interfacesToTraceList = -1; /* InterfacesToTraceList */
+static int hf_s1ap_e_UTRAN_Trace_ID = -1; /* E_UTRAN_Trace_ID */
+static int hf_s1ap_interfacesToTrace = -1; /* InterfacesToTrace */
+static int hf_s1ap_traceDepth = -1; /* TraceDepth */
+static int hf_s1ap_traceCollectionEntityIPAddress = -1; /* TransportLayerAddress */
static int hf_s1ap_uEaggregateMaximumBitRateDL = -1; /* BitRate */
static int hf_s1ap_uEaggregateMaximumBitRateUL = -1; /* BitRate */
static int hf_s1ap_uE_S1AP_ID_pair = -1; /* UE_S1AP_ID_pair */
@@ -568,6 +605,7 @@ static int hf_s1ap_integrityProtectionAlgorithms = -1; /* IntegrityProtectionAl
static int hf_s1ap_cellIDList = -1; /* ECGIList */
static int hf_s1ap_trackingAreaListforWarning = -1; /* TAIListforWarning */
static int hf_s1ap_emergencyAreaIDList = -1; /* EmergencyAreaIDList */
+static int hf_s1ap_eNBX2TransportLayerAddresses = -1; /* ENBX2TLAs */
static int hf_s1ap_protocolIEs = -1; /* ProtocolIE_Container */
static int hf_s1ap_dL_transportLayerAddress = -1; /* TransportLayerAddress */
static int hf_s1ap_dL_gTP_TEID = -1; /* GTP_TEID */
@@ -601,10 +639,11 @@ static int hf_s1ap_successfulOutcome_value = -1; /* SuccessfulOutcome_value */
static int hf_s1ap_unsuccessfulOutcome_value = -1; /* UnsuccessfulOutcome_value */
/*--- End of included file: packet-s1ap-hf.c ---*/
-#line 70 "packet-s1ap-template.c"
+#line 72 "packet-s1ap-template.c"
/* Initialize the subtree pointers */
static int ett_s1ap = -1;
+static int ett_s1ap_TransportLayerAddress = -1;
/*--- Included file: packet-s1ap-ett.c ---*/
@@ -626,6 +665,7 @@ static gint ett_s1ap_Cause = -1;
static gint ett_s1ap_CellID_Broadcast = -1;
static gint ett_s1ap_CellID_Broadcast_Item = -1;
static gint ett_s1ap_Cdma2000OneXSRVCCInfo = -1;
+static gint ett_s1ap_CellType = -1;
static gint ett_s1ap_CGI = -1;
static gint ett_s1ap_CSG_IdList = -1;
static gint ett_s1ap_CSG_IdList_Item = -1;
@@ -643,6 +683,7 @@ static gint ett_s1ap_ENB_ID = -1;
static gint ett_s1ap_GERAN_Cell_ID = -1;
static gint ett_s1ap_Global_ENB_ID = -1;
static gint ett_s1ap_ENB_StatusTransfer_TransparentContainer = -1;
+static gint ett_s1ap_ENBX2TLAs = -1;
static gint ett_s1ap_EPLMNs = -1;
static gint ett_s1ap_EUTRAN_CGI = -1;
static gint ett_s1ap_ForbiddenTAs = -1;
@@ -654,11 +695,10 @@ static gint ett_s1ap_ForbiddenLACs = -1;
static gint ett_s1ap_GBR_QosInformation = -1;
static gint ett_s1ap_GUMMEI = -1;
static gint ett_s1ap_HandoverRestrictionList = -1;
-static gint ett_s1ap_InterfacesToTraceList = -1;
-static gint ett_s1ap_InterfacesToTraceItem = -1;
static gint ett_s1ap_LAI = -1;
static gint ett_s1ap_LastVisitedCell_Item = -1;
static gint ett_s1ap_LastVisitedEUTRANCellInformation = -1;
+static gint ett_s1ap_LastVisitedGERANCellInformation = -1;
static gint ett_s1ap_OverloadResponse = -1;
static gint ett_s1ap_RequestType = -1;
static gint ett_s1ap_RIMTransfer = -1;
@@ -669,8 +709,15 @@ static gint ett_s1ap_E_RABList = -1;
static gint ett_s1ap_E_RABItem = -1;
static gint ett_s1ap_E_RABLevelQoSParameters = -1;
static gint ett_s1ap_SecurityContext = -1;
-static gint ett_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer = -1;
+static gint ett_s1ap_SONInformation = -1;
+static gint ett_s1ap_SONInformationReply = -1;
+static gint ett_s1ap_SONConfigurationTransfer = -1;
+static gint ett_s1ap_SourceeNB_ID = -1;
+static gint ett_s1ap_SourceeNB_ToTargeteNB_TransparentContainer = -1;
static gint ett_s1ap_ServedGUMMEIs = -1;
+static gint ett_s1ap_ServedGUMMEIsItem = -1;
+static gint ett_s1ap_ServedGroupIDs = -1;
+static gint ett_s1ap_ServedMMECs = -1;
static gint ett_s1ap_ServedPLMNs = -1;
static gint ett_s1ap_SupportedTAs = -1;
static gint ett_s1ap_SupportedTAs_Item = -1;
@@ -684,7 +731,7 @@ static gint ett_s1ap_CompletedCellinTAI_Item = -1;
static gint ett_s1ap_TargetID = -1;
static gint ett_s1ap_TargeteNB_ID = -1;
static gint ett_s1ap_TargetRNC_ID = -1;
-static gint ett_s1ap_TargeteNodeB_ToSourceeNodeB_TransparentContainer = -1;
+static gint ett_s1ap_TargeteNB_ToSourceeNB_TransparentContainer = -1;
static gint ett_s1ap_TraceActivation = -1;
static gint ett_s1ap_UEAggregateMaximumBitrate = -1;
static gint ett_s1ap_UE_S1AP_IDs = -1;
@@ -694,6 +741,7 @@ static gint ett_s1ap_UE_HistoryInformation = -1;
static gint ett_s1ap_UEPagingID = -1;
static gint ett_s1ap_UESecurityCapabilities = -1;
static gint ett_s1ap_WarningAreaList = -1;
+static gint ett_s1ap_X2TNLConfigurationInfo = -1;
static gint ett_s1ap_HandoverRequired = -1;
static gint ett_s1ap_HandoverCommand = -1;
static gint ett_s1ap_E_RABDataForwardingItem = -1;
@@ -772,6 +820,7 @@ static gint ett_s1ap_MMEStatusTransfer = -1;
static gint ett_s1ap_TraceStart = -1;
static gint ett_s1ap_TraceFailureIndication = -1;
static gint ett_s1ap_DeactivateTrace = -1;
+static gint ett_s1ap_CellTrafficTrace = -1;
static gint ett_s1ap_LocationReportingControl = -1;
static gint ett_s1ap_LocationReportingFailureIndication = -1;
static gint ett_s1ap_LocationReport = -1;
@@ -782,6 +831,8 @@ static gint ett_s1ap_WriteReplaceWarningResponse = -1;
static gint ett_s1ap_ENBDirectInformationTransfer = -1;
static gint ett_s1ap_Inter_SystemInformationTransferType = -1;
static gint ett_s1ap_MMEDirectInformationTransfer = -1;
+static gint ett_s1ap_ENBConfigurationTransfer = -1;
+static gint ett_s1ap_MMEConfigurationTransfer = -1;
static gint ett_s1ap_PrivateMessage = -1;
static gint ett_s1ap_S1AP_PDU = -1;
static gint ett_s1ap_InitiatingMessage = -1;
@@ -789,7 +840,7 @@ static gint ett_s1ap_SuccessfulOutcome = -1;
static gint ett_s1ap_UnsuccessfulOutcome = -1;
/*--- End of included file: packet-s1ap-ett.c ---*/
-#line 75 "packet-s1ap-template.c"
+#line 78 "packet-s1ap-template.c"
/* Global variables */
static guint32 ProcedureCode;
@@ -936,6 +987,9 @@ static const value_string s1ap_ProcedureCode_vals[] = {
{ id_eNBDirectInformationTransfer, "id-eNBDirectInformationTransfer" },
{ id_MMEDirectInformationTransfer, "id-MMEDirectInformationTransfer" },
{ id_PrivateMessage, "id-PrivateMessage" },
+ { id_eNBConfigurationTransfer, "id-eNBConfigurationTransfer" },
+ { id_MMEConfigurationTransfer, "id-MMEConfigurationTransfer" },
+ { id_CellTrafficTrace, "id-CellTrafficTrace" },
{ 0, NULL }
};
@@ -1035,7 +1089,7 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = {
{ id_UEIdentityIndexValue, "id-UEIdentityIndexValue" },
{ id_cdma2000HOStatus, "id-cdma2000HOStatus" },
{ id_cdma2000HORequiredIndication, "id-cdma2000HORequiredIndication" },
- { id_TraceReference, "id-TraceReference" },
+ { id_E_UTRAN_Trace_ID, "id-E-UTRAN-Trace-ID" },
{ id_RelativeMMECapacity, "id-RelativeMMECapacity" },
{ id_SourceMME_UE_S1AP_ID, "id-SourceMME-UE-S1AP-ID" },
{ id_Bearers_SubjectToStatusTransfer_Item, "id-Bearers-SubjectToStatusTransfer-Item" },
@@ -1078,6 +1132,15 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = {
{ id_NAS_DownlinkCount, "id-NAS-DownlinkCount" },
{ id_CSG_Id, "id-CSG-Id" },
{ id_CSG_IdList, "id-CSG-IdList" },
+ { id_SONConfigurationTransferECT, "id-SONConfigurationTransferECT" },
+ { id_SONConfigurationTransferMCT, "id-SONConfigurationTransferMCT" },
+ { id_TraceCollectionEntityIPAddress, "id-TraceCollectionEntityIPAddress" },
+ { id_MSClassmark2, "id-MSClassmark2" },
+ { id_MSClassmark3, "id-MSClassmark3" },
+ { id_RRC_Establishment_Cause, "id-RRC-Establishment-Cause" },
+ { id_NASSecurityParametersfromE_UTRAN, "id-NASSecurityParametersfromE-UTRAN" },
+ { id_NASSecurityParameterstoE_UTRAN, "id-NASSecurityParameterstoE-UTRAN" },
+ { id_DefaultPagingDRX, "id-DefaultPagingDRX" },
{ 0, NULL }
};
@@ -1232,7 +1295,7 @@ dissect_s1ap_T_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
static const per_sequence_t PrivateIE_Field_sequence[] = {
- { &hf_s1ap_id_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PrivateIE_ID },
+ { &hf_s1ap_private_id , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PrivateIE_ID },
{ &hf_s1ap_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_Criticality },
{ &hf_s1ap_value , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_T_value },
{ NULL, 0, 0, NULL }
@@ -1375,6 +1438,7 @@ dissect_s1ap_HFN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_
static const per_sequence_t COUNTvalue_sequence[] = {
{ &hf_s1ap_pDCP_SN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PDCP_SN },
{ &hf_s1ap_hFN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_HFN },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1488,6 +1552,7 @@ dissect_s1ap_EUTRAN_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
static const per_sequence_t CellID_Broadcast_Item_sequence[] = {
{ &hf_s1ap_eCGI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1525,9 +1590,9 @@ dissect_s1ap_TAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_
static const per_sequence_t TAI_sequence[] = {
- { &hf_s1ap_pLMNidentity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
- { &hf_s1ap_tAC , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TAC },
- { &hf_s1ap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { &hf_s1ap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
+ { &hf_s1ap_tAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAC },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1542,6 +1607,7 @@ dissect_s1ap_TAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_
static const per_sequence_t CompletedCellinTAI_Item_sequence[] = {
{ &hf_s1ap_eCGI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1562,15 +1628,16 @@ static int
dissect_s1ap_CompletedCellinTAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
ett_s1ap_CompletedCellinTAI, CompletedCellinTAI_sequence_of,
- 0, maxnoofCellinTAI);
+ 1, maxnoofCellinTAI);
return offset;
}
static const per_sequence_t TAI_Broadcast_Item_sequence[] = {
- { &hf_s1ap_tAI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
- { &hf_s1ap_completedCellinTAI, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_CompletedCellinTAI },
+ { &hf_s1ap_tAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
+ { &hf_s1ap_completedCellinTAI, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CompletedCellinTAI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1601,7 +1668,7 @@ dissect_s1ap_TAI_Broadcast(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
static int
dissect_s1ap_EmergencyAreaID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- 2, 2, FALSE, NULL);
+ 3, 3, FALSE, NULL);
return offset;
}
@@ -1609,6 +1676,7 @@ dissect_s1ap_EmergencyAreaID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
static const per_sequence_t CompletedCellinEAI_Item_sequence[] = {
{ &hf_s1ap_eCGI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1636,8 +1704,9 @@ dissect_s1ap_CompletedCellinEAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a
static const per_sequence_t EmergencyAreaID_Broadcast_Item_sequence[] = {
- { &hf_s1ap_emergencyAreaID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_EmergencyAreaID },
- { &hf_s1ap_completedCellinEAI, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_CompletedCellinEAI },
+ { &hf_s1ap_emergencyAreaID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EmergencyAreaID },
+ { &hf_s1ap_completedCellinEAI, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CompletedCellinEAI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1668,6 +1737,7 @@ static const per_sequence_t BroadcastCompletedAreaList_sequence[] = {
{ &hf_s1ap_cellID_Broadcast, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CellID_Broadcast },
{ &hf_s1ap_tAI_Broadcast , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI_Broadcast },
{ &hf_s1ap_emergencyAreaID_Broadcast, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EmergencyAreaID_Broadcast },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -1682,33 +1752,41 @@ dissect_s1ap_BroadcastCompletedAreaList(tvbuff_t *tvb _U_, int offset _U_, asn1_
static const value_string s1ap_CauseRadioNetwork_vals[] = {
{ 0, "unspecified" },
- { 1, "handover-triggered" },
- { 2, "tx2relocoverall-expiry" },
- { 3, "successful-handover" },
- { 4, "release-due-to-eutran-generated-reason" },
- { 5, "handover-cancelled" },
- { 6, "partial-handover" },
- { 7, "ho-failure-in-target-EPC-eNB-or-target-system" },
- { 8, "ho-target-not-allowed" },
- { 9, "tS1relocoverall-expiry" },
- { 10, "tS1relocprep-expiry" },
- { 11, "cell-not-available" },
- { 12, "unknown-targetID" },
- { 13, "no-radio-resources-available-in-target-cell" },
- { 14, "unknown-mme-ue-s1ap-id" },
- { 15, "unknown-enb-ue-s1ap-id" },
- { 16, "unknown-pair-ue-s1ap-id" },
- { 17, "handover-desirable-for-radio-reason" },
- { 18, "time-critical-handover" },
- { 19, "resource-optimisation-handover" },
- { 20, "reduce-load-in-serving-cell" },
- { 21, "user-inactivity" },
- { 22, "radio-connection-with-ue-lost" },
- { 23, "load-balancing-tau-required" },
- { 24, "cs-fallback-triggered" },
- { 25, "ue-not-available-for-ps-service" },
- { 26, "radio-resources-not-available" },
- { 27, "failure-in-radio-interface-procedure" },
+ { 1, "tx2relocoverall-expiry" },
+ { 2, "successful-handover" },
+ { 3, "release-due-to-eutran-generated-reason" },
+ { 4, "handover-cancelled" },
+ { 5, "partial-handover" },
+ { 6, "ho-failure-in-target-EPC-eNB-or-target-system" },
+ { 7, "ho-target-not-allowed" },
+ { 8, "tS1relocoverall-expiry" },
+ { 9, "tS1relocprep-expiry" },
+ { 10, "cell-not-available" },
+ { 11, "unknown-targetID" },
+ { 12, "no-radio-resources-available-in-target-cell" },
+ { 13, "unknown-mme-ue-s1ap-id" },
+ { 14, "unknown-enb-ue-s1ap-id" },
+ { 15, "unknown-pair-ue-s1ap-id" },
+ { 16, "handover-desirable-for-radio-reason" },
+ { 17, "time-critical-handover" },
+ { 18, "resource-optimisation-handover" },
+ { 19, "reduce-load-in-serving-cell" },
+ { 20, "user-inactivity" },
+ { 21, "radio-connection-with-ue-lost" },
+ { 22, "load-balancing-tau-required" },
+ { 23, "cs-fallback-triggered" },
+ { 24, "ue-not-available-for-ps-service" },
+ { 25, "radio-resources-not-available" },
+ { 26, "failure-in-radio-interface-procedure" },
+ { 27, "invalid-qos-combination" },
+ { 28, "interrat-redirection" },
+ { 29, "interaction-with-other-procedure" },
+ { 30, "unknown-E-RAB-ID" },
+ { 31, "multiple-E-RAB-ID-instances" },
+ { 32, "encryption-and-or-integrity-protection-algorithms-not-supported" },
+ { 33, "s1-intra-system-handover-triggered" },
+ { 34, "s1-inter-system-handover-triggered" },
+ { 35, "x2-handover-triggered" },
{ 0, NULL }
};
@@ -1716,7 +1794,7 @@ static const value_string s1ap_CauseRadioNetwork_vals[] = {
static int
dissect_s1ap_CauseRadioNetwork(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
- 28, NULL, TRUE, 0, NULL);
+ 36, NULL, TRUE, 0, NULL);
return offset;
}
@@ -1949,16 +2027,34 @@ dissect_s1ap_Cdma2000OneXRAND(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
}
-static const value_string s1ap_CellType_vals[] = {
- { 0, "ffs" },
+static const value_string s1ap_Cell_Size_vals[] = {
+ { 0, "verysmall" },
+ { 1, "small" },
+ { 2, "medium" },
+ { 3, "large" },
{ 0, NULL }
};
static int
-dissect_s1ap_CellType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_Cell_Size(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
- 1, NULL, TRUE, 0, NULL);
+ 4, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t CellType_sequence[] = {
+ { &hf_s1ap_cell_Size , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Cell_Size },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_CellType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_CellType, CellType_sequence);
return offset;
}
@@ -1995,10 +2091,11 @@ dissect_s1ap_RAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_
static const per_sequence_t CGI_sequence[] = {
- { &hf_s1ap_pLMNidentity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
- { &hf_s1ap_lAC , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_LAC },
- { &hf_s1ap_cI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_CI },
- { &hf_s1ap_rAC , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_RAC },
+ { &hf_s1ap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
+ { &hf_s1ap_lAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_LAC },
+ { &hf_s1ap_cI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CI },
+ { &hf_s1ap_rAC , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_RAC },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -2012,8 +2109,8 @@ dissect_s1ap_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_
static const value_string s1ap_CNDomain_vals[] = {
- { 0, "cs" },
- { 1, "ps" },
+ { 0, "ps" },
+ { 1, "cs" },
{ 0, NULL }
};
@@ -2046,7 +2143,7 @@ dissect_s1ap_CSFallbackIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
static int
dissect_s1ap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
- 28, 28, FALSE, NULL);
+ 27, 27, FALSE, NULL);
return offset;
}
@@ -2054,6 +2151,7 @@ dissect_s1ap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro
static const per_sequence_t CSG_IdList_Item_sequence[] = {
{ &hf_s1ap_cSG_Id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CSG_Id },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -2256,9 +2354,9 @@ dissect_s1ap_ENB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro
static const per_sequence_t LAI_sequence[] = {
- { &hf_s1ap_pLMNidentity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
- { &hf_s1ap_lAC , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_LAC },
- { &hf_s1ap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { &hf_s1ap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
+ { &hf_s1ap_lAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_LAC },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -2305,7 +2403,7 @@ dissect_s1ap_Global_ENB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
static const per_sequence_t ENB_StatusTransfer_TransparentContainer_sequence[] = {
- { &hf_s1ap_bearers_SubjectToStatusTransferList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_Bearers_SubjectToStatusTransferList },
+ { &hf_s1ap_bearers_SubjectToStatusTransferList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Bearers_SubjectToStatusTransferList },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -2364,6 +2462,52 @@ dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
static int
+dissect_s1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 203 "s1ap.cnf"
+ tvbuff_t *parameter_tvb=NULL;
+ proto_tree *subtree;
+ gint tvb_len;
+
+ offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
+ 1, 160, TRUE, &parameter_tvb);
+
+ if (!parameter_tvb)
+ return offset;
+
+ /* Get the length */
+ tvb_len = tvb_length(tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_TransportLayerAddress);
+ if (tvb_len==4){
+ /* IPv4 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv4, tvb, 0, tvb_len, FALSE);
+ }
+ if (tvb_len==16){
+ /* IPv6 */
+ proto_tree_add_item(subtree, hf_s1ap_transportLayerAddressIPv6, tvb, 0, tvb_len, FALSE);
+ }
+
+
+
+ return offset;
+}
+
+
+static const per_sequence_t ENBX2TLAs_sequence_of[1] = {
+ { &hf_s1ap_ENBX2TLAs_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TransportLayerAddress },
+};
+
+static int
+dissect_s1ap_ENBX2TLAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ENBX2TLAs, ENBX2TLAs_sequence_of,
+ 1, maxnoofeNBX2TLAs);
+
+ return offset;
+}
+
+
+
+static int
dissect_s1ap_EncryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
16, 16, TRUE, NULL);
@@ -2417,6 +2561,7 @@ static const value_string s1ap_ForbiddenInterRATs_vals[] = {
{ 0, "all" },
{ 1, "geran" },
{ 2, "utran" },
+ { 3, "cdma2000" },
{ 0, NULL }
};
@@ -2424,7 +2569,7 @@ static const value_string s1ap_ForbiddenInterRATs_vals[] = {
static int
dissect_s1ap_ForbiddenInterRATs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
- 3, NULL, TRUE, 0, NULL);
+ 4, NULL, TRUE, 0, NULL);
return offset;
}
@@ -2445,8 +2590,9 @@ dissect_s1ap_ForbiddenTACs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
static const per_sequence_t ForbiddenTAs_Item_sequence[] = {
- { &hf_s1ap_pLMN_Identity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
- { &hf_s1ap_forbiddenTACs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ForbiddenTACs },
+ { &hf_s1ap_pLMN_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
+ { &hf_s1ap_forbiddenTACs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ForbiddenTACs },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -2488,8 +2634,9 @@ dissect_s1ap_ForbiddenLACs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
static const per_sequence_t ForbiddenLAs_Item_sequence[] = {
- { &hf_s1ap_pLMN_Identity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
- { &hf_s1ap_forbiddenLACs , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ForbiddenLACs },
+ { &hf_s1ap_pLMN_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
+ { &hf_s1ap_forbiddenLACs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ForbiddenLACs },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -2639,68 +2786,48 @@ dissect_s1ap_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, as
}
-static const value_string s1ap_InterfaceType_vals[] = {
- { 0, "s1" },
- { 1, "x2" },
- { 2, "uu" },
- { 0, NULL }
-};
-
static int
-dissect_s1ap_InterfaceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
- 3, NULL, TRUE, 0, NULL);
+dissect_s1ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
+ 8, 8, FALSE, NULL);
return offset;
}
-static const value_string s1ap_TraceDepth_vals[] = {
- { 0, "minimum" },
- { 1, "medium" },
- { 2, "maximum" },
- { 3, "vendorMinimum" },
- { 4, "vendorMedium" },
- { 5, "vendorMaximum" },
- { 0, NULL }
-};
-
static int
-dissect_s1ap_TraceDepth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
- 6, NULL, TRUE, 0, NULL);
+dissect_s1ap_Time_UE_StayedInCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
+ 0U, 4095U, NULL, FALSE);
return offset;
}
-static const per_sequence_t InterfacesToTraceItem_sequence[] = {
- { &hf_s1ap_interfaceType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_InterfaceType },
- { &hf_s1ap_traceDepth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TraceDepth },
+static const per_sequence_t LastVisitedEUTRANCellInformation_sequence[] = {
+ { &hf_s1ap_global_Cell_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
+ { &hf_s1ap_cellType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CellType },
+ { &hf_s1ap_time_UE_StayedInCell, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Time_UE_StayedInCell },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
-dissect_s1ap_InterfacesToTraceItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_LastVisitedEUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
- ett_s1ap_InterfacesToTraceItem, InterfacesToTraceItem_sequence);
+ ett_s1ap_LastVisitedEUTRANCellInformation, LastVisitedEUTRANCellInformation_sequence);
return offset;
}
-static const per_sequence_t InterfacesToTraceList_sequence_of[1] = {
- { &hf_s1ap_InterfacesToTraceList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_InterfacesToTraceItem },
-};
static int
-dissect_s1ap_InterfacesToTraceList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
- ett_s1ap_InterfacesToTraceList, InterfacesToTraceList_sequence_of,
- 1, maxNrOfInterfaces);
+dissect_s1ap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ NO_BOUND, NO_BOUND, FALSE, NULL);
return offset;
}
@@ -2708,36 +2835,28 @@ dissect_s1ap_InterfacesToTraceList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
static int
-dissect_s1ap_Time_UE_StayedInCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
- 0U, 4095U, NULL, FALSE);
+dissect_s1ap_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
return offset;
}
-static const per_sequence_t LastVisitedEUTRANCellInformation_sequence[] = {
- { &hf_s1ap_global_Cell_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
- { &hf_s1ap_cellType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CellType },
- { &hf_s1ap_time_UE_StayedInCell, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Time_UE_StayedInCell },
- { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
- { NULL, 0, 0, NULL }
+static const value_string s1ap_LastVisitedGERANCellInformation_vals[] = {
+ { 0, "undefined" },
+ { 0, NULL }
};
-static int
-dissect_s1ap_LastVisitedEUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
- ett_s1ap_LastVisitedEUTRANCellInformation, LastVisitedEUTRANCellInformation_sequence);
-
- return offset;
-}
-
-
+static const per_choice_t LastVisitedGERANCellInformation_choice[] = {
+ { 0, &hf_s1ap_undefined , ASN1_EXTENSION_ROOT , dissect_s1ap_NULL },
+ { 0, NULL, 0, NULL }
+};
static int
-dissect_s1ap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- NO_BOUND, NO_BOUND, FALSE, NULL);
+dissect_s1ap_LastVisitedGERANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_LastVisitedGERANCellInformation, LastVisitedGERANCellInformation_choice,
+ NULL);
return offset;
}
@@ -2746,12 +2865,14 @@ dissect_s1ap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_,
static const value_string s1ap_LastVisitedCell_Item_vals[] = {
{ 0, "e-UTRAN-Cell" },
{ 1, "uTRAN-Cell" },
+ { 2, "gERAN-Cell" },
{ 0, NULL }
};
static const per_choice_t LastVisitedCell_Item_choice[] = {
{ 0, &hf_s1ap_e_UTRAN_Cell , ASN1_EXTENSION_ROOT , dissect_s1ap_LastVisitedEUTRANCellInformation },
{ 1, &hf_s1ap_uTRAN_Cell , ASN1_EXTENSION_ROOT , dissect_s1ap_LastVisitedUTRANCellInformation },
+ { 2, &hf_s1ap_gERAN_Cell , ASN1_EXTENSION_ROOT , dissect_s1ap_LastVisitedGERANCellInformation },
{ 0, NULL, 0, NULL }
};
@@ -2767,9 +2888,19 @@ dissect_s1ap_LastVisitedCell_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
static int
-dissect_s1ap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_L3_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- 16, 16, FALSE, NULL);
+ NO_BOUND, NO_BOUND, FALSE, NULL);
+
+ return offset;
+}
+
+
+
+static int
+dissect_s1ap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
+ 16, 16, FALSE, NULL);
return offset;
}
@@ -2778,8 +2909,8 @@ dissect_s1ap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
static int
dissect_s1ap_MMEname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- NO_BOUND, NO_BOUND, FALSE, NULL);
+ offset = dissect_per_PrintableString(tvb, offset, actx, tree, hf_index,
+ 1, 150);
return offset;
}
@@ -2807,6 +2938,26 @@ dissect_s1ap_M_TMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro
static int
+dissect_s1ap_MSClassmark2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ NO_BOUND, NO_BOUND, FALSE, NULL);
+
+ return offset;
+}
+
+
+
+static int
+dissect_s1ap_MSClassmark3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ NO_BOUND, NO_BOUND, FALSE, NULL);
+
+ return offset;
+}
+
+
+
+static int
dissect_s1ap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 194 "s1ap.cnf"
@@ -2827,6 +2978,26 @@ dissect_s1ap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
static int
+dissect_s1ap_NASSecurityParametersfromE_UTRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ NO_BOUND, NO_BOUND, FALSE, NULL);
+
+ return offset;
+}
+
+
+
+static int
+dissect_s1ap_NASSecurityParameterstoE_UTRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ NO_BOUND, NO_BOUND, FALSE, NULL);
+
+ return offset;
+}
+
+
+
+static int
dissect_s1ap_NumberofBroadcastRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 65535U, NULL, FALSE);
@@ -2845,6 +3016,16 @@ dissect_s1ap_NumberofBroadcast(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
}
+
+static int
+dissect_s1ap_OldBSS_ToNewBSS_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ NO_BOUND, NO_BOUND, FALSE, NULL);
+
+ return offset;
+}
+
+
static const value_string s1ap_OverloadAction_vals[] = {
{ 0, "reject-non-emergency-mo-dt" },
{ 1, "reject-all-rrc-cr-signalling" },
@@ -2904,7 +3085,7 @@ dissect_s1ap_PagingDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
static int
dissect_s1ap_QCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
- 1U, 256U, NULL, FALSE);
+ 0U, 255U, NULL, FALSE);
return offset;
}
@@ -2920,11 +3101,16 @@ dissect_s1ap_RelativeMMECapacity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
}
+static const value_string s1ap_ReportArea_vals[] = {
+ { 0, "ecgi" },
+ { 0, NULL }
+};
+
static int
dissect_s1ap_ReportArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- NO_BOUND, NO_BOUND, FALSE, NULL);
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 1, NULL, TRUE, 0, NULL);
return offset;
}
@@ -3022,6 +3208,25 @@ dissect_s1ap_RRC_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
}
+static const value_string s1ap_RRC_Establishment_Cause_vals[] = {
+ { 0, "emergency" },
+ { 1, "highPriorityAccess" },
+ { 2, "mt-Access" },
+ { 3, "mo-Signalling" },
+ { 4, "mo-Data" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_s1ap_RRC_Establishment_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 5, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
static const per_sequence_t E_RABInformationList_sequence_of[1] = {
{ &hf_s1ap_E_RABInformationList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer },
};
@@ -3111,17 +3316,17 @@ dissect_s1ap_SecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
static int
-dissect_s1ap_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
- 3, 3, FALSE, NULL);
+dissect_s1ap_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
+ 0U, 7U, NULL, FALSE);
return offset;
}
static const per_sequence_t SecurityContext_sequence[] = {
- { &hf_s1ap_nexthopchainingcount, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SecurityKey },
- { &hf_s1ap_nexthopparameter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BIT_STRING_SIZE_3 },
+ { &hf_s1ap_nextHopParameter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_INTEGER_0_7 },
+ { &hf_s1ap_nextHopChainingCount, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SecurityKey },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -3145,6 +3350,122 @@ dissect_s1ap_SerialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
}
+static const value_string s1ap_SONInformationRequest_vals[] = {
+ { 0, "x2TNL-Configuration-Info" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_s1ap_SONInformationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 1, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t X2TNLConfigurationInfo_sequence[] = {
+ { &hf_s1ap_eNBX2TransportLayerAddresses, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ENBX2TLAs },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_X2TNLConfigurationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_X2TNLConfigurationInfo, X2TNLConfigurationInfo_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t SONInformationReply_sequence[] = {
+ { &hf_s1ap_x2TNLConfigurationInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_X2TNLConfigurationInfo },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_SONInformationReply(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_SONInformationReply, SONInformationReply_sequence);
+
+ return offset;
+}
+
+
+static const value_string s1ap_SONInformation_vals[] = {
+ { 0, "sONInformationRequest" },
+ { 1, "sONInformationReply" },
+ { 0, NULL }
+};
+
+static const per_choice_t SONInformation_choice[] = {
+ { 0, &hf_s1ap_sONInformationRequest, ASN1_EXTENSION_ROOT , dissect_s1ap_SONInformationRequest },
+ { 1, &hf_s1ap_sONInformationReply, ASN1_EXTENSION_ROOT , dissect_s1ap_SONInformationReply },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_s1ap_SONInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_SONInformation, SONInformation_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t TargeteNB_ID_sequence[] = {
+ { &hf_s1ap_global_ENB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Global_ENB_ID },
+ { &hf_s1ap_selected_TAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_TargeteNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_TargeteNB_ID, TargeteNB_ID_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t SourceeNB_ID_sequence[] = {
+ { &hf_s1ap_global_ENB_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_Global_ENB_ID },
+ { &hf_s1ap_selected_TAI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
+ { &hf_s1ap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_SourceeNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_SourceeNB_ID, SourceeNB_ID_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t SONConfigurationTransfer_sequence[] = {
+ { &hf_s1ap_targeteNB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TargeteNB_ID },
+ { &hf_s1ap_sourceeNB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SourceeNB_ID },
+ { &hf_s1ap_sONInformation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SONInformation },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_SONConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_SONConfigurationTransfer, SONConfigurationTransfer_sequence);
+
+ return offset;
+}
+
+
static int
dissect_s1ap_Source_ToTarget_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -3220,7 +3541,7 @@ dissect_s1ap_UE_HistoryInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
}
-static const per_sequence_t SourceeNodeB_ToTargeteNodeB_TransparentContainer_sequence[] = {
+static const per_sequence_t SourceeNB_ToTargeteNB_TransparentContainer_sequence[] = {
{ &hf_s1ap_rRC_Container , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_RRC_Container },
{ &hf_s1ap_e_RABInformationList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_E_RABInformationList },
{ &hf_s1ap_targetCell_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
@@ -3231,9 +3552,9 @@ static const per_sequence_t SourceeNodeB_ToTargeteNodeB_TransparentContainer_seq
};
static int
-dissect_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_SourceeNB_ToTargeteNB_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
- ett_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer, SourceeNodeB_ToTargeteNodeB_TransparentContainer_sequence);
+ ett_s1ap_SourceeNB_ToTargeteNB_TransparentContainer, SourceeNB_ToTargeteNB_TransparentContainer_sequence);
return offset;
}
@@ -3249,29 +3570,74 @@ dissect_s1ap_SourceRNC_ToTargetRNC_TransparentContainer(tvbuff_t *tvb _U_, int o
}
-static const per_sequence_t ServedGUMMEIs_sequence_of[1] = {
- { &hf_s1ap_ServedGUMMEIs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_GUMMEI },
+static const per_sequence_t ServedPLMNs_sequence_of[1] = {
+ { &hf_s1ap_ServedPLMNs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
};
static int
-dissect_s1ap_ServedGUMMEIs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_ServedPLMNs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
- ett_s1ap_ServedGUMMEIs, ServedGUMMEIs_sequence_of,
- 1, maxnoofGUMMEIs);
+ ett_s1ap_ServedPLMNs, ServedPLMNs_sequence_of,
+ 1, maxnoofPLMNsPerMME);
return offset;
}
-static const per_sequence_t ServedPLMNs_sequence_of[1] = {
- { &hf_s1ap_ServedPLMNs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity },
+static const per_sequence_t ServedGroupIDs_sequence_of[1] = {
+ { &hf_s1ap_ServedGroupIDs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_MME_Group_ID },
};
static int
-dissect_s1ap_ServedPLMNs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_ServedGroupIDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
- ett_s1ap_ServedPLMNs, ServedPLMNs_sequence_of,
- 1, maxnoofPLMNsPerMME);
+ ett_s1ap_ServedGroupIDs, ServedGroupIDs_sequence_of,
+ 1, maxnoofGroupIDs);
+
+ return offset;
+}
+
+
+static const per_sequence_t ServedMMECs_sequence_of[1] = {
+ { &hf_s1ap_ServedMMECs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_MME_Code },
+};
+
+static int
+dissect_s1ap_ServedMMECs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ServedMMECs, ServedMMECs_sequence_of,
+ 1, maxnoofMMECs);
+
+ return offset;
+}
+
+
+static const per_sequence_t ServedGUMMEIsItem_sequence[] = {
+ { &hf_s1ap_servedPLMNs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ServedPLMNs },
+ { &hf_s1ap_servedGroupIDs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ServedGroupIDs },
+ { &hf_s1ap_servedMMECs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ServedMMECs },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_ServedGUMMEIsItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ServedGUMMEIsItem, ServedGUMMEIsItem_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t ServedGUMMEIs_sequence_of[1] = {
+ { &hf_s1ap_ServedGUMMEIs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ServedGUMMEIsItem },
+};
+
+static int
+dissect_s1ap_ServedGUMMEIs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ServedGUMMEIs, ServedGUMMEIs_sequence_of,
+ 1, maxnoofRATs);
return offset;
}
@@ -3280,6 +3646,7 @@ dissect_s1ap_ServedPLMNs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
static const per_sequence_t SupportedTAs_Item_sequence[] = {
{ &hf_s1ap_tAC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAC },
{ &hf_s1ap_broadcastPLMNs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BPLMNs },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -3308,7 +3675,7 @@ dissect_s1ap_SupportedTAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
static const per_sequence_t S_TMSI_sequence[] = {
{ &hf_s1ap_mMEC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_MME_Code },
- { &hf_s1ap_m_TMSI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_M_TMSI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -3335,27 +3702,12 @@ dissect_s1ap_TAIListforWarning(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
}
-static const per_sequence_t TargeteNB_ID_sequence[] = {
- { &hf_s1ap_global_ENB_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_Global_ENB_ID },
- { &hf_s1ap_selected_TAI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
- { &hf_s1ap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
- { NULL, 0, 0, NULL }
-};
-
-static int
-dissect_s1ap_TargeteNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
- ett_s1ap_TargeteNB_ID, TargeteNB_ID_sequence);
-
- return offset;
-}
-
-
static const per_sequence_t TargetRNC_ID_sequence[] = {
- { &hf_s1ap_lAI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_LAI },
- { &hf_s1ap_rAC , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_RAC },
- { &hf_s1ap_rNC_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_RNC_ID },
- { &hf_s1ap_extendedRNC_ID , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_ExtendedRNC_ID },
+ { &hf_s1ap_lAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_LAI },
+ { &hf_s1ap_rAC , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_RAC },
+ { &hf_s1ap_rNC_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_RNC_ID },
+ { &hf_s1ap_extendedRNC_ID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ExtendedRNC_ID },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -3392,16 +3744,16 @@ dissect_s1ap_TargetID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
}
-static const per_sequence_t TargeteNodeB_ToSourceeNodeB_TransparentContainer_sequence[] = {
+static const per_sequence_t TargeteNB_ToSourceeNB_TransparentContainer_sequence[] = {
{ &hf_s1ap_rRC_Container , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_RRC_Container },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
-dissect_s1ap_TargeteNodeB_ToSourceeNodeB_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_s1ap_TargeteNB_ToSourceeNB_TransparentContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
- ett_s1ap_TargeteNodeB_ToSourceeNodeB_TransparentContainer, TargeteNodeB_ToSourceeNodeB_TransparentContainer_sequence);
+ ett_s1ap_TargeteNB_ToSourceeNB_TransparentContainer, TargeteNB_ToSourceeNB_TransparentContainer_sequence);
return offset;
}
@@ -3459,28 +3811,40 @@ dissect_s1ap_TimeToWait(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
static int
-dissect_s1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
- 1, 160, TRUE, NULL);
+dissect_s1ap_E_UTRAN_Trace_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
+ 8, 8, FALSE, NULL);
return offset;
}
+static const value_string s1ap_TraceDepth_vals[] = {
+ { 0, "minimum" },
+ { 1, "medium" },
+ { 2, "maximum" },
+ { 3, "minimumWithoutVendorSpecificExtension" },
+ { 4, "mediumWithoutVendorSpecificExtension" },
+ { 5, "maximumWithoutVendorSpecificExtension" },
+ { 0, NULL }
+};
+
static int
-dissect_s1ap_TraceReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- 8, 8, FALSE, NULL);
+dissect_s1ap_TraceDepth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 6, NULL, TRUE, 0, NULL);
return offset;
}
static const per_sequence_t TraceActivation_sequence[] = {
- { &hf_s1ap_traceReference , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TraceReference },
- { &hf_s1ap_interfacesToTraceList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_InterfacesToTraceList },
- { &hf_s1ap_iE_Extensions , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { &hf_s1ap_e_UTRAN_Trace_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_E_UTRAN_Trace_ID },
+ { &hf_s1ap_interfacesToTrace, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_InterfacesToTrace },
+ { &hf_s1ap_traceDepth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TraceDepth },
+ { &hf_s1ap_traceCollectionEntityIPAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TransportLayerAddress },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -3510,8 +3874,9 @@ dissect_s1ap_UEAggregateMaximumBitrate(tvbuff_t *tvb _U_, int offset _U_, asn1_c
static const per_sequence_t UE_S1AP_ID_pair_sequence[] = {
- { &hf_s1ap_mME_UE_S1AP_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_MME_UE_S1AP_ID },
- { &hf_s1ap_eNB_UE_S1AP_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ENB_UE_S1AP_ID },
+ { &hf_s1ap_mME_UE_S1AP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_MME_UE_S1AP_ID },
+ { &hf_s1ap_eNB_UE_S1AP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ENB_UE_S1AP_ID },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -3668,7 +4033,7 @@ dissect_s1ap_WarningSecurityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
static int
dissect_s1ap_WarningMessageContents(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
- NO_BOUND, NO_BOUND, FALSE, NULL);
+ 1, 9600, FALSE, NULL);
return offset;
}
@@ -3720,16 +4085,6 @@ dissect_s1ap_HandoverCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
static int
-dissect_s1ap_NAS_DownlinkCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
- 4, 4, FALSE, NULL);
-
- return offset;
-}
-
-
-
-static int
dissect_s1ap_E_RABSubjecttoDataForwardingList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_s1ap_E_RAB_IE_ContainerList(tvb, offset, actx, tree, hf_index);
@@ -4314,7 +4669,7 @@ static const per_sequence_t E_RABToBeSetupItemCtxtSUReq_sequence[] = {
{ &hf_s1ap_e_RABlevelQoSParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RABLevelQoSParameters },
{ &hf_s1ap_transportLayerAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TransportLayerAddress },
{ &hf_s1ap_gTP_TEID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_GTP_TEID },
- { &hf_s1ap_nAS_PDU , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_NAS_PDU },
+ { &hf_s1ap_nAS_PDU , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_NAS_PDU },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@@ -4409,7 +4764,7 @@ static int
dissect_s1ap_TAIList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
ett_s1ap_TAIList, TAIList_sequence_of,
- 1, maxnoofTAI);
+ 1, maxnoofTAIs);
return offset;
}
@@ -4915,6 +5270,20 @@ dissect_s1ap_DeactivateTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
}
+static const per_sequence_t CellTrafficTrace_sequence[] = {
+ { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_CellTrafficTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_CellTrafficTrace, CellTrafficTrace_sequence);
+
+ return offset;
+}
+
+
static const per_sequence_t LocationReportingControl_sequence[] = {
{ &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container },
{ NULL, 0, 0, NULL }
@@ -5061,6 +5430,34 @@ dissect_s1ap_MMEDirectInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn
}
+static const per_sequence_t ENBConfigurationTransfer_sequence[] = {
+ { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_ENBConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ENBConfigurationTransfer, ENBConfigurationTransfer_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t MMEConfigurationTransfer_sequence[] = {
+ { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_MMEConfigurationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_MMEConfigurationTransfer, MMEConfigurationTransfer_sequence);
+
+ return offset;
+}
+
+
static const per_sequence_t PrivateMessage_sequence[] = {
{ &hf_s1ap_privateIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PrivateIE_Container },
{ NULL, 0, 0, NULL }
@@ -5399,6 +5796,22 @@ static int dissect_MME_UE_S1AP_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_,
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_MSClassmark2_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_MSClassmark2(tvb, offset, &asn1_ctx, tree, hf_s1ap_MSClassmark2_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
+static int dissect_MSClassmark3_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_MSClassmark3(tvb, offset, &asn1_ctx, tree, hf_s1ap_MSClassmark3_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_NAS_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -5407,6 +5820,22 @@ static int dissect_NAS_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_NASSecurityParametersfromE_UTRAN_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_NASSecurityParametersfromE_UTRAN(tvb, offset, &asn1_ctx, tree, hf_s1ap_NASSecurityParametersfromE_UTRAN_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
+static int dissect_NASSecurityParameterstoE_UTRAN_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_NASSecurityParameterstoE_UTRAN(tvb, offset, &asn1_ctx, tree, hf_s1ap_NASSecurityParameterstoE_UTRAN_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_NumberofBroadcastRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -5455,6 +5884,14 @@ static int dissect_RepetitionPeriod_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_RRC_Establishment_Cause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_RRC_Establishment_Cause(tvb, offset, &asn1_ctx, tree, hf_s1ap_RRC_Establishment_Cause_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_E_RABInformationListItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -5503,6 +5940,14 @@ static int dissect_SerialNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_SONConfigurationTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_SONConfigurationTransfer(tvb, offset, &asn1_ctx, tree, hf_s1ap_SONConfigurationTransfer_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_Source_ToTarget_TransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -5599,19 +6044,19 @@ static int dissect_TimeToWait_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pro
offset += 7; offset >>= 3;
return offset;
}
-static int dissect_TraceActivation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+static int dissect_TransportLayerAddress_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
- offset = dissect_s1ap_TraceActivation(tvb, offset, &asn1_ctx, tree, hf_s1ap_TraceActivation_PDU);
+ offset = dissect_s1ap_TransportLayerAddress(tvb, offset, &asn1_ctx, tree, hf_s1ap_TransportLayerAddress_PDU);
offset += 7; offset >>= 3;
return offset;
}
-static int dissect_TraceReference_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+static int dissect_TraceActivation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
- offset = dissect_s1ap_TraceReference(tvb, offset, &asn1_ctx, tree, hf_s1ap_TraceReference_PDU);
+ offset = dissect_s1ap_TraceActivation(tvb, offset, &asn1_ctx, tree, hf_s1ap_TraceActivation_PDU);
offset += 7; offset >>= 3;
return offset;
}
@@ -5711,14 +6156,6 @@ static int dissect_HandoverCommand_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_
offset += 7; offset >>= 3;
return offset;
}
-static int dissect_NAS_DownlinkCount_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
- int offset = 0;
- asn1_ctx_t asn1_ctx;
- asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
- offset = dissect_s1ap_NAS_DownlinkCount(tvb, offset, &asn1_ctx, tree, hf_s1ap_NAS_DownlinkCount_PDU);
- offset += 7; offset >>= 3;
- return offset;
-}
static int dissect_E_RABSubjecttoDataForwardingList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -6351,6 +6788,14 @@ static int dissect_DeactivateTrace_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_CellTrafficTrace_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_CellTrafficTrace(tvb, offset, &asn1_ctx, tree, hf_s1ap_CellTrafficTrace_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_LocationReportingControl_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -6431,6 +6876,22 @@ static int dissect_MMEDirectInformationTransfer_PDU(tvbuff_t *tvb _U_, packet_in
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_ENBConfigurationTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_ENBConfigurationTransfer(tvb, offset, &asn1_ctx, tree, hf_s1ap_ENBConfigurationTransfer_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
+static int dissect_MMEConfigurationTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_MMEConfigurationTransfer(tvb, offset, &asn1_ctx, tree, hf_s1ap_MMEConfigurationTransfer_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_PrivateMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -6450,7 +6911,7 @@ static int dissect_S1AP_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto
/*--- End of included file: packet-s1ap-fn.c ---*/
-#line 102 "packet-s1ap-template.c"
+#line 105 "packet-s1ap-template.c"
static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
@@ -6585,7 +7046,6 @@ proto_reg_handoff_s1ap(void)
dissector_add("s1ap.ies", id_UEIdentityIndexValue, new_create_dissector_handle(dissect_UEIdentityIndexValue_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_cdma2000HOStatus, new_create_dissector_handle(dissect_Cdma2000HOStatus_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_cdma2000HORequiredIndication, new_create_dissector_handle(dissect_Cdma2000HORequiredIndication_PDU, proto_s1ap));
- dissector_add("s1ap.ies", id_TraceReference, new_create_dissector_handle(dissect_TraceReference_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_RelativeMMECapacity, new_create_dissector_handle(dissect_RelativeMMECapacity_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_SourceMME_UE_S1AP_ID, new_create_dissector_handle(dissect_MME_UE_S1AP_ID_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_Bearers_SubjectToStatusTransfer_Item, new_create_dissector_handle(dissect_Bearers_SubjectToStatusTransfer_Item_PDU, proto_s1ap));
@@ -6624,9 +7084,17 @@ proto_reg_handoff_s1ap(void)
dissector_add("s1ap.ies", id_Target_ToSource_TransparentContainer, new_create_dissector_handle(dissect_Target_ToSource_TransparentContainer_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_SRVCCOperationPossible, new_create_dissector_handle(dissect_SRVCCOperationPossible_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_SRVCCHOIndication, new_create_dissector_handle(dissect_SRVCCHOIndication_PDU, proto_s1ap));
- dissector_add("s1ap.ies", id_NAS_DownlinkCount, new_create_dissector_handle(dissect_NAS_DownlinkCount_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_CSG_Id, new_create_dissector_handle(dissect_CSG_Id_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_CSG_IdList, new_create_dissector_handle(dissect_CSG_IdList_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_SONConfigurationTransferECT, new_create_dissector_handle(dissect_SONConfigurationTransfer_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_SONConfigurationTransferMCT, new_create_dissector_handle(dissect_SONConfigurationTransfer_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_TraceCollectionEntityIPAddress, new_create_dissector_handle(dissect_TransportLayerAddress_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_MSClassmark2, new_create_dissector_handle(dissect_MSClassmark2_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_MSClassmark3, new_create_dissector_handle(dissect_MSClassmark3_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_RRC_Establishment_Cause, new_create_dissector_handle(dissect_RRC_Establishment_Cause_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_NASSecurityParametersfromE_UTRAN, new_create_dissector_handle(dissect_NASSecurityParametersfromE_UTRAN_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_NASSecurityParameterstoE_UTRAN, new_create_dissector_handle(dissect_NASSecurityParameterstoE_UTRAN_PDU, proto_s1ap));
+ dissector_add("s1ap.ies", id_DefaultPagingDRX, new_create_dissector_handle(dissect_PagingDRX_PDU, proto_s1ap));
dissector_add("s1ap.proc.imsg", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverRequired_PDU, proto_s1ap));
dissector_add("s1ap.proc.sout", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverCommand_PDU, proto_s1ap));
dissector_add("s1ap.proc.uout", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverPreparationFailure_PDU, proto_s1ap));
@@ -6690,10 +7158,13 @@ proto_reg_handoff_s1ap(void)
dissector_add("s1ap.proc.imsg", id_eNBDirectInformationTransfer, new_create_dissector_handle(dissect_ENBDirectInformationTransfer_PDU, proto_s1ap));
dissector_add("s1ap.proc.imsg", id_MMEDirectInformationTransfer, new_create_dissector_handle(dissect_MMEDirectInformationTransfer_PDU, proto_s1ap));
dissector_add("s1ap.proc.imsg", id_PrivateMessage, new_create_dissector_handle(dissect_PrivateMessage_PDU, proto_s1ap));
+ dissector_add("s1ap.proc.imsg", id_eNBConfigurationTransfer, new_create_dissector_handle(dissect_ENBConfigurationTransfer_PDU, proto_s1ap));
+ dissector_add("s1ap.proc.imsg", id_MMEConfigurationTransfer, new_create_dissector_handle(dissect_MMEConfigurationTransfer_PDU, proto_s1ap));
+ dissector_add("s1ap.proc.imsg", id_CellTrafficTrace, new_create_dissector_handle(dissect_CellTrafficTrace_PDU, proto_s1ap));
/*--- End of included file: packet-s1ap-dis-tab.c ---*/
-#line 172 "packet-s1ap-template.c"
+#line 175 "packet-s1ap-template.c"
} else {
if (SctpPort != 0) {
dissector_delete("sctp.port", SctpPort, s1ap_handle);
@@ -6712,6 +7183,14 @@ void proto_register_s1ap(void) {
/* List of fields */
static hf_register_info hf[] = {
+ { &hf_s1ap_transportLayerAddressIPv4,
+ { "transportLayerAddress(IPv4)", "s1ap.transportLayerAddressIPv4",
+ FT_IPv4, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_transportLayerAddressIPv6,
+ { "transportLayerAddress(IPv6)", "s1ap.transportLayerAddressIPv6",
+ FT_IPv4, BASE_HEX, NULL, 0,
+ NULL, HFILL }},
/*--- Included file: packet-s1ap-hfarr.c ---*/
@@ -6798,7 +7277,7 @@ void proto_register_s1ap(void) {
"s1ap.ENB_UE_S1AP_ID", HFILL }},
{ &hf_s1ap_ENBname_PDU,
{ "ENBname", "s1ap.ENBname",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
"s1ap.ENBname", HFILL }},
{ &hf_s1ap_EUTRAN_CGI_PDU,
{ "EUTRAN-CGI", "s1ap.EUTRAN_CGI",
@@ -6822,16 +7301,32 @@ void proto_register_s1ap(void) {
"s1ap.MessageIdentifier", HFILL }},
{ &hf_s1ap_MMEname_PDU,
{ "MMEname", "s1ap.MMEname",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_STRING, BASE_NONE, NULL, 0,
"s1ap.MMEname", HFILL }},
{ &hf_s1ap_MME_UE_S1AP_ID_PDU,
{ "MME-UE-S1AP-ID", "s1ap.MME_UE_S1AP_ID",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.MME_UE_S1AP_ID", HFILL }},
+ { &hf_s1ap_MSClassmark2_PDU,
+ { "MSClassmark2", "s1ap.MSClassmark2",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.MSClassmark2", HFILL }},
+ { &hf_s1ap_MSClassmark3_PDU,
+ { "MSClassmark3", "s1ap.MSClassmark3",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.MSClassmark3", HFILL }},
{ &hf_s1ap_NAS_PDU_PDU,
{ "NAS-PDU", "s1ap.NAS_PDU",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.NAS_PDU", HFILL }},
+ { &hf_s1ap_NASSecurityParametersfromE_UTRAN_PDU,
+ { "NASSecurityParametersfromE-UTRAN", "s1ap.NASSecurityParametersfromE_UTRAN",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.NASSecurityParametersfromE_UTRAN", HFILL }},
+ { &hf_s1ap_NASSecurityParameterstoE_UTRAN_PDU,
+ { "NASSecurityParameterstoE-UTRAN", "s1ap.NASSecurityParameterstoE_UTRAN",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.NASSecurityParameterstoE_UTRAN", HFILL }},
{ &hf_s1ap_NumberofBroadcastRequest_PDU,
{ "NumberofBroadcastRequest", "s1ap.NumberofBroadcastRequest",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -6856,6 +7351,10 @@ void proto_register_s1ap(void) {
{ "RepetitionPeriod", "s1ap.RepetitionPeriod",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.RepetitionPeriod", HFILL }},
+ { &hf_s1ap_RRC_Establishment_Cause_PDU,
+ { "RRC-Establishment-Cause", "s1ap.RRC_Establishment_Cause",
+ FT_UINT32, BASE_DEC, VALS(s1ap_RRC_Establishment_Cause_vals), 0,
+ "s1ap.RRC_Establishment_Cause", HFILL }},
{ &hf_s1ap_E_RABInformationListItem_PDU,
{ "E-RABInformationListItem", "s1ap.E_RABInformationListItem",
FT_NONE, BASE_NONE, NULL, 0,
@@ -6880,6 +7379,10 @@ void proto_register_s1ap(void) {
{ "SerialNumber", "s1ap.SerialNumber",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.SerialNumber", HFILL }},
+ { &hf_s1ap_SONConfigurationTransfer_PDU,
+ { "SONConfigurationTransfer", "s1ap.SONConfigurationTransfer",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.SONConfigurationTransfer", HFILL }},
{ &hf_s1ap_Source_ToTarget_TransparentContainer_PDU,
{ "Source-ToTarget-TransparentContainer", "s1ap.Source_ToTarget_TransparentContainer",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -6928,14 +7431,14 @@ void proto_register_s1ap(void) {
{ "TimeToWait", "s1ap.TimeToWait",
FT_UINT32, BASE_DEC, VALS(s1ap_TimeToWait_vals), 0,
"s1ap.TimeToWait", HFILL }},
+ { &hf_s1ap_TransportLayerAddress_PDU,
+ { "TransportLayerAddress", "s1ap.TransportLayerAddress",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.TransportLayerAddress", HFILL }},
{ &hf_s1ap_TraceActivation_PDU,
{ "TraceActivation", "s1ap.TraceActivation",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.TraceActivation", HFILL }},
- { &hf_s1ap_TraceReference_PDU,
- { "TraceReference", "s1ap.TraceReference",
- FT_BYTES, BASE_HEX, NULL, 0,
- "s1ap.TraceReference", HFILL }},
{ &hf_s1ap_UEAggregateMaximumBitrate_PDU,
{ "UEAggregateMaximumBitrate", "s1ap.UEAggregateMaximumBitrate",
FT_NONE, BASE_NONE, NULL, 0,
@@ -6984,10 +7487,6 @@ void proto_register_s1ap(void) {
{ "HandoverCommand", "s1ap.HandoverCommand",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.HandoverCommand", HFILL }},
- { &hf_s1ap_NAS_DownlinkCount_PDU,
- { "NAS-DownlinkCount", "s1ap.NAS_DownlinkCount",
- FT_BYTES, BASE_HEX, NULL, 0,
- "s1ap.NAS_DownlinkCount", HFILL }},
{ &hf_s1ap_E_RABSubjecttoDataForwardingList_PDU,
{ "E-RABSubjecttoDataForwardingList", "s1ap.E_RABSubjecttoDataForwardingList",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7304,6 +7803,10 @@ void proto_register_s1ap(void) {
{ "DeactivateTrace", "s1ap.DeactivateTrace",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.DeactivateTrace", HFILL }},
+ { &hf_s1ap_CellTrafficTrace_PDU,
+ { "CellTrafficTrace", "s1ap.CellTrafficTrace",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.CellTrafficTrace", HFILL }},
{ &hf_s1ap_LocationReportingControl_PDU,
{ "LocationReportingControl", "s1ap.LocationReportingControl",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7344,6 +7847,14 @@ void proto_register_s1ap(void) {
{ "MMEDirectInformationTransfer", "s1ap.MMEDirectInformationTransfer",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.MMEDirectInformationTransfer", HFILL }},
+ { &hf_s1ap_ENBConfigurationTransfer_PDU,
+ { "ENBConfigurationTransfer", "s1ap.ENBConfigurationTransfer",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.ENBConfigurationTransfer", HFILL }},
+ { &hf_s1ap_MMEConfigurationTransfer_PDU,
+ { "MMEConfigurationTransfer", "s1ap.MMEConfigurationTransfer",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.MMEConfigurationTransfer", HFILL }},
{ &hf_s1ap_PrivateMessage_PDU,
{ "PrivateMessage", "s1ap.PrivateMessage",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7396,7 +7907,7 @@ void proto_register_s1ap(void) {
{ "PrivateIE-Container", "s1ap.PrivateIE_Container_item",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.PrivateIE_Field", HFILL }},
- { &hf_s1ap_id_01,
+ { &hf_s1ap_private_id,
{ "id", "s1ap.id",
FT_UINT32, BASE_DEC, VALS(s1ap_PrivateIE_ID_vals), 0,
"s1ap.PrivateIE_ID", HFILL }},
@@ -7496,6 +8007,10 @@ void proto_register_s1ap(void) {
{ "cdma2000OneXPilot", "s1ap.cdma2000OneXPilot",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.Cdma2000OneXPilot", HFILL }},
+ { &hf_s1ap_cell_Size,
+ { "cell-Size", "s1ap.cell_Size",
+ FT_UINT32, BASE_DEC, VALS(s1ap_Cell_Size_vals), 0,
+ "s1ap.Cell_Size", HFILL }},
{ &hf_s1ap_pLMNidentity,
{ "pLMNidentity", "s1ap.pLMNidentity",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7604,6 +8119,10 @@ void proto_register_s1ap(void) {
{ "bearers-SubjectToStatusTransferList", "s1ap.bearers_SubjectToStatusTransferList",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.Bearers_SubjectToStatusTransferList", HFILL }},
+ { &hf_s1ap_ENBX2TLAs_item,
+ { "ENBX2TLAs", "s1ap.ENBX2TLAs_item",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.TransportLayerAddress", HFILL }},
{ &hf_s1ap_EPLMNs_item,
{ "EPLMNs", "s1ap.EPLMNs_item",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7684,18 +8203,6 @@ void proto_register_s1ap(void) {
{ "forbiddenInterRATs", "s1ap.forbiddenInterRATs",
FT_UINT32, BASE_DEC, VALS(s1ap_ForbiddenInterRATs_vals), 0,
"s1ap.ForbiddenInterRATs", HFILL }},
- { &hf_s1ap_InterfacesToTraceList_item,
- { "InterfacesToTraceList", "s1ap.InterfacesToTraceList_item",
- FT_NONE, BASE_NONE, NULL, 0,
- "s1ap.InterfacesToTraceItem", HFILL }},
- { &hf_s1ap_interfaceType,
- { "interfaceType", "s1ap.interfaceType",
- FT_UINT32, BASE_DEC, VALS(s1ap_InterfaceType_vals), 0,
- "s1ap.InterfaceType", HFILL }},
- { &hf_s1ap_traceDepth,
- { "traceDepth", "s1ap.traceDepth",
- FT_UINT32, BASE_DEC, VALS(s1ap_TraceDepth_vals), 0,
- "s1ap.TraceDepth", HFILL }},
{ &hf_s1ap_e_UTRAN_Cell,
{ "e-UTRAN-Cell", "s1ap.e_UTRAN_Cell",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7704,18 +8211,26 @@ void proto_register_s1ap(void) {
{ "uTRAN-Cell", "s1ap.uTRAN_Cell",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.LastVisitedUTRANCellInformation", HFILL }},
+ { &hf_s1ap_gERAN_Cell,
+ { "gERAN-Cell", "s1ap.gERAN_Cell",
+ FT_UINT32, BASE_DEC, VALS(s1ap_LastVisitedGERANCellInformation_vals), 0,
+ "s1ap.LastVisitedGERANCellInformation", HFILL }},
{ &hf_s1ap_global_Cell_ID,
{ "global-Cell-ID", "s1ap.global_Cell_ID",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.EUTRAN_CGI", HFILL }},
{ &hf_s1ap_cellType,
{ "cellType", "s1ap.cellType",
- FT_UINT32, BASE_DEC, VALS(s1ap_CellType_vals), 0,
+ FT_NONE, BASE_NONE, NULL, 0,
"s1ap.CellType", HFILL }},
{ &hf_s1ap_time_UE_StayedInCell,
{ "time-UE-StayedInCell", "s1ap.time_UE_StayedInCell",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.Time_UE_StayedInCell", HFILL }},
+ { &hf_s1ap_undefined,
+ { "undefined", "s1ap.undefined",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.NULL", HFILL }},
{ &hf_s1ap_overloadAction,
{ "overloadAction", "s1ap.overloadAction",
FT_UINT32, BASE_DEC, VALS(s1ap_OverloadAction_vals), 0,
@@ -7726,7 +8241,7 @@ void proto_register_s1ap(void) {
"s1ap.EventType", HFILL }},
{ &hf_s1ap_reportArea,
{ "reportArea", "s1ap.reportArea",
- FT_BYTES, BASE_HEX, NULL, 0,
+ FT_UINT32, BASE_DEC, VALS(s1ap_ReportArea_vals), 0,
"s1ap.ReportArea", HFILL }},
{ &hf_s1ap_rIMInformation,
{ "rIMInformation", "s1ap.rIMInformation",
@@ -7768,14 +8283,46 @@ void proto_register_s1ap(void) {
{ "gbrQosInformation", "s1ap.gbrQosInformation",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.GBR_QosInformation", HFILL }},
- { &hf_s1ap_nexthopchainingcount,
- { "nexthopchainingcount", "s1ap.nexthopchainingcount",
+ { &hf_s1ap_nextHopParameter,
+ { "nextHopParameter", "s1ap.nextHopParameter",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "s1ap.INTEGER_0_7", HFILL }},
+ { &hf_s1ap_nextHopChainingCount,
+ { "nextHopChainingCount", "s1ap.nextHopChainingCount",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.SecurityKey", HFILL }},
- { &hf_s1ap_nexthopparameter,
- { "nexthopparameter", "s1ap.nexthopparameter",
- FT_BYTES, BASE_HEX, NULL, 0,
- "s1ap.BIT_STRING_SIZE_3", HFILL }},
+ { &hf_s1ap_sONInformationRequest,
+ { "sONInformationRequest", "s1ap.sONInformationRequest",
+ FT_UINT32, BASE_DEC, VALS(s1ap_SONInformationRequest_vals), 0,
+ "s1ap.SONInformationRequest", HFILL }},
+ { &hf_s1ap_sONInformationReply,
+ { "sONInformationReply", "s1ap.sONInformationReply",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.SONInformationReply", HFILL }},
+ { &hf_s1ap_x2TNLConfigurationInfo,
+ { "x2TNLConfigurationInfo", "s1ap.x2TNLConfigurationInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.X2TNLConfigurationInfo", HFILL }},
+ { &hf_s1ap_targeteNB_ID,
+ { "targeteNB-ID", "s1ap.targeteNB_ID",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.TargeteNB_ID", HFILL }},
+ { &hf_s1ap_sourceeNB_ID,
+ { "sourceeNB-ID", "s1ap.sourceeNB_ID",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.SourceeNB_ID", HFILL }},
+ { &hf_s1ap_sONInformation,
+ { "sONInformation", "s1ap.sONInformation",
+ FT_UINT32, BASE_DEC, VALS(s1ap_SONInformation_vals), 0,
+ "s1ap.SONInformation", HFILL }},
+ { &hf_s1ap_global_ENB_ID,
+ { "global-ENB-ID", "s1ap.global_ENB_ID",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.Global_ENB_ID", HFILL }},
+ { &hf_s1ap_selected_TAI,
+ { "selected-TAI", "s1ap.selected_TAI",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "s1ap.TAI", HFILL }},
{ &hf_s1ap_rRC_Container,
{ "rRC-Container", "s1ap.rRC_Container",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7799,7 +8346,27 @@ void proto_register_s1ap(void) {
{ &hf_s1ap_ServedGUMMEIs_item,
{ "ServedGUMMEIs", "s1ap.ServedGUMMEIs_item",
FT_NONE, BASE_NONE, NULL, 0,
- "s1ap.GUMMEI", HFILL }},
+ "s1ap.ServedGUMMEIsItem", HFILL }},
+ { &hf_s1ap_servedPLMNs,
+ { "servedPLMNs", "s1ap.servedPLMNs",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "s1ap.ServedPLMNs", HFILL }},
+ { &hf_s1ap_servedGroupIDs,
+ { "servedGroupIDs", "s1ap.servedGroupIDs",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "s1ap.ServedGroupIDs", HFILL }},
+ { &hf_s1ap_servedMMECs,
+ { "servedMMECs", "s1ap.servedMMECs",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "s1ap.ServedMMECs", HFILL }},
+ { &hf_s1ap_ServedGroupIDs_item,
+ { "ServedGroupIDs", "s1ap.ServedGroupIDs_item",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.MME_Group_ID", HFILL }},
+ { &hf_s1ap_ServedMMECs_item,
+ { "ServedMMECs", "s1ap.ServedMMECs_item",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.MME_Code", HFILL }},
{ &hf_s1ap_ServedPLMNs_item,
{ "ServedPLMNs", "s1ap.ServedPLMNs_item",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -7820,10 +8387,6 @@ void proto_register_s1ap(void) {
{ "mMEC", "s1ap.mMEC",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.MME_Code", HFILL }},
- { &hf_s1ap_m_TMSI,
- { "m-TMSI", "s1ap.m_TMSI",
- FT_BYTES, BASE_HEX, NULL, 0,
- "s1ap.M_TMSI", HFILL }},
{ &hf_s1ap_TAIListforWarning_item,
{ "TAIListforWarning", "s1ap.TAIListforWarning_item",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7844,10 +8407,6 @@ void proto_register_s1ap(void) {
{ "CompletedCellinTAI", "s1ap.CompletedCellinTAI_item",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.CompletedCellinTAI_Item", HFILL }},
- { &hf_s1ap_targeteNB_ID,
- { "targeteNB-ID", "s1ap.targeteNB_ID",
- FT_NONE, BASE_NONE, NULL, 0,
- "s1ap.TargeteNB_ID", HFILL }},
{ &hf_s1ap_targetRNC_ID,
{ "targetRNC-ID", "s1ap.targetRNC_ID",
FT_NONE, BASE_NONE, NULL, 0,
@@ -7856,14 +8415,6 @@ void proto_register_s1ap(void) {
{ "cGI", "s1ap.cGI",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.CGI", HFILL }},
- { &hf_s1ap_global_ENB_ID,
- { "global-ENB-ID", "s1ap.global_ENB_ID",
- FT_NONE, BASE_NONE, NULL, 0,
- "s1ap.Global_ENB_ID", HFILL }},
- { &hf_s1ap_selected_TAI,
- { "selected-TAI", "s1ap.selected_TAI",
- FT_NONE, BASE_NONE, NULL, 0,
- "s1ap.TAI", HFILL }},
{ &hf_s1ap_rNC_ID,
{ "rNC-ID", "s1ap.rNC_ID",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -7872,14 +8423,22 @@ void proto_register_s1ap(void) {
{ "extendedRNC-ID", "s1ap.extendedRNC_ID",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.ExtendedRNC_ID", HFILL }},
- { &hf_s1ap_traceReference,
- { "traceReference", "s1ap.traceReference",
+ { &hf_s1ap_e_UTRAN_Trace_ID,
+ { "e-UTRAN-Trace-ID", "s1ap.e_UTRAN_Trace_ID",
FT_BYTES, BASE_HEX, NULL, 0,
- "s1ap.TraceReference", HFILL }},
- { &hf_s1ap_interfacesToTraceList,
- { "interfacesToTraceList", "s1ap.interfacesToTraceList",
- FT_UINT32, BASE_DEC, NULL, 0,
- "s1ap.InterfacesToTraceList", HFILL }},
+ "s1ap.E_UTRAN_Trace_ID", HFILL }},
+ { &hf_s1ap_interfacesToTrace,
+ { "interfacesToTrace", "s1ap.interfacesToTrace",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.InterfacesToTrace", HFILL }},
+ { &hf_s1ap_traceDepth,
+ { "traceDepth", "s1ap.traceDepth",
+ FT_UINT32, BASE_DEC, VALS(s1ap_TraceDepth_vals), 0,
+ "s1ap.TraceDepth", HFILL }},
+ { &hf_s1ap_traceCollectionEntityIPAddress,
+ { "traceCollectionEntityIPAddress", "s1ap.traceCollectionEntityIPAddress",
+ FT_BYTES, BASE_HEX, NULL, 0,
+ "s1ap.TransportLayerAddress", HFILL }},
{ &hf_s1ap_uEaggregateMaximumBitRateDL,
{ "uEaggregateMaximumBitRateDL", "s1ap.uEaggregateMaximumBitRateDL",
FT_UINT64, BASE_DEC, NULL, 0,
@@ -7932,6 +8491,10 @@ void proto_register_s1ap(void) {
{ "emergencyAreaIDList", "s1ap.emergencyAreaIDList",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.EmergencyAreaIDList", HFILL }},
+ { &hf_s1ap_eNBX2TransportLayerAddresses,
+ { "eNBX2TransportLayerAddresses", "s1ap.eNBX2TransportLayerAddresses",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "s1ap.ENBX2TLAs", HFILL }},
{ &hf_s1ap_protocolIEs,
{ "protocolIEs", "s1ap.protocolIEs",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -8058,12 +8621,13 @@ void proto_register_s1ap(void) {
"s1ap.UnsuccessfulOutcome_value", HFILL }},
/*--- End of included file: packet-s1ap-hfarr.c ---*/
-#line 192 "packet-s1ap-template.c"
+#line 203 "packet-s1ap-template.c"
};
/* List of subtrees */
static gint *ett[] = {
&ett_s1ap,
+ &ett_s1ap_TransportLayerAddress,
/*--- Included file: packet-s1ap-ettarr.c ---*/
#line 1 "packet-s1ap-ettarr.c"
@@ -8084,6 +8648,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_CellID_Broadcast,
&ett_s1ap_CellID_Broadcast_Item,
&ett_s1ap_Cdma2000OneXSRVCCInfo,
+ &ett_s1ap_CellType,
&ett_s1ap_CGI,
&ett_s1ap_CSG_IdList,
&ett_s1ap_CSG_IdList_Item,
@@ -8101,6 +8666,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_GERAN_Cell_ID,
&ett_s1ap_Global_ENB_ID,
&ett_s1ap_ENB_StatusTransfer_TransparentContainer,
+ &ett_s1ap_ENBX2TLAs,
&ett_s1ap_EPLMNs,
&ett_s1ap_EUTRAN_CGI,
&ett_s1ap_ForbiddenTAs,
@@ -8112,11 +8678,10 @@ void proto_register_s1ap(void) {
&ett_s1ap_GBR_QosInformation,
&ett_s1ap_GUMMEI,
&ett_s1ap_HandoverRestrictionList,
- &ett_s1ap_InterfacesToTraceList,
- &ett_s1ap_InterfacesToTraceItem,
&ett_s1ap_LAI,
&ett_s1ap_LastVisitedCell_Item,
&ett_s1ap_LastVisitedEUTRANCellInformation,
+ &ett_s1ap_LastVisitedGERANCellInformation,
&ett_s1ap_OverloadResponse,
&ett_s1ap_RequestType,
&ett_s1ap_RIMTransfer,
@@ -8127,8 +8692,15 @@ void proto_register_s1ap(void) {
&ett_s1ap_E_RABItem,
&ett_s1ap_E_RABLevelQoSParameters,
&ett_s1ap_SecurityContext,
- &ett_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer,
+ &ett_s1ap_SONInformation,
+ &ett_s1ap_SONInformationReply,
+ &ett_s1ap_SONConfigurationTransfer,
+ &ett_s1ap_SourceeNB_ID,
+ &ett_s1ap_SourceeNB_ToTargeteNB_TransparentContainer,
&ett_s1ap_ServedGUMMEIs,
+ &ett_s1ap_ServedGUMMEIsItem,
+ &ett_s1ap_ServedGroupIDs,
+ &ett_s1ap_ServedMMECs,
&ett_s1ap_ServedPLMNs,
&ett_s1ap_SupportedTAs,
&ett_s1ap_SupportedTAs_Item,
@@ -8142,7 +8714,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_TargetID,
&ett_s1ap_TargeteNB_ID,
&ett_s1ap_TargetRNC_ID,
- &ett_s1ap_TargeteNodeB_ToSourceeNodeB_TransparentContainer,
+ &ett_s1ap_TargeteNB_ToSourceeNB_TransparentContainer,
&ett_s1ap_TraceActivation,
&ett_s1ap_UEAggregateMaximumBitrate,
&ett_s1ap_UE_S1AP_IDs,
@@ -8152,6 +8724,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_UEPagingID,
&ett_s1ap_UESecurityCapabilities,
&ett_s1ap_WarningAreaList,
+ &ett_s1ap_X2TNLConfigurationInfo,
&ett_s1ap_HandoverRequired,
&ett_s1ap_HandoverCommand,
&ett_s1ap_E_RABDataForwardingItem,
@@ -8230,6 +8803,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_TraceStart,
&ett_s1ap_TraceFailureIndication,
&ett_s1ap_DeactivateTrace,
+ &ett_s1ap_CellTrafficTrace,
&ett_s1ap_LocationReportingControl,
&ett_s1ap_LocationReportingFailureIndication,
&ett_s1ap_LocationReport,
@@ -8240,6 +8814,8 @@ void proto_register_s1ap(void) {
&ett_s1ap_ENBDirectInformationTransfer,
&ett_s1ap_Inter_SystemInformationTransferType,
&ett_s1ap_MMEDirectInformationTransfer,
+ &ett_s1ap_ENBConfigurationTransfer,
+ &ett_s1ap_MMEConfigurationTransfer,
&ett_s1ap_PrivateMessage,
&ett_s1ap_S1AP_PDU,
&ett_s1ap_InitiatingMessage,
@@ -8247,7 +8823,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_UnsuccessfulOutcome,
/*--- End of included file: packet-s1ap-ettarr.c ---*/
-#line 198 "packet-s1ap-template.c"
+#line 210 "packet-s1ap-template.c"
};
module_t *s1ap_module;