From Anders:
authorStig Bjørlykke <stig@bjorlykke.org>
Wed, 17 Jun 2009 15:02:12 +0000 (15:02 -0000)
committerStig Bjørlykke <stig@bjorlykke.org>
Wed, 17 Jun 2009 15:02:12 +0000 (15:02 -0000)
Update to June specification.

svn path=/trunk/; revision=28767

asn1/s1ap/S1AP-CommonDataTypes.asn
asn1/s1ap/S1AP-Constants.asn
asn1/s1ap/S1AP-Containers.asn
asn1/s1ap/S1AP-IEs.asn
asn1/s1ap/S1AP-PDU-Contents.asn
asn1/s1ap/S1AP-PDU-Descriptions.asn
asn1/s1ap/s1ap.cnf
epan/dissectors/packet-s1ap.c

index 505ec121c056d58da508f68f00e054066d5f523e..f08907557a78c16e8475dfdc2e70eb9f49006a02 100644 (file)
@@ -1,5 +1,5 @@
 -- $Id$
--- 3GPP TS 36.413 version 8.5.1 (2009-04)
+-- 3GPP TS 36.413 V8.6.0 (2009-06)
 -- 9.3.5       Common Definitions
 -- **************************************************************
 --
@@ -35,3 +35,4 @@ TriggeringMessage     ::= ENUMERATED { initiating-message, successful-outcome, unsuc
 END
 
 
+
index 9defdbc5a9f66a98023de3d9830f04a93d8d509b..ada265d7f7e6fbb1bf1d4fda745ad506a74e9bca 100644 (file)
@@ -1,5 +1,5 @@
 -- $Id$
--- 3GPP TS 36.413 version 8.5.1 (2009-04)
+-- 3GPP TS 36.413 V8.6.0 (2009-06)
 -- 9.3.6       Constant Definitions
 -- **************************************************************
 --
@@ -95,18 +95,16 @@ maxProtocolIEs                                              INTEGER ::= 65535
 
 maxNrOfCSGs                                                            INTEGER ::= 256
 maxNrOfE-RABs                                                  INTEGER ::= 256
-maxNrOfInterfaces                                              INTEGER ::= 3   --FFS
 maxnoofTAIs                                                            INTEGER ::= 256
 maxnoofTACs                                                            INTEGER ::= 256
 maxNrOfErrors                                                  INTEGER ::= 256
 maxnoofBPLMNs                                                  INTEGER ::= 6
-maxnoofPLMNsPerMME                                             INTEGER ::= 32 -- FFS
+maxnoofPLMNsPerMME                                             INTEGER ::= 32
 maxnoofEPLMNs                                                  INTEGER ::= 15
 maxnoofEPLMNsPlusOne                                   INTEGER ::= 16
 maxnoofForbLACs                                                        INTEGER ::= 4096                
 maxnoofForbTACs                                                        INTEGER ::= 4096                
 maxNrOfIndividualS1ConnectionsToReset  INTEGER ::= 256
-maxnoofGUMMEIs                                                 INTEGER ::= 256 -- FFS
 maxnoofCells                                                   INTEGER ::= 16          
 maxnoofTAIforWarning                                   INTEGER ::= 65535 
 maxnoofCellID                                                  INTEGER ::= 65535 
@@ -248,5 +246,8 @@ id-RRC-Establishment-Cause                                          ProtocolIE-ID ::= 134
 id-NASSecurityParametersfromE-UTRAN                            ProtocolIE-ID ::= 135
 id-NASSecurityParameterstoE-UTRAN                              ProtocolIE-ID ::= 136
 id-DefaultPagingDRX                                                            ProtocolIE-ID ::= 137
+id-Source-ToTarget-TransparentContainer-Secondary                      ProtocolIE-ID ::= 138
+id-Target-ToSource-TransparentContainer-Secondary                      ProtocolIE-ID ::= 139
 END
 
+
index f5ca56d5868b6844a33c210e41ecc7435a404452..5d85c9045f4e5d6f53724f99a9b0a3c055a86b35 100644 (file)
@@ -1,5 +1,5 @@
 -- $Id$
--- 3GPP TS 36.413 version 8.5.1 (2009-04)
+-- 3GPP TS 36.413 V8.6.0 (2009-06)
 -- 9.3.7       Container Definitions
 -- **************************************************************
 --
@@ -204,3 +204,4 @@ END
 
 
 
+
index 79d4cadaed6c34af7c27611d787292bee23c261c..46ea9fea6d0b172aea8684fe2c62c37568754245 100644 (file)
@@ -1,5 +1,5 @@
 -- $Id$
--- 3GPP TS 36.413 version 8.5.1 (2009-04)
+-- 3GPP TS 36.413 V8.6.0 (2009-06)
 -- 9.3.4       Information Element Definitions
 -- **************************************************************
 --
@@ -21,7 +21,6 @@ IMPORTS
        id-Bearers-SubjectToStatusTransfer-Item,
        maxNrOfCSGs,
        maxNrOfE-RABs,
-       maxNrOfInterfaces,
        maxNrOfErrors,
        maxnoofBPLMNs,
        maxnoofPLMNsPerMME,
@@ -31,7 +30,6 @@ IMPORTS
        maxnoofForbLACs,
        maxnoofForbTACs,
        maxnoofTACs,
-       maxnoofGUMMEIs,
        maxnoofCells,
        maxnoofCellID,
        maxnoofEmergencyAreaID,
@@ -102,15 +100,10 @@ BitRate   ::= INTEGER (0..10000000000)
 
 BPLMNs ::= SEQUENCE (SIZE(1.. maxnoofBPLMNs)) OF PLMNidentity
 
-BroadcastCompletedAreaList ::= SEQUENCE {
+BroadcastCompletedAreaList ::= CHOICE {
        cellID-Broadcast                                CellID-Broadcast,
        tAI-Broadcast                                   TAI-Broadcast,
        emergencyAreaID-Broadcast               EmergencyAreaID-Broadcast,
-       iE-Extensions                                   ProtocolExtensionContainer { {BroadcastCompletedAreaList-ExtIEs} } OPTIONAL,
-       ...
-}
-
-BroadcastCompletedAreaList-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
        ...
 }
 
@@ -184,7 +177,8 @@ CauseRadioNetwork ::= ENUMERATED {
        s1-intra-system-handover-triggered,
        s1-inter-system-handover-triggered,
        x2-handover-triggered,
-       ...
+       ...,
+       redirection-towards-1xRTT
 
 }
 
@@ -292,8 +286,10 @@ CNDomain ::= ENUMERATED {
 }
 
 CSFallbackIndicator ::= ENUMERATED { 
-       cs-fallback-required, 
-       ... 
+       cs-fallback-required,
+       cs-fallback-high-priority, 
+       ...,
+       cs-fallback-high-priority 
 }
 
 CSG-Id         ::= BIT STRING (SIZE (27))
@@ -453,6 +449,60 @@ EventType  ::= ENUMERATED {
        ...
 }
 
+E-RAB-ID               ::= INTEGER (0..15, ...)
+
+E-RABInformationList   ::= SEQUENCE (SIZE (1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { { E-RABInformationListIEs } }
+
+E-RABInformationListIEs S1AP-PROTOCOL-IES ::= {
+       { ID id-E-RABInformationListItem                        CRITICALITY ignore      TYPE E-RABInformationListItem                   PRESENCE mandatory      },
+       ...
+}
+
+E-RABInformationListItem ::= SEQUENCE {
+       e-RAB-ID                                        E-RAB-ID,
+       dL-Forwarding                                   DL-Forwarding           OPTIONAL,
+       iE-Extensions                                   ProtocolExtensionContainer { {E-RABInformationListItem-ExtIEs} }                        OPTIONAL,
+       ...
+}
+
+E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+       ...
+}
+
+E-RABList ::= SEQUENCE (SIZE(1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {E-RABItemIEs} }
+
+E-RABItemIEs   S1AP-PROTOCOL-IES ::= {
+       { ID id-E-RABItem        CRITICALITY ignore     TYPE E-RABItem  PRESENCE mandatory },
+       ...
+}
+
+E-RABItem ::= SEQUENCE {
+       e-RAB-ID                                E-RAB-ID,
+       cause                                           Cause,
+       iE-Extensions                           ProtocolExtensionContainer { {E-RABItem-ExtIEs} } OPTIONAL,
+       ...
+}
+
+E-RABItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+       ...
+}
+
+
+
+
+E-RABLevelQoSParameters ::= SEQUENCE {
+       qCI                     QCI,
+       allocationRetentionPriority                     AllocationAndRetentionPriority,
+       gbrQosInformation                                       GBR-QosInformation                      OPTIONAL,
+       iE-Extensions                                           ProtocolExtensionContainer { {E-RABQoSParameters-ExtIEs} } OPTIONAL,
+       ...
+}
+
+E-RABQoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
+       ...
+}
+
+
 EUTRAN-CGI ::= SEQUENCE {
        pLMNidentity                    PLMNidentity,
        cell-ID                                 CellIdentity,
@@ -736,7 +786,7 @@ ReportArea ::= ENUMERATED {
        ...
 }
 
-RepetitionPeriod ::= INTEGER (1..4096)
+RepetitionPeriod ::= INTEGER (0..4096)
 
 
 RNC-ID                                 ::= INTEGER (0..4095)
@@ -754,71 +804,15 @@ RRC-Establishment-Cause ::= ENUMERATED {
 
 -- S
 
-E-RAB-ID               ::= INTEGER (0..15, ...)
-
-E-RABInformationList   ::= SEQUENCE (SIZE (1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { { E-RABInformationListIEs } }
-
-E-RABInformationListIEs S1AP-PROTOCOL-IES ::= {
-       { ID id-E-RABInformationListItem                        CRITICALITY ignore      TYPE E-RABInformationListItem                   PRESENCE mandatory      },
-       ...
-}
-
-E-RABInformationListItem ::= SEQUENCE {
-       e-RAB-ID                                        E-RAB-ID,
-       dL-Forwarding                                   DL-Forwarding           OPTIONAL,
-       iE-Extensions                                   ProtocolExtensionContainer { {E-RABInformationListItem-ExtIEs} }                        OPTIONAL,
-       ...
-}
-
-E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-       ...
-}
-
-E-RABList ::= SEQUENCE (SIZE(1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {E-RABItemIEs} }
-
-E-RABItemIEs   S1AP-PROTOCOL-IES ::= {
-       { ID id-E-RABItem        CRITICALITY ignore     TYPE E-RABItem  PRESENCE mandatory },
-       ...
-}
-
-E-RABItem ::= SEQUENCE {
-       e-RAB-ID                                E-RAB-ID,
-       cause                                           Cause,
-       iE-Extensions                           ProtocolExtensionContainer { {E-RABItem-ExtIEs} } OPTIONAL,
-       ...
-}
-
-E-RABItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-       ...
-}
-
-
-
-
-E-RABLevelQoSParameters ::= SEQUENCE {
-       qCI                     QCI,
-       allocationRetentionPriority                     AllocationAndRetentionPriority,
-       gbrQosInformation                                       GBR-QosInformation                      OPTIONAL,
-       iE-Extensions                                           ProtocolExtensionContainer { {E-RABQoSParameters-ExtIEs} } OPTIONAL,
-       ...
-}
-
-E-RABQoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-       ...
-}
-
-
-
-
 
 SecurityKey    ::= BIT STRING (SIZE(256))
 
 
 
 SecurityContext ::= SEQUENCE {
-       nextHopParameter                INTEGER (0..7),
-       nextHopChainingCount                                                     SecurityKey,
-       iE-Extensions                   ProtocolExtensionContainer { { SecurityContext-ExtIEs} } OPTIONAL,
+       nextHopChainingCount            INTEGER (0..7),
+       nextHopParameter                        SecurityKey,
+       iE-Extensions                           ProtocolExtensionContainer { { SecurityContext-ExtIEs} } OPTIONAL,
        ...
 }
 
@@ -943,6 +937,7 @@ SupportedTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
 
 S-TMSI ::= SEQUENCE {
        mMEC    MME-Code,
+       m-TMSI  M-TMSI,
        iE-Extensions           ProtocolExtensionContainer { {S-TMSI-ExtIEs} } OPTIONAL,
        ...
 }
@@ -1185,3 +1180,4 @@ END
 
 
 
+
index 440b201e8caf1ddf070491111a8efdd5e11c60b9..836e233798dea6c8f037edb8f13e8104a3db4945 100644 (file)
@@ -1,5 +1,5 @@
 -- $Id$
--- 3GPP TS 36.413 version 8.5.1 (2009-04)
+-- 3GPP TS 36.413 V8.6.0 (2009-06)
 -- 9.3.3       PDU Definitions
 -- **************************************************************
 --
@@ -205,6 +205,7 @@ FROM S1AP-Containers
        id-SONConfigurationTransferECT,
        id-SONConfigurationTransferMCT,
        id-Source-ToTarget-TransparentContainer,
+       id-Source-ToTarget-TransparentContainer-Secondary,
        id-SourceMME-UE-S1AP-ID,
        id-SRVCCOperationPossible,
        id-SRVCCHOIndication,
@@ -215,6 +216,7 @@ FROM S1AP-Containers
        id-TAIItem,
        id-TAIList,
        id-Target-ToSource-TransparentContainer,
+       id-Target-ToSource-TransparentContainer-Secondary,
        id-TargetID,
        id-TimeToWait,
        id-TraceActivation,
@@ -289,10 +291,9 @@ HandoverRequiredIEs S1AP-PROTOCOL-IES ::= {
        { 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-Source-ToTarget-TransparentContainer-Secondary  CRITICALITY reject      TYPE Source-ToTarget-TransparentContainer       PRESENCE optional }|
        { ID id-MSClassmark2                                                    CRITICALITY reject      TYPE MSClassmark2                                                                       PRESENCE  conditional }|
        { ID id-MSClassmark3                                                    CRITICALITY ignore      TYPE MSClassmark3                                                                       PRESENCE conditional },
-
        ...
 }
 
@@ -317,7 +318,7 @@ HandoverCommandIEs S1AP-PROTOCOL-IES ::= {
        { 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-Target-ToSource-TransparentContainer-Secondary  CRITICALITY     reject  TYPE Target-ToSource-TransparentContainer                       PRESENCE optional }|
        { ID id-CriticalityDiagnostics                                  CRITICALITY ignore      TYPE CriticalityDiagnostics                                                             PRESENCE optional       },
        ...
 }
@@ -366,7 +367,7 @@ HandoverPreparationFailureIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- HANDOVER RESOURCE ALLOCATION ELEMTARY PROCEDURE
+-- HANDOVER RESOURCE ALLOCATION ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -502,7 +503,7 @@ HandoverFailureIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- HANDOVER NOTIFICATION ELEMTARY PROCEDURE
+-- HANDOVER NOTIFICATION ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -527,7 +528,7 @@ HandoverNotifyIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- PATH SWITCH REQUEST ELEMTARY PROCEDURE
+-- PATH SWITCH REQUEST ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -634,7 +635,7 @@ PathSwitchRequestFailureIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- HANDOVER CANCEL ELEMTARY PROCEDURE
+-- HANDOVER CANCEL ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1065,6 +1066,13 @@ InitialContextSetupFailureIEs S1AP-PROTOCOL-IES ::= {
        ...
 }
 
+-- **************************************************************
+--
+-- PAGING ELEMENTARY PROCEDURE
+--
+-- **************************************************************
+
+
 -- **************************************************************
 --
 -- Paging
@@ -1270,7 +1278,8 @@ InitialUEMessage-IEs S1AP-PROTOCOL-IES ::= {
        { ID id-EUTRAN-CGI                                      CRITICALITY ignore      TYPE EUTRAN-CGI                                         PRESENCE mandatory} |
        { ID id-RRC-Establishment-Cause         CRITICALITY ignore      TYPE RRC-Establishment-Cause            PRESENCE mandatory} |
        { ID id-S-TMSI                                          CRITICALITY reject      TYPE S-TMSI                                                     PRESENCE optional} |
-       { ID id-CSG-Id                                          CRITICALITY reject      TYPE CSG-Id                                                     PRESENCE optional},
+       { ID id-CSG-Id                                          CRITICALITY reject      TYPE CSG-Id                                                     PRESENCE optional} |
+       { ID id-GUMMEI-ID                                       CRITICALITY reject      TYPE GUMMEI                                                     PRESENCE optional},
        ...
 }
 
@@ -1592,7 +1601,7 @@ MMEConfigurationUpdateFailureIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- DOWNLINK S1 CDMA2000 TUNNELING ELEMTARY PROCEDURE
+-- DOWNLINK S1 CDMA2000 TUNNELING ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1619,7 +1628,7 @@ DownlinkS1cdma2000tunnelingIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- UPLINK S1 CDMA2000 TUNNELING ELEMTARY PROCEDURE
+-- UPLINK S1 CDMA2000 TUNNELING ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1648,7 +1657,7 @@ UplinkS1cdma2000tunnelingIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- UE CAPABILITY INFO INDICATION PROCEDURE
+-- UE CAPABILITY INFO INDICATION ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1672,7 +1681,7 @@ UECapabilityInfoIndicationIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- eNB STATUS TRANSFER
+-- eNB STATUS TRANSFER ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1697,7 +1706,7 @@ ENBStatusTransferIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- MME STATUS TRANSFER
+-- MME STATUS TRANSFER ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1722,7 +1731,7 @@ MMEStatusTransferIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- Trace Procedures
+-- TRACE ELEMENTARY PROCEDURES
 --
 -- **************************************************************
 -- **************************************************************
@@ -1788,7 +1797,7 @@ DeactivateTraceIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- CELL TRAFFIC TRACE PROCEDURE
+-- CELL TRAFFIC TRACE ELEMENTARY PROCEDURE
 --
 -- **************************************************************
 
@@ -1814,7 +1823,7 @@ CellTrafficTraceIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- LOCATION ELEMENTARY PROCEDURE
+-- LOCATION ELEMENTARY PROCEDURES
 --
 -- **************************************************************
 
@@ -1876,7 +1885,7 @@ LocationReportIEs S1AP-PROTOCOL-IES ::= {
 
 -- **************************************************************
 --
--- OVERLOAD ELEMENTARY PROCEDURE
+-- OVERLOAD ELEMENTARY PROCEDURES
 --
 -- **************************************************************
 
@@ -2074,3 +2083,4 @@ PrivateMessageIEs S1AP-PRIVATE-IES ::= {
 END
 
 
+
index 049d33de43f5dc53205b894095bbc65f555fa755..d746bae502e997b8f4fffe54239244e22b64c6fa 100644 (file)
@@ -1,5 +1,5 @@
 -- $Id$
--- 3GPP TS 36.413 version 8.5.1 (2009-04)
+-- 3GPP TS 36.413 V8.6.0 (2009-06)
 -- 9.3.2       Elementary Procedure Definitions
 -- **************************************************************
 --
@@ -549,3 +549,4 @@ END
 
 
 
+
index db46c7704f616e69cc186d42cfb1db418d9b0094..a658d31dde7a2187e9774d10731e29f02e53a2b8 100644 (file)
@@ -29,7 +29,6 @@ ProtocolError-IE-ContainerList
 E-RAB-IE-ContainerPairList
 Presence
 L3-Information
-M-TMSI
 NumberofBroadcast
 OldBSS-ToNewBSS-Information
 SourceBSS-ToTargetBSS-TransparentContainer
@@ -420,6 +419,8 @@ id-RRC-Establishment-Cause                                                  ProtocolIE-ID
 id-NASSecurityParametersfromE-UTRAN                                    ProtocolIE-ID
 id-NASSecurityParameterstoE-UTRAN                                      ProtocolIE-ID
 id-DefaultPagingDRX                                                                    ProtocolIE-ID
+id-Source-ToTarget-TransparentContainer-Secondary      ProtocolIE-ID
+id-Target-ToSource-TransparentContainer-Secondary      ProtocolIE-ID
 #.END
 
 #.REGISTER_NEW
@@ -542,13 +543,15 @@ RRC-Establishment-Cause                                   N s1ap.ies id-RRC-Establishment-Cause
 NASSecurityParametersfromE-UTRAN               N s1ap.ies id-NASSecurityParametersfromE-UTRAN
 NASSecurityParameterstoE-UTRAN                 N s1ap.ies id-NASSecurityParameterstoE-UTRAN
 PagingDRX                                                              N s1ap.ies id-DefaultPagingDRX
+Source-ToTarget-TransparentContainer   N s1ap.ies id-Source-ToTarget-TransparentContainer-Secondary
+Target-ToSource-TransparentContainer   N s1ap.ies id-Target-ToSource-TransparentContainer-Secondary
 
 #S1AP-PROTOCOL-IES-PAIR
-#RAB-SetupOrModifyItemFirst         N s1ap.ies.pair.first id-RAB-SetupOrModifyItem
-#RAB-SetupOrModifyItemSecond        N s1ap.ies.pair.second id-RAB-SetupOrModifyItem
+#RAB-SetupOrModifyItemFirst                            N s1ap.ies.pair.first id-RAB-SetupOrModifyItem
+#RAB-SetupOrModifyItemSecond                   N s1ap.ies.pair.second id-RAB-SetupOrModifyItem
 
 #NBAP-PROTOCOL-EXTENSION
-#RAB-Parameters                     N s1ap.extension id-AlternativeRABConfiguration
+#RAB-Parameters                                                        N s1ap.extension id-AlternativeRABConfiguration
 #Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf N s1ap.extension id-Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf
 
 #NBAP-ELEMENTARY-PROCEDURE
index 7e114a925c1e7fa33f5129ac03b17b21cf9519ec..69139795985dd6136646a55327615a64c8831a11 100644 (file)
@@ -1,7 +1,7 @@
 /* Do not modify this file.                                                   */
 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
 /* packet-s1ap.c                                                              */
-/* ../../tools/asn2wrs.py -p s1ap -c s1ap.cnf -s packet-s1ap-template S1AP-CommonDataTypes.asn S1AP-Constants.asn S1AP-Containers.asn S1AP-IEs.asn S1AP-PDU-Contents.asn S1AP-PDU-Descriptions.asn */
+/* ../../tools/asn2wrs.py -p s1ap -c ./s1ap.cnf -s ./packet-s1ap-template -D . S1AP-CommonDataTypes.asn S1AP-Constants.asn S1AP-Containers.asn S1AP-IEs.asn S1AP-PDU-Contents.asn S1AP-PDU-Descriptions.asn */
 
 /* Input file: packet-s1ap-template.c */
 
@@ -77,7 +77,6 @@ static dissector_handle_t nas_eps_handle;
 #define maxProtocolIEs                 65535
 #define maxNrOfCSGs                    256
 #define maxNrOfE_RABs                  256
-#define maxNrOfInterfaces              3
 #define maxnoofTAIs                    256
 #define maxnoofTACs                    256
 #define maxNrOfErrors                  256
@@ -88,7 +87,6 @@ static dissector_handle_t nas_eps_handle;
 #define maxnoofForbLACs                4096
 #define maxnoofForbTACs                4096
 #define maxNrOfIndividualS1ConnectionsToReset 256
-#define maxnoofGUMMEIs                 256
 #define maxnoofCells                   16
 #define maxnoofTAIforWarning           65535
 #define maxnoofCellID                  65535
@@ -267,7 +265,9 @@ typedef enum _ProtocolIE_ID_enum {
   id_RRC_Establishment_Cause = 134,
   id_NASSecurityParametersfromE_UTRAN = 135,
   id_NASSecurityParameterstoE_UTRAN = 136,
-  id_DefaultPagingDRX = 137
+  id_DefaultPagingDRX = 137,
+  id_Source_ToTarget_TransparentContainer_Secondary = 138,
+  id_Target_ToSource_TransparentContainer_Secondary = 139
 } ProtocolIE_ID_enum;
 
 /*--- End of included file: packet-s1ap-val.h ---*/
@@ -302,6 +302,9 @@ static int hf_s1ap_Global_ENB_ID_PDU = -1;        /* Global_ENB_ID */
 static int hf_s1ap_ENB_StatusTransfer_TransparentContainer_PDU = -1;  /* ENB_StatusTransfer_TransparentContainer */
 static int hf_s1ap_ENB_UE_S1AP_ID_PDU = -1;       /* ENB_UE_S1AP_ID */
 static int hf_s1ap_ENBname_PDU = -1;              /* ENBname */
+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_EUTRAN_CGI_PDU = -1;           /* EUTRAN_CGI */
 static int hf_s1ap_GUMMEI_PDU = -1;               /* GUMMEI */
 static int hf_s1ap_HandoverRestrictionList_PDU = -1;  /* HandoverRestrictionList */
@@ -321,9 +324,6 @@ 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 */
@@ -517,6 +517,12 @@ 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_dL_Forwarding = -1;            /* DL_Forwarding */
+static int hf_s1ap_E_RABList_item = -1;           /* ProtocolIE_SingleContainer */
+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_cell_ID = -1;                  /* CellIdentity */
 static int hf_s1ap_ForbiddenTAs_item = -1;        /* ForbiddenTAs_Item */
 static int hf_s1ap_pLMN_Identity = -1;            /* PLMNidentity */
@@ -549,14 +555,8 @@ static int hf_s1ap_reportArea = -1;               /* ReportArea */
 static int hf_s1ap_rIMInformation = -1;           /* RIMInformation */
 static int hf_s1ap_rIMRoutingAddress = -1;        /* RIMRoutingAddress */
 static int hf_s1ap_gERAN_Cell_ID = -1;            /* GERAN_Cell_ID */
-static int hf_s1ap_dL_Forwarding = -1;            /* DL_Forwarding */
-static int hf_s1ap_E_RABList_item = -1;           /* ProtocolIE_SingleContainer */
-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_nextHopParameter = -1;         /* INTEGER_0_7 */
-static int hf_s1ap_nextHopChainingCount = -1;     /* SecurityKey */
+static int hf_s1ap_nextHopChainingCount = -1;     /* INTEGER_0_7 */
+static int hf_s1ap_nextHopParameter = -1;         /* SecurityKey */
 static int hf_s1ap_sONInformationRequest = -1;    /* SONInformationRequest */
 static int hf_s1ap_sONInformationReply = -1;      /* SONInformationReply */
 static int hf_s1ap_x2TNLConfigurationInfo = -1;   /* X2TNLConfigurationInfo */
@@ -576,6 +576,7 @@ 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 */
@@ -681,6 +682,10 @@ 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_E_RABInformationListItem = -1;
+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_EUTRAN_CGI = -1;
 static gint ett_s1ap_ForbiddenTAs = -1;
 static gint ett_s1ap_ForbiddenTAs_Item = -1;
@@ -699,10 +704,6 @@ static gint ett_s1ap_OverloadResponse = -1;
 static gint ett_s1ap_RequestType = -1;
 static gint ett_s1ap_RIMTransfer = -1;
 static gint ett_s1ap_RIMRoutingAddress = -1;
-static gint ett_s1ap_E_RABInformationListItem = -1;
-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_SONInformation = -1;
 static gint ett_s1ap_SONInformationReply = -1;
@@ -974,7 +975,7 @@ dissect_s1ap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                             0U, 255U, &ProcedureCode, FALSE);
 
-#line 85 "s1ap.cnf"
+#line 84 "s1ap.cnf"
        if (check_col(actx->pinfo->cinfo, COL_INFO))
        col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
                    val_to_str(ProcedureCode, s1ap_ProcedureCode_vals,
@@ -1116,6 +1117,8 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = {
   { id_NASSecurityParametersfromE_UTRAN, "id-NASSecurityParametersfromE-UTRAN" },
   { id_NASSecurityParameterstoE_UTRAN, "id-NASSecurityParameterstoE-UTRAN" },
   { id_DefaultPagingDRX, "id-DefaultPagingDRX" },
+  { id_Source_ToTarget_TransparentContainer_Secondary, "id-Source-ToTarget-TransparentContainer-Secondary" },
+  { id_Target_ToSource_TransparentContainer_Secondary, "id-Target-ToSource-TransparentContainer-Secondary" },
   { 0, NULL }
 };
 
@@ -1125,7 +1128,7 @@ dissect_s1ap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                             0U, 65535U, &ProtocolIE_ID, FALSE);
 
-#line 68 "s1ap.cnf"
+#line 67 "s1ap.cnf"
   if (tree) {
     proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(s1ap_ProtocolIE_ID_vals), "unknown (%d)"));
   }
@@ -1205,7 +1208,7 @@ static const per_sequence_t ProtocolIE_ContainerList_sequence_of[1] = {
 
 static int
 dissect_s1ap_ProtocolIE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 107 "s1ap.cnf"
+#line 106 "s1ap.cnf"
   static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
     { "lowerBound", ASN1_PAR_INTEGER },
     { "upperBound", ASN1_PAR_INTEGER },
@@ -1468,7 +1471,7 @@ dissect_s1ap_BitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
 
 static int
 dissect_s1ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 169 "s1ap.cnf"
+#line 168 "s1ap.cnf"
   tvbuff_t *parameter_tvb=NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@@ -1708,18 +1711,25 @@ dissect_s1ap_EmergencyAreaID_Broadcast(tvbuff_t *tvb _U_, int offset _U_, asn1_c
 }
 
 
-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 }
+static const value_string s1ap_BroadcastCompletedAreaList_vals[] = {
+  {   0, "cellID-Broadcast" },
+  {   1, "tAI-Broadcast" },
+  {   2, "emergencyAreaID-Broadcast" },
+  { 0, NULL }
+};
+
+static const per_choice_t BroadcastCompletedAreaList_choice[] = {
+  {   0, &hf_s1ap_cellID_Broadcast, ASN1_EXTENSION_ROOT    , dissect_s1ap_CellID_Broadcast },
+  {   1, &hf_s1ap_tAI_Broadcast  , ASN1_EXTENSION_ROOT    , dissect_s1ap_TAI_Broadcast },
+  {   2, &hf_s1ap_emergencyAreaID_Broadcast, ASN1_EXTENSION_ROOT    , dissect_s1ap_EmergencyAreaID_Broadcast },
+  { 0, NULL, 0, NULL }
 };
 
 static int
 dissect_s1ap_BroadcastCompletedAreaList(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_BroadcastCompletedAreaList, BroadcastCompletedAreaList_sequence);
+  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+                                 ett_s1ap_BroadcastCompletedAreaList, BroadcastCompletedAreaList_choice,
+                                 NULL);
 
   return offset;
 }
