diff --git a/asn1/s1ap/S1AP-CommonDataTypes.asn b/asn1/s1ap/S1AP-CommonDataTypes.asn index 923b7506a4..27ee7bae36 100644 --- a/asn1/s1ap/S1AP-CommonDataTypes.asn +++ b/asn1/s1ap/S1AP-CommonDataTypes.asn @@ -1,5 +1,5 @@ -- $Id$ --- 3GPP TS 36.413 V8.2.0 (2008-06) +-- 3GPP TS 36.413 V8.3.0 (2008-09 -- 9.3.5 Common Definitions -- ************************************************************** -- @@ -34,3 +34,4 @@ TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuc END + diff --git a/asn1/s1ap/S1AP-Constants.asn b/asn1/s1ap/S1AP-Constants.asn index 45360c97ad..6e3d8004fe 100644 --- a/asn1/s1ap/S1AP-Constants.asn +++ b/asn1/s1ap/S1AP-Constants.asn @@ -1,5 +1,5 @@ -- $Id$ --- 3GPP TS 36.413 V8.2.0 (2008-06) +-- 3GPP TS 36.413 V8.3.0 (2008-09) -- 9.3.6 Constant Definitions -- ************************************************************** -- @@ -68,6 +68,8 @@ id-MMEConfigurationUpdate ProcedureCode ::= 30 id-LocationReportingControl ProcedureCode ::= 31 id-LocationReportingFailureIndication ProcedureCode ::= 32 id-LocationReport ProcedureCode ::= 33 +id-OverloadStart ProcedureCode ::= 34 +id-OverloadStop ProcedureCode ::= 35 -- ************************************************************** -- @@ -93,9 +95,10 @@ maxnoofBPLMNs INTEGER ::= 6 maxnoofPLMNsPerMME INTEGER ::= 32 -- FFS maxnoofEPLMNs INTEGER ::= 15 maxnoofEPLMNsPlusOne INTEGER ::= 16 -maxnoofForbLACs INTEGER ::= 256 -- FFS Value to be checked -maxnoofForbTACs INTEGER ::= 256 -- FFS Value to be checked +maxnoofForbLACs INTEGER ::= 4096 +maxnoofForbTACs INTEGER ::= 4096 maxNrOfIndividualS1ConnectionsToReset INTEGER ::= 256 +maxnoofGUMMEIs INTEGER ::= 256 -- FFS @@ -159,18 +162,16 @@ id-SAEBearerSetupItemCtxtSURes ProtocolIE-ID ::= 50 id-SAEBearerSetupListCtxtSURes ProtocolIE-ID ::= 51 id-SAEBearerToBeSetupItemCtxtSUReq ProtocolIE-ID ::= 52 id-SAEBearerToBeSetupListHOReq ProtocolIE-ID ::= 53 -id-GERANtoLTEHOInformationReq ProtocolIE-ID ::= 54 id-GERANtoLTEHOInformationRes ProtocolIE-ID ::= 55 -id-UTRANtoLTEHOInformationReq ProtocolIE-ID ::= 56 id-UTRANtoLTEHOInformationRes ProtocolIE-ID ::= 57 id-CriticalityDiagnostics ProtocolIE-ID ::= 58 -id-ENB-Global-ID ProtocolIE-ID ::= 59 +id-Global-ENB-ID ProtocolIE-ID ::= 59 id-eNBname ProtocolIE-ID ::= 60 id-MMEname ProtocolIE-ID ::= 61 id-ServedPLMNs ProtocolIE-ID ::= 63 id-SupportedTAs ProtocolIE-ID ::= 64 id-TimeToWait ProtocolIE-ID ::= 65 -id-aggregateMaximumBitrate ProtocolIE-ID ::= 66 +id-uEaggregateMaximumBitrate ProtocolIE-ID ::= 66 id-TAI ProtocolIE-ID ::= 67 id-SAEBearerReleaseListBearerRelComp ProtocolIE-ID ::= 69 id-cdma2000PDU ProtocolIE-ID ::= 70 @@ -184,7 +185,6 @@ id-Direct-Forwarding-Path-Availability ProtocolIE-ID ::= 79 id-UEIdentityIndexValue ProtocolIE-ID ::= 80 id-cdma2000HOStatus ProtocolIE-ID ::= 83 id-cdma2000HORequiredIndication ProtocolIE-ID ::= 84 -id-cdma2000OneXMEID ProtocolIE-ID ::= 85 id-TraceReference ProtocolIE-ID ::= 86 id-RelativeMMECapacity ProtocolIE-ID ::= 87 id-SourceMME-UE-S1AP-ID ProtocolIE-ID ::= 88 @@ -199,8 +199,14 @@ id-S-TMSI ProtocolIE-ID ::= 96 id-cdma2000OneXRAND ProtocolIE-ID ::= 97 id-RequestType ProtocolIE-ID ::= 98 id-UE-S1AP-IDs ProtocolIE-ID ::= 99 -id-EUTRAN-CGI-ID ProtocolIE-ID ::= 100 - +id-EUTRAN-CGI ProtocolIE-ID ::= 100 +id-OverloadResponse ProtocolIE-ID ::= 101 +id-cdma2000OneXSRVCCInfo ProtocolIE-ID ::= 102 +id-SAEBearerFailedToSwitchDLList ProtocolIE-ID ::= 103 +id-SourceeNodeB-ToTargeteNodeB-TransparentContainer ProtocolIE-ID ::= 104 +id-ServedGUMMEIs ProtocolIE-ID ::= 105 +id-SubscriberProfileIDforRFP ProtocolIE-ID ::= 106 END + diff --git a/asn1/s1ap/S1AP-Containers.asn b/asn1/s1ap/S1AP-Containers.asn index b84a31ed5d..93a60892f8 100644 --- a/asn1/s1ap/S1AP-Containers.asn +++ b/asn1/s1ap/S1AP-Containers.asn @@ -200,3 +200,4 @@ PrivateIE-Field {S1AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE { END + diff --git a/asn1/s1ap/S1AP-IEs.asn b/asn1/s1ap/S1AP-IEs.asn index 6205383d87..33b67ff778 100644 --- a/asn1/s1ap/S1AP-IEs.asn +++ b/asn1/s1ap/S1AP-IEs.asn @@ -1,5 +1,5 @@ -- $Id$ --- 3GPP TS 36.413 V8.2.0 (2008-06) +-- 3GPP TS 36.413 V8.3.0 (2008-09) -- 9.3.4 Information Element Definitions -- ************************************************************** -- @@ -21,7 +21,6 @@ IMPORTS id-Bearers-SubjectToStatusTransfer-Item, maxNrOfSAEBs, maxNrOfInterfaces, - maxNrOfErrors, maxnoofBPLMNs, maxnoofPLMNsPerMME, @@ -30,7 +29,8 @@ IMPORTS maxnoofEPLMNsPlusOne, maxnoofForbLACs, maxnoofForbTACs, - maxnoofTACs + maxnoofTACs, + maxnoofGUMMEIs FROM S1AP-Constants @@ -49,30 +49,13 @@ FROM S1AP-Containers; -- A -AllocationRetentionPriority ::= SEQUENCE { - priorityLevel PriorityLevel, - iE-Extensions ProtocolExtensionContainer { {AllocationRetentionPriority-ExtIEs} } OPTIONAL, - ... -} +AllocationRetentionPriority ::= INTEGER (0..15) -AllocationRetentionPriority-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { - ... -} -AggregateMaximumBitrate ::= SEQUENCE { - aggregateMaximumBitRateDL SAE-Bearer-BitRate, - aggregateMaximumBitRateUL SAE-Bearer-BitRate, - iE-Extensions ProtocolExtensionContainer { {Aggregate-MaximumBitrates-ExtIEs} } OPTIONAL, - ... -} - -Aggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { - ... -} -- B -Bearers-SubjectToStatusTransferList ::= SEQUENCE (SIZE(0.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { { Bearers-SubjectToStatusTransfer-ItemIEs } } +Bearers-SubjectToStatusTransferList ::= SEQUENCE (SIZE(1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { { Bearers-SubjectToStatusTransfer-ItemIEs } } Bearers-SubjectToStatusTransfer-ItemIEs S1AP-PROTOCOL-IES ::= { { ID id-Bearers-SubjectToStatusTransfer-Item CRITICALITY ignore TYPE Bearers-SubjectToStatusTransfer-Item PRESENCE mandatory }, @@ -91,6 +74,8 @@ Bearers-SubjectToStatusTransfer-ItemExtIEs S1AP-PROTOCOL-EXTENSION ::= { ... } +BitRate ::= INTEGER (0..10000000000) + BPLMNs ::= SEQUENCE (SIZE(1.. maxnoofBPLMNs)) OF PLMNidentity @@ -144,6 +129,13 @@ CauseRadioNetwork ::= ENUMERATED { unknown-mme-ue-s1ap-id, unknown-enb-ue-s1ap-id, unknown-pair-ue-s1ap-id, + handover-desirable-for-radio-reason, + time-critical-handover, + resource-optimisation-handover, + reduce-load-in-serving-cell, + user-inactivity, + radio-connection-with-ue-lost, + load-balancing-tau-required, ... } @@ -162,6 +154,7 @@ CauseNas ::= ENUMERATED { ... } +CellIdentity ::= BIT STRING (SIZE (28)) Cdma2000PDU ::= OCTET STRING @@ -184,14 +177,31 @@ Cdma2000HORequiredIndication ::= ENUMERATED { ... } +Cdma2000OneXSRVCCInfo ::= SEQUENCE { + cdma2000OneXMEID Cdma2000OneXMEID, + cdma2000OneXMSI Cdma2000OneXMSI, + cdma2000OneXPilot Cdma2000OneXPilot, + iE-Extensions ProtocolExtensionContainer { {Cdma2000OneXSRVCCInfo-ExtIEs} } OPTIONAL, + ... +} + +Cdma2000OneXSRVCCInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { + ... +} + Cdma2000OneXMEID ::= OCTET STRING +Cdma2000OneXMSI ::= OCTET STRING + +Cdma2000OneXPilot ::= OCTET STRING + Cdma2000OneXRAND ::= OCTET STRING CGI ::= SEQUENCE { pLMNidentity PLMNidentity, lAC LAC, - cI CI + cI CI, + rAC RAC OPTIONAL } @@ -221,7 +231,7 @@ CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF Critica CriticalityDiagnostics-IE-Item ::= SEQUENCE { iECriticality Criticality, iE-ID ProtocolIE-ID, - typeOfError TypeOfError OPTIONAL, + typeOfError TypeOfError, iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-IE-Item-ExtIEs}} OPTIONAL, ... } @@ -245,6 +255,24 @@ Direct-Forwarding-Path-Availability ::= ENUMERATED { -- E +ENB-ID ::= CHOICE { + macroENB-ID BIT STRING (SIZE(20)), + homeENB-ID BIT STRING (SIZE(28)), + ... +} + +Global-ENB-ID ::= SEQUENCE { + pLMNidentity PLMNidentity, + eNB-ID ENB-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalENB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { + ... +} + + ENB-StatusTransfer-TransparentContainer ::= SEQUENCE { bearers-SubjectToStatusTransferList Bearers-SubjectToStatusTransferList OPTIONAL, iE-Extensions ProtocolExtensionContainer { {ENB-StatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL, @@ -256,7 +284,6 @@ ENB-StatusTransfer-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { } ENB-UE-S1AP-ID ::= INTEGER (0..16777215) -ENB-Global-ID ::= INTEGER (0..65535) ENBname ::= OCTET STRING @@ -268,7 +295,17 @@ EventType ::= ENUMERATED { ... } -EUTRAN-CGI-ID ::= OCTET STRING +EUTRAN-CGI ::= SEQUENCE { + pLMNidentity PLMNidentity, + cell-ID CellIdentity, + iE-Extensions ProtocolExtensionContainer { {EUTRAN-CGI-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { + ... +} + ExtendedRNC-ID ::= INTEGER (4096..65535) -- F @@ -300,6 +337,20 @@ ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC -- G +GBR-QosInformation ::= SEQUENCE { + sAE-Bearer-MaximumBitrateDL BitRate, + sAE-Bearer-MaximumBitrateUL BitRate, + sAE-Bearer-GuaranteedBitrateDL BitRate, + sAE-Bearer-GuaranteedBitrateUL BitRate, + iE-Extensions ProtocolExtensionContainer { { GBR-QosInformation-ExtIEs} } OPTIONAL, + ... +} + +GBR-QosInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { + ... +} + + GTP-TEID ::= OCTET STRING (SIZE (4)) GUMMEI ::= SEQUENCE { @@ -400,6 +451,19 @@ NAS-PDU ::= OCTET STRING -- O +OverloadAction ::= ENUMERATED { +reject-non-emergency-mo-dt, +reject-all-rrc-cr-signalling, +permit-emergency-sessions-only, + ... +} + +OverloadResponse ::= CHOICE { + overloadAction OverloadAction, + ... +} + + -- P PagingDRX ::= INTEGER (0..4095) @@ -417,7 +481,6 @@ PDCP-SN ::= INTEGER (0..4095) PLMNidentity ::= TBCD-STRING -PriorityLevel ::= INTEGER (0..15) -- Q @@ -452,7 +515,7 @@ RRC-Container ::= OCTET STRING -- S -SAE-Bearer-ID ::= OCTET STRING +SAE-Bearer-ID ::= INTEGER (0..15, ...) SAEBearerInformationList ::= SEQUENCE (SIZE (1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { { SAEBearerInformationListIEs } } @@ -463,7 +526,7 @@ SAEBearerInformationListIEs S1AP-PROTOCOL-IES ::= { SAEBearerInformationListItem ::= SEQUENCE { sAE-Bearer-ID SAE-Bearer-ID, - dL-Forwarding DL-Forwarding, + dL-Forwarding DL-Forwarding OPTIONAL, iE-Extensions ProtocolExtensionContainer { {SAEBearerInformationListItem-ExtIEs} } OPTIONAL, ... } @@ -472,10 +535,10 @@ SAEBearerInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { ... } -SAEBearerList ::= SEQUENCE (SIZE(0.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerItemIEs} } +SAEBearerList ::= SEQUENCE (SIZE(1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerItemIEs} } SAEBearerItemIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerItem CRITICALITY reject TYPE SAEBearerItem PRESENCE mandatory }, + { ID id-SAEBearerItem CRITICALITY ignore TYPE SAEBearerItem PRESENCE mandatory }, ... } @@ -491,13 +554,12 @@ SAEBearerItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { } -SAE-Bearer-BitRate ::= INTEGER (0..10000000) SAE-BearerLevelQoSParameters ::= SEQUENCE { qCI QCI, - allocationRetentionPriority AllocationRetentionPriority OPTIONAL, - sAE-BearerType SAE-Bearer-Type, + allocationRetentionPriority AllocationRetentionPriority, + gbrQosInformation GBR-QosInformation OPTIONAL, iE-Extensions ProtocolExtensionContainer { {SAE-Bearer-QoSParameters-ExtIEs} } OPTIONAL, ... } @@ -506,40 +568,7 @@ SAE-Bearer-QoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { ... } -SAE-Bearer-Type ::= CHOICE { - sAE-GBR-Bearer SAE-GBR-Bearer, - sAE-non-GBR-Bearer SAE-non-GBR-Bearer, - ... -} -SAE-GBR-Bearer ::= SEQUENCE { - sAE-Bearer-MaximumBitrateDL SAE-Bearer-BitRate, - sAE-Bearer-MaximumBitrateUL SAE-Bearer-BitRate, - sAE-Bearer-GuaranteedBitrateDL SAE-Bearer-BitRate, - sAE-Bearer-GuaranteedBitrateUL SAE-Bearer-BitRate, - iE-Extensions ProtocolExtensionContainer { {SAE-GBR-Bearer-Parameters-ExtIEs} } OPTIONAL, - ... -} - -SAE-GBR-Bearer-Parameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { - ... -} - - -SAE-non-GBR-Bearer ::= SEQUENCE { - sAE-non-GBR-Bearer-Type SAE-non-GBR-Bearer-Type, - iE-Extensions ProtocolExtensionContainer { {SAE-non-GBR-Bearer-Parameters-ExtIEs} } OPTIONAL, - ... -} - -SAE-non-GBR-Bearer-Type ::= ENUMERATED { - non-GBR-Bearer, - ... -} - -SAE-non-GBR-Bearer-Parameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { - ... -} SecurityInfo ::= SEQUENCE { securityKey SecurityKey, @@ -571,19 +600,12 @@ SecurityInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { SourceBSS-ToTargetBSS-TransparentContainer ::= OCTET STRING -SourceID ::= SEQUENCE { - sourceeNB-ID SourceeNB-ID, - ... -} - -SourceeNB-ID ::= SEQUENCE { - pLMNidentity PLMNidentity, - eNB-Global-ID ENB-Global-ID -- FFS -} SourceeNodeB-ToTargeteNodeB-TransparentContainer ::= SEQUENCE { rRC-Container RRC-Container, sAEBearerInformationList SAEBearerInformationList OPTIONAL, + targetCell-ID EUTRAN-CGI, + subscriberProfileIDforRFP SubscriberProfileIDforRFP OPTIONAL, iE-Extensions ProtocolExtensionContainer { {SourceeNodeB-ToTargeteNodeB-TransparentContainer-ExtIEs} } OPTIONAL, ... } @@ -595,9 +617,12 @@ SourceeNodeB-ToTargeteNodeB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION SourceRNC-ToTargetRNC-TransparentContainer ::= OCTET STRING +ServedGUMMEIs ::= SEQUENCE (SIZE(1.. maxnoofGUMMEIs)) OF GUMMEI ServedPLMNs ::= SEQUENCE (SIZE(1.. maxnoofPLMNsPerMME)) OF PLMNidentity +SubscriberProfileIDforRFP ::= INTEGER (1..256) + SupportedTAs ::= SEQUENCE (SIZE(1.. maxnoofTACs)) OF SupportedTAs-Item SupportedTAs-Item ::= SEQUENCE { @@ -630,21 +655,18 @@ TAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { TBCD-STRING ::= OCTET STRING (SIZE (3)) TargetID ::= CHOICE { - targeteNB-ID TargeteNB-ID, + targeteNB-ID Global-ENB-ID, targetRNC-ID TargetRNC-ID, cGI CGI, ... } -TargeteNB-ID ::= SEQUENCE { - pLMNidentity PLMNidentity, - eNB-Global-ID ENB-Global-ID -- FFS -} TargetRNC-ID ::= SEQUENCE { - lAI LAI, - rAC RAC OPTIONAL, - rNC-ID RNC-ID + lAI LAI, + rAC RAC OPTIONAL, + rNC-ID RNC-ID, + extendedRNC-ID ExtendedRNC-ID OPTIONAL } @@ -663,7 +685,7 @@ TargetBSS-ToSourceBSS-TransparentContainer ::= OCTET STRING TimeToWait ::= OCTET STRING -TransportLayerAddress ::= OCTET STRING +TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...)) TraceActivation ::= SEQUENCE { traceReference TraceReference, @@ -695,11 +717,22 @@ TypeOfError ::= ENUMERATED { -- U +UEAggregateMaximumBitrate ::= SEQUENCE { + uEaggregateMaximumBitRateDL BitRate, + uEaggregateMaximumBitRateUL BitRate, + iE-Extensions ProtocolExtensionContainer { {UEAggregate-MaximumBitrates-ExtIEs} } OPTIONAL, + ... +} + +UEAggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { + ... +} + + UE-S1AP-IDs ::= CHOICE{ uE-S1AP-ID-pair UE-S1AP-ID-pair, mME-UE-S1AP-ID MME-UE-S1AP-ID, - eNB-UE-S1AP-ID ENB-UE-S1AP-ID, ... } diff --git a/asn1/s1ap/S1AP-PDU-Contents.asn b/asn1/s1ap/S1AP-PDU-Contents.asn index 74a6861a97..e4c6ce5523 100644 --- a/asn1/s1ap/S1AP-PDU-Contents.asn +++ b/asn1/s1ap/S1AP-PDU-Contents.asn @@ -1,11 +1,12 @@ -- $Id$ --- 3GPP TS 36.413 V8.2.0 (2008-06) +-- 3GPP TS 36.413 V8.3.0 (2008-09) -- 9.3.3 PDU Definitions -- ************************************************************** -- -- PDU definitions for S1AP. -- -- ************************************************************** + S1AP-PDU-Contents { itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) eps-Access (20) modules (3) s1ap (1) version1 (1) s1ap-PDU-Contents (1) } @@ -22,19 +23,20 @@ BEGIN IMPORTS - AggregateMaximumBitrate, + UEAggregateMaximumBitrate, Cause, Cdma2000HORequiredIndication, Cdma2000HOStatus, - Cdma2000OneXMEID, + Cdma2000OneXSRVCCInfo, Cdma2000OneXRAND, Cdma2000PDU, Cdma2000RATType, Cdma2000SectorID, CriticalityDiagnostics, Direct-Forwarding-Path-Availability, - ENB-Global-ID, - EUTRAN-CGI-ID, ENBname, + Global-ENB-ID, + EUTRAN-CGI, + ENBname, ENB-StatusTransfer-TransparentContainer, ENB-UE-S1AP-ID, GTP-TEID, @@ -43,20 +45,24 @@ IMPORTS HandoverType, MMEname, MME-UE-S1AP-ID, - NAS-PDU, PagingCause, + NAS-PDU, + OverloadResponse, + PagingCause, PagingDRX, PLMNidentity, - RelativeMMECapacity, RequestType, + RelativeMMECapacity, + RequestType, SAE-Bearer-ID, SAE-BearerLevelQoSParameters, SAEBearerList, SecurityInfo, SecurityInformation, + ServedGUMMEIs, ServedPLMNs, SourceBSS-ToTargetBSS-TransparentContainer, SourceeNodeB-ToTargeteNodeB-TransparentContainer, - SourceID, SourceRNC-ToTargetRNC-TransparentContainer, + SubscriberProfileIDforRFP, SupportedTAs, TAI, TargetBSS-ToSourceBSS-TransparentContainer, @@ -90,23 +96,22 @@ FROM S1AP-IEs FROM S1AP-Containers - id-aggregateMaximumBitrate, - + id-uEaggregateMaximumBitrate, id-Cause, id-cdma2000HORequiredIndication, id-cdma2000HOStatus, - id-cdma2000OneXMEID, + id-cdma2000OneXSRVCCInfo, id-cdma2000OneXRAND, id-cdma2000PDU, id-cdma2000RATType, id-cdma2000SectorID, id-CriticalityDiagnostics, id-Direct-Forwarding-Path-Availability, - id-ENB-Global-ID, - id-EUTRAN-CGI-ID, + id-Global-ENB-ID, + id-EUTRAN-CGI, id-eNBname, - id-eNB-StatusTransfer-TransparentContainer, id-eNB-UE-S1AP-ID, - id-GERANtoLTEHOInformationReq, + id-eNB-StatusTransfer-TransparentContainer, + id-eNB-UE-S1AP-ID, id-GERANtoLTEHOInformationRes, id-GUMMEI-ID, id-HandoverRestrictionList, @@ -121,6 +126,7 @@ FROM S1AP-Containers id-MMEname, id-MME-UE-S1AP-ID, id-NAS-PDU, + id-OverloadResponse, id-pagingCause, id-pagingDRX, id-RelativeMMECapacity, @@ -133,7 +139,7 @@ FROM S1AP-Containers id-SAEBearerFailedtoSetupItemHOReqAck, id-SAEBearerFailedToSetupListBearerSURes, id-SAEBearerFailedToSetupListCtxtSURes, - id-SAEBearerFailedToSetupListHOReqAck, + id-SAEBearerFailedToSetupListHOReqAck, id-SAEBearerFailedToSwitchDLList, id-SAEBearerModify, id-SAEBearerModifyItemBearerModRes, id-SAEBearerModifyListBearerModRes, @@ -164,9 +170,11 @@ FROM S1AP-Containers id-SAEBearertoReleaseListHOCmd, id-SecurityInfo, id-Security-Information, + id-ServedGUMMEIs, id-ServedPLMNs, - id-SourceID, + id-SourceeNodeB-ToTargeteNodeB-TransparentContainer, id-SourceMME-UE-S1AP-ID, + id-SubscriberProfileIDforRFP, id-SupportedTAs, id-S-TMSI, id-TAI, @@ -179,7 +187,6 @@ FROM S1AP-Containers id-UEIdentityIndexValue, id-UEPagingID, id-UERadioCapability, - id-UTRANtoLTEHOInformationReq, id-UTRANtoLTEHOInformationRes, id-UE-associatedLogicalS1-ConnectionListResAck, id-UE-associatedLogicalS1-ConnectionItem, @@ -222,18 +229,19 @@ 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-SourceID CRITICALITY ignore TYPE SourceID PRESENCE mandatory } | { ID id-TargetID CRITICALITY reject TYPE TargetID PRESENCE mandatory } | + { ID id-TAI CRITICALITY reject TYPE TAI PRESENCE mandatory } | { ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore TYPE Direct-Forwarding-Path-Availability PRESENCE optional } | { ID id-Intra-LTEHOInformationReq CRITICALITY reject TYPE Intra-LTEHOInformationReq PRESENCE conditional - -- This IE shall be present if Handover Type IE is set to value "IntraLTE" -- } | + -- This IE shall be present if Handover Type IE is set to value “IntraLTE” -- } | { ID id-LTEtoUTRANHOInformationReq CRITICALITY reject TYPE LTEtoUTRANHOInformationReq PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "LTEtoUTRAN" -- } | + -- This IE shall be present if the Handover Type IE is set to value “LTEtoUTRAN” -- } | { ID id-LTEtoGERANHOInformationReq CRITICALITY reject TYPE LTEtoGERANHOInformationReq PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "LTEtoGERAN" -- }, + -- This IE shall be present if the Handover Type IE is set to value “LTEtoGERAN” -- }, ... } @@ -279,16 +287,18 @@ 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-SAEBearerSubjecttoDataForwardingList CRITICALITY ignore TYPE SAEBearerSubjecttoDataForwardingList PRESENCE mandatory } | - { ID id-SAEBearertoReleaseListHOCmd CRITICALITY ignore TYPE SAEBearertoReleaseListHOCmd PRESENCE mandatory } | + { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory } | + { ID id-SAEBearerSubjecttoDataForwardingList CRITICALITY ignore TYPE SAEBearerSubjecttoDataForwardingList PRESENCE optional } | + { ID id-SAEBearertoReleaseListHOCmd CRITICALITY ignore TYPE SAEBearertoReleaseListHOCmd PRESENCE optional } | { ID id-Intra-LTEHOInformationRes CRITICALITY reject TYPE Intra-LTEHOInformationRes PRESENCE conditional - -- This IE shall be present if Handover Type IE is set to value "IntraLTE" -- } | + -- This IE shall be present if Handover Type IE is set to value “IntraLTE” -- } | { ID id-LTEtoUTRANHOInformationRes CRITICALITY reject TYPE LTEtoUTRANHOInformationRes PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "LTEtoUTRAN" -- } | + -- This IE shall be present if the Handover Type IE is set to value “LTEtoUTRAN” -- } | { ID id-LTEtoGERANHOInformationRes CRITICALITY reject TYPE LTEtoGERANHOInformationRes PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "LTEtoGERAN" -- }| + -- This IE shall be present if the Handover Type IE is set to value “LTEtoGERAN” -- }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -371,6 +381,7 @@ HandoverPreparationFailure ::= SEQUENCE { } HandoverPreparationFailureIEs S1AP-PROTOCOL-IES ::= { + { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } | { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } | { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, @@ -398,24 +409,19 @@ 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-aggregateMaximumBitrate CRITICALITY reject TYPE AggregateMaximumBitrate PRESENCE mandatory }| + { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE mandatory }| { ID id-SAEBearerToBeSetupListHOReq CRITICALITY reject TYPE SAEBearerToBeSetupListHOReq PRESENCE mandatory } | - { ID id-Intra-LTEHOInformationReq CRITICALITY reject TYPE Intra-LTEHOInformationReq PRESENCE conditional - -- This IE shall be present if Handover Type IE is set to value "IntraLTE" -- } | - { ID id-UTRANtoLTEHOInformationReq CRITICALITY reject TYPE UTRANtoLTEHOInformationReq PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "UTRANtoLTE" -- } | - { ID id-GERANtoLTEHOInformationReq - CRITICALITY reject TYPE GERANtoLTEHOInformationReq PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "GERANtoLTE" -- } | + { ID id-SourceeNodeB-ToTargeteNodeB-TransparentContainer CRITICALITY reject TYPE SourceeNodeB-ToTargeteNodeB-TransparentContainer PRESENCE mandatory } | { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional }| - { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }, + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| + { ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE optional }, ... } SAEBearerToBeSetupListHOReq ::= SAEB-IE-ContainerList { {SAEBearerToBeSetupItemHOReqIEs} } SAEBearerToBeSetupItemHOReqIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerToBeSetupItemHOReq CRITICALITY ignore TYPE SAEBearerToBeSetupItemHOReq PRESENCE mandatory }, + { ID id-SAEBearerToBeSetupItemHOReq CRITICALITY reject TYPE SAEBearerToBeSetupItemHOReq PRESENCE mandatory }, ... } @@ -431,26 +437,6 @@ SAEBearerToBeSetupItemHOReq ::= SEQUENCE { SAEBearerToBeSetupItemHOReq-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { ... } -UTRANtoLTEHOInformationReq ::= SEQUENCE { - sourceRNC-ToTargetRNC-TransparentContainer SourceRNC-ToTargetRNC-TransparentContainer, - iE-Extensions ProtocolExtensionContainer { {UTRANtoLTEHOInformationReq-ExtIEs} } OPTIONAL, - ... -} - -UTRANtoLTEHOInformationReq-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { - ... -} - -GERANtoLTEHOInformationReq ::= SEQUENCE { - sourceBSS-ToTargetBSS-TransparentContainer SourceBSS-ToTargetBSS-TransparentContainer, - iE-Extensions ProtocolExtensionContainer { {GERANtoLTEHOInformationReq-ExtIEs} } OPTIONAL, - ... -} - -GERANtoLTEHOInformationReq-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { - ... -} - -- ************************************************************** -- @@ -467,15 +453,15 @@ HandoverRequestAcknowledgeIEs 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-SAEBearerAdmittedList CRITICALITY reject TYPE SAEBearerAdmittedList PRESENCE mandatory } | - { ID id-SAEBearerFailedToSetupListHOReqAck CRITICALITY ignore TYPE SAEBearerFailedtoSetupListHOReqAck PRESENCE mandatory } | + { ID id-SAEBearerAdmittedList CRITICALITY ignore TYPE SAEBearerAdmittedList PRESENCE mandatory } | + { ID id-SAEBearerFailedToSetupListHOReqAck CRITICALITY ignore TYPE SAEBearerFailedtoSetupListHOReqAck PRESENCE optional } | { ID id-Intra-LTEHOInformationRes CRITICALITY reject TYPE Intra-LTEHOInformationRes PRESENCE conditional - -- This IE shall be present if Handover Type IE is set to value "IntraLTE" -- } | + -- This IE shall be present if Handover Type IE is set to value “IntraLTE” -- } | { ID id-UTRANtoLTEHOInformationRes CRITICALITY reject TYPE UTRANtoLTEHOInformationRes PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "UTRANtoLTE" -- } | + -- This IE shall be present if the Handover Type IE is set to value “UTRANtoLTE” -- } | { ID id-GERANtoLTEHOInformationRes CRITICALITY reject TYPE GERANtoLTEHOInformationRes PRESENCE conditional - -- This IE shall be present if the Handover Type IE is set to value "GERANtoLTE" -- }| + -- This IE shall be present if the Handover Type IE is set to value “GERANtoLTE” -- }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -578,7 +564,7 @@ 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-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory}, ... } @@ -602,14 +588,15 @@ PathSwitchRequest ::= SEQUENCE { PathSwitchRequestIEs S1AP-PROTOCOL-IES ::= { { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }| { ID id-SAEBearerToBeSwitchedDLList CRITICALITY reject TYPE SAEBearerToBeSwitchedDLList PRESENCE mandatory }| - { ID id-SourceMME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID 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}, ... } SAEBearerToBeSwitchedDLList ::= SAEB-IE-ContainerList { {SAEBearerToBeSwitchedDLItemIEs} } SAEBearerToBeSwitchedDLItemIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerToBeSwitchedDLItem CRITICALITY ignore TYPE SAEBearerToBeSwitchedDLItem PRESENCE mandatory }, + { ID id-SAEBearerToBeSwitchedDLItem CRITICALITY reject TYPE SAEBearerToBeSwitchedDLItem PRESENCE mandatory }, ... } @@ -638,8 +625,11 @@ PathSwitchRequestAcknowledge ::= SEQUENCE { PathSwitchRequestAcknowledgeIEs 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-SAEBearerToBeSwitchedULList CRITICALITY ignore TYPE SAEBearerToBeSwitchedULList PRESENCE optional }| - { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional } | { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + { 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-SAEBearerToBeSwitchedULList CRITICALITY ignore TYPE SAEBearerToBeSwitchedULList PRESENCE optional }| + { ID id-SAEBearerFailedToSwitchDLList CRITICALITY ignore TYPE SAEBearerList PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -676,9 +666,9 @@ PathSwitchRequestFailure ::= SEQUENCE { PathSwitchRequestFailureIEs 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 reject TYPE Cause PRESENCE mandatory }| - { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } | + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -744,8 +734,9 @@ SAEBearerSetupRequest ::= SEQUENCE { SAEBearerSetupRequestIEs 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-SAEBearerToBeSetupListBearerSUReq CRITICALITY reject TYPE SAEBearerToBeSetupListBearerSUReq PRESENCE mandatory }| - { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory}, + { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory}, ... } @@ -785,18 +776,17 @@ SAEBearerSetupResponse ::= SEQUENCE { SAEBearerSetupResponseIEs 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-SAEBearerSetupListBearerSURes CRITICALITY reject TYPE SAEBearerSetupListBearerSURes PRESENCE optional }| + { ID id-SAEBearerSetupListBearerSURes CRITICALITY ignore TYPE SAEBearerSetupListBearerSURes PRESENCE optional }| { ID id-SAEBearerFailedToSetupListBearerSURes CRITICALITY ignore TYPE SAEBearerList PRESENCE optional }| - { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory}| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } -SAEBearerSetupListBearerSURes ::= SEQUENCE (SIZE(0.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerSetupItemBearerSUResIEs} } +SAEBearerSetupListBearerSURes ::= SEQUENCE (SIZE(1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerSetupItemBearerSUResIEs} } SAEBearerSetupItemBearerSUResIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerSetupItemBearerSURes CRITICALITY reject TYPE SAEBearerSetupItemBearerSURes PRESENCE mandatory }, + { ID id-SAEBearerSetupItemBearerSURes CRITICALITY ignore TYPE SAEBearerSetupItemBearerSURes PRESENCE mandatory }, ... } @@ -835,6 +825,7 @@ SAEBearerModifyRequest ::= SEQUENCE { SAEBearerModifyRequestIEs 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-SAEBearerToBeModifiedListBearerModReq CRITICALITY reject TYPE SAEBearerToBeModifiedListBearerModReq PRESENCE mandatory }| { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory}, ... @@ -877,16 +868,15 @@ SAEBearerModifyResponseIEs S1AP-PROTOCOL-IES ::= { { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }| { ID id-SAEBearerModifyListBearerModRes CRITICALITY ignore TYPE SAEBearerModifyListBearerModRes PRESENCE optional }| { ID id-SAEBearerFailedToModifyList CRITICALITY ignore TYPE SAEBearerList PRESENCE optional }| - { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory}| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } -SAEBearerModifyListBearerModRes ::= SEQUENCE (SIZE(0.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerModifyItemBearerModResIEs} } +SAEBearerModifyListBearerModRes ::= SEQUENCE (SIZE(1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerModifyItemBearerModResIEs} } SAEBearerModifyItemBearerModResIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerModifyItemBearerModRes CRITICALITY reject TYPE SAEBearerModifyItemBearerModRes PRESENCE mandatory }, + { ID id-SAEBearerModifyItemBearerModRes CRITICALITY ignore TYPE SAEBearerModifyItemBearerModRes PRESENCE mandatory }, ... } @@ -924,7 +914,8 @@ SAEBearerReleaseCommand ::= SEQUENCE { SAEBearerReleaseCommandIEs 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-SAEBearerToBeReleasedList CRITICALITY ignore TYPE SAEBearerList PRESENCE optional }, + { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE optional }| + { ID id-SAEBearerToBeReleasedList CRITICALITY ignore TYPE SAEBearerList PRESENCE mandatory }, ... } @@ -950,10 +941,10 @@ SAEBearerReleaseResponseIEs S1AP-PROTOCOL-IES ::= { } -SAEBearerReleaseListBearerRelComp ::= SEQUENCE (SIZE(0.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerReleaseItemBearerRelCompIEs} } +SAEBearerReleaseListBearerRelComp ::= SEQUENCE (SIZE(1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerReleaseItemBearerRelCompIEs} } SAEBearerReleaseItemBearerRelCompIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerReleaseItemBearerRelComp CRITICALITY reject TYPE SAEBearerReleaseItemBearerRelComp PRESENCE mandatory }, + { ID id-SAEBearerReleaseItemBearerRelComp CRITICALITY ignore TYPE SAEBearerReleaseItemBearerRelComp PRESENCE mandatory }, ... } @@ -988,9 +979,9 @@ SAEBearerReleaseRequest ::= SEQUENCE { } SAEBearerReleaseRequestIEs 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-SAEBearerToBeReleasedList CRITICALITY ignore TYPE SAEBearerList 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-SAEBearerToBeReleasedList CRITICALITY ignore TYPE SAEBearerList PRESENCE mandatory }, ... } -- ************************************************************** @@ -1013,30 +1004,14 @@ InitialContextSetupRequest ::= SEQUENCE { InitialContextSetupRequestIEs S1AP-PROTOCOL-IES ::= { { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory }| { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory }| - { ID id-aggregateMaximumBitrate CRITICALITY reject TYPE AggregateMaximumBitrate PRESENCE mandatory }| + { ID id-uEaggregateMaximumBitrate CRITICALITY reject TYPE UEAggregateMaximumBitrate PRESENCE mandatory }| { ID id-SAEBearerToBeSetupListCtxtSUReq CRITICALITY reject TYPE SAEBearerToBeSetupListCtxtSUReq PRESENCE mandatory }| - { ID id-Security-Information CRITICALITY ignore TYPE SecurityInformation PRESENCE mandatory }| - { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| - { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional }| - { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE optional}| - { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }, - ... -} --- ************************************************************** --- --- UE CONTEXT RELEASE REQUEST --- --- ************************************************************** - -UEContextReleaseRequest ::= SEQUENCE { - protocolIEs ProtocolIE-Container {{UEContextReleaseRequest-IEs}}, - ... -} - -UEContextReleaseRequest-IEs S1AP-PROTOCOL-IES ::= { - { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} | - { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} | - { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} , + { ID id-Security-Information CRITICALITY reject TYPE SecurityInformation PRESENCE mandatory }| + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| + { ID id-HandoverRestrictionList CRITICALITY ignore TYPE HandoverRestrictionList PRESENCE optional }| + { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE optional}| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-SubscriberProfileIDforRFP CRITICALITY ignore TYPE SubscriberProfileIDforRFP PRESENCE optional }, ... } @@ -1079,7 +1054,7 @@ InitialContextSetupResponse ::= SEQUENCE { InitialContextSetupResponseIEs 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-SAEBearerSetupListCtxtSURes CRITICALITY reject TYPE SAEBearerSetupListCtxtSURes PRESENCE optional }| + { ID id-SAEBearerSetupListCtxtSURes CRITICALITY ignore TYPE SAEBearerSetupListCtxtSURes PRESENCE optional }| { ID id-SAEBearerFailedToSetupListCtxtSURes CRITICALITY ignore TYPE SAEBearerList PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... @@ -1089,7 +1064,7 @@ InitialContextSetupResponseIEs S1AP-PROTOCOL-IES ::= { SAEBearerSetupListCtxtSURes ::= SEQUENCE (SIZE(1.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerSetupItemCtxtSUResIEs} } SAEBearerSetupItemCtxtSUResIEs S1AP-PROTOCOL-IES ::= { - { ID id-SAEBearerSetupItemCtxtSURes CRITICALITY reject TYPE SAEBearerSetupItemCtxtSURes PRESENCE mandatory }, + { ID id-SAEBearerSetupItemCtxtSURes CRITICALITY ignore TYPE SAEBearerSetupItemCtxtSURes PRESENCE mandatory }, ... } @@ -1140,7 +1115,7 @@ Paging ::= SEQUENCE { PagingIEs S1AP-PROTOCOL-IES ::= { { ID id-UEIdentityIndexValue CRITICALITY ignore TYPE UEIdentityIndexValue PRESENCE mandatory } | { ID id-UEPagingID CRITICALITY ignore TYPE UEPagingID PRESENCE mandatory } | - { ID id-pagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory } | + { ID id-pagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional } | { ID id-pagingCause CRITICALITY ignore TYPE PagingCause PRESENCE mandatory } | { ID id-TAIList CRITICALITY ignore TYPE TAIList PRESENCE mandatory }, ... @@ -1170,6 +1145,23 @@ TAIItemExtIEs S1AP-PROTOCOL-EXTENSION ::= { -- -- ************************************************************** +-- ************************************************************** +-- +-- UE CONTEXT RELEASE REQUEST +-- +-- ************************************************************** + +UEContextReleaseRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{UEContextReleaseRequest-IEs}}, + ... +} + +UEContextReleaseRequest-IEs S1AP-PROTOCOL-IES ::= { + { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} | + { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} | + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory} , + ... +} -- ************************************************************** -- @@ -1228,7 +1220,9 @@ UEContextModificationRequest ::= SEQUENCE { UEContextModificationRequestIEs S1AP-PROTOCOL-IES ::= { { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory } | { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory } | - { ID id-SecurityInfo CRITICALITY reject TYPE SecurityInfo PRESENCE optional }, ... + { ID id-SecurityInfo CRITICALITY reject TYPE SecurityInfo PRESENCE optional }| + { ID id-SubscriberProfileIDforRFP CRITICALITY ignore TYPE SubscriberProfileIDforRFP PRESENCE optional }, + ... } -- ************************************************************** -- @@ -1300,6 +1294,7 @@ 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}, ... } @@ -1452,7 +1447,7 @@ S1SetupRequest ::= SEQUENCE { } S1SetupRequestIEs S1AP-PROTOCOL-IES ::= { - { ID id-ENB-Global-ID CRITICALITY reject TYPE ENB-Global-ID PRESENCE mandatory }| + { 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 }, ... @@ -1473,7 +1468,7 @@ S1SetupResponse ::= SEQUENCE { S1SetupResponseIEs S1AP-PROTOCOL-IES ::= { { ID id-MMEname CRITICALITY ignore TYPE MMEname PRESENCE mandatory }| { ID id-ServedPLMNs CRITICALITY reject TYPE ServedPLMNs PRESENCE mandatory }| - { ID id-GUMMEI-ID CRITICALITY reject TYPE GUMMEI PRESENCE mandatory }| + { ID id-ServedGUMMEIs CRITICALITY reject TYPE ServedGUMMEIs PRESENCE mandatory }| { ID id-RelativeMMECapacity CRITICALITY reject TYPE RelativeMMECapacity PRESENCE mandatory }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... @@ -1576,7 +1571,7 @@ 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-GUMMEI-ID CRITICALITY reject TYPE GUMMEI PRESENCE optional }| + { ID id-ServedGUMMEIs CRITICALITY reject TYPE ServedGUMMEIs PRESENCE optional }| { ID id-RelativeMMECapacity CRITICALITY reject TYPE RelativeMMECapacity PRESENCE optional}, ... } @@ -1666,7 +1661,7 @@ 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-cdma2000OneXMEID CRITICALITY ignore TYPE Cdma2000OneXMEID PRESENCE optional } | + { ID id-cdma2000OneXSRVCCInfo CRITICALITY ignore TYPE Cdma2000OneXSRVCCInfo PRESENCE optional } | { ID id-cdma2000OneXRAND CRITICALITY ignore TYPE Cdma2000OneXRAND PRESENCE optional } | { ID id-cdma2000PDU CRITICALITY reject TYPE Cdma2000PDU PRESENCE mandatory }, ... @@ -1765,7 +1760,7 @@ TraceStart ::= SEQUENCE { TraceStartIEs S1AP-PROTOCOL-IES ::= { { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} | { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} | - { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }, + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE mandatory }, ... } @@ -1862,10 +1857,39 @@ LocationReport ::= SEQUENCE { LocationReportIEs S1AP-PROTOCOL-IES ::= { { ID id-MME-UE-S1AP-ID CRITICALITY reject TYPE MME-UE-S1AP-ID PRESENCE mandatory} | { ID id-eNB-UE-S1AP-ID CRITICALITY reject TYPE ENB-UE-S1AP-ID PRESENCE mandatory} | - { ID id-EUTRAN-CGI-ID CRITICALITY ignore TYPE EUTRAN-CGI-ID PRESENCE mandatory} | + { ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory} | { ID id-RequestType CRITICALITY ignore TYPE RequestType PRESENCE mandatory} , ... } +-- ************************************************************** +-- +-- Overload Start +-- +-- ************************************************************** -END +OverloadStart ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {OverloadStartIEs} }, + ... +} + +OverloadStartIEs S1AP-PROTOCOL-IES ::= { + { ID id-OverloadResponse CRITICALITY reject TYPE OverloadResponse PRESENCE mandatory }, + ... +} +-- ************************************************************** +-- +-- Overload Stop +-- +-- ************************************************************** + +OverloadStop ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {OverloadStopIEs} }, + ... +} + +OverloadStopIEs S1AP-PROTOCOL-IES ::= { + ... +} + +END \ No newline at end of file diff --git a/asn1/s1ap/S1AP-PDU-Descriptions.asn b/asn1/s1ap/S1AP-PDU-Descriptions.asn index baf5c68990..0502e66139 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.2.0 (2008-06) +-- 3GPP TS 36.413 V8.3.0 (2008-09) -- 9.3.2 Elementary Procedure Definitions -- ************************************************************** -- @@ -50,12 +50,13 @@ FROM S1AP-CommonDataTypes LocationReportingControl, LocationReportingFailureIndication, LocationReport, - MMEConfigurationUpdate, MMEConfigurationUpdateAcknowledge, MMEConfigurationUpdateFailure, MMEStatusTransfer, NASNonDeliveryIndication, + OverloadStart, + OverloadStop, Paging, PathSwitchRequest, PathSwitchRequestAcknowledge, @@ -104,6 +105,8 @@ FROM S1AP-PDU-Contents id-MMEConfigurationUpdate, id-MMEStatusTransfer, id-NASNonDeliveryIndication, + id-OverloadStart, + id-OverloadStop, id-Paging, id-PathSwitchRequest, id-Reset, @@ -226,7 +229,9 @@ S1AP-ELEMENTARY-PROCEDURES-CLASS-2 S1AP-ELEMENTARY-PROCEDURE ::= { traceFailureIndication | locationReportingControl | locationReportingFailureIndication | - locationReport , + locationReport | + overloadStart | + overloadStop , ... } @@ -461,4 +466,18 @@ locationReport S1AP-ELEMENTARY-PROCEDURE ::= { PROCEDURE CODE id-LocationReport CRITICALITY ignore } + +overloadStart S1AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE OverloadStart + PROCEDURE CODE id-OverloadStart + CRITICALITY ignore +} + +overloadStop S1AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE OverloadStop + PROCEDURE CODE id-OverloadStop + CRITICALITY reject +} + END + diff --git a/asn1/s1ap/s1ap.cnf b/asn1/s1ap/s1ap.cnf index eb7d8dd802..c16f87051f 100644 --- a/asn1/s1ap/s1ap.cnf +++ b/asn1/s1ap/s1ap.cnf @@ -22,6 +22,7 @@ TBCD-STRING #.OMIT_ASSIGNMENT # Get rid of unused code warnings +ProtocolIE-FieldPair ProtocolIE-ContainerPair ProtocolIE-ContainerPairList ProtocolError-IE-ContainerList @@ -62,8 +63,9 @@ ProtocolIE-Field/value ie_field_value #.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue -#.FN_PARS ProtocolIE-FieldPair/firstValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairFirstValue -#.FN_PARS ProtocolIE-FieldPair/secondValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairSecondValue +# Currently not used +# FN_PARS ProtocolIE-FieldPair/firstValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairFirstValue +# FN_PARS ProtocolIE-FieldPair/secondValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairSecondValue #.FN_PARS ProtocolExtensionID VAL_PTR=&ProtocolExtensionID #.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue @@ -146,6 +148,8 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound") # asn1_stack_frame_pop(%(ACTX)s, "ProtocolIE-ContainerList"); # END +# Handle 64 bit constraint +#.FN_PARS BitRate FN_VARIANT = _64b # following construction is not supported by asn2wrs # PLMNidentity ::= TBCD-STRING (SIZE (3)) @@ -228,12 +232,13 @@ id-MMEConfigurationUpdate ProcedureCode id-LocationReportingControl ProcedureCode id-LocationReportingFailureIndication ProcedureCode id-LocationReport ProcedureCode +id-OverloadStart ProcedureCode +id-OverloadStop ProcedureCode # ProtocolIE-ID id-MME-UE-S1AP-ID ProtocolIE-ID id-HandoverType ProtocolIE-ID id-Cause ProtocolIE-ID -id-SourceID ProtocolIE-ID id-TargetID ProtocolIE-ID id-Intra-LTEHOInformationReq ProtocolIE-ID id-LTEtoUTRANHOInformationReq ProtocolIE-ID @@ -282,18 +287,16 @@ id-SAEBearerSetupItemCtxtSURes ProtocolIE-ID id-SAEBearerSetupListCtxtSURes ProtocolIE-ID id-SAEBearerToBeSetupItemCtxtSUReq ProtocolIE-ID id-SAEBearerToBeSetupListHOReq ProtocolIE-ID -id-GERANtoLTEHOInformationReq ProtocolIE-ID id-GERANtoLTEHOInformationRes ProtocolIE-ID -id-UTRANtoLTEHOInformationReq ProtocolIE-ID id-UTRANtoLTEHOInformationRes ProtocolIE-ID id-CriticalityDiagnostics ProtocolIE-ID id-eNBname ProtocolIE-ID id-MMEname ProtocolIE-ID -id-ENB-Global-ID ProtocolIE-ID +id-Global-ENB-ID ProtocolIE-ID id-ServedPLMNs ProtocolIE-ID id-SupportedTAs ProtocolIE-ID id-TimeToWait ProtocolIE-ID -id-aggregateMaximumBitrate ProtocolIE-ID +id-uEaggregateMaximumBitrate ProtocolIE-ID id-TAI ProtocolIE-ID id-SAEBearerReleaseListBearerRelComp ProtocolIE-ID id-cdma2000PDU ProtocolIE-ID @@ -307,7 +310,6 @@ id-Direct-Forwarding-Path-Availability ProtocolIE-ID id-UEIdentityIndexValue ProtocolIE-ID id-cdma2000HOStatus ProtocolIE-ID id-cdma2000HORequiredIndication ProtocolIE-ID -id-cdma2000OneXMEID ProtocolIE-ID id-TraceReference ProtocolIE-ID id-RelativeMMECapacity ProtocolIE-ID id-SourceMME-UE-S1AP-ID ProtocolIE-ID @@ -322,8 +324,13 @@ id-S-TMSI ProtocolIE-ID id-cdma2000OneXRAND ProtocolIE-ID id-RequestType ProtocolIE-ID id-UE-S1AP-IDs ProtocolIE-ID -id-EUTRAN-CGI-ID ProtocolIE-ID - +id-EUTRAN-CGI ProtocolIE-ID +id-OverloadResponse ProtocolIE-ID +id-cdma2000OneXSRVCCInfo ProtocolIE-ID +id-SAEBearerFailedToSwitchDLList ProtocolIE-ID +id-SourceeNodeB-ToTargeteNodeB-TransparentContainer ProtocolIE-ID +id-ServedGUMMEIs ProtocolIE-ID +id-SubscriberProfileIDforRFP ProtocolIE-ID #.END #.REGISTER_NEW @@ -332,7 +339,6 @@ id-EUTRAN-CGI-ID ProtocolIE-ID MME-UE-S1AP-ID N s1ap.ies id-MME-UE-S1AP-ID HandoverType N s1ap.ies id-HandoverType Cause N s1ap.ies id-Cause -SourceID N s1ap.ies id-SourceID TargetID N s1ap.ies id-TargetID Intra-LTEHOInformationReq N s1ap.ies id-Intra-LTEHOInformationReq LTEtoUTRANHOInformationReq N s1ap.ies id-LTEtoUTRANHOInformationReq @@ -381,18 +387,16 @@ SAEBearerSetupItemCtxtSURes N s1ap.ies id-SAEBearerSetupItemCtxtSURes SAEBearerSetupListCtxtSURes N s1ap.ies id-SAEBearerSetupListCtxtSURes SAEBearerToBeSetupItemCtxtSUReq N s1ap.ies id-SAEBearerToBeSetupItemCtxtSUReq SAEBearerToBeSetupListHOReq N s1ap.ies id-SAEBearerToBeSetupListHOReq -GERANtoLTEHOInformationReq N s1ap.ies id-GERANtoLTEHOInformationReq GERANtoLTEHOInformationRes N s1ap.ies id-GERANtoLTEHOInformationRes -UTRANtoLTEHOInformationReq N s1ap.ies id-UTRANtoLTEHOInformationReq UTRANtoLTEHOInformationRes N s1ap.ies id-UTRANtoLTEHOInformationRes CriticalityDiagnostics N s1ap.ies id-CriticalityDiagnostics -ENB-Global-ID N s1ap.ies id-ENB-Global-ID +Global-ENB-ID N s1ap.ies id-Global-ENB-ID ENBname N s1ap.ies id-eNBname MMEname N s1ap.ies id-MMEname ServedPLMNs N s1ap.ies id-ServedPLMNs SupportedTAs N s1ap.ies id-SupportedTAs TimeToWait N s1ap.ies id-TimeToWait -AggregateMaximumBitrate N s1ap.ies id-aggregateMaximumBitrate +UEAggregateMaximumBitrate N s1ap.ies id-uEaggregateMaximumBitrate TAI N s1ap.ies id-TAI SAEBearerReleaseListBearerRelComp N s1ap.ies id-SAEBearerReleaseListBearerRelComp Cdma2000PDU N s1ap.ies id-cdma2000PDU @@ -406,7 +410,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 -Cdma2000OneXMEID N s1ap.ies id-cdma2000OneXMEID TraceReference N s1ap.ies id-TraceReference RelativeMMECapacity N s1ap.ies id-RelativeMMECapacity MME-UE-S1AP-ID N s1ap.ies id-SourceMME-UE-S1AP-ID @@ -421,7 +424,13 @@ S-TMSI N s1ap.ies id-S-TMSI Cdma2000OneXRAND N s1ap.ies id-cdma2000OneXRAND RequestType N s1ap.ies id-RequestType UE-S1AP-IDs N s1ap.ies id-UE-S1AP-IDs -EUTRAN-CGI-ID N s1ap.ies id-EUTRAN-CGI-ID +EUTRAN-CGI N s1ap.ies id-EUTRAN-CGI +OverloadResponse N s1ap.ies id-OverloadResponse +Cdma2000OneXSRVCCInfo N s1ap.ies id-cdma2000OneXSRVCCInfo +SAEBearerList N s1ap.ies id-SAEBearerFailedToSwitchDLList +SourceeNodeB-ToTargeteNodeB-TransparentContainer N s1ap.ies id-SourceeNodeB-ToTargeteNodeB-TransparentContainer +ServedGUMMEIs N s1ap.ies id-ServedGUMMEIs +SubscriberProfileIDforRFP N s1ap.ies id-SubscriberProfileIDforRFP #S1AP-PROTOCOL-IES-PAIR #RAB-SetupOrModifyItemFirst N s1ap.ies.pair.first id-RAB-SetupOrModifyItem @@ -521,4 +530,8 @@ LocationReportingControl N s1ap.proc.imsg id-LocationReportingControl LocationReportingFailureIndication N s1ap.proc.imsg id-LocationReportingFailureIndication LocationReport N s1ap.proc.imsg id-LocationReport + +OverloadStart N s1ap.proc.imsg id-OverloadStart + +OverloadStop N s1ap.proc.imsg id-OverloadStop #.END diff --git a/epan/dissectors/packet-s1ap.c b/epan/dissectors/packet-s1ap.c index a567d541b0..d0148f3c7e 100644 --- a/epan/dissectors/packet-s1ap.c +++ b/epan/dissectors/packet-s1ap.c @@ -83,9 +83,10 @@ #define maxnoofPLMNsPerMME 32 #define maxnoofEPLMNs 15 #define maxnoofEPLMNsPlusOne 16 -#define maxnoofForbLACs 256 -#define maxnoofForbTACs 256 +#define maxnoofForbLACs 4096 +#define maxnoofForbTACs 4096 #define maxNrOfIndividualS1ConnectionsToReset 256 +#define maxnoofGUMMEIs 256 typedef enum _ProcedureCode_enum { id_HandoverPreparation = 0, @@ -121,7 +122,9 @@ typedef enum _ProcedureCode_enum { id_MMEConfigurationUpdate = 30, id_LocationReportingControl = 31, id_LocationReportingFailureIndication = 32, - id_LocationReport = 33 + id_LocationReport = 33, + id_OverloadStart = 34, + id_OverloadStop = 35 } ProcedureCode_enum; typedef enum _ProtocolIE_ID_enum { @@ -178,18 +181,16 @@ typedef enum _ProtocolIE_ID_enum { id_SAEBearerSetupListCtxtSURes = 51, id_SAEBearerToBeSetupItemCtxtSUReq = 52, id_SAEBearerToBeSetupListHOReq = 53, - id_GERANtoLTEHOInformationReq = 54, id_GERANtoLTEHOInformationRes = 55, - id_UTRANtoLTEHOInformationReq = 56, id_UTRANtoLTEHOInformationRes = 57, id_CriticalityDiagnostics = 58, - id_ENB_Global_ID = 59, + id_Global_ENB_ID = 59, id_eNBname = 60, id_MMEname = 61, id_ServedPLMNs = 63, id_SupportedTAs = 64, id_TimeToWait = 65, - id_aggregateMaximumBitrate = 66, + id_uEaggregateMaximumBitrate = 66, id_TAI = 67, id_SAEBearerReleaseListBearerRelComp = 69, id_cdma2000PDU = 70, @@ -203,7 +204,6 @@ typedef enum _ProtocolIE_ID_enum { id_UEIdentityIndexValue = 80, id_cdma2000HOStatus = 83, id_cdma2000HORequiredIndication = 84, - id_cdma2000OneXMEID = 85, id_TraceReference = 86, id_RelativeMMECapacity = 87, id_SourceMME_UE_S1AP_ID = 88, @@ -218,7 +218,13 @@ typedef enum _ProtocolIE_ID_enum { id_cdma2000OneXRAND = 97, id_RequestType = 98, id_UE_S1AP_IDs = 99, - id_EUTRAN_CGI_ID = 100 + id_EUTRAN_CGI = 100, + id_OverloadResponse = 101, + id_cdma2000OneXSRVCCInfo = 102, + id_SAEBearerFailedToSwitchDLList = 103, + id_SourceeNodeB_ToTargeteNodeB_TransparentContainer = 104, + id_ServedGUMMEIs = 105, + id_SubscriberProfileIDforRFP = 106 } ProtocolIE_ID_enum; /*--- End of included file: packet-s1ap-val.h ---*/ @@ -232,7 +238,6 @@ static int proto_s1ap = -1; /*--- Included file: packet-s1ap-hf.c ---*/ #line 1 "packet-s1ap-hf.c" -static int hf_s1ap_AggregateMaximumBitrate_PDU = -1; /* AggregateMaximumBitrate */ static int hf_s1ap_Bearers_SubjectToStatusTransfer_Item_PDU = -1; /* Bearers_SubjectToStatusTransfer_Item */ static int hf_s1ap_Cause_PDU = -1; /* Cause */ static int hf_s1ap_Cdma2000PDU_PDU = -1; /* Cdma2000PDU */ @@ -240,21 +245,22 @@ static int hf_s1ap_Cdma2000RATType_PDU = -1; /* Cdma2000RATType */ static int hf_s1ap_Cdma2000SectorID_PDU = -1; /* Cdma2000SectorID */ static int hf_s1ap_Cdma2000HOStatus_PDU = -1; /* Cdma2000HOStatus */ static int hf_s1ap_Cdma2000HORequiredIndication_PDU = -1; /* Cdma2000HORequiredIndication */ -static int hf_s1ap_Cdma2000OneXMEID_PDU = -1; /* Cdma2000OneXMEID */ +static int hf_s1ap_Cdma2000OneXSRVCCInfo_PDU = -1; /* Cdma2000OneXSRVCCInfo */ static int hf_s1ap_Cdma2000OneXRAND_PDU = -1; /* Cdma2000OneXRAND */ static int hf_s1ap_CriticalityDiagnostics_PDU = -1; /* CriticalityDiagnostics */ static int hf_s1ap_Direct_Forwarding_Path_Availability_PDU = -1; /* Direct_Forwarding_Path_Availability */ +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_ENB_Global_ID_PDU = -1; /* ENB_Global_ID */ static int hf_s1ap_ENBname_PDU = -1; /* ENBname */ -static int hf_s1ap_EUTRAN_CGI_ID_PDU = -1; /* EUTRAN_CGI_ID */ +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 */ static int hf_s1ap_HandoverType_PDU = -1; /* HandoverType */ 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_NAS_PDU_PDU = -1; /* NAS_PDU */ +static int hf_s1ap_OverloadResponse_PDU = -1; /* OverloadResponse */ static int hf_s1ap_PagingDRX_PDU = -1; /* PagingDRX */ static int hf_s1ap_PagingCause_PDU = -1; /* PagingCause */ static int hf_s1ap_RelativeMMECapacity_PDU = -1; /* RelativeMMECapacity */ @@ -264,8 +270,10 @@ static int hf_s1ap_SAEBearerList_PDU = -1; /* SAEBearerList */ static int hf_s1ap_SAEBearerItem_PDU = -1; /* SAEBearerItem */ static int hf_s1ap_SecurityInfo_PDU = -1; /* SecurityInfo */ static int hf_s1ap_SecurityInformation_PDU = -1; /* SecurityInformation */ -static int hf_s1ap_SourceID_PDU = -1; /* SourceID */ +static int hf_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer_PDU = -1; /* SourceeNodeB_ToTargeteNodeB_TransparentContainer */ +static int hf_s1ap_ServedGUMMEIs_PDU = -1; /* ServedGUMMEIs */ static int hf_s1ap_ServedPLMNs_PDU = -1; /* ServedPLMNs */ +static int hf_s1ap_SubscriberProfileIDforRFP_PDU = -1; /* SubscriberProfileIDforRFP */ static int hf_s1ap_SupportedTAs_PDU = -1; /* SupportedTAs */ static int hf_s1ap_S_TMSI_PDU = -1; /* S_TMSI */ static int hf_s1ap_TAI_PDU = -1; /* TAI */ @@ -273,6 +281,7 @@ static int hf_s1ap_TargetID_PDU = -1; /* TargetID */ static int hf_s1ap_TimeToWait_PDU = -1; /* TimeToWait */ 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 */ static int hf_s1ap_UEIdentityIndexValue_PDU = -1; /* UEIdentityIndexValue */ @@ -293,8 +302,6 @@ static int hf_s1ap_HandoverPreparationFailure_PDU = -1; /* HandoverPreparationF static int hf_s1ap_HandoverRequest_PDU = -1; /* HandoverRequest */ static int hf_s1ap_SAEBearerToBeSetupListHOReq_PDU = -1; /* SAEBearerToBeSetupListHOReq */ static int hf_s1ap_SAEBearerToBeSetupItemHOReq_PDU = -1; /* SAEBearerToBeSetupItemHOReq */ -static int hf_s1ap_UTRANtoLTEHOInformationReq_PDU = -1; /* UTRANtoLTEHOInformationReq */ -static int hf_s1ap_GERANtoLTEHOInformationReq_PDU = -1; /* GERANtoLTEHOInformationReq */ static int hf_s1ap_HandoverRequestAcknowledge_PDU = -1; /* HandoverRequestAcknowledge */ static int hf_s1ap_SAEBearerAdmittedList_PDU = -1; /* SAEBearerAdmittedList */ static int hf_s1ap_SAEBearerAdmittedItem_PDU = -1; /* SAEBearerAdmittedItem */ @@ -331,7 +338,6 @@ static int hf_s1ap_SAEBearerReleaseListBearerRelComp_PDU = -1; /* SAEBearerRele static int hf_s1ap_SAEBearerReleaseItemBearerRelComp_PDU = -1; /* SAEBearerReleaseItemBearerRelComp */ static int hf_s1ap_SAEBearerReleaseRequest_PDU = -1; /* SAEBearerReleaseRequest */ static int hf_s1ap_InitialContextSetupRequest_PDU = -1; /* InitialContextSetupRequest */ -static int hf_s1ap_UEContextReleaseRequest_PDU = -1; /* UEContextReleaseRequest */ static int hf_s1ap_SAEBearerToBeSetupListCtxtSUReq_PDU = -1; /* SAEBearerToBeSetupListCtxtSUReq */ static int hf_s1ap_SAEBearerToBeSetupItemCtxtSUReq_PDU = -1; /* SAEBearerToBeSetupItemCtxtSUReq */ static int hf_s1ap_InitialContextSetupResponse_PDU = -1; /* InitialContextSetupResponse */ @@ -341,6 +347,7 @@ static int hf_s1ap_InitialContextSetupFailure_PDU = -1; /* InitialContextSetupF static int hf_s1ap_Paging_PDU = -1; /* Paging */ static int hf_s1ap_TAIList_PDU = -1; /* TAIList */ static int hf_s1ap_TAIItem_PDU = -1; /* TAIItem */ +static int hf_s1ap_UEContextReleaseRequest_PDU = -1; /* UEContextReleaseRequest */ static int hf_s1ap_UEContextReleaseCommand_PDU = -1; /* UEContextReleaseCommand */ static int hf_s1ap_UEContextReleaseComplete_PDU = -1; /* UEContextReleaseComplete */ static int hf_s1ap_UEContextModificationRequest_PDU = -1; /* UEContextModificationRequest */ @@ -375,6 +382,8 @@ static int hf_s1ap_DeactivateTrace_PDU = -1; /* DeactivateTrace */ static int hf_s1ap_LocationReportingControl_PDU = -1; /* LocationReportingControl */ static int hf_s1ap_LocationReportingFailureIndication_PDU = -1; /* LocationReportingFailureIndication */ static int hf_s1ap_LocationReport_PDU = -1; /* LocationReport */ +static int hf_s1ap_OverloadStart_PDU = -1; /* OverloadStart */ +static int hf_s1ap_OverloadStop_PDU = -1; /* OverloadStop */ static int hf_s1ap_S1AP_PDU_PDU = -1; /* S1AP_PDU */ static int hf_s1ap_local = -1; /* INTEGER_0_65535 */ static int hf_s1ap_global = -1; /* OBJECT_IDENTIFIER */ @@ -382,31 +391,28 @@ static int hf_s1ap_ProtocolIE_Container_item = -1; /* ProtocolIE_Field */ static int hf_s1ap_id = -1; /* ProtocolIE_ID */ static int hf_s1ap_criticality = -1; /* Criticality */ static int hf_s1ap_ie_field_value = -1; /* T_ie_field_value */ -static int hf_s1ap_firstCriticality = -1; /* Criticality */ -static int hf_s1ap_firstValue = -1; /* T_firstValue */ -static int hf_s1ap_secondCriticality = -1; /* Criticality */ -static int hf_s1ap_secondValue = -1; /* T_secondValue */ static int hf_s1ap_ProtocolIE_ContainerList_item = -1; /* ProtocolIE_SingleContainer */ static int hf_s1ap_ProtocolExtensionContainer_item = -1; /* ProtocolExtensionField */ static int hf_s1ap_ext_id = -1; /* ProtocolExtensionID */ static int hf_s1ap_extensionValue = -1; /* T_extensionValue */ -static int hf_s1ap_priorityLevel = -1; /* PriorityLevel */ -static int hf_s1ap_iE_Extensions = -1; /* ProtocolExtensionContainer */ -static int hf_s1ap_aggregateMaximumBitRateDL = -1; /* SAE_Bearer_BitRate */ -static int hf_s1ap_aggregateMaximumBitRateUL = -1; /* SAE_Bearer_BitRate */ static int hf_s1ap_Bearers_SubjectToStatusTransferList_item = -1; /* ProtocolIE_SingleContainer */ static int hf_s1ap_sAE_Bearer_ID = -1; /* SAE_Bearer_ID */ static int hf_s1ap_uL_COUNTvalue = -1; /* COUNTvalue */ static int hf_s1ap_dL_COUNTvalue = -1; /* COUNTvalue */ +static int hf_s1ap_iE_Extensions = -1; /* ProtocolExtensionContainer */ static int hf_s1ap_BPLMNs_item = -1; /* PLMNidentity */ static int hf_s1ap_radioNetwork = -1; /* CauseRadioNetwork */ static int hf_s1ap_transport = -1; /* CauseTransport */ static int hf_s1ap_nas = -1; /* CauseNas */ static int hf_s1ap_protocol = -1; /* CauseProtocol */ static int hf_s1ap_misc = -1; /* CauseMisc */ +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_pLMNidentity = -1; /* PLMNidentity */ static int hf_s1ap_lAC = -1; /* LAC */ static int hf_s1ap_cI = -1; /* CI */ +static int hf_s1ap_rAC = -1; /* RAC */ static int hf_s1ap_pDCP_SN = -1; /* PDCP_SN */ static int hf_s1ap_hFN = -1; /* HFN */ static int hf_s1ap_procedureCode = -1; /* ProcedureCode */ @@ -417,8 +423,12 @@ static int hf_s1ap_CriticalityDiagnostics_IE_List_item = -1; /* CriticalityDiag static int hf_s1ap_iECriticality = -1; /* Criticality */ static int hf_s1ap_iE_ID = -1; /* ProtocolIE_ID */ static int hf_s1ap_typeOfError = -1; /* TypeOfError */ +static int hf_s1ap_macroENB_ID = -1; /* BIT_STRING_SIZE_20 */ +static int hf_s1ap_homeENB_ID = -1; /* BIT_STRING_SIZE_28 */ +static int hf_s1ap_eNB_ID = -1; /* ENB_ID */ static int hf_s1ap_bearers_SubjectToStatusTransferList = -1; /* Bearers_SubjectToStatusTransferList */ 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 */ static int hf_s1ap_pLMN_Identity = -1; /* PLMNidentity */ static int hf_s1ap_forbiddenTACs = -1; /* ForbiddenTACs */ @@ -426,6 +436,10 @@ static int hf_s1ap_ForbiddenTACs_item = -1; /* TAC */ static int hf_s1ap_ForbiddenLAs_item = -1; /* ForbiddenLAs_Item */ static int hf_s1ap_forbiddenLACs = -1; /* ForbiddenLACs */ static int hf_s1ap_ForbiddenLACs_item = -1; /* LAC */ +static int hf_s1ap_sAE_Bearer_MaximumBitrateDL = -1; /* BitRate */ +static int hf_s1ap_sAE_Bearer_MaximumBitrateUL = -1; /* BitRate */ +static int hf_s1ap_sAE_Bearer_GuaranteedBitrateDL = -1; /* BitRate */ +static int hf_s1ap_sAE_Bearer_GuaranteedBitrateUL = -1; /* BitRate */ static int hf_s1ap_mME_Group_ID = -1; /* MME_Group_ID */ static int hf_s1ap_mME_Code = -1; /* MME_Code */ static int hf_s1ap_servingPLMN = -1; /* PLMNidentity */ @@ -436,6 +450,7 @@ 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_overloadAction = -1; /* OverloadAction */ static int hf_s1ap_eventType = -1; /* EventType */ static int hf_s1ap_reportArea = -1; /* ReportArea */ static int hf_s1ap_SAEBearerInformationList_item = -1; /* ProtocolIE_SingleContainer */ @@ -444,34 +459,30 @@ static int hf_s1ap_SAEBearerList_item = -1; /* ProtocolIE_SingleContainer static int hf_s1ap_cause = -1; /* Cause */ static int hf_s1ap_qCI = -1; /* QCI */ static int hf_s1ap_allocationRetentionPriority = -1; /* AllocationRetentionPriority */ -static int hf_s1ap_sAE_BearerType = -1; /* SAE_Bearer_Type */ -static int hf_s1ap_sAE_GBR_Bearer = -1; /* SAE_GBR_Bearer */ -static int hf_s1ap_sAE_non_GBR_Bearer = -1; /* SAE_non_GBR_Bearer */ -static int hf_s1ap_sAE_Bearer_MaximumBitrateDL = -1; /* SAE_Bearer_BitRate */ -static int hf_s1ap_sAE_Bearer_MaximumBitrateUL = -1; /* SAE_Bearer_BitRate */ -static int hf_s1ap_sAE_Bearer_GuaranteedBitrateDL = -1; /* SAE_Bearer_BitRate */ -static int hf_s1ap_sAE_Bearer_GuaranteedBitrateUL = -1; /* SAE_Bearer_BitRate */ -static int hf_s1ap_sAE_non_GBR_Bearer_Type = -1; /* SAE_non_GBR_Bearer_Type */ +static int hf_s1ap_gbrQosInformation = -1; /* GBR_QosInformation */ static int hf_s1ap_securityKey = -1; /* SecurityKey */ static int hf_s1ap_securityPlaceHolder = -1; /* SecurityPlaceHolder */ -static int hf_s1ap_sourceeNB_ID = -1; /* SourceeNB_ID */ -static int hf_s1ap_eNB_Global_ID = -1; /* ENB_Global_ID */ static int hf_s1ap_rRC_Container = -1; /* RRC_Container */ static int hf_s1ap_sAEBearerInformationList = -1; /* SAEBearerInformationList */ +static int hf_s1ap_targetCell_ID = -1; /* EUTRAN_CGI */ +static int hf_s1ap_subscriberProfileIDforRFP = -1; /* SubscriberProfileIDforRFP */ +static int hf_s1ap_ServedGUMMEIs_item = -1; /* GUMMEI */ 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_targeteNB_ID = -1; /* TargeteNB_ID */ +static int hf_s1ap_targeteNB_ID = -1; /* Global_ENB_ID */ static int hf_s1ap_targetRNC_ID = -1; /* TargetRNC_ID */ static int hf_s1ap_cGI = -1; /* CGI */ static int hf_s1ap_lAI = -1; /* LAI */ -static int hf_s1ap_rAC = -1; /* RAC */ 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_uEaggregateMaximumBitRateDL = -1; /* BitRate */ +static int hf_s1ap_uEaggregateMaximumBitRateUL = -1; /* BitRate */ static int hf_s1ap_uE_S1AP_ID_pair = -1; /* UE_S1AP_ID_pair */ static int hf_s1ap_mME_UE_S1AP_ID = -1; /* MME_UE_S1AP_ID */ static int hf_s1ap_eNB_UE_S1AP_ID = -1; /* ENB_UE_S1AP_ID */ @@ -523,58 +534,57 @@ static int ett_s1ap = -1; static gint ett_s1ap_PrivateIE_ID = -1; static gint ett_s1ap_ProtocolIE_Container = -1; static gint ett_s1ap_ProtocolIE_Field = -1; -static gint ett_s1ap_ProtocolIE_FieldPair = -1; static gint ett_s1ap_ProtocolIE_ContainerList = -1; static gint ett_s1ap_ProtocolExtensionContainer = -1; static gint ett_s1ap_ProtocolExtensionField = -1; -static gint ett_s1ap_AllocationRetentionPriority = -1; -static gint ett_s1ap_AggregateMaximumBitrate = -1; static gint ett_s1ap_Bearers_SubjectToStatusTransferList = -1; static gint ett_s1ap_Bearers_SubjectToStatusTransfer_Item = -1; static gint ett_s1ap_BPLMNs = -1; static gint ett_s1ap_Cause = -1; +static gint ett_s1ap_Cdma2000OneXSRVCCInfo = -1; static gint ett_s1ap_CGI = -1; static gint ett_s1ap_COUNTvalue = -1; static gint ett_s1ap_CriticalityDiagnostics = -1; static gint ett_s1ap_CriticalityDiagnostics_IE_List = -1; static gint ett_s1ap_CriticalityDiagnostics_IE_Item = -1; +static gint ett_s1ap_ENB_ID = -1; +static gint ett_s1ap_Global_ENB_ID = -1; static gint ett_s1ap_ENB_StatusTransfer_TransparentContainer = -1; static gint ett_s1ap_EPLMNs = -1; +static gint ett_s1ap_EUTRAN_CGI = -1; static gint ett_s1ap_ForbiddenTAs = -1; static gint ett_s1ap_ForbiddenTAs_Item = -1; static gint ett_s1ap_ForbiddenTACs = -1; static gint ett_s1ap_ForbiddenLAs = -1; static gint ett_s1ap_ForbiddenLAs_Item = -1; 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_OverloadResponse = -1; static gint ett_s1ap_RequestType = -1; static gint ett_s1ap_SAEBearerInformationList = -1; static gint ett_s1ap_SAEBearerInformationListItem = -1; static gint ett_s1ap_SAEBearerList = -1; static gint ett_s1ap_SAEBearerItem = -1; static gint ett_s1ap_SAE_BearerLevelQoSParameters = -1; -static gint ett_s1ap_SAE_Bearer_Type = -1; -static gint ett_s1ap_SAE_GBR_Bearer = -1; -static gint ett_s1ap_SAE_non_GBR_Bearer = -1; static gint ett_s1ap_SecurityInfo = -1; static gint ett_s1ap_SecurityInformation = -1; -static gint ett_s1ap_SourceID = -1; -static gint ett_s1ap_SourceeNB_ID = -1; static gint ett_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer = -1; +static gint ett_s1ap_ServedGUMMEIs = -1; static gint ett_s1ap_ServedPLMNs = -1; static gint ett_s1ap_SupportedTAs = -1; static gint ett_s1ap_SupportedTAs_Item = -1; static gint ett_s1ap_S_TMSI = -1; static gint ett_s1ap_TAI = -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_TraceActivation = -1; +static gint ett_s1ap_UEAggregateMaximumBitrate = -1; static gint ett_s1ap_UE_S1AP_IDs = -1; static gint ett_s1ap_UE_S1AP_ID_pair = -1; static gint ett_s1ap_UE_associatedLogicalS1_ConnectionItem = -1; @@ -592,8 +602,6 @@ static gint ett_s1ap_LTEtoGERANHOInformationRes = -1; static gint ett_s1ap_HandoverPreparationFailure = -1; static gint ett_s1ap_HandoverRequest = -1; static gint ett_s1ap_SAEBearerToBeSetupItemHOReq = -1; -static gint ett_s1ap_UTRANtoLTEHOInformationReq = -1; -static gint ett_s1ap_GERANtoLTEHOInformationReq = -1; static gint ett_s1ap_HandoverRequestAcknowledge = -1; static gint ett_s1ap_SAEBearerAdmittedItem = -1; static gint ett_s1ap_SAEBearerFailedToSetupItemHOReqAck = -1; @@ -626,7 +634,6 @@ static gint ett_s1ap_SAEBearerReleaseListBearerRelComp = -1; static gint ett_s1ap_SAEBearerReleaseItemBearerRelComp = -1; static gint ett_s1ap_SAEBearerReleaseRequest = -1; static gint ett_s1ap_InitialContextSetupRequest = -1; -static gint ett_s1ap_UEContextReleaseRequest = -1; static gint ett_s1ap_SAEBearerToBeSetupListCtxtSUReq = -1; static gint ett_s1ap_SAEBearerToBeSetupItemCtxtSUReq = -1; static gint ett_s1ap_InitialContextSetupResponse = -1; @@ -636,6 +643,7 @@ static gint ett_s1ap_InitialContextSetupFailure = -1; static gint ett_s1ap_Paging = -1; static gint ett_s1ap_TAIList = -1; static gint ett_s1ap_TAIItem = -1; +static gint ett_s1ap_UEContextReleaseRequest = -1; static gint ett_s1ap_UEContextReleaseCommand = -1; static gint ett_s1ap_UEContextReleaseComplete = -1; static gint ett_s1ap_UEContextModificationRequest = -1; @@ -671,6 +679,8 @@ static gint ett_s1ap_DeactivateTrace = -1; static gint ett_s1ap_LocationReportingControl = -1; static gint ett_s1ap_LocationReportingFailureIndication = -1; static gint ett_s1ap_LocationReport = -1; +static gint ett_s1ap_OverloadStart = -1; +static gint ett_s1ap_OverloadStop = -1; static gint ett_s1ap_S1AP_PDU = -1; static gint ett_s1ap_InitiatingMessage = -1; static gint ett_s1ap_SuccessfulOutcome = -1; @@ -801,6 +811,8 @@ static const value_string s1ap_ProcedureCode_vals[] = { { id_LocationReportingControl, "id-LocationReportingControl" }, { id_LocationReportingFailureIndication, "id-LocationReportingFailureIndication" }, { id_LocationReport, "id-LocationReport" }, + { id_OverloadStart, "id-OverloadStart" }, + { id_OverloadStop, "id-OverloadStop" }, { 0, NULL } }; @@ -810,7 +822,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 73 "s1ap.cnf" +#line 75 "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, @@ -884,18 +896,16 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = { { id_SAEBearerSetupListCtxtSURes, "id-SAEBearerSetupListCtxtSURes" }, { id_SAEBearerToBeSetupItemCtxtSUReq, "id-SAEBearerToBeSetupItemCtxtSUReq" }, { id_SAEBearerToBeSetupListHOReq, "id-SAEBearerToBeSetupListHOReq" }, - { id_GERANtoLTEHOInformationReq, "id-GERANtoLTEHOInformationReq" }, { id_GERANtoLTEHOInformationRes, "id-GERANtoLTEHOInformationRes" }, - { id_UTRANtoLTEHOInformationReq, "id-UTRANtoLTEHOInformationReq" }, { id_UTRANtoLTEHOInformationRes, "id-UTRANtoLTEHOInformationRes" }, { id_CriticalityDiagnostics, "id-CriticalityDiagnostics" }, - { id_ENB_Global_ID, "id-ENB-Global-ID" }, + { id_Global_ENB_ID, "id-Global-ENB-ID" }, { id_eNBname, "id-eNBname" }, { id_MMEname, "id-MMEname" }, { id_ServedPLMNs, "id-ServedPLMNs" }, { id_SupportedTAs, "id-SupportedTAs" }, { id_TimeToWait, "id-TimeToWait" }, - { id_aggregateMaximumBitrate, "id-aggregateMaximumBitrate" }, + { id_uEaggregateMaximumBitrate, "id-uEaggregateMaximumBitrate" }, { id_TAI, "id-TAI" }, { id_SAEBearerReleaseListBearerRelComp, "id-SAEBearerReleaseListBearerRelComp" }, { id_cdma2000PDU, "id-cdma2000PDU" }, @@ -909,7 +919,6 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = { { id_UEIdentityIndexValue, "id-UEIdentityIndexValue" }, { id_cdma2000HOStatus, "id-cdma2000HOStatus" }, { id_cdma2000HORequiredIndication, "id-cdma2000HORequiredIndication" }, - { id_cdma2000OneXMEID, "id-cdma2000OneXMEID" }, { id_TraceReference, "id-TraceReference" }, { id_RelativeMMECapacity, "id-RelativeMMECapacity" }, { id_SourceMME_UE_S1AP_ID, "id-SourceMME-UE-S1AP-ID" }, @@ -924,7 +933,13 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = { { id_cdma2000OneXRAND, "id-cdma2000OneXRAND" }, { id_RequestType, "id-RequestType" }, { id_UE_S1AP_IDs, "id-UE-S1AP-IDs" }, - { id_EUTRAN_CGI_ID, "id-EUTRAN-CGI-ID" }, + { id_EUTRAN_CGI, "id-EUTRAN-CGI" }, + { id_OverloadResponse, "id-OverloadResponse" }, + { id_cdma2000OneXSRVCCInfo, "id-cdma2000OneXSRVCCInfo" }, + { id_SAEBearerFailedToSwitchDLList, "id-SAEBearerFailedToSwitchDLList" }, + { id_SourceeNodeB_ToTargeteNodeB_TransparentContainer, "id-SourceeNodeB-ToTargeteNodeB-TransparentContainer" }, + { id_ServedGUMMEIs, "id-ServedGUMMEIs" }, + { id_SubscriberProfileIDforRFP, "id-SubscriberProfileIDforRFP" }, { 0, NULL } }; @@ -934,7 +949,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 57 "s1ap.cnf" +#line 58 "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)")); } @@ -1008,49 +1023,13 @@ dissect_s1ap_ProtocolIE_SingleContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ } - -static int -dissect_s1ap_T_firstValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_ProtocolIEFieldPairFirstValue); - - return offset; -} - - - -static int -dissect_s1ap_T_secondValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_ProtocolIEFieldPairSecondValue); - - return offset; -} - - -static const per_sequence_t ProtocolIE_FieldPair_sequence[] = { - { &hf_s1ap_id , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_ID }, - { &hf_s1ap_firstCriticality, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_Criticality }, - { &hf_s1ap_firstValue , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_T_firstValue }, - { &hf_s1ap_secondCriticality, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_Criticality }, - { &hf_s1ap_secondValue , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_T_secondValue }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_ProtocolIE_FieldPair(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_ProtocolIE_FieldPair, ProtocolIE_FieldPair_sequence); - - return offset; -} - - static const per_sequence_t ProtocolIE_ContainerList_sequence_of[1] = { { &hf_s1ap_ProtocolIE_ContainerList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer }, }; 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 95 "s1ap.cnf" +#line 97 "s1ap.cnf" static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = { { "lowerBound", ASN1_PAR_INTEGER }, { "upperBound", ASN1_PAR_INTEGER }, @@ -1107,7 +1086,7 @@ dissect_s1ap_ProtocolExtensionContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int -dissect_s1ap_PriorityLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_s1ap_AllocationRetentionPriority(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, 15U, NULL, FALSE); @@ -1115,47 +1094,6 @@ dissect_s1ap_PriorityLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const per_sequence_t AllocationRetentionPriority_sequence[] = { - { &hf_s1ap_priorityLevel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PriorityLevel }, - { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_AllocationRetentionPriority(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_AllocationRetentionPriority, AllocationRetentionPriority_sequence); - - return offset; -} - - - -static int -dissect_s1ap_SAE_Bearer_BitRate(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, 10000000U, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t AggregateMaximumBitrate_sequence[] = { - { &hf_s1ap_aggregateMaximumBitRateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_BitRate }, - { &hf_s1ap_aggregateMaximumBitRateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_BitRate }, - { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_AggregateMaximumBitrate(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_AggregateMaximumBitrate, AggregateMaximumBitrate_sequence); - - return offset; -} - - static const per_sequence_t Bearers_SubjectToStatusTransferList_sequence_of[1] = { { &hf_s1ap_Bearers_SubjectToStatusTransferList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer }, }; @@ -1164,7 +1102,7 @@ static int dissect_s1ap_Bearers_SubjectToStatusTransferList(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_Bearers_SubjectToStatusTransferList, Bearers_SubjectToStatusTransferList_sequence_of, - 0, maxNrOfSAEBs); + 1, maxNrOfSAEBs); return offset; } @@ -1173,8 +1111,8 @@ dissect_s1ap_Bearers_SubjectToStatusTransferList(tvbuff_t *tvb _U_, int offset _ static int dissect_s1ap_SAE_Bearer_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, - NO_BOUND, NO_BOUND, FALSE, NULL); + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, TRUE); return offset; } @@ -1233,10 +1171,20 @@ dissect_s1ap_Bearers_SubjectToStatusTransfer_Item(tvbuff_t *tvb _U_, int offset +static int +dissect_s1ap_BitRate(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_64b(tvb, offset, actx, tree, hf_index, + 0U, 10000000000U, NULL, FALSE); + + return offset; +} + + + 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 155 "s1ap.cnf" +#line 159 "s1ap.cnf" tvbuff_t *parameter_tvb=NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -1283,6 +1231,13 @@ static const value_string s1ap_CauseRadioNetwork_vals[] = { { 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" }, { 0, NULL } }; @@ -1290,7 +1245,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, - 17, NULL, TRUE, 0, NULL); + 24, NULL, TRUE, 0, NULL); return offset; } @@ -1400,6 +1355,16 @@ dissect_s1ap_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot +static int +dissect_s1ap_CellIdentity(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); + + return offset; +} + + + static int dissect_s1ap_Cdma2000PDU(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, @@ -1477,6 +1442,43 @@ dissect_s1ap_Cdma2000OneXMEID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act +static int +dissect_s1ap_Cdma2000OneXMSI(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_Cdma2000OneXPilot(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 per_sequence_t Cdma2000OneXSRVCCInfo_sequence[] = { + { &hf_s1ap_cdma2000OneXMEID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Cdma2000OneXMEID }, + { &hf_s1ap_cdma2000OneXMSI, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Cdma2000OneXMSI }, + { &hf_s1ap_cdma2000OneXPilot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Cdma2000OneXPilot }, + { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_s1ap_Cdma2000OneXSRVCCInfo(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_Cdma2000OneXSRVCCInfo, Cdma2000OneXSRVCCInfo_sequence); + + return offset; +} + + + static int dissect_s1ap_Cdma2000OneXRAND(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, @@ -1506,10 +1508,21 @@ dissect_s1ap_CI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_t } + +static int +dissect_s1ap_RAC(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, + 1, 1, FALSE, NULL); + + return offset; +} + + 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 }, { NULL, 0, 0, NULL } }; @@ -1541,7 +1554,7 @@ dissect_s1ap_TypeOfError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static const per_sequence_t CriticalityDiagnostics_IE_Item_sequence[] = { { &hf_s1ap_iECriticality , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Criticality }, { &hf_s1ap_iE_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_ID }, - { &hf_s1ap_typeOfError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_TypeOfError }, + { &hf_s1ap_typeOfError , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TypeOfError }, { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -1617,6 +1630,64 @@ dissect_s1ap_Direct_Forwarding_Path_Availability(tvbuff_t *tvb _U_, int offset _ } + +static int +dissect_s1ap_BIT_STRING_SIZE_20(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, + 20, 20, FALSE, NULL); + + return offset; +} + + + +static int +dissect_s1ap_BIT_STRING_SIZE_28(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); + + return offset; +} + + +static const value_string s1ap_ENB_ID_vals[] = { + { 0, "macroENB-ID" }, + { 1, "homeENB-ID" }, + { 0, NULL } +}; + +static const per_choice_t ENB_ID_choice[] = { + { 0, &hf_s1ap_macroENB_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_BIT_STRING_SIZE_20 }, + { 1, &hf_s1ap_homeENB_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_BIT_STRING_SIZE_28 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_s1ap_ENB_ID(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_ENB_ID, ENB_ID_choice, + NULL); + + return offset; +} + + +static const per_sequence_t Global_ENB_ID_sequence[] = { + { &hf_s1ap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity }, + { &hf_s1ap_eNB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ENB_ID }, + { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_s1ap_Global_ENB_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_Global_ENB_ID, Global_ENB_ID_sequence); + + return offset; +} + + static const per_sequence_t ENB_StatusTransfer_TransparentContainer_sequence[] = { { &hf_s1ap_bearers_SubjectToStatusTransferList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_Bearers_SubjectToStatusTransferList }, { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, @@ -1643,19 +1714,9 @@ dissect_s1ap_ENB_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx -static int -dissect_s1ap_ENB_Global_ID(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); - - return offset; -} - - - 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 166 "s1ap.cnf" +#line 170 "s1ap.cnf" tvbuff_t *parameter_tvb=NULL; int length; int p_offset; @@ -1716,11 +1777,17 @@ dissect_s1ap_EventType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const per_sequence_t EUTRAN_CGI_sequence[] = { + { &hf_s1ap_pLMNidentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity }, + { &hf_s1ap_cell_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CellIdentity }, + { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; static int -dissect_s1ap_EUTRAN_CGI_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, - NO_BOUND, NO_BOUND, FALSE, NULL); +dissect_s1ap_EUTRAN_CGI(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_EUTRAN_CGI, EUTRAN_CGI_sequence); return offset; } @@ -1849,6 +1916,24 @@ 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_sAE_Bearer_MaximumBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate }, + { &hf_s1ap_sAE_Bearer_MaximumBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate }, + { &hf_s1ap_sAE_Bearer_GuaranteedBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate }, + { &hf_s1ap_sAE_Bearer_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_) { @@ -2067,6 +2152,43 @@ dissect_s1ap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr } +static const value_string s1ap_OverloadAction_vals[] = { + { 0, "reject-non-emergency-mo-dt" }, + { 1, "reject-all-rrc-cr-signalling" }, + { 2, "permit-emergency-sessions-only" }, + { 0, NULL } +}; + + +static int +dissect_s1ap_OverloadAction(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); + + return offset; +} + + +static const value_string s1ap_OverloadResponse_vals[] = { + { 0, "overloadAction" }, + { 0, NULL } +}; + +static const per_choice_t OverloadResponse_choice[] = { + { 0, &hf_s1ap_overloadAction , ASN1_EXTENSION_ROOT , dissect_s1ap_OverloadAction }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_s1ap_OverloadResponse(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_OverloadResponse, OverloadResponse_choice, + NULL); + + return offset; +} + + static int dissect_s1ap_PagingDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -2118,16 +2240,6 @@ dissect_s1ap_RelativeMMECapacity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * -static int -dissect_s1ap_RAC(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, - 1, 1, FALSE, NULL); - - return offset; -} - - - 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, @@ -2189,7 +2301,7 @@ dissect_s1ap_SAEBearerInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static const per_sequence_t SAEBearerInformationListItem_sequence[] = { { &hf_s1ap_sAE_Bearer_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_ID }, - { &hf_s1ap_dL_Forwarding , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_DL_Forwarding }, + { &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 } }; @@ -2211,7 +2323,7 @@ static int dissect_s1ap_SAEBearerList(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_SAEBearerList, SAEBearerList_sequence_of, - 0, maxNrOfSAEBs); + 1, maxNrOfSAEBs); return offset; } @@ -2233,80 +2345,10 @@ dissect_s1ap_SAEBearerItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const per_sequence_t SAE_GBR_Bearer_sequence[] = { - { &hf_s1ap_sAE_Bearer_MaximumBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_BitRate }, - { &hf_s1ap_sAE_Bearer_MaximumBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_BitRate }, - { &hf_s1ap_sAE_Bearer_GuaranteedBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_BitRate }, - { &hf_s1ap_sAE_Bearer_GuaranteedBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_BitRate }, - { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_SAE_GBR_Bearer(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_SAE_GBR_Bearer, SAE_GBR_Bearer_sequence); - - return offset; -} - - -static const value_string s1ap_SAE_non_GBR_Bearer_Type_vals[] = { - { 0, "non-GBR-Bearer" }, - { 0, NULL } -}; - - -static int -dissect_s1ap_SAE_non_GBR_Bearer_Type(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 SAE_non_GBR_Bearer_sequence[] = { - { &hf_s1ap_sAE_non_GBR_Bearer_Type, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_non_GBR_Bearer_Type }, - { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_SAE_non_GBR_Bearer(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_SAE_non_GBR_Bearer, SAE_non_GBR_Bearer_sequence); - - return offset; -} - - -static const value_string s1ap_SAE_Bearer_Type_vals[] = { - { 0, "sAE-GBR-Bearer" }, - { 1, "sAE-non-GBR-Bearer" }, - { 0, NULL } -}; - -static const per_choice_t SAE_Bearer_Type_choice[] = { - { 0, &hf_s1ap_sAE_GBR_Bearer , ASN1_EXTENSION_ROOT , dissect_s1ap_SAE_GBR_Bearer }, - { 1, &hf_s1ap_sAE_non_GBR_Bearer, ASN1_EXTENSION_ROOT , dissect_s1ap_SAE_non_GBR_Bearer }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_s1ap_SAE_Bearer_Type(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_SAE_Bearer_Type, SAE_Bearer_Type_choice, - NULL); - - return offset; -} - - static const per_sequence_t SAE_BearerLevelQoSParameters_sequence[] = { { &hf_s1ap_qCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_QCI }, - { &hf_s1ap_allocationRetentionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_AllocationRetentionPriority }, - { &hf_s1ap_sAE_BearerType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SAE_Bearer_Type }, + { &hf_s1ap_allocationRetentionPriority, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_AllocationRetentionPriority }, + { &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 } }; @@ -2385,30 +2427,11 @@ dissect_s1ap_SourceBSS_ToTargetBSS_TransparentContainer(tvbuff_t *tvb _U_, int o } -static const per_sequence_t SourceeNB_ID_sequence[] = { - { &hf_s1ap_pLMNidentity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity }, - { &hf_s1ap_eNB_Global_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ENB_Global_ID }, - { 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 SourceID_sequence[] = { - { &hf_s1ap_sourceeNB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SourceeNB_ID }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_SourceID(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_SourceID, SourceID_sequence); +dissect_s1ap_SubscriberProfileIDforRFP(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); return offset; } @@ -2417,6 +2440,8 @@ dissect_s1ap_SourceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static const per_sequence_t SourceeNodeB_ToTargeteNodeB_TransparentContainer_sequence[] = { { &hf_s1ap_rRC_Container , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_RRC_Container }, { &hf_s1ap_sAEBearerInformationList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_SAEBearerInformationList }, + { &hf_s1ap_targetCell_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI }, + { &hf_s1ap_subscriberProfileIDforRFP, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_SubscriberProfileIDforRFP }, { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -2440,6 +2465,20 @@ 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 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, maxnoofGUMMEIs); + + return offset; +} + + static const per_sequence_t ServedPLMNs_sequence_of[1] = { { &hf_s1ap_ServedPLMNs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity }, }; @@ -2514,25 +2553,11 @@ dissect_s1ap_TAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_ } -static const per_sequence_t TargeteNB_ID_sequence[] = { - { &hf_s1ap_pLMNidentity , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_PLMNidentity }, - { &hf_s1ap_eNB_Global_ID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ENB_Global_ID }, - { 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 }, { NULL, 0, 0, NULL } }; @@ -2553,7 +2578,7 @@ static const value_string s1ap_TargetID_vals[] = { }; static const per_choice_t TargetID_choice[] = { - { 0, &hf_s1ap_targeteNB_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_TargeteNB_ID }, + { 0, &hf_s1ap_targeteNB_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_Global_ENB_ID }, { 1, &hf_s1ap_targetRNC_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_TargetRNC_ID }, { 2, &hf_s1ap_cGI , ASN1_EXTENSION_ROOT , dissect_s1ap_CGI }, { 0, NULL, 0, NULL } @@ -2617,8 +2642,8 @@ 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_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL); + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 160, TRUE, NULL); return offset; } @@ -2650,6 +2675,22 @@ dissect_s1ap_TraceActivation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const per_sequence_t UEAggregateMaximumBitrate_sequence[] = { + { &hf_s1ap_uEaggregateMaximumBitRateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate }, + { &hf_s1ap_uEaggregateMaximumBitRateUL, 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_UEAggregateMaximumBitrate(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_UEAggregateMaximumBitrate, UEAggregateMaximumBitrate_sequence); + + return offset; +} + + 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 }, @@ -2668,14 +2709,12 @@ dissect_s1ap_UE_S1AP_ID_pair(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static const value_string s1ap_UE_S1AP_IDs_vals[] = { { 0, "uE-S1AP-ID-pair" }, { 1, "mME-UE-S1AP-ID" }, - { 2, "eNB-UE-S1AP-ID" }, { 0, NULL } }; static const per_choice_t UE_S1AP_IDs_choice[] = { { 0, &hf_s1ap_uE_S1AP_ID_pair, ASN1_EXTENSION_ROOT , dissect_s1ap_UE_S1AP_ID_pair }, { 1, &hf_s1ap_mME_UE_S1AP_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_MME_UE_S1AP_ID }, - { 2, &hf_s1ap_eNB_UE_S1AP_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_ENB_UE_S1AP_ID }, { 0, NULL, 0, NULL } }; @@ -2750,7 +2789,7 @@ dissect_s1ap_UERadioCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_SAEB_IE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 122 "s1ap.cnf" +#line 124 "s1ap.cnf" asn1_stack_frame_push(actx, "ProtocolIE-ContainerList"); asn1_param_push_integer(actx, 1); asn1_param_push_integer(actx, maxNrOfSAEBs); @@ -2986,36 +3025,6 @@ dissect_s1ap_SAEBearerToBeSetupItemHOReq(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t UTRANtoLTEHOInformationReq_sequence[] = { - { &hf_s1ap_sourceRNC_ToTargetRNC_TransparentContainer, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SourceRNC_ToTargetRNC_TransparentContainer }, - { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_UTRANtoLTEHOInformationReq(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_UTRANtoLTEHOInformationReq, UTRANtoLTEHOInformationReq_sequence); - - return offset; -} - - -static const per_sequence_t GERANtoLTEHOInformationReq_sequence[] = { - { &hf_s1ap_sourceBSS_ToTargetBSS_TransparentContainer, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SourceBSS_ToTargetBSS_TransparentContainer }, - { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_GERANtoLTEHOInformationReq(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_GERANtoLTEHOInformationReq, GERANtoLTEHOInformationReq_sequence); - - return offset; -} - - static const per_sequence_t HandoverRequestAcknowledge_sequence[] = { { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -3331,7 +3340,7 @@ static int dissect_s1ap_SAEBearerSetupListBearerSURes(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_SAEBearerSetupListBearerSURes, SAEBearerSetupListBearerSURes_sequence_of, - 0, maxNrOfSAEBs); + 1, maxNrOfSAEBs); return offset; } @@ -3420,7 +3429,7 @@ static int dissect_s1ap_SAEBearerModifyListBearerModRes(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_SAEBearerModifyListBearerModRes, SAEBearerModifyListBearerModRes_sequence_of, - 0, maxNrOfSAEBs); + 1, maxNrOfSAEBs); return offset; } @@ -3477,7 +3486,7 @@ static int dissect_s1ap_SAEBearerReleaseListBearerRelComp(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_SAEBearerReleaseListBearerRelComp, SAEBearerReleaseListBearerRelComp_sequence_of, - 0, maxNrOfSAEBs); + 1, maxNrOfSAEBs); return offset; } @@ -3526,20 +3535,6 @@ dissect_s1ap_InitialContextSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t UEContextReleaseRequest_sequence[] = { - { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_s1ap_UEContextReleaseRequest(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_UEContextReleaseRequest, UEContextReleaseRequest_sequence); - - return offset; -} - - static const per_sequence_t SAEBearerToBeSetupListCtxtSUReq_sequence_of[1] = { { &hf_s1ap_SAEBearerToBeSetupListCtxtSUReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer }, }; @@ -3674,6 +3669,20 @@ dissect_s1ap_TAIItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr } +static const per_sequence_t UEContextReleaseRequest_sequence[] = { + { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_s1ap_UEContextReleaseRequest(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_UEContextReleaseRequest, UEContextReleaseRequest_sequence); + + return offset; +} + + static const per_sequence_t UEContextReleaseCommand_sequence[] = { { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -4187,6 +4196,34 @@ dissect_s1ap_LocationReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const per_sequence_t OverloadStart_sequence[] = { + { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_s1ap_OverloadStart(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_OverloadStart, OverloadStart_sequence); + + return offset; +} + + +static const per_sequence_t OverloadStop_sequence[] = { + { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_s1ap_OverloadStop(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_OverloadStop, OverloadStop_sequence); + + return offset; +} + + static int dissect_s1ap_InitiatingMessage_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4287,14 +4324,6 @@ dissect_s1ap_S1AP_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p /*--- PDUs ---*/ -static int dissect_AggregateMaximumBitrate_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_AggregateMaximumBitrate(tvb, offset, &asn1_ctx, tree, hf_s1ap_AggregateMaximumBitrate_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_Bearers_SubjectToStatusTransfer_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -4351,11 +4380,11 @@ static int dissect_Cdma2000HORequiredIndication_PDU(tvbuff_t *tvb _U_, packet_in offset += 7; offset >>= 3; return offset; } -static int dissect_Cdma2000OneXMEID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { +static int dissect_Cdma2000OneXSRVCCInfo_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_Cdma2000OneXMEID(tvb, offset, &asn1_ctx, tree, hf_s1ap_Cdma2000OneXMEID_PDU); + offset = dissect_s1ap_Cdma2000OneXSRVCCInfo(tvb, offset, &asn1_ctx, tree, hf_s1ap_Cdma2000OneXSRVCCInfo_PDU); offset += 7; offset >>= 3; return offset; } @@ -4383,6 +4412,14 @@ static int dissect_Direct_Forwarding_Path_Availability_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } +static int dissect_Global_ENB_ID_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_Global_ENB_ID(tvb, offset, &asn1_ctx, tree, hf_s1ap_Global_ENB_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_ENB_StatusTransfer_TransparentContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -4399,14 +4436,6 @@ static int dissect_ENB_UE_S1AP_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } -static int dissect_ENB_Global_ID_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_ENB_Global_ID(tvb, offset, &asn1_ctx, tree, hf_s1ap_ENB_Global_ID_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_ENBname_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -4415,11 +4444,11 @@ static int dissect_ENBname_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_ offset += 7; offset >>= 3; return offset; } -static int dissect_EUTRAN_CGI_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { +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; asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_s1ap_EUTRAN_CGI_ID(tvb, offset, &asn1_ctx, tree, hf_s1ap_EUTRAN_CGI_ID_PDU); + offset = dissect_s1ap_EUTRAN_CGI(tvb, offset, &asn1_ctx, tree, hf_s1ap_EUTRAN_CGI_PDU); offset += 7; offset >>= 3; return offset; } @@ -4471,6 +4500,14 @@ static int dissect_NAS_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_ offset += 7; offset >>= 3; return offset; } +static int dissect_OverloadResponse_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_OverloadResponse(tvb, offset, &asn1_ctx, tree, hf_s1ap_OverloadResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PagingDRX_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -4543,11 +4580,19 @@ static int dissect_SecurityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } -static int dissect_SourceID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { +static int dissect_SourceeNodeB_ToTargeteNodeB_TransparentContainer_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_SourceID(tvb, offset, &asn1_ctx, tree, hf_s1ap_SourceID_PDU); + offset = dissect_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer(tvb, offset, &asn1_ctx, tree, hf_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ServedGUMMEIs_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_ServedGUMMEIs(tvb, offset, &asn1_ctx, tree, hf_s1ap_ServedGUMMEIs_PDU); offset += 7; offset >>= 3; return offset; } @@ -4559,6 +4604,14 @@ static int dissect_ServedPLMNs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pr offset += 7; offset >>= 3; return offset; } +static int dissect_SubscriberProfileIDforRFP_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_SubscriberProfileIDforRFP(tvb, offset, &asn1_ctx, tree, hf_s1ap_SubscriberProfileIDforRFP_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SupportedTAs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -4615,6 +4668,14 @@ static int dissect_TraceReference_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_UEAggregateMaximumBitrate_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_UEAggregateMaximumBitrate(tvb, offset, &asn1_ctx, tree, hf_s1ap_UEAggregateMaximumBitrate_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UE_S1AP_IDs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -4775,22 +4836,6 @@ static int dissect_SAEBearerToBeSetupItemHOReq_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } -static int dissect_UTRANtoLTEHOInformationReq_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_UTRANtoLTEHOInformationReq(tvb, offset, &asn1_ctx, tree, hf_s1ap_UTRANtoLTEHOInformationReq_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_GERANtoLTEHOInformationReq_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_GERANtoLTEHOInformationReq(tvb, offset, &asn1_ctx, tree, hf_s1ap_GERANtoLTEHOInformationReq_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_HandoverRequestAcknowledge_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -5079,14 +5124,6 @@ static int dissect_InitialContextSetupRequest_PDU(tvbuff_t *tvb _U_, packet_info offset += 7; offset >>= 3; return offset; } -static int dissect_UEContextReleaseRequest_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_UEContextReleaseRequest(tvb, offset, &asn1_ctx, tree, hf_s1ap_UEContextReleaseRequest_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_SAEBearerToBeSetupListCtxtSUReq_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -5159,6 +5196,14 @@ static int dissect_TAIItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_ offset += 7; offset >>= 3; return offset; } +static int dissect_UEContextReleaseRequest_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_UEContextReleaseRequest(tvb, offset, &asn1_ctx, tree, hf_s1ap_UEContextReleaseRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UEContextReleaseCommand_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -5431,6 +5476,22 @@ static int dissect_LocationReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } +static int dissect_OverloadStart_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_OverloadStart(tvb, offset, &asn1_ctx, tree, hf_s1ap_OverloadStart_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OverloadStop_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_OverloadStop(tvb, offset, &asn1_ctx, tree, hf_s1ap_OverloadStop_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_S1AP_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -5523,7 +5584,6 @@ proto_reg_handoff_s1ap(void) dissector_add("s1ap.ies", id_MME_UE_S1AP_ID, new_create_dissector_handle(dissect_MME_UE_S1AP_ID_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_HandoverType, new_create_dissector_handle(dissect_HandoverType_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_Cause, new_create_dissector_handle(dissect_Cause_PDU, proto_s1ap)); - dissector_add("s1ap.ies", id_SourceID, new_create_dissector_handle(dissect_SourceID_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_TargetID, new_create_dissector_handle(dissect_TargetID_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_Intra_LTEHOInformationReq, new_create_dissector_handle(dissect_Intra_LTEHOInformationReq_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_LTEtoUTRANHOInformationReq, new_create_dissector_handle(dissect_LTEtoUTRANHOInformationReq_PDU, proto_s1ap)); @@ -5571,18 +5631,16 @@ proto_reg_handoff_s1ap(void) dissector_add("s1ap.ies", id_SAEBearerSetupListCtxtSURes, new_create_dissector_handle(dissect_SAEBearerSetupListCtxtSURes_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_SAEBearerToBeSetupItemCtxtSUReq, new_create_dissector_handle(dissect_SAEBearerToBeSetupItemCtxtSUReq_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_SAEBearerToBeSetupListHOReq, new_create_dissector_handle(dissect_SAEBearerToBeSetupListHOReq_PDU, proto_s1ap)); - dissector_add("s1ap.ies", id_GERANtoLTEHOInformationReq, new_create_dissector_handle(dissect_GERANtoLTEHOInformationReq_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_GERANtoLTEHOInformationRes, new_create_dissector_handle(dissect_GERANtoLTEHOInformationRes_PDU, proto_s1ap)); - dissector_add("s1ap.ies", id_UTRANtoLTEHOInformationReq, new_create_dissector_handle(dissect_UTRANtoLTEHOInformationReq_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_UTRANtoLTEHOInformationRes, new_create_dissector_handle(dissect_UTRANtoLTEHOInformationRes_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_CriticalityDiagnostics, new_create_dissector_handle(dissect_CriticalityDiagnostics_PDU, proto_s1ap)); - dissector_add("s1ap.ies", id_ENB_Global_ID, new_create_dissector_handle(dissect_ENB_Global_ID_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_Global_ENB_ID, new_create_dissector_handle(dissect_Global_ENB_ID_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_eNBname, new_create_dissector_handle(dissect_ENBname_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_MMEname, new_create_dissector_handle(dissect_MMEname_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_ServedPLMNs, new_create_dissector_handle(dissect_ServedPLMNs_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_SupportedTAs, new_create_dissector_handle(dissect_SupportedTAs_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_TimeToWait, new_create_dissector_handle(dissect_TimeToWait_PDU, proto_s1ap)); - dissector_add("s1ap.ies", id_aggregateMaximumBitrate, new_create_dissector_handle(dissect_AggregateMaximumBitrate_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_uEaggregateMaximumBitrate, new_create_dissector_handle(dissect_UEAggregateMaximumBitrate_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_TAI, new_create_dissector_handle(dissect_TAI_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_SAEBearerReleaseListBearerRelComp, new_create_dissector_handle(dissect_SAEBearerReleaseListBearerRelComp_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_cdma2000PDU, new_create_dissector_handle(dissect_Cdma2000PDU_PDU, proto_s1ap)); @@ -5596,7 +5654,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_cdma2000OneXMEID, new_create_dissector_handle(dissect_Cdma2000OneXMEID_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)); @@ -5611,7 +5668,13 @@ proto_reg_handoff_s1ap(void) dissector_add("s1ap.ies", id_cdma2000OneXRAND, new_create_dissector_handle(dissect_Cdma2000OneXRAND_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_RequestType, new_create_dissector_handle(dissect_RequestType_PDU, proto_s1ap)); dissector_add("s1ap.ies", id_UE_S1AP_IDs, new_create_dissector_handle(dissect_UE_S1AP_IDs_PDU, proto_s1ap)); - dissector_add("s1ap.ies", id_EUTRAN_CGI_ID, new_create_dissector_handle(dissect_EUTRAN_CGI_ID_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_EUTRAN_CGI, new_create_dissector_handle(dissect_EUTRAN_CGI_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_OverloadResponse, new_create_dissector_handle(dissect_OverloadResponse_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_cdma2000OneXSRVCCInfo, new_create_dissector_handle(dissect_Cdma2000OneXSRVCCInfo_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_SAEBearerFailedToSwitchDLList, new_create_dissector_handle(dissect_SAEBearerList_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_SourceeNodeB_ToTargeteNodeB_TransparentContainer, new_create_dissector_handle(dissect_SourceeNodeB_ToTargeteNodeB_TransparentContainer_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_ServedGUMMEIs, new_create_dissector_handle(dissect_ServedGUMMEIs_PDU, proto_s1ap)); + dissector_add("s1ap.ies", id_SubscriberProfileIDforRFP, new_create_dissector_handle(dissect_SubscriberProfileIDforRFP_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)); @@ -5668,6 +5731,8 @@ proto_reg_handoff_s1ap(void) dissector_add("s1ap.proc.imsg", id_LocationReportingControl, new_create_dissector_handle(dissect_LocationReportingControl_PDU, proto_s1ap)); dissector_add("s1ap.proc.imsg", id_LocationReportingFailureIndication, new_create_dissector_handle(dissect_LocationReportingFailureIndication_PDU, proto_s1ap)); dissector_add("s1ap.proc.imsg", id_LocationReport, new_create_dissector_handle(dissect_LocationReport_PDU, proto_s1ap)); + dissector_add("s1ap.proc.imsg", id_OverloadStart, new_create_dissector_handle(dissect_OverloadStart_PDU, proto_s1ap)); + dissector_add("s1ap.proc.imsg", id_OverloadStop, new_create_dissector_handle(dissect_OverloadStop_PDU, proto_s1ap)); /*--- End of included file: packet-s1ap-dis-tab.c ---*/ @@ -5684,10 +5749,6 @@ void proto_register_s1ap(void) { /*--- Included file: packet-s1ap-hfarr.c ---*/ #line 1 "packet-s1ap-hfarr.c" - { &hf_s1ap_AggregateMaximumBitrate_PDU, - { "AggregateMaximumBitrate", "s1ap.AggregateMaximumBitrate", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.AggregateMaximumBitrate", HFILL }}, { &hf_s1ap_Bearers_SubjectToStatusTransfer_Item_PDU, { "Bearers-SubjectToStatusTransfer-Item", "s1ap.Bearers_SubjectToStatusTransfer_Item", FT_NONE, BASE_NONE, NULL, 0, @@ -5716,10 +5777,10 @@ void proto_register_s1ap(void) { { "Cdma2000HORequiredIndication", "s1ap.Cdma2000HORequiredIndication", FT_UINT32, BASE_DEC, VALS(s1ap_Cdma2000HORequiredIndication_vals), 0, "s1ap.Cdma2000HORequiredIndication", HFILL }}, - { &hf_s1ap_Cdma2000OneXMEID_PDU, - { "Cdma2000OneXMEID", "s1ap.Cdma2000OneXMEID", - FT_BYTES, BASE_HEX, NULL, 0, - "s1ap.Cdma2000OneXMEID", HFILL }}, + { &hf_s1ap_Cdma2000OneXSRVCCInfo_PDU, + { "Cdma2000OneXSRVCCInfo", "s1ap.Cdma2000OneXSRVCCInfo", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.Cdma2000OneXSRVCCInfo", HFILL }}, { &hf_s1ap_Cdma2000OneXRAND_PDU, { "Cdma2000OneXRAND", "s1ap.Cdma2000OneXRAND", FT_BYTES, BASE_HEX, NULL, 0, @@ -5732,6 +5793,10 @@ void proto_register_s1ap(void) { { "Direct-Forwarding-Path-Availability", "s1ap.Direct_Forwarding_Path_Availability", FT_UINT32, BASE_DEC, VALS(s1ap_Direct_Forwarding_Path_Availability_vals), 0, "s1ap.Direct_Forwarding_Path_Availability", HFILL }}, + { &hf_s1ap_Global_ENB_ID_PDU, + { "Global-ENB-ID", "s1ap.Global_ENB_ID", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.Global_ENB_ID", HFILL }}, { &hf_s1ap_ENB_StatusTransfer_TransparentContainer_PDU, { "ENB-StatusTransfer-TransparentContainer", "s1ap.ENB_StatusTransfer_TransparentContainer", FT_NONE, BASE_NONE, NULL, 0, @@ -5740,18 +5805,14 @@ void proto_register_s1ap(void) { { "ENB-UE-S1AP-ID", "s1ap.ENB_UE_S1AP_ID", FT_UINT32, BASE_DEC, NULL, 0, "s1ap.ENB_UE_S1AP_ID", HFILL }}, - { &hf_s1ap_ENB_Global_ID_PDU, - { "ENB-Global-ID", "s1ap.ENB_Global_ID", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.ENB_Global_ID", HFILL }}, { &hf_s1ap_ENBname_PDU, { "ENBname", "s1ap.ENBname", FT_BYTES, BASE_HEX, NULL, 0, "s1ap.ENBname", HFILL }}, - { &hf_s1ap_EUTRAN_CGI_ID_PDU, - { "EUTRAN-CGI-ID", "s1ap.EUTRAN_CGI_ID", - FT_BYTES, BASE_HEX, NULL, 0, - "s1ap.EUTRAN_CGI_ID", HFILL }}, + { &hf_s1ap_EUTRAN_CGI_PDU, + { "EUTRAN-CGI", "s1ap.EUTRAN_CGI", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.EUTRAN_CGI", HFILL }}, { &hf_s1ap_GUMMEI_PDU, { "GUMMEI", "s1ap.GUMMEI", FT_NONE, BASE_NONE, NULL, 0, @@ -5776,6 +5837,10 @@ void proto_register_s1ap(void) { { "NAS-PDU", "s1ap.NAS_PDU", FT_BYTES, BASE_HEX, NULL, 0, "s1ap.NAS_PDU", HFILL }}, + { &hf_s1ap_OverloadResponse_PDU, + { "OverloadResponse", "s1ap.OverloadResponse", + FT_UINT32, BASE_DEC, VALS(s1ap_OverloadResponse_vals), 0, + "s1ap.OverloadResponse", HFILL }}, { &hf_s1ap_PagingDRX_PDU, { "PagingDRX", "s1ap.PagingDRX", FT_UINT32, BASE_DEC, NULL, 0, @@ -5812,14 +5877,22 @@ void proto_register_s1ap(void) { { "SecurityInformation", "s1ap.SecurityInformation", FT_NONE, BASE_NONE, NULL, 0, "s1ap.SecurityInformation", HFILL }}, - { &hf_s1ap_SourceID_PDU, - { "SourceID", "s1ap.SourceID", + { &hf_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer_PDU, + { "SourceeNodeB-ToTargeteNodeB-TransparentContainer", "s1ap.SourceeNodeB_ToTargeteNodeB_TransparentContainer", FT_NONE, BASE_NONE, NULL, 0, - "s1ap.SourceID", HFILL }}, + "s1ap.SourceeNodeB_ToTargeteNodeB_TransparentContainer", HFILL }}, + { &hf_s1ap_ServedGUMMEIs_PDU, + { "ServedGUMMEIs", "s1ap.ServedGUMMEIs", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.ServedGUMMEIs", HFILL }}, { &hf_s1ap_ServedPLMNs_PDU, { "ServedPLMNs", "s1ap.ServedPLMNs", FT_UINT32, BASE_DEC, NULL, 0, "s1ap.ServedPLMNs", HFILL }}, + { &hf_s1ap_SubscriberProfileIDforRFP_PDU, + { "SubscriberProfileIDforRFP", "s1ap.SubscriberProfileIDforRFP", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.SubscriberProfileIDforRFP", HFILL }}, { &hf_s1ap_SupportedTAs_PDU, { "SupportedTAs", "s1ap.SupportedTAs", FT_UINT32, BASE_DEC, NULL, 0, @@ -5848,6 +5921,10 @@ void proto_register_s1ap(void) { { "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, + "s1ap.UEAggregateMaximumBitrate", HFILL }}, { &hf_s1ap_UE_S1AP_IDs_PDU, { "UE-S1AP-IDs", "s1ap.UE_S1AP_IDs", FT_UINT32, BASE_DEC, VALS(s1ap_UE_S1AP_IDs_vals), 0, @@ -5928,14 +6005,6 @@ void proto_register_s1ap(void) { { "SAEBearerToBeSetupItemHOReq", "s1ap.SAEBearerToBeSetupItemHOReq", FT_NONE, BASE_NONE, NULL, 0, "s1ap.SAEBearerToBeSetupItemHOReq", HFILL }}, - { &hf_s1ap_UTRANtoLTEHOInformationReq_PDU, - { "UTRANtoLTEHOInformationReq", "s1ap.UTRANtoLTEHOInformationReq", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.UTRANtoLTEHOInformationReq", HFILL }}, - { &hf_s1ap_GERANtoLTEHOInformationReq_PDU, - { "GERANtoLTEHOInformationReq", "s1ap.GERANtoLTEHOInformationReq", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.GERANtoLTEHOInformationReq", HFILL }}, { &hf_s1ap_HandoverRequestAcknowledge_PDU, { "HandoverRequestAcknowledge", "s1ap.HandoverRequestAcknowledge", FT_NONE, BASE_NONE, NULL, 0, @@ -6080,10 +6149,6 @@ void proto_register_s1ap(void) { { "InitialContextSetupRequest", "s1ap.InitialContextSetupRequest", FT_NONE, BASE_NONE, NULL, 0, "s1ap.InitialContextSetupRequest", HFILL }}, - { &hf_s1ap_UEContextReleaseRequest_PDU, - { "UEContextReleaseRequest", "s1ap.UEContextReleaseRequest", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.UEContextReleaseRequest", HFILL }}, { &hf_s1ap_SAEBearerToBeSetupListCtxtSUReq_PDU, { "SAEBearerToBeSetupListCtxtSUReq", "s1ap.SAEBearerToBeSetupListCtxtSUReq", FT_UINT32, BASE_DEC, NULL, 0, @@ -6120,6 +6185,10 @@ void proto_register_s1ap(void) { { "TAIItem", "s1ap.TAIItem", FT_NONE, BASE_NONE, NULL, 0, "s1ap.TAIItem", HFILL }}, + { &hf_s1ap_UEContextReleaseRequest_PDU, + { "UEContextReleaseRequest", "s1ap.UEContextReleaseRequest", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.UEContextReleaseRequest", HFILL }}, { &hf_s1ap_UEContextReleaseCommand_PDU, { "UEContextReleaseCommand", "s1ap.UEContextReleaseCommand", FT_NONE, BASE_NONE, NULL, 0, @@ -6256,6 +6325,14 @@ void proto_register_s1ap(void) { { "LocationReport", "s1ap.LocationReport", FT_NONE, BASE_NONE, NULL, 0, "s1ap.LocationReport", HFILL }}, + { &hf_s1ap_OverloadStart_PDU, + { "OverloadStart", "s1ap.OverloadStart", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.OverloadStart", HFILL }}, + { &hf_s1ap_OverloadStop_PDU, + { "OverloadStop", "s1ap.OverloadStop", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.OverloadStop", HFILL }}, { &hf_s1ap_S1AP_PDU_PDU, { "S1AP-PDU", "s1ap.S1AP_PDU", FT_UINT32, BASE_DEC, VALS(s1ap_S1AP_PDU_vals), 0, @@ -6284,22 +6361,6 @@ void proto_register_s1ap(void) { { "value", "s1ap.value", FT_NONE, BASE_NONE, NULL, 0, "s1ap.T_ie_field_value", HFILL }}, - { &hf_s1ap_firstCriticality, - { "firstCriticality", "s1ap.firstCriticality", - FT_UINT32, BASE_DEC, VALS(s1ap_Criticality_vals), 0, - "s1ap.Criticality", HFILL }}, - { &hf_s1ap_firstValue, - { "firstValue", "s1ap.firstValue", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.T_firstValue", HFILL }}, - { &hf_s1ap_secondCriticality, - { "secondCriticality", "s1ap.secondCriticality", - FT_UINT32, BASE_DEC, VALS(s1ap_Criticality_vals), 0, - "s1ap.Criticality", HFILL }}, - { &hf_s1ap_secondValue, - { "secondValue", "s1ap.secondValue", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.T_secondValue", HFILL }}, { &hf_s1ap_ProtocolIE_ContainerList_item, { "Item", "s1ap.ProtocolIE_ContainerList_item", FT_NONE, BASE_NONE, NULL, 0, @@ -6316,29 +6377,13 @@ void proto_register_s1ap(void) { { "extensionValue", "s1ap.extensionValue", FT_NONE, BASE_NONE, NULL, 0, "s1ap.T_extensionValue", HFILL }}, - { &hf_s1ap_priorityLevel, - { "priorityLevel", "s1ap.priorityLevel", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.PriorityLevel", HFILL }}, - { &hf_s1ap_iE_Extensions, - { "iE-Extensions", "s1ap.iE_Extensions", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.ProtocolExtensionContainer", HFILL }}, - { &hf_s1ap_aggregateMaximumBitRateDL, - { "aggregateMaximumBitRateDL", "s1ap.aggregateMaximumBitRateDL", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.SAE_Bearer_BitRate", HFILL }}, - { &hf_s1ap_aggregateMaximumBitRateUL, - { "aggregateMaximumBitRateUL", "s1ap.aggregateMaximumBitRateUL", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.SAE_Bearer_BitRate", HFILL }}, { &hf_s1ap_Bearers_SubjectToStatusTransferList_item, { "Item", "s1ap.Bearers_SubjectToStatusTransferList_item", FT_NONE, BASE_NONE, NULL, 0, "s1ap.ProtocolIE_SingleContainer", HFILL }}, { &hf_s1ap_sAE_Bearer_ID, { "sAE-Bearer-ID", "s1ap.sAE_Bearer_ID", - FT_BYTES, BASE_HEX, NULL, 0, + FT_UINT32, BASE_DEC, NULL, 0, "s1ap.SAE_Bearer_ID", HFILL }}, { &hf_s1ap_uL_COUNTvalue, { "uL-COUNTvalue", "s1ap.uL_COUNTvalue", @@ -6348,6 +6393,10 @@ void proto_register_s1ap(void) { { "dL-COUNTvalue", "s1ap.dL_COUNTvalue", FT_NONE, BASE_NONE, NULL, 0, "s1ap.COUNTvalue", HFILL }}, + { &hf_s1ap_iE_Extensions, + { "iE-Extensions", "s1ap.iE_Extensions", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.ProtocolExtensionContainer", HFILL }}, { &hf_s1ap_BPLMNs_item, { "Item", "s1ap.BPLMNs_item", FT_BYTES, BASE_HEX, NULL, 0, @@ -6372,6 +6421,18 @@ void proto_register_s1ap(void) { { "misc", "s1ap.misc", FT_UINT32, BASE_DEC, VALS(s1ap_CauseMisc_vals), 0, "s1ap.CauseMisc", HFILL }}, + { &hf_s1ap_cdma2000OneXMEID, + { "cdma2000OneXMEID", "s1ap.cdma2000OneXMEID", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.Cdma2000OneXMEID", HFILL }}, + { &hf_s1ap_cdma2000OneXMSI, + { "cdma2000OneXMSI", "s1ap.cdma2000OneXMSI", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.Cdma2000OneXMSI", HFILL }}, + { &hf_s1ap_cdma2000OneXPilot, + { "cdma2000OneXPilot", "s1ap.cdma2000OneXPilot", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.Cdma2000OneXPilot", HFILL }}, { &hf_s1ap_pLMNidentity, { "pLMNidentity", "s1ap.pLMNidentity", FT_BYTES, BASE_HEX, NULL, 0, @@ -6384,6 +6445,10 @@ void proto_register_s1ap(void) { { "cI", "s1ap.cI", FT_BYTES, BASE_HEX, NULL, 0, "s1ap.CI", HFILL }}, + { &hf_s1ap_rAC, + { "rAC", "s1ap.rAC", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.RAC", HFILL }}, { &hf_s1ap_pDCP_SN, { "pDCP-SN", "s1ap.pDCP_SN", FT_UINT32, BASE_DEC, NULL, 0, @@ -6424,6 +6489,18 @@ void proto_register_s1ap(void) { { "typeOfError", "s1ap.typeOfError", FT_UINT32, BASE_DEC, VALS(s1ap_TypeOfError_vals), 0, "s1ap.TypeOfError", HFILL }}, + { &hf_s1ap_macroENB_ID, + { "macroENB-ID", "s1ap.macroENB_ID", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.BIT_STRING_SIZE_20", HFILL }}, + { &hf_s1ap_homeENB_ID, + { "homeENB-ID", "s1ap.homeENB_ID", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.BIT_STRING_SIZE_28", HFILL }}, + { &hf_s1ap_eNB_ID, + { "eNB-ID", "s1ap.eNB_ID", + FT_UINT32, BASE_DEC, VALS(s1ap_ENB_ID_vals), 0, + "s1ap.ENB_ID", HFILL }}, { &hf_s1ap_bearers_SubjectToStatusTransferList, { "bearers-SubjectToStatusTransferList", "s1ap.bearers_SubjectToStatusTransferList", FT_UINT32, BASE_DEC, NULL, 0, @@ -6432,6 +6509,10 @@ void proto_register_s1ap(void) { { "Item", "s1ap.EPLMNs_item", FT_BYTES, BASE_HEX, NULL, 0, "s1ap.PLMNidentity", HFILL }}, + { &hf_s1ap_cell_ID, + { "cell-ID", "s1ap.cell_ID", + FT_BYTES, BASE_HEX, NULL, 0, + "s1ap.CellIdentity", HFILL }}, { &hf_s1ap_ForbiddenTAs_item, { "Item", "s1ap.ForbiddenTAs_item", FT_NONE, BASE_NONE, NULL, 0, @@ -6460,6 +6541,22 @@ void proto_register_s1ap(void) { { "Item", "s1ap.ForbiddenLACs_item", FT_BYTES, BASE_HEX, NULL, 0, "s1ap.LAC", HFILL }}, + { &hf_s1ap_sAE_Bearer_MaximumBitrateDL, + { "sAE-Bearer-MaximumBitrateDL", "s1ap.sAE_Bearer_MaximumBitrateDL", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.BitRate", HFILL }}, + { &hf_s1ap_sAE_Bearer_MaximumBitrateUL, + { "sAE-Bearer-MaximumBitrateUL", "s1ap.sAE_Bearer_MaximumBitrateUL", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.BitRate", HFILL }}, + { &hf_s1ap_sAE_Bearer_GuaranteedBitrateDL, + { "sAE-Bearer-GuaranteedBitrateDL", "s1ap.sAE_Bearer_GuaranteedBitrateDL", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.BitRate", HFILL }}, + { &hf_s1ap_sAE_Bearer_GuaranteedBitrateUL, + { "sAE-Bearer-GuaranteedBitrateUL", "s1ap.sAE_Bearer_GuaranteedBitrateUL", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.BitRate", HFILL }}, { &hf_s1ap_mME_Group_ID, { "mME-Group-ID", "s1ap.mME_Group_ID", FT_BYTES, BASE_HEX, NULL, 0, @@ -6500,6 +6597,10 @@ void proto_register_s1ap(void) { { "traceDepth", "s1ap.traceDepth", FT_UINT32, BASE_DEC, VALS(s1ap_TraceDepth_vals), 0, "s1ap.TraceDepth", HFILL }}, + { &hf_s1ap_overloadAction, + { "overloadAction", "s1ap.overloadAction", + FT_UINT32, BASE_DEC, VALS(s1ap_OverloadAction_vals), 0, + "s1ap.OverloadAction", HFILL }}, { &hf_s1ap_eventType, { "eventType", "s1ap.eventType", FT_UINT32, BASE_DEC, VALS(s1ap_EventType_vals), 0, @@ -6530,40 +6631,12 @@ void proto_register_s1ap(void) { "s1ap.QCI", HFILL }}, { &hf_s1ap_allocationRetentionPriority, { "allocationRetentionPriority", "s1ap.allocationRetentionPriority", - FT_NONE, BASE_NONE, NULL, 0, + FT_UINT32, BASE_DEC, NULL, 0, "s1ap.AllocationRetentionPriority", HFILL }}, - { &hf_s1ap_sAE_BearerType, - { "sAE-BearerType", "s1ap.sAE_BearerType", - FT_UINT32, BASE_DEC, VALS(s1ap_SAE_Bearer_Type_vals), 0, - "s1ap.SAE_Bearer_Type", HFILL }}, - { &hf_s1ap_sAE_GBR_Bearer, - { "sAE-GBR-Bearer", "s1ap.sAE_GBR_Bearer", + { &hf_s1ap_gbrQosInformation, + { "gbrQosInformation", "s1ap.gbrQosInformation", FT_NONE, BASE_NONE, NULL, 0, - "s1ap.SAE_GBR_Bearer", HFILL }}, - { &hf_s1ap_sAE_non_GBR_Bearer, - { "sAE-non-GBR-Bearer", "s1ap.sAE_non_GBR_Bearer", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.SAE_non_GBR_Bearer", HFILL }}, - { &hf_s1ap_sAE_Bearer_MaximumBitrateDL, - { "sAE-Bearer-MaximumBitrateDL", "s1ap.sAE_Bearer_MaximumBitrateDL", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.SAE_Bearer_BitRate", HFILL }}, - { &hf_s1ap_sAE_Bearer_MaximumBitrateUL, - { "sAE-Bearer-MaximumBitrateUL", "s1ap.sAE_Bearer_MaximumBitrateUL", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.SAE_Bearer_BitRate", HFILL }}, - { &hf_s1ap_sAE_Bearer_GuaranteedBitrateDL, - { "sAE-Bearer-GuaranteedBitrateDL", "s1ap.sAE_Bearer_GuaranteedBitrateDL", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.SAE_Bearer_BitRate", HFILL }}, - { &hf_s1ap_sAE_Bearer_GuaranteedBitrateUL, - { "sAE-Bearer-GuaranteedBitrateUL", "s1ap.sAE_Bearer_GuaranteedBitrateUL", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.SAE_Bearer_BitRate", HFILL }}, - { &hf_s1ap_sAE_non_GBR_Bearer_Type, - { "sAE-non-GBR-Bearer-Type", "s1ap.sAE_non_GBR_Bearer_Type", - FT_UINT32, BASE_DEC, VALS(s1ap_SAE_non_GBR_Bearer_Type_vals), 0, - "s1ap.SAE_non_GBR_Bearer_Type", HFILL }}, + "s1ap.GBR_QosInformation", HFILL }}, { &hf_s1ap_securityKey, { "securityKey", "s1ap.securityKey", FT_BYTES, BASE_HEX, NULL, 0, @@ -6572,14 +6645,6 @@ void proto_register_s1ap(void) { { "securityPlaceHolder", "s1ap.securityPlaceHolder", FT_UINT32, BASE_DEC, VALS(s1ap_SecurityPlaceHolder_vals), 0, "s1ap.SecurityPlaceHolder", HFILL }}, - { &hf_s1ap_sourceeNB_ID, - { "sourceeNB-ID", "s1ap.sourceeNB_ID", - FT_NONE, BASE_NONE, NULL, 0, - "s1ap.SourceeNB_ID", HFILL }}, - { &hf_s1ap_eNB_Global_ID, - { "eNB-Global-ID", "s1ap.eNB_Global_ID", - FT_UINT32, BASE_DEC, NULL, 0, - "s1ap.ENB_Global_ID", HFILL }}, { &hf_s1ap_rRC_Container, { "rRC-Container", "s1ap.rRC_Container", FT_BYTES, BASE_HEX, NULL, 0, @@ -6588,6 +6653,18 @@ void proto_register_s1ap(void) { { "sAEBearerInformationList", "s1ap.sAEBearerInformationList", FT_UINT32, BASE_DEC, NULL, 0, "s1ap.SAEBearerInformationList", HFILL }}, + { &hf_s1ap_targetCell_ID, + { "targetCell-ID", "s1ap.targetCell_ID", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.EUTRAN_CGI", HFILL }}, + { &hf_s1ap_subscriberProfileIDforRFP, + { "subscriberProfileIDforRFP", "s1ap.subscriberProfileIDforRFP", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.SubscriberProfileIDforRFP", HFILL }}, + { &hf_s1ap_ServedGUMMEIs_item, + { "Item", "s1ap.ServedGUMMEIs_item", + FT_NONE, BASE_NONE, NULL, 0, + "s1ap.GUMMEI", HFILL }}, { &hf_s1ap_ServedPLMNs_item, { "Item", "s1ap.ServedPLMNs_item", FT_BYTES, BASE_HEX, NULL, 0, @@ -6615,7 +6692,7 @@ void proto_register_s1ap(void) { { &hf_s1ap_targeteNB_ID, { "targeteNB-ID", "s1ap.targeteNB_ID", FT_NONE, BASE_NONE, NULL, 0, - "s1ap.TargeteNB_ID", HFILL }}, + "s1ap.Global_ENB_ID", HFILL }}, { &hf_s1ap_targetRNC_ID, { "targetRNC-ID", "s1ap.targetRNC_ID", FT_NONE, BASE_NONE, NULL, 0, @@ -6628,14 +6705,14 @@ void proto_register_s1ap(void) { { "lAI", "s1ap.lAI", FT_NONE, BASE_NONE, NULL, 0, "s1ap.LAI", HFILL }}, - { &hf_s1ap_rAC, - { "rAC", "s1ap.rAC", - FT_BYTES, BASE_HEX, NULL, 0, - "s1ap.RAC", HFILL }}, { &hf_s1ap_rNC_ID, { "rNC-ID", "s1ap.rNC_ID", FT_UINT32, BASE_DEC, NULL, 0, "s1ap.RNC_ID", HFILL }}, + { &hf_s1ap_extendedRNC_ID, + { "extendedRNC-ID", "s1ap.extendedRNC_ID", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.ExtendedRNC_ID", HFILL }}, { &hf_s1ap_traceReference, { "traceReference", "s1ap.traceReference", FT_BYTES, BASE_HEX, NULL, 0, @@ -6644,6 +6721,14 @@ void proto_register_s1ap(void) { { "interfacesToTraceList", "s1ap.interfacesToTraceList", FT_UINT32, BASE_DEC, NULL, 0, "s1ap.InterfacesToTraceList", HFILL }}, + { &hf_s1ap_uEaggregateMaximumBitRateDL, + { "uEaggregateMaximumBitRateDL", "s1ap.uEaggregateMaximumBitRateDL", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.BitRate", HFILL }}, + { &hf_s1ap_uEaggregateMaximumBitRateUL, + { "uEaggregateMaximumBitRateUL", "s1ap.uEaggregateMaximumBitRateUL", + FT_UINT32, BASE_DEC, NULL, 0, + "s1ap.BitRate", HFILL }}, { &hf_s1ap_uE_S1AP_ID_pair, { "uE-S1AP-ID-pair", "s1ap.uE_S1AP_ID_pair", FT_NONE, BASE_NONE, NULL, 0, @@ -6810,58 +6895,57 @@ void proto_register_s1ap(void) { &ett_s1ap_PrivateIE_ID, &ett_s1ap_ProtocolIE_Container, &ett_s1ap_ProtocolIE_Field, - &ett_s1ap_ProtocolIE_FieldPair, &ett_s1ap_ProtocolIE_ContainerList, &ett_s1ap_ProtocolExtensionContainer, &ett_s1ap_ProtocolExtensionField, - &ett_s1ap_AllocationRetentionPriority, - &ett_s1ap_AggregateMaximumBitrate, &ett_s1ap_Bearers_SubjectToStatusTransferList, &ett_s1ap_Bearers_SubjectToStatusTransfer_Item, &ett_s1ap_BPLMNs, &ett_s1ap_Cause, + &ett_s1ap_Cdma2000OneXSRVCCInfo, &ett_s1ap_CGI, &ett_s1ap_COUNTvalue, &ett_s1ap_CriticalityDiagnostics, &ett_s1ap_CriticalityDiagnostics_IE_List, &ett_s1ap_CriticalityDiagnostics_IE_Item, + &ett_s1ap_ENB_ID, + &ett_s1ap_Global_ENB_ID, &ett_s1ap_ENB_StatusTransfer_TransparentContainer, &ett_s1ap_EPLMNs, + &ett_s1ap_EUTRAN_CGI, &ett_s1ap_ForbiddenTAs, &ett_s1ap_ForbiddenTAs_Item, &ett_s1ap_ForbiddenTACs, &ett_s1ap_ForbiddenLAs, &ett_s1ap_ForbiddenLAs_Item, &ett_s1ap_ForbiddenLACs, + &ett_s1ap_GBR_QosInformation, &ett_s1ap_GUMMEI, &ett_s1ap_HandoverRestrictionList, &ett_s1ap_InterfacesToTraceList, &ett_s1ap_InterfacesToTraceItem, &ett_s1ap_LAI, + &ett_s1ap_OverloadResponse, &ett_s1ap_RequestType, &ett_s1ap_SAEBearerInformationList, &ett_s1ap_SAEBearerInformationListItem, &ett_s1ap_SAEBearerList, &ett_s1ap_SAEBearerItem, &ett_s1ap_SAE_BearerLevelQoSParameters, - &ett_s1ap_SAE_Bearer_Type, - &ett_s1ap_SAE_GBR_Bearer, - &ett_s1ap_SAE_non_GBR_Bearer, &ett_s1ap_SecurityInfo, &ett_s1ap_SecurityInformation, - &ett_s1ap_SourceID, - &ett_s1ap_SourceeNB_ID, &ett_s1ap_SourceeNodeB_ToTargeteNodeB_TransparentContainer, + &ett_s1ap_ServedGUMMEIs, &ett_s1ap_ServedPLMNs, &ett_s1ap_SupportedTAs, &ett_s1ap_SupportedTAs_Item, &ett_s1ap_S_TMSI, &ett_s1ap_TAI, &ett_s1ap_TargetID, - &ett_s1ap_TargeteNB_ID, &ett_s1ap_TargetRNC_ID, &ett_s1ap_TargeteNodeB_ToSourceeNodeB_TransparentContainer, &ett_s1ap_TraceActivation, + &ett_s1ap_UEAggregateMaximumBitrate, &ett_s1ap_UE_S1AP_IDs, &ett_s1ap_UE_S1AP_ID_pair, &ett_s1ap_UE_associatedLogicalS1_ConnectionItem, @@ -6879,8 +6963,6 @@ void proto_register_s1ap(void) { &ett_s1ap_HandoverPreparationFailure, &ett_s1ap_HandoverRequest, &ett_s1ap_SAEBearerToBeSetupItemHOReq, - &ett_s1ap_UTRANtoLTEHOInformationReq, - &ett_s1ap_GERANtoLTEHOInformationReq, &ett_s1ap_HandoverRequestAcknowledge, &ett_s1ap_SAEBearerAdmittedItem, &ett_s1ap_SAEBearerFailedToSetupItemHOReqAck, @@ -6913,7 +6995,6 @@ void proto_register_s1ap(void) { &ett_s1ap_SAEBearerReleaseItemBearerRelComp, &ett_s1ap_SAEBearerReleaseRequest, &ett_s1ap_InitialContextSetupRequest, - &ett_s1ap_UEContextReleaseRequest, &ett_s1ap_SAEBearerToBeSetupListCtxtSUReq, &ett_s1ap_SAEBearerToBeSetupItemCtxtSUReq, &ett_s1ap_InitialContextSetupResponse, @@ -6923,6 +7004,7 @@ void proto_register_s1ap(void) { &ett_s1ap_Paging, &ett_s1ap_TAIList, &ett_s1ap_TAIItem, + &ett_s1ap_UEContextReleaseRequest, &ett_s1ap_UEContextReleaseCommand, &ett_s1ap_UEContextReleaseComplete, &ett_s1ap_UEContextModificationRequest, @@ -6958,6 +7040,8 @@ void proto_register_s1ap(void) { &ett_s1ap_LocationReportingControl, &ett_s1ap_LocationReportingFailureIndication, &ett_s1ap_LocationReport, + &ett_s1ap_OverloadStart, + &ett_s1ap_OverloadStop, &ett_s1ap_S1AP_PDU, &ett_s1ap_InitiatingMessage, &ett_s1ap_SuccessfulOutcome,