@@ -1762,6 +1772,7 @@ static const value_string s1ap_CauseRadioNetwork_vals[] = {
   {  33, "s1-intra-system-handover-triggered" },
   {  34, "s1-inter-system-handover-triggered" },
   {  35, "x2-handover-triggered" },
+  {  36, "redirection-towards-1xRTT" },
   { 0, NULL }
 };
 
@@ -1769,7 +1780,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,
-                                     36, NULL, TRUE, 0, NULL);
+                                     36, NULL, TRUE, 1, NULL);
 
   return offset;
 }
@@ -2101,6 +2112,8 @@ dissect_s1ap_CNDomain(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
 
 static const value_string s1ap_CSFallbackIndicator_vals[] = {
   {   0, "cs-fallback-required" },
+  {   1, "cs-fallback-high-priority" },
+  {   2, "cs-fallback-high-priority" },
   { 0, NULL }
 };
 
@@ -2108,7 +2121,7 @@ static const value_string s1ap_CSFallbackIndicator_vals[] = {
 static int
 dissect_s1ap_CSFallbackIndicator(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);
+                                     2, NULL, TRUE, 1, NULL);
 
   return offset;
 }
@@ -2405,7 +2418,7 @@ dissect_s1ap_ENB_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 
 static int
 dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 182 "s1ap.cnf"
+#line 181 "s1ap.cnf"
   tvbuff_t *parameter_tvb=NULL;
   int length;
   int p_offset;
@@ -2438,7 +2451,7 @@ 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 217 "s1ap.cnf"
+#line 216 "s1ap.cnf"
   tvbuff_t *parameter_tvb=NULL;
   proto_tree *subtree;
   gint tvb_len;
@@ -2521,6 +2534,97 @@ dissect_s1ap_EventType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 }
 
 
+static const per_sequence_t E_RABInformationListItem_sequence[] = {
+  { &hf_s1ap_e_RAB_ID       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
+  { &hf_s1ap_dL_Forwarding  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_DL_Forwarding },
+  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
+  { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_E_RABInformationListItem(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_E_RABInformationListItem, E_RABInformationListItem_sequence);
+
+  return offset;
+}
+
+
+static const per_sequence_t E_RABList_sequence_of[1] = {
+  { &hf_s1ap_E_RABList_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer },
+};
+
+static int
+dissect_s1ap_E_RABList(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_E_RABList, E_RABList_sequence_of,
+                                                  1, maxNrOfE_RABs, FALSE);
+
+  return offset;
+}
+
+
+static const per_sequence_t E_RABItem_sequence[] = {
+  { &hf_s1ap_e_RAB_ID       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
+  { &hf_s1ap_cause          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_Cause },
+  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
+  { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_E_RABItem(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_E_RABItem, E_RABItem_sequence);
+
+  return offset;
+}
+
+
+
+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,
+                                                            0U, 255U, NULL, FALSE);
+
+  return offset;
+}
+
+
+static const per_sequence_t GBR_QosInformation_sequence[] = {
+  { &hf_s1ap_e_RAB_MaximumBitrateDL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
+  { &hf_s1ap_e_RAB_MaximumBitrateUL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
+  { &hf_s1ap_e_RAB_GuaranteedBitrateDL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
+  { &hf_s1ap_e_RAB_GuaranteedBitrateUL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
+  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
+  { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_GBR_QosInformation(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_GBR_QosInformation, GBR_QosInformation_sequence);
+
+  return offset;
+}
+
+
+static const per_sequence_t E_RABLevelQoSParameters_sequence[] = {
+  { &hf_s1ap_qCI            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_QCI },
+  { &hf_s1ap_allocationRetentionPriority, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_AllocationAndRetentionPriority },
+  { &hf_s1ap_gbrQosInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_GBR_QosInformation },
+  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
+  { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_E_RABLevelQoSParameters(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_E_RABLevelQoSParameters, E_RABLevelQoSParameters_sequence);
+
+  return offset;
+}
+
+
 
 static int
 dissect_s1ap_ExtendedRNC_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -2637,24 +2741,6 @@ dissect_s1ap_ForbiddenLAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
 }
 
 
-static const per_sequence_t GBR_QosInformation_sequence[] = {
-  { &hf_s1ap_e_RAB_MaximumBitrateDL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
-  { &hf_s1ap_e_RAB_MaximumBitrateUL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
-  { &hf_s1ap_e_RAB_GuaranteedBitrateDL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
-  { &hf_s1ap_e_RAB_GuaranteedBitrateUL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
-  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
-  { NULL, 0, 0, NULL }
-};
-
-static int
-dissect_s1ap_GBR_QosInformation(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_GBR_QosInformation, GBR_QosInformation_sequence);
-
-  return offset;
-}
-
-
 
 static int
 dissect_s1ap_GTP_TEID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -2891,6 +2977,16 @@ dissect_s1ap_MME_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 
 
 
+static int
+dissect_s1ap_M_TMSI(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,
+                                       4, 4, FALSE, NULL);
+
+  return offset;
+}
+
+
+
 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,
@@ -2913,7 +3009,7 @@ dissect_s1ap_MSClassmark3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
 
 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 208 "s1ap.cnf"
+#line 207 "s1ap.cnf"
 
   tvbuff_t *parameter_tvb=NULL;
   
@@ -3016,16 +3112,6 @@ 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,
-                                                            0U, 255U, NULL, FALSE);
-
-  return offset;
-}
-
-
-
 static int
 dissect_s1ap_RelativeMMECapacity(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,
@@ -3116,7 +3202,7 @@ dissect_s1ap_RIMTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 static int
 dissect_s1ap_RepetitionPeriod(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, 4096U, NULL, FALSE);
+                                                            0U, 4096U, NULL, FALSE);
 
   return offset;
 }
@@ -3151,69 +3237,6 @@ dissect_s1ap_RRC_Establishment_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx
 }
 
 
-static const per_sequence_t E_RABInformationListItem_sequence[] = {
-  { &hf_s1ap_e_RAB_ID       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
-  { &hf_s1ap_dL_Forwarding  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_DL_Forwarding },
-  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
-  { NULL, 0, 0, NULL }
-};
-
-static int
-dissect_s1ap_E_RABInformationListItem(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_E_RABInformationListItem, E_RABInformationListItem_sequence);
-
-  return offset;
-}
-
-
-static const per_sequence_t E_RABList_sequence_of[1] = {
-  { &hf_s1ap_E_RABList_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer },
-};
-
-static int
-dissect_s1ap_E_RABList(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_E_RABList, E_RABList_sequence_of,
-                                                  1, maxNrOfE_RABs, FALSE);
-
-  return offset;
-}
-
-
-static const per_sequence_t E_RABItem_sequence[] = {
-  { &hf_s1ap_e_RAB_ID       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
-  { &hf_s1ap_cause          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_Cause },
-  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
-  { NULL, 0, 0, NULL }
-};
-
-static int
-dissect_s1ap_E_RABItem(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_E_RABItem, E_RABItem_sequence);
-
-  return offset;
-}
-
-
-static const per_sequence_t E_RABLevelQoSParameters_sequence[] = {
-  { &hf_s1ap_qCI            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_QCI },
-  { &hf_s1ap_allocationRetentionPriority, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_AllocationAndRetentionPriority },
-  { &hf_s1ap_gbrQosInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_GBR_QosInformation },
-  { &hf_s1ap_iE_Extensions  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_s1ap_ProtocolExtensionContainer },
-  { NULL, 0, 0, NULL }
-};
-
-static int
-dissect_s1ap_E_RABLevelQoSParameters(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_E_RABLevelQoSParameters, E_RABLevelQoSParameters_sequence);
-
-  return offset;
-}
-
-
 
 static int
 dissect_s1ap_SecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -3235,8 +3258,8 @@ dissect_s1ap_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 
 
 static const per_sequence_t SecurityContext_sequence[] = {
-  { &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_nextHopChainingCount, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_s1ap_INTEGER_0_7 },
+  { &hf_s1ap_nextHopParameter, 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 }
 };
@@ -3532,6 +3555,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 }
 };
@@ -3864,7 +3888,7 @@ dissect_s1ap_WarningMessageContents(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_
 
 static int
 dissect_s1ap_E_RAB_IE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 134 "s1ap.cnf"
+#line 133 "s1ap.cnf"
   asn1_stack_frame_push(actx, "ProtocolIE-ContainerList");
   asn1_param_push_integer(actx, 1);
   asn1_param_push_integer(actx, maxNrOfE_RABs);
@@ -4698,7 +4722,7 @@ static const per_sequence_t DownlinkNASTransport_sequence[] = {
 
 static int
 dissect_s1ap_DownlinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 244 "s1ap.cnf"
+#line 243 "s1ap.cnf"
        /* Set the direction of the message */
        actx->pinfo->link_dir=P2P_DIR_DL;
 
@@ -4717,7 +4741,7 @@ static const per_sequence_t InitialUEMessage_sequence[] = {
 
 static int
 dissect_s1ap_InitialUEMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 240 "s1ap.cnf"
+#line 239 "s1ap.cnf"
        /* Set the direction of the message */
        actx->pinfo->link_dir=P2P_DIR_UL;
 
@@ -4736,7 +4760,7 @@ static const per_sequence_t UplinkNASTransport_sequence[] = {
 
 static int
 dissect_s1ap_UplinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 248 "s1ap.cnf"
+#line 247 "s1ap.cnf"
        /* Set the direction of the message */
        actx->pinfo->link_dir=P2P_DIR_UL;
        
@@ -5577,6 +5601,30 @@ static int dissect_ENBname_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_
   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;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+  offset = dissect_s1ap_E_RABInformationListItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABInformationListItem_PDU);
+  offset += 7; offset >>= 3;
+  return offset;
+}
+static int dissect_E_RABList_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_E_RABList(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABList_PDU);
+  offset += 7; offset >>= 3;
+  return offset;
+}
+static int dissect_E_RABItem_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_E_RABItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABItem_PDU);
+  offset += 7; offset >>= 3;
+  return offset;
+}
 static int dissect_EUTRAN_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   int offset = 0;
   asn1_ctx_t asn1_ctx;
@@ -5729,30 +5777,6 @@ static int dissect_RRC_Establishment_Cause_PDU(tvbuff_t *tvb _U_, packet_info *p
   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;
-  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
-  offset = dissect_s1ap_E_RABInformationListItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABInformationListItem_PDU);
-  offset += 7; offset >>= 3;
-  return offset;
-}
-static int dissect_E_RABList_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_E_RABList(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABList_PDU);
-  offset += 7; offset >>= 3;
-  return offset;
-}
-static int dissect_E_RABItem_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_E_RABItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABItem_PDU);
-  offset += 7; offset >>= 3;
-  return offset;
-}
 static int dissect_SecurityKey_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
   int offset = 0;
   asn1_ctx_t asn1_ctx;
@@ -6958,6 +6982,8 @@ proto_reg_handoff_s1ap(void)
   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.ies", id_Source_ToTarget_TransparentContainer_Secondary, new_create_dissector_handle(dissect_Source_ToTarget_TransparentContainer_PDU, proto_s1ap));
+  dissector_add("s1ap.ies", id_Target_ToSource_TransparentContainer_Secondary, new_create_dissector_handle(dissect_Target_ToSource_TransparentContainer_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));
@@ -7064,7 +7090,7 @@ void proto_register_s1ap(void) {
         "s1ap.Bearers_SubjectToStatusTransfer_Item", HFILL }},
     { &hf_s1ap_BroadcastCompletedAreaList_PDU,
       { "BroadcastCompletedAreaList", "s1ap.BroadcastCompletedAreaList",
-        FT_NONE, BASE_NONE, NULL, 0,
+        FT_UINT32, BASE_DEC, VALS(s1ap_BroadcastCompletedAreaList_vals), 0,
         "s1ap.BroadcastCompletedAreaList", HFILL }},
     { &hf_s1ap_Cause_PDU,
       { "Cause", "s1ap.Cause",
@@ -7142,6 +7168,18 @@ void proto_register_s1ap(void) {
       { "ENBname", "s1ap.ENBname",
         FT_STRING, BASE_NONE, NULL, 0,
         "s1ap.ENBname", HFILL }},
+    { &hf_s1ap_E_RABInformationListItem_PDU,
+      { "E-RABInformationListItem", "s1ap.E_RABInformationListItem",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "s1ap.E_RABInformationListItem", HFILL }},
+    { &hf_s1ap_E_RABList_PDU,
+      { "E-RABList", "s1ap.E_RABList",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        "s1ap.E_RABList", HFILL }},
+    { &hf_s1ap_E_RABItem_PDU,
+      { "E-RABItem", "s1ap.E_RABItem",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "s1ap.E_RABItem", HFILL }},
     { &hf_s1ap_EUTRAN_CGI_PDU,
       { "EUTRAN-CGI", "s1ap.EUTRAN_CGI",
         FT_NONE, BASE_NONE, NULL, 0,
@@ -7218,18 +7256,6 @@ void proto_register_s1ap(void) {
       { "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,
-        "s1ap.E_RABInformationListItem", HFILL }},
-    { &hf_s1ap_E_RABList_PDU,
-      { "E-RABList", "s1ap.E_RABList",
-        FT_UINT32, BASE_DEC, NULL, 0,
-        "s1ap.E_RABList", HFILL }},
-    { &hf_s1ap_E_RABItem_PDU,
-      { "E-RABItem", "s1ap.E_RABItem",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "s1ap.E_RABItem", HFILL }},
     { &hf_s1ap_SecurityKey_PDU,
       { "SecurityKey", "s1ap.SecurityKey",
         FT_BYTES, BASE_HEX, NULL, 0,
@@ -8002,6 +8028,30 @@ void proto_register_s1ap(void) {
       { "PLMNidentity", "s1ap.PLMNidentity",
         FT_BYTES, BASE_HEX, NULL, 0,
         "s1ap.PLMNidentity", HFILL }},
+    { &hf_s1ap_dL_Forwarding,
+      { "dL-Forwarding", "s1ap.dL_Forwarding",
+        FT_UINT32, BASE_DEC, VALS(s1ap_DL_Forwarding_vals), 0,
+        "s1ap.DL_Forwarding", HFILL }},
+    { &hf_s1ap_E_RABList_item,
+      { "ProtocolIE-SingleContainer", "s1ap.ProtocolIE_SingleContainer",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "s1ap.ProtocolIE_SingleContainer", HFILL }},
+    { &hf_s1ap_cause,
+      { "cause", "s1ap.cause",
+        FT_UINT32, BASE_DEC, VALS(s1ap_Cause_vals), 0,
+        "s1ap.Cause", HFILL }},
+    { &hf_s1ap_qCI,
+      { "qCI", "s1ap.qCI",
+        FT_UINT32, BASE_DEC, NULL, 0,
+        "s1ap.QCI", HFILL }},
+    { &hf_s1ap_allocationRetentionPriority,
+      { "allocationRetentionPriority", "s1ap.allocationRetentionPriority",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "s1ap.AllocationAndRetentionPriority", HFILL }},
+    { &hf_s1ap_gbrQosInformation,
+      { "gbrQosInformation", "s1ap.gbrQosInformation",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "s1ap.GBR_QosInformation", HFILL }},
     { &hf_s1ap_cell_ID,
       { "cell-ID", "s1ap.cell_ID",
         FT_BYTES, BASE_HEX, NULL, 0,
@@ -8130,36 +8180,12 @@ void proto_register_s1ap(void) {
       { "gERAN-Cell-ID", "s1ap.gERAN_Cell_ID",
         FT_NONE, BASE_NONE, NULL, 0,
         "s1ap.GERAN_Cell_ID", HFILL }},
-    { &hf_s1ap_dL_Forwarding,
-      { "dL-Forwarding", "s1ap.dL_Forwarding",
-        FT_UINT32, BASE_DEC, VALS(s1ap_DL_Forwarding_vals), 0,
-        "s1ap.DL_Forwarding", HFILL }},
-    { &hf_s1ap_E_RABList_item,
-      { "ProtocolIE-SingleContainer", "s1ap.ProtocolIE_SingleContainer",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "s1ap.ProtocolIE_SingleContainer", HFILL }},
-    { &hf_s1ap_cause,
-      { "cause", "s1ap.cause",
-        FT_UINT32, BASE_DEC, VALS(s1ap_Cause_vals), 0,
-        "s1ap.Cause", HFILL }},
-    { &hf_s1ap_qCI,
-      { "qCI", "s1ap.qCI",
+    { &hf_s1ap_nextHopChainingCount,
+      { "nextHopChainingCount", "s1ap.nextHopChainingCount",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "s1ap.QCI", HFILL }},
-    { &hf_s1ap_allocationRetentionPriority,
-      { "allocationRetentionPriority", "s1ap.allocationRetentionPriority",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "s1ap.AllocationAndRetentionPriority", HFILL }},
-    { &hf_s1ap_gbrQosInformation,
-      { "gbrQosInformation", "s1ap.gbrQosInformation",
-        FT_NONE, BASE_NONE, NULL, 0,
-        "s1ap.GBR_QosInformation", HFILL }},
+        "s1ap.INTEGER_0_7", HFILL }},
     { &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_sONInformationRequest,
@@ -8238,6 +8264,10 @@ 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,
       { "TAI", "s1ap.TAI",
         FT_NONE, BASE_NONE, NULL, 0,
@@ -8515,6 +8545,10 @@ void proto_register_s1ap(void) {
     &ett_s1ap_ENB_StatusTransfer_TransparentContainer,
     &ett_s1ap_ENBX2TLAs,
     &ett_s1ap_EPLMNs,
+    &ett_s1ap_E_RABInformationListItem,
+    &ett_s1ap_E_RABList,
+    &ett_s1ap_E_RABItem,
+    &ett_s1ap_E_RABLevelQoSParameters,
     &ett_s1ap_EUTRAN_CGI,
     &ett_s1ap_ForbiddenTAs,
     &ett_s1ap_ForbiddenTAs_Item,
@@ -8533,10 +8567,6 @@ void proto_register_s1ap(void) {
     &ett_s1ap_RequestType,
     &ett_s1ap_RIMTransfer,
     &ett_s1ap_RIMRoutingAddress,
-    &ett_s1ap_E_RABInformationListItem,
-    &ett_s1ap_E_RABList,
-    &ett_s1ap_E_RABItem,
-    &ett_s1ap_E_RABLevelQoSParameters,
     &ett_s1ap_SecurityContext,
     &ett_s1ap_SONInformation,
     &ett_s1ap_SONInformationReply,