diff --git a/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf b/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf index 4ca2640953..979837d15c 100644 --- a/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf +++ b/epan/dissectors/asn1/lte-rrc/lte-rrc.cnf @@ -37,8 +37,10 @@ WLAN-backhaulRate-r12 HandoverCommand_PDU HandoverPreparationInformation_PDU HandoverPreparationInformation-NB_PDU +MeasurementReport_PDU RLF-Report-r9_PDU RLF-Report-v9e0_PDU +RRCConnectionReconfigurationComplete_PDU SCG-Config-r12_PDU SCG-ConfigInfo-r12_PDU UEPagingCoverageInformation_PDU @@ -52,9 +54,11 @@ VisitedCellInfoList-r12_PDU HandoverCommand HandoverPreparationInformation HandoverPreparationInformation-NB +MeasurementReport RLF-Report-r9 RLF-Report-v9e0 RRCConnectionReconfiguration @rrc_conn_reconf +RRCConnectionReconfigurationComplete SCG-Config-r12 SCG-ConfigInfo-r12 UEPagingCoverageInformation diff --git a/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf b/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf index 2b143a726b..aa457c418e 100644 --- a/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf +++ b/epan/dissectors/asn1/nr-rrc/nr-rrc.cnf @@ -49,6 +49,7 @@ HandoverPreparationInformation_PDU MeasConfig_PDU MeasGapConfig_PDU MeasResults_PDU +MeasurementReport_PDU MeasurementTimingConfiguration_PDU MIB_PDU P-Max_PDU @@ -75,6 +76,7 @@ HandoverCommand HandoverPreparationInformation MeasConfig MeasGapConfig +MeasurementReport MeasResults MeasurementTimingConfiguration MIB diff --git a/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn b/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn index 3b136abeae..0981e83e09 100644 --- a/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn +++ b/epan/dissectors/asn1/xnap/XnAP-CommonDataTypes.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V15.0.0 (2018-06) +-- 3GPP TS 38.423 V15.1.0 (2018-09) -- 9.3.6 Common definitions -- ************************************************************** -- @@ -7,10 +7,10 @@ -- ************************************************************** XnAP-CommonDataTypes { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) ngran-access (22) modules (3) xnap (2) version1 (1) xnap-CommonDataTypes (3) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN diff --git a/epan/dissectors/asn1/xnap/XnAP-Constants.asn b/epan/dissectors/asn1/xnap/XnAP-Constants.asn index c30c6cb084..6c9a0b5c27 100644 --- a/epan/dissectors/asn1/xnap/XnAP-Constants.asn +++ b/epan/dissectors/asn1/xnap/XnAP-Constants.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V15.0.0 (2018-06) +-- 3GPP TS 38.423 V15.1.0 (2018-09) -- 9.3.7 Constant definitions -- ************************************************************** -- @@ -48,6 +48,10 @@ id-cellActivation ProcedureCode ::= 19 id-reset ProcedureCode ::= 20 id-errorIndication ProcedureCode ::= 21 id-privateMessage ProcedureCode ::= 22 +id-notificationControl ProcedureCode ::= 23 +id-activityNotification ProcedureCode ::= 24 +id-e-UTRA-NR-CellResourceCoordination ProcedureCode ::= 25 + @@ -60,9 +64,11 @@ id-privateMessage ProcedureCode ::= 22 maxEARFCN INTEGER ::= 262143 maxnoofAllowedAreas INTEGER ::= 16 maxnoofAoIs INTEGER ::= 64 -maxnoofBPLMNs INTEGER ::= 6 -- This IE may need to be refined. +maxnoofBPLMNs INTEGER ::= 12 +maxnoofBearerConfigs INTEGER ::= 2 -- This IE may need to be refined maxnoofCellsinAoI INTEGER ::= 256 -maxnoofCellsinNGRANnode INTEGER ::= 16384 +maxnoofCellsinUEHistoryInfo INTEGER ::= 16 +maxnoofCellsinNG-RANnode INTEGER ::= 16384 maxnoofCellsinRNA INTEGER ::= 32 maxnoofDRBs INTEGER ::= 32 maxnoofEUTRABands INTEGER ::= 16 @@ -73,11 +79,13 @@ maxnoofNeighbours INTEGER ::= 1024 maxnoofNRCellBands INTEGER ::= 32 maxnoofPLMNs INTEGER ::= 16 maxnoofPDUSessions INTEGER ::= 256 +maxnoofProtectedResourcePatterns INTEGER ::= 16 maxnoofQoSFlows INTEGER ::= 64 maxnoofRANAreaCodes INTEGER ::= 32 maxnoofRANAreasinRNA INTEGER ::= 16 +maxnoofRANNodesinAoI INTEGER ::= 64 maxnoofSliceItems INTEGER ::= 1024 -maxnoofsupportedPLMNs INTEGER ::= 16 -- This IE may need to be refined. +maxnoofsupportedPLMNs INTEGER ::= 16 -- This IE may need to be refined. maxnoofsupportedTACs INTEGER ::= 1024 -- This IE may need to be refined. maxnoofTAI INTEGER ::= 16 maxnoofTAIsinAoI INTEGER ::= 16 @@ -93,65 +101,97 @@ maxNrOfErrors INTEGER ::= 256 id-ActivatedServedCells ProtocolIE-ID ::= 0 id-ActivationIDforCellActivation ProtocolIE-ID ::= 1 -id-AMF-Pool-Information ProtocolIE-ID ::= 2 -id-AreaOfInterest-Item ProtocolIE-ID ::= 3 -id-AssistanceDataForRANPaging ProtocolIE-ID ::= 4 -id-Cause ProtocolIE-ID ::= 5 -id-cellAssistanceInfo-NR ProtocolIE-ID ::= 6 -id-ConfigurationUpdateInitiatingNodeChoice ProtocolIE-ID ::= 7 -id-CriticalityDiagnostics ProtocolIE-ID ::= 8 -id-dataforwardingInfoperPDUSession ProtocolIE-ID ::= 9 -id-dataforwardingInfoperPDUSession-Item ProtocolIE-ID ::= 10 -id-DataForwardingResponseDRBItem ProtocolIE-ID ::= 11 -id-DRBsSubjectToStatusTransfer-Item ProtocolIE-ID ::= 12 -id-DRBsSubjectToStatusTransfer-List ProtocolIE-ID ::= 13 -id-DRBToQoSFlowMapping-Item ProtocolIE-ID ::= 14 -id-GlobalNG-RAN-node-ID ProtocolIE-ID ::= 15 -id-GUAMI ProtocolIE-ID ::= 16 -id-List-of-served-cells-E-UTRA ProtocolIE-ID ::= 17 -id-List-of-served-cells-NR ProtocolIE-ID ::= 18 -id-LocationReportingInformation ProtocolIE-ID ::= 19 -id-MAC-I ProtocolIE-ID ::= 20 -id-MaskedIMEISV ProtocolIE-ID ::= 21 -id-new-NG-RAN-Cell-Identity ProtocolIE-ID ::= 22 -id-newNG-RANnodeUEXnAPID ProtocolIE-ID ::= 23 -id-oldNG-RANnodeUEXnAPID ProtocolIE-ID ::= 24 -id-PagingDRX ProtocolIE-ID ::= 25 -id-PDUSessionResourceAdmittedResponseTransferItem ProtocolIE-ID ::= 26 -id-PDUSessionResourcesAdmitted-Item ProtocolIE-ID ::= 27 -id-PDUSessionResourcesAdmitted-List ProtocolIE-ID ::= 28 -id-PDUSessionResourcesNotAdmitted-Item ProtocolIE-ID ::= 29 -id-PDUSessionResourcesNotAdmitted-List ProtocolIE-ID ::= 30 -id-PDUSessionResourcesToBeSetup-Item ProtocolIE-ID ::= 31 -id-QoSFlowAdmitted-Item ProtocolIE-ID ::= 32 -id-QoSFlow-Item ProtocolIE-ID ::= 33 -id-QoSFlowNotAdmitted-Item ProtocolIE-ID ::= 34 -id-QoSFlowsToBeSetup-Item ProtocolIE-ID ::= 35 -id-RANPagingArea ProtocolIE-ID ::= 36 -id-RANPagingPriority ProtocolIE-ID ::= 37 -id-ResetRequestPartialReleaseItem ProtocolIE-ID ::= 38 -id-ResetRequestTypeInfo ProtocolIE-ID ::= 39 -id-ResetResponsePartialReleaseItem ProtocolIE-ID ::= 40 -id-ResetResponseTypeInfo ProtocolIE-ID ::= 41 -id-RespondingNodeTypeConfigUpdateAck ProtocolIE-ID ::= 42 -id-ServedCellsToActivate ProtocolIE-ID ::= 43 -id-servedCellsToUpdate-E-UTRA ProtocolIE-ID ::= 44 -id-ServedCellsToUpdateInitiatingNodeChoice ProtocolIE-ID ::= 45 -id-servedCellsToUpdate-NR ProtocolIE-ID ::= 46 -id-sourceNG-RANnodeUEXnAPID ProtocolIE-ID ::= 47 -id-TAISupport-Item ProtocolIE-ID ::= 48 --- WS modification: fix a typo --- id-TAISupport-list ProtocolIE-ID ::= 40 -id-TAISupport-list ProtocolIE-ID ::= 49 -id-Target2SourceNG-RANnodeTranspContainer ProtocolIE-ID ::= 50 -id-targetCellGlobalID ProtocolIE-ID ::= 51 -id-targetNG-RANnodeUEXnAPID ProtocolIE-ID ::= 52 -id-TraceActivation ProtocolIE-ID ::= 53 -id-UEContextID ProtocolIE-ID ::= 54 -id-UEContextInfoHORequest ProtocolIE-ID ::= 55 -id-UEContextInfoRetrUECtxtResp ProtocolIE-ID ::= 56 -id-UEIdentityIndexValue ProtocolIE-ID ::= 57 -id-UERANPagingIdentity ProtocolIE-ID ::= 58 -id-XnRemovalThreshold ProtocolIE-ID ::= 59 +id-admittedSplitSRB ProtocolIE-ID ::= 2 +id-admittedSplitSRBrelease ProtocolIE-ID ::= 3 +id-AMF-Pool-Information ProtocolIE-ID ::= 4 +id-AssistanceDataForRANPaging ProtocolIE-ID ::= 5 +id-BearersSubjectToCounterCheck ProtocolIE-ID ::= 6 +id-Cause ProtocolIE-ID ::= 7 +id-cellAssistanceInfo-NR ProtocolIE-ID ::= 8 +id-ConfigurationUpdateInitiatingNodeChoice ProtocolIE-ID ::= 9 +id-CriticalityDiagnostics ProtocolIE-ID ::= 10 +id-dataforwardingInfoperPDUSession ProtocolIE-ID ::= 11 +id-DRBsSubjectToStatusTransfer-List ProtocolIE-ID ::= 12 +id-ExpectedUEBehaviour ProtocolIE-ID ::= 13 +id-GlobalNG-RAN-node-ID ProtocolIE-ID ::= 14 +id-GUAMI ProtocolIE-ID ::= 15 +id-indexToRatFrequSelectionPriority ProtocolIE-ID ::= 16 +id-initiatingNodeType-ResourceCoordRequest ProtocolIE-ID ::= 17 +id-List-of-served-cells-E-UTRA ProtocolIE-ID ::= 18 +id-List-of-served-cells-NR ProtocolIE-ID ::= 19 +id-LocationReportingInformation ProtocolIE-ID ::= 20 +id-MAC-I ProtocolIE-ID ::= 21 +id-MaskedIMEISV ProtocolIE-ID ::= 22 +id-M-NG-RANnodeUEXnAPID ProtocolIE-ID ::= 23 +id-MN-to-SN-Container ProtocolIE-ID ::= 24 +id-MobilityRestrictionList ProtocolIE-ID ::= 25 +id-new-NG-RAN-Cell-Identity ProtocolIE-ID ::= 26 +id-newNG-RANnodeUEXnAPID ProtocolIE-ID ::= 27 +id-NRUEMeasurementReportRRCTransfer ProtocolIE-ID ::= 28 +id-oldNG-RANnodeUEXnAPID ProtocolIE-ID ::= 29 +id-OldtoNewNG-RANnodeResumeContainer ProtocolIE-ID ::= 30 +id-PagingDRX ProtocolIE-ID ::= 31 +id-PCellID ProtocolIE-ID ::= 32 +id-PDCPChangeIndication ProtocolIE-ID ::= 33 +id-PDUSessionAdmittedAddedAddReqAck ProtocolIE-ID ::= 34 +id-PDUSessionAdmittedModSNModConfirm ProtocolIE-ID ::= 35 +id-PDUSessionAdmitted-SNModResponse ProtocolIE-ID ::= 36 +id-PDUSessionNotAdmittedAddReqAck ProtocolIE-ID ::= 37 +id-PDUSessionNotAdmitted-SNModResponse ProtocolIE-ID ::= 38 +id-PDUSessionReleasedList-RelConf ProtocolIE-ID ::= 39 +id-PDUSessionReleasedSNModConfirm ProtocolIE-ID ::= 40 +id-PDUSessionResourcesActivityNotifyList ProtocolIE-ID ::= 41 +id-PDUSessionResourcesAdmitted-List ProtocolIE-ID ::= 42 +id-PDUSessionResourcesNotAdmitted-List ProtocolIE-ID ::= 43 +id-PDUSessionResourcesNotifyList ProtocolIE-ID ::= 44 +id-PDUSession-SNChangeConfirm-List ProtocolIE-ID ::= 45 +id-PDUSession-SNChangeRequired-List ProtocolIE-ID ::= 46 +id-PDUSessionToBeAddedAddReq ProtocolIE-ID ::= 47 +id-PDUSessionToBeModifiedSNModRequired ProtocolIE-ID ::= 48 +id-PDUSessionToBeReleasedList-RelRqd ProtocolIE-ID ::= 49 +id-PDUSessionToBeReleased-RelReq ProtocolIE-ID ::= 50 +id-PDUSessionToBeReleasedSNModRequired ProtocolIE-ID ::= 51 +id-RANPagingArea ProtocolIE-ID ::= 52 +id-PagingPriority ProtocolIE-ID ::= 53 +id-requestedSplitSRB ProtocolIE-ID ::= 54 +id-requestedSplitSRBrelease ProtocolIE-ID ::= 55 +id-ResetRequestTypeInfo ProtocolIE-ID ::= 56 +id-ResetResponseTypeInfo ProtocolIE-ID ::= 57 +id-RespondingNodeTypeConfigUpdateAck ProtocolIE-ID ::= 58 +id-respondingNodeType-ResourceCoordResponse ProtocolIE-ID ::= 59 +id-ResponseInfo-ReconfCompl ProtocolIE-ID ::= 60 +id-RRCConfigIndication ProtocolIE-ID ::= 61 +id-RRCResumeCause ProtocolIE-ID ::= 62 +id-SCGConfigurationQuery ProtocolIE-ID ::= 63 +id-selectedPLMN ProtocolIE-ID ::= 64 +id-ServedCellsToActivate ProtocolIE-ID ::= 65 +id-servedCellsToUpdate-E-UTRA ProtocolIE-ID ::= 66 +id-ServedCellsToUpdateInitiatingNodeChoice ProtocolIE-ID ::= 67 +id-servedCellsToUpdate-NR ProtocolIE-ID ::= 68 +id-s-ng-RANnode-SecurityKey ProtocolIE-ID ::= 69 +id-S-NG-RANnodeUE-AMBR ProtocolIE-ID ::= 70 +id-S-NG-RANnodeUEXnAPID ProtocolIE-ID ::= 71 +id-SN-to-MN-Container ProtocolIE-ID ::= 72 +id-sourceNG-RANnodeUEXnAPID ProtocolIE-ID ::= 73 +id-SplitSRB-RRCTransfer ProtocolIE-ID ::= 74 +id-TAISupport-list ProtocolIE-ID ::= 75 +id-TimeToWait ProtocolIE-ID ::= 76 +id-Target2SourceNG-RANnodeTranspContainer ProtocolIE-ID ::= 77 +id-targetCellGlobalID ProtocolIE-ID ::= 78 +id-targetNG-RANnodeUEXnAPID ProtocolIE-ID ::= 79 +id-target-S-NG-RANnodeID ProtocolIE-ID ::= 80 +id-TraceActivation ProtocolIE-ID ::= 81 +id-UEContextID ProtocolIE-ID ::= 82 +id-UEContextInfoHORequest ProtocolIE-ID ::= 83 +id-UEContextInfoRetrUECtxtResp ProtocolIE-ID ::= 84 +id-UEContextInfo-SNModRequest ProtocolIE-ID ::= 85 +id-UEContextKeptIndicator ProtocolIE-ID ::= 86 +id-UEContextRefAtSN-HORequest ProtocolIE-ID ::= 87 +id-UEHistoryInformation ProtocolIE-ID ::= 88 +id-UEIdentityIndexValue ProtocolIE-ID ::= 89 +id-UERANPagingIdentity ProtocolIE-ID ::= 90 +id-UESecurityCapabilities ProtocolIE-ID ::= 91 +id-UserPlaneTrafficActivityReport ProtocolIE-ID ::= 92 +id-XnRemovalThreshold ProtocolIE-ID ::= 93 END diff --git a/epan/dissectors/asn1/xnap/XnAP-Containers.asn b/epan/dissectors/asn1/xnap/XnAP-Containers.asn index 1d2b801adf..1a36e7fb55 100644 --- a/epan/dissectors/asn1/xnap/XnAP-Containers.asn +++ b/epan/dissectors/asn1/xnap/XnAP-Containers.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V15.0.0 (2018-06) +-- 3GPP TS 38.423 V15.1.0 (2018-09) -- 9.3.8 Container definitions -- ************************************************************** -- @@ -7,10 +7,10 @@ -- ************************************************************** XnAP-Containers { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) ngran-access (22) modules (3) xnap (2) version1 (1) xnap-Containers (5) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN @@ -116,12 +116,11 @@ WITH SYNTAX { -- -- ************************************************************** -ProtocolIE-Container {XNAP-PROTOCOL-IES : IEsSetParam} ::= +ProtocolIE-Container {XNAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE (SIZE (0..maxProtocolIEs)) OF ProtocolIE-Field {{IEsSetParam}} -ProtocolIE-Single-Container {XNAP-PROTOCOL-IES : IEsSetParam} ::= - ProtocolIE-Field {{IEsSetParam}} +ProtocolIE-Single-Container {XNAP-PROTOCOL-IES : IEsSetParam} ::= ProtocolIE-Field {{IEsSetParam}} ProtocolIE-Field {XNAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { id XNAP-PROTOCOL-IES.&id ({IEsSetParam}), @@ -135,7 +134,7 @@ ProtocolIE-Field {XNAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { -- -- ************************************************************** -ProtocolIE-ContainerPair {XNAP-PROTOCOL-IES-PAIR : IEsSetParam} ::= +ProtocolIE-ContainerPair {XNAP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE (SIZE (0..maxProtocolIEs)) OF ProtocolIE-FieldPair {{IEsSetParam}} @@ -167,8 +166,7 @@ ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, XNAP-P -- -- ************************************************************** -ProtocolExtensionContainer {XNAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= - SEQUENCE (SIZE (1..maxProtocolExtensions)) OF +ProtocolExtensionContainer {XNAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE (SIZE (1..maxProtocolExtensions)) OF ProtocolExtensionField {{ExtensionSetParam}} ProtocolExtensionField {XNAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE { @@ -183,7 +181,7 @@ ProtocolExtensionField {XNAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENC -- -- ************************************************************** -PrivateIE-Container {XNAP-PRIVATE-IES : IEsSetParam} ::= +PrivateIE-Container {XNAP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE (SIZE (1..maxPrivateIEs)) OF PrivateIE-Field {{IEsSetParam}} diff --git a/epan/dissectors/asn1/xnap/XnAP-IEs.asn b/epan/dissectors/asn1/xnap/XnAP-IEs.asn index 9bcf3a07b1..28dbfcc50a 100644 --- a/epan/dissectors/asn1/xnap/XnAP-IEs.asn +++ b/epan/dissectors/asn1/xnap/XnAP-IEs.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V15.0.0 (2018-06) +-- 3GPP TS 38.423 V15.1.0 (2018-09) -- 9.3.5 Information Element definitions -- ************************************************************** -- @@ -7,31 +7,15 @@ -- ************************************************************** XnAP-IEs { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) ngran-access (22) modules (3) xnap (2) version1 (1) xnap-IEs (2) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS - id-AreaOfInterest-Item, - id-dataforwardingInfoperPDUSession-Item, - id-DataForwardingResponseDRBItem, - id-DRBsSubjectToStatusTransfer-Item, - id-DRBToQoSFlowMapping-Item, - id-PDUSessionResourceAdmittedResponseTransferItem, - id-PDUSessionResourcesAdmitted-Item, - id-PDUSessionResourcesNotAdmitted-Item, - id-PDUSessionResourcesToBeSetup-Item, - id-QoSFlowAdmitted-Item, - id-QoSFlow-Item, - id-QoSFlowNotAdmitted-Item, - id-QoSFlowsToBeSetup-Item, - id-ResetRequestPartialReleaseItem, - id-ResetResponsePartialReleaseItem, - id-TAISupport-Item, maxEARFCN, @@ -39,8 +23,9 @@ IMPORTS maxnoofAoIs, maxnoofBPLMNs, maxnoofCellsinAoI, - maxnoofCellsinNGRANnode, + maxnoofCellsinNG-RANnode, maxnoofCellsinRNA, + maxnoofCellsinUEHistoryInfo, maxnoofDRBs, maxnoofEPLMNs, maxnoofEUTRABands, @@ -50,6 +35,7 @@ IMPORTS maxnoofNRCellBands, maxnoofPDUSessions, maxnoofPLMNs, + maxnoofProtectedResourcePatterns, maxnoofQoSFlows, maxnoofRANAreaCodes, maxnoofRANAreasinRNA, @@ -60,7 +46,8 @@ IMPORTS maxnoofTAIsinAoI, maxnoofUEContexts, maxNRARFCN, - maxNrOfErrors + maxNrOfErrors, + maxnoofRANNodesinAoI FROM XnAP-Constants @@ -97,22 +84,22 @@ AllocationandRetentionPriority-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +ActivationSFN ::= INTEGER (0..1023) + + AMF-Pool-Information ::= OCTET STRING -- This IE may need to be refined. AMF-UE-NGAP-ID ::= INTEGER (0..4294967295) -AreaOfInterest ::= SEQUENCE (SIZE(1..maxnoofAoIs)) OF ProtocolIE-Single-Container { {AreaOfInterest-ItemIEs} } - -AreaOfInterest-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-AreaOfInterest-Item CRITICALITY ignore TYPE AreaOfInterest-Item PRESENCE mandatory }, - ... -} +AreaOfInterest ::= SEQUENCE (SIZE(1..maxnoofAoIs)) OF AreaOfInterest-Item AreaOfInterest-Item ::= SEQUENCE { listOfTAIs ListOfTAIsinAoI OPTIONAL, listOfCells ListOfCells OPTIONAL, + listOfRANNodes ListOfRANNodesinAoI OPTIONAL, + locationReportingReferenceID LocationReportingReferenceID, iE-Extensions ProtocolExtensionContainer { {AreaOfInterest-Item-ExtIEs} } OPTIONAL, ... } @@ -145,7 +132,7 @@ AssistanceDataForRANPaging-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -AveragingWindow ::= INTEGER (0..63) +AveragingWindow ::= INTEGER (0..4095, ...) -- B @@ -177,11 +164,10 @@ Cause ::= CHOICE { transport CauseTransportLayer, protocol CauseProtocol, misc CauseMisc, - choice-extension ProtocolExtensionContainer { {Cause-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {Cause-ExtIEs} } } -Cause-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +Cause-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -227,6 +213,8 @@ CauseRadioNetworkLayer ::= ENUMERATED { bearer-option-not-supported, up-integrity-protection-not-possible, up-confidentiality-protection-not-possible, + resources-not-available-for-the-slice, + ue-max-IP-data-rate-reason, unspecified, ... } @@ -258,13 +246,23 @@ CauseMisc ::= ENUMERATED { } CellAssistanceInfo-NR ::= CHOICE { - limitedNR-List SEQUENCE (SIZE(1..maxnoofCellsinNGRANnode)) OF NR-CGI, + limitedNR-List SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF NR-CGI, full-List ENUMERATED {all-served-cells-NR, ...}, - choice-extension ProtocolExtensionContainer { {CellAssistanceInfo-NR-ExtIEs} }, -- This IE may need to be refined -- + choice-extension ProtocolIE-Single-Container { {CellAssistanceInfo-NR-ExtIEs} } +} + +CellAssistanceInfo-NR-ExtIEs XNAP-PROTOCOL-IES ::= { ... } -CellAssistanceInfo-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + +Connectivity-Support ::= SEQUENCE { + eNDC-Support ENUMERATED {supported, not-supported, ...}, + iE-Extensions ProtocolExtensionContainer { {Connectivity-Support-ExtIEs} } OPTIONAL, + ... +} + +Connectivity-Support-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } @@ -295,11 +293,10 @@ COUNT-PDCP-SN18-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { CPTransportLayerInformation ::= CHOICE { endpointIPAddress TransportLayerAddress, - choice-extension ProtocolExtensionContainer { {CPTransportLayerInformation-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {CPTransportLayerInformation-ExtIEs} } } -CPTransportLayerInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +CPTransportLayerInformation-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -334,14 +331,14 @@ CriticalityDiagnostics-IE-List-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { C-RNTI ::= BIT STRING (SIZE(16)) -CyclicPrefix-E-UTRA-DL ::= ENUMERATED { +CyclicPrefix-E-UTRA-DL ::= ENUMERATED { normal, extended, ... } -CyclicPrefix-E-UTRA-UL ::= ENUMERATED { +CyclicPrefix-E-UTRA-UL ::= ENUMERATED { normal, extended, ... @@ -351,12 +348,7 @@ CyclicPrefix-E-UTRA-UL ::= ENUMERATED { -- D -DataforwardingInfoperPDUSession ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF ProtocolIE-Single-Container { {DataForwardingInfoperPDUSessionItem-IEs} } - -DataForwardingInfoperPDUSessionItem-IEs XNAP-PROTOCOL-IES ::= { - { ID id-dataforwardingInfoperPDUSession-Item CRITICALITY reject TYPE DataforwardingInfoperPDUSession-Item PRESENCE mandatory }, - ... -} +DataforwardingInfoperPDUSession ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF DataforwardingInfoperPDUSession-Item DataforwardingInfoperPDUSession-Item ::= SEQUENCE { pduSession-ID PDUSession-ID, @@ -370,6 +362,8 @@ DataforwardingInfoperPDUSession-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } DataForwardingAccepted ::= ENUMERATED {data-forwarding-accepted, ...} + + DataForwardingInfoFromTargetNGRANnode ::= SEQUENCE { pduSessionLevelDLDataForwardingInfo UPTransportLayerInformation OPTIONAL, dataForwardingResponseDRBItemList DataForwardingResponseDRBItemList OPTIONAL, @@ -382,13 +376,34 @@ DataForwardingInfoFromTargetNGRANnode-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -DataForwardingResponseDRBItemList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF ProtocolIE-Single-Container { {DataForwardingResponseDRBItem-IEs} } - -DataForwardingResponseDRBItem-IEs XNAP-PROTOCOL-IES ::= { - { ID id-DataForwardingResponseDRBItem CRITICALITY reject TYPE DataForwardingResponseDRBItem PRESENCE mandatory }, +DataforwardingRequest-List ::= SEQUENCE { + qosFlowsToBeForwarded QoSFLowsToBeForwarded-List, + sourceDRBtoQoSFlowMapping DRBToQoSFlowMapping-List OPTIONAL, + iE-Extension ProtocolExtensionContainer { {DataforwardingRequest-List-ExtIEs} } OPTIONAL, ... } +DataforwardingRequest-List-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFLowsToBeForwarded-List ::= SEQUENCE (SIZE(1.. maxnoofQoSFlows)) OF QoSFLowsToBeForwarded-Item + +QoSFLowsToBeForwarded-Item ::= SEQUENCE { + qosFlowIndicator QoSFlowIndicator, + dl-dataforwarding DLForwarding, + iE-Extension ProtocolExtensionContainer { {QoSFLowsToBeForwarded-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFLowsToBeForwarded-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + + +DataForwardingResponseDRBItemList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DataForwardingResponseDRBItem + DataForwardingResponseDRBItem ::= SEQUENCE { drb-ID DRB-ID, dlForwardingUPTNL UPTransportLayerInformation OPTIONAL, @@ -402,6 +417,22 @@ DataForwardingResponseDRBItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +DataTrafficResources ::= BIT STRING (SIZE(6..17600)) + + +DataTrafficResourceIndication ::= SEQUENCE { + activationSFN ActivationSFN, + sharedResourceType SharedResourceType, + reservedSubframePattern ReservedSubframePattern OPTIONAL, + iE-Extension ProtocolExtensionContainer { {DataTrafficResourceIndication-ExtIEs} } OPTIONAL, + ... +} + +DataTrafficResourceIndication-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + DeliveryStatus ::= INTEGER (0..4095, ...) @@ -411,13 +442,26 @@ DLForwarding ::= ENUMERATED {dl-forwarding-proposed, ...} DRB-ID ::= INTEGER (1..32, ...) -DRBsSubjectToStatusTransfer-List ::= SEQUENCE (SIZE (1..maxnoofDRBs)) OF ProtocolIE-Single-Container { {DRBsSubjectToStatusTransfer-ItemIEs} } +DRB-List ::= SEQUENCE (SIZE (1..maxnoofDRBs)) OF DRB-ID -DRBsSubjectToStatusTransfer-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-DRBsSubjectToStatusTransfer-Item CRITICALITY ignore TYPE DRBsSubjectToStatusTransfer-Item PRESENCE mandatory }, + +DRB-List-withCause ::= SEQUENCE (SIZE (1..maxnoofDRBs)) OF DRB-List-withCause-Item + +DRB-List-withCause-Item ::= SEQUENCE { + drb-id DRB-ID, + cause Cause OPTIONAL, + iE-Extension ProtocolExtensionContainer { {DRB-List-withCause-Item-ExtIEs} } OPTIONAL, ... } +DRB-List-withCause-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + + +DRBsSubjectToStatusTransfer-List ::= SEQUENCE (SIZE (1..maxnoofDRBs)) OF DRBsSubjectToStatusTransfer-Item + DRBsSubjectToStatusTransfer-Item ::= SEQUENCE { drbID DRB-ID, statusTransfer DRBBStatusTransferChoice, @@ -433,11 +477,10 @@ DRBsSubjectToStatusTransfer-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { DRBBStatusTransferChoice ::= CHOICE { pdcp-sn-12bits DRBBStatusTransfer12bitsSN, pdcp-sn-18bits DRBBStatusTransfer18bitsSN, - choice-extension ProtocolExtensionContainer { {DRBBStatusTransferChoice-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {DRBBStatusTransferChoice-ExtIEs} } } -DRBBStatusTransferChoice-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +DRBBStatusTransferChoice-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -468,12 +511,7 @@ DRBBStatusTransfer18bitsSN-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -DRBToQoSFlowMapping-List ::= SEQUENCE (SIZE (1..maxnoofDRBs)) OF ProtocolIE-Single-Container { {DRBToQoSFlowMapping-ItemIEs} } - -DRBToQoSFlowMapping-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-DRBToQoSFlowMapping-Item CRITICALITY ignore TYPE DRBToQoSFlowMapping-Item PRESENCE mandatory }, - ... -} +DRBToQoSFlowMapping-List ::= SEQUENCE (SIZE (1..maxnoofDRBs)) OF DRBToQoSFlowMapping-Item DRBToQoSFlowMapping-Item ::= SEQUENCE { drb-ID DRB-ID, @@ -487,10 +525,14 @@ DRBToQoSFlowMapping-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +DuplicationActivation ::= ENUMERATED {active, inactive, ...} + + Dynamic5QIDescriptor ::= SEQUENCE { - priorityLevel INTEGER (1..128), + priorityLevelQoS PriorityLevelQoS, packetDelayBudget PacketDelayBudget, packetErrorRate PacketErrorRate, + fiveQI FiveQI OPTIONAL, delayCritical ENUMERATED {delay-critical, non-delay-critical, ...} OPTIONAL, -- This IE shall be present if the GBR QoS Flow Information IE is present in the QoS Flow Level QoS Parameters IE. averagingWindow AveragingWindow OPTIONAL, @@ -543,7 +585,7 @@ E-UTRAPRACHConfiguration ::= SEQUENCE { zeroCorrelationIndex INTEGER (0..15), highSpeedFlag ENUMERATED {true, false, ...}, prach-FreqOffset INTEGER (0..94), - prach-ConfigIndex INTEGER (0..63) OPTIONAL, -- present for TDD -- + prach-ConfigIndex INTEGER (0..63) OPTIONAL, -- present for TDD -- iE-Extensions ProtocolExtensionContainer { {E-UTRAPRACHConfiguration-ExtIEs} } OPTIONAL, ... } @@ -561,9 +603,12 @@ EventType ::= ENUMERATED { ... } +ExpectedUEBehaviour ::= OCTET STRING -- This IE may need to be refined + -- F +FiveQI ::= INTEGER (0..255, ...) -- G @@ -598,11 +643,10 @@ GlobalgNB-ID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { GNB-ID-Choice ::= CHOICE { gnb-ID BIT STRING (SIZE(22..32)), - choice-extension ProtocolExtensionContainer { {GNB-ID-Choice-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {GNB-ID-Choice-ExtIEs} } } -GNB-ID-Choice-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +GNB-ID-Choice-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -623,11 +667,22 @@ ENB-ID-Choice ::= CHOICE { enb-ID-macro BIT STRING (SIZE(20)), enb-ID-shortmacro BIT STRING (SIZE(18)), enb-ID-longmacro BIT STRING (SIZE(21)), - choice-extension ProtocolExtensionContainer { {ENB-ID-Choice-ExtIEs} }, -- This IE may need to be refined -- + choice-extension ProtocolIE-Single-Container { {ENB-ID-Choice-ExtIEs} } +} + +ENB-ID-Choice-ExtIEs XNAP-PROTOCOL-IES ::= { ... } -ENB-ID-Choice-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + +GlobalNG-RANCell-ID ::= SEQUENCE { + plmn-id PLMN-Identity, + ng-RAN-Cell-id NG-RAN-Cell-Identity, + iE-Extensions ProtocolExtensionContainer { {GlobalNG-RANCell-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalNG-RANCell-ID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } @@ -635,11 +690,10 @@ ENB-ID-Choice-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { GlobalNG-RANNode-ID ::= CHOICE { gNB GlobalgNB-ID, ng-eNB GlobalngeNB-ID, - choice-extension ProtocolExtensionContainer { {GlobalNG-RANNode-ID-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {GlobalNG-RANNode-ID-ExtIEs} } } -GlobalNG-RANNode-ID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +GlobalNG-RANNode-ID-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -661,9 +715,9 @@ GTPtunnelTransportLayerInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { GUAMI ::= SEQUENCE { plmn-ID PLMN-Identity, - amf-region-if OCTET STRING (SIZE (2)), - amf-set-id BIT STRING (SIZE (4)), - amf-pointer BIT STRING (SIZE (4)), + amf-region-if BIT STRING (SIZE (8)), + amf-set-id BIT STRING (SIZE (10)), + amf-pointer BIT STRING (SIZE (6)), iE-Extensions ProtocolExtensionContainer { {GUAMI-ExtIEs} } OPTIONAL, ... } @@ -678,7 +732,15 @@ GUAMI-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { -- I -I-RNTI ::= BIT STRING (SIZE(40)) -- This IE may need to be refined +I-RNTI ::= CHOICE { + i-RNTI-full BIT STRING (SIZE(40)), + i-RNTI-short BIT STRING (SIZE(24)), + choice-extension ProtocolIE-Single-Container { {I-RNTI-ExtIEs} } +} + +I-RNTI-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} -- J @@ -690,18 +752,29 @@ I-RNTI ::= BIT STRING (SIZE(40)) -- This IE may need to be refined -- L -ListOfTAI::= SEQUENCE (SIZE(1..maxnoofTAI)) OF TAI-Item +LastVisitedCell-Item ::= CHOICE { + nG-RAN-Cell LastVisitedNGRANCellInformation, + e-UTRAN-Cell LastVisitedEUTRANCellInformation, + uTRAN-Cell LastVisitedUTRANCellInformation, + gERAN-Cell LastVisitedGERANCellInformation, + choice-extension ProtocolIE-Single-Container { { LastVisitedCell-Item-ExtIEs} } +} -TAI-Item ::= SEQUENCE { - pLMN-Identity PLMN-Identity, - tAC TAC, - iE-Extensions ProtocolExtensionContainer { {TAI-Item-ExtIEs} } OPTIONAL, +LastVisitedCell-Item-ExtIEs XNAP-PROTOCOL-IES ::= { ... } -TAI-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { - ... -} +LastVisitedEUTRANCellInformation ::= OCTET STRING + +LastVisitedGERANCellInformation ::= OCTET STRING + +LastVisitedNGRANCellInformation ::= OCTET STRING + +LastVisitedUTRANCellInformation ::= OCTET STRING + + +LCID ::= INTEGER (1..32, ...) + ListOfCells ::= SEQUENCE (SIZE(1..maxnoofCellsinAoI)) OF CellsinAoI-Item @@ -718,6 +791,19 @@ CellsinAoI-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +ListOfRANNodesinAoI ::= SEQUENCE (SIZE(1.. maxnoofRANNodesinAoI)) OF GlobalNG-RANNodesinAoI-Item + +GlobalNG-RANNodesinAoI-Item ::= SEQUENCE { + global-NG-RAN-Node-ID GlobalNG-RANNode-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalNG-RANNodesinAoI-Item-ExtIEs} } OPTIONAL, + ... +} + +GlobalNG-RANNodesinAoI-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + ListOfTAIsinAoI ::= SEQUENCE (SIZE(1..maxnoofTAIsinAoI)) OF TAIsinAoI-Item TAIsinAoI-Item ::= SEQUENCE { @@ -745,6 +831,16 @@ LocationReportingInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::={ } +LocationReportingReferenceID ::= INTEGER (1..64, ...) + + +LowerLayerPresenceStatusChange ::= ENUMERATED { + release-lower-layers, + re-establish-lower-layers, + ... +} + + -- M @@ -754,17 +850,36 @@ MAC-I ::= BIT STRING (SIZE(16)) MaskedIMEISV ::= BIT STRING (SIZE(64)) -MaximumDataBurstVolume ::= INTEGER (0..63) +MaximumDataBurstVolume ::= INTEGER (0..4095, ...) + + +MaximumIPdatarate ::= SEQUENCE { + maxIPrate MaxIPrate, + iE-Extensions ProtocolExtensionContainer { {MaximumIPdatarate-ExtIEs} } OPTIONAL, + ... +} + +MaximumIPdatarate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +MaxIPrate ::= ENUMERATED { + bitrate64kbs, + max-UErate, + ... +} + + +MBSFNControlRegionLength ::= INTEGER (0..3) MBSFNSubframeAllocation-E-UTRA ::= CHOICE { oneframe BIT STRING (SIZE(6)), fourframes BIT STRING (SIZE(24)), - choice-extension ProtocolExtensionContainer { {MBSFNSubframeAllocation-E-UTRA-ExtIEs} },-- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {MBSFNSubframeAllocation-E-UTRA-ExtIEs} } } -MBSFNSubframeAllocation-E-UTRA-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +MBSFNSubframeAllocation-E-UTRA-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -815,7 +930,7 @@ RAT-RestrictionsItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::={ } -RAT-RestrictionInformation ::= BIT STRING {e-UTRA (0),nR (1)} (SIZE(8, ...)) +RAT-RestrictionInformation ::= BIT STRING {e-UTRA (0),nR (1)} (SIZE(8, ...)) ForbiddenAreaList ::= SEQUENCE (SIZE(1..maxnoofPLMNs)) OF ForbiddenAreaItem @@ -859,7 +974,8 @@ NeighbourInformation-E-UTRA-Item ::= SEQUENCE { e-utra-cgi E-UTRA-CGI, earfcn E-UTRAARFCN, tac TAC, - iE-Extensions ProtocolExtensionContainer { {NeighbourInformation-E-UTRA-Item-ExtIEs} } OPTIONAL, + ranac RANAC OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {NeighbourInformation-E-UTRA-Item-ExtIEs} } OPTIONAL, ... } @@ -871,12 +987,13 @@ NeighbourInformation-E-UTRA-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::={ NeighbourInformation-NR ::= SEQUENCE (SIZE(1..maxnoofNeighbours)) OF NeighbourInformation-NR-Item NeighbourInformation-NR-Item ::= SEQUENCE { - e-utra-cgi E-UTRA-CGI, - e-utra-PCI E-UTRAPCI, - earfcn E-UTRAARFCN, + nr-PCI NRPCI, + nr-cgi NR-CGI, tac TAC, + ranac RANAC OPTIONAL, nr-mode-info NeighbourInformation-NR-ModeInfo, - iE-Extensions ProtocolExtensionContainer { {NeighbourInformation-NR-Item-ExtIEs} } OPTIONAL, + connectivitySupport Connectivity-Support, + iE-Extensions ProtocolExtensionContainer { {NeighbourInformation-NR-Item-ExtIEs} } OPTIONAL, ... } @@ -888,11 +1005,10 @@ NeighbourInformation-NR-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::={ NeighbourInformation-NR-ModeInfo ::= CHOICE { fdd-info NeighbourInformation-NR-ModeFDDInfo, tdd-info NeighbourInformation-NR-ModeTDDInfo, - choice-extension ProtocolExtensionContainer { {NeighbourInformation-NR-ModeInfo-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {NeighbourInformation-NR-ModeInfo-ExtIEs} } } -NeighbourInformation-NR-ModeInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +NeighbourInformation-NR-ModeInfo-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -923,23 +1039,21 @@ NeighbourInformation-NR-ModeTDDInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { NG-RAN-Cell-Identity ::= CHOICE { nr NR-Cell-Identity, e-utra E-UTRA-Cell-Identity, - choice-extension ProtocolExtensionContainer { {NG-RAN-Cell-Identity-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {NG-RAN-Cell-Identity-ExtIEs} } } -NG-RAN-Cell-Identity-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +NG-RAN-Cell-Identity-ExtIEs XNAP-PROTOCOL-IES ::= { ... } NG-RAN-CellPCI ::= CHOICE { - nr NRPCI, - e-utra E-UTRAPCI, - choice-extension ProtocolExtensionContainer { {NG-RAN-CellPCI-ExtIEs} }, -- This IE may need to be refined -- - ... + nr NRPCI, + e-utra E-UTRAPCI, + choice-extension ProtocolIE-Single-Container { {NG-RAN-CellPCI-ExtIEs} } } -NG-RAN-CellPCI-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +NG-RAN-CellPCI-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -948,8 +1062,8 @@ NG-RANnodeUEXnAPID ::= INTEGER (0.. 4294967295) NonDynamic5QIDescriptor ::= SEQUENCE { - fiveQI INTEGER (0..255), - priorityLevel INTEGER (1..128) OPTIONAL, + fiveQI FiveQI, + priorityLevelQoS PriorityLevelQoS OPTIONAL, averagingWindow AveragingWindow OPTIONAL, maximumDataBurstVolume MaximumDataBurstVolume OPTIONAL, iE-Extension ProtocolExtensionContainer { {NonDynamic5QIDescriptor-ExtIEs } } OPTIONAL, @@ -1003,7 +1117,7 @@ NRFrequencyBandItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { NRFrequencyInfo ::= SEQUENCE { nrARFCN NRARFCN, sul-information SUL-Information OPTIONAL, - frequencyBand-List NRFrequencyBand-List, + frequencyBand-List NRFrequencyBand-List, iE-Extension ProtocolExtensionContainer { {NRFrequencyInfo-ExtIEs} } OPTIONAL, ... } @@ -1016,11 +1130,10 @@ NRFrequencyInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { NRModeInfo ::= CHOICE { fdd NRModeInfoFDD, tdd NRModeInfoTDD, - choice-extension ProtocolExtensionContainer { {NRModenInfor-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {NRModeInfo-ExtIEs} } } -NRModeInfoFDD-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +NRModeInfo-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1033,6 +1146,11 @@ NRModeInfoFDD ::= SEQUENCE { ... } +NRModeInfoFDD-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + NRModeInfoTDD ::= SEQUENCE { nrFrequencyInfo NRFrequencyInfo, nrTransmissonBandwidth NRTransmissionBandwidth, @@ -1045,16 +1163,28 @@ NRModeInfoTDD-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -NRModenInfor-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { - ... -} +NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ...} NRPCI ::= INTEGER (0..1007, ...) -NRTransmissionBandwidth ::= INTEGER (0..65535, ...) +NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ...} + +NRSCS-SSB ::= ENUMERATED { scs15, scs30, scs120, scs240, ...} -NumberOfAntennaPorts-E-UTRA ::= ENUMERATED {an1, an2, an3, ...} +NRTransmissionBandwidth ::= SEQUENCE { + nRSCS NRSCS, + nRNRB NRNRB, + iE-Extensions ProtocolExtensionContainer { {NRTransmissionBandwidth-ExtIEs} } OPTIONAL, + ... +} + +NRTransmissionBandwidth-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +NumberOfAntennaPorts-E-UTRA ::= ENUMERATED {an1, an2, an4, ...} -- O @@ -1063,28 +1193,142 @@ NumberOfAntennaPorts-E-UTRA ::= ENUMERATED {an1, an2, an3, ...} -- P -PacketDelayBudget ::= INTEGER (0..63) +PacketDelayBudget ::= INTEGER (0..1023, ...) -PacketErrorRate ::= INTEGER (0..63) - - -PacketLossRate ::= INTEGER (0..1000) - - -PagingDRX ::= INTEGER (0..63) -- This IE may need to be refined - - -PDUSessionResourcesAdmitted-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions))OF ProtocolIE-Single-Container { {PDUSessionResourcesAdmitted-ItemIEs} } - -PDUSessionResourcesAdmitted-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-PDUSessionResourcesAdmitted-Item CRITICALITY reject TYPE PDUSessionResourcesAdmitted-Item PRESENCE mandatory }, +PacketErrorRate ::= SEQUENCE { + pER-Scalar PER-Scalar, + pER-Exponent PER-Exponent, + iE-Extensions ProtocolExtensionContainer { {PacketErrorRate-ExtIEs} } OPTIONAL, ... } +PacketErrorRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +PER-Scalar ::= INTEGER (0..9, ...) + +PER-Exponent ::= INTEGER (0..9, ...) + + +PacketLossRate ::= INTEGER (0..1000, ...) + + +PagingDRX ::= ENUMERATED { + v32, + v64, + v128, + v256, + ... + } + + +PagingPriority ::= ENUMERATED { + priolevel1, + priolevel2, + priolevel3, + priolevel4, + priolevel5, + priolevel6, + priolevel7, + priolevel8, + ... +} + + +PDCPChangeIndication ::= CHOICE { + from-S-NG-RAN-node ENUMERATED {s-ng-ran-node-key-update-required, pdcp-data-recovery-required, ...}, + from-M-NG-RAN-node ENUMERATED {pdcp-data-recovery-required, ...}, + choice-extension ProtocolIE-Single-Container { {PDCPChangeIndication-ExtIEs} } +} + +PDCPChangeIndication-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + + +PDCPSNLength ::= ENUMERATED {v12bits, v18bits, ...} + + +PDUSessionAggregateMaximumBitRate ::= SEQUENCE { + downlink-session-AMBR BitRate, + uplink-session-AMBR BitRate, + iE-Extensions ProtocolExtensionContainer { {PDUSessionAggregateMaximumBitRate-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAggregateMaximumBitRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PDUSession-List ::= SEQUENCE (SIZE (1.. maxnoofPDUSessions)) OF PDUSession-ID + + +PDUSession-List-withCause ::= SEQUENCE (SIZE (1.. maxnoofPDUSessions)) OF PDUSession-List-withCause-Item + +PDUSession-List-withCause-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + cause Cause OPTIONAL, + iE-Extension ProtocolExtensionContainer { {PDUSession-List-withCause-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSession-List-withCause-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PDUSession-List-withDataForwardingFromTarget ::= SEQUENCE (SIZE (1.. maxnoofPDUSessions)) OF + PDUSession-List-withDataForwardingFromTarget-Item + +PDUSession-List-withDataForwardingFromTarget-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + dataforwardinginfoTarget DataForwardingInfoFromTargetNGRANnode, + iE-Extension ProtocolExtensionContainer { {PDUSession-List-withDataForwardingFromTarget-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSession-List-withDataForwardingFromTarget-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PDUSession-List-withDataForwardingRequest ::= SEQUENCE (SIZE (1.. maxnoofPDUSessions)) OF + PDUSession-List-withDataForwardingRequest-Item + +PDUSession-List-withDataForwardingRequest-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + dataforwardingRequest-List DataforwardingRequest-List, + iE-Extension ProtocolExtensionContainer { {PDUSession-List-withDataForwardingRequest-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSession-List-withDataForwardingRequest-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PDUSessionResourcesAdmitted-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourcesAdmitted-Item + +-- ************************************************************** +-- +-- PDU Session related message level IEs BEGIN +-- +-- ************************************************************** + + +-- ************************************************************** +-- +-- PDU Session Resources Admitted List +-- +-- ************************************************************** + + PDUSessionResourcesAdmitted-Item ::= SEQUENCE { pduSessionId PDUSession-ID, - pduSessionResourceAdmittedInfo PDUSessionResourceAdmittedInfo OPTIONAL, + pduSessionResourceAdmittedInfo PDUSessionResourceAdmittedInfo, iE-Extensions ProtocolExtensionContainer { {PDUSessionResourcesAdmitted-Item-ExtIEs} } OPTIONAL, ... } @@ -1095,24 +1339,26 @@ PDUSessionResourcesAdmitted-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { PDUSessionResourceAdmittedInfo ::= SEQUENCE { - qosFlowsAdmitted-List QoSFlowsAdmitted-List OPTIONAL, - qosFlowsNotAdmitted-List QoSFlowsNotAdmitted-List OPTIONAL, + qosFlowsAdmitted-List QoSFlowsAdmitted-List, + qosFlowsNotAdmitted-List QoSFlowsNotAdmitted-List, dataForwardingInfoFromTarget DataForwardingInfoFromTargetNGRANnode OPTIONAL, - iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceAdmittedResponseTransferItem-ExtIEs} } OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceAdmittedInfo-ExtIEs} } OPTIONAL, ... } -PDUSessionResourceAdmittedResponseTransferItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +PDUSessionResourceAdmittedInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } -PDUSessionResourcesNotAdmitted-List ::= SEQUENCE (SIZE (1..maxnoofPDUSessions)) OF ProtocolIE-Single-Container { {PDUSessionResourcesNotAdmitted-ItemIEs} } +-- ************************************************************** +-- +-- PDU Session Resources Not Admitted List +-- +-- ************************************************************** -PDUSessionResourcesNotAdmitted-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-PDUSessionResourcesNotAdmitted-Item CRITICALITY reject TYPE PDUSessionResourcesNotAdmitted-Item PRESENCE mandatory }, - ... -} + +PDUSessionResourcesNotAdmitted-List ::= SEQUENCE (SIZE (1..maxnoofPDUSessions)) OF PDUSessionResourcesNotAdmitted-Item PDUSessionResourcesNotAdmitted-Item ::= SEQUENCE { pduSessionId PDUSession-ID, @@ -1126,17 +1372,19 @@ PDUSessionResourcesNotAdmitted-Item-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -PDUSessionResourcesToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions))OF ProtocolIE-Single-Container { {PDUSessionResourcesToBeSetup-ItemIEs} } +-- ************************************************************** +-- +-- PDU Session Resources To Be Setup List +-- +-- ************************************************************** -PDUSessionResourcesToBeSetup-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-PDUSessionResourcesToBeSetup-Item CRITICALITY reject TYPE PDUSessionResourcesToBeSetup-Item PRESENCE mandatory }, - ... -} + +PDUSessionResourcesToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourcesToBeSetup-Item PDUSessionResourcesToBeSetup-Item ::= SEQUENCE { pduSessionId PDUSession-ID, s-NSSAI S-NSSAI, - pduSessionAMBR OCTET STRING, -- This IE may need to be refined + pduSessionAMBR PDUSessionAggregateMaximumBitRate, uL-NG-U-TNLatUPF UPTransportLayerInformation, securityIndication SecurityIndication OPTIONAL, pduSessionType PDUSessionType, @@ -1151,6 +1399,579 @@ PDUSessionResourcesToBeSetup-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +-- ************************************************************** +-- +-- PDU Session Resource Setup Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceSetupInfo-SNterminated ::= SEQUENCE { + uL-NG-U-TNLatUPF UPTransportLayerInformation, + pduSessionType PDUSessionType, + qosFlowsToBeSetup-List QoSFlowsToBeSetup-List-Setup-SNterminated, + dlForwarding DLForwarding OPTIONAL, -- this IE needs to be refined and is only a placeholder + securityIndication SecurityIndication OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsToBeSetup-List-Setup-SNterminated ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF QoSFlowsToBeSetup-List-Setup-SNterminated-Item + +QoSFlowsToBeSetup-List-Setup-SNterminated-Item ::= SEQUENCE { + qfi QoSFlowIndicator, + qosFlowLevelQoSParameters QoSFlowLevelQoSParameters, + offeredGBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsToBeSetup-List-Setup-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsToBeSetup-List-Setup-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- ************************************************************** +-- +-- PDU Session Resource Setup Response Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceSetupResponseInfo-SNterminated ::= SEQUENCE { + dL-NG-U-TNLatNG-RAN UPTransportLayerInformation, + dRBsToBeSetup DRBsToBeSetupList-SetupResponse-SNterminated, + qosFlowsNotAdmittedList QoSFlows-List-withCause OPTIONAL, + dLForwardingUPTNLInfo UPTransportLayerInformation OPTIONAL, -- this IE needs to be refined, placeholder only + uLForwardingUPTNLInfo UPTransportLayerInformation OPTIONAL, -- this IE needs to be refined, placeholder only + securityResult SecurityResult OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupResponseInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupResponseInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeSetupList-SetupResponse-SNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsToBeSetupList-SetupResponse-SNterminated-Item + +DRBsToBeSetupList-SetupResponse-SNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + sN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation, + dRB-QoS QoSFlowLevelQoSParameters, + pDCP-SNLength PDCPSNLength OPTIONAL, + rLC-Mode RLCMode OPTIONAL, + secondary-SN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + duplicationActivation DuplicationActivation OPTIONAL, + qoSFlowsMappedtoDRB-SetupResponse-SNterminated QoSFlowsMappedtoDRB-SetupResponse-SNterminated, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeSetupList-SetupResponse-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeSetupList-SetupResponse-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsMappedtoDRB-SetupResponse-SNterminated ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF + QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item + +QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item ::= SEQUENCE { + qoSFlowIndicator QoSFlowIndicator, + mCGRequestedGBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Setup Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceSetupInfo-MNterminated ::= SEQUENCE { + pduSessionType PDUSessionType, + dRBsToBeSetup DRBsToBeSetupList-Setup-MNterminated, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeSetupList-Setup-MNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsToBeSetupList-Setup-MNterminated-Item + +DRBsToBeSetupList-Setup-MNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + mN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation, + rLC-Mode RLCMode OPTIONAL, + dRB-QoS QoSFlowLevelQoSParameters, + pDCP-SNLength PDCPSNLength OPTIONAL, + secondary-MN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + duplicationActivation DuplicationActivation OPTIONAL, + qoSFlowsMappedtoDRB-Setup-MNterminated QoSFlowsMappedtoDRB-Setup-MNterminated, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeSetupList-Setup-MNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeSetupList-Setup-MNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsMappedtoDRB-Setup-MNterminated ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF QoSFlowsMappedtoDRB-Setup-MNterminated-Item + +QoSFlowsMappedtoDRB-Setup-MNterminated-Item ::= SEQUENCE { + qoSFlowIndicator QoSFlowIndicator, + qoSFlowLevelQoSParameters QoSFlowLevelQoSParameters, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsMappedtoDRB-Setup-MNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsMappedtoDRB-Setup-MNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Setup Response Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceSetupResponseInfo-MNterminated ::= SEQUENCE { + dRBsAdmittedList DRBsAdmittedList-SetupResponse-MNterminated, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupResponseInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupResponseInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsAdmittedList-SetupResponse-MNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsAdmittedList-SetupResponse-MNterminated-Item + +DRBsAdmittedList-SetupResponse-MNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + sN-DL-SCG-UP-TNLInfo UPTransportLayerInformation, + secondary-SN-DL-SCG-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + lCID LCID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsAdmittedList-SetupResponse-MNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsAdmittedList-SetupResponse-MNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModificationInfo-SNterminated ::= SEQUENCE { + uL-NG-U-TNLatUPF UPTransportLayerInformation OPTIONAL, + qosFlowsToBeSetup-List QoSFlowsToBeSetup-List-Setup-SNterminated OPTIONAL, + qosFlowsToBeModified-List QoSFlowsToBeSetup-List-Modified-SNterminated OPTIONAL, + qoSFlowsToBeReleased-List QoSFlows-List-withCause OPTIONAL, + drbsToBeModifiedList DRBsToBeModified-List-Modified-SNterminated OPTIONAL, + dlForwarding DLForwarding OPTIONAL, -- this IE needs to be refined and is only a placeholder + securityIndication SecurityIndication OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModificationInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModificationInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsToBeSetup-List-Modified-SNterminated ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF QoSFlowsToBeSetup-List-Modified-SNterminated-Item + +QoSFlowsToBeSetup-List-Modified-SNterminated-Item ::= SEQUENCE { + qfi QoSFlowIndicator, + qosFlowLevelQoSParameters QoSFlowLevelQoSParameters OPTIONAL, + offeredGBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsToBeSetup-List-Modified-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsToBeSetup-List-Modified-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeModified-List-Modified-SNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsToBeModified-List-Modified-SNterminated-Item + +DRBsToBeModified-List-Modified-SNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + mN-DL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + secondary-MN-DL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + lCID LCID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeModified-List-Modified-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeModified-List-Modified-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- ************************************************************** +-- +-- PDU Session Resource Modification Response Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModificationResponseInfo-SNterminated ::= SEQUENCE { + dL-NG-U-TNLatNG-RAN UPTransportLayerInformation, + dRBsToBeSetup DRBsToBeSetupList-SetupResponse-SNterminated OPTIONAL, + dRBsToBeModified DRBsToBeModifiedList-ModificationResponse-SNterminated OPTIONAL, + dRBsToBeReleased DRB-List-withCause OPTIONAL, + qosFlowsReleased QoSFlows-List-withCause OPTIONAL, + dLForwardingUPTNLInfo UPTransportLayerInformation OPTIONAL, -- this IE needs to be refined, placeholder only + uLForwardingUPTNLInfo UPTransportLayerInformation OPTIONAL, -- this IE needs to be refined, placeholder only + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModificationResponseInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModificationResponseInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeModifiedList-ModificationResponse-SNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF + DRBsToBeModifiedList-ModificationResponse-SNterminated-Item + +DRBsToBeModifiedList-ModificationResponse-SNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + sN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + dRB-QoS QoSFlowLevelQoSParameters OPTIONAL, + pDCP-SNLength PDCPSNLength OPTIONAL, + qoSFlowsMappedtoDRB-SetupResponse-SNterminated QoSFlowsMappedtoDRB-SetupResponse-SNterminated OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeModifiedList-ModificationResponse-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeModifiedList-ModificationResponse-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModificationInfo-MNterminated ::= SEQUENCE { + pduSessionType PDUSessionType, + dRBsToBeSetup DRBsToBeSetupList-Setup-MNterminated OPTIONAL, + dRBsToBeModified DRBsToBeModifiedList-Modification-MNterminated OPTIONAL, + dRBsToBeReleased DRB-List-withCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModificationInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModificationInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeModifiedList-Modification-MNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF + DRBsToBeModifiedList-Modification-MNterminated-Item + +DRBsToBeModifiedList-Modification-MNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + mN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + dRB-QoS QoSFlowLevelQoSParameters OPTIONAL, + pDCP-SNLength PDCPSNLength OPTIONAL, + secondary-MN-UL-PDCP-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + qoSFlowsMappedtoDRB-Setup-MNterminated QoSFlowsMappedtoDRB-Setup-MNterminated OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeModifiedList-Modification-MNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeModifiedList-Modification-MNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Response Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModificationResponseInfo-MNterminated ::= SEQUENCE { + dRBsAdmittedList DRBsAdmittedList-ModificationResponse-MNterminated, + dRBsReleasedList DRB-List OPTIONAL, + dRBsNotAdmittedSetupModifyList DRB-List-withCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModificationResponseInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModificationResponseInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsAdmittedList-ModificationResponse-MNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsAdmittedList-ModificationResponse-MNterminated-Item + +DRBsAdmittedList-ModificationResponse-MNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + sN-DL-SCG-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + secondary-SN-DL-SCG-UP-TNLInfo UPTransportLayerInformation OPTIONAL, + lCID LCID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsAdmittedList-ModificationResponse-MNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsAdmittedList-ModificationResponse-MNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Change Required Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceChangeRequiredInfo-SNterminated ::= SEQUENCE { + dataforwardingRequest-List DataforwardingRequest-List OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceChangeRequiredInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceChangeRequiredInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Change Confirm Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceChangeConfirmInfo-SNterminated ::= SEQUENCE { + dataforwardinginfoTarget DataForwardingInfoFromTargetNGRANnode OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceChangeConfirmInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceChangeConfirmInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Change Required Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceChangeRequiredInfo-MNterminated ::= SEQUENCE { + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceChangeRequiredInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceChangeRequiredInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Change Confirm Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceChangeConfirmInfo-MNterminated ::= SEQUENCE { + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceChangeConfirmInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceChangeConfirmInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Required Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModRqdInfo-SNterminated ::= SEQUENCE { + dL-NG-U-TNLatNG-RAN UPTransportLayerInformation OPTIONAL, + qoSFlowsToBeReleased-List QoSFlows-List-withCause OPTIONAL, + dataforwardingRequest-List DataforwardingRequest-List OPTIONAL, + drbsToBeSetupList DRBsToBeSetup-List-ModRqd-SNterminated OPTIONAL, + drbsToBeModifiedList DRBsToBeModified-List-ModRqd-SNterminated OPTIONAL, + dRBsToBeReleased DRB-List-withCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModRqdInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModRqdInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeSetup-List-ModRqd-SNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsToBeSetup-List-ModRqd-SNterminated-Item + +DRBsToBeSetup-List-ModRqd-SNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + uL-Xn-U-TNLinfoatSN UPTransportLayerInformation, + dRB-QoS QoSFlowLevelQoSParameters, + qoSFlowsMappedtoDRB-ModRqd-SNterminated QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeSetup-List-ModRqd-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeSetup-List-ModRqd-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF + QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item + +QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item ::= SEQUENCE { + qoSFlowIndicator QoSFlowIndicator, + mCGRequestedGBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToBeModified-List-ModRqd-SNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsToBeModified-List-ModRqd-SNterminated-Item + +DRBsToBeModified-List-ModRqd-SNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + uL-Xn-U-TNLinfoatSN UPTransportLayerInformation OPTIONAL, + dRB-QoS QoSFlowLevelQoSParameters OPTIONAL, + qoSFlowsMappedtoDRB-ModRqd-SNterminated QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsToBeModified-List-ModRqd-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsToBeModified-List-ModRqd-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF + QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item + +QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item ::= SEQUENCE { + qoSFlowIndicator QoSFlowIndicator, + mCGRequestedGBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Confirm Info - SN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModConfirmInfo-SNterminated ::= SEQUENCE { + uL-NG-U-TNLatUPF UPTransportLayerInformation OPTIONAL, + dRBsAdmittedList DRBsAdmittedList-ModConfirm-SNterminated, + dRBsReleasedList DRB-List OPTIONAL, + dRBsNotAdmittedSetupModifyList DRB-List-withCause OPTIONAL, + qosFlowsReleased QoSFlows-List-withCause OPTIONAL, + dataforwardinginfoTarget DataForwardingInfoFromTargetNGRANnode OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModConfirmInfo-SNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModConfirmInfo-SNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsAdmittedList-ModConfirm-SNterminated ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF + DRBsAdmittedList-ModConfirm-SNterminated-Item + +DRBsAdmittedList-ModConfirm-SNterminated-Item ::= SEQUENCE { + drb-ID DRB-ID, + sN-Xn-U-TNLInfoatMN UPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {DRBsAdmittedList-ModConfirm-SNterminated-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsAdmittedList-ModConfirm-SNterminated-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Required Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModRqdInfo-MNterminated ::= SEQUENCE { + dRBsToBeReleased DRB-List-withCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModRqdInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModRqdInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modification Confirm Info - MN terminated +-- +-- ************************************************************** + + +PDUSessionResourceModConfirmInfo-MNterminated ::= SEQUENCE { + dRBsReleasedList DRB-List OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModConfirmInfo-MNterminated-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModConfirmInfo-MNterminated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- PDU Session related message level IEs END +-- +-- ************************************************************** + + PDUSessionType ::= ENUMERATED {ipv4, ipv6, ipv4v6, ethernet, unstructured, ...} PDUSession-ID ::= INTEGER (0..255) @@ -1159,17 +1980,60 @@ PDUSession-ID ::= INTEGER (0..255) PLMN-Identity ::= OCTET STRING (SIZE(3)) +PriorityLevelQoS ::= INTEGER (1..127, ...) + + +ProtectedE-UTRAResourceIndication ::= SEQUENCE { + activationSFN ActivationSFN, + protectedResourceList ProtectedE-UTRAResourceList, + mbsfnControlRegionLength MBSFNControlRegionLength OPTIONAL, + pDCCHRegionLength INTEGER (1..3), + iE-Extensions ProtocolExtensionContainer { {ProtectedE-UTRAResourceIndication-ExtIEs} } OPTIONAL, + ... +} + +ProtectedE-UTRAResourceIndication-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +ProtectedE-UTRAResourceList ::= SEQUENCE (SIZE (1.. maxnoofProtectedResourcePatterns)) OF ProtectedE-UTRAResource-Item + +ProtectedE-UTRAResource-Item ::= SEQUENCE { + resourceType ENUMERATED {downlinknonCRS, cRS, uplink, ...}, + intra-PRBProtectedResourceFootprint BIT STRING (SIZE(84, ...)), + protectedFootprintFrequencyPattern BIT STRING (SIZE(6..110, ...)), + protectedFootprintTimePattern ProtectedE-UTRAFootprintTimePattern, + iE-Extensions ProtocolExtensionContainer { {ProtectedE-UTRAResource-Item-ExtIEs} } OPTIONAL, + ... +} + +ProtectedE-UTRAResource-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +ProtectedE-UTRAFootprintTimePattern ::= SEQUENCE { + protectedFootprintTimeperiodicity INTEGER (1..320, ...), + protectedFootrpintStartTime INTEGER (1..20, ...), + iE-Extensions ProtocolExtensionContainer { {ProtectedE-UTRAFootprintTimePattern-ExtIEs} } OPTIONAL, + ... +} + +ProtectedE-UTRAFootprintTimePattern-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- Q QoSCharacteristics ::= CHOICE { non-dynamic NonDynamic5QIDescriptor, dynamic Dynamic5QIDescriptor, - choice-extension ProtocolExtensionContainer { {QoSCharacteristics-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {QoSCharacteristics-ExtIEs} } } -QoSCharacteristics-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +QoSCharacteristics-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1183,7 +2047,6 @@ QoSFlowLevelQoSParameters ::= SEQUENCE { gBRQoSFlowInfo GBRQoSFlowInfo OPTIONAL, relectiveQoS ReflectiveQoSAttribute OPTIONAL, additionalQoSflowInfo ENUMERATED {more-likely, ...} OPTIONAL, - pPI INTEGER(1..8, ...) OPTIONAL, iE-Extensions ProtocolExtensionContainer { {QoSFlowLevelQoSParameters-ExtIEs} } OPTIONAL, ... } @@ -1193,13 +2056,22 @@ QoSFlowLevelQoSParameters-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -QoSFlows-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF ProtocolIE-Single-Container { {QoSFlow-ItemIEs} } +QoSFlowNotificationControlIndicationInfo ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF QoSFlowNotify-Item -QoSFlow-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-QoSFlow-Item CRITICALITY reject TYPE QoSFlow-Item PRESENCE mandatory }, +QoSFlowNotify-Item ::= SEQUENCE { + qosFlowIndicator QoSFlowIndicator, + notificationInformation ENUMERATED {fulfilled, not-fulfilled, ...}, + iE-Extensions ProtocolExtensionContainer { {QoSFlowNotificationControlIndicationInfo-ExtIEs} } OPTIONAL, ... } +QoSFlowNotificationControlIndicationInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +QoSFlows-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF QoSFlow-Item + QoSFlow-Item ::= SEQUENCE { qfi QoSFlowIndicator, iE-Extension ProtocolExtensionContainer { {QoSFlow-Item-ExtIEs} } OPTIONAL, @@ -1211,13 +2083,22 @@ QoSFlow-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -QoSFlowsAdmitted-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF ProtocolIE-Single-Container { {QoSFlowAdmitted-ItemIEs} } +QoSFlows-List-withCause ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF QoSFlowwithCause-Item -QoSFlowAdmitted-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-QoSFlowAdmitted-Item CRITICALITY reject TYPE QoSFlowAdmitted-Item PRESENCE mandatory }, +QoSFlowwithCause-Item ::= SEQUENCE { + qfi QoSFlowIndicator, + cause Cause OPTIONAL, + iE-Extension ProtocolExtensionContainer { {QoSFlowwithCause-Item-ExtIEs} } OPTIONAL, ... } +QoSFlowwithCause-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +QoSFlowsAdmitted-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF QoSFlowAdmitted-Item + QoSFlowAdmitted-Item ::= SEQUENCE { qfi QoSFlowIndicator, dataForwardingAccepted DataForwardingAccepted OPTIONAL, @@ -1230,12 +2111,7 @@ QoSFlowAdmitted-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -QoSFlowsNotAdmitted-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF ProtocolIE-Single-Container { {QoSFlowNotAdmitted-ItemIEs} } - -QoSFlowNotAdmitted-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-QoSFlowNotAdmitted-Item CRITICALITY reject TYPE QoSFlowNotAdmitted-Item PRESENCE mandatory }, - ... -} +QoSFlowsNotAdmitted-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF QoSFlowNotAdmitted-Item QoSFlowNotAdmitted-Item ::= SEQUENCE { qfi QoSFlowIndicator, @@ -1249,12 +2125,7 @@ QoSFlowNotAdmitted-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -QoSFlowsToBeSetup-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF ProtocolIE-Single-Container { {QoSFlowsToBeSetup-ItemIEs} } - -QoSFlowsToBeSetup-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-QoSFlowsToBeSetup-Item CRITICALITY reject TYPE QoSFlowsToBeSetup-Item PRESENCE mandatory }, - ... -} +QoSFlowsToBeSetup-List ::= SEQUENCE (SIZE (1..maxnoofQoSFlows)) OF QoSFlowsToBeSetup-Item QoSFlowsToBeSetup-Item ::= SEQUENCE { qfi QoSFlowIndicator, @@ -1273,7 +2144,7 @@ QoSFlowsToBeSetup-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { -- R -RANAC ::= BIT STRING (SIZE(6)) +RANAC ::= INTEGER (0..255) RANAreaID ::= SEQUENCE { @@ -1291,17 +2162,6 @@ RANAreaID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { RANAreaID-List ::= SEQUENCE (SIZE(1..maxnoofRANAreasinRNA)) OF RANAreaID -RANAC-Item ::= SEQUENCE { - rANAC RANAC, - iE-Extensions ProtocolExtensionContainer { {RANAC-Item-ExtIEs} } OPTIONAL, - ... -} - -RANAC-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { - ... -} - - RANPagingArea ::= SEQUENCE { pLMN-Identity PLMN-Identity, rANPagingAreaChoice RANPagingAreaChoice, @@ -1316,11 +2176,10 @@ RANPagingArea-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { RANPagingAreaChoice ::= CHOICE { cell-List NG-RAN-Cell-Identity-ListinRANPagingArea, rANAreaID-List RANAreaID-List, - choice-extension ProtocolExtensionContainer { {RANPagingAreaChoice-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {RANPagingAreaChoice-ExtIEs} } } -RANPagingAreaChoice-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +RANPagingAreaChoice-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1338,9 +2197,6 @@ RANPagingAttemptInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -RANPagingPriority ::= INTEGER (1..256) - - ReferenceID ::= INTEGER (1..64, ...) -- This IE may need to be refined. @@ -1353,14 +2209,27 @@ ReportArea ::= ENUMERATED { } -ResetRequestTypeInfo ::= CHOICE { - fullReset ResetRequestTypeInfo-Full, - partialReset ResetRequestTypeInfo-Partial, - choice-extension ProtocolExtensionContainer { {ResetRequestTypeInfo-ExtIEs} }, -- This IE may need to be refined -- +ReservedSubframePattern ::= SEQUENCE { + subframeType ENUMERATED {mbsfn, non-mbsfn, ...}, + reservedSubframePattern BIT STRING (SIZE(10..160)), + mbsfnControlRegionLength MBSFNControlRegionLength OPTIONAL, + iE-Extension ProtocolExtensionContainer { {ReservedSubframePattern-ExtIEs} } OPTIONAL, ... } -ResetRequestTypeInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +ReservedSubframePattern-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + + +ResetRequestTypeInfo ::= CHOICE { + fullReset ResetRequestTypeInfo-Full, + partialReset ResetRequestTypeInfo-Partial, + choice-extension ProtocolIE-Single-Container { {ResetRequestTypeInfo-ExtIEs} } +} + +ResetRequestTypeInfo-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1383,12 +2252,7 @@ ResetRequestTypeInfo-Partial-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } -ResetRequestPartialReleaseList ::= SEQUENCE (SIZE(1..maxnoofUEContexts)) OF ProtocolIE-Single-Container { {ResetRequestPartialReleaseItemIEs} } - -ResetRequestPartialReleaseItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-ResetRequestPartialReleaseItem CRITICALITY reject TYPE ResetRequestPartialReleaseItem PRESENCE mandatory}, - ... -} +ResetRequestPartialReleaseList ::= SEQUENCE (SIZE(1..maxnoofUEContexts)) OF ResetRequestPartialReleaseItem ResetRequestPartialReleaseItem ::= SEQUENCE { ng-ran-node1UEXnAPID NG-RANnodeUEXnAPID, @@ -1405,11 +2269,10 @@ ResetRequestPartialReleaseItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ResetResponseTypeInfo ::= CHOICE { fullReset ResetResponseTypeInfo-Full, partialReset ResetResponseTypeInfo-Partial, - choice-extension ProtocolExtensionContainer { {ResetResponseTypeInfo-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {ResetResponseTypeInfo-ExtIEs} } } -ResetResponseTypeInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +ResetResponseTypeInfo-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1432,12 +2295,7 @@ ResetResponseTypeInfo-Partial-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } -ResetResponsePartialReleaseList ::= SEQUENCE (SIZE(1..maxnoofUEContexts)) OF ProtocolIE-Single-Container { {ResetResponsePartialReleaseItemIEs} } - -ResetResponsePartialReleaseItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-ResetResponsePartialReleaseItem CRITICALITY reject TYPE ResetResponsePartialReleaseItem PRESENCE mandatory}, - ... -} +ResetResponsePartialReleaseList ::= SEQUENCE (SIZE(1..maxnoofUEContexts)) OF ResetResponsePartialReleaseItem ResetResponsePartialReleaseItem ::= SEQUENCE { ng-ran-node1UEXnAPID NG-RANnodeUEXnAPID, @@ -1451,12 +2309,31 @@ ResetResponsePartialReleaseItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -RLCMode ::= ENUMERATED {rlc-am, rlc-um} +RLCMode ::= ENUMERATED { + rlc-am, + rlc-um-bidirectional, + rlc-um-unidirectional-ul, + rlc-um-unidirectional-dl, + ... + } RFSP-Index ::= INTEGER (1..256) +RRCConfigIndication ::= ENUMERATED { + full-config, + delta-config, + ... +} + + +RRCResumeCause ::= ENUMERATED { + rna-Update, + ... +} + + -- S @@ -1466,6 +2343,8 @@ SCGConfigurationQuery ::= ENUMERATED {true, ...} SecurityIndication ::= SEQUENCE { integrityProtectionIndication ENUMERATED {required, preferred, not-needed, ...}, confidentialityProtectionIndication ENUMERATED {required, preferred, not-needed, ...}, + maximumIPdatarate MaximumIPdatarate OPTIONAL, +-- This IE shall be present if the Integrity Protection IE within the Security Indication IE is present and set to "required" or "preferred". -- iE-Extensions ProtocolExtensionContainer { {SecurityIndication-ExtIEs} } OPTIONAL, ... } @@ -1475,6 +2354,18 @@ SecurityIndication-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +SecurityResult ::= SEQUENCE { + integrityProtectionResult ENUMERATED {performed, not-performed, ...}, + confidentialityProtectionResult ENUMERATED {performed, not-performed, ...}, + iE-Extensions ProtocolExtensionContainer { {SecurityResult-ExtIEs} } OPTIONAL, + ... +} + +SecurityResult-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- Served Cells E-UTRA IEs @@ -1482,6 +2373,7 @@ ServedCellInformation-E-UTRA ::= SEQUENCE { e-utra-pci E-UTRAPCI, e-utra-cgi E-UTRA-CGI, tac TAC, + ranac RANAC OPTIONAL, broadcastPLMNs SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF ServedCellInformation-E-UTRA-perBPLMN, numberofAntennaPorts NumberOfAntennaPorts-E-UTRA OPTIONAL, prach-configuration E-UTRAPRACHConfiguration OPTIONAL, @@ -1489,6 +2381,7 @@ ServedCellInformation-E-UTRA ::= SEQUENCE { multibandInfo E-UTRAMultibandInfoList OPTIONAL, freqBandIndicatorPriority ENUMERATED {not-broadcast, broadcast, ...} OPTIONAL, bandwidthReducedSI ENUMERATED {scheduled, ...} OPTIONAL, + protectedE-UTRAResourceIndication ProtectedE-UTRAResourceIndication OPTIONAL, iE-Extensions ProtocolExtensionContainer { {ServedCellInformation-E-UTRA-ExtIEs} } OPTIONAL, ... } @@ -1513,11 +2406,10 @@ ServedCellInformation-E-UTRA-perBPLMN-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ServedCellInformation-E-UTRA-perBPLMN-ModeInfo ::= CHOICE { fdd ServedCellInformation-E-UTRA-perBPLMN-FDDInfo, tdd ServedCellInformation-E-UTRA-perBPLMN-TDDInfo, - choice-extension ProtocolExtensionContainer { {ServedCellInformation-E-UTRA-perBPLMN-ModeInfo-ExtIEs} },-- This IE may need to be refined - ... + choice-extension ProtocolIE-Single-Container{ {ServedCellInformation-E-UTRA-perBPLMN-ModeInfo-ExtIEs} } } -ServedCellInformation-E-UTRA-perBPLMN-ModeInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +ServedCellInformation-E-UTRA-perBPLMN-ModeInfo-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1550,7 +2442,7 @@ ServedCellInformation-E-UTRA-perBPLMN-TDDInfo-ExtIEs XNAP-PROTOCOL-EXTENSION ::= } -ServedCells-E-UTRA ::= SEQUENCE (SIZE (1..maxnoofCellsinNGRANnode)) OF ServedCells-E-UTRA-Item +ServedCells-E-UTRA ::= SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF ServedCells-E-UTRA-Item ServedCells-E-UTRA-Item ::= SEQUENCE { served-cell-info-E-UTRA ServedCellInformation-E-UTRA, @@ -1568,7 +2460,7 @@ ServedCells-E-UTRA-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ServedCellsToUpdate-E-UTRA ::= SEQUENCE { served-Cells-ToAdd-E-UTRA ServedCells-E-UTRA OPTIONAL, served-Cells-ToModify-E-UTRA ServedCells-ToModify-E-UTRA OPTIONAL, - served-Cells-ToDelete-E-UTRA SEQUENCE (SIZE (1..maxnoofCellsinNGRANnode)) OF E-UTRA-CGI OPTIONAL, + served-Cells-ToDelete-E-UTRA SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF E-UTRA-CGI OPTIONAL, iE-Extensions ProtocolExtensionContainer { {ServedCellsToUpdate-E-UTRA-ExtIEs} } OPTIONAL, ... } @@ -1578,7 +2470,7 @@ ServedCellsToUpdate-E-UTRA-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -ServedCells-ToModify-E-UTRA ::= SEQUENCE (SIZE (1..maxnoofCellsinNGRANnode)) OF ServedCells-ToModify-E-UTRA-Item +ServedCells-ToModify-E-UTRA ::= SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF ServedCells-ToModify-E-UTRA-Item ServedCells-ToModify-E-UTRA-Item ::= SEQUENCE { old-ECGI E-UTRA-CGI, @@ -1605,7 +2497,8 @@ ServedCellInformation-NR ::= SEQUENCE { broadcastPLMN BroadcastPLMNs, nrModeInfo NRModeInfo, measurementTimingConfiguration OCTET STRING, - iE-Extensions ProtocolExtensionContainer { {ServedCellInformation-NR-ExtIEs} } OPTIONAL, + nrscs-ssb NRSCS-SSB, + connectivitySupport Connectivity-Support, iE-Extensions ProtocolExtensionContainer { {ServedCellInformation-NR-ExtIEs} } OPTIONAL, ... } @@ -1614,7 +2507,7 @@ ServedCellInformation-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -ServedCells-NR ::= SEQUENCE (SIZE (1..maxnoofCellsinNGRANnode)) OF ServedCells-NR-Item +ServedCells-NR ::= SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF ServedCells-NR-Item ServedCells-NR-Item ::= SEQUENCE { served-cell-info-NR ServedCellInformation-NR, @@ -1629,13 +2522,14 @@ ServedCells-NR-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -ServedCells-ToModify-NR ::= SEQUENCE (SIZE (1..maxnoofCellsinNGRANnode)) OF ServedCells-ToModify-NR-Item +ServedCells-ToModify-NR ::= SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF ServedCells-ToModify-NR-Item ServedCells-ToModify-NR-Item ::= SEQUENCE { old-NR-CGI NR-CGI, served-cell-info-NR ServedCellInformation-NR, neighbour-info-NR NeighbourInformation-NR OPTIONAL, neighbour-info-E-UTRA NeighbourInformation-E-UTRA OPTIONAL, + deactivation-indication ENUMERATED {deactivated, ...} OPTIONAL, iE-Extensions ProtocolExtensionContainer { {Served-cells-ToModify-NR-Item-ExtIEs} } OPTIONAL, ... } @@ -1648,7 +2542,7 @@ Served-cells-ToModify-NR-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ServedCellsToUpdate-NR ::= SEQUENCE { served-Cells-ToAdd-NR ServedCells-NR OPTIONAL, served-Cells-ToModify-NR ServedCells-ToModify-NR OPTIONAL, - served-Cells-ToDelete-NR SEQUENCE (SIZE (1..maxnoofCellsinNGRANnode)) OF NR-CGI OPTIONAL, + served-Cells-ToDelete-NR SEQUENCE (SIZE (1..maxnoofCellsinNG-RANnode)) OF NR-CGI OPTIONAL, iE-Extensions ProtocolExtensionContainer { {ServedCellsToUpdate-NR-ExtIEs} } OPTIONAL, ... } @@ -1658,6 +2552,77 @@ ServedCellsToUpdate-NR-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +SharedResourceType ::= CHOICE { + ul-onlySharing SharedResourceType-UL-OnlySharing, + ul-and-dl-Sharing SharedResourceType-ULDL-Sharing, + choice-extension ProtocolIE-Single-Container { {SharedResourceType-ExtIEs} } +} + +SharedResourceType-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +SharedResourceType-UL-OnlySharing ::= SEQUENCE { + ul-resourceBitmap DataTrafficResources, + iE-Extensions ProtocolExtensionContainer { {SharedResourceType-UL-OnlySharing-ExtIEs} } OPTIONAL, + ... +} + +SharedResourceType-UL-OnlySharing-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +SharedResourceType-ULDL-Sharing ::= CHOICE { + ul-resources SharedResourceType-ULDL-Sharing-UL-Resources, + dl-resources SharedResourceType-ULDL-Sharing-DL-Resources, + choice-extension ProtocolIE-Single-Container { {SharedResourceType-ULDL-Sharing-ExtIEs} } +} + +SharedResourceType-ULDL-Sharing-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +SharedResourceType-ULDL-Sharing-UL-Resources ::= CHOICE { + unchanged NULL, + changed SharedResourceType-ULDL-Sharing-UL-ResourcesChanged, + choice-extension ProtocolIE-Single-Container { {SharedResourceType-ULDL-Sharing-UL-Resources-ExtIEs} } +} + +SharedResourceType-ULDL-Sharing-UL-Resources-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +SharedResourceType-ULDL-Sharing-UL-ResourcesChanged ::= SEQUENCE { + ul-resourceBitmap DataTrafficResources, + iE-Extensions ProtocolExtensionContainer { {SharedResourceType-ULDL-Sharing-UL-ResourcesChanged-ExtIEs} } OPTIONAL, + ... +} + +SharedResourceType-ULDL-Sharing-UL-ResourcesChanged-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +SharedResourceType-ULDL-Sharing-DL-Resources ::= CHOICE { + unchanged NULL, + changed SharedResourceType-ULDL-Sharing-DL-ResourcesChanged, + choice-extension ProtocolIE-Single-Container { {SharedResourceType-ULDL-Sharing-DL-Resources-ExtIEs} } +} + +SharedResourceType-ULDL-Sharing-DL-Resources-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +SharedResourceType-ULDL-Sharing-DL-ResourcesChanged ::= SEQUENCE { + dl-resourceBitmap DataTrafficResources, + iE-Extensions ProtocolExtensionContainer { {SharedResourceType-ULDL-Sharing-DL-ResourcesChanged-ExtIEs} } OPTIONAL, + ... +} + +SharedResourceType-ULDL-Sharing-DL-ResourcesChanged-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + SliceSupport-List ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF S-NSSAI @@ -1666,7 +2631,7 @@ S-NG-RANnode-SecurityKey ::= BIT STRING (SIZE(256)) S-NSSAI ::= SEQUENCE { sst OCTET STRING (SIZE(1)), - sd OCTET STRING (SIZE(3)), + sd OCTET STRING (SIZE(3)) OPTIONAL, iE-Extensions ProtocolExtensionContainer { {S-NSSAI-ExtIEs} } OPTIONAL, ... } @@ -1689,9 +2654,9 @@ SpecialSubframeInfo-E-UTRA-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -SpecialSubframePatterns-E-UTRA ::= ENUMERATED { +SpecialSubframePatterns-E-UTRA ::= ENUMERATED { ssp0, - ssp1, + ssp1, ssp2, ssp3, ssp4, @@ -1705,6 +2670,12 @@ SpecialSubframePatterns-E-UTRA ::= ENUMERATED { } +SpectrumSharingGroupID ::= INTEGER (1..maxnoofCellsinNG-RANnode) + + +SplitSRBsTypes ::= ENUMERATED {srb1, srb2, srb1and2, ...} + + SUL-FrequencyBand ::= INTEGER (1..1024) @@ -1736,15 +2707,10 @@ SupportedSULBandItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { -- T -TAC ::= OCTET STRING (SIZE (3)) +TAC ::= OCTET STRING (SIZE (3)) -TAISupport-List ::= SEQUENCE (SIZE(1..maxnoofsupportedTACs)) OF ProtocolIE-Single-Container { {TAISupport-ItemIEs} } - -TAISupport-ItemIEs XNAP-PROTOCOL-IES ::= { - { ID id-TAISupport-Item CRITICALITY reject TYPE TAISupport-Item PRESENCE mandatory }, - ... -} +TAISupport-List ::= SEQUENCE (SIZE(1..maxnoofsupportedTACs)) OF TAISupport-Item TAISupport-Item ::= SEQUENCE { tac TAC, @@ -1761,22 +2727,31 @@ TAISupport-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { Target-CGI ::= CHOICE { nr NR-CGI, e-utra E-UTRA-CGI, - choice-extension ProtocolExtensionContainer { {TargetCGI-ExtIEs} },-- This IE may need to be refined -- + choice-extension ProtocolIE-Single-Container { {TargetCGI-ExtIEs} } +} + +TargetCGI-ExtIEs XNAP-PROTOCOL-IES ::= { ... } -TargetCGI-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + +TimeToWait ::= ENUMERATED { + v1s, + v2s, + v5s, + v10s, + v20s, + v60s, ... } - TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...)) TraceActivation ::= SEQUENCE { ng-ran-TraceID OCTET STRING (SIZE (8)), interfaces-to-trace BIT STRING { ng-c (0), x-nc (1), uu (2), f1-c (3), e1 (4)} (SIZE(8)), - trace-depth Trace-Depth, + trace-depth Trace-Depth, trace-coll-address TransportLayerAddress, ie-Extension ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL, ... @@ -1787,14 +2762,14 @@ TraceActivation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -Trace-Depth ::= ENUMERATED { +Trace-Depth ::= ENUMERATED { minimum, medium, maximum, minimumWithoutVendorSpecificExtension, mediumWithoutVendorSpecificExtension, maximumWithoutVendorSpecificExtension, - ... + ... } @@ -1820,14 +2795,16 @@ UEAggregateMaximumBitRate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } +UEContextKeptIndicator ::= ENUMERATED {true, ...} + + UEContextID ::= CHOICE { rRCResume UEContextIDforRRCResume, rRRCReestablishment UEContextIDforRRCReestablishment, - choice-extension ProtocolExtensionContainer { {UEContextID-ExtIEs} },-- This IE may need to be refined – - ... + choice-extension ProtocolIE-Single-Container { {UEContextID-ExtIEs} } } -UEContextID-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +UEContextID-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1861,7 +2838,7 @@ UEContextInfoRetrUECtxtResp ::= SEQUENCE { ueSecurityCapabilities UESecurityCapabilities, securityInformation AS-SecurityInformation, ue-AMBR UEAggregateMaximumBitRate, - pduSessionResourcesToBeSet-List PDUSessionResourcesToBeSetup-List, + pduSessionResourcesToBeSetup-List PDUSessionResourcesToBeSetup-List, rrc-Context OCTET STRING, mobilityRestrictionList MobilityRestrictionList OPTIONAL, indexToRatFrequencySelectionPriority RFSP-Index OPTIONAL, @@ -1874,16 +2851,25 @@ UEContextInfoRetrUECtxtResp-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { } -UEIdentityIndexValue ::= INTEGER (0..63) -- This IE may need to be refined +UEHistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCellsinUEHistoryInfo)) OF LastVisitedCell-Item + + +UEIdentityIndexValue ::= CHOICE { + indexLength10 BIT STRING (SIZE(10)), + choice-extension ProtocolIE-Single-Container { {UEIdentityIndexValue-ExtIEs} } +} + +UEIdentityIndexValue-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} UERANPagingIdentity ::= CHOICE { i-RNTI I-RNTI, - choice-extension ProtocolExtensionContainer { {UERANPagingIdentity-ExtIEs} },-- This IE may need to be refined – - ... + choice-extension ProtocolIE-Single-Container { {UERANPagingIdentity-ExtIEs} } } -UERANPagingIdentity-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +UERANPagingIdentity-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -1912,13 +2898,14 @@ UESecurityCapabilities-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { UPTransportLayerInformation ::= CHOICE { gtpTunnel GTPtunnelTransportLayerInformation, - choice-extension ProtocolExtensionContainer { {UPTransportLayerInformation-ExtIEs} },-- This IE may need to be refined -- + choice-extension ProtocolIE-Single-Container { {UPTransportLayerInformation-ExtIEs} } +} + +UPTransportLayerInformation-ExtIEs XNAP-PROTOCOL-IES ::= { ... } -UPTransportLayerInformation-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { - ... -} +UserPlaneTrafficActivityReport ::= ENUMERATED {inactive, re-activated, ...} -- V diff --git a/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn b/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn index bcb97ccbc9..e47082a279 100644 --- a/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn +++ b/epan/dissectors/asn1/xnap/XnAP-PDU-Contents.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V15.0.0 (2018-06) +-- 3GPP TS 38.423 V15.1.0 (2018-09) -- 9.3.4 PDU Definitions -- ************************************************************** -- @@ -33,13 +33,19 @@ IMPORTS CPTransportLayerInformation, CriticalityDiagnostics, DataforwardingInfoperPDUSession, + DataTrafficResourceIndication, + DeliveryStatus, + DRB-ID, DRBsSubjectToStatusTransfer-List, DRBToQoSFlowMapping-List, E-UTRA-CGI, + ExpectedUEBehaviour, GlobalNG-RANNode-ID, + GlobalNG-RANCell-ID, GUAMI, I-RNTI, LocationReportingInformation, + LowerLayerPresenceStatusChange, ServedCells-E-UTRA, ServedCells-NR, ServedCellsToUpdate-E-UTRA, @@ -51,31 +57,65 @@ IMPORTS NG-RANnodeUEXnAPID, NR-CGI, PagingDRX, + PagingPriority, + PLMN-Identity, + PDCPChangeIndication, + PDUSessionAggregateMaximumBitRate, PDUSession-ID, + PDUSession-List, + PDUSession-List-withCause, + PDUSession-List-withDataForwardingFromTarget, + PDUSession-List-withDataForwardingRequest, PDUSessionResourcesAdmitted-List, PDUSessionResourcesNotAdmitted-List, PDUSessionResourcesToBeSetup-List, + PDUSessionResourceChangeRequiredInfo-SNterminated, + PDUSessionResourceChangeRequiredInfo-MNterminated, + PDUSessionResourceChangeConfirmInfo-SNterminated, + PDUSessionResourceChangeConfirmInfo-MNterminated, + PDUSessionResourceSetupInfo-SNterminated, + PDUSessionResourceSetupInfo-MNterminated, + PDUSessionResourceSetupResponseInfo-SNterminated, + PDUSessionResourceSetupResponseInfo-MNterminated, + PDUSessionResourceModificationInfo-SNterminated, + PDUSessionResourceModificationInfo-MNterminated, + PDUSessionResourceModificationResponseInfo-SNterminated, + PDUSessionResourceModificationResponseInfo-MNterminated, + PDUSessionResourceModConfirmInfo-SNterminated, + PDUSessionResourceModConfirmInfo-MNterminated, + PDUSessionResourceModRqdInfo-SNterminated, PDUSessionType, + QoSFlowIndicator, + QoSFlowNotificationControlIndicationInfo, QoSFlows-List, RANPagingArea, - RANPagingPriority, ResetRequestTypeInfo, ResetResponseTypeInfo, RFSP-Index, + RRCConfigIndication, + RRCResumeCause, + SCGConfigurationQuery, SecurityIndication, ServedCells-NR, + S-NG-RANnode-SecurityKey, + SpectrumSharingGroupID, + SplitSRBsTypes, S-NSSAI, TAISupport-List, Target-CGI, + TimeToWait, TraceActivation, TraceActivation, UEAggregateMaximumBitRate, UEContextID, UEContextInfoRetrUECtxtResp, + UEContextKeptIndicator, + UEHistoryInformation, UEIdentityIndexValue, UERANPagingIdentity, UESecurityCapabilities, UPTransportLayerInformation, + UserPlaneTrafficActivityReport, XnBenefitValue @@ -104,45 +144,100 @@ FROM XnAP-Containers id-ConfigurationUpdateInitiatingNodeChoice, id-UEContextID, id-CriticalityDiagnostics, - id-dataforwardingInfoperPDUSession, id-DRBsSubjectToStatusTransfer-List, + id-dataforwardingInfoperPDUSession, + id-DRBsSubjectToStatusTransfer-List, + id-ExpectedUEBehaviour, id-GlobalNG-RAN-node-ID, id-GUAMI, + id-indexToRatFrequSelectionPriority, id-List-of-served-cells-E-UTRA, id-List-of-served-cells-NR, id-LocationReportingInformation, id-MAC-I, id-MaskedIMEISV, + id-MN-to-SN-Container, + id-MobilityRestrictionList, + id-M-NG-RANnodeUEXnAPID, id-new-NG-RAN-Cell-Identity, id-newNG-RANnodeUEXnAPID, id-oldNG-RANnodeUEXnAPID, + id-OldtoNewNG-RANnodeResumeContainer, id-PagingDRX, + id-PagingPriority, + id-PCellID, + id-PDUSessionResourcesActivityNotifyList, id-PDUSessionResourcesAdmitted-List, id-PDUSessionResourcesNotAdmitted-List, + id-PDUSessionResourcesNotifyList, + id-PDUSessionToBeAddedAddReq, id-RANPagingArea, - id-RANPagingPriority, + id-requestedSplitSRB, id-ResetRequestTypeInfo, id-ResetResponseTypeInfo, id-RespondingNodeTypeConfigUpdateAck, + id-RRCResumeCause, + id-selectedPLMN, id-ServedCellsToActivate, id-servedCellsToUpdate-E-UTRA, id-ServedCellsToUpdateInitiatingNodeChoice, id-servedCellsToUpdate-NR, id-sourceNG-RANnodeUEXnAPID, + id-S-NG-RANnodeUEXnAPID, id-TAISupport-list, id-Target2SourceNG-RANnodeTranspContainer, id-targetCellGlobalID, id-targetNG-RANnodeUEXnAPID, + id-TimeToWait, id-TraceActivation, id-TraceActivation, id-UEContextInfoHORequest, id-UEContextInfoRetrUECtxtResp, + id-UEContextKeptIndicator, + id-UEContextRefAtSN-HORequest, + id-UEHistoryInformation, id-UEIdentityIndexValue, id-UERANPagingIdentity, + id-UESecurityCapabilities, + id-UserPlaneTrafficActivityReport, id-XnRemovalThreshold, + id-PDUSessionAdmittedAddedAddReqAck, + id-PDUSessionNotAdmittedAddReqAck, + id-SN-to-MN-Container, + id-admittedSplitSRB, + id-RRCConfigIndication, + id-SplitSRB-RRCTransfer, + id-NRUEMeasurementReportRRCTransfer, + id-PDUSessionReleasedList-RelConf, + id-BearersSubjectToCounterCheck, + id-PDUSessionReleasedList-RelConf, + id-PDUSessionToBeReleasedList-RelRqd, + id-ResponseInfo-ReconfCompl, + id-initiatingNodeType-ResourceCoordRequest, + id-respondingNodeType-ResourceCoordResponse, + id-PDUSessionToBeReleased-RelReq, + id-PDUSession-SNChangeRequired-List, + id-PDUSession-SNChangeConfirm-List, + id-PDCPChangeIndication, + id-SCGConfigurationQuery, + id-UEContextInfo-SNModRequest, + id-requestedSplitSRBrelease, + id-PDUSessionAdmitted-SNModResponse, + id-PDUSessionNotAdmitted-SNModResponse, + id-admittedSplitSRB, + id-admittedSplitSRBrelease, + id-PDUSessionAdmittedModSNModConfirm, + id-PDUSessionReleasedSNModConfirm, + id-s-ng-RANnode-SecurityKey, + id-PDUSessionToBeModifiedSNModRequired, + id-S-NG-RANnodeUE-AMBR, + id-PDUSessionToBeReleasedSNModRequired, + id-target-S-NG-RANnodeID, - - maxnoofCellsinNGRANnode, - maxnoofPDUSessions + maxnoofBearerConfigs, + maxnoofCellsinNG-RANnode, + maxnoofDRBs, + maxnoofPDUSessions, + maxnoofQoSFlows FROM XnAP-Constants; -- ************************************************************** @@ -163,7 +258,9 @@ HandoverRequest-IEs XNAP-PROTOCOL-IES ::= { { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory}| { ID id-UEContextInfoHORequest CRITICALITY reject TYPE UEContextInfoHORequest PRESENCE mandatory}| { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| - { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }, + { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }| + { ID id-UEHistoryInformation CRITICALITY ignore TYPE UEHistoryInformation PRESENCE mandatory}| + { ID id-UEContextRefAtSN-HORequest CRITICALITY ignore TYPE UEContextRefAtSN-HORequest PRESENCE optional }, ... } @@ -172,11 +269,12 @@ UEContextInfoHORequest ::= SEQUENCE { cp-TNL-info-source CPTransportLayerInformation, ueSecurityCapabilities UESecurityCapabilities, securityInformation AS-SecurityInformation, - indexToRatFrequencySelectionPriority RFSP-Index OPTIONAL, ue-AMBR UEAggregateMaximumBitRate, + indexToRatFrequencySelectionPriority RFSP-Index OPTIONAL, + ue-AMBR UEAggregateMaximumBitRate, pduSessionResourcesToBeSetup-List PDUSessionResourcesToBeSetup-List, rrc-Context OCTET STRING, locationReportingInformation LocationReportingInformation OPTIONAL, - hlr MobilityRestrictionList OPTIONAL, + mrl MobilityRestrictionList OPTIONAL, iE-Extensions ProtocolExtensionContainer { {UEContextInfoHORequest-ExtIEs} } OPTIONAL, ... } @@ -185,6 +283,17 @@ UEContextInfoHORequest-ExtIEs XNAP-PROTOCOL-EXTENSION ::={ ... } +UEContextRefAtSN-HORequest ::= SEQUENCE { + globalNG-RANNode-ID GlobalNG-RANNode-ID, + sN-NG-RANnodeUEXnAPID NG-RANnodeUEXnAPID, + iE-Extensions ProtocolExtensionContainer { {UEContextRefAtSN-HORequest-ExtIEs} } OPTIONAL, + ... +} + +UEContextRefAtSN-HORequest-ExtIEs XNAP-PROTOCOL-EXTENSION ::={ + ... +} + -- ************************************************************** -- -- HANDOVER REQUEST ACKNOWLEDGE @@ -196,7 +305,7 @@ HandoverRequestAcknowledge ::= SEQUENCE { ... } --- WS modification: defien a dedicated type +-- WS modification: define a dedicated type Target2SourceNG-RANnodeTranspContainer ::= OCTET STRING HandoverRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { @@ -207,6 +316,7 @@ HandoverRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { -- WS modification: define a dedicated type -- { ID id-Target2SourceNG-RANnodeTranspContainer CRITICALITY ignore TYPE OCTET STRING PRESENCE mandatory}| { ID id-Target2SourceNG-RANnodeTranspContainer CRITICALITY ignore TYPE Target2SourceNG-RANnodeTranspContainer PRESENCE mandatory}| + { ID id-UEContextKeptIndicator CRITICALITY ignore TYPE UEContextKeptIndicator PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -298,7 +408,7 @@ RANPaging-IEs XNAP-PROTOCOL-IES ::= { { ID id-UERANPagingIdentity CRITICALITY ignore TYPE UERANPagingIdentity PRESENCE mandatory}| { ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory}| { ID id-RANPagingArea CRITICALITY reject TYPE RANPagingArea PRESENCE mandatory}| - { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| + { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }| { ID id-AssistanceDataForRANPaging CRITICALITY ignore TYPE AssistanceDataForRANPaging PRESENCE optional }, ... } @@ -318,7 +428,8 @@ RetrieveUEContextRequest-IEs XNAP-PROTOCOL-IES ::= { { ID id-newNG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| { ID id-UEContextID CRITICALITY reject TYPE UEContextID PRESENCE mandatory}| { ID id-MAC-I CRITICALITY reject TYPE MAC-I PRESENCE mandatory}| - { ID id-new-NG-RAN-Cell-Identity CRITICALITY reject TYPE NG-RAN-Cell-Identity PRESENCE mandatory}, + { ID id-new-NG-RAN-Cell-Identity CRITICALITY reject TYPE NG-RAN-Cell-Identity PRESENCE mandatory}| + { ID id-RRCResumeCause CRITICALITY ignore TYPE RRCResumeCause PRESENCE optional }, ... } @@ -356,9 +467,14 @@ RetrieveUEContextFailure ::= SEQUENCE { ... } +-- WS modification: define a dedicated type +OldtoNewNG-RANnodeResumeContainer ::= OCTET STRING + RetrieveUEContextFailure-IEs XNAP-PROTOCOL-IES ::= { { ID id-newNG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| - { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| +-- WS modification: define a dedicated type +-- { ID id-OldtoNewNG-RANnodeResumeContainer CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }| + { ID id-OldtoNewNG-RANnodeResumeContainer CRITICALITY ignore TYPE OldtoNewNG-RANnodeResumeContainer PRESENCE optional }| { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -387,31 +503,125 @@ DataForwardingAddressIndication-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeAdditionRequest ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeAdditionRequest-IEs}}, ... } +-- WS modification: define a dedicated type +MN-to-SN-Container ::= OCTET STRING + SNodeAdditionRequest-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory}| + { ID id-s-ng-RANnode-SecurityKey CRITICALITY reject TYPE S-NG-RANnode-SecurityKey PRESENCE mandatory}| + { ID id-S-NG-RANnodeUE-AMBR CRITICALITY reject TYPE UEAggregateMaximumBitRate PRESENCE mandatory}| + { ID id-selectedPLMN CRITICALITY ignore TYPE PLMN-Identity PRESENCE optional }| + { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }| + { ID id-indexToRatFrequSelectionPriority CRITICALITY reject TYPE RFSP-Index PRESENCE optional }| + { ID id-PDUSessionToBeAddedAddReq CRITICALITY reject TYPE PDUSessionToBeAddedAddReq PRESENCE mandatory}| +-- WS modification: define a dedicated type +-- { ID id-MN-to-SN-Container CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory}| + { ID id-MN-to-SN-Container CRITICALITY reject TYPE MN-to-SN-Container PRESENCE mandatory}| { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE optional }| + { ID id-ExpectedUEBehaviour CRITICALITY ignore TYPE ExpectedUEBehaviour PRESENCE optional }| + { ID id-requestedSplitSRB CRITICALITY reject TYPE SplitSRBsTypes PRESENCE optional }| + { ID id-PCellID CRITICALITY reject TYPE GlobalNG-RANCell-ID PRESENCE optional }, + + ... } +PDUSessionToBeAddedAddReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionToBeAddedAddReq-Item + +PDUSessionToBeAddedAddReq-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + s-NSSAI S-NSSAI, + sN-PDUSessionAMBR PDUSessionAggregateMaximumBitRate OPTIONAL, + bearerConfigToBeAdded BearerConfigToBeAdded-AddReq, + iE-Extension ProtocolExtensionContainer { {PDUSessionToBeAddedAddReq-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionToBeAddedAddReq-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeAdded-AddReq ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigToBeAdded-AddReq-Item + +BearerConfigToBeAdded-AddReq-Item ::= CHOICE { + sn-terminated PDUSessionResourceSetupInfo-SNterminated, + mn-terminated PDUSessionResourceSetupInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigToBeAdded-AddReq-Item-ExtIEs} } +} + +BearerConfigToBeAdded-AddReq-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + + -- ************************************************************** -- -- S-NODE ADDITION REQUEST ACKNOWLEDGE -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeAdditionRequestAcknowledge ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeAdditionRequestAcknowledge-IEs}}, ... } +-- WS modification: define a dedicated type +SN-to-MN-Container ::= OCTET STRING + SNodeAdditionRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSessionAdmittedAddedAddReqAck CRITICALITY ignore TYPE PDUSessionAdmittedAddedAddReqAck PRESENCE mandatory}| + { ID id-PDUSessionNotAdmittedAddReqAck CRITICALITY ignore TYPE PDUSessionNotAdmittedAddReqAck PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-SN-to-MN-Container CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory}| + { ID id-SN-to-MN-Container CRITICALITY reject TYPE SN-to-MN-Container PRESENCE mandatory}| + { ID id-admittedSplitSRB CRITICALITY reject TYPE SplitSRBsTypes PRESENCE optional }| + { ID id-RRCConfigIndication CRITICALITY reject TYPE RRCConfigIndication PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +PDUSessionAdmittedAddedAddReqAck ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionAdmittedAddedAddReqAck-Item + +PDUSessionAdmittedAddedAddReqAck-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigAdmittedToBeAdded BearerConfigAdmittedToBeAdded-AddReqAck, + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedAddedAddReqAck-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmittedAddedAddReqAck-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigAdmittedToBeAdded-AddReqAck ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigAdmittedToBeAdded-AddReqAck-Item + +BearerConfigAdmittedToBeAdded-AddReqAck-Item ::= CHOICE { + sn-terminated PDUSessionResourceSetupResponseInfo-SNterminated, + mn-terminated PDUSessionResourceSetupResponseInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigAdmittedToBeAdded-AddReqAck-Item-ExtIEs} } +} + +BearerConfigAdmittedToBeAdded-AddReqAck-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +PDUSessionNotAdmittedAddReqAck ::= SEQUENCE { + pduSessionResourcesNotAdmitted-SNterminated PDUSessionResourcesNotAdmitted-List OPTIONAL, + pduSessionResourcesNotAdmitted-MNterminated PDUSessionResourcesNotAdmitted-List OPTIONAL, + iE-Extension ProtocolExtensionContainer { {PDUSessionNotAdmittedAddReqAck-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionNotAdmittedAddReqAck-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } @@ -421,7 +631,6 @@ SNodeAdditionRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeAdditionRequestReject ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeAdditionRequestReject-IEs}}, @@ -429,6 +638,10 @@ SNodeAdditionRequestReject ::= SEQUENCE { } SNodeAdditionRequestReject-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -438,7 +651,6 @@ SNodeAdditionRequestReject-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeReconfigurationComplete ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeReconfigurationComplete-IEs}}, @@ -446,16 +658,60 @@ SNodeReconfigurationComplete ::= SEQUENCE { } SNodeReconfigurationComplete-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-ResponseInfo-ReconfCompl CRITICALITY ignore TYPE ResponseInfo-ReconfCompl PRESENCE mandatory}, ... } +ResponseInfo-ReconfCompl ::= SEQUENCE { + responseType-ReconfComplete ResponseType-ReconfComplete, + iE-Extensions ProtocolExtensionContainer { {ResponseInfo-ReconfCompl-ExtIEs} } OPTIONAL, + ... +} + +ResponseInfo-ReconfCompl-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +ResponseType-ReconfComplete ::= CHOICE { + configuration-successfully-applied Configuration-successfully-applied, + configuration-rejected-by-M-NG-RANNode Configuration-rejected-by-M-NG-RANNode, + choice-extension ProtocolIE-Single-Container { {ResponseType-ReconfComplete-ExtIEs} } +} + +ResponseType-ReconfComplete-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +Configuration-successfully-applied ::= SEQUENCE { + m-NG-RANNode-to-S-NG-RANNode-Container OCTET STRING OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {Configuration-successfully-applied-ExtIEs} } OPTIONAL, + ... +} + +Configuration-successfully-applied-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +Configuration-rejected-by-M-NG-RANNode ::= SEQUENCE { + cause Cause, + m-NG-RANNode-to-S-NG-RANNode-Container OCTET STRING OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {Configuration-rejected-by-M-NG-RANNode-ExtIEs} } OPTIONAL, + ... +} + +Configuration-rejected-by-M-NG-RANNode-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- -- S-NODE MODIFICATION REQUEST -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeModificationRequest ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeModificationRequest-IEs}}, @@ -463,6 +719,99 @@ SNodeModificationRequest ::= SEQUENCE { } SNodeModificationRequest-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-PDCPChangeIndication CRITICALITY ignore TYPE PDCPChangeIndication PRESENCE optional }| + { ID id-selectedPLMN CRITICALITY ignore TYPE PLMN-Identity PRESENCE optional }| + { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }| + { ID id-SCGConfigurationQuery CRITICALITY ignore TYPE SCGConfigurationQuery PRESENCE optional }| + { ID id-UEContextInfo-SNModRequest CRITICALITY reject TYPE UEContextInfo-SNModRequest PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }| + { ID id-MN-to-SN-Container CRITICALITY ignore TYPE MN-to-SN-Container PRESENCE optional }| + { ID id-requestedSplitSRB CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }| + { ID id-requestedSplitSRBrelease CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }, + ... +} + +UEContextInfo-SNModRequest ::= SEQUENCE { + ueSecurityCapabilities UESecurityCapabilities OPTIONAL, + s-ng-RANnode-SecurityKey S-NG-RANnode-SecurityKey OPTIONAL, + indexToRatFrequencySelectionPriority RFSP-Index OPTIONAL, + lowerLayerPresenceStatusChange LowerLayerPresenceStatusChange OPTIONAL, + bearerConfigToBeAdded PDUSessionsToBeAdded-SNModRequest-List OPTIONAL, + bearerConfigToBeModified PDUSessionsToBeModified-SNModRequest-List OPTIONAL, + bearerConfigToBeReleased PDUSessionsToBeReleased-SNModRequest-List OPTIONAL, + iE-Extension ProtocolExtensionContainer { {UEContextInfo-SNModRequest-ExtIEs} } OPTIONAL, + ... +} + +UEContextInfo-SNModRequest-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionsToBeAdded-SNModRequest-List ::= SEQUENCE (SIZE(maxnoofPDUSessions)) OF PDUSessionsToBeAdded-SNModRequest-Item + +PDUSessionsToBeAdded-SNModRequest-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + s-NSSAI S-NSSAI, + sN-PDUSessionAMBR PDUSessionAggregateMaximumBitRate OPTIONAL, + bearerConfigToBeAdded BearerConfigToBeAdded-SNModRequest, + iE-Extension ProtocolExtensionContainer { {PDUSessionsToBeAdded-SNModRequest-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionsToBeAdded-SNModRequest-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeAdded-SNModRequest ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigToBeAdded-SNModRequest-Item + +BearerConfigToBeAdded-SNModRequest-Item ::= CHOICE { + sn-terminated PDUSessionResourceSetupInfo-SNterminated, + mn-terminated PDUSessionResourceSetupInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigToBeAdded-SNModRequest-Item-ExtIEs} } +} + +BearerConfigToBeAdded-SNModRequest-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +PDUSessionsToBeModified-SNModRequest-List ::= SEQUENCE (SIZE(maxnoofPDUSessions)) OF PDUSessionsToBeModified-SNModRequest-Item + +PDUSessionsToBeModified-SNModRequest-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + sN-PDUSessionAMBR PDUSessionAggregateMaximumBitRate OPTIONAL, + bearerConfigToBeModified BearerConfigToBeModified-SNModRequest, + iE-Extension ProtocolExtensionContainer { {PDUSessionsToBeModified-SNModRequest-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionsToBeModified-SNModRequest-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeModified-SNModRequest ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigToBeModified-SNModRequest-Item + +BearerConfigToBeModified-SNModRequest-Item ::= CHOICE { + sn-terminated PDUSessionResourceModificationInfo-SNterminated, + mn-terminated PDUSessionResourceModificationInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigToBeModified-SNModRequest-Item-ExtIEs} } +} + +BearerConfigToBeModified-SNModRequest-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +PDUSessionsToBeReleased-SNModRequest-List ::= SEQUENCE { + sn-terminated OCTET STRING OPTIONAL, -- This IE needs to be refined + mn-terminated OCTET STRING OPTIONAL, -- This IE needs to be refined + iE-Extension ProtocolExtensionContainer { {PDUSessionsToBeReleased-SNModRequest-List-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionsToBeReleased-SNModRequest-List-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } @@ -472,7 +821,6 @@ SNodeModificationRequest-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeModificationRequestAcknowledge ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeModificationRequestAcknowledge-IEs}}, @@ -480,8 +828,102 @@ SNodeModificationRequestAcknowledge ::= SEQUENCE { } SNodeModificationRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSessionAdmitted-SNModResponse CRITICALITY ignore TYPE PDUSessionAdmitted-SNModResponse PRESENCE optional }| + { ID id-PDUSessionNotAdmitted-SNModResponse CRITICALITY ignore TYPE PDUSessionNotAdmitted-SNModResponse PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-SN-to-MN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }| + { ID id-SN-to-MN-Container CRITICALITY ignore TYPE SN-to-MN-Container PRESENCE optional }| + { ID id-admittedSplitSRB CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }| + { ID id-admittedSplitSRBrelease CRITICALITY ignore TYPE SplitSRBsTypes PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } +PDUSessionAdmitted-SNModResponse ::= SEQUENCE { + pduSessionResourcesAdmittedToBeAdded PDUSessionAdmittedToBeAddedSNModResponse OPTIONAL, + pduSessionResourcesAdmittedToBeModified PDUSessionAdmittedToBeModifiedSNModResponse OPTIONAL, + pduSessionResourcesAdmittedToBeReleased PDUSessionAdmittedToBeReleasedSNModResponse OPTIONAL, + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmitted-SNModResponse-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmitted-SNModResponse-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionAdmittedToBeAddedSNModResponse ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionAdmittedToBeAddedSNModResponse-Item +PDUSessionAdmittedToBeAddedSNModResponse-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigs BearerConfigToBeAdded-SNModResponse-List, + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedToBeAddedSNModResponse-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmittedToBeAddedSNModResponse-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeAdded-SNModResponse-List ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigToBeAdded-SNModResponse-Item + +BearerConfigToBeAdded-SNModResponse-Item ::= CHOICE { + sn-terminated PDUSessionResourceSetupResponseInfo-SNterminated, + mn-terminated PDUSessionResourceSetupResponseInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigToBeAdded-SNModResponse-Item-ExtIEs} } +} + +BearerConfigToBeAdded-SNModResponse-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +PDUSessionAdmittedToBeModifiedSNModResponse::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionAdmittedToBeModifiedSNModResponse-Item +PDUSessionAdmittedToBeModifiedSNModResponse-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigs BearerConfigToBeModified-SNModResponse-List, + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedToBeModifiedSNModResponse-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmittedToBeModifiedSNModResponse-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeModified-SNModResponse-List ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF + BearerConfigToBeModified-SNModResponse-Item + +BearerConfigToBeModified-SNModResponse-Item ::= CHOICE { + sn-terminated PDUSessionResourceModificationResponseInfo-SNterminated, + mn-terminated PDUSessionResourceModificationResponseInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigToBeModified-SNModResponse-Item-ExtIEs} } +} + +BearerConfigToBeModified-SNModResponse-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +PDUSessionAdmittedToBeReleasedSNModResponse ::= SEQUENCE { + sn-terminated OCTET STRING OPTIONAL,-- This IE may need to be refined + mn-terminated OCTET STRING OPTIONAL,-- This IE may need to be refined + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedToBeReleasedSNModResponse-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmittedToBeReleasedSNModResponse-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionNotAdmitted-SNModResponse ::= SEQUENCE { + pduSessionResourcesNotAdmitted-SNterminated PDUSessionResourcesNotAdmitted-List OPTIONAL, + pduSessionResourcesNotAdmitted-MNterminated PDUSessionResourcesNotAdmitted-List OPTIONAL, + iE-Extension ProtocolExtensionContainer { {PDUSessionNotAdmitted-SNModResponse-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionNotAdmitted-SNModResponse-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- @@ -489,7 +931,6 @@ SNodeModificationRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeModificationRequestReject ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeModificationRequestReject-IEs}}, @@ -497,6 +938,10 @@ SNodeModificationRequestReject ::= SEQUENCE { } SNodeModificationRequestReject-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -506,7 +951,6 @@ SNodeModificationRequestReject-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeModificationRequired ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeModificationRequired-IEs}}, @@ -514,6 +958,51 @@ SNodeModificationRequired ::= SEQUENCE { } SNodeModificationRequired-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-PDCPChangeIndication CRITICALITY ignore TYPE PDCPChangeIndication PRESENCE optional }| + { ID id-PDUSessionToBeModifiedSNModRequired CRITICALITY ignore TYPE PDUSessionToBeModifiedSNModRequired PRESENCE optional }| + { ID id-PDUSessionToBeReleasedSNModRequired CRITICALITY ignore TYPE PDUSessionToBeReleasedSNModRequired PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-SN-to-MN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }, + { ID id-SN-to-MN-Container CRITICALITY ignore TYPE SN-to-MN-Container PRESENCE optional }, + ... +} +PDUSessionToBeModifiedSNModRequired::= SEQUENCE (SIZE (1.. maxnoofPDUSessions)) OF PDUSessionToBeModifiedSNModRequired-Item + +PDUSessionToBeModifiedSNModRequired-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigurations BearerConfigToBeModifiedSNModRequired-List, + iE-Extension ProtocolExtensionContainer { {PDUSessionToBeModifiedSNModRequired-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionToBeModifiedSNModRequired-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeModifiedSNModRequired-List::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF + BearerConfigToBeModifiedSNModRequired-Item + +BearerConfigToBeModifiedSNModRequired-Item ::= CHOICE { + sn-terminated PDUSessionResourceModRqdInfo-SNterminated, + mn-terminated PDUSessionResourceModRqdInfo-SNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigToBeModifiedSNModRequired-Item-ExtIEs} } +} + +BearerConfigToBeModifiedSNModRequired-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +PDUSessionToBeReleasedSNModRequired ::= SEQUENCE { + sn-terminated PDUSession-List-withDataForwardingRequest OPTIONAL, + mn-terminated PDUSession-List-withCause OPTIONAL, + iE-Extension ProtocolExtensionContainer { {PDUSessionToBeReleasedSNModRequired-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionToBeReleasedSNModRequired-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } @@ -523,7 +1012,6 @@ SNodeModificationRequired-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeModificationConfirm ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeModificationConfirm-IEs}}, @@ -531,16 +1019,61 @@ SNodeModificationConfirm ::= SEQUENCE { } SNodeModificationConfirm-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSessionAdmittedModSNModConfirm CRITICALITY ignore TYPE PDUSessionAdmittedModSNModConfirm PRESENCE optional }| + { ID id-PDUSessionReleasedSNModConfirm CRITICALITY ignore TYPE PDUSessionReleasedSNModConfirm PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }| + { ID id-MN-to-SN-Container CRITICALITY ignore TYPE MN-to-SN-Container PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } +PDUSessionAdmittedModSNModConfirm ::= SEQUENCE (SIZE(maxnoofPDUSessions)) OF PDUSessionAdmittedModSNModConfirm-Item + +PDUSessionAdmittedModSNModConfirm-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigurations BearerConfigAdmittedModSNModConfirm, + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedModSNModConfirm-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmittedModSNModConfirm-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigAdmittedModSNModConfirm ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigAdmittedModSNModConfirm-Item + +BearerConfigAdmittedModSNModConfirm-Item ::= CHOICE { + sn-terminated PDUSessionResourceModConfirmInfo-SNterminated, + mn-terminated PDUSessionResourceModConfirmInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { {BearerConfigAdmittedModSNModConfirm-Item-Item-ExtIEs} } +} + +BearerConfigAdmittedModSNModConfirm-Item-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + + + +PDUSessionReleasedSNModConfirm ::= SEQUENCE { + sn-terminated PDUSession-List-withDataForwardingFromTarget OPTIONAL, + mn-terminated PDUSession-List OPTIONAL, + iE-Extension ProtocolExtensionContainer { {PDUSessionAdmittedToBeReleasedSNModConfirm-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAdmittedToBeReleasedSNModConfirm-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- -- S-NODE MODIFICATION REFUSE -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeModificationRefuse ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeModificationRefuse-IEs}}, @@ -548,6 +1081,12 @@ SNodeModificationRefuse ::= SEQUENCE { } SNodeModificationRefuse-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| +-- WS modification: define a dedicated type +-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }| + { ID id-MN-to-SN-Container CRITICALITY ignore TYPE MN-to-SN-Container PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -557,15 +1096,27 @@ SNodeModificationRefuse-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeReleaseRequest ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeReleaseRequest-IEs}}, ... } +-- WS modification: define a dedicated type +PDUSessionToBeReleased-RelReq ::= OCTET STRING + SNodeReleaseRequest-IEs XNAP-PROTOCOL-IES ::= { - ... + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| +-- WS modification: define a dedicated type + { ID id-PDUSessionToBeReleased-RelReq CRITICALITY ignore TYPE OCTET STRING PRESENCE mandatory}| +-- { ID id-PDUSessionToBeReleased-RelReq CRITICALITY ignore TYPE PDUSessionToBeReleased-RelReq PRESENCE mandatory}| +-- Editor's Note: This IE needs to be refined -- + { ID id-UEContextKeptIndicator CRITICALITY ignore TYPE UEContextKeptIndicator PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MN-to-SN-Container CRITICALITY ignore TYPE OCTET STRING PRESENCE optional }, + { ID id-MN-to-SN-Container CRITICALITY ignore TYPE MN-to-SN-Container PRESENCE optional }, ... } -- ************************************************************** @@ -574,7 +1125,6 @@ SNodeReleaseRequest-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeReleaseRequestAcknowledge ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeReleaseRequestAcknowledge-IEs}}, @@ -582,6 +1132,9 @@ SNodeReleaseRequestAcknowledge ::= SEQUENCE { } SNodeReleaseRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -591,7 +1144,6 @@ SNodeReleaseRequestAcknowledge-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeReleaseReject ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeReleaseReject-IEs}}, @@ -599,6 +1151,10 @@ SNodeReleaseReject ::= SEQUENCE { } SNodeReleaseReject-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -608,7 +1164,6 @@ SNodeReleaseReject-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeReleaseRequired ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeReleaseRequired-IEs}}, @@ -616,16 +1171,30 @@ SNodeReleaseRequired ::= SEQUENCE { } SNodeReleaseRequired-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSessionToBeReleasedList-RelRqd CRITICALITY ignore TYPE PDUSessionToBeReleasedList-RelRqd PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}, ... } +PDUSessionToBeReleasedList-RelRqd ::= SEQUENCE { + pduSessionsToBeReleasedList-SNterminated PDUSession-List-withDataForwardingRequest OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionToBeReleasedList-RelRqd-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionToBeReleasedList-RelRqd-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- -- S-NODE RELEASE CONFIRM -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeReleaseConfirm ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeReleaseConfirm-IEs}}, @@ -633,9 +1202,24 @@ SNodeReleaseConfirm ::= SEQUENCE { } SNodeReleaseConfirm-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSessionReleasedList-RelConf CRITICALITY ignore TYPE PDUSessionReleasedList-RelConf PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } +PDUSessionReleasedList-RelConf ::= SEQUENCE { + pduSessionsReleasedList-SNterminated PDUSession-List-withDataForwardingFromTarget OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionReleasedList-RelConf-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionReleasedList-RelConf-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- -- S-NODE COUNTER CHECK REQUEST @@ -643,7 +1227,6 @@ SNodeReleaseConfirm-IEs XNAP-PROTOCOL-IES ::= { -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeCounterCheckRequest ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeCounterCheckRequest-IEs}}, @@ -651,16 +1234,33 @@ SNodeCounterCheckRequest ::= SEQUENCE { } SNodeCounterCheckRequest-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-BearersSubjectToCounterCheck CRITICALITY ignore TYPE BearersSubjectToCounterCheck-List PRESENCE mandatory}, ... } +BearersSubjectToCounterCheck-List ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF BearersSubjectToCounterCheck-Item + +BearersSubjectToCounterCheck-Item ::= SEQUENCE { + drb-ID DRB-ID, + ul-count INTEGER (0.. 4294967295), + dl-count INTEGER (0.. 4294967295), + iE-Extensions ProtocolExtensionContainer { {BearersSubjectToCounterCheck-Item-ExtIEs} } OPTIONAL, + ... +} + +BearersSubjectToCounterCheck-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- -- S-NODE CHANGE REQUIRED -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeChangeRequired ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeChangeRequired-IEs}}, @@ -668,16 +1268,49 @@ SNodeChangeRequired ::= SEQUENCE { } SNodeChangeRequired-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-target-S-NG-RANnodeID CRITICALITY reject TYPE GlobalNG-RANNode-ID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-PDUSession-SNChangeRequired-List CRITICALITY ignore TYPE PDUSession-SNChangeRequired-List PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-SN-to-MN-Container CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory}, + { ID id-SN-to-MN-Container CRITICALITY reject TYPE SN-to-MN-Container PRESENCE mandatory}, ... } +PDUSession-SNChangeRequired-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSession-SNChangeRequired-Item + +PDUSession-SNChangeRequired-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigToBeAdded BearerConfigToBeAdded-ChangeRqd, + iE-Extension ProtocolExtensionContainer { {PDUSession-SNChangeRequired-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSession-SNChangeRequired-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfigToBeAdded-ChangeRqd ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfigToBeAdded-ChangeRqd-Item + +BearerConfigToBeAdded-ChangeRqd-Item ::= CHOICE { + sn-terminated PDUSessionResourceChangeRequiredInfo-SNterminated, + mn-terminated PDUSessionResourceChangeRequiredInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { { BearerConfigToBeAdded-ChangeRqd-Item-ExtIEs} } +} + +BearerConfigToBeAdded-ChangeRqd-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + + -- ************************************************************** -- -- S-NODE CHANGE CONFIRM -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. SNodeChangeConfirm ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ SNodeChangeConfirm-IEs}}, @@ -685,8 +1318,37 @@ SNodeChangeConfirm ::= SEQUENCE { } SNodeChangeConfirm-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSession-SNChangeConfirm-List CRITICALITY ignore TYPE PDUSession-SNChangeConfirm-List PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } +PDUSession-SNChangeConfirm-List ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSession-SNChangeConfirm-Item + +PDUSession-SNChangeConfirm-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + bearerConfigToBeAdded BearerConfig-ChangeConfirm, + iE-Extension ProtocolExtensionContainer { {PDUSession-SNChangeConfirm-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSession-SNChangeConfirm-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +BearerConfig-ChangeConfirm ::= SEQUENCE (SIZE(1..maxnoofBearerConfigs)) OF BearerConfig-ChangeConfirm-Item + +BearerConfig-ChangeConfirm-Item ::= CHOICE { + sn-terminated PDUSessionResourceChangeConfirmInfo-SNterminated, + mn-terminated PDUSessionResourceChangeConfirmInfo-MNterminated, + choice-extension ProtocolIE-Single-Container { { BearerConfig-ChangeConfirm-Item-ExtIEs} } +} + +BearerConfig-ChangeConfirm-Item-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + -- ************************************************************** -- @@ -702,6 +1364,10 @@ SNodeChangeRefuse ::= SEQUENCE { } SNodeChangeRefuse-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -711,7 +1377,6 @@ SNodeChangeRefuse-IEs XNAP-PROTOCOL-IES ::= { -- -- ************************************************************** -- Editor’s Note: Dual Connectivity is not complete and is targeted for completion in December 2018. --- ASN.1 for this message is FFS. RRCTransfer ::= SEQUENCE { protocolIEs ProtocolIE-Container {{ RRCTransfer-IEs}}, @@ -719,6 +1384,110 @@ RRCTransfer ::= SEQUENCE { } RRCTransfer-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-SplitSRB-RRCTransfer CRITICALITY reject TYPE SplitSRB-RRCTransfer PRESENCE optional }| + { ID id-NRUEMeasurementReportRRCTransfer CRITICALITY reject TYPE NRUEMeasurementReportRRCTransfer PRESENCE optional }, + ... +} + +SplitSRB-RRCTransfer ::= SEQUENCE { + rrcContainer OCTET STRING OPTIONAL, + srbType ENUMERATED {srb1, srb2, ...}, + deliveryStatus DeliveryStatus OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SplitSRB-RRCTransfer-ExtIEs} } OPTIONAL, + ... +} + +SplitSRB-RRCTransfer-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +NRUEMeasurementReportRRCTransfer::= SEQUENCE { + rrcContainer OCTET STRING, + iE-Extensions ProtocolExtensionContainer { {NRUEMeasurementReportRRCTransfer-ExtIEs} } OPTIONAL, + ... +} + +NRUEMeasurementReportRRCTransfer-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- NOTIFICATION CONTROL INDICATION +-- +-- ************************************************************** + +NotificationControlIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{NotificationControlIndication-IEs}}, + ... +} + +NotificationControlIndication-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY reject TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-PDUSessionResourcesNotifyList CRITICALITY reject TYPE PDUSessionResourcesNotifyList PRESENCE optional }, + ... +} + +PDUSessionResourcesNotifyList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourcesNotify-Item + +PDUSessionResourcesNotify-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + qosFlowsNotificationContrIndInfo QoSFlowNotificationControlIndicationInfo, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourcesNotify-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourcesNotify-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- ************************************************************** +-- +-- ACTIVITY NOTIFICATION +-- +-- ************************************************************** + +ActivityNotification ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ActivityNotification-IEs}}, + ... +} + +ActivityNotification-IEs XNAP-PROTOCOL-IES ::= { + { ID id-M-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-S-NG-RANnodeUEXnAPID CRITICALITY ignore TYPE NG-RANnodeUEXnAPID PRESENCE mandatory}| + { ID id-UserPlaneTrafficActivityReport CRITICALITY ignore TYPE UserPlaneTrafficActivityReport PRESENCE optional }| + { ID id-PDUSessionResourcesActivityNotifyList CRITICALITY ignore TYPE PDUSessionResourcesActivityNotifyList PRESENCE optional }, + ... +} + +PDUSessionResourcesActivityNotifyList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourcesActivityNotify-Item + +PDUSessionResourcesActivityNotify-Item ::= SEQUENCE { + pduSessionId PDUSession-ID, + pduSessionLevelUPactivityreport UserPlaneTrafficActivityReport OPTIONAL, + qosFlowsActivityNotifyList QoSFlowsActivityNotifyList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourcesActivityNotify-Item-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourcesActivityNotify-Item-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsActivityNotifyList ::= SEQUENCE (SIZE(1..maxnoofQoSFlows)) OF QoSFlowsActivityNotifyItem + +QoSFlowsActivityNotifyItem ::= SEQUENCE { + qosFlowIndicator QoSFlowIndicator, + pduSessionLevelUPactivityreport UserPlaneTrafficActivityReport, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsActivityNotifyItem-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsActivityNotifyItem-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { ... } @@ -775,6 +1544,7 @@ XnSetupFailure ::= SEQUENCE { XnSetupFailure-IEs XNAP-PROTOCOL-IES ::= { { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -799,11 +1569,10 @@ NGRANNodeConfigurationUpdate-IEs XNAP-PROTOCOL-IES ::= { ConfigurationUpdateInitiatingNodeChoice ::= CHOICE { gNB ProtocolIE-Container { {ConfigurationUpdate-gNB} }, ng-eNB ProtocolIE-Container { {ConfigurationUpdate-ng-eNB} }, - choice-extension ProtocolExtensionContainer { {ServedCellsToUpdateInitiatingNodeChoice-ExtIEs} }, - -- This IE may need to be refined -- ... + choice-extension ProtocolIE-Single-Container { {ServedCellsToUpdateInitiatingNodeChoice-ExtIEs} } } -ServedCellsToUpdateInitiatingNodeChoice-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +ServedCellsToUpdateInitiatingNodeChoice-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -841,11 +1610,10 @@ NGRANNodeConfigurationUpdateAcknowledge-IEs XNAP-PROTOCOL-IES ::= { RespondingNodeTypeConfigUpdateAck ::= CHOICE { ng-eNB RespondingNodeTypeConfigUpdateAck-ng-eNB, gNB RespondingNodeTypeConfigUpdateAck-gNB, - choice-extension ProtocolExtensionContainer { {RespondingNodeTypeConfigUpdateAck-ExtIEs} }, -- This IE may need to be refined -- - ... + choice-extension ProtocolIE-Single-Container { {RespondingNodeTypeConfigUpdateAck-ExtIEs} } } -RespondingNodeTypeConfigUpdateAck-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +RespondingNodeTypeConfigUpdateAck-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -877,16 +1645,123 @@ RespondingNodeTypeConfigUpdateAck-gNB-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { -- ************************************************************** NGRANNodeConfigurationUpdateFailure ::= SEQUENCE { - protocolIEs ProtocolIE-Container {{ NGRANNodeConfigurationUpdateFailure-IEs}}, + protocolIEs ProtocolIE-Container {{NGRANNodeConfigurationUpdateFailure-IEs}}, ... } NGRANNodeConfigurationUpdateFailure-IEs XNAP-PROTOCOL-IES ::= { { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } + +-- ************************************************************** +-- +-- E-UTRA NR CELL RESOURCE COORDINATION REQUEST +-- +-- ************************************************************** + +E-UTRA-NR-CellResourceCoordinationRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{E-UTRA-NR-CellResourceCoordinationRequest-IEs}}, + ... +} + +E-UTRA-NR-CellResourceCoordinationRequest-IEs XNAP-PROTOCOL-IES ::= { +{ ID id-initiatingNodeType-ResourceCoordRequest CRITICALITY reject TYPE InitiatingNodeType-ResourceCoordRequest PRESENCE mandatory}, + ... +} + +InitiatingNodeType-ResourceCoordRequest ::= CHOICE { + ng-eNB ResourceCoordRequest-ng-eNB-initiated, + gNB ResourceCoordRequest-gNB-initiated, + choice-extension ProtocolIE-Single-Container { {InitiatingNodeType-ResourceCoordRequest-ExtIEs} } +} + +InitiatingNodeType-ResourceCoordRequest-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +ResourceCoordRequest-ng-eNB-initiated ::= SEQUENCE { + dataTrafficResourceIndication DataTrafficResourceIndication, + spectrumSharingGroupID SpectrumSharingGroupID, + listofE-UTRACells SEQUENCE (SIZE(1.. maxnoofCellsinNG-RANnode)) OF E-UTRA-CGI OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ResourceCoordRequest-ng-eNB-initiated-ExtIEs} } OPTIONAL, + ... +} + +ResourceCoordRequest-ng-eNB-initiated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +ResourceCoordRequest-gNB-initiated ::= SEQUENCE { + dataTrafficResourceIndication DataTrafficResourceIndication, + listofE-UTRACells SEQUENCE (SIZE(1.. maxnoofCellsinNG-RANnode)) OF E-UTRA-CGI OPTIONAL, + spectrumSharingGroupID SpectrumSharingGroupID, + listofNRCells SEQUENCE (SIZE(1.. maxnoofCellsinNG-RANnode)) OF NR-CGI OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ResourceCoordRequest-gNB-initiated-ExtIEs} } OPTIONAL, + ... +} + +ResourceCoordRequest-gNB-initiated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- ************************************************************** +-- +-- E-UTRA NR CELL RESOURCE COORDINATION RESPONSE +-- +-- ************************************************************** + +E-UTRA-NR-CellResourceCoordinationResponse::= SEQUENCE { + protocolIEs ProtocolIE-Container {{E-UTRA-NR-CellResourceCoordinationResponse-IEs}}, + ... +} + +E-UTRA-NR-CellResourceCoordinationResponse-IEs XNAP-PROTOCOL-IES ::= { +{ ID id-respondingNodeType-ResourceCoordResponse CRITICALITY reject TYPE RespondingNodeType-ResourceCoordResponse PRESENCE mandatory}, + ... +} + +RespondingNodeType-ResourceCoordResponse ::= CHOICE { + ng-eNB ResourceCoordResponse-ng-eNB-initiated, + gNB ResourceCoordResponse-gNB-initiated, + choice-extension ProtocolIE-Single-Container { {RespondingNodeType-ResourceCoordResponse-ExtIEs} } +} + +RespondingNodeType-ResourceCoordResponse-ExtIEs XNAP-PROTOCOL-IES ::= { + ... +} + +ResourceCoordResponse-ng-eNB-initiated ::= SEQUENCE { + dataTrafficResourceIndication DataTrafficResourceIndication, + spectrumSharingGroupID SpectrumSharingGroupID, + listofE-UTRACells SEQUENCE (SIZE(1.. maxnoofCellsinNG-RANnode)) OF E-UTRA-CGI OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ResourceCoordResponse-ng-eNB-initiated-ExtIEs} } OPTIONAL, + ... +} + +ResourceCoordResponse-ng-eNB-initiated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + +ResourceCoordResponse-gNB-initiated ::= SEQUENCE { + dataTrafficResourceIndication DataTrafficResourceIndication, + spectrumSharingGroupID SpectrumSharingGroupID, + listofNRCells SEQUENCE (SIZE(1.. maxnoofCellsinNG-RANnode)) OF NR-CGI OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ResourceCoordResponse-gNB-initiated-ExtIEs} } OPTIONAL, + ... +} + +ResourceCoordResponse-gNB-initiated-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { + ... +} + + -- ************************************************************** -- -- XN REMOVAL REQUEST @@ -933,6 +1808,7 @@ XnRemovalFailure ::= SEQUENCE { } XnRemovalFailure-IEs XNAP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory}| { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, ... } @@ -955,13 +1831,12 @@ CellActivationRequest-IEs XNAP-PROTOCOL-IES ::= { } ServedCellsToActivate ::= CHOICE { - nr-cells SEQUENCE (SIZE(1..maxnoofCellsinNGRANnode)) OF NR-CGI, - e-utra-cells SEQUENCE (SIZE(1..maxnoofCellsinNGRANnode)) OF E-UTRA-CGI, - choice-extension ProtocolExtensionContainer { {ServedCellsToActivate-ExtIEs} }, -- This IE may need to be refined -- - ... + nr-cells SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF NR-CGI, + e-utra-cells SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF E-UTRA-CGI, + choice-extension ProtocolIE-Single-Container { {ServedCellsToActivate-ExtIEs} } } -ServedCellsToActivate-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +ServedCellsToActivate-ExtIEs XNAP-PROTOCOL-IES ::= { ... } @@ -985,13 +1860,12 @@ CellActivationResponse-IEs XNAP-PROTOCOL-IES ::= { } ActivatedServedCells ::= CHOICE { - nr-cells SEQUENCE (SIZE(1..maxnoofCellsinNGRANnode)) OF NR-CGI, - e-utra-cells SEQUENCE (SIZE(1..maxnoofCellsinNGRANnode)) OF E-UTRA-CGI, - choice-extension ProtocolExtensionContainer { {ActivatedServedCells-ExtIEs} }, -- This IE may need to be refined – - ... + nr-cells SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF NR-CGI, + e-utra-cells SEQUENCE (SIZE(1..maxnoofCellsinNG-RANnode)) OF E-UTRA-CGI, + choice-extension ProtocolIE-Single-Container { {ActivatedServedCells-ExtIEs} } } -ActivatedServedCells-ExtIEs XNAP-PROTOCOL-EXTENSION ::= { +ActivatedServedCells-ExtIEs XNAP-PROTOCOL-IES ::= { ... } diff --git a/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn b/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn index 85e632036c..0108adcadf 100644 --- a/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn +++ b/epan/dissectors/asn1/xnap/XnAP-PDU-Descriptions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 38.423 V15.0.0 (2018-06) +-- 3GPP TS 38.423 V15.1.0 (2018-09) -- 9.3.3 Elementary Procedure Definitions -- ************************************************************** -- @@ -7,10 +7,10 @@ -- ************************************************************** XnAP-PDU-Descriptions { -itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) ngran-access (22) modules (3) xnap (2) version1 (1) xnap-PDU-Descriptions (0) } -DEFINITIONS AUTOMATIC TAGS ::= +DEFINITIONS AUTOMATIC TAGS ::= BEGIN @@ -32,6 +32,7 @@ FROM XnAP-CommonDataTypes SNStatusTransfer, UEContextRelease, HandoverCancel, + NotificationControlIndication, RANPaging, RetrieveUEContextRequest, RetrieveUEContextResponse, @@ -66,6 +67,9 @@ FROM XnAP-CommonDataTypes NGRANNodeConfigurationUpdate, NGRANNodeConfigurationUpdateAcknowledge, NGRANNodeConfigurationUpdateFailure, + E-UTRA-NR-CellResourceCoordinationRequest, + E-UTRA-NR-CellResourceCoordinationResponse, + ActivityNotification, CellActivationRequest, CellActivationResponse, CellActivationFailure, @@ -79,6 +83,7 @@ FROM XnAP-PDU-Contents id-handoverPreparation, id-sNStatusTransfer, id-handoverCancel, + id-notificationControl, id-retrieveUEContext, id-rANPaging, id-dataForwardingAddressIndication, @@ -91,10 +96,12 @@ FROM XnAP-PDU-Contents id-sNGRANnodeinitiatedSNGRANnodeRelease, id-sNGRANnodeCounterCheck, id-sNGRANnodeChange, + id-activityNotification, id-rRCTransfer, id-xnRemoval, id-xnSetup, id-nGRANnodeConfigurationUpdate, + id-e-UTRA-NR-CellResourceCoordination, id-cellActivation, id-reset, id-errorIndication, @@ -178,6 +185,7 @@ XNAP-ELEMENTARY-PROCEDURES-CLASS-1 XNAP-ELEMENTARY-PROCEDURE ::= { xnRemoval | xnSetup | nGRANnodeConfigurationUpdate | + e-UTRA-NR-CellResourceCoordination | cellActivation | reset , ... @@ -193,8 +201,10 @@ XNAP-ELEMENTARY-PROCEDURES-CLASS-2 XNAP-ELEMENTARY-PROCEDURE ::= { sNGRANnodeCounterCheck | rRCTransfer | errorIndication | - privateMessage , -... + privateMessage | + notificationControl | + activityNotification , + ... } @@ -358,6 +368,14 @@ nGRANnodeConfigurationUpdate XNAP-ELEMENTARY-PROCEDURE ::= { } +e-UTRA-NR-CellResourceCoordination XNAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE E-UTRA-NR-CellResourceCoordinationRequest + SUCCESSFUL OUTCOME E-UTRA-NR-CellResourceCoordinationResponse + PROCEDURE CODE id-e-UTRA-NR-CellResourceCoordination + CRITICALITY reject +} + + cellActivation XNAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE CellActivationRequest SUCCESSFUL OUTCOME CellActivationResponse @@ -381,6 +399,21 @@ errorIndication XNAP-ELEMENTARY-PROCEDURE ::= { CRITICALITY ignore } + +notificationControl XNAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE NotificationControlIndication + PROCEDURE CODE id-notificationControl + CRITICALITY ignore +} + + +activityNotification XNAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ActivityNotification + PROCEDURE CODE id-activityNotification + CRITICALITY ignore +} + + privateMessage XNAP-ELEMENTARY-PROCEDURE ::= { INITIATING MESSAGE PrivateMessage PROCEDURE CODE id-privateMessage diff --git a/epan/dissectors/asn1/xnap/packet-xnap-template.c b/epan/dissectors/asn1/xnap/packet-xnap-template.c index b432ef6c74..1aca729e2c 100644 --- a/epan/dissectors/asn1/xnap/packet-xnap-template.c +++ b/epan/dissectors/asn1/xnap/packet-xnap-template.c @@ -10,7 +10,7 @@ * SPDX-License-Identifier: GPL-2.0-or-later * * Ref: - * 3GPP TS 38.423 V15.0.0 (2018-06) + * 3GPP TS 38.423 V15.1.0 (2018-09) */ #include "config.h" @@ -62,6 +62,7 @@ static gint ett_xnap_e_utra_EncyptionAlgorithms = -1; static gint ett_xnap_e_utra_IntegrityProtectionAlgorithms = -1; static gint ett_xnap_ng_ran_TraceID = -1; static gint ett_xnap_interfaces_to_trace = -1; +static gint ett_xnap_LastVisitedEUTRANCellInformation = -1; #include "packet-xnap-ett.c" enum { @@ -102,7 +103,13 @@ static dissector_handle_t xnap_handle; static void xnap_PacketLossRate_fmt(gchar *s, guint32 v) { - g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v); + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v); +} + +static void +xnap_PacketDelayBudget_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v); } typedef enum { @@ -113,8 +120,10 @@ typedef enum { struct xnap_conv_info { address addr_a; + guint32 port_a; GlobalNG_RANNode_ID_enum ranmode_id_a; address addr_b; + guint32 port_b; GlobalNG_RANNode_ID_enum ranmode_id_b; }; @@ -137,6 +146,22 @@ xnap_get_private_data(packet_info *pinfo) return xnap_data; } +static GlobalNG_RANNode_ID_enum +xnap_get_ranmode_id(address *addr, guint32 port, packet_info *pinfo) +{ + struct xnap_private_data *xnap_data = xnap_get_private_data(pinfo); + GlobalNG_RANNode_ID_enum ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + + if (xnap_data->xnap_conv) { + if (addresses_equal(addr, &xnap_data->xnap_conv->addr_a) && port == xnap_data->xnap_conv->port_a) { + ranmode_id = xnap_data->xnap_conv->ranmode_id_a; + } else if (addresses_equal(addr, &xnap_data->xnap_conv->addr_b) && port == xnap_data->xnap_conv->port_b) { + ranmode_id = xnap_data->xnap_conv->ranmode_id_b; + } + } + return ranmode_id; +} + #include "packet-xnap-fn.c" static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) @@ -195,8 +220,10 @@ dissect_xnap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) if (!xnap_data->xnap_conv) { xnap_data->xnap_conv = wmem_new0(wmem_file_scope(), struct xnap_conv_info); copy_address_wmem(wmem_file_scope(), &xnap_data->xnap_conv->addr_a, &pinfo->src); + xnap_data->xnap_conv->port_a = pinfo->srcport; xnap_data->xnap_conv->ranmode_id_a = (GlobalNG_RANNode_ID_enum)-1; copy_address_wmem(wmem_file_scope(), &xnap_data->xnap_conv->addr_b, &pinfo->dst); + xnap_data->xnap_conv->port_b = pinfo->destport; xnap_data->xnap_conv->ranmode_id_b = (GlobalNG_RANNode_ID_enum)-1; conversation_add_proto_data(conversation, proto_xnap, xnap_data->xnap_conv); } @@ -242,6 +269,7 @@ void proto_register_xnap(void) { &ett_xnap_e_utra_IntegrityProtectionAlgorithms, &ett_xnap_ng_ran_TraceID, &ett_xnap_interfaces_to_trace, + &ett_xnap_LastVisitedEUTRANCellInformation, #include "packet-xnap-ettarr.c" }; diff --git a/epan/dissectors/asn1/xnap/xnap.cnf b/epan/dissectors/asn1/xnap/xnap.cnf index 5344c70186..821a7fb90e 100644 --- a/epan/dissectors/asn1/xnap/xnap.cnf +++ b/epan/dissectors/asn1/xnap/xnap.cnf @@ -7,10 +7,6 @@ PER ALIGNED #.END -#.OMIT_ASSIGNMENT -# Get rid of unused code warnings -#.END - #.MAKE_ENUM GlobalNG-RANNode-ID TYPE_PREFIX ProtocolIE-ID @@ -43,19 +39,13 @@ SuccessfulOutcome/value successfulOutcome_value PrivateIE-Field/value privateIE_Field_value #.OMIT_ASSIGNMENT -DeliveryStatus -ListOfTAI +PDUSessionResourceModRqdInfo-MNterminated Presence ProtocolIE-FieldPair ProtocolIE-ContainerList ProtocolIE-ContainerPair ProtocolIE-ContainerPairList -RANAC-Item ReferenceID -RLCMode -S-NG-RANnode-SecurityKey -SCGConfigurationQuery -TAI-Item #.END #.FN_BODY ProtocolIE-ID VAL_PTR = &xnap_data->protocol_ie_id @@ -105,9 +95,11 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = %(DEFAULT_BODY)s if (xnap_data->xnap_conv && xnap_data->procedure_code == id_xnSetup) { - if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_a)) { + if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_a) && + actx->pinfo->srcport == xnap_data->xnap_conv->port_a) { xnap_data->xnap_conv->ranmode_id_a = (GlobalNG_RANNode_ID_enum)value; - } else if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_b)) { + } else if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_b) && + actx->pinfo->srcport == xnap_data->xnap_conv->port_b) { xnap_data->xnap_conv->ranmode_id_b = (GlobalNG_RANNode_ID_enum)value; } } @@ -117,17 +109,9 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = %(DEFAULT_BODY)s if (parameter_tvb) { - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); proto_tree *subtree; - GlobalNG_RANNode_ID_enum target_ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); - if (xnap_data->xnap_conv) { - if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_a)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_a; - } else if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_b)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_b; - } - } subtree = proto_item_add_subtree(actx->created_item, ett_xnap_RRC_Context); if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && target_ranmode_id == GlobalNG_RANNode_ID_gNB) || @@ -145,26 +129,118 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = %(DEFAULT_BODY)s if (parameter_tvb) { - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); proto_tree *subtree; - GlobalNG_RANNode_ID_enum target_ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo); - if (xnap_data->xnap_conv) { - if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_a)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_a; - } else if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_b)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_b; - } + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL); } + } + +#.FN_BODY MN-to-SN-Container VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + +%(DEFAULT_BODY)s + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && target_ranmode_id == GlobalNG_RANNode_ID_gNB) || (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { - dissect_nr_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL); } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { - dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + +#.FN_BODY SN-to-MN-Container VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + +%(DEFAULT_BODY)s + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_CG_Config_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_SCG_Config_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + +#.FN_BODY Configuration-successfully-applied/m-NG-RANNode-to-S-NG-RANNode-Container VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + +%(DEFAULT_BODY)s + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_RRCReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_RRCConnectionReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + +#.FN_BODY Configuration-rejected-by-M-NG-RANNode/m-NG-RANNode-to-S-NG-RANNode-Container VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + +%(DEFAULT_BODY)s + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + +#.FN_BODY NRUEMeasurementReportRRCTransfer/rrcContainer VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + +%(DEFAULT_BODY)s + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_MeasurementReport_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_MeasurementReport_PDU(parameter_tvb, actx->pinfo, subtree, NULL); } } @@ -173,17 +249,9 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC|BASE_EXT_STRING STRINGS = %(DEFAULT_BODY)s if (parameter_tvb) { - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); proto_tree *subtree; - GlobalNG_RANNode_ID_enum target_ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); - if (xnap_data->xnap_conv) { - if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_a)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_a; - } else if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_b)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_b; - } - } subtree = proto_item_add_subtree(actx->created_item, ett_xnap_RRC_Context); if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && target_ranmode_id == GlobalNG_RANNode_ID_gNB) && @@ -257,6 +325,15 @@ BitRate DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_bit_sec #.TYPE_ATTR PacketLossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(xnap_PacketLossRate_fmt) +#.TYPE_ATTR +PacketDelayBudget DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(xnap_PacketDelayBudget_fmt) + +#.TYPE_ATTR +AveragingWindow DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_milliseconds + +#.TYPE_ATTR +MaximumDataBurstVolume DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&units_byte_bytes + #.FN_BODY TransportLayerAddress VAL_PTR = ¶meter_tvb LEN_PTR = &len tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; @@ -376,6 +453,15 @@ PacketLossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(xnap_PacketLossRate_fmt) proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); } +#.FN_BODY LastVisitedEUTRANCellInformation VAL_PTR = ¶meter_tvb + tvbuff_t *parameter_tvb = NULL; + proto_tree *subtree; +%(DEFAULT_BODY)s + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_xnap_LastVisitedEUTRANCellInformation); + dissect_lte_rrc_VisitedCellInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + #.END #.FN_HDR HandoverRequest @@ -458,6 +544,10 @@ PacketLossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(xnap_PacketLossRate_fmt) col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdateAcknowledge"); #.FN_HDR NGRANNodeConfigurationUpdateFailure col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdateFailure"); +#.FN_HDR E-UTRA-NR-CellResourceCoordinationRequest + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-UTRA-NR-CellResourceCoordinationRequest"); +#.FN_HDR E-UTRA-NR-CellResourceCoordinationResponse + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-UTRA-NR-CellResourceCoordinationResponse"); #.FN_HDR CellActivationRequest col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationRequest"); #.FN_HDR CellActivationResponse @@ -470,6 +560,10 @@ PacketLossRate DISPLAY = BASE_CUSTOM STRINGS = CF_FUNC(xnap_PacketLossRate_fmt) col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetResponse"); #.FN_HDR ErrorIndication col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication"); +#.FN_HDR NotificationControlIndication + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NotificationControlIndication"); +#.FN_HDR ActivityNotification + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ActivityNotification"); #.FN_HDR PrivateMessage col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage"); @@ -498,203 +592,281 @@ id-cellActivation ProcedureCode id-reset ProcedureCode id-errorIndication ProcedureCode id-privateMessage ProcedureCode +id-notificationControl ProcedureCode +id-activityNotification ProcedureCode +id-e-UTRA-NR-CellResourceCoordination ProcedureCode + # ProtocolIE-ID -id-ActivatedServedCells ProtocolIE-ID -id-ActivationIDforCellActivation ProtocolIE-ID -id-AMF-Pool-Information ProtocolIE-ID -id-AreaOfInterest-Item ProtocolIE-ID -id-AssistanceDataForRANPaging ProtocolIE-ID -id-Cause ProtocolIE-ID -id-cellAssistanceInfo-NR ProtocolIE-ID -id-ConfigurationUpdateInitiatingNodeChoice ProtocolIE-ID -id-CriticalityDiagnostics ProtocolIE-ID -id-dataforwardingInfoperPDUSession ProtocolIE-ID -id-dataforwardingInfoperPDUSession-Item ProtocolIE-ID -id-DataForwardingResponseDRBItem ProtocolIE-ID -id-DRBsSubjectToStatusTransfer-Item ProtocolIE-ID -id-DRBsSubjectToStatusTransfer-List ProtocolIE-ID -id-DRBToQoSFlowMapping-Item ProtocolIE-ID -id-GlobalNG-RAN-node-ID ProtocolIE-ID -id-GUAMI ProtocolIE-ID -id-List-of-served-cells-E-UTRA ProtocolIE-ID -id-List-of-served-cells-NR ProtocolIE-ID -id-LocationReportingInformation ProtocolIE-ID -id-MAC-I ProtocolIE-ID -id-MaskedIMEISV ProtocolIE-ID -id-new-NG-RAN-Cell-Identity ProtocolIE-ID -id-newNG-RANnodeUEXnAPID ProtocolIE-ID -id-oldNG-RANnodeUEXnAPID ProtocolIE-ID -id-PagingDRX ProtocolIE-ID -id-PDUSessionResourceAdmittedResponseTransferItem ProtocolIE-ID -id-PDUSessionResourcesAdmitted-Item ProtocolIE-ID -id-PDUSessionResourcesAdmitted-List ProtocolIE-ID -id-PDUSessionResourcesNotAdmitted-Item ProtocolIE-ID -id-PDUSessionResourcesNotAdmitted-List ProtocolIE-ID -id-PDUSessionResourcesToBeSetup-Item ProtocolIE-ID -id-QoSFlowAdmitted-Item ProtocolIE-ID -id-QoSFlow-Item ProtocolIE-ID -id-QoSFlowNotAdmitted-Item ProtocolIE-ID -id-QoSFlowsToBeSetup-Item ProtocolIE-ID -id-RANPagingArea ProtocolIE-ID -id-RANPagingPriority ProtocolIE-ID -id-ResetRequestPartialReleaseItem ProtocolIE-ID -id-ResetRequestTypeInfo ProtocolIE-ID -id-ResetResponsePartialReleaseItem ProtocolIE-ID -id-ResetResponseTypeInfo ProtocolIE-ID -id-RespondingNodeTypeConfigUpdateAck ProtocolIE-ID -id-ServedCellsToActivate ProtocolIE-ID -id-servedCellsToUpdate-E-UTRA ProtocolIE-ID -id-ServedCellsToUpdateInitiatingNodeChoice ProtocolIE-ID -id-servedCellsToUpdate-NR ProtocolIE-ID -id-sourceNG-RANnodeUEXnAPID ProtocolIE-ID -id-TAISupport-Item ProtocolIE-ID -id-TAISupport-list ProtocolIE-ID -id-Target2SourceNG-RANnodeTranspContainer ProtocolIE-ID -id-targetCellGlobalID ProtocolIE-ID -id-targetNG-RANnodeUEXnAPID ProtocolIE-ID -id-TraceActivation ProtocolIE-ID -id-UEContextID ProtocolIE-ID -id-UEContextInfoHORequest ProtocolIE-ID -id-UEContextInfoRetrUECtxtResp ProtocolIE-ID -id-UEIdentityIndexValue ProtocolIE-ID -id-UERANPagingIdentity ProtocolIE-ID -id-XnRemovalThreshold ProtocolIE-ID - +id-ActivatedServedCells ProtocolIE-ID +id-ActivationIDforCellActivation ProtocolIE-ID +id-admittedSplitSRB ProtocolIE-ID +id-admittedSplitSRBrelease ProtocolIE-ID +id-AMF-Pool-Information ProtocolIE-ID +id-AssistanceDataForRANPaging ProtocolIE-ID +id-BearersSubjectToCounterCheck ProtocolIE-ID +id-Cause ProtocolIE-ID +id-cellAssistanceInfo-NR ProtocolIE-ID +id-ConfigurationUpdateInitiatingNodeChoice ProtocolIE-ID +id-CriticalityDiagnostics ProtocolIE-ID +id-dataforwardingInfoperPDUSession ProtocolIE-ID +id-DRBsSubjectToStatusTransfer-List ProtocolIE-ID +id-ExpectedUEBehaviour ProtocolIE-ID +id-GlobalNG-RAN-node-ID ProtocolIE-ID +id-GUAMI ProtocolIE-ID +id-indexToRatFrequSelectionPriority ProtocolIE-ID +id-initiatingNodeType-ResourceCoordRequest ProtocolIE-ID +id-List-of-served-cells-E-UTRA ProtocolIE-ID +id-List-of-served-cells-NR ProtocolIE-ID +id-LocationReportingInformation ProtocolIE-ID +id-MAC-I ProtocolIE-ID +id-MaskedIMEISV ProtocolIE-ID +id-M-NG-RANnodeUEXnAPID ProtocolIE-ID +id-MN-to-SN-Container ProtocolIE-ID +id-MobilityRestrictionList ProtocolIE-ID +id-new-NG-RAN-Cell-Identity ProtocolIE-ID +id-newNG-RANnodeUEXnAPID ProtocolIE-ID +id-NRUEMeasurementReportRRCTransfer ProtocolIE-ID +id-oldNG-RANnodeUEXnAPID ProtocolIE-ID +id-OldtoNewNG-RANnodeResumeContainer ProtocolIE-ID +id-PagingDRX ProtocolIE-ID +id-PCellID ProtocolIE-ID +id-PDCPChangeIndication ProtocolIE-ID +id-PDUSessionAdmittedAddedAddReqAck ProtocolIE-ID +id-PDUSessionAdmittedModSNModConfirm ProtocolIE-ID +id-PDUSessionAdmitted-SNModResponse ProtocolIE-ID +id-PDUSessionNotAdmittedAddReqAck ProtocolIE-ID +id-PDUSessionNotAdmitted-SNModResponse ProtocolIE-ID +id-PDUSessionReleasedList-RelConf ProtocolIE-ID +id-PDUSessionReleasedSNModConfirm ProtocolIE-ID +id-PDUSessionResourcesActivityNotifyList ProtocolIE-ID +id-PDUSessionResourcesAdmitted-List ProtocolIE-ID +id-PDUSessionResourcesNotAdmitted-List ProtocolIE-ID +id-PDUSessionResourcesNotifyList ProtocolIE-ID +id-PDUSession-SNChangeConfirm-List ProtocolIE-ID +id-PDUSession-SNChangeRequired-List ProtocolIE-ID +id-PDUSessionToBeAddedAddReq ProtocolIE-ID +id-PDUSessionToBeModifiedSNModRequired ProtocolIE-ID +id-PDUSessionToBeReleasedList-RelRqd ProtocolIE-ID +id-PDUSessionToBeReleased-RelReq ProtocolIE-ID +id-PDUSessionToBeReleasedSNModRequired ProtocolIE-ID +id-RANPagingArea ProtocolIE-ID +id-PagingPriority ProtocolIE-ID +id-requestedSplitSRB ProtocolIE-ID +id-requestedSplitSRBrelease ProtocolIE-ID +id-ResetRequestTypeInfo ProtocolIE-ID +id-ResetResponseTypeInfo ProtocolIE-ID +id-RespondingNodeTypeConfigUpdateAck ProtocolIE-ID +id-respondingNodeType-ResourceCoordResponse ProtocolIE-ID +id-ResponseInfo-ReconfCompl ProtocolIE-ID +id-RRCConfigIndication ProtocolIE-ID +id-RRCResumeCause ProtocolIE-ID +id-SCGConfigurationQuery ProtocolIE-ID +id-selectedPLMN ProtocolIE-ID +id-ServedCellsToActivate ProtocolIE-ID +id-servedCellsToUpdate-E-UTRA ProtocolIE-ID +id-ServedCellsToUpdateInitiatingNodeChoice ProtocolIE-ID +id-servedCellsToUpdate-NR ProtocolIE-ID +id-s-ng-RANnode-SecurityKey ProtocolIE-ID +id-S-NG-RANnodeUE-AMBR ProtocolIE-ID +id-S-NG-RANnodeUEXnAPID ProtocolIE-ID +id-SN-to-MN-Container ProtocolIE-ID +id-sourceNG-RANnodeUEXnAPID ProtocolIE-ID +id-SplitSRB-RRCTransfer ProtocolIE-ID +id-TAISupport-list ProtocolIE-ID +id-TimeToWait ProtocolIE-ID +id-Target2SourceNG-RANnodeTranspContainer ProtocolIE-ID +id-targetCellGlobalID ProtocolIE-ID +id-targetNG-RANnodeUEXnAPID ProtocolIE-ID +id-target-S-NG-RANnodeID ProtocolIE-ID +id-TraceActivation ProtocolIE-ID +id-UEContextID ProtocolIE-ID +id-UEContextInfoHORequest ProtocolIE-ID +id-UEContextInfoRetrUECtxtResp ProtocolIE-ID +id-UEContextInfo-SNModRequest ProtocolIE-ID +id-UEContextKeptIndicator ProtocolIE-ID +id-UEContextRefAtSN-HORequest ProtocolIE-ID +id-UEHistoryInformation ProtocolIE-ID +id-UEIdentityIndexValue ProtocolIE-ID +id-UERANPagingIdentity ProtocolIE-ID +id-UESecurityCapabilities ProtocolIE-ID +id-UserPlaneTrafficActivityReport ProtocolIE-ID +id-XnRemovalThreshold ProtocolIE-ID #.REGISTER #XNAP-PROTOCOL-IES ActivatedServedCells N xnap.ies id-ActivatedServedCells ActivationIDforCellActivation N xnap.ies id-ActivationIDforCellActivation +SplitSRBsTypes N xnap.ies id-admittedSplitSRB +SplitSRBsTypes N xnap.ies id-admittedSplitSRBrelease AMF-Pool-Information N xnap.ies id-AMF-Pool-Information -AreaOfInterest-Item N xnap.ies id-AreaOfInterest-Item AssistanceDataForRANPaging N xnap.ies id-AssistanceDataForRANPaging +BearersSubjectToCounterCheck-List N xnap.ies id-BearersSubjectToCounterCheck Cause N xnap.ies id-Cause CellAssistanceInfo-NR N xnap.ies id-cellAssistanceInfo-NR ConfigurationUpdateInitiatingNodeChoice N xnap.ies id-ConfigurationUpdateInitiatingNodeChoice CriticalityDiagnostics N xnap.ies id-CriticalityDiagnostics DataforwardingInfoperPDUSession N xnap.ies id-dataforwardingInfoperPDUSession -DataforwardingInfoperPDUSession-Item N xnap.ies id-dataforwardingInfoperPDUSession-Item -DataForwardingResponseDRBItem N xnap.ies id-DataForwardingResponseDRBItem -DRBsSubjectToStatusTransfer-Item N xnap.ies id-DRBsSubjectToStatusTransfer-Item DRBsSubjectToStatusTransfer-List N xnap.ies id-DRBsSubjectToStatusTransfer-List -DRBToQoSFlowMapping-Item N xnap.ies id-DRBToQoSFlowMapping-Item +ExpectedUEBehaviour N xnap.ies id-ExpectedUEBehaviour GlobalNG-RANNode-ID N xnap.ies id-GlobalNG-RAN-node-ID GUAMI N xnap.ies id-GUAMI +RFSP-Index N xnap.ies id-indexToRatFrequSelectionPriority +InitiatingNodeType-ResourceCoordRequest N xnap.ies id-initiatingNodeType-ResourceCoordRequest ServedCells-E-UTRA N xnap.ies id-List-of-served-cells-E-UTRA ServedCells-NR N xnap.ies id-List-of-served-cells-NR LocationReportingInformation N xnap.ies id-LocationReportingInformation MAC-I N xnap.ies id-MAC-I MaskedIMEISV N xnap.ies id-MaskedIMEISV +NG-RANnodeUEXnAPID N xnap.ies id-M-NG-RANnodeUEXnAPID +MN-to-SN-Container N xnap.ies id-MN-to-SN-Container +MobilityRestrictionList N xnap.ies id-MobilityRestrictionList NG-RAN-Cell-Identity N xnap.ies id-new-NG-RAN-Cell-Identity NG-RANnodeUEXnAPID N xnap.ies id-newNG-RANnodeUEXnAPID +NRUEMeasurementReportRRCTransfer N xnap.ies id-NRUEMeasurementReportRRCTransfer NG-RANnodeUEXnAPID N xnap.ies id-oldNG-RANnodeUEXnAPID +OldtoNewNG-RANnodeResumeContainer N xnap.ies id-OldtoNewNG-RANnodeResumeContainer PagingDRX N xnap.ies id-PagingDRX -#id-PDUSessionResourceAdmittedResponseTransferItem -PDUSessionResourcesAdmitted-Item N xnap.ies id-PDUSessionResourcesAdmitted-Item +GlobalNG-RANCell-ID N xnap.ies id-PCellID +PDCPChangeIndication N xnap.ies id-PDCPChangeIndication +PDUSessionAdmittedAddedAddReqAck N xnap.ies id-PDUSessionAdmittedAddedAddReqAck +PDUSessionAdmittedModSNModConfirm N xnap.ies id-PDUSessionAdmittedModSNModConfirm +PDUSessionAdmitted-SNModResponse N xnap.ies id-PDUSessionAdmitted-SNModResponse +PDUSessionNotAdmittedAddReqAck N xnap.ies id-PDUSessionNotAdmittedAddReqAck +PDUSessionNotAdmitted-SNModResponse N xnap.ies id-PDUSessionNotAdmitted-SNModResponse +PDUSessionReleasedList-RelConf N xnap.ies id-PDUSessionReleasedList-RelConf +PDUSessionReleasedSNModConfirm N xnap.ies id-PDUSessionReleasedSNModConfirm +PDUSessionResourcesActivityNotifyList N xnap.ies id-PDUSessionResourcesActivityNotifyList PDUSessionResourcesAdmitted-List N xnap.ies id-PDUSessionResourcesAdmitted-List -PDUSessionResourcesNotAdmitted-Item N xnap.ies id-PDUSessionResourcesNotAdmitted-Item PDUSessionResourcesNotAdmitted-List N xnap.ies id-PDUSessionResourcesNotAdmitted-List -PDUSessionResourcesToBeSetup-Item N xnap.ies id-PDUSessionResourcesToBeSetup-Item -QoSFlowAdmitted-Item N xnap.ies id-QoSFlowAdmitted-Item -QoSFlow-Item N xnap.ies id-QoSFlow-Item -QoSFlowNotAdmitted-Item N xnap.ies id-QoSFlowNotAdmitted-Item -QoSFlowsToBeSetup-Item N xnap.ies id-QoSFlowsToBeSetup-Item +PDUSessionResourcesNotifyList N xnap.ies id-PDUSessionResourcesNotifyList +PDUSession-SNChangeConfirm-List N xnap.ies id-PDUSession-SNChangeConfirm-List +PDUSession-SNChangeRequired-List N xnap.ies id-PDUSession-SNChangeRequired-List +PDUSessionToBeAddedAddReq N xnap.ies id-PDUSessionToBeAddedAddReq +PDUSessionToBeModifiedSNModRequired N xnap.ies id-PDUSessionToBeModifiedSNModRequired +PDUSessionToBeReleasedList-RelRqd N xnap.ies id-PDUSessionToBeReleasedList-RelRqd +PDUSessionToBeReleased-RelReq N xnap.ies id-PDUSessionToBeReleased-RelReq +PDUSessionToBeReleasedSNModRequired N xnap.ies id-PDUSessionToBeReleasedSNModRequired RANPagingArea N xnap.ies id-RANPagingArea -RANPagingPriority N xnap.ies id-RANPagingPriority -ResetRequestPartialReleaseItem N xnap.ies id-ResetRequestPartialReleaseItem +PagingPriority N xnap.ies id-PagingPriority +SplitSRBsTypes N xnap.ies id-requestedSplitSRB +SplitSRBsTypes N xnap.ies id-requestedSplitSRBrelease ResetRequestTypeInfo N xnap.ies id-ResetRequestTypeInfo -ResetResponsePartialReleaseItem N xnap.ies id-ResetResponsePartialReleaseItem ResetResponseTypeInfo N xnap.ies id-ResetResponseTypeInfo RespondingNodeTypeConfigUpdateAck N xnap.ies id-RespondingNodeTypeConfigUpdateAck +RespondingNodeType-ResourceCoordResponse N xnap.ies id-respondingNodeType-ResourceCoordResponse +ResponseInfo-ReconfCompl N xnap.ies id-ResponseInfo-ReconfCompl +RRCConfigIndication N xnap.ies id-RRCConfigIndication +RRCResumeCause N xnap.ies id-RRCResumeCause +SCGConfigurationQuery N xnap.ies id-SCGConfigurationQuery +PLMN-Identity N xnap.ies id-selectedPLMN ServedCellsToActivate N xnap.ies id-ServedCellsToActivate ServedCellsToUpdate-E-UTRA N xnap.ies id-servedCellsToUpdate-E-UTRA #id-ServedCellsToUpdateInitiatingNodeChoice ServedCellsToUpdate-NR N xnap.ies id-servedCellsToUpdate-NR +S-NG-RANnode-SecurityKey N xnap.ies id-s-ng-RANnode-SecurityKey +UEAggregateMaximumBitRate N xnap.ies id-S-NG-RANnodeUE-AMBR +NG-RANnodeUEXnAPID N xnap.ies id-S-NG-RANnodeUEXnAPID +SN-to-MN-Container N xnap.ies id-SN-to-MN-Container NG-RANnodeUEXnAPID N xnap.ies id-sourceNG-RANnodeUEXnAPID -TAISupport-Item N xnap.ies id-TAISupport-Item +SplitSRB-RRCTransfer N xnap.ies id-SplitSRB-RRCTransfer TAISupport-List N xnap.ies id-TAISupport-list +TimeToWait N xnap.ies id-TimeToWait Target2SourceNG-RANnodeTranspContainer N xnap.ies id-Target2SourceNG-RANnodeTranspContainer Target-CGI N xnap.ies id-targetCellGlobalID NG-RANnodeUEXnAPID N xnap.ies id-targetNG-RANnodeUEXnAPID +GlobalNG-RANNode-ID N xnap.ies id-target-S-NG-RANnodeID TraceActivation N xnap.ies id-TraceActivation UEContextID N xnap.ies id-UEContextID UEContextInfoHORequest N xnap.ies id-UEContextInfoHORequest UEContextInfoRetrUECtxtResp N xnap.ies id-UEContextInfoRetrUECtxtResp +UEContextInfo-SNModRequest N xnap.ies id-UEContextInfo-SNModRequest +UEContextKeptIndicator N xnap.ies id-UEContextKeptIndicator +UEContextRefAtSN-HORequest N xnap.ies id-UEContextRefAtSN-HORequest +UEHistoryInformation N xnap.ies id-UEHistoryInformation UEIdentityIndexValue N xnap.ies id-UEIdentityIndexValue UERANPagingIdentity N xnap.ies id-UERANPagingIdentity +UESecurityCapabilities N xnap.ies id-UESecurityCapabilities +UserPlaneTrafficActivityReport N xnap.ies id-UserPlaneTrafficActivityReport XnBenefitValue N xnap.ies id-XnRemovalThreshold #XNAP-PROTOCOL-EXTENSION #XNAP-ELEMENTARY-PROCEDURE -HandoverRequest N xnap.proc.imsg id-handoverPreparation -HandoverRequestAcknowledge N xnap.proc.sout id-handoverPreparation -HandoverPreparationFailure N xnap.proc.uout id-handoverPreparation +HandoverRequest N xnap.proc.imsg id-handoverPreparation +HandoverRequestAcknowledge N xnap.proc.sout id-handoverPreparation +HandoverPreparationFailure N xnap.proc.uout id-handoverPreparation -SNStatusTransfer N xnap.proc.imsg id-sNStatusTransfer +SNStatusTransfer N xnap.proc.imsg id-sNStatusTransfer -HandoverCancel N xnap.proc.imsg id-handoverCancel +HandoverCancel N xnap.proc.imsg id-handoverCancel -RetrieveUEContextRequest N xnap.proc.imsg id-retrieveUEContext -RetrieveUEContextResponse N xnap.proc.sout id-retrieveUEContext -RetrieveUEContextFailure N xnap.proc.uout id-retrieveUEContext +RetrieveUEContextRequest N xnap.proc.imsg id-retrieveUEContext +RetrieveUEContextResponse N xnap.proc.sout id-retrieveUEContext +RetrieveUEContextFailure N xnap.proc.uout id-retrieveUEContext -RANPaging N xnap.proc.imsg id-rANPaging +RANPaging N xnap.proc.imsg id-rANPaging -DataForwardingAddressIndication N xnap.proc.imsg id-dataForwardingAddressIndication +DataForwardingAddressIndication N xnap.proc.imsg id-dataForwardingAddressIndication -UEContextRelease N xnap.proc.imsg id-uEContextRelease +UEContextRelease N xnap.proc.imsg id-uEContextRelease -SNodeAdditionRequest N xnap.proc.imsg id-sNGRANnodeAdditionPreparation -SNodeAdditionRequestAcknowledge N xnap.proc.sout id-sNGRANnodeAdditionPreparation -SNodeAdditionRequestReject N xnap.proc.uout id-sNGRANnodeAdditionPreparation +SNodeAdditionRequest N xnap.proc.imsg id-sNGRANnodeAdditionPreparation +SNodeAdditionRequestAcknowledge N xnap.proc.sout id-sNGRANnodeAdditionPreparation +SNodeAdditionRequestReject N xnap.proc.uout id-sNGRANnodeAdditionPreparation -SNodeReconfigurationComplete N xnap.proc.imsg id-sNGRANnodeReconfigurationCompletion +SNodeReconfigurationComplete N xnap.proc.imsg id-sNGRANnodeReconfigurationCompletion -SNodeModificationRequest N xnap.proc.imsg id-mNGRANnodeinitiatedSNGRANnodeModificationPreparation -SNodeModificationRequestAcknowledge N xnap.proc.sout id-mNGRANnodeinitiatedSNGRANnodeModificationPreparation -SNodeModificationRequestReject N xnap.proc.uout id-mNGRANnodeinitiatedSNGRANnodeModificationPreparation +SNodeModificationRequest N xnap.proc.imsg id-mNGRANnodeinitiatedSNGRANnodeModificationPreparation +SNodeModificationRequestAcknowledge N xnap.proc.sout id-mNGRANnodeinitiatedSNGRANnodeModificationPreparation +SNodeModificationRequestReject N xnap.proc.uout id-mNGRANnodeinitiatedSNGRANnodeModificationPreparation -SNodeModificationRequired N xnap.proc.imsg id-sNGRANnodeinitiatedSNGRANnodeModificationPreparation -SNodeModificationConfirm N xnap.proc.sout id-sNGRANnodeinitiatedSNGRANnodeModificationPreparation -SNodeModificationRefuse N xnap.proc.uout id-sNGRANnodeinitiatedSNGRANnodeModificationPreparation +SNodeModificationRequired N xnap.proc.imsg id-sNGRANnodeinitiatedSNGRANnodeModificationPreparation +SNodeModificationConfirm N xnap.proc.sout id-sNGRANnodeinitiatedSNGRANnodeModificationPreparation +SNodeModificationRefuse N xnap.proc.uout id-sNGRANnodeinitiatedSNGRANnodeModificationPreparation -SNodeReleaseRequest N xnap.proc.imsg id-mNGRANnodeinitiatedSNGRANnodeRelease -SNodeReleaseRequestAcknowledge N xnap.proc.sout id-mNGRANnodeinitiatedSNGRANnodeRelease -SNodeReleaseReject N xnap.proc.uout id-mNGRANnodeinitiatedSNGRANnodeRelease +SNodeReleaseRequest N xnap.proc.imsg id-mNGRANnodeinitiatedSNGRANnodeRelease +SNodeReleaseRequestAcknowledge N xnap.proc.sout id-mNGRANnodeinitiatedSNGRANnodeRelease +SNodeReleaseReject N xnap.proc.uout id-mNGRANnodeinitiatedSNGRANnodeRelease -SNodeReleaseRequired N xnap.proc.imsg id-sNGRANnodeinitiatedSNGRANnodeRelease -SNodeReleaseConfirm N xnap.proc.sout id-sNGRANnodeinitiatedSNGRANnodeRelease +SNodeReleaseRequired N xnap.proc.imsg id-sNGRANnodeinitiatedSNGRANnodeRelease +SNodeReleaseConfirm N xnap.proc.sout id-sNGRANnodeinitiatedSNGRANnodeRelease -SNodeCounterCheckRequest N xnap.proc.imsg id-sNGRANnodeCounterCheck +SNodeCounterCheckRequest N xnap.proc.imsg id-sNGRANnodeCounterCheck -SNodeChangeRequired N xnap.proc.imsg id-sNGRANnodeChange -SNodeChangeConfirm N xnap.proc.sout id-sNGRANnodeChange -SNodeChangeRefuse N xnap.proc.uout id-sNGRANnodeChange +SNodeChangeRequired N xnap.proc.imsg id-sNGRANnodeChange +SNodeChangeConfirm N xnap.proc.sout id-sNGRANnodeChange +SNodeChangeRefuse N xnap.proc.uout id-sNGRANnodeChange -RRCTransfer N xnap.proc.imsg id-rRCTransfer +RRCTransfer N xnap.proc.imsg id-rRCTransfer -XnRemovalRequest N xnap.proc.imsg id-xnRemoval -XnRemovalResponse N xnap.proc.sout id-xnRemoval -XnRemovalFailure N xnap.proc.uout id-xnRemoval +XnRemovalRequest N xnap.proc.imsg id-xnRemoval +XnRemovalResponse N xnap.proc.sout id-xnRemoval +XnRemovalFailure N xnap.proc.uout id-xnRemoval -XnSetupRequest N xnap.proc.imsg id-xnSetup -XnSetupResponse N xnap.proc.sout id-xnSetup -XnSetupFailure N xnap.proc.uout id-xnSetup +XnSetupRequest N xnap.proc.imsg id-xnSetup +XnSetupResponse N xnap.proc.sout id-xnSetup +XnSetupFailure N xnap.proc.uout id-xnSetup -NGRANNodeConfigurationUpdate N xnap.proc.imsg id-nGRANnodeConfigurationUpdate -NGRANNodeConfigurationUpdateAcknowledge N xnap.proc.sout id-nGRANnodeConfigurationUpdate -NGRANNodeConfigurationUpdateFailure N xnap.proc.uout id-nGRANnodeConfigurationUpdate +NGRANNodeConfigurationUpdate N xnap.proc.imsg id-nGRANnodeConfigurationUpdate +NGRANNodeConfigurationUpdateAcknowledge N xnap.proc.sout id-nGRANnodeConfigurationUpdate +NGRANNodeConfigurationUpdateFailure N xnap.proc.uout id-nGRANnodeConfigurationUpdate -CellActivationRequest N xnap.proc.imsg id-cellActivation -CellActivationResponse N xnap.proc.sout id-cellActivation -CellActivationFailure N xnap.proc.uout id-cellActivation +E-UTRA-NR-CellResourceCoordinationRequest N xnap.proc.imsg id-e-UTRA-NR-CellResourceCoordination +E-UTRA-NR-CellResourceCoordinationResponse N xnap.proc.sout id-e-UTRA-NR-CellResourceCoordination -ResetRequest N xnap.proc.imsg id-reset -ResetResponse N xnap.proc.sout id-reset +CellActivationRequest N xnap.proc.imsg id-cellActivation +CellActivationResponse N xnap.proc.sout id-cellActivation +CellActivationFailure N xnap.proc.uout id-cellActivation -ErrorIndication N xnap.proc.imsg id-errorIndication +ResetRequest N xnap.proc.imsg id-reset +ResetResponse N xnap.proc.sout id-reset -PrivateMessage N xnap.proc.imsg id-privateMessage +ErrorIndication N xnap.proc.imsg id-errorIndication + +NotificationControlIndication N xnap.proc.imsg id-notificationControl + +ActivityNotification N xnap.proc.imsg id-activityNotification + +PrivateMessage N xnap.proc.imsg id-privateMessage #.END diff --git a/epan/dissectors/packet-lte-rrc.c b/epan/dissectors/packet-lte-rrc.c index d1798c54b2..9a5b59e0f7 100644 --- a/epan/dissectors/packet-lte-rrc.c +++ b/epan/dissectors/packet-lte-rrc.c @@ -319,7 +319,9 @@ static int hf_lte_rrc_DL_DCCH_Message_PDU = -1; /* DL_DCCH_Message */ static int hf_lte_rrc_UL_CCCH_Message_PDU = -1; /* UL_CCCH_Message */ static int hf_lte_rrc_UL_DCCH_Message_PDU = -1; /* UL_DCCH_Message */ static int hf_lte_rrc_SC_MCCH_Message_r13_PDU = -1; /* SC_MCCH_Message_r13 */ +static int hf_lte_rrc_lte_rrc_MeasurementReport_PDU = -1; /* MeasurementReport */ static int hf_lte_rrc_RRCConnectionReconfiguration_PDU = -1; /* RRCConnectionReconfiguration */ +static int hf_lte_rrc_lte_rrc_RRCConnectionReconfigurationComplete_PDU = -1; /* RRCConnectionReconfigurationComplete */ static int hf_lte_rrc_UECapabilityInformation_PDU = -1; /* UECapabilityInformation */ static int hf_lte_rrc_lte_rrc_RLF_Report_r9_PDU = -1; /* RLF_Report_r9 */ static int hf_lte_rrc_lte_rrc_RLF_Report_v9e0_PDU = -1; /* RLF_Report_v9e0 */ @@ -107509,6 +107511,14 @@ static int dissect_SC_MCCH_Message_r13_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +int dissect_lte_rrc_MeasurementReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lte_rrc_MeasurementReport(tvb, offset, &asn1_ctx, tree, hf_lte_rrc_lte_rrc_MeasurementReport_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_RRCConnectionReconfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -107517,6 +107527,14 @@ static int dissect_RRCConnectionReconfiguration_PDU(tvbuff_t *tvb _U_, packet_in offset += 7; offset >>= 3; return offset; } +int dissect_lte_rrc_RRCConnectionReconfigurationComplete_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lte_rrc_RRCConnectionReconfigurationComplete(tvb, offset, &asn1_ctx, tree, hf_lte_rrc_lte_rrc_RRCConnectionReconfigurationComplete_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UECapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -108335,10 +108353,18 @@ void proto_register_lte_rrc(void) { { "SC-MCCH-Message-r13", "lte-rrc.SC_MCCH_Message_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_lte_rrc_MeasurementReport_PDU, + { "MeasurementReport", "lte-rrc.MeasurementReport_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_RRCConnectionReconfiguration_PDU, { "RRCConnectionReconfiguration", "lte-rrc.RRCConnectionReconfiguration_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_lte_rrc_RRCConnectionReconfigurationComplete_PDU, + { "RRCConnectionReconfigurationComplete", "lte-rrc.RRCConnectionReconfigurationComplete_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_UECapabilityInformation_PDU, { "UECapabilityInformation", "lte-rrc.UECapabilityInformation_element", FT_NONE, BASE_NONE, NULL, 0, diff --git a/epan/dissectors/packet-lte-rrc.h b/epan/dissectors/packet-lte-rrc.h index 24553674c6..97a5dfc714 100644 --- a/epan/dissectors/packet-lte-rrc.h +++ b/epan/dissectors/packet-lte-rrc.h @@ -29,6 +29,8 @@ int dissect_lte_rrc_HandoverPreparationInformation_PDU(tvbuff_t *tvb _U_, packet int dissect_lte_rrc_SCG_Config_r12_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_lte_rrc_UEPagingCoverageInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_lte_rrc_MeasurementReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_lte_rrc_RRCConnectionReconfigurationComplete_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_lte_rrc_RLF_Report_r9_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_lte_rrc_RLF_Report_v9e0_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_lte_rrc_UE_EUTRA_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); diff --git a/epan/dissectors/packet-nr-rrc.c b/epan/dissectors/packet-nr-rrc.c index fdb91e422f..9726ef3581 100644 --- a/epan/dissectors/packet-nr-rrc.c +++ b/epan/dissectors/packet-nr-rrc.c @@ -262,6 +262,7 @@ static int hf_nr_rrc_UL_CCCH_Message_PDU = -1; /* UL_CCCH_Message */ static int hf_nr_rrc_UL_CCCH1_Message_PDU = -1; /* UL_CCCH1_Message */ static int hf_nr_rrc_nr_rrc_UL_DCCH_Message_PDU = -1; /* UL_DCCH_Message */ static int hf_nr_rrc_nr_rrc_MIB_PDU = -1; /* MIB */ +static int hf_nr_rrc_nr_rrc_MeasurementReport_PDU = -1; /* MeasurementReport */ static int hf_nr_rrc_nr_rrc_RRCReconfiguration_PDU = -1; /* RRCReconfiguration */ static int hf_nr_rrc_nr_rrc_RRCReconfigurationComplete_PDU = -1; /* RRCReconfigurationComplete */ static int hf_nr_rrc_nr_rrc_SIB1_PDU = -1; /* SIB1 */ @@ -37567,6 +37568,14 @@ int dissect_nr_rrc_MIB_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree offset += 7; offset >>= 3; return offset; } +int dissect_nr_rrc_MeasurementReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_nr_rrc_MeasurementReport(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_MeasurementReport_PDU); + offset += 7; offset >>= 3; + return offset; +} int dissect_nr_rrc_RRCReconfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -37785,6 +37794,10 @@ proto_register_nr_rrc(void) { { "MIB", "nr-rrc.MIB_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_nr_rrc_nr_rrc_MeasurementReport_PDU, + { "MeasurementReport", "nr-rrc.MeasurementReport_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_nr_rrc_nr_rrc_RRCReconfiguration_PDU, { "RRCReconfiguration", "nr-rrc.RRCReconfiguration_element", FT_NONE, BASE_NONE, NULL, 0, diff --git a/epan/dissectors/packet-nr-rrc.h b/epan/dissectors/packet-nr-rrc.h index 3a981edd5e..b14e916e0e 100644 --- a/epan/dissectors/packet-nr-rrc.h +++ b/epan/dissectors/packet-nr-rrc.h @@ -30,6 +30,7 @@ int dissect_nr_rrc_ConfigRestrictInfoSCG_PDU(tvbuff_t *tvb _U_, packet_info *pin int dissect_nr_rrc_MeasurementTimingConfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_UL_DCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_MIB_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +int dissect_nr_rrc_MeasurementReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_RRCReconfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_RRCReconfigurationComplete_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); int dissect_nr_rrc_SIB1_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); diff --git a/epan/dissectors/packet-xnap.c b/epan/dissectors/packet-xnap.c index 9dfd8f4ea6..97e77456f7 100644 --- a/epan/dissectors/packet-xnap.c +++ b/epan/dissectors/packet-xnap.c @@ -18,7 +18,7 @@ * SPDX-License-Identifier: GPL-2.0-or-later * * Ref: - * 3GPP TS 38.423 V15.0.0 (2018-06) + * 3GPP TS 38.423 V15.1.0 (2018-09) */ #include "config.h" @@ -56,9 +56,11 @@ #define maxEARFCN 262143 #define maxnoofAllowedAreas 16 #define maxnoofAoIs 64 -#define maxnoofBPLMNs 6 +#define maxnoofBPLMNs 12 +#define maxnoofBearerConfigs 2 #define maxnoofCellsinAoI 256 -#define maxnoofCellsinNGRANnode 16384 +#define maxnoofCellsinUEHistoryInfo 16 +#define maxnoofCellsinNG_RANnode 16384 #define maxnoofCellsinRNA 32 #define maxnoofDRBs 32 #define maxnoofEUTRABands 16 @@ -69,9 +71,11 @@ #define maxnoofNRCellBands 32 #define maxnoofPLMNs 16 #define maxnoofPDUSessions 256 +#define maxnoofProtectedResourcePatterns 16 #define maxnoofQoSFlows 64 #define maxnoofRANAreaCodes 32 #define maxnoofRANAreasinRNA 16 +#define maxnoofRANNodesinAoI 64 #define maxnoofSliceItems 1024 #define maxnoofsupportedPLMNs 16 #define maxnoofsupportedTACs 1024 @@ -104,70 +108,107 @@ typedef enum _ProcedureCode_enum { id_cellActivation = 19, id_reset = 20, id_errorIndication = 21, - id_privateMessage = 22 + id_privateMessage = 22, + id_notificationControl = 23, + id_activityNotification = 24, + id_e_UTRA_NR_CellResourceCoordination = 25 } ProcedureCode_enum; typedef enum _ProtocolIE_ID_enum { id_ActivatedServedCells = 0, id_ActivationIDforCellActivation = 1, - id_AMF_Pool_Information = 2, - id_AreaOfInterest_Item = 3, - id_AssistanceDataForRANPaging = 4, - id_Cause = 5, - id_cellAssistanceInfo_NR = 6, - id_ConfigurationUpdateInitiatingNodeChoice = 7, - id_CriticalityDiagnostics = 8, - id_dataforwardingInfoperPDUSession = 9, - id_dataforwardingInfoperPDUSession_Item = 10, - id_DataForwardingResponseDRBItem = 11, - id_DRBsSubjectToStatusTransfer_Item = 12, - id_DRBsSubjectToStatusTransfer_List = 13, - id_DRBToQoSFlowMapping_Item = 14, - id_GlobalNG_RAN_node_ID = 15, - id_GUAMI = 16, - id_List_of_served_cells_E_UTRA = 17, - id_List_of_served_cells_NR = 18, - id_LocationReportingInformation = 19, - id_MAC_I = 20, - id_MaskedIMEISV = 21, - id_new_NG_RAN_Cell_Identity = 22, - id_newNG_RANnodeUEXnAPID = 23, - id_oldNG_RANnodeUEXnAPID = 24, - id_PagingDRX = 25, - id_PDUSessionResourceAdmittedResponseTransferItem = 26, - id_PDUSessionResourcesAdmitted_Item = 27, - id_PDUSessionResourcesAdmitted_List = 28, - id_PDUSessionResourcesNotAdmitted_Item = 29, - id_PDUSessionResourcesNotAdmitted_List = 30, - id_PDUSessionResourcesToBeSetup_Item = 31, - id_QoSFlowAdmitted_Item = 32, - id_QoSFlow_Item = 33, - id_QoSFlowNotAdmitted_Item = 34, - id_QoSFlowsToBeSetup_Item = 35, - id_RANPagingArea = 36, - id_RANPagingPriority = 37, - id_ResetRequestPartialReleaseItem = 38, - id_ResetRequestTypeInfo = 39, - id_ResetResponsePartialReleaseItem = 40, - id_ResetResponseTypeInfo = 41, - id_RespondingNodeTypeConfigUpdateAck = 42, - id_ServedCellsToActivate = 43, - id_servedCellsToUpdate_E_UTRA = 44, - id_ServedCellsToUpdateInitiatingNodeChoice = 45, - id_servedCellsToUpdate_NR = 46, - id_sourceNG_RANnodeUEXnAPID = 47, - id_TAISupport_Item = 48, - id_TAISupport_list = 49, - id_Target2SourceNG_RANnodeTranspContainer = 50, - id_targetCellGlobalID = 51, - id_targetNG_RANnodeUEXnAPID = 52, - id_TraceActivation = 53, - id_UEContextID = 54, - id_UEContextInfoHORequest = 55, - id_UEContextInfoRetrUECtxtResp = 56, - id_UEIdentityIndexValue = 57, - id_UERANPagingIdentity = 58, - id_XnRemovalThreshold = 59 + id_admittedSplitSRB = 2, + id_admittedSplitSRBrelease = 3, + id_AMF_Pool_Information = 4, + id_AssistanceDataForRANPaging = 5, + id_BearersSubjectToCounterCheck = 6, + id_Cause = 7, + id_cellAssistanceInfo_NR = 8, + id_ConfigurationUpdateInitiatingNodeChoice = 9, + id_CriticalityDiagnostics = 10, + id_dataforwardingInfoperPDUSession = 11, + id_DRBsSubjectToStatusTransfer_List = 12, + id_ExpectedUEBehaviour = 13, + id_GlobalNG_RAN_node_ID = 14, + id_GUAMI = 15, + id_indexToRatFrequSelectionPriority = 16, + id_initiatingNodeType_ResourceCoordRequest = 17, + id_List_of_served_cells_E_UTRA = 18, + id_List_of_served_cells_NR = 19, + id_LocationReportingInformation = 20, + id_MAC_I = 21, + id_MaskedIMEISV = 22, + id_M_NG_RANnodeUEXnAPID = 23, + id_MN_to_SN_Container = 24, + id_MobilityRestrictionList = 25, + id_new_NG_RAN_Cell_Identity = 26, + id_newNG_RANnodeUEXnAPID = 27, + id_NRUEMeasurementReportRRCTransfer = 28, + id_oldNG_RANnodeUEXnAPID = 29, + id_OldtoNewNG_RANnodeResumeContainer = 30, + id_PagingDRX = 31, + id_PCellID = 32, + id_PDCPChangeIndication = 33, + id_PDUSessionAdmittedAddedAddReqAck = 34, + id_PDUSessionAdmittedModSNModConfirm = 35, + id_PDUSessionAdmitted_SNModResponse = 36, + id_PDUSessionNotAdmittedAddReqAck = 37, + id_PDUSessionNotAdmitted_SNModResponse = 38, + id_PDUSessionReleasedList_RelConf = 39, + id_PDUSessionReleasedSNModConfirm = 40, + id_PDUSessionResourcesActivityNotifyList = 41, + id_PDUSessionResourcesAdmitted_List = 42, + id_PDUSessionResourcesNotAdmitted_List = 43, + id_PDUSessionResourcesNotifyList = 44, + id_PDUSession_SNChangeConfirm_List = 45, + id_PDUSession_SNChangeRequired_List = 46, + id_PDUSessionToBeAddedAddReq = 47, + id_PDUSessionToBeModifiedSNModRequired = 48, + id_PDUSessionToBeReleasedList_RelRqd = 49, + id_PDUSessionToBeReleased_RelReq = 50, + id_PDUSessionToBeReleasedSNModRequired = 51, + id_RANPagingArea = 52, + id_PagingPriority = 53, + id_requestedSplitSRB = 54, + id_requestedSplitSRBrelease = 55, + id_ResetRequestTypeInfo = 56, + id_ResetResponseTypeInfo = 57, + id_RespondingNodeTypeConfigUpdateAck = 58, + id_respondingNodeType_ResourceCoordResponse = 59, + id_ResponseInfo_ReconfCompl = 60, + id_RRCConfigIndication = 61, + id_RRCResumeCause = 62, + id_SCGConfigurationQuery = 63, + id_selectedPLMN = 64, + id_ServedCellsToActivate = 65, + id_servedCellsToUpdate_E_UTRA = 66, + id_ServedCellsToUpdateInitiatingNodeChoice = 67, + id_servedCellsToUpdate_NR = 68, + id_s_ng_RANnode_SecurityKey = 69, + id_S_NG_RANnodeUE_AMBR = 70, + id_S_NG_RANnodeUEXnAPID = 71, + id_SN_to_MN_Container = 72, + id_sourceNG_RANnodeUEXnAPID = 73, + id_SplitSRB_RRCTransfer = 74, + id_TAISupport_list = 75, + id_TimeToWait = 76, + id_Target2SourceNG_RANnodeTranspContainer = 77, + id_targetCellGlobalID = 78, + id_targetNG_RANnodeUEXnAPID = 79, + id_target_S_NG_RANnodeID = 80, + id_TraceActivation = 81, + id_UEContextID = 82, + id_UEContextInfoHORequest = 83, + id_UEContextInfoRetrUECtxtResp = 84, + id_UEContextInfo_SNModRequest = 85, + id_UEContextKeptIndicator = 86, + id_UEContextRefAtSN_HORequest = 87, + id_UEHistoryInformation = 88, + id_UEIdentityIndexValue = 89, + id_UERANPagingIdentity = 90, + id_UESecurityCapabilities = 91, + id_UserPlaneTrafficActivityReport = 92, + id_XnRemovalThreshold = 93 } ProtocolIE_ID_enum; typedef enum _TriggeringMessage_enum { @@ -196,55 +237,58 @@ static int hf_xnap_ng_ran_TraceID_TraceRecordingSessionReference = -1; #line 1 "./asn1/xnap/packet-xnap-hf.c" static int hf_xnap_ActivationIDforCellActivation_PDU = -1; /* ActivationIDforCellActivation */ static int hf_xnap_AMF_Pool_Information_PDU = -1; /* AMF_Pool_Information */ -static int hf_xnap_AreaOfInterest_Item_PDU = -1; /* AreaOfInterest_Item */ static int hf_xnap_AssistanceDataForRANPaging_PDU = -1; /* AssistanceDataForRANPaging */ static int hf_xnap_Cause_PDU = -1; /* Cause */ static int hf_xnap_CellAssistanceInfo_NR_PDU = -1; /* CellAssistanceInfo_NR */ static int hf_xnap_CriticalityDiagnostics_PDU = -1; /* CriticalityDiagnostics */ static int hf_xnap_DataforwardingInfoperPDUSession_PDU = -1; /* DataforwardingInfoperPDUSession */ -static int hf_xnap_DataforwardingInfoperPDUSession_Item_PDU = -1; /* DataforwardingInfoperPDUSession_Item */ -static int hf_xnap_DataForwardingResponseDRBItem_PDU = -1; /* DataForwardingResponseDRBItem */ static int hf_xnap_DRBsSubjectToStatusTransfer_List_PDU = -1; /* DRBsSubjectToStatusTransfer_List */ -static int hf_xnap_DRBsSubjectToStatusTransfer_Item_PDU = -1; /* DRBsSubjectToStatusTransfer_Item */ -static int hf_xnap_DRBToQoSFlowMapping_Item_PDU = -1; /* DRBToQoSFlowMapping_Item */ +static int hf_xnap_ExpectedUEBehaviour_PDU = -1; /* ExpectedUEBehaviour */ +static int hf_xnap_GlobalNG_RANCell_ID_PDU = -1; /* GlobalNG_RANCell_ID */ static int hf_xnap_GlobalNG_RANNode_ID_PDU = -1; /* GlobalNG_RANNode_ID */ static int hf_xnap_GUAMI_PDU = -1; /* GUAMI */ static int hf_xnap_LocationReportingInformation_PDU = -1; /* LocationReportingInformation */ static int hf_xnap_MAC_I_PDU = -1; /* MAC_I */ static int hf_xnap_MaskedIMEISV_PDU = -1; /* MaskedIMEISV */ +static int hf_xnap_MobilityRestrictionList_PDU = -1; /* MobilityRestrictionList */ static int hf_xnap_NG_RAN_Cell_Identity_PDU = -1; /* NG_RAN_Cell_Identity */ static int hf_xnap_NG_RANnodeUEXnAPID_PDU = -1; /* NG_RANnodeUEXnAPID */ static int hf_xnap_PagingDRX_PDU = -1; /* PagingDRX */ +static int hf_xnap_PagingPriority_PDU = -1; /* PagingPriority */ +static int hf_xnap_PDCPChangeIndication_PDU = -1; /* PDCPChangeIndication */ static int hf_xnap_PDUSessionResourcesAdmitted_List_PDU = -1; /* PDUSessionResourcesAdmitted_List */ -static int hf_xnap_PDUSessionResourcesAdmitted_Item_PDU = -1; /* PDUSessionResourcesAdmitted_Item */ static int hf_xnap_PDUSessionResourcesNotAdmitted_List_PDU = -1; /* PDUSessionResourcesNotAdmitted_List */ -static int hf_xnap_PDUSessionResourcesNotAdmitted_Item_PDU = -1; /* PDUSessionResourcesNotAdmitted_Item */ -static int hf_xnap_PDUSessionResourcesToBeSetup_Item_PDU = -1; /* PDUSessionResourcesToBeSetup_Item */ -static int hf_xnap_QoSFlow_Item_PDU = -1; /* QoSFlow_Item */ -static int hf_xnap_QoSFlowAdmitted_Item_PDU = -1; /* QoSFlowAdmitted_Item */ -static int hf_xnap_QoSFlowNotAdmitted_Item_PDU = -1; /* QoSFlowNotAdmitted_Item */ -static int hf_xnap_QoSFlowsToBeSetup_Item_PDU = -1; /* QoSFlowsToBeSetup_Item */ +static int hf_xnap_PLMN_Identity_PDU = -1; /* PLMN_Identity */ static int hf_xnap_RANPagingArea_PDU = -1; /* RANPagingArea */ -static int hf_xnap_RANPagingPriority_PDU = -1; /* RANPagingPriority */ static int hf_xnap_ResetRequestTypeInfo_PDU = -1; /* ResetRequestTypeInfo */ -static int hf_xnap_ResetRequestPartialReleaseItem_PDU = -1; /* ResetRequestPartialReleaseItem */ static int hf_xnap_ResetResponseTypeInfo_PDU = -1; /* ResetResponseTypeInfo */ -static int hf_xnap_ResetResponsePartialReleaseItem_PDU = -1; /* ResetResponsePartialReleaseItem */ +static int hf_xnap_RFSP_Index_PDU = -1; /* RFSP_Index */ +static int hf_xnap_RRCConfigIndication_PDU = -1; /* RRCConfigIndication */ +static int hf_xnap_RRCResumeCause_PDU = -1; /* RRCResumeCause */ +static int hf_xnap_SCGConfigurationQuery_PDU = -1; /* SCGConfigurationQuery */ static int hf_xnap_ServedCells_E_UTRA_PDU = -1; /* ServedCells_E_UTRA */ static int hf_xnap_ServedCellsToUpdate_E_UTRA_PDU = -1; /* ServedCellsToUpdate_E_UTRA */ static int hf_xnap_ServedCells_NR_PDU = -1; /* ServedCells_NR */ static int hf_xnap_ServedCellsToUpdate_NR_PDU = -1; /* ServedCellsToUpdate_NR */ +static int hf_xnap_S_NG_RANnode_SecurityKey_PDU = -1; /* S_NG_RANnode_SecurityKey */ +static int hf_xnap_SplitSRBsTypes_PDU = -1; /* SplitSRBsTypes */ static int hf_xnap_TAISupport_List_PDU = -1; /* TAISupport_List */ -static int hf_xnap_TAISupport_Item_PDU = -1; /* TAISupport_Item */ static int hf_xnap_Target_CGI_PDU = -1; /* Target_CGI */ +static int hf_xnap_TimeToWait_PDU = -1; /* TimeToWait */ static int hf_xnap_TraceActivation_PDU = -1; /* TraceActivation */ +static int hf_xnap_UEAggregateMaximumBitRate_PDU = -1; /* UEAggregateMaximumBitRate */ +static int hf_xnap_UEContextKeptIndicator_PDU = -1; /* UEContextKeptIndicator */ static int hf_xnap_UEContextID_PDU = -1; /* UEContextID */ static int hf_xnap_UEContextInfoRetrUECtxtResp_PDU = -1; /* UEContextInfoRetrUECtxtResp */ +static int hf_xnap_UEHistoryInformation_PDU = -1; /* UEHistoryInformation */ static int hf_xnap_UEIdentityIndexValue_PDU = -1; /* UEIdentityIndexValue */ static int hf_xnap_UERANPagingIdentity_PDU = -1; /* UERANPagingIdentity */ +static int hf_xnap_UESecurityCapabilities_PDU = -1; /* UESecurityCapabilities */ +static int hf_xnap_UserPlaneTrafficActivityReport_PDU = -1; /* UserPlaneTrafficActivityReport */ static int hf_xnap_XnBenefitValue_PDU = -1; /* XnBenefitValue */ static int hf_xnap_HandoverRequest_PDU = -1; /* HandoverRequest */ static int hf_xnap_UEContextInfoHORequest_PDU = -1; /* UEContextInfoHORequest */ +static int hf_xnap_UEContextRefAtSN_HORequest_PDU = -1; /* UEContextRefAtSN_HORequest */ static int hf_xnap_HandoverRequestAcknowledge_PDU = -1; /* HandoverRequestAcknowledge */ static int hf_xnap_Target2SourceNG_RANnodeTranspContainer_PDU = -1; /* Target2SourceNG_RANnodeTranspContainer */ static int hf_xnap_HandoverPreparationFailure_PDU = -1; /* HandoverPreparationFailure */ @@ -255,27 +299,53 @@ static int hf_xnap_RANPaging_PDU = -1; /* RANPaging */ static int hf_xnap_RetrieveUEContextRequest_PDU = -1; /* RetrieveUEContextRequest */ static int hf_xnap_RetrieveUEContextResponse_PDU = -1; /* RetrieveUEContextResponse */ static int hf_xnap_RetrieveUEContextFailure_PDU = -1; /* RetrieveUEContextFailure */ +static int hf_xnap_OldtoNewNG_RANnodeResumeContainer_PDU = -1; /* OldtoNewNG_RANnodeResumeContainer */ static int hf_xnap_DataForwardingAddressIndication_PDU = -1; /* DataForwardingAddressIndication */ static int hf_xnap_SNodeAdditionRequest_PDU = -1; /* SNodeAdditionRequest */ +static int hf_xnap_MN_to_SN_Container_PDU = -1; /* MN_to_SN_Container */ +static int hf_xnap_PDUSessionToBeAddedAddReq_PDU = -1; /* PDUSessionToBeAddedAddReq */ static int hf_xnap_SNodeAdditionRequestAcknowledge_PDU = -1; /* SNodeAdditionRequestAcknowledge */ +static int hf_xnap_SN_to_MN_Container_PDU = -1; /* SN_to_MN_Container */ +static int hf_xnap_PDUSessionAdmittedAddedAddReqAck_PDU = -1; /* PDUSessionAdmittedAddedAddReqAck */ +static int hf_xnap_PDUSessionNotAdmittedAddReqAck_PDU = -1; /* PDUSessionNotAdmittedAddReqAck */ static int hf_xnap_SNodeAdditionRequestReject_PDU = -1; /* SNodeAdditionRequestReject */ static int hf_xnap_SNodeReconfigurationComplete_PDU = -1; /* SNodeReconfigurationComplete */ +static int hf_xnap_ResponseInfo_ReconfCompl_PDU = -1; /* ResponseInfo_ReconfCompl */ static int hf_xnap_SNodeModificationRequest_PDU = -1; /* SNodeModificationRequest */ +static int hf_xnap_UEContextInfo_SNModRequest_PDU = -1; /* UEContextInfo_SNModRequest */ static int hf_xnap_SNodeModificationRequestAcknowledge_PDU = -1; /* SNodeModificationRequestAcknowledge */ +static int hf_xnap_PDUSessionAdmitted_SNModResponse_PDU = -1; /* PDUSessionAdmitted_SNModResponse */ +static int hf_xnap_PDUSessionNotAdmitted_SNModResponse_PDU = -1; /* PDUSessionNotAdmitted_SNModResponse */ static int hf_xnap_SNodeModificationRequestReject_PDU = -1; /* SNodeModificationRequestReject */ static int hf_xnap_SNodeModificationRequired_PDU = -1; /* SNodeModificationRequired */ +static int hf_xnap_PDUSessionToBeModifiedSNModRequired_PDU = -1; /* PDUSessionToBeModifiedSNModRequired */ +static int hf_xnap_PDUSessionToBeReleasedSNModRequired_PDU = -1; /* PDUSessionToBeReleasedSNModRequired */ static int hf_xnap_SNodeModificationConfirm_PDU = -1; /* SNodeModificationConfirm */ +static int hf_xnap_PDUSessionAdmittedModSNModConfirm_PDU = -1; /* PDUSessionAdmittedModSNModConfirm */ +static int hf_xnap_PDUSessionReleasedSNModConfirm_PDU = -1; /* PDUSessionReleasedSNModConfirm */ static int hf_xnap_SNodeModificationRefuse_PDU = -1; /* SNodeModificationRefuse */ static int hf_xnap_SNodeReleaseRequest_PDU = -1; /* SNodeReleaseRequest */ +static int hf_xnap_PDUSessionToBeReleased_RelReq_PDU = -1; /* PDUSessionToBeReleased_RelReq */ static int hf_xnap_SNodeReleaseRequestAcknowledge_PDU = -1; /* SNodeReleaseRequestAcknowledge */ static int hf_xnap_SNodeReleaseReject_PDU = -1; /* SNodeReleaseReject */ static int hf_xnap_SNodeReleaseRequired_PDU = -1; /* SNodeReleaseRequired */ +static int hf_xnap_PDUSessionToBeReleasedList_RelRqd_PDU = -1; /* PDUSessionToBeReleasedList_RelRqd */ static int hf_xnap_SNodeReleaseConfirm_PDU = -1; /* SNodeReleaseConfirm */ +static int hf_xnap_PDUSessionReleasedList_RelConf_PDU = -1; /* PDUSessionReleasedList_RelConf */ static int hf_xnap_SNodeCounterCheckRequest_PDU = -1; /* SNodeCounterCheckRequest */ +static int hf_xnap_BearersSubjectToCounterCheck_List_PDU = -1; /* BearersSubjectToCounterCheck_List */ static int hf_xnap_SNodeChangeRequired_PDU = -1; /* SNodeChangeRequired */ +static int hf_xnap_PDUSession_SNChangeRequired_List_PDU = -1; /* PDUSession_SNChangeRequired_List */ static int hf_xnap_SNodeChangeConfirm_PDU = -1; /* SNodeChangeConfirm */ +static int hf_xnap_PDUSession_SNChangeConfirm_List_PDU = -1; /* PDUSession_SNChangeConfirm_List */ static int hf_xnap_SNodeChangeRefuse_PDU = -1; /* SNodeChangeRefuse */ static int hf_xnap_RRCTransfer_PDU = -1; /* RRCTransfer */ +static int hf_xnap_SplitSRB_RRCTransfer_PDU = -1; /* SplitSRB_RRCTransfer */ +static int hf_xnap_NRUEMeasurementReportRRCTransfer_PDU = -1; /* NRUEMeasurementReportRRCTransfer */ +static int hf_xnap_NotificationControlIndication_PDU = -1; /* NotificationControlIndication */ +static int hf_xnap_PDUSessionResourcesNotifyList_PDU = -1; /* PDUSessionResourcesNotifyList */ +static int hf_xnap_ActivityNotification_PDU = -1; /* ActivityNotification */ +static int hf_xnap_PDUSessionResourcesActivityNotifyList_PDU = -1; /* PDUSessionResourcesActivityNotifyList */ static int hf_xnap_XnSetupRequest_PDU = -1; /* XnSetupRequest */ static int hf_xnap_XnSetupResponse_PDU = -1; /* XnSetupResponse */ static int hf_xnap_XnSetupFailure_PDU = -1; /* XnSetupFailure */ @@ -284,6 +354,10 @@ static int hf_xnap_ConfigurationUpdateInitiatingNodeChoice_PDU = -1; /* Configu static int hf_xnap_NGRANNodeConfigurationUpdateAcknowledge_PDU = -1; /* NGRANNodeConfigurationUpdateAcknowledge */ static int hf_xnap_RespondingNodeTypeConfigUpdateAck_PDU = -1; /* RespondingNodeTypeConfigUpdateAck */ static int hf_xnap_NGRANNodeConfigurationUpdateFailure_PDU = -1; /* NGRANNodeConfigurationUpdateFailure */ +static int hf_xnap_E_UTRA_NR_CellResourceCoordinationRequest_PDU = -1; /* E_UTRA_NR_CellResourceCoordinationRequest */ +static int hf_xnap_InitiatingNodeType_ResourceCoordRequest_PDU = -1; /* InitiatingNodeType_ResourceCoordRequest */ +static int hf_xnap_E_UTRA_NR_CellResourceCoordinationResponse_PDU = -1; /* E_UTRA_NR_CellResourceCoordinationResponse */ +static int hf_xnap_RespondingNodeType_ResourceCoordResponse_PDU = -1; /* RespondingNodeType_ResourceCoordResponse */ static int hf_xnap_XnRemovalRequest_PDU = -1; /* XnRemovalRequest */ static int hf_xnap_XnRemovalResponse_PDU = -1; /* XnRemovalResponse */ static int hf_xnap_XnRemovalFailure_PDU = -1; /* XnRemovalFailure */ @@ -313,9 +387,11 @@ static int hf_xnap_priorityLevel = -1; /* INTEGER_0_15_ */ static int hf_xnap_pre_emption_capability = -1; /* T_pre_emption_capability */ static int hf_xnap_pre_emption_vulnerability = -1; /* T_pre_emption_vulnerability */ static int hf_xnap_iE_Extensions = -1; /* ProtocolExtensionContainer */ -static int hf_xnap_AreaOfInterest_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_AreaOfInterest_item = -1; /* AreaOfInterest_Item */ static int hf_xnap_listOfTAIs = -1; /* ListOfTAIsinAoI */ static int hf_xnap_listOfCells = -1; /* ListOfCells */ +static int hf_xnap_listOfRANNodes = -1; /* ListOfRANNodesinAoI */ +static int hf_xnap_locationReportingReferenceID = -1; /* LocationReportingReferenceID */ static int hf_xnap_key_NG_RAN_Star = -1; /* BIT_STRING_SIZE_256 */ static int hf_xnap_ncc = -1; /* INTEGER_0_7 */ static int hf_xnap_ran_paging_attempt_info = -1; /* RANPagingAttemptInfo */ @@ -327,10 +403,11 @@ static int hf_xnap_radioNetwork = -1; /* CauseRadioNetworkLayer */ static int hf_xnap_transport = -1; /* CauseTransportLayer */ static int hf_xnap_protocol = -1; /* CauseProtocol */ static int hf_xnap_misc = -1; /* CauseMisc */ -static int hf_xnap_choice_extension = -1; /* ProtocolExtensionContainer */ -static int hf_xnap_limitedNR_List = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI */ +static int hf_xnap_choice_extension = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_limitedNR_List = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI */ static int hf_xnap_limitedNR_List_item = -1; /* NR_CGI */ static int hf_xnap_full_List = -1; /* T_full_List */ +static int hf_xnap_eNDC_Support = -1; /* T_eNDC_Support */ static int hf_xnap_pdcp_SN12 = -1; /* INTEGER_0_4095 */ static int hf_xnap_hfn_PDCP_SN12 = -1; /* INTEGER_0_1048575 */ static int hf_xnap_pdcp_SN18 = -1; /* INTEGER_0_262143 */ @@ -344,15 +421,27 @@ static int hf_xnap_CriticalityDiagnostics_IE_List_item = -1; /* CriticalityDiag static int hf_xnap_iECriticality = -1; /* Criticality */ static int hf_xnap_iE_ID = -1; /* ProtocolIE_ID */ static int hf_xnap_typeOfError = -1; /* TypeOfError */ -static int hf_xnap_DataforwardingInfoperPDUSession_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_DataforwardingInfoperPDUSession_item = -1; /* DataforwardingInfoperPDUSession_Item */ static int hf_xnap_pduSession_ID = -1; /* PDUSession_ID */ static int hf_xnap_dlForwardingUPTNL = -1; /* UPTransportLayerInformation */ static int hf_xnap_pduSessionLevelDLDataForwardingInfo = -1; /* UPTransportLayerInformation */ static int hf_xnap_dataForwardingResponseDRBItemList = -1; /* DataForwardingResponseDRBItemList */ -static int hf_xnap_DataForwardingResponseDRBItemList_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_qosFlowsToBeForwarded = -1; /* QoSFLowsToBeForwarded_List */ +static int hf_xnap_sourceDRBtoQoSFlowMapping = -1; /* DRBToQoSFlowMapping_List */ +static int hf_xnap_QoSFLowsToBeForwarded_List_item = -1; /* QoSFLowsToBeForwarded_Item */ +static int hf_xnap_qosFlowIndicator = -1; /* QoSFlowIndicator */ +static int hf_xnap_dl_dataforwarding = -1; /* DLForwarding */ +static int hf_xnap_DataForwardingResponseDRBItemList_item = -1; /* DataForwardingResponseDRBItem */ static int hf_xnap_drb_ID = -1; /* DRB_ID */ static int hf_xnap_ulForwardingUPTNL = -1; /* UPTransportLayerInformation */ -static int hf_xnap_DRBsSubjectToStatusTransfer_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_activationSFN = -1; /* ActivationSFN */ +static int hf_xnap_sharedResourceType = -1; /* SharedResourceType */ +static int hf_xnap_reservedSubframePattern = -1; /* ReservedSubframePattern */ +static int hf_xnap_DRB_List_item = -1; /* DRB_ID */ +static int hf_xnap_DRB_List_withCause_item = -1; /* DRB_List_withCause_Item */ +static int hf_xnap_drb_id = -1; /* DRB_ID */ +static int hf_xnap_cause = -1; /* Cause */ +static int hf_xnap_DRBsSubjectToStatusTransfer_List_item = -1; /* DRBsSubjectToStatusTransfer_Item */ static int hf_xnap_drbID = -1; /* DRB_ID */ static int hf_xnap_statusTransfer = -1; /* DRBBStatusTransferChoice */ static int hf_xnap_pdcp_sn_12bits = -1; /* DRBBStatusTransfer12bitsSN */ @@ -363,11 +452,12 @@ static int hf_xnap_dlCOUNTValue = -1; /* COUNT_PDCP_SN12 */ static int hf_xnap_receiveStatusofPDCPSDU_01 = -1; /* BIT_STRING_SIZE_1_131072 */ static int hf_xnap_ulCOUNTValue_01 = -1; /* COUNT_PDCP_SN18 */ static int hf_xnap_dlCOUNTValue_01 = -1; /* COUNT_PDCP_SN18 */ -static int hf_xnap_DRBToQoSFlowMapping_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_DRBToQoSFlowMapping_List_item = -1; /* DRBToQoSFlowMapping_Item */ static int hf_xnap_qosFlows_List = -1; /* QoSFlows_List */ -static int hf_xnap_priorityLevel_01 = -1; /* INTEGER_1_128 */ +static int hf_xnap_priorityLevelQoS = -1; /* PriorityLevelQoS */ static int hf_xnap_packetDelayBudget = -1; /* PacketDelayBudget */ static int hf_xnap_packetErrorRate = -1; /* PacketErrorRate */ +static int hf_xnap_fiveQI = -1; /* FiveQI */ static int hf_xnap_delayCritical = -1; /* T_delayCritical */ static int hf_xnap_averagingWindow = -1; /* AveragingWindow */ static int hf_xnap_maximumDataBurstVolume = -1; /* MaximumDataBurstVolume */ @@ -391,22 +481,32 @@ static int hf_xnap_enb_id = -1; /* ENB_ID_Choice */ static int hf_xnap_enb_ID_macro = -1; /* BIT_STRING_SIZE_20 */ static int hf_xnap_enb_ID_shortmacro = -1; /* BIT_STRING_SIZE_18 */ static int hf_xnap_enb_ID_longmacro = -1; /* BIT_STRING_SIZE_21 */ +static int hf_xnap_ng_RAN_Cell_id = -1; /* NG_RAN_Cell_Identity */ static int hf_xnap_gNB = -1; /* GlobalgNB_ID */ static int hf_xnap_ng_eNB = -1; /* GlobalngeNB_ID */ static int hf_xnap_tnl_address = -1; /* TransportLayerAddress */ static int hf_xnap_gtp_teid = -1; /* GTP_TEID */ static int hf_xnap_plmn_ID = -1; /* PLMN_Identity */ -static int hf_xnap_amf_region_if = -1; /* OCTET_STRING_SIZE_2 */ -static int hf_xnap_amf_set_id = -1; /* BIT_STRING_SIZE_4 */ -static int hf_xnap_amf_pointer = -1; /* BIT_STRING_SIZE_4 */ +static int hf_xnap_amf_region_if = -1; /* BIT_STRING_SIZE_8 */ +static int hf_xnap_amf_set_id = -1; /* BIT_STRING_SIZE_10 */ +static int hf_xnap_amf_pointer = -1; /* BIT_STRING_SIZE_6 */ +static int hf_xnap_i_RNTI_full = -1; /* BIT_STRING_SIZE_40 */ +static int hf_xnap_i_RNTI_short = -1; /* BIT_STRING_SIZE_24 */ +static int hf_xnap_nG_RAN_Cell = -1; /* LastVisitedNGRANCellInformation */ +static int hf_xnap_e_UTRAN_Cell = -1; /* LastVisitedEUTRANCellInformation */ +static int hf_xnap_uTRAN_Cell = -1; /* LastVisitedUTRANCellInformation */ +static int hf_xnap_gERAN_Cell = -1; /* LastVisitedGERANCellInformation */ static int hf_xnap_ListOfCells_item = -1; /* CellsinAoI_Item */ static int hf_xnap_pLMN_Identity = -1; /* PLMN_Identity */ static int hf_xnap_ng_ran_cell_id = -1; /* NG_RAN_Cell_Identity */ +static int hf_xnap_ListOfRANNodesinAoI_item = -1; /* GlobalNG_RANNodesinAoI_Item */ +static int hf_xnap_global_NG_RAN_Node_ID = -1; /* GlobalNG_RANNode_ID */ static int hf_xnap_ListOfTAIsinAoI_item = -1; /* TAIsinAoI_Item */ static int hf_xnap_tAC = -1; /* TAC */ static int hf_xnap_eventType = -1; /* EventType */ static int hf_xnap_reportArea = -1; /* ReportArea */ static int hf_xnap_areaOfInterest = -1; /* AreaOfInterest */ +static int hf_xnap_maxIPrate = -1; /* MaxIPrate */ static int hf_xnap_oneframe = -1; /* BIT_STRING_SIZE_6 */ static int hf_xnap_fourframes = -1; /* BIT_STRING_SIZE_24 */ static int hf_xnap_MBSFNSubframeInfo_E_UTRA_item = -1; /* MBSFNSubframeInfo_E_UTRA_Item */ @@ -435,8 +535,12 @@ static int hf_xnap_e_utra_PCI = -1; /* E_UTRAPCI */ static int hf_xnap_e_utra_cgi = -1; /* E_UTRA_CGI */ static int hf_xnap_earfcn = -1; /* E_UTRAARFCN */ static int hf_xnap_tac = -1; /* TAC */ +static int hf_xnap_ranac = -1; /* RANAC */ static int hf_xnap_NeighbourInformation_NR_item = -1; /* NeighbourInformation_NR_Item */ +static int hf_xnap_nr_PCI = -1; /* NRPCI */ +static int hf_xnap_nr_cgi = -1; /* NR_CGI */ static int hf_xnap_nr_mode_info = -1; /* NeighbourInformation_NR_ModeInfo */ +static int hf_xnap_connectivitySupport = -1; /* Connectivity_Support */ static int hf_xnap_fdd_info = -1; /* NeighbourInformation_NR_ModeFDDInfo */ static int hf_xnap_tdd_info = -1; /* NeighbourInformation_NR_ModeTDDInfo */ static int hf_xnap_ul_NR_FreqInfo = -1; /* NRFrequencyInfo */ @@ -447,7 +551,6 @@ static int hf_xnap_nr = -1; /* NR_Cell_Identity */ static int hf_xnap_e_utra = -1; /* E_UTRA_Cell_Identity */ static int hf_xnap_nr_01 = -1; /* NRPCI */ static int hf_xnap_e_utra_01 = -1; /* E_UTRAPCI */ -static int hf_xnap_fiveQI = -1; /* INTEGER_0_255 */ static int hf_xnap_NG_RAN_Cell_Identity_ListinRANPagingArea_item = -1; /* NG_RAN_Cell_Identity */ static int hf_xnap_nr_CI = -1; /* NR_Cell_Identity */ static int hf_xnap_NRFrequencyBand_List_item = -1; /* NRFrequencyBandItem */ @@ -464,22 +567,108 @@ static int hf_xnap_ulNRTransmissonBandwidth = -1; /* NRTransmissionBandwidth */ static int hf_xnap_dlNRTransmissonBandwidth = -1; /* NRTransmissionBandwidth */ static int hf_xnap_nrFrequencyInfo = -1; /* NRFrequencyInfo */ static int hf_xnap_nrTransmissonBandwidth = -1; /* NRTransmissionBandwidth */ -static int hf_xnap_PDUSessionResourcesAdmitted_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_nRSCS = -1; /* NRSCS */ +static int hf_xnap_nRNRB = -1; /* NRNRB */ +static int hf_xnap_pER_Scalar = -1; /* PER_Scalar */ +static int hf_xnap_pER_Exponent = -1; /* PER_Exponent */ +static int hf_xnap_from_S_NG_RAN_node = -1; /* T_from_S_NG_RAN_node */ +static int hf_xnap_from_M_NG_RAN_node = -1; /* T_from_M_NG_RAN_node */ +static int hf_xnap_downlink_session_AMBR = -1; /* BitRate */ +static int hf_xnap_uplink_session_AMBR = -1; /* BitRate */ +static int hf_xnap_PDUSession_List_item = -1; /* PDUSession_ID */ +static int hf_xnap_PDUSession_List_withCause_item = -1; /* PDUSession_List_withCause_Item */ static int hf_xnap_pduSessionId = -1; /* PDUSession_ID */ +static int hf_xnap_PDUSession_List_withDataForwardingFromTarget_item = -1; /* PDUSession_List_withDataForwardingFromTarget_Item */ +static int hf_xnap_dataforwardinginfoTarget = -1; /* DataForwardingInfoFromTargetNGRANnode */ +static int hf_xnap_PDUSession_List_withDataForwardingRequest_item = -1; /* PDUSession_List_withDataForwardingRequest_Item */ +static int hf_xnap_dataforwardingRequest_List = -1; /* DataforwardingRequest_List */ +static int hf_xnap_PDUSessionResourcesAdmitted_List_item = -1; /* PDUSessionResourcesAdmitted_Item */ static int hf_xnap_pduSessionResourceAdmittedInfo = -1; /* PDUSessionResourceAdmittedInfo */ static int hf_xnap_qosFlowsAdmitted_List = -1; /* QoSFlowsAdmitted_List */ static int hf_xnap_qosFlowsNotAdmitted_List = -1; /* QoSFlowsNotAdmitted_List */ static int hf_xnap_dataForwardingInfoFromTarget = -1; /* DataForwardingInfoFromTargetNGRANnode */ -static int hf_xnap_PDUSessionResourcesNotAdmitted_List_item = -1; /* ProtocolIE_Single_Container */ -static int hf_xnap_cause = -1; /* Cause */ -static int hf_xnap_PDUSessionResourcesToBeSetup_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_PDUSessionResourcesNotAdmitted_List_item = -1; /* PDUSessionResourcesNotAdmitted_Item */ +static int hf_xnap_PDUSessionResourcesToBeSetup_List_item = -1; /* PDUSessionResourcesToBeSetup_Item */ static int hf_xnap_s_NSSAI = -1; /* S_NSSAI */ -static int hf_xnap_pduSessionAMBR = -1; /* OCTET_STRING */ +static int hf_xnap_pduSessionAMBR = -1; /* PDUSessionAggregateMaximumBitRate */ static int hf_xnap_uL_NG_U_TNLatUPF = -1; /* UPTransportLayerInformation */ static int hf_xnap_securityIndication = -1; /* SecurityIndication */ static int hf_xnap_pduSessionType = -1; /* PDUSessionType */ static int hf_xnap_qosFlowsToBeSetup_List = -1; /* QoSFlowsToBeSetup_List */ -static int hf_xnap_sourceDRBtoQoSFlowMapping = -1; /* DRBToQoSFlowMapping_List */ +static int hf_xnap_qosFlowsToBeSetup_List_01 = -1; /* QoSFlowsToBeSetup_List_Setup_SNterminated */ +static int hf_xnap_dlForwarding = -1; /* DLForwarding */ +static int hf_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_item = -1; /* QoSFlowsToBeSetup_List_Setup_SNterminated_Item */ +static int hf_xnap_qfi = -1; /* QoSFlowIndicator */ +static int hf_xnap_qosFlowLevelQoSParameters = -1; /* QoSFlowLevelQoSParameters */ +static int hf_xnap_offeredGBRQoSFlowInfo = -1; /* GBRQoSFlowInfo */ +static int hf_xnap_dL_NG_U_TNLatNG_RAN = -1; /* UPTransportLayerInformation */ +static int hf_xnap_dRBsToBeSetup = -1; /* DRBsToBeSetupList_SetupResponse_SNterminated */ +static int hf_xnap_qosFlowsNotAdmittedList = -1; /* QoSFlows_List_withCause */ +static int hf_xnap_dLForwardingUPTNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_uLForwardingUPTNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_securityResult = -1; /* SecurityResult */ +static int hf_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_item = -1; /* DRBsToBeSetupList_SetupResponse_SNterminated_Item */ +static int hf_xnap_sN_UL_PDCP_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_dRB_QoS = -1; /* QoSFlowLevelQoSParameters */ +static int hf_xnap_pDCP_SNLength = -1; /* PDCPSNLength */ +static int hf_xnap_rLC_Mode = -1; /* RLCMode */ +static int hf_xnap_secondary_SN_UL_PDCP_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_duplicationActivation = -1; /* DuplicationActivation */ +static int hf_xnap_qoSFlowsMappedtoDRB_SetupResponse_SNterminated = -1; /* QoSFlowsMappedtoDRB_SetupResponse_SNterminated */ +static int hf_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_item = -1; /* QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item */ +static int hf_xnap_qoSFlowIndicator = -1; /* QoSFlowIndicator */ +static int hf_xnap_mCGRequestedGBRQoSFlowInfo = -1; /* GBRQoSFlowInfo */ +static int hf_xnap_dRBsToBeSetup_01 = -1; /* DRBsToBeSetupList_Setup_MNterminated */ +static int hf_xnap_DRBsToBeSetupList_Setup_MNterminated_item = -1; /* DRBsToBeSetupList_Setup_MNterminated_Item */ +static int hf_xnap_mN_UL_PDCP_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_secondary_MN_UL_PDCP_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_qoSFlowsMappedtoDRB_Setup_MNterminated = -1; /* QoSFlowsMappedtoDRB_Setup_MNterminated */ +static int hf_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_item = -1; /* QoSFlowsMappedtoDRB_Setup_MNterminated_Item */ +static int hf_xnap_qoSFlowLevelQoSParameters = -1; /* QoSFlowLevelQoSParameters */ +static int hf_xnap_dRBsAdmittedList = -1; /* DRBsAdmittedList_SetupResponse_MNterminated */ +static int hf_xnap_DRBsAdmittedList_SetupResponse_MNterminated_item = -1; /* DRBsAdmittedList_SetupResponse_MNterminated_Item */ +static int hf_xnap_sN_DL_SCG_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_secondary_SN_DL_SCG_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_lCID = -1; /* LCID */ +static int hf_xnap_qosFlowsToBeModified_List = -1; /* QoSFlowsToBeSetup_List_Modified_SNterminated */ +static int hf_xnap_qoSFlowsToBeReleased_List = -1; /* QoSFlows_List_withCause */ +static int hf_xnap_drbsToBeModifiedList = -1; /* DRBsToBeModified_List_Modified_SNterminated */ +static int hf_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_item = -1; /* QoSFlowsToBeSetup_List_Modified_SNterminated_Item */ +static int hf_xnap_DRBsToBeModified_List_Modified_SNterminated_item = -1; /* DRBsToBeModified_List_Modified_SNterminated_Item */ +static int hf_xnap_mN_DL_PDCP_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_secondary_MN_DL_PDCP_UP_TNLInfo = -1; /* UPTransportLayerInformation */ +static int hf_xnap_dRBsToBeModified = -1; /* DRBsToBeModifiedList_ModificationResponse_SNterminated */ +static int hf_xnap_dRBsToBeReleased = -1; /* DRB_List_withCause */ +static int hf_xnap_qosFlowsReleased = -1; /* QoSFlows_List_withCause */ +static int hf_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_item = -1; /* DRBsToBeModifiedList_ModificationResponse_SNterminated_Item */ +static int hf_xnap_dRBsToBeModified_01 = -1; /* DRBsToBeModifiedList_Modification_MNterminated */ +static int hf_xnap_DRBsToBeModifiedList_Modification_MNterminated_item = -1; /* DRBsToBeModifiedList_Modification_MNterminated_Item */ +static int hf_xnap_dRBsAdmittedList_01 = -1; /* DRBsAdmittedList_ModificationResponse_MNterminated */ +static int hf_xnap_dRBsReleasedList = -1; /* DRB_List */ +static int hf_xnap_dRBsNotAdmittedSetupModifyList = -1; /* DRB_List_withCause */ +static int hf_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_item = -1; /* DRBsAdmittedList_ModificationResponse_MNterminated_Item */ +static int hf_xnap_drbsToBeSetupList = -1; /* DRBsToBeSetup_List_ModRqd_SNterminated */ +static int hf_xnap_drbsToBeModifiedList_01 = -1; /* DRBsToBeModified_List_ModRqd_SNterminated */ +static int hf_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_item = -1; /* DRBsToBeSetup_List_ModRqd_SNterminated_Item */ +static int hf_xnap_uL_Xn_U_TNLinfoatSN = -1; /* UPTransportLayerInformation */ +static int hf_xnap_qoSFlowsMappedtoDRB_ModRqd_SNterminated = -1; /* QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated */ +static int hf_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_item = -1; /* QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item */ +static int hf_xnap_DRBsToBeModified_List_ModRqd_SNterminated_item = -1; /* DRBsToBeModified_List_ModRqd_SNterminated_Item */ +static int hf_xnap_qoSFlowsMappedtoDRB_ModRqd_SNterminated_01 = -1; /* QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated */ +static int hf_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_item = -1; /* QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item */ +static int hf_xnap_dRBsAdmittedList_02 = -1; /* DRBsAdmittedList_ModConfirm_SNterminated */ +static int hf_xnap_DRBsAdmittedList_ModConfirm_SNterminated_item = -1; /* DRBsAdmittedList_ModConfirm_SNterminated_Item */ +static int hf_xnap_sN_Xn_U_TNLInfoatMN = -1; /* UPTransportLayerInformation */ +static int hf_xnap_protectedResourceList = -1; /* ProtectedE_UTRAResourceList */ +static int hf_xnap_mbsfnControlRegionLength = -1; /* MBSFNControlRegionLength */ +static int hf_xnap_pDCCHRegionLength = -1; /* INTEGER_1_3 */ +static int hf_xnap_ProtectedE_UTRAResourceList_item = -1; /* ProtectedE_UTRAResource_Item */ +static int hf_xnap_resourceType = -1; /* T_resourceType */ +static int hf_xnap_intra_PRBProtectedResourceFootprint = -1; /* BIT_STRING_SIZE_84_ */ +static int hf_xnap_protectedFootprintFrequencyPattern = -1; /* BIT_STRING_SIZE_6_110_ */ +static int hf_xnap_protectedFootprintTimePattern = -1; /* ProtectedE_UTRAFootprintTimePattern */ +static int hf_xnap_protectedFootprintTimeperiodicity = -1; /* INTEGER_1_320_ */ +static int hf_xnap_protectedFootrpintStartTime = -1; /* INTEGER_1_20_ */ static int hf_xnap_non_dynamic = -1; /* NonDynamic5QIDescriptor */ static int hf_xnap_dynamic = -1; /* Dynamic5QIDescriptor */ static int hf_xnap_qos_characteristics = -1; /* QoSCharacteristics */ @@ -487,15 +676,15 @@ static int hf_xnap_allocationAndRetentionPrio = -1; /* AllocationandRetentionPr static int hf_xnap_gBRQoSFlowInfo = -1; /* GBRQoSFlowInfo */ static int hf_xnap_relectiveQoS = -1; /* ReflectiveQoSAttribute */ static int hf_xnap_additionalQoSflowInfo = -1; /* T_additionalQoSflowInfo */ -static int hf_xnap_pPI = -1; /* INTEGER_1_8_ */ -static int hf_xnap_QoSFlows_List_item = -1; /* ProtocolIE_Single_Container */ -static int hf_xnap_qfi = -1; /* QoSFlowIndicator */ -static int hf_xnap_QoSFlowsAdmitted_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_QoSFlowNotificationControlIndicationInfo_item = -1; /* QoSFlowNotify_Item */ +static int hf_xnap_notificationInformation = -1; /* T_notificationInformation */ +static int hf_xnap_QoSFlows_List_item = -1; /* QoSFlow_Item */ +static int hf_xnap_QoSFlows_List_withCause_item = -1; /* QoSFlowwithCause_Item */ +static int hf_xnap_QoSFlowsAdmitted_List_item = -1; /* QoSFlowAdmitted_Item */ static int hf_xnap_dataForwardingAccepted = -1; /* DataForwardingAccepted */ -static int hf_xnap_QoSFlowsNotAdmitted_List_item = -1; /* ProtocolIE_Single_Container */ -static int hf_xnap_QoSFlowsToBeSetup_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_QoSFlowsNotAdmitted_List_item = -1; /* QoSFlowNotAdmitted_Item */ +static int hf_xnap_QoSFlowsToBeSetup_List_item = -1; /* QoSFlowsToBeSetup_Item */ static int hf_xnap_dlDataForwarding = -1; /* DLForwarding */ -static int hf_xnap_qosFlowLevelQoSParameters = -1; /* QoSFlowLevelQoSParameters */ static int hf_xnap_e_RAB_ID = -1; /* E_RAB_ID */ static int hf_xnap_rANAC = -1; /* RANAC */ static int hf_xnap_RANAreaID_List_item = -1; /* RANAreaID */ @@ -505,18 +694,23 @@ static int hf_xnap_rANAreaID_List = -1; /* RANAreaID_List */ static int hf_xnap_pagingAttemptCount = -1; /* INTEGER_1_16_ */ static int hf_xnap_intendedNumberOfPagingAttempts = -1; /* INTEGER_1_16_ */ static int hf_xnap_nextPagingAreaScope = -1; /* T_nextPagingAreaScope */ +static int hf_xnap_subframeType = -1; /* T_subframeType */ +static int hf_xnap_reservedSubframePattern_01 = -1; /* BIT_STRING_SIZE_10_160 */ static int hf_xnap_fullReset = -1; /* ResetRequestTypeInfo_Full */ static int hf_xnap_partialReset = -1; /* ResetRequestTypeInfo_Partial */ static int hf_xnap_ue_contexts_ToBeReleasedList = -1; /* ResetRequestPartialReleaseList */ -static int hf_xnap_ResetRequestPartialReleaseList_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_ResetRequestPartialReleaseList_item = -1; /* ResetRequestPartialReleaseItem */ static int hf_xnap_ng_ran_node1UEXnAPID = -1; /* NG_RANnodeUEXnAPID */ static int hf_xnap_ng_ran_node2UEXnAPID = -1; /* NG_RANnodeUEXnAPID */ static int hf_xnap_fullReset_01 = -1; /* ResetResponseTypeInfo_Full */ static int hf_xnap_partialReset_01 = -1; /* ResetResponseTypeInfo_Partial */ static int hf_xnap_ue_contexts_AdmittedToBeReleasedList = -1; /* ResetResponsePartialReleaseList */ -static int hf_xnap_ResetResponsePartialReleaseList_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_ResetResponsePartialReleaseList_item = -1; /* ResetResponsePartialReleaseItem */ static int hf_xnap_integrityProtectionIndication = -1; /* T_integrityProtectionIndication */ static int hf_xnap_confidentialityProtectionIndication = -1; /* T_confidentialityProtectionIndication */ +static int hf_xnap_maximumIPdatarate = -1; /* MaximumIPdatarate */ +static int hf_xnap_integrityProtectionResult = -1; /* T_integrityProtectionResult */ +static int hf_xnap_confidentialityProtectionResult = -1; /* T_confidentialityProtectionResult */ static int hf_xnap_e_utra_pci = -1; /* E_UTRAPCI */ static int hf_xnap_broadcastPLMNs = -1; /* SEQUENCE_SIZE_1_maxnoofBPLMNs_OF_ServedCellInformation_E_UTRA_perBPLMN */ static int hf_xnap_broadcastPLMNs_item = -1; /* ServedCellInformation_E_UTRA_perBPLMN */ @@ -526,6 +720,7 @@ static int hf_xnap_mBSFNsubframeInfo = -1; /* MBSFNSubframeInfo_E_UTRA */ static int hf_xnap_multibandInfo = -1; /* E_UTRAMultibandInfoList */ static int hf_xnap_freqBandIndicatorPriority = -1; /* T_freqBandIndicatorPriority */ static int hf_xnap_bandwidthReducedSI = -1; /* T_bandwidthReducedSI */ +static int hf_xnap_protectedE_UTRAResourceIndication = -1; /* ProtectedE_UTRAResourceIndication */ static int hf_xnap_e_utra_mode_info = -1; /* ServedCellInformation_E_UTRA_perBPLMN_ModeInfo */ static int hf_xnap_fdd_01 = -1; /* ServedCellInformation_E_UTRA_perBPLMN_FDDInfo */ static int hf_xnap_tdd_01 = -1; /* ServedCellInformation_E_UTRA_perBPLMN_TDDInfo */ @@ -542,24 +737,34 @@ static int hf_xnap_neighbour_info_NR = -1; /* NeighbourInformation_NR */ static int hf_xnap_neighbour_info_E_UTRA = -1; /* NeighbourInformation_E_UTRA */ static int hf_xnap_served_Cells_ToAdd_E_UTRA = -1; /* ServedCells_E_UTRA */ static int hf_xnap_served_Cells_ToModify_E_UTRA = -1; /* ServedCells_ToModify_E_UTRA */ -static int hf_xnap_served_Cells_ToDelete_E_UTRA = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI */ +static int hf_xnap_served_Cells_ToDelete_E_UTRA = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI */ static int hf_xnap_served_Cells_ToDelete_E_UTRA_item = -1; /* E_UTRA_CGI */ static int hf_xnap_ServedCells_ToModify_E_UTRA_item = -1; /* ServedCells_ToModify_E_UTRA_Item */ static int hf_xnap_old_ECGI = -1; /* E_UTRA_CGI */ static int hf_xnap_nrPCI = -1; /* NRPCI */ static int hf_xnap_cellID = -1; /* NR_CGI */ -static int hf_xnap_ranac = -1; /* RANAC */ static int hf_xnap_broadcastPLMN = -1; /* BroadcastPLMNs */ static int hf_xnap_nrModeInfo = -1; /* NRModeInfo */ static int hf_xnap_measurementTimingConfiguration = -1; /* T_measurementTimingConfiguration */ +static int hf_xnap_nrscs_ssb = -1; /* NRSCS_SSB */ static int hf_xnap_ServedCells_NR_item = -1; /* ServedCells_NR_Item */ static int hf_xnap_served_cell_info_NR = -1; /* ServedCellInformation_NR */ static int hf_xnap_ServedCells_ToModify_NR_item = -1; /* ServedCells_ToModify_NR_Item */ static int hf_xnap_old_NR_CGI = -1; /* NR_CGI */ +static int hf_xnap_deactivation_indication = -1; /* T_deactivation_indication */ static int hf_xnap_served_Cells_ToAdd_NR = -1; /* ServedCells_NR */ static int hf_xnap_served_Cells_ToModify_NR = -1; /* ServedCells_ToModify_NR */ -static int hf_xnap_served_Cells_ToDelete_NR = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI */ +static int hf_xnap_served_Cells_ToDelete_NR = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI */ static int hf_xnap_served_Cells_ToDelete_NR_item = -1; /* NR_CGI */ +static int hf_xnap_ul_onlySharing = -1; /* SharedResourceType_UL_OnlySharing */ +static int hf_xnap_ul_and_dl_Sharing = -1; /* SharedResourceType_ULDL_Sharing */ +static int hf_xnap_ul_resourceBitmap = -1; /* DataTrafficResources */ +static int hf_xnap_ul_resources = -1; /* SharedResourceType_ULDL_Sharing_UL_Resources */ +static int hf_xnap_dl_resources = -1; /* SharedResourceType_ULDL_Sharing_DL_Resources */ +static int hf_xnap_unchanged = -1; /* NULL */ +static int hf_xnap_changed = -1; /* SharedResourceType_ULDL_Sharing_UL_ResourcesChanged */ +static int hf_xnap_changed_01 = -1; /* SharedResourceType_ULDL_Sharing_DL_ResourcesChanged */ +static int hf_xnap_dl_resourceBitmap = -1; /* DataTrafficResources */ static int hf_xnap_SliceSupport_List_item = -1; /* S_NSSAI */ static int hf_xnap_sst = -1; /* OCTET_STRING_SIZE_1 */ static int hf_xnap_sd = -1; /* OCTET_STRING_SIZE_3 */ @@ -570,7 +775,7 @@ static int hf_xnap_sulFrequencyInfo = -1; /* NRARFCN */ static int hf_xnap_sulTransmissionBandwidth = -1; /* NRTransmissionBandwidth */ static int hf_xnap_SupportedSULBandList_item = -1; /* SupportedSULBandItem */ static int hf_xnap_sulBandItem = -1; /* SUL_FrequencyBand */ -static int hf_xnap_TAISupport_List_item = -1; /* ProtocolIE_Single_Container */ +static int hf_xnap_TAISupport_List_item = -1; /* TAISupport_Item */ static int hf_xnap_broadcastPLMNs_01 = -1; /* SEQUENCE_SIZE_1_maxnoofsupportedPLMNs_OF_BroadcastPLMNinTAISupport_Item */ static int hf_xnap_broadcastPLMNs_item_01 = -1; /* BroadcastPLMNinTAISupport_Item */ static int hf_xnap_nr_02 = -1; /* NR_CGI */ @@ -592,10 +797,12 @@ static int hf_xnap_signalling_TNL_at_source = -1; /* CPTransportLayerInformatio static int hf_xnap_ueSecurityCapabilities = -1; /* UESecurityCapabilities */ static int hf_xnap_securityInformation = -1; /* AS_SecurityInformation */ static int hf_xnap_ue_AMBR = -1; /* UEAggregateMaximumBitRate */ -static int hf_xnap_pduSessionResourcesToBeSet_List = -1; /* PDUSessionResourcesToBeSetup_List */ +static int hf_xnap_pduSessionResourcesToBeSetup_List = -1; /* PDUSessionResourcesToBeSetup_List */ static int hf_xnap_rrc_Context = -1; /* T_rrc_Context */ static int hf_xnap_mobilityRestrictionList = -1; /* MobilityRestrictionList */ static int hf_xnap_indexToRatFrequencySelectionPriority = -1; /* RFSP_Index */ +static int hf_xnap_UEHistoryInformation_item = -1; /* LastVisitedCell_Item */ +static int hf_xnap_indexLength10 = -1; /* BIT_STRING_SIZE_10 */ static int hf_xnap_i_RNTI = -1; /* I_RNTI */ static int hf_xnap_nr_EncyptionAlgorithms = -1; /* T_nr_EncyptionAlgorithms */ static int hf_xnap_nr_IntegrityProtectionAlgorithms = -1; /* T_nr_IntegrityProtectionAlgorithms */ @@ -605,18 +812,112 @@ static int hf_xnap_gtpTunnel = -1; /* GTPtunnelTransportLayerInfo static int hf_xnap_protocolIEs = -1; /* ProtocolIE_Container */ static int hf_xnap_ng_c_UE_reference = -1; /* AMF_UE_NGAP_ID */ static int hf_xnap_cp_TNL_info_source = -1; /* CPTransportLayerInformation */ -static int hf_xnap_pduSessionResourcesToBeSetup_List = -1; /* PDUSessionResourcesToBeSetup_List */ static int hf_xnap_rrc_Context_01 = -1; /* T_rrc_Context_01 */ static int hf_xnap_locationReportingInformation = -1; /* LocationReportingInformation */ -static int hf_xnap_hlr = -1; /* MobilityRestrictionList */ +static int hf_xnap_mrl = -1; /* MobilityRestrictionList */ +static int hf_xnap_globalNG_RANNode_ID = -1; /* GlobalNG_RANNode_ID */ +static int hf_xnap_sN_NG_RANnodeUEXnAPID = -1; /* NG_RANnodeUEXnAPID */ +static int hf_xnap_PDUSessionToBeAddedAddReq_item = -1; /* PDUSessionToBeAddedAddReq_Item */ +static int hf_xnap_sN_PDUSessionAMBR = -1; /* PDUSessionAggregateMaximumBitRate */ +static int hf_xnap_bearerConfigToBeAdded = -1; /* BearerConfigToBeAdded_AddReq */ +static int hf_xnap_BearerConfigToBeAdded_AddReq_item = -1; /* BearerConfigToBeAdded_AddReq_Item */ +static int hf_xnap_sn_terminated = -1; /* PDUSessionResourceSetupInfo_SNterminated */ +static int hf_xnap_mn_terminated = -1; /* PDUSessionResourceSetupInfo_MNterminated */ +static int hf_xnap_PDUSessionAdmittedAddedAddReqAck_item = -1; /* PDUSessionAdmittedAddedAddReqAck_Item */ +static int hf_xnap_bearerConfigAdmittedToBeAdded = -1; /* BearerConfigAdmittedToBeAdded_AddReqAck */ +static int hf_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_item = -1; /* BearerConfigAdmittedToBeAdded_AddReqAck_Item */ +static int hf_xnap_sn_terminated_01 = -1; /* PDUSessionResourceSetupResponseInfo_SNterminated */ +static int hf_xnap_mn_terminated_01 = -1; /* PDUSessionResourceSetupResponseInfo_MNterminated */ +static int hf_xnap_pduSessionResourcesNotAdmitted_SNterminated = -1; /* PDUSessionResourcesNotAdmitted_List */ +static int hf_xnap_pduSessionResourcesNotAdmitted_MNterminated = -1; /* PDUSessionResourcesNotAdmitted_List */ +static int hf_xnap_responseType_ReconfComplete = -1; /* ResponseType_ReconfComplete */ +static int hf_xnap_configuration_successfully_applied = -1; /* Configuration_successfully_applied */ +static int hf_xnap_configuration_rejected_by_M_NG_RANNode = -1; /* Configuration_rejected_by_M_NG_RANNode */ +static int hf_xnap_m_NG_RANNode_to_S_NG_RANNode_Container = -1; /* T_m_NG_RANNode_to_S_NG_RANNode_Container */ +static int hf_xnap_m_NG_RANNode_to_S_NG_RANNode_Container_01 = -1; /* T_m_NG_RANNode_to_S_NG_RANNode_Container_01 */ +static int hf_xnap_s_ng_RANnode_SecurityKey = -1; /* S_NG_RANnode_SecurityKey */ +static int hf_xnap_lowerLayerPresenceStatusChange = -1; /* LowerLayerPresenceStatusChange */ +static int hf_xnap_bearerConfigToBeAdded_01 = -1; /* PDUSessionsToBeAdded_SNModRequest_List */ +static int hf_xnap_bearerConfigToBeModified = -1; /* PDUSessionsToBeModified_SNModRequest_List */ +static int hf_xnap_bearerConfigToBeReleased = -1; /* PDUSessionsToBeReleased_SNModRequest_List */ +static int hf_xnap_PDUSessionsToBeAdded_SNModRequest_List_item = -1; /* PDUSessionsToBeAdded_SNModRequest_Item */ +static int hf_xnap_bearerConfigToBeAdded_02 = -1; /* BearerConfigToBeAdded_SNModRequest */ +static int hf_xnap_BearerConfigToBeAdded_SNModRequest_item = -1; /* BearerConfigToBeAdded_SNModRequest_Item */ +static int hf_xnap_PDUSessionsToBeModified_SNModRequest_List_item = -1; /* PDUSessionsToBeModified_SNModRequest_Item */ +static int hf_xnap_bearerConfigToBeModified_01 = -1; /* BearerConfigToBeModified_SNModRequest */ +static int hf_xnap_BearerConfigToBeModified_SNModRequest_item = -1; /* BearerConfigToBeModified_SNModRequest_Item */ +static int hf_xnap_sn_terminated_02 = -1; /* PDUSessionResourceModificationInfo_SNterminated */ +static int hf_xnap_mn_terminated_02 = -1; /* PDUSessionResourceModificationInfo_MNterminated */ +static int hf_xnap_sn_terminated_03 = -1; /* OCTET_STRING */ +static int hf_xnap_mn_terminated_03 = -1; /* OCTET_STRING */ +static int hf_xnap_pduSessionResourcesAdmittedToBeAdded = -1; /* PDUSessionAdmittedToBeAddedSNModResponse */ +static int hf_xnap_pduSessionResourcesAdmittedToBeModified = -1; /* PDUSessionAdmittedToBeModifiedSNModResponse */ +static int hf_xnap_pduSessionResourcesAdmittedToBeReleased = -1; /* PDUSessionAdmittedToBeReleasedSNModResponse */ +static int hf_xnap_PDUSessionAdmittedToBeAddedSNModResponse_item = -1; /* PDUSessionAdmittedToBeAddedSNModResponse_Item */ +static int hf_xnap_bearerConfigs = -1; /* BearerConfigToBeAdded_SNModResponse_List */ +static int hf_xnap_BearerConfigToBeAdded_SNModResponse_List_item = -1; /* BearerConfigToBeAdded_SNModResponse_Item */ +static int hf_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_item = -1; /* PDUSessionAdmittedToBeModifiedSNModResponse_Item */ +static int hf_xnap_bearerConfigs_01 = -1; /* BearerConfigToBeModified_SNModResponse_List */ +static int hf_xnap_BearerConfigToBeModified_SNModResponse_List_item = -1; /* BearerConfigToBeModified_SNModResponse_Item */ +static int hf_xnap_sn_terminated_04 = -1; /* PDUSessionResourceModificationResponseInfo_SNterminated */ +static int hf_xnap_mn_terminated_04 = -1; /* PDUSessionResourceModificationResponseInfo_MNterminated */ +static int hf_xnap_PDUSessionToBeModifiedSNModRequired_item = -1; /* PDUSessionToBeModifiedSNModRequired_Item */ +static int hf_xnap_bearerConfigurations = -1; /* BearerConfigToBeModifiedSNModRequired_List */ +static int hf_xnap_BearerConfigToBeModifiedSNModRequired_List_item = -1; /* BearerConfigToBeModifiedSNModRequired_Item */ +static int hf_xnap_sn_terminated_05 = -1; /* PDUSessionResourceModRqdInfo_SNterminated */ +static int hf_xnap_mn_terminated_05 = -1; /* PDUSessionResourceModRqdInfo_SNterminated */ +static int hf_xnap_sn_terminated_06 = -1; /* PDUSession_List_withDataForwardingRequest */ +static int hf_xnap_mn_terminated_06 = -1; /* PDUSession_List_withCause */ +static int hf_xnap_PDUSessionAdmittedModSNModConfirm_item = -1; /* PDUSessionAdmittedModSNModConfirm_Item */ +static int hf_xnap_bearerConfigurations_01 = -1; /* BearerConfigAdmittedModSNModConfirm */ +static int hf_xnap_BearerConfigAdmittedModSNModConfirm_item = -1; /* BearerConfigAdmittedModSNModConfirm_Item */ +static int hf_xnap_sn_terminated_07 = -1; /* PDUSessionResourceModConfirmInfo_SNterminated */ +static int hf_xnap_mn_terminated_07 = -1; /* PDUSessionResourceModConfirmInfo_MNterminated */ +static int hf_xnap_sn_terminated_08 = -1; /* PDUSession_List_withDataForwardingFromTarget */ +static int hf_xnap_mn_terminated_08 = -1; /* PDUSession_List */ +static int hf_xnap_pduSessionsToBeReleasedList_SNterminated = -1; /* PDUSession_List_withDataForwardingRequest */ +static int hf_xnap_pduSessionsReleasedList_SNterminated = -1; /* PDUSession_List_withDataForwardingFromTarget */ +static int hf_xnap_BearersSubjectToCounterCheck_List_item = -1; /* BearersSubjectToCounterCheck_Item */ +static int hf_xnap_ul_count = -1; /* INTEGER_0_4294967295 */ +static int hf_xnap_dl_count = -1; /* INTEGER_0_4294967295 */ +static int hf_xnap_PDUSession_SNChangeRequired_List_item = -1; /* PDUSession_SNChangeRequired_Item */ +static int hf_xnap_bearerConfigToBeAdded_03 = -1; /* BearerConfigToBeAdded_ChangeRqd */ +static int hf_xnap_BearerConfigToBeAdded_ChangeRqd_item = -1; /* BearerConfigToBeAdded_ChangeRqd_Item */ +static int hf_xnap_sn_terminated_09 = -1; /* PDUSessionResourceChangeRequiredInfo_SNterminated */ +static int hf_xnap_mn_terminated_09 = -1; /* PDUSessionResourceChangeRequiredInfo_MNterminated */ +static int hf_xnap_PDUSession_SNChangeConfirm_List_item = -1; /* PDUSession_SNChangeConfirm_Item */ +static int hf_xnap_bearerConfigToBeAdded_04 = -1; /* BearerConfig_ChangeConfirm */ +static int hf_xnap_BearerConfig_ChangeConfirm_item = -1; /* BearerConfig_ChangeConfirm_Item */ +static int hf_xnap_sn_terminated_10 = -1; /* PDUSessionResourceChangeConfirmInfo_SNterminated */ +static int hf_xnap_mn_terminated_10 = -1; /* PDUSessionResourceChangeConfirmInfo_MNterminated */ +static int hf_xnap_rrcContainer = -1; /* OCTET_STRING */ +static int hf_xnap_srbType = -1; /* T_srbType */ +static int hf_xnap_deliveryStatus = -1; /* DeliveryStatus */ +static int hf_xnap_rrcContainer_01 = -1; /* T_rrcContainer */ +static int hf_xnap_PDUSessionResourcesNotifyList_item = -1; /* PDUSessionResourcesNotify_Item */ +static int hf_xnap_qosFlowsNotificationContrIndInfo = -1; /* QoSFlowNotificationControlIndicationInfo */ +static int hf_xnap_PDUSessionResourcesActivityNotifyList_item = -1; /* PDUSessionResourcesActivityNotify_Item */ +static int hf_xnap_pduSessionLevelUPactivityreport = -1; /* UserPlaneTrafficActivityReport */ +static int hf_xnap_qosFlowsActivityNotifyList = -1; /* QoSFlowsActivityNotifyList */ +static int hf_xnap_QoSFlowsActivityNotifyList_item = -1; /* QoSFlowsActivityNotifyItem */ static int hf_xnap_gNB_01 = -1; /* ProtocolIE_Container */ static int hf_xnap_ng_eNB_01 = -1; /* ProtocolIE_Container */ static int hf_xnap_ng_eNB_02 = -1; /* RespondingNodeTypeConfigUpdateAck_ng_eNB */ static int hf_xnap_gNB_02 = -1; /* RespondingNodeTypeConfigUpdateAck_gNB */ static int hf_xnap_served_NR_Cells = -1; /* ServedCells_NR */ -static int hf_xnap_nr_cells = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI */ +static int hf_xnap_ng_eNB_03 = -1; /* ResourceCoordRequest_ng_eNB_initiated */ +static int hf_xnap_gNB_03 = -1; /* ResourceCoordRequest_gNB_initiated */ +static int hf_xnap_dataTrafficResourceIndication = -1; /* DataTrafficResourceIndication */ +static int hf_xnap_spectrumSharingGroupID = -1; /* SpectrumSharingGroupID */ +static int hf_xnap_listofE_UTRACells = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI */ +static int hf_xnap_listofE_UTRACells_item = -1; /* E_UTRA_CGI */ +static int hf_xnap_listofNRCells = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI */ +static int hf_xnap_listofNRCells_item = -1; /* NR_CGI */ +static int hf_xnap_ng_eNB_04 = -1; /* ResourceCoordResponse_ng_eNB_initiated */ +static int hf_xnap_gNB_04 = -1; /* ResourceCoordResponse_gNB_initiated */ +static int hf_xnap_nr_cells = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI */ static int hf_xnap_nr_cells_item = -1; /* NR_CGI */ -static int hf_xnap_e_utra_cells = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI */ +static int hf_xnap_e_utra_cells = -1; /* SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI */ static int hf_xnap_e_utra_cells_item = -1; /* E_UTRA_CGI */ static int hf_xnap_privateIEs = -1; /* PrivateIE_Container */ static int hf_xnap_initiatingMessage = -1; /* InitiatingMessage */ @@ -662,6 +963,7 @@ static gint ett_xnap_e_utra_EncyptionAlgorithms = -1; static gint ett_xnap_e_utra_IntegrityProtectionAlgorithms = -1; static gint ett_xnap_ng_ran_TraceID = -1; static gint ett_xnap_interfaces_to_trace = -1; +static gint ett_xnap_LastVisitedEUTRANCellInformation = -1; /*--- Included file: packet-xnap-ett.c ---*/ #line 1 "./asn1/xnap/packet-xnap-ett.c" @@ -681,7 +983,8 @@ static gint ett_xnap_BroadcastPLMNs = -1; static gint ett_xnap_BroadcastPLMNinTAISupport_Item = -1; static gint ett_xnap_Cause = -1; static gint ett_xnap_CellAssistanceInfo_NR = -1; -static gint ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI = -1; +static gint ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI = -1; +static gint ett_xnap_Connectivity_Support = -1; static gint ett_xnap_COUNT_PDCP_SN12 = -1; static gint ett_xnap_COUNT_PDCP_SN18 = -1; static gint ett_xnap_CPTransportLayerInformation = -1; @@ -691,8 +994,15 @@ static gint ett_xnap_CriticalityDiagnostics_IE_List_item = -1; static gint ett_xnap_DataforwardingInfoperPDUSession = -1; static gint ett_xnap_DataforwardingInfoperPDUSession_Item = -1; static gint ett_xnap_DataForwardingInfoFromTargetNGRANnode = -1; +static gint ett_xnap_DataforwardingRequest_List = -1; +static gint ett_xnap_QoSFLowsToBeForwarded_List = -1; +static gint ett_xnap_QoSFLowsToBeForwarded_Item = -1; static gint ett_xnap_DataForwardingResponseDRBItemList = -1; static gint ett_xnap_DataForwardingResponseDRBItem = -1; +static gint ett_xnap_DataTrafficResourceIndication = -1; +static gint ett_xnap_DRB_List = -1; +static gint ett_xnap_DRB_List_withCause = -1; +static gint ett_xnap_DRB_List_withCause_Item = -1; static gint ett_xnap_DRBsSubjectToStatusTransfer_List = -1; static gint ett_xnap_DRBsSubjectToStatusTransfer_Item = -1; static gint ett_xnap_DRBBStatusTransferChoice = -1; @@ -709,14 +1019,20 @@ static gint ett_xnap_GlobalgNB_ID = -1; static gint ett_xnap_GNB_ID_Choice = -1; static gint ett_xnap_GlobalngeNB_ID = -1; static gint ett_xnap_ENB_ID_Choice = -1; +static gint ett_xnap_GlobalNG_RANCell_ID = -1; static gint ett_xnap_GlobalNG_RANNode_ID = -1; static gint ett_xnap_GTPtunnelTransportLayerInformation = -1; static gint ett_xnap_GUAMI = -1; +static gint ett_xnap_I_RNTI = -1; +static gint ett_xnap_LastVisitedCell_Item = -1; static gint ett_xnap_ListOfCells = -1; static gint ett_xnap_CellsinAoI_Item = -1; +static gint ett_xnap_ListOfRANNodesinAoI = -1; +static gint ett_xnap_GlobalNG_RANNodesinAoI_Item = -1; static gint ett_xnap_ListOfTAIsinAoI = -1; static gint ett_xnap_TAIsinAoI_Item = -1; static gint ett_xnap_LocationReportingInformation = -1; +static gint ett_xnap_MaximumIPdatarate = -1; static gint ett_xnap_MBSFNSubframeAllocation_E_UTRA = -1; static gint ett_xnap_MBSFNSubframeInfo_E_UTRA = -1; static gint ett_xnap_MBSFNSubframeInfo_E_UTRA_Item = -1; @@ -749,6 +1065,17 @@ static gint ett_xnap_NRFrequencyInfo = -1; static gint ett_xnap_NRModeInfo = -1; static gint ett_xnap_NRModeInfoFDD = -1; static gint ett_xnap_NRModeInfoTDD = -1; +static gint ett_xnap_NRTransmissionBandwidth = -1; +static gint ett_xnap_PacketErrorRate = -1; +static gint ett_xnap_PDCPChangeIndication = -1; +static gint ett_xnap_PDUSessionAggregateMaximumBitRate = -1; +static gint ett_xnap_PDUSession_List = -1; +static gint ett_xnap_PDUSession_List_withCause = -1; +static gint ett_xnap_PDUSession_List_withCause_Item = -1; +static gint ett_xnap_PDUSession_List_withDataForwardingFromTarget = -1; +static gint ett_xnap_PDUSession_List_withDataForwardingFromTarget_Item = -1; +static gint ett_xnap_PDUSession_List_withDataForwardingRequest = -1; +static gint ett_xnap_PDUSession_List_withDataForwardingRequest_Item = -1; static gint ett_xnap_PDUSessionResourcesAdmitted_List = -1; static gint ett_xnap_PDUSessionResourcesAdmitted_Item = -1; static gint ett_xnap_PDUSessionResourceAdmittedInfo = -1; @@ -756,10 +1083,65 @@ static gint ett_xnap_PDUSessionResourcesNotAdmitted_List = -1; static gint ett_xnap_PDUSessionResourcesNotAdmitted_Item = -1; static gint ett_xnap_PDUSessionResourcesToBeSetup_List = -1; static gint ett_xnap_PDUSessionResourcesToBeSetup_Item = -1; +static gint ett_xnap_PDUSessionResourceSetupInfo_SNterminated = -1; +static gint ett_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated = -1; +static gint ett_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceSetupResponseInfo_SNterminated = -1; +static gint ett_xnap_DRBsToBeSetupList_SetupResponse_SNterminated = -1; +static gint ett_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_Item = -1; +static gint ett_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated = -1; +static gint ett_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceSetupInfo_MNterminated = -1; +static gint ett_xnap_DRBsToBeSetupList_Setup_MNterminated = -1; +static gint ett_xnap_DRBsToBeSetupList_Setup_MNterminated_Item = -1; +static gint ett_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated = -1; +static gint ett_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceSetupResponseInfo_MNterminated = -1; +static gint ett_xnap_DRBsAdmittedList_SetupResponse_MNterminated = -1; +static gint ett_xnap_DRBsAdmittedList_SetupResponse_MNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceModificationInfo_SNterminated = -1; +static gint ett_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated = -1; +static gint ett_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_Item = -1; +static gint ett_xnap_DRBsToBeModified_List_Modified_SNterminated = -1; +static gint ett_xnap_DRBsToBeModified_List_Modified_SNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceModificationResponseInfo_SNterminated = -1; +static gint ett_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated = -1; +static gint ett_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceModificationInfo_MNterminated = -1; +static gint ett_xnap_DRBsToBeModifiedList_Modification_MNterminated = -1; +static gint ett_xnap_DRBsToBeModifiedList_Modification_MNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceModificationResponseInfo_MNterminated = -1; +static gint ett_xnap_DRBsAdmittedList_ModificationResponse_MNterminated = -1; +static gint ett_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceChangeRequiredInfo_SNterminated = -1; +static gint ett_xnap_PDUSessionResourceChangeConfirmInfo_SNterminated = -1; +static gint ett_xnap_PDUSessionResourceChangeRequiredInfo_MNterminated = -1; +static gint ett_xnap_PDUSessionResourceChangeConfirmInfo_MNterminated = -1; +static gint ett_xnap_PDUSessionResourceModRqdInfo_SNterminated = -1; +static gint ett_xnap_DRBsToBeSetup_List_ModRqd_SNterminated = -1; +static gint ett_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_Item = -1; +static gint ett_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated = -1; +static gint ett_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item = -1; +static gint ett_xnap_DRBsToBeModified_List_ModRqd_SNterminated = -1; +static gint ett_xnap_DRBsToBeModified_List_ModRqd_SNterminated_Item = -1; +static gint ett_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated = -1; +static gint ett_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceModConfirmInfo_SNterminated = -1; +static gint ett_xnap_DRBsAdmittedList_ModConfirm_SNterminated = -1; +static gint ett_xnap_DRBsAdmittedList_ModConfirm_SNterminated_Item = -1; +static gint ett_xnap_PDUSessionResourceModConfirmInfo_MNterminated = -1; +static gint ett_xnap_ProtectedE_UTRAResourceIndication = -1; +static gint ett_xnap_ProtectedE_UTRAResourceList = -1; +static gint ett_xnap_ProtectedE_UTRAResource_Item = -1; +static gint ett_xnap_ProtectedE_UTRAFootprintTimePattern = -1; static gint ett_xnap_QoSCharacteristics = -1; static gint ett_xnap_QoSFlowLevelQoSParameters = -1; +static gint ett_xnap_QoSFlowNotificationControlIndicationInfo = -1; +static gint ett_xnap_QoSFlowNotify_Item = -1; static gint ett_xnap_QoSFlows_List = -1; static gint ett_xnap_QoSFlow_Item = -1; +static gint ett_xnap_QoSFlows_List_withCause = -1; +static gint ett_xnap_QoSFlowwithCause_Item = -1; static gint ett_xnap_QoSFlowsAdmitted_List = -1; static gint ett_xnap_QoSFlowAdmitted_Item = -1; static gint ett_xnap_QoSFlowsNotAdmitted_List = -1; @@ -771,6 +1153,7 @@ static gint ett_xnap_RANAreaID_List = -1; static gint ett_xnap_RANPagingArea = -1; static gint ett_xnap_RANPagingAreaChoice = -1; static gint ett_xnap_RANPagingAttemptInfo = -1; +static gint ett_xnap_ReservedSubframePattern = -1; static gint ett_xnap_ResetRequestTypeInfo = -1; static gint ett_xnap_ResetRequestTypeInfo_Full = -1; static gint ett_xnap_ResetRequestTypeInfo_Partial = -1; @@ -782,6 +1165,7 @@ static gint ett_xnap_ResetResponseTypeInfo_Partial = -1; static gint ett_xnap_ResetResponsePartialReleaseList = -1; static gint ett_xnap_ResetResponsePartialReleaseItem = -1; static gint ett_xnap_SecurityIndication = -1; +static gint ett_xnap_SecurityResult = -1; static gint ett_xnap_ServedCellInformation_E_UTRA = -1; static gint ett_xnap_SEQUENCE_SIZE_1_maxnoofBPLMNs_OF_ServedCellInformation_E_UTRA_perBPLMN = -1; static gint ett_xnap_ServedCellInformation_E_UTRA_perBPLMN = -1; @@ -791,7 +1175,7 @@ static gint ett_xnap_ServedCellInformation_E_UTRA_perBPLMN_TDDInfo = -1; static gint ett_xnap_ServedCells_E_UTRA = -1; static gint ett_xnap_ServedCells_E_UTRA_Item = -1; static gint ett_xnap_ServedCellsToUpdate_E_UTRA = -1; -static gint ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI = -1; +static gint ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI = -1; static gint ett_xnap_ServedCells_ToModify_E_UTRA = -1; static gint ett_xnap_ServedCells_ToModify_E_UTRA_Item = -1; static gint ett_xnap_ServedCellInformation_NR = -1; @@ -800,6 +1184,13 @@ static gint ett_xnap_ServedCells_NR_Item = -1; static gint ett_xnap_ServedCells_ToModify_NR = -1; static gint ett_xnap_ServedCells_ToModify_NR_Item = -1; static gint ett_xnap_ServedCellsToUpdate_NR = -1; +static gint ett_xnap_SharedResourceType = -1; +static gint ett_xnap_SharedResourceType_UL_OnlySharing = -1; +static gint ett_xnap_SharedResourceType_ULDL_Sharing = -1; +static gint ett_xnap_SharedResourceType_ULDL_Sharing_UL_Resources = -1; +static gint ett_xnap_SharedResourceType_ULDL_Sharing_UL_ResourcesChanged = -1; +static gint ett_xnap_SharedResourceType_ULDL_Sharing_DL_Resources = -1; +static gint ett_xnap_SharedResourceType_ULDL_Sharing_DL_ResourcesChanged = -1; static gint ett_xnap_SliceSupport_List = -1; static gint ett_xnap_S_NSSAI = -1; static gint ett_xnap_SpecialSubframeInfo_E_UTRA = -1; @@ -817,6 +1208,8 @@ static gint ett_xnap_UEContextID = -1; static gint ett_xnap_UEContextIDforRRCResume = -1; static gint ett_xnap_UEContextIDforRRCReestablishment = -1; static gint ett_xnap_UEContextInfoRetrUECtxtResp = -1; +static gint ett_xnap_UEHistoryInformation = -1; +static gint ett_xnap_UEIdentityIndexValue = -1; static gint ett_xnap_UERANPagingIdentity = -1; static gint ett_xnap_UESecurityCapabilities = -1; static gint ett_xnap_T_nr_EncyptionAlgorithms = -1; @@ -826,6 +1219,7 @@ static gint ett_xnap_T_e_utra_IntegrityProtectionAlgorithms = -1; static gint ett_xnap_UPTransportLayerInformation = -1; static gint ett_xnap_HandoverRequest = -1; static gint ett_xnap_UEContextInfoHORequest = -1; +static gint ett_xnap_UEContextRefAtSN_HORequest = -1; static gint ett_xnap_HandoverRequestAcknowledge = -1; static gint ett_xnap_HandoverPreparationFailure = -1; static gint ett_xnap_SNStatusTransfer = -1; @@ -837,25 +1231,91 @@ static gint ett_xnap_RetrieveUEContextResponse = -1; static gint ett_xnap_RetrieveUEContextFailure = -1; static gint ett_xnap_DataForwardingAddressIndication = -1; static gint ett_xnap_SNodeAdditionRequest = -1; +static gint ett_xnap_PDUSessionToBeAddedAddReq = -1; +static gint ett_xnap_PDUSessionToBeAddedAddReq_Item = -1; +static gint ett_xnap_BearerConfigToBeAdded_AddReq = -1; +static gint ett_xnap_BearerConfigToBeAdded_AddReq_Item = -1; static gint ett_xnap_SNodeAdditionRequestAcknowledge = -1; +static gint ett_xnap_PDUSessionAdmittedAddedAddReqAck = -1; +static gint ett_xnap_PDUSessionAdmittedAddedAddReqAck_Item = -1; +static gint ett_xnap_BearerConfigAdmittedToBeAdded_AddReqAck = -1; +static gint ett_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item = -1; +static gint ett_xnap_PDUSessionNotAdmittedAddReqAck = -1; static gint ett_xnap_SNodeAdditionRequestReject = -1; static gint ett_xnap_SNodeReconfigurationComplete = -1; +static gint ett_xnap_ResponseInfo_ReconfCompl = -1; +static gint ett_xnap_ResponseType_ReconfComplete = -1; +static gint ett_xnap_Configuration_successfully_applied = -1; +static gint ett_xnap_Configuration_rejected_by_M_NG_RANNode = -1; static gint ett_xnap_SNodeModificationRequest = -1; +static gint ett_xnap_UEContextInfo_SNModRequest = -1; +static gint ett_xnap_PDUSessionsToBeAdded_SNModRequest_List = -1; +static gint ett_xnap_PDUSessionsToBeAdded_SNModRequest_Item = -1; +static gint ett_xnap_BearerConfigToBeAdded_SNModRequest = -1; +static gint ett_xnap_BearerConfigToBeAdded_SNModRequest_Item = -1; +static gint ett_xnap_PDUSessionsToBeModified_SNModRequest_List = -1; +static gint ett_xnap_PDUSessionsToBeModified_SNModRequest_Item = -1; +static gint ett_xnap_BearerConfigToBeModified_SNModRequest = -1; +static gint ett_xnap_BearerConfigToBeModified_SNModRequest_Item = -1; +static gint ett_xnap_PDUSessionsToBeReleased_SNModRequest_List = -1; static gint ett_xnap_SNodeModificationRequestAcknowledge = -1; +static gint ett_xnap_PDUSessionAdmitted_SNModResponse = -1; +static gint ett_xnap_PDUSessionAdmittedToBeAddedSNModResponse = -1; +static gint ett_xnap_PDUSessionAdmittedToBeAddedSNModResponse_Item = -1; +static gint ett_xnap_BearerConfigToBeAdded_SNModResponse_List = -1; +static gint ett_xnap_BearerConfigToBeAdded_SNModResponse_Item = -1; +static gint ett_xnap_PDUSessionAdmittedToBeModifiedSNModResponse = -1; +static gint ett_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_Item = -1; +static gint ett_xnap_BearerConfigToBeModified_SNModResponse_List = -1; +static gint ett_xnap_BearerConfigToBeModified_SNModResponse_Item = -1; +static gint ett_xnap_PDUSessionAdmittedToBeReleasedSNModResponse = -1; +static gint ett_xnap_PDUSessionNotAdmitted_SNModResponse = -1; static gint ett_xnap_SNodeModificationRequestReject = -1; static gint ett_xnap_SNodeModificationRequired = -1; +static gint ett_xnap_PDUSessionToBeModifiedSNModRequired = -1; +static gint ett_xnap_PDUSessionToBeModifiedSNModRequired_Item = -1; +static gint ett_xnap_BearerConfigToBeModifiedSNModRequired_List = -1; +static gint ett_xnap_BearerConfigToBeModifiedSNModRequired_Item = -1; +static gint ett_xnap_PDUSessionToBeReleasedSNModRequired = -1; static gint ett_xnap_SNodeModificationConfirm = -1; +static gint ett_xnap_PDUSessionAdmittedModSNModConfirm = -1; +static gint ett_xnap_PDUSessionAdmittedModSNModConfirm_Item = -1; +static gint ett_xnap_BearerConfigAdmittedModSNModConfirm = -1; +static gint ett_xnap_BearerConfigAdmittedModSNModConfirm_Item = -1; +static gint ett_xnap_PDUSessionReleasedSNModConfirm = -1; static gint ett_xnap_SNodeModificationRefuse = -1; static gint ett_xnap_SNodeReleaseRequest = -1; static gint ett_xnap_SNodeReleaseRequestAcknowledge = -1; static gint ett_xnap_SNodeReleaseReject = -1; static gint ett_xnap_SNodeReleaseRequired = -1; +static gint ett_xnap_PDUSessionToBeReleasedList_RelRqd = -1; static gint ett_xnap_SNodeReleaseConfirm = -1; +static gint ett_xnap_PDUSessionReleasedList_RelConf = -1; static gint ett_xnap_SNodeCounterCheckRequest = -1; +static gint ett_xnap_BearersSubjectToCounterCheck_List = -1; +static gint ett_xnap_BearersSubjectToCounterCheck_Item = -1; static gint ett_xnap_SNodeChangeRequired = -1; +static gint ett_xnap_PDUSession_SNChangeRequired_List = -1; +static gint ett_xnap_PDUSession_SNChangeRequired_Item = -1; +static gint ett_xnap_BearerConfigToBeAdded_ChangeRqd = -1; +static gint ett_xnap_BearerConfigToBeAdded_ChangeRqd_Item = -1; static gint ett_xnap_SNodeChangeConfirm = -1; +static gint ett_xnap_PDUSession_SNChangeConfirm_List = -1; +static gint ett_xnap_PDUSession_SNChangeConfirm_Item = -1; +static gint ett_xnap_BearerConfig_ChangeConfirm = -1; +static gint ett_xnap_BearerConfig_ChangeConfirm_Item = -1; static gint ett_xnap_SNodeChangeRefuse = -1; static gint ett_xnap_RRCTransfer = -1; +static gint ett_xnap_SplitSRB_RRCTransfer = -1; +static gint ett_xnap_NRUEMeasurementReportRRCTransfer = -1; +static gint ett_xnap_NotificationControlIndication = -1; +static gint ett_xnap_PDUSessionResourcesNotifyList = -1; +static gint ett_xnap_PDUSessionResourcesNotify_Item = -1; +static gint ett_xnap_ActivityNotification = -1; +static gint ett_xnap_PDUSessionResourcesActivityNotifyList = -1; +static gint ett_xnap_PDUSessionResourcesActivityNotify_Item = -1; +static gint ett_xnap_QoSFlowsActivityNotifyList = -1; +static gint ett_xnap_QoSFlowsActivityNotifyItem = -1; static gint ett_xnap_XnSetupRequest = -1; static gint ett_xnap_XnSetupResponse = -1; static gint ett_xnap_XnSetupFailure = -1; @@ -866,6 +1326,14 @@ static gint ett_xnap_RespondingNodeTypeConfigUpdateAck = -1; static gint ett_xnap_RespondingNodeTypeConfigUpdateAck_ng_eNB = -1; static gint ett_xnap_RespondingNodeTypeConfigUpdateAck_gNB = -1; static gint ett_xnap_NGRANNodeConfigurationUpdateFailure = -1; +static gint ett_xnap_E_UTRA_NR_CellResourceCoordinationRequest = -1; +static gint ett_xnap_InitiatingNodeType_ResourceCoordRequest = -1; +static gint ett_xnap_ResourceCoordRequest_ng_eNB_initiated = -1; +static gint ett_xnap_ResourceCoordRequest_gNB_initiated = -1; +static gint ett_xnap_E_UTRA_NR_CellResourceCoordinationResponse = -1; +static gint ett_xnap_RespondingNodeType_ResourceCoordResponse = -1; +static gint ett_xnap_ResourceCoordResponse_ng_eNB_initiated = -1; +static gint ett_xnap_ResourceCoordResponse_gNB_initiated = -1; static gint ett_xnap_XnRemovalRequest = -1; static gint ett_xnap_XnRemovalResponse = -1; static gint ett_xnap_XnRemovalFailure = -1; @@ -884,7 +1352,7 @@ static gint ett_xnap_SuccessfulOutcome = -1; static gint ett_xnap_UnsuccessfulOutcome = -1; /*--- End of included file: packet-xnap-ett.c ---*/ -#line 66 "./asn1/xnap/packet-xnap-template.c" +#line 67 "./asn1/xnap/packet-xnap-template.c" enum { XNAP_NG_RAN_CONTAINER_AUTOMATIC, @@ -924,7 +1392,13 @@ static dissector_handle_t xnap_handle; static void xnap_PacketLossRate_fmt(gchar *s, guint32 v) { - g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f %% (%u)", (float)v/10, v); + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1f%% (%u)", (float)v/10, v); +} + +static void +xnap_PacketDelayBudget_fmt(gchar *s, guint32 v) +{ + g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fms (%u)", (float)v/2, v); } typedef enum { @@ -935,8 +1409,10 @@ typedef enum { struct xnap_conv_info { address addr_a; + guint32 port_a; GlobalNG_RANNode_ID_enum ranmode_id_a; address addr_b; + guint32 port_b; GlobalNG_RANNode_ID_enum ranmode_id_b; }; @@ -959,6 +1435,22 @@ xnap_get_private_data(packet_info *pinfo) return xnap_data; } +static GlobalNG_RANNode_ID_enum +xnap_get_ranmode_id(address *addr, guint32 port, packet_info *pinfo) +{ + struct xnap_private_data *xnap_data = xnap_get_private_data(pinfo); + GlobalNG_RANNode_ID_enum ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + + if (xnap_data->xnap_conv) { + if (addresses_equal(addr, &xnap_data->xnap_conv->addr_a) && port == xnap_data->xnap_conv->port_a) { + ranmode_id = xnap_data->xnap_conv->ranmode_id_a; + } else if (addresses_equal(addr, &xnap_data->xnap_conv->addr_b) && port == xnap_data->xnap_conv->port_b) { + ranmode_id = xnap_data->xnap_conv->ranmode_id_b; + } + } + return ranmode_id; +} + /*--- Included file: packet-xnap-fn.c ---*/ #line 1 "./asn1/xnap/packet-xnap-fn.c" @@ -1045,6 +1537,9 @@ static const value_string xnap_ProcedureCode_vals[] = { { id_reset, "id-reset" }, { id_errorIndication, "id-errorIndication" }, { id_privateMessage, "id-privateMessage" }, + { id_notificationControl, "id-notificationControl" }, + { id_activityNotification, "id-activityNotification" }, + { id_e_UTRA_NR_CellResourceCoordination, "id-e-UTRA-NR-CellResourceCoordination" }, { 0, NULL } }; @@ -1053,7 +1548,7 @@ static value_string_ext xnap_ProcedureCode_vals_ext = VALUE_STRING_EXT_INIT(xnap static int dissect_xnap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 75 "./asn1/xnap/xnap.cnf" +#line 65 "./asn1/xnap/xnap.cnf" struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 255U, &xnap_data->procedure_code, FALSE); @@ -1068,63 +1563,97 @@ dissect_xnap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static const value_string xnap_ProtocolIE_ID_vals[] = { { id_ActivatedServedCells, "id-ActivatedServedCells" }, { id_ActivationIDforCellActivation, "id-ActivationIDforCellActivation" }, + { id_admittedSplitSRB, "id-admittedSplitSRB" }, + { id_admittedSplitSRBrelease, "id-admittedSplitSRBrelease" }, { id_AMF_Pool_Information, "id-AMF-Pool-Information" }, - { id_AreaOfInterest_Item, "id-AreaOfInterest-Item" }, { id_AssistanceDataForRANPaging, "id-AssistanceDataForRANPaging" }, + { id_BearersSubjectToCounterCheck, "id-BearersSubjectToCounterCheck" }, { id_Cause, "id-Cause" }, { id_cellAssistanceInfo_NR, "id-cellAssistanceInfo-NR" }, { id_ConfigurationUpdateInitiatingNodeChoice, "id-ConfigurationUpdateInitiatingNodeChoice" }, { id_CriticalityDiagnostics, "id-CriticalityDiagnostics" }, { id_dataforwardingInfoperPDUSession, "id-dataforwardingInfoperPDUSession" }, - { id_dataforwardingInfoperPDUSession_Item, "id-dataforwardingInfoperPDUSession-Item" }, - { id_DataForwardingResponseDRBItem, "id-DataForwardingResponseDRBItem" }, - { id_DRBsSubjectToStatusTransfer_Item, "id-DRBsSubjectToStatusTransfer-Item" }, { id_DRBsSubjectToStatusTransfer_List, "id-DRBsSubjectToStatusTransfer-List" }, - { id_DRBToQoSFlowMapping_Item, "id-DRBToQoSFlowMapping-Item" }, + { id_ExpectedUEBehaviour, "id-ExpectedUEBehaviour" }, { id_GlobalNG_RAN_node_ID, "id-GlobalNG-RAN-node-ID" }, { id_GUAMI, "id-GUAMI" }, + { id_indexToRatFrequSelectionPriority, "id-indexToRatFrequSelectionPriority" }, + { id_initiatingNodeType_ResourceCoordRequest, "id-initiatingNodeType-ResourceCoordRequest" }, { id_List_of_served_cells_E_UTRA, "id-List-of-served-cells-E-UTRA" }, { id_List_of_served_cells_NR, "id-List-of-served-cells-NR" }, { id_LocationReportingInformation, "id-LocationReportingInformation" }, { id_MAC_I, "id-MAC-I" }, { id_MaskedIMEISV, "id-MaskedIMEISV" }, + { id_M_NG_RANnodeUEXnAPID, "id-M-NG-RANnodeUEXnAPID" }, + { id_MN_to_SN_Container, "id-MN-to-SN-Container" }, + { id_MobilityRestrictionList, "id-MobilityRestrictionList" }, { id_new_NG_RAN_Cell_Identity, "id-new-NG-RAN-Cell-Identity" }, { id_newNG_RANnodeUEXnAPID, "id-newNG-RANnodeUEXnAPID" }, + { id_NRUEMeasurementReportRRCTransfer, "id-NRUEMeasurementReportRRCTransfer" }, { id_oldNG_RANnodeUEXnAPID, "id-oldNG-RANnodeUEXnAPID" }, + { id_OldtoNewNG_RANnodeResumeContainer, "id-OldtoNewNG-RANnodeResumeContainer" }, { id_PagingDRX, "id-PagingDRX" }, - { id_PDUSessionResourceAdmittedResponseTransferItem, "id-PDUSessionResourceAdmittedResponseTransferItem" }, - { id_PDUSessionResourcesAdmitted_Item, "id-PDUSessionResourcesAdmitted-Item" }, + { id_PCellID, "id-PCellID" }, + { id_PDCPChangeIndication, "id-PDCPChangeIndication" }, + { id_PDUSessionAdmittedAddedAddReqAck, "id-PDUSessionAdmittedAddedAddReqAck" }, + { id_PDUSessionAdmittedModSNModConfirm, "id-PDUSessionAdmittedModSNModConfirm" }, + { id_PDUSessionAdmitted_SNModResponse, "id-PDUSessionAdmitted-SNModResponse" }, + { id_PDUSessionNotAdmittedAddReqAck, "id-PDUSessionNotAdmittedAddReqAck" }, + { id_PDUSessionNotAdmitted_SNModResponse, "id-PDUSessionNotAdmitted-SNModResponse" }, + { id_PDUSessionReleasedList_RelConf, "id-PDUSessionReleasedList-RelConf" }, + { id_PDUSessionReleasedSNModConfirm, "id-PDUSessionReleasedSNModConfirm" }, + { id_PDUSessionResourcesActivityNotifyList, "id-PDUSessionResourcesActivityNotifyList" }, { id_PDUSessionResourcesAdmitted_List, "id-PDUSessionResourcesAdmitted-List" }, - { id_PDUSessionResourcesNotAdmitted_Item, "id-PDUSessionResourcesNotAdmitted-Item" }, { id_PDUSessionResourcesNotAdmitted_List, "id-PDUSessionResourcesNotAdmitted-List" }, - { id_PDUSessionResourcesToBeSetup_Item, "id-PDUSessionResourcesToBeSetup-Item" }, - { id_QoSFlowAdmitted_Item, "id-QoSFlowAdmitted-Item" }, - { id_QoSFlow_Item, "id-QoSFlow-Item" }, - { id_QoSFlowNotAdmitted_Item, "id-QoSFlowNotAdmitted-Item" }, - { id_QoSFlowsToBeSetup_Item, "id-QoSFlowsToBeSetup-Item" }, + { id_PDUSessionResourcesNotifyList, "id-PDUSessionResourcesNotifyList" }, + { id_PDUSession_SNChangeConfirm_List, "id-PDUSession-SNChangeConfirm-List" }, + { id_PDUSession_SNChangeRequired_List, "id-PDUSession-SNChangeRequired-List" }, + { id_PDUSessionToBeAddedAddReq, "id-PDUSessionToBeAddedAddReq" }, + { id_PDUSessionToBeModifiedSNModRequired, "id-PDUSessionToBeModifiedSNModRequired" }, + { id_PDUSessionToBeReleasedList_RelRqd, "id-PDUSessionToBeReleasedList-RelRqd" }, + { id_PDUSessionToBeReleased_RelReq, "id-PDUSessionToBeReleased-RelReq" }, + { id_PDUSessionToBeReleasedSNModRequired, "id-PDUSessionToBeReleasedSNModRequired" }, { id_RANPagingArea, "id-RANPagingArea" }, - { id_RANPagingPriority, "id-RANPagingPriority" }, - { id_ResetRequestPartialReleaseItem, "id-ResetRequestPartialReleaseItem" }, + { id_PagingPriority, "id-PagingPriority" }, + { id_requestedSplitSRB, "id-requestedSplitSRB" }, + { id_requestedSplitSRBrelease, "id-requestedSplitSRBrelease" }, { id_ResetRequestTypeInfo, "id-ResetRequestTypeInfo" }, - { id_ResetResponsePartialReleaseItem, "id-ResetResponsePartialReleaseItem" }, { id_ResetResponseTypeInfo, "id-ResetResponseTypeInfo" }, { id_RespondingNodeTypeConfigUpdateAck, "id-RespondingNodeTypeConfigUpdateAck" }, + { id_respondingNodeType_ResourceCoordResponse, "id-respondingNodeType-ResourceCoordResponse" }, + { id_ResponseInfo_ReconfCompl, "id-ResponseInfo-ReconfCompl" }, + { id_RRCConfigIndication, "id-RRCConfigIndication" }, + { id_RRCResumeCause, "id-RRCResumeCause" }, + { id_SCGConfigurationQuery, "id-SCGConfigurationQuery" }, + { id_selectedPLMN, "id-selectedPLMN" }, { id_ServedCellsToActivate, "id-ServedCellsToActivate" }, { id_servedCellsToUpdate_E_UTRA, "id-servedCellsToUpdate-E-UTRA" }, { id_ServedCellsToUpdateInitiatingNodeChoice, "id-ServedCellsToUpdateInitiatingNodeChoice" }, { id_servedCellsToUpdate_NR, "id-servedCellsToUpdate-NR" }, + { id_s_ng_RANnode_SecurityKey, "id-s-ng-RANnode-SecurityKey" }, + { id_S_NG_RANnodeUE_AMBR, "id-S-NG-RANnodeUE-AMBR" }, + { id_S_NG_RANnodeUEXnAPID, "id-S-NG-RANnodeUEXnAPID" }, + { id_SN_to_MN_Container, "id-SN-to-MN-Container" }, { id_sourceNG_RANnodeUEXnAPID, "id-sourceNG-RANnodeUEXnAPID" }, - { id_TAISupport_Item, "id-TAISupport-Item" }, + { id_SplitSRB_RRCTransfer, "id-SplitSRB-RRCTransfer" }, { id_TAISupport_list, "id-TAISupport-list" }, + { id_TimeToWait, "id-TimeToWait" }, { id_Target2SourceNG_RANnodeTranspContainer, "id-Target2SourceNG-RANnodeTranspContainer" }, { id_targetCellGlobalID, "id-targetCellGlobalID" }, { id_targetNG_RANnodeUEXnAPID, "id-targetNG-RANnodeUEXnAPID" }, + { id_target_S_NG_RANnodeID, "id-target-S-NG-RANnodeID" }, { id_TraceActivation, "id-TraceActivation" }, { id_UEContextID, "id-UEContextID" }, { id_UEContextInfoHORequest, "id-UEContextInfoHORequest" }, { id_UEContextInfoRetrUECtxtResp, "id-UEContextInfoRetrUECtxtResp" }, + { id_UEContextInfo_SNModRequest, "id-UEContextInfo-SNModRequest" }, + { id_UEContextKeptIndicator, "id-UEContextKeptIndicator" }, + { id_UEContextRefAtSN_HORequest, "id-UEContextRefAtSN-HORequest" }, + { id_UEHistoryInformation, "id-UEHistoryInformation" }, { id_UEIdentityIndexValue, "id-UEIdentityIndexValue" }, { id_UERANPagingIdentity, "id-UERANPagingIdentity" }, + { id_UESecurityCapabilities, "id-UESecurityCapabilities" }, + { id_UserPlaneTrafficActivityReport, "id-UserPlaneTrafficActivityReport" }, { id_XnRemovalThreshold, "id-XnRemovalThreshold" }, { 0, NULL } }; @@ -1134,14 +1663,14 @@ static value_string_ext xnap_ProtocolIE_ID_vals_ext = VALUE_STRING_EXT_INIT(xnap static int dissect_xnap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 62 "./asn1/xnap/xnap.cnf" +#line 52 "./asn1/xnap/xnap.cnf" struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, maxProtocolIEs, &xnap_data->protocol_ie_id, FALSE); -#line 65 "./asn1/xnap/xnap.cnf" +#line 55 "./asn1/xnap/xnap.cnf" if (tree) { proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str_ext(xnap_data->protocol_ie_id, &xnap_ProtocolIE_ID_vals_ext, "unknown (%d)")); } @@ -1160,7 +1689,7 @@ static const value_string xnap_TriggeringMessage_vals[] = { static int dissect_xnap_TriggeringMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 79 "./asn1/xnap/xnap.cnf" +#line 69 "./asn1/xnap/xnap.cnf" struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 3, &xnap_data->triggering_message, FALSE, 0, NULL); @@ -1367,6 +1896,16 @@ dissect_xnap_AllocationandRetentionPriority(tvbuff_t *tvb _U_, int offset _U_, a +static int +dissect_xnap_ActivationSFN(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, 1023U, NULL, FALSE); + + return offset; +} + + + static int dissect_xnap_AMF_Pool_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -1386,24 +1925,10 @@ dissect_xnap_AMF_UE_NGAP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t AreaOfInterest_sequence_of[1] = { - { &hf_xnap_AreaOfInterest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, -}; - -static int -dissect_xnap_AreaOfInterest(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_xnap_AreaOfInterest, AreaOfInterest_sequence_of, - 1, maxnoofAoIs, FALSE); - - return offset; -} - - static int dissect_xnap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 200 "./asn1/xnap/xnap.cnf" +#line 268 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -1424,7 +1949,7 @@ dissect_xnap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_xnap_TAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 212 "./asn1/xnap/xnap.cnf" +#line 280 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, 3, 3, FALSE, ¶meter_tvb); @@ -1472,7 +1997,7 @@ dissect_xnap_ListOfTAIsinAoI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_NR_Cell_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 225 "./asn1/xnap/xnap.cnf" +#line 293 "./asn1/xnap/xnap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 36, 36, FALSE, &cell_id_tvb, NULL); @@ -1491,7 +2016,7 @@ dissect_xnap_NR_Cell_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_xnap_E_UTRA_Cell_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 239 "./asn1/xnap/xnap.cnf" +#line 307 "./asn1/xnap/xnap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 28, 28, FALSE, &cell_id_tvb, NULL); @@ -1515,9 +2040,9 @@ static const value_string xnap_NG_RAN_Cell_Identity_vals[] = { }; static const per_choice_t NG_RAN_Cell_Identity_choice[] = { - { 0, &hf_xnap_nr , ASN1_EXTENSION_ROOT , dissect_xnap_NR_Cell_Identity }, - { 1, &hf_xnap_e_utra , ASN1_EXTENSION_ROOT , dissect_xnap_E_UTRA_Cell_Identity }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_nr , ASN1_NO_EXTENSIONS , dissect_xnap_NR_Cell_Identity }, + { 1, &hf_xnap_e_utra , ASN1_NO_EXTENSIONS , dissect_xnap_E_UTRA_Cell_Identity }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -1561,9 +2086,210 @@ dissect_xnap_ListOfCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } + +static int +dissect_xnap_BIT_STRING_SIZE_22_32(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, + 22, 32, FALSE, NULL, NULL); + + return offset; +} + + +static const value_string xnap_GNB_ID_Choice_vals[] = { + { 0, "gnb-ID" }, + { 1, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t GNB_ID_Choice_choice[] = { + { 0, &hf_xnap_gnb_ID , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_22_32 }, + { 1, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_GNB_ID_Choice(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_xnap_GNB_ID_Choice, GNB_ID_Choice_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GlobalgNB_ID_sequence[] = { + { &hf_xnap_plmn_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PLMN_Identity }, + { &hf_xnap_gnb_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_GNB_ID_Choice }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_GlobalgNB_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_xnap_GlobalgNB_ID, GlobalgNB_ID_sequence); + + return offset; +} + + + +static int +dissect_xnap_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, NULL); + + return offset; +} + + + +static int +dissect_xnap_BIT_STRING_SIZE_18(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, + 18, 18, FALSE, NULL, NULL); + + return offset; +} + + + +static int +dissect_xnap_BIT_STRING_SIZE_21(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, + 21, 21, FALSE, NULL, NULL); + + return offset; +} + + +static const value_string xnap_ENB_ID_Choice_vals[] = { + { 0, "enb-ID-macro" }, + { 1, "enb-ID-shortmacro" }, + { 2, "enb-ID-longmacro" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ENB_ID_Choice_choice[] = { + { 0, &hf_xnap_enb_ID_macro , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_20 }, + { 1, &hf_xnap_enb_ID_shortmacro, ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_18 }, + { 2, &hf_xnap_enb_ID_longmacro, ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_21 }, + { 3, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_ENB_ID_Choice(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_xnap_ENB_ID_Choice, ENB_ID_Choice_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GlobalngeNB_ID_sequence[] = { + { &hf_xnap_plmn_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PLMN_Identity }, + { &hf_xnap_enb_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ENB_ID_Choice }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_GlobalngeNB_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_xnap_GlobalngeNB_ID, GlobalngeNB_ID_sequence); + + return offset; +} + + +static const value_string xnap_GlobalNG_RANNode_ID_vals[] = { + { GlobalNG_RANNode_ID_gNB, "gNB" }, + { GlobalNG_RANNode_ID_ng_eNB, "ng-eNB" }, + { GlobalNG_RANNode_ID_choice_extension, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t GlobalNG_RANNode_ID_choice[] = { + { GlobalNG_RANNode_ID_gNB, &hf_xnap_gNB , ASN1_NO_EXTENSIONS , dissect_xnap_GlobalgNB_ID }, + { GlobalNG_RANNode_ID_ng_eNB, &hf_xnap_ng_eNB , ASN1_NO_EXTENSIONS , dissect_xnap_GlobalngeNB_ID }, + { GlobalNG_RANNode_ID_choice_extension, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_GlobalNG_RANNode_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 93 "./asn1/xnap/xnap.cnf" + gint value; + struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); + + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_xnap_GlobalNG_RANNode_ID, GlobalNG_RANNode_ID_choice, + &value); + + if (xnap_data->xnap_conv && xnap_data->procedure_code == id_xnSetup) { + if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_a) && + actx->pinfo->srcport == xnap_data->xnap_conv->port_a) { + xnap_data->xnap_conv->ranmode_id_a = (GlobalNG_RANNode_ID_enum)value; + } else if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_b) && + actx->pinfo->srcport == xnap_data->xnap_conv->port_b) { + xnap_data->xnap_conv->ranmode_id_b = (GlobalNG_RANNode_ID_enum)value; + } + } + + + + return offset; +} + + +static const per_sequence_t GlobalNG_RANNodesinAoI_Item_sequence[] = { + { &hf_xnap_global_NG_RAN_Node_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_GlobalNG_RANNode_ID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_GlobalNG_RANNodesinAoI_Item(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_xnap_GlobalNG_RANNodesinAoI_Item, GlobalNG_RANNodesinAoI_Item_sequence); + + return offset; +} + + +static const per_sequence_t ListOfRANNodesinAoI_sequence_of[1] = { + { &hf_xnap_ListOfRANNodesinAoI_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_GlobalNG_RANNodesinAoI_Item }, +}; + +static int +dissect_xnap_ListOfRANNodesinAoI(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_xnap_ListOfRANNodesinAoI, ListOfRANNodesinAoI_sequence_of, + 1, maxnoofRANNodesinAoI, FALSE); + + return offset; +} + + + +static int +dissect_xnap_LocationReportingReferenceID(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, 64U, NULL, TRUE); + + return offset; +} + + static const per_sequence_t AreaOfInterest_Item_sequence[] = { { &hf_xnap_listOfTAIs , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ListOfTAIsinAoI }, { &hf_xnap_listOfCells , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ListOfCells }, + { &hf_xnap_listOfRANNodes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ListOfRANNodesinAoI }, + { &hf_xnap_locationReportingReferenceID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_LocationReportingReferenceID }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -1577,6 +2303,20 @@ dissect_xnap_AreaOfInterest_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const per_sequence_t AreaOfInterest_sequence_of[1] = { + { &hf_xnap_AreaOfInterest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_AreaOfInterest_Item }, +}; + +static int +dissect_xnap_AreaOfInterest(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_xnap_AreaOfInterest, AreaOfInterest_sequence_of, + 1, maxnoofAoIs, FALSE); + + return offset; +} + + static int dissect_xnap_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -1675,7 +2415,7 @@ dissect_xnap_AssistanceDataForRANPaging(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_xnap_AveragingWindow(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, 63U, NULL, FALSE); + 0U, 4095U, NULL, TRUE); return offset; } @@ -1727,7 +2467,7 @@ dissect_xnap_OCTET_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static const per_sequence_t S_NSSAI_sequence[] = { { &hf_xnap_sst , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_OCTET_STRING_SIZE_1 }, - { &hf_xnap_sd , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_OCTET_STRING_SIZE_3 }, + { &hf_xnap_sd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_OCTET_STRING_SIZE_3 }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -1813,7 +2553,9 @@ static const value_string xnap_CauseRadioNetworkLayer_vals[] = { { 38, "bearer-option-not-supported" }, { 39, "up-integrity-protection-not-possible" }, { 40, "up-confidentiality-protection-not-possible" }, - { 41, "unspecified" }, + { 41, "resources-not-available-for-the-slice" }, + { 42, "ue-max-IP-data-rate-reason" }, + { 43, "unspecified" }, { 0, NULL } }; @@ -1821,7 +2563,7 @@ static const value_string xnap_CauseRadioNetworkLayer_vals[] = { static int dissect_xnap_CauseRadioNetworkLayer(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, - 42, NULL, TRUE, 0, NULL); + 44, NULL, TRUE, 0, NULL); return offset; } @@ -1893,11 +2635,11 @@ static const value_string xnap_Cause_vals[] = { }; static const per_choice_t Cause_choice[] = { - { 0, &hf_xnap_radioNetwork , ASN1_EXTENSION_ROOT , dissect_xnap_CauseRadioNetworkLayer }, - { 1, &hf_xnap_transport , ASN1_EXTENSION_ROOT , dissect_xnap_CauseTransportLayer }, - { 2, &hf_xnap_protocol , ASN1_EXTENSION_ROOT , dissect_xnap_CauseProtocol }, - { 3, &hf_xnap_misc , ASN1_EXTENSION_ROOT , dissect_xnap_CauseMisc }, - { 4, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_radioNetwork , ASN1_NO_EXTENSIONS , dissect_xnap_CauseRadioNetworkLayer }, + { 1, &hf_xnap_transport , ASN1_NO_EXTENSIONS , dissect_xnap_CauseTransportLayer }, + { 2, &hf_xnap_protocol , ASN1_NO_EXTENSIONS , dissect_xnap_CauseProtocol }, + { 3, &hf_xnap_misc , ASN1_NO_EXTENSIONS , dissect_xnap_CauseMisc }, + { 4, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -1927,15 +2669,15 @@ dissect_xnap_NR_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro } -static const per_sequence_t SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI_sequence_of[1] = { +static const per_sequence_t SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI_sequence_of[1] = { { &hf_xnap_limitedNR_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_NR_CGI }, }; static int -dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI(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_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI, SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI_sequence_of, - 1, maxnoofCellsinNGRANnode, FALSE); + ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI, SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI_sequence_of, + 1, maxnoofCellsinNG_RANnode, FALSE); return offset; } @@ -1964,9 +2706,9 @@ static const value_string xnap_CellAssistanceInfo_NR_vals[] = { }; static const per_choice_t CellAssistanceInfo_NR_choice[] = { - { 0, &hf_xnap_limitedNR_List , ASN1_EXTENSION_ROOT , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI }, - { 1, &hf_xnap_full_List , ASN1_EXTENSION_ROOT , dissect_xnap_T_full_List }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_limitedNR_List , ASN1_NO_EXTENSIONS , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI }, + { 1, &hf_xnap_full_List , ASN1_NO_EXTENSIONS , dissect_xnap_T_full_List }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -1980,6 +2722,37 @@ dissect_xnap_CellAssistanceInfo_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const value_string xnap_T_eNDC_Support_vals[] = { + { 0, "supported" }, + { 1, "not-supported" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_eNDC_Support(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t Connectivity_Support_sequence[] = { + { &hf_xnap_eNDC_Support , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_eNDC_Support }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_Connectivity_Support(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_xnap_Connectivity_Support, Connectivity_Support_sequence); + + return offset; +} + + static int dissect_xnap_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -2055,7 +2828,7 @@ dissect_xnap_COUNT_PDCP_SN18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 261 "./asn1/xnap/xnap.cnf" +#line 338 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; proto_tree *subtree; int len; @@ -2093,8 +2866,8 @@ static const value_string xnap_CPTransportLayerInformation_vals[] = { }; static const per_choice_t CPTransportLayerInformation_choice[] = { - { 0, &hf_xnap_endpointIPAddress, ASN1_EXTENSION_ROOT , dissect_xnap_TransportLayerAddress }, - { 1, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_endpointIPAddress, ASN1_NO_EXTENSIONS , dissect_xnap_TransportLayerAddress }, + { 1, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -2215,20 +2988,6 @@ dissect_xnap_CyclicPrefix_E_UTRA_UL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t DataforwardingInfoperPDUSession_sequence_of[1] = { - { &hf_xnap_DataforwardingInfoperPDUSession_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, -}; - -static int -dissect_xnap_DataforwardingInfoperPDUSession(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_xnap_DataforwardingInfoperPDUSession, DataforwardingInfoperPDUSession_sequence_of, - 1, maxnoofPDUSessions, FALSE); - - return offset; -} - - static int dissect_xnap_PDUSession_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -2272,8 +3031,8 @@ static const value_string xnap_UPTransportLayerInformation_vals[] = { }; static const per_choice_t UPTransportLayerInformation_choice[] = { - { 0, &hf_xnap_gtpTunnel , ASN1_EXTENSION_ROOT , dissect_xnap_GTPtunnelTransportLayerInformation }, - { 1, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_gtpTunnel , ASN1_NO_EXTENSIONS , dissect_xnap_GTPtunnelTransportLayerInformation }, + { 1, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -2303,6 +3062,20 @@ dissect_xnap_DataforwardingInfoperPDUSession_Item(tvbuff_t *tvb _U_, int offset } +static const per_sequence_t DataforwardingInfoperPDUSession_sequence_of[1] = { + { &hf_xnap_DataforwardingInfoperPDUSession_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DataforwardingInfoperPDUSession_Item }, +}; + +static int +dissect_xnap_DataforwardingInfoperPDUSession(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_xnap_DataforwardingInfoperPDUSession, DataforwardingInfoperPDUSession_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + static const value_string xnap_DataForwardingAccepted_vals[] = { { 0, "data-forwarding-accepted" }, { 0, NULL } @@ -2318,36 +3091,6 @@ dissect_xnap_DataForwardingAccepted(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t DataForwardingResponseDRBItemList_sequence_of[1] = { - { &hf_xnap_DataForwardingResponseDRBItemList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, -}; - -static int -dissect_xnap_DataForwardingResponseDRBItemList(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_xnap_DataForwardingResponseDRBItemList, DataForwardingResponseDRBItemList_sequence_of, - 1, maxnoofDRBs, FALSE); - - return offset; -} - - -static const per_sequence_t DataForwardingInfoFromTargetNGRANnode_sequence[] = { - { &hf_xnap_pduSessionLevelDLDataForwardingInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, - { &hf_xnap_dataForwardingResponseDRBItemList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingResponseDRBItemList }, - { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_DataForwardingInfoFromTargetNGRANnode(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_xnap_DataForwardingInfoFromTargetNGRANnode, DataForwardingInfoFromTargetNGRANnode_sequence); - - return offset; -} - - static int dissect_xnap_DRB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -2375,6 +3118,46 @@ dissect_xnap_DataForwardingResponseDRBItem(tvbuff_t *tvb _U_, int offset _U_, as } +static const per_sequence_t DataForwardingResponseDRBItemList_sequence_of[1] = { + { &hf_xnap_DataForwardingResponseDRBItemList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DataForwardingResponseDRBItem }, +}; + +static int +dissect_xnap_DataForwardingResponseDRBItemList(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_xnap_DataForwardingResponseDRBItemList, DataForwardingResponseDRBItemList_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t DataForwardingInfoFromTargetNGRANnode_sequence[] = { + { &hf_xnap_pduSessionLevelDLDataForwardingInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dataForwardingResponseDRBItemList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingResponseDRBItemList }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DataForwardingInfoFromTargetNGRANnode(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_xnap_DataForwardingInfoFromTargetNGRANnode, DataForwardingInfoFromTargetNGRANnode_sequence); + + return offset; +} + + + +static int +dissect_xnap_QoSFlowIndicator(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, 63U, NULL, TRUE); + + return offset; +} + + static const value_string xnap_DLForwarding_vals[] = { { 0, "dl-forwarding-proposed" }, { 0, NULL } @@ -2390,14 +3173,389 @@ dissect_xnap_DLForwarding(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } -static const per_sequence_t DRBsSubjectToStatusTransfer_List_sequence_of[1] = { - { &hf_xnap_DRBsSubjectToStatusTransfer_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, +static const per_sequence_t QoSFLowsToBeForwarded_Item_sequence[] = { + { &hf_xnap_qosFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_dl_dataforwarding, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DLForwarding }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } }; static int -dissect_xnap_DRBsSubjectToStatusTransfer_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_QoSFLowsToBeForwarded_Item(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_xnap_QoSFLowsToBeForwarded_Item, QoSFLowsToBeForwarded_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFLowsToBeForwarded_List_sequence_of[1] = { + { &hf_xnap_QoSFLowsToBeForwarded_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFLowsToBeForwarded_Item }, +}; + +static int +dissect_xnap_QoSFLowsToBeForwarded_List(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_xnap_DRBsSubjectToStatusTransfer_List, DRBsSubjectToStatusTransfer_List_sequence_of, + ett_xnap_QoSFLowsToBeForwarded_List, QoSFLowsToBeForwarded_List_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t QoSFlow_Item_sequence[] = { + { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlow_Item(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_xnap_QoSFlow_Item, QoSFlow_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlows_List_sequence_of[1] = { + { &hf_xnap_QoSFlows_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlow_Item }, +}; + +static int +dissect_xnap_QoSFlows_List(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_xnap_QoSFlows_List, QoSFlows_List_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t DRBToQoSFlowMapping_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_qosFlows_List , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlows_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBToQoSFlowMapping_Item(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_xnap_DRBToQoSFlowMapping_Item, DRBToQoSFlowMapping_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBToQoSFlowMapping_List_sequence_of[1] = { + { &hf_xnap_DRBToQoSFlowMapping_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBToQoSFlowMapping_Item }, +}; + +static int +dissect_xnap_DRBToQoSFlowMapping_List(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_xnap_DRBToQoSFlowMapping_List, DRBToQoSFlowMapping_List_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t DataforwardingRequest_List_sequence[] = { + { &hf_xnap_qosFlowsToBeForwarded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFLowsToBeForwarded_List }, + { &hf_xnap_sourceDRBtoQoSFlowMapping, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBToQoSFlowMapping_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DataforwardingRequest_List(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_xnap_DataforwardingRequest_List, DataforwardingRequest_List_sequence); + + return offset; +} + + + +static int +dissect_xnap_DataTrafficResources(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, + 6, 17600, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t SharedResourceType_UL_OnlySharing_sequence[] = { + { &hf_xnap_ul_resourceBitmap, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResources }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType_UL_OnlySharing(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_xnap_SharedResourceType_UL_OnlySharing, SharedResourceType_UL_OnlySharing_sequence); + + return offset; +} + + + +static int +dissect_xnap_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_null(tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const per_sequence_t SharedResourceType_ULDL_Sharing_UL_ResourcesChanged_sequence[] = { + { &hf_xnap_ul_resourceBitmap, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResources }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType_ULDL_Sharing_UL_ResourcesChanged(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_xnap_SharedResourceType_ULDL_Sharing_UL_ResourcesChanged, SharedResourceType_ULDL_Sharing_UL_ResourcesChanged_sequence); + + return offset; +} + + +static const value_string xnap_SharedResourceType_ULDL_Sharing_UL_Resources_vals[] = { + { 0, "unchanged" }, + { 1, "changed" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t SharedResourceType_ULDL_Sharing_UL_Resources_choice[] = { + { 0, &hf_xnap_unchanged , ASN1_NO_EXTENSIONS , dissect_xnap_NULL }, + { 1, &hf_xnap_changed , ASN1_NO_EXTENSIONS , dissect_xnap_SharedResourceType_ULDL_Sharing_UL_ResourcesChanged }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType_ULDL_Sharing_UL_Resources(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_xnap_SharedResourceType_ULDL_Sharing_UL_Resources, SharedResourceType_ULDL_Sharing_UL_Resources_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SharedResourceType_ULDL_Sharing_DL_ResourcesChanged_sequence[] = { + { &hf_xnap_dl_resourceBitmap, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResources }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType_ULDL_Sharing_DL_ResourcesChanged(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_xnap_SharedResourceType_ULDL_Sharing_DL_ResourcesChanged, SharedResourceType_ULDL_Sharing_DL_ResourcesChanged_sequence); + + return offset; +} + + +static const value_string xnap_SharedResourceType_ULDL_Sharing_DL_Resources_vals[] = { + { 0, "unchanged" }, + { 1, "changed" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t SharedResourceType_ULDL_Sharing_DL_Resources_choice[] = { + { 0, &hf_xnap_unchanged , ASN1_NO_EXTENSIONS , dissect_xnap_NULL }, + { 1, &hf_xnap_changed_01 , ASN1_NO_EXTENSIONS , dissect_xnap_SharedResourceType_ULDL_Sharing_DL_ResourcesChanged }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType_ULDL_Sharing_DL_Resources(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_xnap_SharedResourceType_ULDL_Sharing_DL_Resources, SharedResourceType_ULDL_Sharing_DL_Resources_choice, + NULL); + + return offset; +} + + +static const value_string xnap_SharedResourceType_ULDL_Sharing_vals[] = { + { 0, "ul-resources" }, + { 1, "dl-resources" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t SharedResourceType_ULDL_Sharing_choice[] = { + { 0, &hf_xnap_ul_resources , ASN1_NO_EXTENSIONS , dissect_xnap_SharedResourceType_ULDL_Sharing_UL_Resources }, + { 1, &hf_xnap_dl_resources , ASN1_NO_EXTENSIONS , dissect_xnap_SharedResourceType_ULDL_Sharing_DL_Resources }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType_ULDL_Sharing(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_xnap_SharedResourceType_ULDL_Sharing, SharedResourceType_ULDL_Sharing_choice, + NULL); + + return offset; +} + + +static const value_string xnap_SharedResourceType_vals[] = { + { 0, "ul-onlySharing" }, + { 1, "ul-and-dl-Sharing" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t SharedResourceType_choice[] = { + { 0, &hf_xnap_ul_onlySharing , ASN1_NO_EXTENSIONS , dissect_xnap_SharedResourceType_UL_OnlySharing }, + { 1, &hf_xnap_ul_and_dl_Sharing, ASN1_NO_EXTENSIONS , dissect_xnap_SharedResourceType_ULDL_Sharing }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_SharedResourceType(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_xnap_SharedResourceType, SharedResourceType_choice, + NULL); + + return offset; +} + + +static const value_string xnap_T_subframeType_vals[] = { + { 0, "mbsfn" }, + { 1, "non-mbsfn" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_subframeType(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_xnap_BIT_STRING_SIZE_10_160(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, + 10, 160, FALSE, NULL, NULL); + + return offset; +} + + + +static int +dissect_xnap_MBSFNControlRegionLength(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, 3U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ReservedSubframePattern_sequence[] = { + { &hf_xnap_subframeType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_subframeType }, + { &hf_xnap_reservedSubframePattern_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_10_160 }, + { &hf_xnap_mbsfnControlRegionLength, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MBSFNControlRegionLength }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ReservedSubframePattern(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_xnap_ReservedSubframePattern, ReservedSubframePattern_sequence); + + return offset; +} + + +static const per_sequence_t DataTrafficResourceIndication_sequence[] = { + { &hf_xnap_activationSFN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ActivationSFN }, + { &hf_xnap_sharedResourceType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_SharedResourceType }, + { &hf_xnap_reservedSubframePattern, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ReservedSubframePattern }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DataTrafficResourceIndication(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_xnap_DataTrafficResourceIndication, DataTrafficResourceIndication_sequence); + + return offset; +} + + + +static int +dissect_xnap_DeliveryStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t DRB_List_sequence_of[1] = { + { &hf_xnap_DRB_List_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, +}; + +static int +dissect_xnap_DRB_List(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_xnap_DRB_List, DRB_List_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t DRB_List_withCause_Item_sequence[] = { + { &hf_xnap_drb_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_cause , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_Cause }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRB_List_withCause_Item(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_xnap_DRB_List_withCause_Item, DRB_List_withCause_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRB_List_withCause_sequence_of[1] = { + { &hf_xnap_DRB_List_withCause_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_List_withCause_Item }, +}; + +static int +dissect_xnap_DRB_List_withCause(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_xnap_DRB_List_withCause, DRB_List_withCause_sequence_of, 1, maxnoofDRBs, FALSE); return offset; @@ -2466,9 +3624,9 @@ static const value_string xnap_DRBBStatusTransferChoice_vals[] = { }; static const per_choice_t DRBBStatusTransferChoice_choice[] = { - { 0, &hf_xnap_pdcp_sn_12bits , ASN1_EXTENSION_ROOT , dissect_xnap_DRBBStatusTransfer12bitsSN }, - { 1, &hf_xnap_pdcp_sn_18bits , ASN1_EXTENSION_ROOT , dissect_xnap_DRBBStatusTransfer18bitsSN }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_pdcp_sn_12bits , ASN1_NO_EXTENSIONS , dissect_xnap_DRBBStatusTransfer12bitsSN }, + { 1, &hf_xnap_pdcp_sn_18bits , ASN1_NO_EXTENSIONS , dissect_xnap_DRBBStatusTransfer18bitsSN }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -2498,45 +3656,31 @@ dissect_xnap_DRBsSubjectToStatusTransfer_Item(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t DRBToQoSFlowMapping_List_sequence_of[1] = { - { &hf_xnap_DRBToQoSFlowMapping_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, +static const per_sequence_t DRBsSubjectToStatusTransfer_List_sequence_of[1] = { + { &hf_xnap_DRBsSubjectToStatusTransfer_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsSubjectToStatusTransfer_Item }, }; static int -dissect_xnap_DRBToQoSFlowMapping_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_DRBsSubjectToStatusTransfer_List(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_xnap_DRBToQoSFlowMapping_List, DRBToQoSFlowMapping_List_sequence_of, + ett_xnap_DRBsSubjectToStatusTransfer_List, DRBsSubjectToStatusTransfer_List_sequence_of, 1, maxnoofDRBs, FALSE); return offset; } -static const per_sequence_t QoSFlows_List_sequence_of[1] = { - { &hf_xnap_QoSFlows_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, +static const value_string xnap_DuplicationActivation_vals[] = { + { 0, "active" }, + { 1, "inactive" }, + { 0, NULL } }; -static int -dissect_xnap_QoSFlows_List(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_xnap_QoSFlows_List, QoSFlows_List_sequence_of, - 1, maxnoofQoSFlows, FALSE); - - return offset; -} - - -static const per_sequence_t DRBToQoSFlowMapping_Item_sequence[] = { - { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, - { &hf_xnap_qosFlows_List , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlows_List }, - { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; static int -dissect_xnap_DRBToQoSFlowMapping_Item(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_xnap_DRBToQoSFlowMapping_Item, DRBToQoSFlowMapping_Item_sequence); +dissect_xnap_DuplicationActivation(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, + 2, NULL, TRUE, 0, NULL); return offset; } @@ -2544,9 +3688,9 @@ dissect_xnap_DRBToQoSFlowMapping_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int -dissect_xnap_INTEGER_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_PriorityLevelQoS(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, 128U, NULL, FALSE); + 1U, 127U, NULL, TRUE); return offset; } @@ -2556,7 +3700,7 @@ dissect_xnap_INTEGER_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_xnap_PacketDelayBudget(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, 63U, NULL, FALSE); + 0U, 1023U, NULL, TRUE); return offset; } @@ -2564,9 +3708,45 @@ dissect_xnap_PacketDelayBudget(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int -dissect_xnap_PacketErrorRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_PER_Scalar(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, 63U, NULL, FALSE); + 0U, 9U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_xnap_PER_Exponent(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, 9U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t PacketErrorRate_sequence[] = { + { &hf_xnap_pER_Scalar , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PER_Scalar }, + { &hf_xnap_pER_Exponent , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PER_Exponent }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PacketErrorRate(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_xnap_PacketErrorRate, PacketErrorRate_sequence); + + return offset; +} + + + +static int +dissect_xnap_FiveQI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, TRUE); return offset; } @@ -2592,16 +3772,17 @@ dissect_xnap_T_delayCritical(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_MaximumDataBurstVolume(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, 63U, NULL, FALSE); + 0U, 4095U, NULL, TRUE); return offset; } static const per_sequence_t Dynamic5QIDescriptor_sequence[] = { - { &hf_xnap_priorityLevel_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_1_128 }, + { &hf_xnap_priorityLevelQoS, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PriorityLevelQoS }, { &hf_xnap_packetDelayBudget, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PacketDelayBudget }, { &hf_xnap_packetErrorRate, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PacketErrorRate }, + { &hf_xnap_fiveQI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_FiveQI }, { &hf_xnap_delayCritical , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_delayCritical }, { &hf_xnap_averagingWindow, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_AveragingWindow }, { &hf_xnap_maximumDataBurstVolume, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MaximumDataBurstVolume }, @@ -2800,6 +3981,16 @@ dissect_xnap_EventType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } + +static int +dissect_xnap_ExpectedUEBehaviour(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + static const value_string xnap_T_notificationControl_vals[] = { { 0, "notification-requested" }, { 0, NULL } @@ -2819,7 +4010,7 @@ dissect_xnap_T_notificationControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_xnap_PacketLossRate(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, 1000U, NULL, FALSE); + 0U, 1000U, NULL, TRUE); return offset; } @@ -2846,49 +4037,17 @@ dissect_xnap_GBRQoSFlowInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } - -static int -dissect_xnap_BIT_STRING_SIZE_22_32(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, - 22, 32, FALSE, NULL, NULL); - - return offset; -} - - -static const value_string xnap_GNB_ID_Choice_vals[] = { - { 0, "gnb-ID" }, - { 1, "choice-extension" }, - { 0, NULL } -}; - -static const per_choice_t GNB_ID_Choice_choice[] = { - { 0, &hf_xnap_gnb_ID , ASN1_EXTENSION_ROOT , dissect_xnap_BIT_STRING_SIZE_22_32 }, - { 1, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_xnap_GNB_ID_Choice(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_xnap_GNB_ID_Choice, GNB_ID_Choice_choice, - NULL); - - return offset; -} - - -static const per_sequence_t GlobalgNB_ID_sequence[] = { +static const per_sequence_t GlobalNG_RANCell_ID_sequence[] = { { &hf_xnap_plmn_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PLMN_Identity }, - { &hf_xnap_gnb_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_GNB_ID_Choice }, + { &hf_xnap_ng_RAN_Cell_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RAN_Cell_Identity }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; static int -dissect_xnap_GlobalgNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_GlobalNG_RANCell_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_xnap_GlobalgNB_ID, GlobalgNB_ID_sequence); + ett_xnap_GlobalNG_RANCell_ID, GlobalNG_RANCell_ID_sequence); return offset; } @@ -2896,9 +4055,9 @@ dissect_xnap_GlobalgNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int -dissect_xnap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_BIT_STRING_SIZE_8(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, NULL); + 8, 8, FALSE, NULL, NULL); return offset; } @@ -2906,9 +4065,9 @@ dissect_xnap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int -dissect_xnap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_BIT_STRING_SIZE_10(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, - 18, 18, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, NULL); return offset; } @@ -2916,109 +4075,9 @@ dissect_xnap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int -dissect_xnap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_BIT_STRING_SIZE_6(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, - 21, 21, FALSE, NULL, NULL); - - return offset; -} - - -static const value_string xnap_ENB_ID_Choice_vals[] = { - { 0, "enb-ID-macro" }, - { 1, "enb-ID-shortmacro" }, - { 2, "enb-ID-longmacro" }, - { 3, "choice-extension" }, - { 0, NULL } -}; - -static const per_choice_t ENB_ID_Choice_choice[] = { - { 0, &hf_xnap_enb_ID_macro , ASN1_EXTENSION_ROOT , dissect_xnap_BIT_STRING_SIZE_20 }, - { 1, &hf_xnap_enb_ID_shortmacro, ASN1_EXTENSION_ROOT , dissect_xnap_BIT_STRING_SIZE_18 }, - { 2, &hf_xnap_enb_ID_longmacro, ASN1_EXTENSION_ROOT , dissect_xnap_BIT_STRING_SIZE_21 }, - { 3, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_xnap_ENB_ID_Choice(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_xnap_ENB_ID_Choice, ENB_ID_Choice_choice, - NULL); - - return offset; -} - - -static const per_sequence_t GlobalngeNB_ID_sequence[] = { - { &hf_xnap_plmn_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PLMN_Identity }, - { &hf_xnap_enb_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ENB_ID_Choice }, - { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_GlobalngeNB_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_xnap_GlobalngeNB_ID, GlobalngeNB_ID_sequence); - - return offset; -} - - -static const value_string xnap_GlobalNG_RANNode_ID_vals[] = { - { GlobalNG_RANNode_ID_gNB, "gNB" }, - { GlobalNG_RANNode_ID_ng_eNB, "ng-eNB" }, - { GlobalNG_RANNode_ID_choice_extension, "choice-extension" }, - { 0, NULL } -}; - -static const per_choice_t GlobalNG_RANNode_ID_choice[] = { - { GlobalNG_RANNode_ID_gNB, &hf_xnap_gNB , ASN1_EXTENSION_ROOT , dissect_xnap_GlobalgNB_ID }, - { GlobalNG_RANNode_ID_ng_eNB, &hf_xnap_ng_eNB , ASN1_EXTENSION_ROOT , dissect_xnap_GlobalngeNB_ID }, - { GlobalNG_RANNode_ID_choice_extension, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_xnap_GlobalNG_RANNode_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 103 "./asn1/xnap/xnap.cnf" - gint value; - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); - - offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, - ett_xnap_GlobalNG_RANNode_ID, GlobalNG_RANNode_ID_choice, - &value); - - if (xnap_data->xnap_conv && xnap_data->procedure_code == id_xnSetup) { - if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_a)) { - xnap_data->xnap_conv->ranmode_id_a = (GlobalNG_RANNode_ID_enum)value; - } else if (addresses_equal(&actx->pinfo->src, &xnap_data->xnap_conv->addr_b)) { - xnap_data->xnap_conv->ranmode_id_b = (GlobalNG_RANNode_ID_enum)value; - } - } - - - - return offset; -} - - - -static int -dissect_xnap_OCTET_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL); - - return offset; -} - - - -static int -dissect_xnap_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, NULL); return offset; } @@ -3026,9 +4085,9 @@ dissect_xnap_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static const per_sequence_t GUAMI_sequence[] = { { &hf_xnap_plmn_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PLMN_Identity }, - { &hf_xnap_amf_region_if , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_OCTET_STRING_SIZE_2 }, - { &hf_xnap_amf_set_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_4 }, - { &hf_xnap_amf_pointer , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_4 }, + { &hf_xnap_amf_region_if , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_8 }, + { &hf_xnap_amf_set_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_10 }, + { &hf_xnap_amf_pointer , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_6 }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -3044,7 +4103,7 @@ dissect_xnap_GUAMI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int -dissect_xnap_I_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_BIT_STRING_SIZE_40(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, 40, 40, FALSE, NULL, NULL); @@ -3052,6 +4111,128 @@ dissect_xnap_I_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro } + +static int +dissect_xnap_BIT_STRING_SIZE_24(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, + 24, 24, FALSE, NULL, NULL); + + return offset; +} + + +static const value_string xnap_I_RNTI_vals[] = { + { 0, "i-RNTI-full" }, + { 1, "i-RNTI-short" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t I_RNTI_choice[] = { + { 0, &hf_xnap_i_RNTI_full , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_40 }, + { 1, &hf_xnap_i_RNTI_short , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_24 }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_I_RNTI(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_xnap_I_RNTI, I_RNTI_choice, + NULL); + + return offset; +} + + + +static int +dissect_xnap_LastVisitedNGRANCellInformation(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_xnap_LastVisitedEUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 457 "./asn1/xnap/xnap.cnf" + tvbuff_t *parameter_tvb = NULL; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_xnap_LastVisitedEUTRANCellInformation); + dissect_lte_rrc_VisitedCellInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + + +static int +dissect_xnap_LastVisitedUTRANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + + +static int +dissect_xnap_LastVisitedGERANCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const value_string xnap_LastVisitedCell_Item_vals[] = { + { 0, "nG-RAN-Cell" }, + { 1, "e-UTRAN-Cell" }, + { 2, "uTRAN-Cell" }, + { 3, "gERAN-Cell" }, + { 4, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t LastVisitedCell_Item_choice[] = { + { 0, &hf_xnap_nG_RAN_Cell , ASN1_NO_EXTENSIONS , dissect_xnap_LastVisitedNGRANCellInformation }, + { 1, &hf_xnap_e_UTRAN_Cell , ASN1_NO_EXTENSIONS , dissect_xnap_LastVisitedEUTRANCellInformation }, + { 2, &hf_xnap_uTRAN_Cell , ASN1_NO_EXTENSIONS , dissect_xnap_LastVisitedUTRANCellInformation }, + { 3, &hf_xnap_gERAN_Cell , ASN1_NO_EXTENSIONS , dissect_xnap_LastVisitedGERANCellInformation }, + { 4, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_LastVisitedCell_Item(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_xnap_LastVisitedCell_Item, LastVisitedCell_Item_choice, + NULL); + + return offset; +} + + + +static int +dissect_xnap_LCID(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, 32U, NULL, TRUE); + + return offset; +} + + static const value_string xnap_ReportArea_vals[] = { { 0, "cell" }, { 0, NULL } @@ -3084,6 +4265,22 @@ dissect_xnap_LocationReportingInformation(tvbuff_t *tvb _U_, int offset _U_, asn } +static const value_string xnap_LowerLayerPresenceStatusChange_vals[] = { + { 0, "release-lower-layers" }, + { 1, "re-establish-lower-layers" }, + { 0, NULL } +}; + + +static int +dissect_xnap_LowerLayerPresenceStatusChange(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + static int dissect_xnap_MAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -3104,21 +4301,32 @@ dissect_xnap_MaskedIMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } +static const value_string xnap_MaxIPrate_vals[] = { + { 0, "bitrate64kbs" }, + { 1, "max-UErate" }, + { 0, NULL } +}; + static int -dissect_xnap_BIT_STRING_SIZE_6(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, - 6, 6, FALSE, NULL, NULL); +dissect_xnap_MaxIPrate(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, + 2, NULL, TRUE, 0, NULL); return offset; } +static const per_sequence_t MaximumIPdatarate_sequence[] = { + { &hf_xnap_maxIPrate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_MaxIPrate }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; static int -dissect_xnap_BIT_STRING_SIZE_24(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, - 24, 24, FALSE, NULL, NULL); +dissect_xnap_MaximumIPdatarate(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_xnap_MaximumIPdatarate, MaximumIPdatarate_sequence); return offset; } @@ -3132,9 +4340,9 @@ static const value_string xnap_MBSFNSubframeAllocation_E_UTRA_vals[] = { }; static const per_choice_t MBSFNSubframeAllocation_E_UTRA_choice[] = { - { 0, &hf_xnap_oneframe , ASN1_EXTENSION_ROOT , dissect_xnap_BIT_STRING_SIZE_6 }, - { 1, &hf_xnap_fourframes , ASN1_EXTENSION_ROOT , dissect_xnap_BIT_STRING_SIZE_24 }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_oneframe , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_6 }, + { 1, &hf_xnap_fourframes , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_24 }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -3226,7 +4434,7 @@ dissect_xnap_SEQUENCE_SIZE_1_maxnoofEPLMNs_OF_PLMN_Identity(tvbuff_t *tvb _U_, i static int dissect_xnap_RAT_RestrictionInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 340 "./asn1/xnap/xnap.cnf" +#line 417 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, TRUE, ¶meter_tvb, NULL); @@ -3385,11 +4593,22 @@ dissect_xnap_MobilityRestrictionList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } + +static int +dissect_xnap_RANAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + static const per_sequence_t NeighbourInformation_E_UTRA_Item_sequence[] = { { &hf_xnap_e_utra_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAPCI }, { &hf_xnap_e_utra_cgi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRA_CGI }, { &hf_xnap_earfcn , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAARFCN }, { &hf_xnap_tac , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_TAC }, + { &hf_xnap_ranac , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RANAC }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -3418,6 +4637,16 @@ dissect_xnap_NeighbourInformation_E_UTRA(tvbuff_t *tvb _U_, int offset _U_, asn1 +static int +dissect_xnap_NRPCI(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, 1007U, NULL, TRUE); + + return offset; +} + + + static int dissect_xnap_NRARFCN(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, @@ -3427,11 +4656,78 @@ dissect_xnap_NRARFCN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr } +static const value_string xnap_NRSCS_vals[] = { + { 0, "scs15" }, + { 1, "scs30" }, + { 2, "scs60" }, + { 3, "scs120" }, + { 0, NULL } +}; + + +static int +dissect_xnap_NRSCS(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, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string xnap_NRNRB_vals[] = { + { 0, "nrb11" }, + { 1, "nrb18" }, + { 2, "nrb24" }, + { 3, "nrb25" }, + { 4, "nrb31" }, + { 5, "nrb32" }, + { 6, "nrb38" }, + { 7, "nrb51" }, + { 8, "nrb52" }, + { 9, "nrb65" }, + { 10, "nrb66" }, + { 11, "nrb78" }, + { 12, "nrb79" }, + { 13, "nrb93" }, + { 14, "nrb106" }, + { 15, "nrb107" }, + { 16, "nrb121" }, + { 17, "nrb132" }, + { 18, "nrb133" }, + { 19, "nrb135" }, + { 20, "nrb160" }, + { 21, "nrb162" }, + { 22, "nrb189" }, + { 23, "nrb216" }, + { 24, "nrb217" }, + { 25, "nrb245" }, + { 26, "nrb264" }, + { 27, "nrb270" }, + { 28, "nrb273" }, + { 0, NULL } +}; + + +static int +dissect_xnap_NRNRB(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, + 29, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NRTransmissionBandwidth_sequence[] = { + { &hf_xnap_nRSCS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NRSCS }, + { &hf_xnap_nRNRB , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NRNRB }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; static int dissect_xnap_NRTransmissionBandwidth(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, TRUE); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_xnap_NRTransmissionBandwidth, NRTransmissionBandwidth_sequence); return offset; } @@ -3588,9 +4884,9 @@ static const value_string xnap_NeighbourInformation_NR_ModeInfo_vals[] = { }; static const per_choice_t NeighbourInformation_NR_ModeInfo_choice[] = { - { 0, &hf_xnap_fdd_info , ASN1_EXTENSION_ROOT , dissect_xnap_NeighbourInformation_NR_ModeFDDInfo }, - { 1, &hf_xnap_tdd_info , ASN1_EXTENSION_ROOT , dissect_xnap_NeighbourInformation_NR_ModeTDDInfo }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_fdd_info , ASN1_NO_EXTENSIONS , dissect_xnap_NeighbourInformation_NR_ModeFDDInfo }, + { 1, &hf_xnap_tdd_info , ASN1_NO_EXTENSIONS , dissect_xnap_NeighbourInformation_NR_ModeTDDInfo }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -3605,11 +4901,12 @@ dissect_xnap_NeighbourInformation_NR_ModeInfo(tvbuff_t *tvb _U_, int offset _U_, static const per_sequence_t NeighbourInformation_NR_Item_sequence[] = { - { &hf_xnap_e_utra_cgi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRA_CGI }, - { &hf_xnap_e_utra_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAPCI }, - { &hf_xnap_earfcn , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAARFCN }, + { &hf_xnap_nr_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NRPCI }, + { &hf_xnap_nr_cgi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NR_CGI }, { &hf_xnap_tac , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_TAC }, + { &hf_xnap_ranac , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RANAC }, { &hf_xnap_nr_mode_info , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NeighbourInformation_NR_ModeInfo }, + { &hf_xnap_connectivitySupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_Connectivity_Support }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -3637,16 +4934,6 @@ dissect_xnap_NeighbourInformation_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } - -static int -dissect_xnap_NRPCI(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, 1007U, NULL, TRUE); - - return offset; -} - - static const value_string xnap_NG_RAN_CellPCI_vals[] = { { 0, "nr" }, { 1, "e-utra" }, @@ -3655,9 +4942,9 @@ static const value_string xnap_NG_RAN_CellPCI_vals[] = { }; static const per_choice_t NG_RAN_CellPCI_choice[] = { - { 0, &hf_xnap_nr_01 , ASN1_EXTENSION_ROOT , dissect_xnap_NRPCI }, - { 1, &hf_xnap_e_utra_01 , ASN1_EXTENSION_ROOT , dissect_xnap_E_UTRAPCI }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_nr_01 , ASN1_NO_EXTENSIONS , dissect_xnap_NRPCI }, + { 1, &hf_xnap_e_utra_01 , ASN1_NO_EXTENSIONS , dissect_xnap_E_UTRAPCI }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -3681,19 +4968,9 @@ dissect_xnap_NG_RANnodeUEXnAPID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } - -static int -dissect_xnap_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 255U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t NonDynamic5QIDescriptor_sequence[] = { - { &hf_xnap_fiveQI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_0_255 }, - { &hf_xnap_priorityLevel_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_INTEGER_1_128 }, + { &hf_xnap_fiveQI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_FiveQI }, + { &hf_xnap_priorityLevelQoS, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PriorityLevelQoS }, { &hf_xnap_averagingWindow, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_AveragingWindow }, { &hf_xnap_maximumDataBurstVolume, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MaximumDataBurstVolume }, { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, @@ -3765,9 +5042,9 @@ static const value_string xnap_NRModeInfo_vals[] = { }; static const per_choice_t NRModeInfo_choice[] = { - { 0, &hf_xnap_fdd , ASN1_EXTENSION_ROOT , dissect_xnap_NRModeInfoFDD }, - { 1, &hf_xnap_tdd , ASN1_EXTENSION_ROOT , dissect_xnap_NRModeInfoTDD }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_fdd , ASN1_NO_EXTENSIONS , dissect_xnap_NRModeInfoFDD }, + { 1, &hf_xnap_tdd , ASN1_NO_EXTENSIONS , dissect_xnap_NRModeInfoTDD }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -3781,10 +5058,28 @@ dissect_xnap_NRModeInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const value_string xnap_NRSCS_SSB_vals[] = { + { 0, "scs15" }, + { 1, "scs30" }, + { 2, "scs120" }, + { 3, "scs240" }, + { 0, NULL } +}; + + +static int +dissect_xnap_NRSCS_SSB(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, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + static const value_string xnap_NumberOfAntennaPorts_E_UTRA_vals[] = { { 0, "an1" }, { 1, "an2" }, - { 2, "an3" }, + { 2, "an4" }, { 0, NULL } }; @@ -3798,32 +5093,255 @@ dissect_xnap_NumberOfAntennaPorts_E_UTRA(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const value_string xnap_PagingDRX_vals[] = { + { 0, "v32" }, + { 1, "v64" }, + { 2, "v128" }, + { 3, "v256" }, + { 0, NULL } +}; + static int dissect_xnap_PagingDRX(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, 63U, NULL, FALSE); + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); return offset; } -static const per_sequence_t PDUSessionResourcesAdmitted_List_sequence_of[1] = { - { &hf_xnap_PDUSessionResourcesAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, +static const value_string xnap_PagingPriority_vals[] = { + { 0, "priolevel1" }, + { 1, "priolevel2" }, + { 2, "priolevel3" }, + { 3, "priolevel4" }, + { 4, "priolevel5" }, + { 5, "priolevel6" }, + { 6, "priolevel7" }, + { 7, "priolevel8" }, + { 0, NULL } +}; + + +static int +dissect_xnap_PagingPriority(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, + 8, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string xnap_T_from_S_NG_RAN_node_vals[] = { + { 0, "s-ng-ran-node-key-update-required" }, + { 1, "pdcp-data-recovery-required" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_from_S_NG_RAN_node(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string xnap_T_from_M_NG_RAN_node_vals[] = { + { 0, "pdcp-data-recovery-required" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_from_M_NG_RAN_node(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 value_string xnap_PDCPChangeIndication_vals[] = { + { 0, "from-S-NG-RAN-node" }, + { 1, "from-M-NG-RAN-node" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t PDCPChangeIndication_choice[] = { + { 0, &hf_xnap_from_S_NG_RAN_node, ASN1_NO_EXTENSIONS , dissect_xnap_T_from_S_NG_RAN_node }, + { 1, &hf_xnap_from_M_NG_RAN_node, ASN1_NO_EXTENSIONS , dissect_xnap_T_from_M_NG_RAN_node }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } }; static int -dissect_xnap_PDUSessionResourcesAdmitted_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_PDCPChangeIndication(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_xnap_PDCPChangeIndication, PDCPChangeIndication_choice, + NULL); + + return offset; +} + + +static const value_string xnap_PDCPSNLength_vals[] = { + { 0, "v12bits" }, + { 1, "v18bits" }, + { 0, NULL } +}; + + +static int +dissect_xnap_PDCPSNLength(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PDUSessionAggregateMaximumBitRate_sequence[] = { + { &hf_xnap_downlink_session_AMBR, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BitRate }, + { &hf_xnap_uplink_session_AMBR, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BitRate }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAggregateMaximumBitRate(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_xnap_PDUSessionAggregateMaximumBitRate, PDUSessionAggregateMaximumBitRate_sequence); + + return offset; +} + + +static const per_sequence_t PDUSession_List_sequence_of[1] = { + { &hf_xnap_PDUSession_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, +}; + +static int +dissect_xnap_PDUSession_List(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_xnap_PDUSessionResourcesAdmitted_List, PDUSessionResourcesAdmitted_List_sequence_of, + ett_xnap_PDUSession_List, PDUSession_List_sequence_of, 1, maxnoofPDUSessions, FALSE); return offset; } +static const per_sequence_t PDUSession_List_withCause_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_cause , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_Cause }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSession_List_withCause_Item(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_xnap_PDUSession_List_withCause_Item, PDUSession_List_withCause_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSession_List_withCause_sequence_of[1] = { + { &hf_xnap_PDUSession_List_withCause_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_List_withCause_Item }, +}; + +static int +dissect_xnap_PDUSession_List_withCause(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_xnap_PDUSession_List_withCause, PDUSession_List_withCause_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSession_List_withDataForwardingFromTarget_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_dataforwardinginfoTarget, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataForwardingInfoFromTargetNGRANnode }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSession_List_withDataForwardingFromTarget_Item(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_xnap_PDUSession_List_withDataForwardingFromTarget_Item, PDUSession_List_withDataForwardingFromTarget_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSession_List_withDataForwardingFromTarget_sequence_of[1] = { + { &hf_xnap_PDUSession_List_withDataForwardingFromTarget_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_List_withDataForwardingFromTarget_Item }, +}; + +static int +dissect_xnap_PDUSession_List_withDataForwardingFromTarget(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_xnap_PDUSession_List_withDataForwardingFromTarget, PDUSession_List_withDataForwardingFromTarget_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSession_List_withDataForwardingRequest_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_dataforwardingRequest_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataforwardingRequest_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSession_List_withDataForwardingRequest_Item(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_xnap_PDUSession_List_withDataForwardingRequest_Item, PDUSession_List_withDataForwardingRequest_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSession_List_withDataForwardingRequest_sequence_of[1] = { + { &hf_xnap_PDUSession_List_withDataForwardingRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_List_withDataForwardingRequest_Item }, +}; + +static int +dissect_xnap_PDUSession_List_withDataForwardingRequest(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_xnap_PDUSession_List_withDataForwardingRequest, PDUSession_List_withDataForwardingRequest_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t QoSFlowAdmitted_Item_sequence[] = { + { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_dataForwardingAccepted, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingAccepted }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowAdmitted_Item(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_xnap_QoSFlowAdmitted_Item, QoSFlowAdmitted_Item_sequence); + + return offset; +} + + static const per_sequence_t QoSFlowsAdmitted_List_sequence_of[1] = { - { &hf_xnap_QoSFlowsAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, + { &hf_xnap_QoSFlowsAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowAdmitted_Item }, }; static int @@ -3836,8 +5354,24 @@ dissect_xnap_QoSFlowsAdmitted_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const per_sequence_t QoSFlowNotAdmitted_Item_sequence[] = { + { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_Cause }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowNotAdmitted_Item(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_xnap_QoSFlowNotAdmitted_Item, QoSFlowNotAdmitted_Item_sequence); + + return offset; +} + + static const per_sequence_t QoSFlowsNotAdmitted_List_sequence_of[1] = { - { &hf_xnap_QoSFlowsNotAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, + { &hf_xnap_QoSFlowsNotAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowNotAdmitted_Item }, }; static int @@ -3851,8 +5385,8 @@ dissect_xnap_QoSFlowsNotAdmitted_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static const per_sequence_t PDUSessionResourceAdmittedInfo_sequence[] = { - { &hf_xnap_qosFlowsAdmitted_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsAdmitted_List }, - { &hf_xnap_qosFlowsNotAdmitted_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsNotAdmitted_List }, + { &hf_xnap_qosFlowsAdmitted_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsAdmitted_List }, + { &hf_xnap_qosFlowsNotAdmitted_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsNotAdmitted_List }, { &hf_xnap_dataForwardingInfoFromTarget, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingInfoFromTargetNGRANnode }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } @@ -3869,7 +5403,7 @@ dissect_xnap_PDUSessionResourceAdmittedInfo(tvbuff_t *tvb _U_, int offset _U_, a static const per_sequence_t PDUSessionResourcesAdmitted_Item_sequence[] = { { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, - { &hf_xnap_pduSessionResourceAdmittedInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionResourceAdmittedInfo }, + { &hf_xnap_pduSessionResourceAdmittedInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourceAdmittedInfo }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -3883,14 +5417,14 @@ dissect_xnap_PDUSessionResourcesAdmitted_Item(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t PDUSessionResourcesNotAdmitted_List_sequence_of[1] = { - { &hf_xnap_PDUSessionResourcesNotAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, +static const per_sequence_t PDUSessionResourcesAdmitted_List_sequence_of[1] = { + { &hf_xnap_PDUSessionResourcesAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesAdmitted_Item }, }; static int -dissect_xnap_PDUSessionResourcesNotAdmitted_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_PDUSessionResourcesAdmitted_List(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_xnap_PDUSessionResourcesNotAdmitted_List, PDUSessionResourcesNotAdmitted_List_sequence_of, + ett_xnap_PDUSessionResourcesAdmitted_List, PDUSessionResourcesAdmitted_List_sequence_of, 1, maxnoofPDUSessions, FALSE); return offset; @@ -3913,30 +5447,20 @@ dissect_xnap_PDUSessionResourcesNotAdmitted_Item(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t PDUSessionResourcesToBeSetup_List_sequence_of[1] = { - { &hf_xnap_PDUSessionResourcesToBeSetup_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, +static const per_sequence_t PDUSessionResourcesNotAdmitted_List_sequence_of[1] = { + { &hf_xnap_PDUSessionResourcesNotAdmitted_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesNotAdmitted_Item }, }; static int -dissect_xnap_PDUSessionResourcesToBeSetup_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_PDUSessionResourcesNotAdmitted_List(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_xnap_PDUSessionResourcesToBeSetup_List, PDUSessionResourcesToBeSetup_List_sequence_of, + ett_xnap_PDUSessionResourcesNotAdmitted_List, PDUSessionResourcesNotAdmitted_List_sequence_of, 1, maxnoofPDUSessions, FALSE); return offset; } - -static int -dissect_xnap_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL); - - return offset; -} - - static const value_string xnap_T_integrityProtectionIndication_vals[] = { { 0, "required" }, { 1, "preferred" }, @@ -3974,6 +5498,7 @@ dissect_xnap_T_confidentialityProtectionIndication(tvbuff_t *tvb _U_, int offset static const per_sequence_t SecurityIndication_sequence[] = { { &hf_xnap_integrityProtectionIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_integrityProtectionIndication }, { &hf_xnap_confidentialityProtectionIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_confidentialityProtectionIndication }, + { &hf_xnap_maximumIPdatarate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MaximumIPdatarate }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4006,42 +5531,6 @@ dissect_xnap_PDUSessionType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t QoSFlowsToBeSetup_List_sequence_of[1] = { - { &hf_xnap_QoSFlowsToBeSetup_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, -}; - -static int -dissect_xnap_QoSFlowsToBeSetup_List(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_xnap_QoSFlowsToBeSetup_List, QoSFlowsToBeSetup_List_sequence_of, - 1, maxnoofQoSFlows, FALSE); - - return offset; -} - - -static const per_sequence_t PDUSessionResourcesToBeSetup_Item_sequence[] = { - { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, - { &hf_xnap_s_NSSAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_S_NSSAI }, - { &hf_xnap_pduSessionAMBR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_OCTET_STRING }, - { &hf_xnap_uL_NG_U_TNLatUPF, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, - { &hf_xnap_securityIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SecurityIndication }, - { &hf_xnap_pduSessionType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionType }, - { &hf_xnap_qosFlowsToBeSetup_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsToBeSetup_List }, - { &hf_xnap_sourceDRBtoQoSFlowMapping, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBToQoSFlowMapping_List }, - { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_PDUSessionResourcesToBeSetup_Item(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_xnap_PDUSessionResourcesToBeSetup_Item, PDUSessionResourcesToBeSetup_Item_sequence); - - return offset; -} - - static const value_string xnap_QoSCharacteristics_vals[] = { { 0, "non-dynamic" }, { 1, "dynamic" }, @@ -4050,9 +5539,9 @@ static const value_string xnap_QoSCharacteristics_vals[] = { }; static const per_choice_t QoSCharacteristics_choice[] = { - { 0, &hf_xnap_non_dynamic , ASN1_EXTENSION_ROOT , dissect_xnap_NonDynamic5QIDescriptor }, - { 1, &hf_xnap_dynamic , ASN1_EXTENSION_ROOT , dissect_xnap_Dynamic5QIDescriptor }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_non_dynamic , ASN1_NO_EXTENSIONS , dissect_xnap_NonDynamic5QIDescriptor }, + { 1, &hf_xnap_dynamic , ASN1_NO_EXTENSIONS , dissect_xnap_Dynamic5QIDescriptor }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -4066,16 +5555,6 @@ dissect_xnap_QoSCharacteristics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } - -static int -dissect_xnap_QoSFlowIndicator(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, 63U, NULL, TRUE); - - return offset; -} - - static const value_string xnap_ReflectiveQoSAttribute_vals[] = { { 0, "subject-to-reflective-QoS" }, { 0, NULL } @@ -4106,23 +5585,12 @@ dissect_xnap_T_additionalQoSflowInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } - -static int -dissect_xnap_INTEGER_1_8_(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, 8U, NULL, TRUE); - - return offset; -} - - static const per_sequence_t QoSFlowLevelQoSParameters_sequence[] = { { &hf_xnap_qos_characteristics, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSCharacteristics }, { &hf_xnap_allocationAndRetentionPrio, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_AllocationandRetentionPriority }, { &hf_xnap_gBRQoSFlowInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_GBRQoSFlowInfo }, { &hf_xnap_relectiveQoS , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ReflectiveQoSAttribute }, { &hf_xnap_additionalQoSflowInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_additionalQoSflowInfo }, - { &hf_xnap_pPI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_INTEGER_1_8_ }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4136,53 +5604,6 @@ dissect_xnap_QoSFlowLevelQoSParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t QoSFlow_Item_sequence[] = { - { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, - { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_QoSFlow_Item(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_xnap_QoSFlow_Item, QoSFlow_Item_sequence); - - return offset; -} - - -static const per_sequence_t QoSFlowAdmitted_Item_sequence[] = { - { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, - { &hf_xnap_dataForwardingAccepted, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingAccepted }, - { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_QoSFlowAdmitted_Item(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_xnap_QoSFlowAdmitted_Item, QoSFlowAdmitted_Item_sequence); - - return offset; -} - - -static const per_sequence_t QoSFlowNotAdmitted_Item_sequence[] = { - { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, - { &hf_xnap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_Cause }, - { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_QoSFlowNotAdmitted_Item(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_xnap_QoSFlowNotAdmitted_Item, QoSFlowNotAdmitted_Item_sequence); - - return offset; -} - - static const per_sequence_t QoSFlowsToBeSetup_Item_sequence[] = { { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, { &hf_xnap_dlDataForwarding, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DLForwarding }, @@ -4201,11 +5622,1097 @@ dissect_xnap_QoSFlowsToBeSetup_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } +static const per_sequence_t QoSFlowsToBeSetup_List_sequence_of[1] = { + { &hf_xnap_QoSFlowsToBeSetup_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsToBeSetup_Item }, +}; static int -dissect_xnap_RANAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_QoSFlowsToBeSetup_List(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_xnap_QoSFlowsToBeSetup_List, QoSFlowsToBeSetup_List_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourcesToBeSetup_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_s_NSSAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_S_NSSAI }, + { &hf_xnap_pduSessionAMBR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionAggregateMaximumBitRate }, + { &hf_xnap_uL_NG_U_TNLatUPF, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_securityIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SecurityIndication }, + { &hf_xnap_pduSessionType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionType }, + { &hf_xnap_qosFlowsToBeSetup_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsToBeSetup_List }, + { &hf_xnap_sourceDRBtoQoSFlowMapping, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBToQoSFlowMapping_List }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourcesToBeSetup_Item(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_xnap_PDUSessionResourcesToBeSetup_Item, PDUSessionResourcesToBeSetup_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourcesToBeSetup_List_sequence_of[1] = { + { &hf_xnap_PDUSessionResourcesToBeSetup_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesToBeSetup_Item }, +}; + +static int +dissect_xnap_PDUSessionResourcesToBeSetup_List(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_xnap_PDUSessionResourcesToBeSetup_List, PDUSessionResourcesToBeSetup_List_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t QoSFlowsToBeSetup_List_Setup_SNterminated_Item_sequence[] = { + { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_qosFlowLevelQoSParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_offeredGBRQoSFlowInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_GBRQoSFlowInfo }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_Item(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_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_Item, QoSFlowsToBeSetup_List_Setup_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsToBeSetup_List_Setup_SNterminated_sequence_of[1] = { + { &hf_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_Item }, +}; + +static int +dissect_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated(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_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated, QoSFlowsToBeSetup_List_Setup_SNterminated_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceSetupInfo_SNterminated_sequence[] = { + { &hf_xnap_uL_NG_U_TNLatUPF, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_pduSessionType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionType }, + { &hf_xnap_qosFlowsToBeSetup_List_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated }, + { &hf_xnap_dlForwarding , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DLForwarding }, + { &hf_xnap_securityIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SecurityIndication }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceSetupInfo_SNterminated(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_xnap_PDUSessionResourceSetupInfo_SNterminated, PDUSessionResourceSetupInfo_SNterminated_sequence); + + return offset; +} + + +static const value_string xnap_RLCMode_vals[] = { + { 0, "rlc-am" }, + { 1, "rlc-um-bidirectional" }, + { 2, "rlc-um-unidirectional-ul" }, + { 3, "rlc-um-unidirectional-dl" }, + { 0, NULL } +}; + + +static int +dissect_xnap_RLCMode(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, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item_sequence[] = { + { &hf_xnap_qoSFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_mCGRequestedGBRQoSFlowInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_GBRQoSFlowInfo }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item(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_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item, QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsMappedtoDRB_SetupResponse_SNterminated_sequence_of[1] = { + { &hf_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item }, +}; + +static int +dissect_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated(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_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated, QoSFlowsMappedtoDRB_SetupResponse_SNterminated_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t DRBsToBeSetupList_SetupResponse_SNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_sN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRB_QoS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_pDCP_SNLength , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDCPSNLength }, + { &hf_xnap_rLC_Mode , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RLCMode }, + { &hf_xnap_secondary_SN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_duplicationActivation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DuplicationActivation }, + { &hf_xnap_qoSFlowsMappedtoDRB_SetupResponse_SNterminated, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_Item(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_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_Item, DRBsToBeSetupList_SetupResponse_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeSetupList_SetupResponse_SNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeSetupList_SetupResponse_SNterminated(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_xnap_DRBsToBeSetupList_SetupResponse_SNterminated, DRBsToBeSetupList_SetupResponse_SNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t QoSFlowwithCause_Item_sequence[] = { + { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_cause , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_Cause }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowwithCause_Item(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_xnap_QoSFlowwithCause_Item, QoSFlowwithCause_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlows_List_withCause_sequence_of[1] = { + { &hf_xnap_QoSFlows_List_withCause_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowwithCause_Item }, +}; + +static int +dissect_xnap_QoSFlows_List_withCause(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_xnap_QoSFlows_List_withCause, QoSFlows_List_withCause_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const value_string xnap_T_integrityProtectionResult_vals[] = { + { 0, "performed" }, + { 1, "not-performed" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_integrityProtectionResult(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string xnap_T_confidentialityProtectionResult_vals[] = { + { 0, "performed" }, + { 1, "not-performed" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_confidentialityProtectionResult(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SecurityResult_sequence[] = { + { &hf_xnap_integrityProtectionResult, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_integrityProtectionResult }, + { &hf_xnap_confidentialityProtectionResult, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_confidentialityProtectionResult }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_SecurityResult(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_xnap_SecurityResult, SecurityResult_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceSetupResponseInfo_SNterminated_sequence[] = { + { &hf_xnap_dL_NG_U_TNLatNG_RAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRBsToBeSetup , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeSetupList_SetupResponse_SNterminated }, + { &hf_xnap_qosFlowsNotAdmittedList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlows_List_withCause }, + { &hf_xnap_dLForwardingUPTNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_uLForwardingUPTNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_securityResult , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SecurityResult }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceSetupResponseInfo_SNterminated(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_xnap_PDUSessionResourceSetupResponseInfo_SNterminated, PDUSessionResourceSetupResponseInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsMappedtoDRB_Setup_MNterminated_Item_sequence[] = { + { &hf_xnap_qoSFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_qoSFlowLevelQoSParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_Item(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_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_Item, QoSFlowsMappedtoDRB_Setup_MNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsMappedtoDRB_Setup_MNterminated_sequence_of[1] = { + { &hf_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_Item }, +}; + +static int +dissect_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated(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_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated, QoSFlowsMappedtoDRB_Setup_MNterminated_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t DRBsToBeSetupList_Setup_MNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_mN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_rLC_Mode , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RLCMode }, + { &hf_xnap_dRB_QoS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_pDCP_SNLength , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDCPSNLength }, + { &hf_xnap_secondary_MN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_duplicationActivation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DuplicationActivation }, + { &hf_xnap_qoSFlowsMappedtoDRB_Setup_MNterminated, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeSetupList_Setup_MNterminated_Item(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_xnap_DRBsToBeSetupList_Setup_MNterminated_Item, DRBsToBeSetupList_Setup_MNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeSetupList_Setup_MNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeSetupList_Setup_MNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeSetupList_Setup_MNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeSetupList_Setup_MNterminated(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_xnap_DRBsToBeSetupList_Setup_MNterminated, DRBsToBeSetupList_Setup_MNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceSetupInfo_MNterminated_sequence[] = { + { &hf_xnap_pduSessionType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionType }, + { &hf_xnap_dRBsToBeSetup_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeSetupList_Setup_MNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceSetupInfo_MNterminated(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_xnap_PDUSessionResourceSetupInfo_MNterminated, PDUSessionResourceSetupInfo_MNterminated_sequence); + + return offset; +} + + +static const per_sequence_t DRBsAdmittedList_SetupResponse_MNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_sN_DL_SCG_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_secondary_SN_DL_SCG_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_lCID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_LCID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsAdmittedList_SetupResponse_MNterminated_Item(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_xnap_DRBsAdmittedList_SetupResponse_MNterminated_Item, DRBsAdmittedList_SetupResponse_MNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsAdmittedList_SetupResponse_MNterminated_sequence_of[1] = { + { &hf_xnap_DRBsAdmittedList_SetupResponse_MNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsAdmittedList_SetupResponse_MNterminated_Item }, +}; + +static int +dissect_xnap_DRBsAdmittedList_SetupResponse_MNterminated(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_xnap_DRBsAdmittedList_SetupResponse_MNterminated, DRBsAdmittedList_SetupResponse_MNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceSetupResponseInfo_MNterminated_sequence[] = { + { &hf_xnap_dRBsAdmittedList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsAdmittedList_SetupResponse_MNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceSetupResponseInfo_MNterminated(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_xnap_PDUSessionResourceSetupResponseInfo_MNterminated, PDUSessionResourceSetupResponseInfo_MNterminated_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsToBeSetup_List_Modified_SNterminated_Item_sequence[] = { + { &hf_xnap_qfi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_qosFlowLevelQoSParameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_offeredGBRQoSFlowInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_GBRQoSFlowInfo }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_Item(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_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_Item, QoSFlowsToBeSetup_List_Modified_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsToBeSetup_List_Modified_SNterminated_sequence_of[1] = { + { &hf_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_Item }, +}; + +static int +dissect_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated(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_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated, QoSFlowsToBeSetup_List_Modified_SNterminated_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t DRBsToBeModified_List_Modified_SNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_mN_DL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_secondary_MN_DL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_lCID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_LCID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeModified_List_Modified_SNterminated_Item(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_xnap_DRBsToBeModified_List_Modified_SNterminated_Item, DRBsToBeModified_List_Modified_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeModified_List_Modified_SNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeModified_List_Modified_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeModified_List_Modified_SNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeModified_List_Modified_SNterminated(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_xnap_DRBsToBeModified_List_Modified_SNterminated, DRBsToBeModified_List_Modified_SNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModificationInfo_SNterminated_sequence[] = { + { &hf_xnap_uL_NG_U_TNLatUPF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_qosFlowsToBeSetup_List_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated }, + { &hf_xnap_qosFlowsToBeModified_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated }, + { &hf_xnap_qoSFlowsToBeReleased_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlows_List_withCause }, + { &hf_xnap_drbsToBeModifiedList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeModified_List_Modified_SNterminated }, + { &hf_xnap_dlForwarding , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DLForwarding }, + { &hf_xnap_securityIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SecurityIndication }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModificationInfo_SNterminated(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_xnap_PDUSessionResourceModificationInfo_SNterminated, PDUSessionResourceModificationInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeModifiedList_ModificationResponse_SNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_sN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRB_QoS , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_pDCP_SNLength , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDCPSNLength }, + { &hf_xnap_qoSFlowsMappedtoDRB_SetupResponse_SNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_Item(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_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_Item, DRBsToBeModifiedList_ModificationResponse_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeModifiedList_ModificationResponse_SNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated(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_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated, DRBsToBeModifiedList_ModificationResponse_SNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModificationResponseInfo_SNterminated_sequence[] = { + { &hf_xnap_dL_NG_U_TNLatNG_RAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRBsToBeSetup , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeSetupList_SetupResponse_SNterminated }, + { &hf_xnap_dRBsToBeModified, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated }, + { &hf_xnap_dRBsToBeReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List_withCause }, + { &hf_xnap_qosFlowsReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlows_List_withCause }, + { &hf_xnap_dLForwardingUPTNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_uLForwardingUPTNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModificationResponseInfo_SNterminated(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_xnap_PDUSessionResourceModificationResponseInfo_SNterminated, PDUSessionResourceModificationResponseInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeModifiedList_Modification_MNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_mN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRB_QoS , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_pDCP_SNLength , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDCPSNLength }, + { &hf_xnap_secondary_MN_UL_PDCP_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_qoSFlowsMappedtoDRB_Setup_MNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeModifiedList_Modification_MNterminated_Item(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_xnap_DRBsToBeModifiedList_Modification_MNterminated_Item, DRBsToBeModifiedList_Modification_MNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeModifiedList_Modification_MNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeModifiedList_Modification_MNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeModifiedList_Modification_MNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeModifiedList_Modification_MNterminated(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_xnap_DRBsToBeModifiedList_Modification_MNterminated, DRBsToBeModifiedList_Modification_MNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModificationInfo_MNterminated_sequence[] = { + { &hf_xnap_pduSessionType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionType }, + { &hf_xnap_dRBsToBeSetup_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeSetupList_Setup_MNterminated }, + { &hf_xnap_dRBsToBeModified_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeModifiedList_Modification_MNterminated }, + { &hf_xnap_dRBsToBeReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List_withCause }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModificationInfo_MNterminated(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_xnap_PDUSessionResourceModificationInfo_MNterminated, PDUSessionResourceModificationInfo_MNterminated_sequence); + + return offset; +} + + +static const per_sequence_t DRBsAdmittedList_ModificationResponse_MNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_sN_DL_SCG_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_secondary_SN_DL_SCG_UP_TNLInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_lCID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_LCID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_Item(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_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_Item, DRBsAdmittedList_ModificationResponse_MNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsAdmittedList_ModificationResponse_MNterminated_sequence_of[1] = { + { &hf_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_Item }, +}; + +static int +dissect_xnap_DRBsAdmittedList_ModificationResponse_MNterminated(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_xnap_DRBsAdmittedList_ModificationResponse_MNterminated, DRBsAdmittedList_ModificationResponse_MNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModificationResponseInfo_MNterminated_sequence[] = { + { &hf_xnap_dRBsAdmittedList_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsAdmittedList_ModificationResponse_MNterminated }, + { &hf_xnap_dRBsReleasedList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List }, + { &hf_xnap_dRBsNotAdmittedSetupModifyList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List_withCause }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModificationResponseInfo_MNterminated(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_xnap_PDUSessionResourceModificationResponseInfo_MNterminated, PDUSessionResourceModificationResponseInfo_MNterminated_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceChangeRequiredInfo_SNterminated_sequence[] = { + { &hf_xnap_dataforwardingRequest_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataforwardingRequest_List }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceChangeRequiredInfo_SNterminated(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_xnap_PDUSessionResourceChangeRequiredInfo_SNterminated, PDUSessionResourceChangeRequiredInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceChangeConfirmInfo_SNterminated_sequence[] = { + { &hf_xnap_dataforwardinginfoTarget, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingInfoFromTargetNGRANnode }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceChangeConfirmInfo_SNterminated(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_xnap_PDUSessionResourceChangeConfirmInfo_SNterminated, PDUSessionResourceChangeConfirmInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceChangeRequiredInfo_MNterminated_sequence[] = { + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceChangeRequiredInfo_MNterminated(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_xnap_PDUSessionResourceChangeRequiredInfo_MNterminated, PDUSessionResourceChangeRequiredInfo_MNterminated_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceChangeConfirmInfo_MNterminated_sequence[] = { + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceChangeConfirmInfo_MNterminated(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_xnap_PDUSessionResourceChangeConfirmInfo_MNterminated, PDUSessionResourceChangeConfirmInfo_MNterminated_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item_sequence[] = { + { &hf_xnap_qoSFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_mCGRequestedGBRQoSFlowInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_GBRQoSFlowInfo }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item(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_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item, QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_sequence_of[1] = { + { &hf_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item }, +}; + +static int +dissect_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated(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_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated, QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t DRBsToBeSetup_List_ModRqd_SNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_uL_Xn_U_TNLinfoatSN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRB_QoS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_qoSFlowsMappedtoDRB_ModRqd_SNterminated, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_Item(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_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_Item, DRBsToBeSetup_List_ModRqd_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeSetup_List_ModRqd_SNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeSetup_List_ModRqd_SNterminated(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_xnap_DRBsToBeSetup_List_ModRqd_SNterminated, DRBsToBeSetup_List_ModRqd_SNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item_sequence[] = { + { &hf_xnap_qoSFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_mCGRequestedGBRQoSFlowInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_GBRQoSFlowInfo }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item(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_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item, QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_sequence_of[1] = { + { &hf_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item }, +}; + +static int +dissect_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated(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_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated, QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t DRBsToBeModified_List_ModRqd_SNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_uL_Xn_U_TNLinfoatSN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRB_QoS , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowLevelQoSParameters }, + { &hf_xnap_qoSFlowsMappedtoDRB_ModRqd_SNterminated_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsToBeModified_List_ModRqd_SNterminated_Item(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_xnap_DRBsToBeModified_List_ModRqd_SNterminated_Item, DRBsToBeModified_List_ModRqd_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsToBeModified_List_ModRqd_SNterminated_sequence_of[1] = { + { &hf_xnap_DRBsToBeModified_List_ModRqd_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsToBeModified_List_ModRqd_SNterminated_Item }, +}; + +static int +dissect_xnap_DRBsToBeModified_List_ModRqd_SNterminated(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_xnap_DRBsToBeModified_List_ModRqd_SNterminated, DRBsToBeModified_List_ModRqd_SNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModRqdInfo_SNterminated_sequence[] = { + { &hf_xnap_dL_NG_U_TNLatNG_RAN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_qoSFlowsToBeReleased_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlows_List_withCause }, + { &hf_xnap_dataforwardingRequest_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataforwardingRequest_List }, + { &hf_xnap_drbsToBeSetupList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeSetup_List_ModRqd_SNterminated }, + { &hf_xnap_drbsToBeModifiedList_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRBsToBeModified_List_ModRqd_SNterminated }, + { &hf_xnap_dRBsToBeReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List_withCause }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModRqdInfo_SNterminated(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_xnap_PDUSessionResourceModRqdInfo_SNterminated, PDUSessionResourceModRqdInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t DRBsAdmittedList_ModConfirm_SNterminated_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_sN_Xn_U_TNLInfoatMN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_DRBsAdmittedList_ModConfirm_SNterminated_Item(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_xnap_DRBsAdmittedList_ModConfirm_SNterminated_Item, DRBsAdmittedList_ModConfirm_SNterminated_Item_sequence); + + return offset; +} + + +static const per_sequence_t DRBsAdmittedList_ModConfirm_SNterminated_sequence_of[1] = { + { &hf_xnap_DRBsAdmittedList_ModConfirm_SNterminated_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsAdmittedList_ModConfirm_SNterminated_Item }, +}; + +static int +dissect_xnap_DRBsAdmittedList_ModConfirm_SNterminated(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_xnap_DRBsAdmittedList_ModConfirm_SNterminated, DRBsAdmittedList_ModConfirm_SNterminated_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModConfirmInfo_SNterminated_sequence[] = { + { &hf_xnap_uL_NG_U_TNLatUPF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UPTransportLayerInformation }, + { &hf_xnap_dRBsAdmittedList_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRBsAdmittedList_ModConfirm_SNterminated }, + { &hf_xnap_dRBsReleasedList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List }, + { &hf_xnap_dRBsNotAdmittedSetupModifyList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List_withCause }, + { &hf_xnap_qosFlowsReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlows_List_withCause }, + { &hf_xnap_dataforwardinginfoTarget, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DataForwardingInfoFromTargetNGRANnode }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModConfirmInfo_SNterminated(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_xnap_PDUSessionResourceModConfirmInfo_SNterminated, PDUSessionResourceModConfirmInfo_SNterminated_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourceModConfirmInfo_MNterminated_sequence[] = { + { &hf_xnap_dRBsReleasedList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DRB_List }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourceModConfirmInfo_MNterminated(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_xnap_PDUSessionResourceModConfirmInfo_MNterminated, PDUSessionResourceModConfirmInfo_MNterminated_sequence); + + return offset; +} + + +static const value_string xnap_T_resourceType_vals[] = { + { 0, "downlinknonCRS" }, + { 1, "cRS" }, + { 2, "uplink" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_resourceType(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 int +dissect_xnap_BIT_STRING_SIZE_84_(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, - 6, 6, FALSE, NULL, NULL); + 84, 84, TRUE, NULL, NULL); + + return offset; +} + + + +static int +dissect_xnap_BIT_STRING_SIZE_6_110_(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, + 6, 110, TRUE, NULL, NULL); + + return offset; +} + + + +static int +dissect_xnap_INTEGER_1_320_(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, 320U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_xnap_INTEGER_1_20_(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, 20U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ProtectedE_UTRAFootprintTimePattern_sequence[] = { + { &hf_xnap_protectedFootprintTimeperiodicity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_1_320_ }, + { &hf_xnap_protectedFootrpintStartTime, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_1_20_ }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ProtectedE_UTRAFootprintTimePattern(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_xnap_ProtectedE_UTRAFootprintTimePattern, ProtectedE_UTRAFootprintTimePattern_sequence); + + return offset; +} + + +static const per_sequence_t ProtectedE_UTRAResource_Item_sequence[] = { + { &hf_xnap_resourceType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_resourceType }, + { &hf_xnap_intra_PRBProtectedResourceFootprint, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_84_ }, + { &hf_xnap_protectedFootprintFrequencyPattern, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BIT_STRING_SIZE_6_110_ }, + { &hf_xnap_protectedFootprintTimePattern, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtectedE_UTRAFootprintTimePattern }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ProtectedE_UTRAResource_Item(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_xnap_ProtectedE_UTRAResource_Item, ProtectedE_UTRAResource_Item_sequence); + + return offset; +} + + +static const per_sequence_t ProtectedE_UTRAResourceList_sequence_of[1] = { + { &hf_xnap_ProtectedE_UTRAResourceList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtectedE_UTRAResource_Item }, +}; + +static int +dissect_xnap_ProtectedE_UTRAResourceList(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_xnap_ProtectedE_UTRAResourceList, ProtectedE_UTRAResourceList_sequence_of, + 1, maxnoofProtectedResourcePatterns, FALSE); + + return offset; +} + + + +static int +dissect_xnap_INTEGER_1_3(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, 3U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ProtectedE_UTRAResourceIndication_sequence[] = { + { &hf_xnap_activationSFN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ActivationSFN }, + { &hf_xnap_protectedResourceList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtectedE_UTRAResourceList }, + { &hf_xnap_mbsfnControlRegionLength, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MBSFNControlRegionLength }, + { &hf_xnap_pDCCHRegionLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_1_3 }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ProtectedE_UTRAResourceIndication(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_xnap_ProtectedE_UTRAResourceIndication, ProtectedE_UTRAResourceIndication_sequence); + + return offset; +} + + +static const value_string xnap_T_notificationInformation_vals[] = { + { 0, "fulfilled" }, + { 1, "not-fulfilled" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_notificationInformation(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t QoSFlowNotify_Item_sequence[] = { + { &hf_xnap_qosFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_notificationInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_notificationInformation }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowNotify_Item(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_xnap_QoSFlowNotify_Item, QoSFlowNotify_Item_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowNotificationControlIndicationInfo_sequence_of[1] = { + { &hf_xnap_QoSFlowNotificationControlIndicationInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowNotify_Item }, +}; + +static int +dissect_xnap_QoSFlowNotificationControlIndicationInfo(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_xnap_QoSFlowNotificationControlIndicationInfo, QoSFlowNotificationControlIndicationInfo_sequence_of, + 1, maxnoofQoSFlows, FALSE); return offset; } @@ -4249,9 +6756,9 @@ static const value_string xnap_RANPagingAreaChoice_vals[] = { }; static const per_choice_t RANPagingAreaChoice_choice[] = { - { 0, &hf_xnap_cell_List , ASN1_EXTENSION_ROOT , dissect_xnap_NG_RAN_Cell_Identity_ListinRANPagingArea }, - { 1, &hf_xnap_rANAreaID_List , ASN1_EXTENSION_ROOT , dissect_xnap_RANAreaID_List }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_cell_List , ASN1_NO_EXTENSIONS , dissect_xnap_NG_RAN_Cell_Identity_ListinRANPagingArea }, + { 1, &hf_xnap_rANAreaID_List , ASN1_NO_EXTENSIONS , dissect_xnap_RANAreaID_List }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -4281,16 +6788,6 @@ dissect_xnap_RANPagingArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } - -static int -dissect_xnap_RANPagingPriority(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; -} - - static const per_sequence_t ResetRequestTypeInfo_Full_sequence[] = { { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } @@ -4305,8 +6802,24 @@ dissect_xnap_ResetRequestTypeInfo_Full(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const per_sequence_t ResetRequestPartialReleaseItem_sequence[] = { + { &hf_xnap_ng_ran_node1UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, + { &hf_xnap_ng_ran_node2UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResetRequestPartialReleaseItem(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_xnap_ResetRequestPartialReleaseItem, ResetRequestPartialReleaseItem_sequence); + + return offset; +} + + static const per_sequence_t ResetRequestPartialReleaseList_sequence_of[1] = { - { &hf_xnap_ResetRequestPartialReleaseList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, + { &hf_xnap_ResetRequestPartialReleaseList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ResetRequestPartialReleaseItem }, }; static int @@ -4342,9 +6855,9 @@ static const value_string xnap_ResetRequestTypeInfo_vals[] = { }; static const per_choice_t ResetRequestTypeInfo_choice[] = { - { 0, &hf_xnap_fullReset , ASN1_EXTENSION_ROOT , dissect_xnap_ResetRequestTypeInfo_Full }, - { 1, &hf_xnap_partialReset , ASN1_EXTENSION_ROOT , dissect_xnap_ResetRequestTypeInfo_Partial }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_fullReset , ASN1_NO_EXTENSIONS , dissect_xnap_ResetRequestTypeInfo_Full }, + { 1, &hf_xnap_partialReset , ASN1_NO_EXTENSIONS , dissect_xnap_ResetRequestTypeInfo_Partial }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -4358,22 +6871,6 @@ dissect_xnap_ResetRequestTypeInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t ResetRequestPartialReleaseItem_sequence[] = { - { &hf_xnap_ng_ran_node1UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, - { &hf_xnap_ng_ran_node2UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, - { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_ResetRequestPartialReleaseItem(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_xnap_ResetRequestPartialReleaseItem, ResetRequestPartialReleaseItem_sequence); - - return offset; -} - - static const per_sequence_t ResetResponseTypeInfo_Full_sequence[] = { { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } @@ -4388,8 +6885,24 @@ dissect_xnap_ResetResponseTypeInfo_Full(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const per_sequence_t ResetResponsePartialReleaseItem_sequence[] = { + { &hf_xnap_ng_ran_node1UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, + { &hf_xnap_ng_ran_node2UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResetResponsePartialReleaseItem(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_xnap_ResetResponsePartialReleaseItem, ResetResponsePartialReleaseItem_sequence); + + return offset; +} + + static const per_sequence_t ResetResponsePartialReleaseList_sequence_of[1] = { - { &hf_xnap_ResetResponsePartialReleaseList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, + { &hf_xnap_ResetResponsePartialReleaseList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ResetResponsePartialReleaseItem }, }; static int @@ -4425,9 +6938,9 @@ static const value_string xnap_ResetResponseTypeInfo_vals[] = { }; static const per_choice_t ResetResponseTypeInfo_choice[] = { - { 0, &hf_xnap_fullReset_01 , ASN1_EXTENSION_ROOT , dissect_xnap_ResetResponseTypeInfo_Full }, - { 1, &hf_xnap_partialReset_01, ASN1_EXTENSION_ROOT , dissect_xnap_ResetResponseTypeInfo_Partial }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_fullReset_01 , ASN1_NO_EXTENSIONS , dissect_xnap_ResetResponseTypeInfo_Full }, + { 1, &hf_xnap_partialReset_01, ASN1_NO_EXTENSIONS , dissect_xnap_ResetResponseTypeInfo_Partial }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -4441,22 +6954,6 @@ dissect_xnap_ResetResponseTypeInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t ResetResponsePartialReleaseItem_sequence[] = { - { &hf_xnap_ng_ran_node1UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, - { &hf_xnap_ng_ran_node2UEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, - { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_xnap_ResetResponsePartialReleaseItem(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_xnap_ResetResponsePartialReleaseItem, ResetResponsePartialReleaseItem_sequence); - - return offset; -} - - static int dissect_xnap_RFSP_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4467,6 +6964,52 @@ dissect_xnap_RFSP_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const value_string xnap_RRCConfigIndication_vals[] = { + { 0, "full-config" }, + { 1, "delta-config" }, + { 0, NULL } +}; + + +static int +dissect_xnap_RRCConfigIndication(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string xnap_RRCResumeCause_vals[] = { + { 0, "rna-Update" }, + { 0, NULL } +}; + + +static int +dissect_xnap_RRCResumeCause(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 value_string xnap_SCGConfigurationQuery_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_xnap_SCGConfigurationQuery(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 ServedCellInformation_E_UTRA_perBPLMN_FDDInfo_sequence[] = { { &hf_xnap_ul_earfcn , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAARFCN }, { &hf_xnap_dl_earfcn , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAARFCN }, @@ -4574,9 +7117,9 @@ static const value_string xnap_ServedCellInformation_E_UTRA_perBPLMN_ModeInfo_va }; static const per_choice_t ServedCellInformation_E_UTRA_perBPLMN_ModeInfo_choice[] = { - { 0, &hf_xnap_fdd_01 , ASN1_EXTENSION_ROOT , dissect_xnap_ServedCellInformation_E_UTRA_perBPLMN_FDDInfo }, - { 1, &hf_xnap_tdd_01 , ASN1_EXTENSION_ROOT , dissect_xnap_ServedCellInformation_E_UTRA_perBPLMN_TDDInfo }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_fdd_01 , ASN1_NO_EXTENSIONS , dissect_xnap_ServedCellInformation_E_UTRA_perBPLMN_FDDInfo }, + { 1, &hf_xnap_tdd_01 , ASN1_NO_EXTENSIONS , dissect_xnap_ServedCellInformation_E_UTRA_perBPLMN_TDDInfo }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -4655,6 +7198,7 @@ static const per_sequence_t ServedCellInformation_E_UTRA_sequence[] = { { &hf_xnap_e_utra_pci , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRAPCI }, { &hf_xnap_e_utra_cgi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRA_CGI }, { &hf_xnap_tac , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_TAC }, + { &hf_xnap_ranac , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RANAC }, { &hf_xnap_broadcastPLMNs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_SEQUENCE_SIZE_1_maxnoofBPLMNs_OF_ServedCellInformation_E_UTRA_perBPLMN }, { &hf_xnap_numberofAntennaPorts, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_NumberOfAntennaPorts_E_UTRA }, { &hf_xnap_prach_configuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_E_UTRAPRACHConfiguration }, @@ -4662,6 +7206,7 @@ static const per_sequence_t ServedCellInformation_E_UTRA_sequence[] = { { &hf_xnap_multibandInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_E_UTRAMultibandInfoList }, { &hf_xnap_freqBandIndicatorPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_freqBandIndicatorPriority }, { &hf_xnap_bandwidthReducedSI, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_bandwidthReducedSI }, + { &hf_xnap_protectedE_UTRAResourceIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtectedE_UTRAResourceIndication }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4700,7 +7245,7 @@ static int dissect_xnap_ServedCells_E_UTRA(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_xnap_ServedCells_E_UTRA, ServedCells_E_UTRA_sequence_of, - 1, maxnoofCellsinNGRANnode, FALSE); + 1, maxnoofCellsinNG_RANnode, FALSE); return offset; } @@ -4732,21 +7277,21 @@ static int dissect_xnap_ServedCells_ToModify_E_UTRA(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_xnap_ServedCells_ToModify_E_UTRA, ServedCells_ToModify_E_UTRA_sequence_of, - 1, maxnoofCellsinNGRANnode, FALSE); + 1, maxnoofCellsinNG_RANnode, FALSE); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI_sequence_of[1] = { +static const per_sequence_t SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI_sequence_of[1] = { { &hf_xnap_served_Cells_ToDelete_E_UTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_E_UTRA_CGI }, }; static int -dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI(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_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI, SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI_sequence_of, - 1, maxnoofCellsinNGRANnode, FALSE); + ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI, SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI_sequence_of, + 1, maxnoofCellsinNG_RANnode, FALSE); return offset; } @@ -4755,7 +7300,7 @@ dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI(tvbuff_t *tvb static const per_sequence_t ServedCellsToUpdate_E_UTRA_sequence[] = { { &hf_xnap_served_Cells_ToAdd_E_UTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ServedCells_E_UTRA }, { &hf_xnap_served_Cells_ToModify_E_UTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ServedCells_ToModify_E_UTRA }, - { &hf_xnap_served_Cells_ToDelete_E_UTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI }, + { &hf_xnap_served_Cells_ToDelete_E_UTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4772,7 +7317,7 @@ dissect_xnap_ServedCellsToUpdate_E_UTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_xnap_T_measurementTimingConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 247 "./asn1/xnap/xnap.cnf" +#line 315 "./asn1/xnap/xnap.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶m_tvb); @@ -4796,6 +7341,8 @@ static const per_sequence_t ServedCellInformation_NR_sequence[] = { { &hf_xnap_broadcastPLMN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BroadcastPLMNs }, { &hf_xnap_nrModeInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NRModeInfo }, { &hf_xnap_measurementTimingConfiguration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_measurementTimingConfiguration }, + { &hf_xnap_nrscs_ssb , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NRSCS_SSB }, + { &hf_xnap_connectivitySupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_Connectivity_Support }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4834,7 +7381,22 @@ static int dissect_xnap_ServedCells_NR(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_xnap_ServedCells_NR, ServedCells_NR_sequence_of, - 1, maxnoofCellsinNGRANnode, FALSE); + 1, maxnoofCellsinNG_RANnode, FALSE); + + return offset; +} + + +static const value_string xnap_T_deactivation_indication_vals[] = { + { 0, "deactivated" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_deactivation_indication(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; } @@ -4845,6 +7407,7 @@ static const per_sequence_t ServedCells_ToModify_NR_Item_sequence[] = { { &hf_xnap_served_cell_info_NR, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ServedCellInformation_NR }, { &hf_xnap_neighbour_info_NR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_NeighbourInformation_NR }, { &hf_xnap_neighbour_info_E_UTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_NeighbourInformation_E_UTRA }, + { &hf_xnap_deactivation_indication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_deactivation_indication }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4866,7 +7429,7 @@ static int dissect_xnap_ServedCells_ToModify_NR(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_xnap_ServedCells_ToModify_NR, ServedCells_ToModify_NR_sequence_of, - 1, maxnoofCellsinNGRANnode, FALSE); + 1, maxnoofCellsinNG_RANnode, FALSE); return offset; } @@ -4875,7 +7438,7 @@ dissect_xnap_ServedCells_ToModify_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static const per_sequence_t ServedCellsToUpdate_NR_sequence[] = { { &hf_xnap_served_Cells_ToAdd_NR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ServedCells_NR }, { &hf_xnap_served_Cells_ToModify_NR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ServedCells_ToModify_NR }, - { &hf_xnap_served_Cells_ToDelete_NR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI }, + { &hf_xnap_served_Cells_ToDelete_NR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -4889,15 +7452,38 @@ dissect_xnap_ServedCellsToUpdate_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t TAISupport_List_sequence_of[1] = { - { &hf_xnap_TAISupport_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Single_Container }, -}; static int -dissect_xnap_TAISupport_List(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_xnap_TAISupport_List, TAISupport_List_sequence_of, - 1, maxnoofsupportedTACs, FALSE); +dissect_xnap_S_NG_RANnode_SecurityKey(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, + 256, 256, FALSE, NULL, NULL); + + return offset; +} + + + +static int +dissect_xnap_SpectrumSharingGroupID(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, maxnoofCellsinNG_RANnode, NULL, FALSE); + + return offset; +} + + +static const value_string xnap_SplitSRBsTypes_vals[] = { + { 0, "srb1" }, + { 1, "srb2" }, + { 2, "srb1and2" }, + { 0, NULL } +}; + + +static int +dissect_xnap_SplitSRBsTypes(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; } @@ -4933,6 +7519,20 @@ dissect_xnap_TAISupport_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const per_sequence_t TAISupport_List_sequence_of[1] = { + { &hf_xnap_TAISupport_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_TAISupport_Item }, +}; + +static int +dissect_xnap_TAISupport_List(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_xnap_TAISupport_List, TAISupport_List_sequence_of, + 1, maxnoofsupportedTACs, FALSE); + + return offset; +} + + static const value_string xnap_Target_CGI_vals[] = { { 0, "nr" }, { 1, "e-utra" }, @@ -4941,9 +7541,9 @@ static const value_string xnap_Target_CGI_vals[] = { }; static const per_choice_t Target_CGI_choice[] = { - { 0, &hf_xnap_nr_02 , ASN1_EXTENSION_ROOT , dissect_xnap_NR_CGI }, - { 1, &hf_xnap_e_utra_02 , ASN1_EXTENSION_ROOT , dissect_xnap_E_UTRA_CGI }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_nr_02 , ASN1_NO_EXTENSIONS , dissect_xnap_NR_CGI }, + { 1, &hf_xnap_e_utra_02 , ASN1_NO_EXTENSIONS , dissect_xnap_E_UTRA_CGI }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -4957,10 +7557,30 @@ dissect_xnap_Target_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const value_string xnap_TimeToWait_vals[] = { + { 0, "v1s" }, + { 1, "v2s" }, + { 2, "v5s" }, + { 3, "v10s" }, + { 4, "v20s" }, + { 5, "v60s" }, + { 0, NULL } +}; + + +static int +dissect_xnap_TimeToWait(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + static int dissect_xnap_T_ng_ran_TraceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 353 "./asn1/xnap/xnap.cnf" +#line 430 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb; proto_tree *subtree = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, @@ -4982,7 +7602,7 @@ dissect_xnap_T_ng_ran_TraceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_xnap_T_interfaces_to_trace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 364 "./asn1/xnap/xnap.cnf" +#line 441 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 8, 8, FALSE, ¶meter_tvb, NULL); @@ -5060,6 +7680,21 @@ dissect_xnap_UEAggregateMaximumBitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const value_string xnap_UEContextKeptIndicator_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_xnap_UEContextKeptIndicator(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 UEContextIDforRRCResume_sequence[] = { { &hf_xnap_i_rnti , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_I_RNTI }, { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, @@ -5099,9 +7734,9 @@ static const value_string xnap_UEContextID_vals[] = { }; static const per_choice_t UEContextID_choice[] = { - { 0, &hf_xnap_rRCResume , ASN1_EXTENSION_ROOT , dissect_xnap_UEContextIDforRRCResume }, - { 1, &hf_xnap_rRRCReestablishment, ASN1_EXTENSION_ROOT , dissect_xnap_UEContextIDforRRCReestablishment }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_rRCResume , ASN1_NO_EXTENSIONS , dissect_xnap_UEContextIDforRRCResume }, + { 1, &hf_xnap_rRRCReestablishment, ASN1_NO_EXTENSIONS , dissect_xnap_UEContextIDforRRCReestablishment }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -5118,7 +7753,7 @@ dissect_xnap_UEContextID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_xnap_T_nr_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 284 "./asn1/xnap/xnap.cnf" +#line 361 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, ¶meter_tvb, NULL); @@ -5143,7 +7778,7 @@ dissect_xnap_T_nr_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_xnap_T_nr_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 298 "./asn1/xnap/xnap.cnf" +#line 375 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, ¶meter_tvb, NULL); @@ -5168,7 +7803,7 @@ dissect_xnap_T_nr_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U static int dissect_xnap_T_e_utra_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 312 "./asn1/xnap/xnap.cnf" +#line 389 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, ¶meter_tvb, NULL); @@ -5193,7 +7828,7 @@ dissect_xnap_T_e_utra_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_xnap_T_e_utra_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 326 "./asn1/xnap/xnap.cnf" +#line 403 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, 16, 16, TRUE, ¶meter_tvb, NULL); @@ -5236,24 +7871,16 @@ dissect_xnap_UESecurityCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_xnap_T_rrc_Context(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 172 "./asn1/xnap/xnap.cnf" +#line 248 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); if (parameter_tvb) { - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); proto_tree *subtree; - GlobalNG_RANNode_ID_enum target_ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); - if (xnap_data->xnap_conv) { - if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_a)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_a; - } else if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_b)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_b; - } - } subtree = proto_item_add_subtree(actx->created_item, ett_xnap_RRC_Context); if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && target_ranmode_id == GlobalNG_RANNode_ID_gNB) && @@ -5278,7 +7905,7 @@ static const per_sequence_t UEContextInfoRetrUECtxtResp_sequence[] = { { &hf_xnap_ueSecurityCapabilities, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UESecurityCapabilities }, { &hf_xnap_securityInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_AS_SecurityInformation }, { &hf_xnap_ue_AMBR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UEAggregateMaximumBitRate }, - { &hf_xnap_pduSessionResourcesToBeSet_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesToBeSetup_List }, + { &hf_xnap_pduSessionResourcesToBeSetup_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesToBeSetup_List }, { &hf_xnap_rrc_Context , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_rrc_Context }, { &hf_xnap_mobilityRestrictionList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MobilityRestrictionList }, { &hf_xnap_indexToRatFrequencySelectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RFSP_Index }, @@ -5295,11 +7922,37 @@ dissect_xnap_UEContextInfoRetrUECtxtResp(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t UEHistoryInformation_sequence_of[1] = { + { &hf_xnap_UEHistoryInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_LastVisitedCell_Item }, +}; + +static int +dissect_xnap_UEHistoryInformation(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_xnap_UEHistoryInformation, UEHistoryInformation_sequence_of, + 1, maxnoofCellsinUEHistoryInfo, FALSE); + + return offset; +} + + +static const value_string xnap_UEIdentityIndexValue_vals[] = { + { 0, "indexLength10" }, + { 1, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t UEIdentityIndexValue_choice[] = { + { 0, &hf_xnap_indexLength10 , ASN1_NO_EXTENSIONS , dissect_xnap_BIT_STRING_SIZE_10 }, + { 1, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; static int dissect_xnap_UEIdentityIndexValue(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, 63U, NULL, FALSE); + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_xnap_UEIdentityIndexValue, UEIdentityIndexValue_choice, + NULL); return offset; } @@ -5312,8 +7965,8 @@ static const value_string xnap_UERANPagingIdentity_vals[] = { }; static const per_choice_t UERANPagingIdentity_choice[] = { - { 0, &hf_xnap_i_RNTI , ASN1_EXTENSION_ROOT , dissect_xnap_I_RNTI }, - { 1, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_i_RNTI , ASN1_NO_EXTENSIONS , dissect_xnap_I_RNTI }, + { 1, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -5327,6 +7980,22 @@ dissect_xnap_UERANPagingIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const value_string xnap_UserPlaneTrafficActivityReport_vals[] = { + { 0, "inactive" }, + { 1, "re-activated" }, + { 0, NULL } +}; + + +static int +dissect_xnap_UserPlaneTrafficActivityReport(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + static int dissect_xnap_XnBenefitValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5344,7 +8013,7 @@ static const per_sequence_t HandoverRequest_sequence[] = { static int dissect_xnap_HandoverRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 382 "./asn1/xnap/xnap.cnf" +#line 468 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5357,24 +8026,16 @@ dissect_xnap_HandoverRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_T_rrc_Context_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 116 "./asn1/xnap/xnap.cnf" +#line 108 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); if (parameter_tvb) { - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); proto_tree *subtree; - GlobalNG_RANNode_ID_enum target_ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); - if (xnap_data->xnap_conv) { - if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_a)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_a; - } else if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_b)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_b; - } - } subtree = proto_item_add_subtree(actx->created_item, ett_xnap_RRC_Context); if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && target_ranmode_id == GlobalNG_RANNode_ID_gNB) || @@ -5403,7 +8064,7 @@ static const per_sequence_t UEContextInfoHORequest_sequence[] = { { &hf_xnap_pduSessionResourcesToBeSetup_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesToBeSetup_List }, { &hf_xnap_rrc_Context_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_rrc_Context_01 }, { &hf_xnap_locationReportingInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_LocationReportingInformation }, - { &hf_xnap_hlr , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MobilityRestrictionList }, + { &hf_xnap_mrl , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_MobilityRestrictionList }, { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, { NULL, 0, 0, NULL } }; @@ -5417,6 +8078,22 @@ dissect_xnap_UEContextInfoHORequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } +static const per_sequence_t UEContextRefAtSN_HORequest_sequence[] = { + { &hf_xnap_globalNG_RANNode_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_GlobalNG_RANNode_ID }, + { &hf_xnap_sN_NG_RANnodeUEXnAPID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_NG_RANnodeUEXnAPID }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_UEContextRefAtSN_HORequest(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_xnap_UEContextRefAtSN_HORequest, UEContextRefAtSN_HORequest_sequence); + + return offset; +} + + static const per_sequence_t HandoverRequestAcknowledge_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5424,7 +8101,7 @@ static const per_sequence_t HandoverRequestAcknowledge_sequence[] = { static int dissect_xnap_HandoverRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 384 "./asn1/xnap/xnap.cnf" +#line 470 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5437,31 +8114,23 @@ dissect_xnap_HandoverRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_xnap_Target2SourceNG_RANnodeTranspContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 144 "./asn1/xnap/xnap.cnf" +#line 128 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); if (parameter_tvb) { - struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); proto_tree *subtree; - GlobalNG_RANNode_ID_enum target_ranmode_id = (GlobalNG_RANNode_ID_enum)-1; + GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo); - if (xnap_data->xnap_conv) { - if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_a)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_a; - } else if (addresses_equal(&actx->pinfo->dst, &xnap_data->xnap_conv->addr_b)) { - target_ranmode_id = xnap_data->xnap_conv->ranmode_id_b; - } - } subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && - target_ranmode_id == GlobalNG_RANNode_ID_gNB) || + source_ranmode_id == GlobalNG_RANNode_ID_gNB) || (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { dissect_nr_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL); } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && - target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL); } @@ -5480,7 +8149,7 @@ static const per_sequence_t HandoverPreparationFailure_sequence[] = { static int dissect_xnap_HandoverPreparationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 386 "./asn1/xnap/xnap.cnf" +#line 472 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverPreparationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5497,7 +8166,7 @@ static const per_sequence_t SNStatusTransfer_sequence[] = { static int dissect_xnap_SNStatusTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 388 "./asn1/xnap/xnap.cnf" +#line 474 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNStatusTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5514,7 +8183,7 @@ static const per_sequence_t UEContextRelease_sequence[] = { static int dissect_xnap_UEContextRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 402 "./asn1/xnap/xnap.cnf" +#line 488 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEContextRelease"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5531,7 +8200,7 @@ static const per_sequence_t HandoverCancel_sequence[] = { static int dissect_xnap_HandoverCancel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 390 "./asn1/xnap/xnap.cnf" +#line 476 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverCancel"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5548,7 +8217,7 @@ static const per_sequence_t RANPaging_sequence[] = { static int dissect_xnap_RANPaging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 398 "./asn1/xnap/xnap.cnf" +#line 484 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RANPaging"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5565,7 +8234,7 @@ static const per_sequence_t RetrieveUEContextRequest_sequence[] = { static int dissect_xnap_RetrieveUEContextRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 392 "./asn1/xnap/xnap.cnf" +#line 478 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5582,7 +8251,7 @@ static const per_sequence_t RetrieveUEContextResponse_sequence[] = { static int dissect_xnap_RetrieveUEContextResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 394 "./asn1/xnap/xnap.cnf" +#line 480 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5599,7 +8268,7 @@ static const per_sequence_t RetrieveUEContextFailure_sequence[] = { static int dissect_xnap_RetrieveUEContextFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 396 "./asn1/xnap/xnap.cnf" +#line 482 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RetrieveUEContextFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5609,6 +8278,16 @@ dissect_xnap_RetrieveUEContextFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } + +static int +dissect_xnap_OldtoNewNG_RANnodeResumeContainer(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 DataForwardingAddressIndication_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5616,7 +8295,7 @@ static const per_sequence_t DataForwardingAddressIndication_sequence[] = { static int dissect_xnap_DataForwardingAddressIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 400 "./asn1/xnap/xnap.cnf" +#line 486 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DataForwardingAddressIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5633,7 +8312,7 @@ static const per_sequence_t SNodeAdditionRequest_sequence[] = { static int dissect_xnap_SNodeAdditionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 404 "./asn1/xnap/xnap.cnf" +#line 490 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeAdditionRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5643,6 +8322,107 @@ dissect_xnap_SNodeAdditionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } + +static int +dissect_xnap_MN_to_SN_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 148 "./asn1/xnap/xnap.cnf" + tvbuff_t *parameter_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + + + + return offset; +} + + +static const value_string xnap_BearerConfigToBeAdded_AddReq_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeAdded_AddReq_Item_choice[] = { + { 0, &hf_xnap_sn_terminated , ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated , ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeAdded_AddReq_Item(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_xnap_BearerConfigToBeAdded_AddReq_Item, BearerConfigToBeAdded_AddReq_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeAdded_AddReq_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeAdded_AddReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_AddReq_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeAdded_AddReq(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_xnap_BearerConfigToBeAdded_AddReq, BearerConfigToBeAdded_AddReq_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionToBeAddedAddReq_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_s_NSSAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_S_NSSAI }, + { &hf_xnap_sN_PDUSessionAMBR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionAggregateMaximumBitRate }, + { &hf_xnap_bearerConfigToBeAdded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_AddReq }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionToBeAddedAddReq_Item(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_xnap_PDUSessionToBeAddedAddReq_Item, PDUSessionToBeAddedAddReq_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionToBeAddedAddReq_sequence_of[1] = { + { &hf_xnap_PDUSessionToBeAddedAddReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionToBeAddedAddReq_Item }, +}; + +static int +dissect_xnap_PDUSessionToBeAddedAddReq(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_xnap_PDUSessionToBeAddedAddReq, PDUSessionToBeAddedAddReq_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + static const per_sequence_t SNodeAdditionRequestAcknowledge_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5650,7 +8430,7 @@ static const per_sequence_t SNodeAdditionRequestAcknowledge_sequence[] = { static int dissect_xnap_SNodeAdditionRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 406 "./asn1/xnap/xnap.cnf" +#line 492 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeAdditionRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5660,6 +8440,121 @@ dissect_xnap_SNodeAdditionRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, } + +static int +dissect_xnap_SN_to_MN_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 168 "./asn1/xnap/xnap.cnf" + tvbuff_t *parameter_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->src, actx->pinfo->srcport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_CG_Config_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_SCG_Config_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + + + + return offset; +} + + +static const value_string xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigAdmittedToBeAdded_AddReqAck_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_01, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupResponseInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_01, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupResponseInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item(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_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item, BearerConfigAdmittedToBeAdded_AddReqAck_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigAdmittedToBeAdded_AddReqAck_sequence_of[1] = { + { &hf_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item }, +}; + +static int +dissect_xnap_BearerConfigAdmittedToBeAdded_AddReqAck(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_xnap_BearerConfigAdmittedToBeAdded_AddReqAck, BearerConfigAdmittedToBeAdded_AddReqAck_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedAddedAddReqAck_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigAdmittedToBeAdded, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigAdmittedToBeAdded_AddReqAck }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAdmittedAddedAddReqAck_Item(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_xnap_PDUSessionAdmittedAddedAddReqAck_Item, PDUSessionAdmittedAddedAddReqAck_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedAddedAddReqAck_sequence_of[1] = { + { &hf_xnap_PDUSessionAdmittedAddedAddReqAck_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionAdmittedAddedAddReqAck_Item }, +}; + +static int +dissect_xnap_PDUSessionAdmittedAddedAddReqAck(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_xnap_PDUSessionAdmittedAddedAddReqAck, PDUSessionAdmittedAddedAddReqAck_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionNotAdmittedAddReqAck_sequence[] = { + { &hf_xnap_pduSessionResourcesNotAdmitted_SNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionResourcesNotAdmitted_List }, + { &hf_xnap_pduSessionResourcesNotAdmitted_MNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionResourcesNotAdmitted_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionNotAdmittedAddReqAck(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_xnap_PDUSessionNotAdmittedAddReqAck, PDUSessionNotAdmittedAddReqAck_sequence); + + return offset; +} + + static const per_sequence_t SNodeAdditionRequestReject_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5667,7 +8562,7 @@ static const per_sequence_t SNodeAdditionRequestReject_sequence[] = { static int dissect_xnap_SNodeAdditionRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 408 "./asn1/xnap/xnap.cnf" +#line 494 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeAdditionRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5684,7 +8579,7 @@ static const per_sequence_t SNodeReconfigurationComplete_sequence[] = { static int dissect_xnap_SNodeReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 410 "./asn1/xnap/xnap.cnf" +#line 496 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeReconfigurationComplete"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5694,6 +8589,138 @@ dissect_xnap_SNodeReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn } + +static int +dissect_xnap_T_m_NG_RANNode_to_S_NG_RANNode_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 188 "./asn1/xnap/xnap.cnf" + tvbuff_t *parameter_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_RRCReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_RRCConnectionReconfigurationComplete_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + + + + return offset; +} + + +static const per_sequence_t Configuration_successfully_applied_sequence[] = { + { &hf_xnap_m_NG_RANNode_to_S_NG_RANNode_Container, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_m_NG_RANNode_to_S_NG_RANNode_Container }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_Configuration_successfully_applied(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_xnap_Configuration_successfully_applied, Configuration_successfully_applied_sequence); + + return offset; +} + + + +static int +dissect_xnap_T_m_NG_RANNode_to_S_NG_RANNode_Container_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 208 "./asn1/xnap/xnap.cnf" + tvbuff_t *parameter_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum target_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_CG_ConfigInfo_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + target_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_SCG_ConfigInfo_r12_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + + + + return offset; +} + + +static const per_sequence_t Configuration_rejected_by_M_NG_RANNode_sequence[] = { + { &hf_xnap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_Cause }, + { &hf_xnap_m_NG_RANNode_to_S_NG_RANNode_Container_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_T_m_NG_RANNode_to_S_NG_RANNode_Container_01 }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_Configuration_rejected_by_M_NG_RANNode(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_xnap_Configuration_rejected_by_M_NG_RANNode, Configuration_rejected_by_M_NG_RANNode_sequence); + + return offset; +} + + +static const value_string xnap_ResponseType_ReconfComplete_vals[] = { + { 0, "configuration-successfully-applied" }, + { 1, "configuration-rejected-by-M-NG-RANNode" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ResponseType_ReconfComplete_choice[] = { + { 0, &hf_xnap_configuration_successfully_applied, ASN1_NO_EXTENSIONS , dissect_xnap_Configuration_successfully_applied }, + { 1, &hf_xnap_configuration_rejected_by_M_NG_RANNode, ASN1_NO_EXTENSIONS , dissect_xnap_Configuration_rejected_by_M_NG_RANNode }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_ResponseType_ReconfComplete(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_xnap_ResponseType_ReconfComplete, ResponseType_ReconfComplete_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ResponseInfo_ReconfCompl_sequence[] = { + { &hf_xnap_responseType_ReconfComplete, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ResponseType_ReconfComplete }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResponseInfo_ReconfCompl(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_xnap_ResponseInfo_ReconfCompl, ResponseInfo_ReconfCompl_sequence); + + return offset; +} + + static const per_sequence_t SNodeModificationRequest_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5701,7 +8728,7 @@ static const per_sequence_t SNodeModificationRequest_sequence[] = { static int dissect_xnap_SNodeModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 412 "./asn1/xnap/xnap.cnf" +#line 498 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeModificationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5711,6 +8738,192 @@ dissect_xnap_SNodeModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string xnap_BearerConfigToBeAdded_SNModRequest_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeAdded_SNModRequest_Item_choice[] = { + { 0, &hf_xnap_sn_terminated , ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated , ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeAdded_SNModRequest_Item(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_xnap_BearerConfigToBeAdded_SNModRequest_Item, BearerConfigToBeAdded_SNModRequest_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeAdded_SNModRequest_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeAdded_SNModRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_SNModRequest_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeAdded_SNModRequest(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_xnap_BearerConfigToBeAdded_SNModRequest, BearerConfigToBeAdded_SNModRequest_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionsToBeAdded_SNModRequest_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_s_NSSAI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_S_NSSAI }, + { &hf_xnap_sN_PDUSessionAMBR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionAggregateMaximumBitRate }, + { &hf_xnap_bearerConfigToBeAdded_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_SNModRequest }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionsToBeAdded_SNModRequest_Item(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_xnap_PDUSessionsToBeAdded_SNModRequest_Item, PDUSessionsToBeAdded_SNModRequest_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionsToBeAdded_SNModRequest_List_sequence_of[1] = { + { &hf_xnap_PDUSessionsToBeAdded_SNModRequest_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionsToBeAdded_SNModRequest_Item }, +}; + +static int +dissect_xnap_PDUSessionsToBeAdded_SNModRequest_List(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_xnap_PDUSessionsToBeAdded_SNModRequest_List, PDUSessionsToBeAdded_SNModRequest_List_sequence_of, + maxnoofPDUSessions, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const value_string xnap_BearerConfigToBeModified_SNModRequest_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeModified_SNModRequest_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_02, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModificationInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_02, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModificationInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeModified_SNModRequest_Item(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_xnap_BearerConfigToBeModified_SNModRequest_Item, BearerConfigToBeModified_SNModRequest_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeModified_SNModRequest_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeModified_SNModRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeModified_SNModRequest_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeModified_SNModRequest(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_xnap_BearerConfigToBeModified_SNModRequest, BearerConfigToBeModified_SNModRequest_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionsToBeModified_SNModRequest_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_sN_PDUSessionAMBR, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionAggregateMaximumBitRate }, + { &hf_xnap_bearerConfigToBeModified_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeModified_SNModRequest }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionsToBeModified_SNModRequest_Item(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_xnap_PDUSessionsToBeModified_SNModRequest_Item, PDUSessionsToBeModified_SNModRequest_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionsToBeModified_SNModRequest_List_sequence_of[1] = { + { &hf_xnap_PDUSessionsToBeModified_SNModRequest_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionsToBeModified_SNModRequest_Item }, +}; + +static int +dissect_xnap_PDUSessionsToBeModified_SNModRequest_List(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_xnap_PDUSessionsToBeModified_SNModRequest_List, PDUSessionsToBeModified_SNModRequest_List_sequence_of, + maxnoofPDUSessions, maxnoofPDUSessions, FALSE); + + return offset; +} + + + +static int +dissect_xnap_OCTET_STRING(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 PDUSessionsToBeReleased_SNModRequest_List_sequence[] = { + { &hf_xnap_sn_terminated_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_OCTET_STRING }, + { &hf_xnap_mn_terminated_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_OCTET_STRING }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionsToBeReleased_SNModRequest_List(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_xnap_PDUSessionsToBeReleased_SNModRequest_List, PDUSessionsToBeReleased_SNModRequest_List_sequence); + + return offset; +} + + +static const per_sequence_t UEContextInfo_SNModRequest_sequence[] = { + { &hf_xnap_ueSecurityCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UESecurityCapabilities }, + { &hf_xnap_s_ng_RANnode_SecurityKey, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_S_NG_RANnode_SecurityKey }, + { &hf_xnap_indexToRatFrequencySelectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_RFSP_Index }, + { &hf_xnap_lowerLayerPresenceStatusChange, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_LowerLayerPresenceStatusChange }, + { &hf_xnap_bearerConfigToBeAdded_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionsToBeAdded_SNModRequest_List }, + { &hf_xnap_bearerConfigToBeModified, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionsToBeModified_SNModRequest_List }, + { &hf_xnap_bearerConfigToBeReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionsToBeReleased_SNModRequest_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_UEContextInfo_SNModRequest(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_xnap_UEContextInfo_SNModRequest, UEContextInfo_SNModRequest_sequence); + + return offset; +} + + static const per_sequence_t SNodeModificationRequestAcknowledge_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5718,7 +8931,7 @@ static const per_sequence_t SNodeModificationRequestAcknowledge_sequence[] = { static int dissect_xnap_SNodeModificationRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 414 "./asn1/xnap/xnap.cnf" +#line 500 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeModificationRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5728,6 +8941,191 @@ dissect_xnap_SNodeModificationRequestAcknowledge(tvbuff_t *tvb _U_, int offset _ } +static const value_string xnap_BearerConfigToBeAdded_SNModResponse_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeAdded_SNModResponse_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_01, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupResponseInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_01, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceSetupResponseInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeAdded_SNModResponse_Item(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_xnap_BearerConfigToBeAdded_SNModResponse_Item, BearerConfigToBeAdded_SNModResponse_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeAdded_SNModResponse_List_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeAdded_SNModResponse_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_SNModResponse_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeAdded_SNModResponse_List(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_xnap_BearerConfigToBeAdded_SNModResponse_List, BearerConfigToBeAdded_SNModResponse_List_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedToBeAddedSNModResponse_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_SNModResponse_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAdmittedToBeAddedSNModResponse_Item(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_xnap_PDUSessionAdmittedToBeAddedSNModResponse_Item, PDUSessionAdmittedToBeAddedSNModResponse_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedToBeAddedSNModResponse_sequence_of[1] = { + { &hf_xnap_PDUSessionAdmittedToBeAddedSNModResponse_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionAdmittedToBeAddedSNModResponse_Item }, +}; + +static int +dissect_xnap_PDUSessionAdmittedToBeAddedSNModResponse(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_xnap_PDUSessionAdmittedToBeAddedSNModResponse, PDUSessionAdmittedToBeAddedSNModResponse_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const value_string xnap_BearerConfigToBeModified_SNModResponse_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeModified_SNModResponse_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_04, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModificationResponseInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_04, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModificationResponseInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeModified_SNModResponse_Item(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_xnap_BearerConfigToBeModified_SNModResponse_Item, BearerConfigToBeModified_SNModResponse_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeModified_SNModResponse_List_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeModified_SNModResponse_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeModified_SNModResponse_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeModified_SNModResponse_List(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_xnap_BearerConfigToBeModified_SNModResponse_List, BearerConfigToBeModified_SNModResponse_List_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedToBeModifiedSNModResponse_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigs_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeModified_SNModResponse_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_Item(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_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_Item, PDUSessionAdmittedToBeModifiedSNModResponse_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedToBeModifiedSNModResponse_sequence_of[1] = { + { &hf_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_Item }, +}; + +static int +dissect_xnap_PDUSessionAdmittedToBeModifiedSNModResponse(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_xnap_PDUSessionAdmittedToBeModifiedSNModResponse, PDUSessionAdmittedToBeModifiedSNModResponse_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedToBeReleasedSNModResponse_sequence[] = { + { &hf_xnap_sn_terminated_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_OCTET_STRING }, + { &hf_xnap_mn_terminated_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_OCTET_STRING }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAdmittedToBeReleasedSNModResponse(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_xnap_PDUSessionAdmittedToBeReleasedSNModResponse, PDUSessionAdmittedToBeReleasedSNModResponse_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmitted_SNModResponse_sequence[] = { + { &hf_xnap_pduSessionResourcesAdmittedToBeAdded, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionAdmittedToBeAddedSNModResponse }, + { &hf_xnap_pduSessionResourcesAdmittedToBeModified, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionAdmittedToBeModifiedSNModResponse }, + { &hf_xnap_pduSessionResourcesAdmittedToBeReleased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionAdmittedToBeReleasedSNModResponse }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAdmitted_SNModResponse(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_xnap_PDUSessionAdmitted_SNModResponse, PDUSessionAdmitted_SNModResponse_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionNotAdmitted_SNModResponse_sequence[] = { + { &hf_xnap_pduSessionResourcesNotAdmitted_SNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionResourcesNotAdmitted_List }, + { &hf_xnap_pduSessionResourcesNotAdmitted_MNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSessionResourcesNotAdmitted_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionNotAdmitted_SNModResponse(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_xnap_PDUSessionNotAdmitted_SNModResponse, PDUSessionNotAdmitted_SNModResponse_sequence); + + return offset; +} + + static const per_sequence_t SNodeModificationRequestReject_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5735,7 +9133,7 @@ static const per_sequence_t SNodeModificationRequestReject_sequence[] = { static int dissect_xnap_SNodeModificationRequestReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 416 "./asn1/xnap/xnap.cnf" +#line 502 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeModificationRequestReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5752,7 +9150,7 @@ static const per_sequence_t SNodeModificationRequired_sequence[] = { static int dissect_xnap_SNodeModificationRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 418 "./asn1/xnap/xnap.cnf" +#line 504 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeModificationRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5762,6 +9160,90 @@ dissect_xnap_SNodeModificationRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const value_string xnap_BearerConfigToBeModifiedSNModRequired_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeModifiedSNModRequired_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_05, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModRqdInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_05, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModRqdInfo_SNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeModifiedSNModRequired_Item(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_xnap_BearerConfigToBeModifiedSNModRequired_Item, BearerConfigToBeModifiedSNModRequired_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeModifiedSNModRequired_List_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeModifiedSNModRequired_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeModifiedSNModRequired_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeModifiedSNModRequired_List(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_xnap_BearerConfigToBeModifiedSNModRequired_List, BearerConfigToBeModifiedSNModRequired_List_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionToBeModifiedSNModRequired_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigurations, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeModifiedSNModRequired_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionToBeModifiedSNModRequired_Item(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_xnap_PDUSessionToBeModifiedSNModRequired_Item, PDUSessionToBeModifiedSNModRequired_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionToBeModifiedSNModRequired_sequence_of[1] = { + { &hf_xnap_PDUSessionToBeModifiedSNModRequired_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionToBeModifiedSNModRequired_Item }, +}; + +static int +dissect_xnap_PDUSessionToBeModifiedSNModRequired(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_xnap_PDUSessionToBeModifiedSNModRequired, PDUSessionToBeModifiedSNModRequired_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionToBeReleasedSNModRequired_sequence[] = { + { &hf_xnap_sn_terminated_06, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSession_List_withDataForwardingRequest }, + { &hf_xnap_mn_terminated_06, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSession_List_withCause }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionToBeReleasedSNModRequired(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_xnap_PDUSessionToBeReleasedSNModRequired, PDUSessionToBeReleasedSNModRequired_sequence); + + return offset; +} + + static const per_sequence_t SNodeModificationConfirm_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5769,7 +9251,7 @@ static const per_sequence_t SNodeModificationConfirm_sequence[] = { static int dissect_xnap_SNodeModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 420 "./asn1/xnap/xnap.cnf" +#line 506 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeModificationConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5779,6 +9261,90 @@ dissect_xnap_SNodeModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string xnap_BearerConfigAdmittedModSNModConfirm_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigAdmittedModSNModConfirm_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_07, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModConfirmInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_07, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceModConfirmInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigAdmittedModSNModConfirm_Item(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_xnap_BearerConfigAdmittedModSNModConfirm_Item, BearerConfigAdmittedModSNModConfirm_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigAdmittedModSNModConfirm_sequence_of[1] = { + { &hf_xnap_BearerConfigAdmittedModSNModConfirm_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigAdmittedModSNModConfirm_Item }, +}; + +static int +dissect_xnap_BearerConfigAdmittedModSNModConfirm(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_xnap_BearerConfigAdmittedModSNModConfirm, BearerConfigAdmittedModSNModConfirm_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedModSNModConfirm_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigurations_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigAdmittedModSNModConfirm }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionAdmittedModSNModConfirm_Item(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_xnap_PDUSessionAdmittedModSNModConfirm_Item, PDUSessionAdmittedModSNModConfirm_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionAdmittedModSNModConfirm_sequence_of[1] = { + { &hf_xnap_PDUSessionAdmittedModSNModConfirm_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionAdmittedModSNModConfirm_Item }, +}; + +static int +dissect_xnap_PDUSessionAdmittedModSNModConfirm(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_xnap_PDUSessionAdmittedModSNModConfirm, PDUSessionAdmittedModSNModConfirm_sequence_of, + maxnoofPDUSessions, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionReleasedSNModConfirm_sequence[] = { + { &hf_xnap_sn_terminated_08, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSession_List_withDataForwardingFromTarget }, + { &hf_xnap_mn_terminated_08, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSession_List }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionReleasedSNModConfirm(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_xnap_PDUSessionReleasedSNModConfirm, PDUSessionReleasedSNModConfirm_sequence); + + return offset; +} + + static const per_sequence_t SNodeModificationRefuse_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5786,7 +9352,7 @@ static const per_sequence_t SNodeModificationRefuse_sequence[] = { static int dissect_xnap_SNodeModificationRefuse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 422 "./asn1/xnap/xnap.cnf" +#line 508 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeModificationRefuse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5803,7 +9369,7 @@ static const per_sequence_t SNodeReleaseRequest_sequence[] = { static int dissect_xnap_SNodeReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 424 "./asn1/xnap/xnap.cnf" +#line 510 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeReleaseRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5813,6 +9379,16 @@ dissect_xnap_SNodeReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } + +static int +dissect_xnap_PDUSessionToBeReleased_RelReq(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 SNodeReleaseRequestAcknowledge_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5820,7 +9396,7 @@ static const per_sequence_t SNodeReleaseRequestAcknowledge_sequence[] = { static int dissect_xnap_SNodeReleaseRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 426 "./asn1/xnap/xnap.cnf" +#line 512 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeReleaseRequestAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5837,7 +9413,7 @@ static const per_sequence_t SNodeReleaseReject_sequence[] = { static int dissect_xnap_SNodeReleaseReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 428 "./asn1/xnap/xnap.cnf" +#line 514 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeReleaseReject"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5854,7 +9430,7 @@ static const per_sequence_t SNodeReleaseRequired_sequence[] = { static int dissect_xnap_SNodeReleaseRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 430 "./asn1/xnap/xnap.cnf" +#line 516 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeReleaseRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5864,6 +9440,21 @@ dissect_xnap_SNodeReleaseRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const per_sequence_t PDUSessionToBeReleasedList_RelRqd_sequence[] = { + { &hf_xnap_pduSessionsToBeReleasedList_SNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSession_List_withDataForwardingRequest }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionToBeReleasedList_RelRqd(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_xnap_PDUSessionToBeReleasedList_RelRqd, PDUSessionToBeReleasedList_RelRqd_sequence); + + return offset; +} + + static const per_sequence_t SNodeReleaseConfirm_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5871,7 +9462,7 @@ static const per_sequence_t SNodeReleaseConfirm_sequence[] = { static int dissect_xnap_SNodeReleaseConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 432 "./asn1/xnap/xnap.cnf" +#line 518 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeReleaseConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5881,6 +9472,21 @@ dissect_xnap_SNodeReleaseConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const per_sequence_t PDUSessionReleasedList_RelConf_sequence[] = { + { &hf_xnap_pduSessionsReleasedList_SNterminated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_PDUSession_List_withDataForwardingFromTarget }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionReleasedList_RelConf(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_xnap_PDUSessionReleasedList_RelConf, PDUSessionReleasedList_RelConf_sequence); + + return offset; +} + + static const per_sequence_t SNodeCounterCheckRequest_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5888,7 +9494,7 @@ static const per_sequence_t SNodeCounterCheckRequest_sequence[] = { static int dissect_xnap_SNodeCounterCheckRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 434 "./asn1/xnap/xnap.cnf" +#line 520 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeCounterCheckRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5898,6 +9504,47 @@ dissect_xnap_SNodeCounterCheckRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } + +static int +dissect_xnap_INTEGER_0_4294967295(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, 4294967295U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t BearersSubjectToCounterCheck_Item_sequence[] = { + { &hf_xnap_drb_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DRB_ID }, + { &hf_xnap_ul_count , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_0_4294967295 }, + { &hf_xnap_dl_count , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_INTEGER_0_4294967295 }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_BearersSubjectToCounterCheck_Item(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_xnap_BearersSubjectToCounterCheck_Item, BearersSubjectToCounterCheck_Item_sequence); + + return offset; +} + + +static const per_sequence_t BearersSubjectToCounterCheck_List_sequence_of[1] = { + { &hf_xnap_BearersSubjectToCounterCheck_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearersSubjectToCounterCheck_Item }, +}; + +static int +dissect_xnap_BearersSubjectToCounterCheck_List(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_xnap_BearersSubjectToCounterCheck_List, BearersSubjectToCounterCheck_List_sequence_of, + 1, maxnoofDRBs, FALSE); + + return offset; +} + + static const per_sequence_t SNodeChangeRequired_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5905,7 +9552,7 @@ static const per_sequence_t SNodeChangeRequired_sequence[] = { static int dissect_xnap_SNodeChangeRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 436 "./asn1/xnap/xnap.cnf" +#line 522 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeChangeRequired"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5915,6 +9562,74 @@ dissect_xnap_SNodeChangeRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const value_string xnap_BearerConfigToBeAdded_ChangeRqd_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfigToBeAdded_ChangeRqd_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_09, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceChangeRequiredInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_09, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceChangeRequiredInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfigToBeAdded_ChangeRqd_Item(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_xnap_BearerConfigToBeAdded_ChangeRqd_Item, BearerConfigToBeAdded_ChangeRqd_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfigToBeAdded_ChangeRqd_sequence_of[1] = { + { &hf_xnap_BearerConfigToBeAdded_ChangeRqd_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_ChangeRqd_Item }, +}; + +static int +dissect_xnap_BearerConfigToBeAdded_ChangeRqd(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_xnap_BearerConfigToBeAdded_ChangeRqd, BearerConfigToBeAdded_ChangeRqd_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSession_SNChangeRequired_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigToBeAdded_03, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfigToBeAdded_ChangeRqd }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSession_SNChangeRequired_Item(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_xnap_PDUSession_SNChangeRequired_Item, PDUSession_SNChangeRequired_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSession_SNChangeRequired_List_sequence_of[1] = { + { &hf_xnap_PDUSession_SNChangeRequired_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_SNChangeRequired_Item }, +}; + +static int +dissect_xnap_PDUSession_SNChangeRequired_List(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_xnap_PDUSession_SNChangeRequired_List, PDUSession_SNChangeRequired_List_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + static const per_sequence_t SNodeChangeConfirm_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5922,7 +9637,7 @@ static const per_sequence_t SNodeChangeConfirm_sequence[] = { static int dissect_xnap_SNodeChangeConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 438 "./asn1/xnap/xnap.cnf" +#line 524 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeChangeConfirm"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5932,6 +9647,74 @@ dissect_xnap_SNodeChangeConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } +static const value_string xnap_BearerConfig_ChangeConfirm_Item_vals[] = { + { 0, "sn-terminated" }, + { 1, "mn-terminated" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BearerConfig_ChangeConfirm_Item_choice[] = { + { 0, &hf_xnap_sn_terminated_10, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceChangeConfirmInfo_SNterminated }, + { 1, &hf_xnap_mn_terminated_10, ASN1_NO_EXTENSIONS , dissect_xnap_PDUSessionResourceChangeConfirmInfo_MNterminated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_BearerConfig_ChangeConfirm_Item(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_xnap_BearerConfig_ChangeConfirm_Item, BearerConfig_ChangeConfirm_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t BearerConfig_ChangeConfirm_sequence_of[1] = { + { &hf_xnap_BearerConfig_ChangeConfirm_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfig_ChangeConfirm_Item }, +}; + +static int +dissect_xnap_BearerConfig_ChangeConfirm(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_xnap_BearerConfig_ChangeConfirm, BearerConfig_ChangeConfirm_sequence_of, + 1, maxnoofBearerConfigs, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSession_SNChangeConfirm_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_bearerConfigToBeAdded_04, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_BearerConfig_ChangeConfirm }, + { &hf_xnap_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSession_SNChangeConfirm_Item(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_xnap_PDUSession_SNChangeConfirm_Item, PDUSession_SNChangeConfirm_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSession_SNChangeConfirm_List_sequence_of[1] = { + { &hf_xnap_PDUSession_SNChangeConfirm_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_SNChangeConfirm_Item }, +}; + +static int +dissect_xnap_PDUSession_SNChangeConfirm_List(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_xnap_PDUSession_SNChangeConfirm_List, PDUSession_SNChangeConfirm_List_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + static const per_sequence_t SNodeChangeRefuse_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5939,7 +9722,7 @@ static const per_sequence_t SNodeChangeRefuse_sequence[] = { static int dissect_xnap_SNodeChangeRefuse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 440 "./asn1/xnap/xnap.cnf" +#line 526 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SNodeChangeRefuse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5956,7 +9739,7 @@ static const per_sequence_t RRCTransfer_sequence[] = { static int dissect_xnap_RRCTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 442 "./asn1/xnap/xnap.cnf" +#line 528 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5966,6 +9749,210 @@ dissect_xnap_RRCTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } +static const value_string xnap_T_srbType_vals[] = { + { 0, "srb1" }, + { 1, "srb2" }, + { 0, NULL } +}; + + +static int +dissect_xnap_T_srbType(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, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SplitSRB_RRCTransfer_sequence[] = { + { &hf_xnap_rrcContainer , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_OCTET_STRING }, + { &hf_xnap_srbType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_srbType }, + { &hf_xnap_deliveryStatus , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_DeliveryStatus }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_SplitSRB_RRCTransfer(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_xnap_SplitSRB_RRCTransfer, SplitSRB_RRCTransfer_sequence); + + return offset; +} + + + +static int +dissect_xnap_T_rrcContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 228 "./asn1/xnap/xnap.cnf" + tvbuff_t *parameter_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + proto_tree *subtree; + GlobalNG_RANNode_ID_enum source_ranmode_id = xnap_get_ranmode_id(&actx->pinfo->dst, actx->pinfo->destport, actx->pinfo); + + subtree = proto_item_add_subtree(actx->created_item, ett_nxap_container); + if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_gNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_GNB)) { + dissect_nr_rrc_MeasurementReport_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } else if ((xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_AUTOMATIC && + source_ranmode_id == GlobalNG_RANNode_ID_ng_eNB) || + (xnap_dissect_target_ng_ran_container_as == XNAP_NG_RAN_CONTAINER_NG_ENB)) { + dissect_lte_rrc_MeasurementReport_PDU(parameter_tvb, actx->pinfo, subtree, NULL); + } + } + + + + return offset; +} + + +static const per_sequence_t NRUEMeasurementReportRRCTransfer_sequence[] = { + { &hf_xnap_rrcContainer_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_T_rrcContainer }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_NRUEMeasurementReportRRCTransfer(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_xnap_NRUEMeasurementReportRRCTransfer, NRUEMeasurementReportRRCTransfer_sequence); + + return offset; +} + + +static const per_sequence_t NotificationControlIndication_sequence[] = { + { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_NotificationControlIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 564 "./asn1/xnap/xnap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NotificationControlIndication"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_xnap_NotificationControlIndication, NotificationControlIndication_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourcesNotify_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_qosFlowsNotificationContrIndInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowNotificationControlIndicationInfo }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourcesNotify_Item(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_xnap_PDUSessionResourcesNotify_Item, PDUSessionResourcesNotify_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourcesNotifyList_sequence_of[1] = { + { &hf_xnap_PDUSessionResourcesNotifyList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesNotify_Item }, +}; + +static int +dissect_xnap_PDUSessionResourcesNotifyList(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_xnap_PDUSessionResourcesNotifyList, PDUSessionResourcesNotifyList_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + +static const per_sequence_t ActivityNotification_sequence[] = { + { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ActivityNotification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 566 "./asn1/xnap/xnap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ActivityNotification"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_xnap_ActivityNotification, ActivityNotification_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsActivityNotifyItem_sequence[] = { + { &hf_xnap_qosFlowIndicator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowIndicator }, + { &hf_xnap_pduSessionLevelUPactivityreport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_UserPlaneTrafficActivityReport }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_QoSFlowsActivityNotifyItem(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_xnap_QoSFlowsActivityNotifyItem, QoSFlowsActivityNotifyItem_sequence); + + return offset; +} + + +static const per_sequence_t QoSFlowsActivityNotifyList_sequence_of[1] = { + { &hf_xnap_QoSFlowsActivityNotifyList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_QoSFlowsActivityNotifyItem }, +}; + +static int +dissect_xnap_QoSFlowsActivityNotifyList(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_xnap_QoSFlowsActivityNotifyList, QoSFlowsActivityNotifyList_sequence_of, + 1, maxnoofQoSFlows, FALSE); + + return offset; +} + + +static const per_sequence_t PDUSessionResourcesActivityNotify_Item_sequence[] = { + { &hf_xnap_pduSessionId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSession_ID }, + { &hf_xnap_pduSessionLevelUPactivityreport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_UserPlaneTrafficActivityReport }, + { &hf_xnap_qosFlowsActivityNotifyList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_QoSFlowsActivityNotifyList }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_PDUSessionResourcesActivityNotify_Item(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_xnap_PDUSessionResourcesActivityNotify_Item, PDUSessionResourcesActivityNotify_Item_sequence); + + return offset; +} + + +static const per_sequence_t PDUSessionResourcesActivityNotifyList_sequence_of[1] = { + { &hf_xnap_PDUSessionResourcesActivityNotifyList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_xnap_PDUSessionResourcesActivityNotify_Item }, +}; + +static int +dissect_xnap_PDUSessionResourcesActivityNotifyList(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_xnap_PDUSessionResourcesActivityNotifyList, PDUSessionResourcesActivityNotifyList_sequence_of, + 1, maxnoofPDUSessions, FALSE); + + return offset; +} + + static const per_sequence_t XnSetupRequest_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -5973,7 +9960,7 @@ static const per_sequence_t XnSetupRequest_sequence[] = { static int dissect_xnap_XnSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 450 "./asn1/xnap/xnap.cnf" +#line 536 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "XnSetupRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -5990,7 +9977,7 @@ static const per_sequence_t XnSetupResponse_sequence[] = { static int dissect_xnap_XnSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 452 "./asn1/xnap/xnap.cnf" +#line 538 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "XnSetupResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6007,7 +9994,7 @@ static const per_sequence_t XnSetupFailure_sequence[] = { static int dissect_xnap_XnSetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 454 "./asn1/xnap/xnap.cnf" +#line 540 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "XnSetupFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6024,7 +10011,7 @@ static const per_sequence_t NGRANNodeConfigurationUpdate_sequence[] = { static int dissect_xnap_NGRANNodeConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 456 "./asn1/xnap/xnap.cnf" +#line 542 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdate"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6042,9 +10029,9 @@ static const value_string xnap_ConfigurationUpdateInitiatingNodeChoice_vals[] = }; static const per_choice_t ConfigurationUpdateInitiatingNodeChoice_choice[] = { - { 0, &hf_xnap_gNB_01 , ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolIE_Container }, - { 1, &hf_xnap_ng_eNB_01 , ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolIE_Container }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_gNB_01 , ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Container }, + { 1, &hf_xnap_ng_eNB_01 , ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Container }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -6065,7 +10052,7 @@ static const per_sequence_t NGRANNodeConfigurationUpdateAcknowledge_sequence[] = static int dissect_xnap_NGRANNodeConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 458 "./asn1/xnap/xnap.cnf" +#line 544 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdateAcknowledge"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6112,9 +10099,9 @@ static const value_string xnap_RespondingNodeTypeConfigUpdateAck_vals[] = { }; static const per_choice_t RespondingNodeTypeConfigUpdateAck_choice[] = { - { 0, &hf_xnap_ng_eNB_02 , ASN1_EXTENSION_ROOT , dissect_xnap_RespondingNodeTypeConfigUpdateAck_ng_eNB }, - { 1, &hf_xnap_gNB_02 , ASN1_EXTENSION_ROOT , dissect_xnap_RespondingNodeTypeConfigUpdateAck_gNB }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_ng_eNB_02 , ASN1_NO_EXTENSIONS , dissect_xnap_RespondingNodeTypeConfigUpdateAck_ng_eNB }, + { 1, &hf_xnap_gNB_02 , ASN1_NO_EXTENSIONS , dissect_xnap_RespondingNodeTypeConfigUpdateAck_gNB }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -6135,7 +10122,7 @@ static const per_sequence_t NGRANNodeConfigurationUpdateFailure_sequence[] = { static int dissect_xnap_NGRANNodeConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 460 "./asn1/xnap/xnap.cnf" +#line 546 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "NGRANNodeConfigurationUpdateFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6145,6 +10132,157 @@ dissect_xnap_NGRANNodeConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _ } +static const per_sequence_t E_UTRA_NR_CellResourceCoordinationRequest_sequence[] = { + { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_E_UTRA_NR_CellResourceCoordinationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 548 "./asn1/xnap/xnap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-UTRA-NR-CellResourceCoordinationRequest"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_xnap_E_UTRA_NR_CellResourceCoordinationRequest, E_UTRA_NR_CellResourceCoordinationRequest_sequence); + + return offset; +} + + +static const per_sequence_t ResourceCoordRequest_ng_eNB_initiated_sequence[] = { + { &hf_xnap_dataTrafficResourceIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResourceIndication }, + { &hf_xnap_spectrumSharingGroupID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_SpectrumSharingGroupID }, + { &hf_xnap_listofE_UTRACells, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResourceCoordRequest_ng_eNB_initiated(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_xnap_ResourceCoordRequest_ng_eNB_initiated, ResourceCoordRequest_ng_eNB_initiated_sequence); + + return offset; +} + + +static const per_sequence_t ResourceCoordRequest_gNB_initiated_sequence[] = { + { &hf_xnap_dataTrafficResourceIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResourceIndication }, + { &hf_xnap_listofE_UTRACells, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI }, + { &hf_xnap_spectrumSharingGroupID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_SpectrumSharingGroupID }, + { &hf_xnap_listofNRCells , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResourceCoordRequest_gNB_initiated(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_xnap_ResourceCoordRequest_gNB_initiated, ResourceCoordRequest_gNB_initiated_sequence); + + return offset; +} + + +static const value_string xnap_InitiatingNodeType_ResourceCoordRequest_vals[] = { + { 0, "ng-eNB" }, + { 1, "gNB" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t InitiatingNodeType_ResourceCoordRequest_choice[] = { + { 0, &hf_xnap_ng_eNB_03 , ASN1_NO_EXTENSIONS , dissect_xnap_ResourceCoordRequest_ng_eNB_initiated }, + { 1, &hf_xnap_gNB_03 , ASN1_NO_EXTENSIONS , dissect_xnap_ResourceCoordRequest_gNB_initiated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_InitiatingNodeType_ResourceCoordRequest(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_xnap_InitiatingNodeType_ResourceCoordRequest, InitiatingNodeType_ResourceCoordRequest_choice, + NULL); + + return offset; +} + + +static const per_sequence_t E_UTRA_NR_CellResourceCoordinationResponse_sequence[] = { + { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_E_UTRA_NR_CellResourceCoordinationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 550 "./asn1/xnap/xnap.cnf" + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E-UTRA-NR-CellResourceCoordinationResponse"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_xnap_E_UTRA_NR_CellResourceCoordinationResponse, E_UTRA_NR_CellResourceCoordinationResponse_sequence); + + return offset; +} + + +static const per_sequence_t ResourceCoordResponse_ng_eNB_initiated_sequence[] = { + { &hf_xnap_dataTrafficResourceIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResourceIndication }, + { &hf_xnap_spectrumSharingGroupID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_SpectrumSharingGroupID }, + { &hf_xnap_listofE_UTRACells, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResourceCoordResponse_ng_eNB_initiated(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_xnap_ResourceCoordResponse_ng_eNB_initiated, ResourceCoordResponse_ng_eNB_initiated_sequence); + + return offset; +} + + +static const per_sequence_t ResourceCoordResponse_gNB_initiated_sequence[] = { + { &hf_xnap_dataTrafficResourceIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_DataTrafficResourceIndication }, + { &hf_xnap_spectrumSharingGroupID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_SpectrumSharingGroupID }, + { &hf_xnap_listofNRCells , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI }, + { &hf_xnap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_xnap_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_xnap_ResourceCoordResponse_gNB_initiated(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_xnap_ResourceCoordResponse_gNB_initiated, ResourceCoordResponse_gNB_initiated_sequence); + + return offset; +} + + +static const value_string xnap_RespondingNodeType_ResourceCoordResponse_vals[] = { + { 0, "ng-eNB" }, + { 1, "gNB" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t RespondingNodeType_ResourceCoordResponse_choice[] = { + { 0, &hf_xnap_ng_eNB_04 , ASN1_NO_EXTENSIONS , dissect_xnap_ResourceCoordResponse_ng_eNB_initiated }, + { 1, &hf_xnap_gNB_04 , ASN1_NO_EXTENSIONS , dissect_xnap_ResourceCoordResponse_gNB_initiated }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_xnap_RespondingNodeType_ResourceCoordResponse(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_xnap_RespondingNodeType_ResourceCoordResponse, RespondingNodeType_ResourceCoordResponse_choice, + NULL); + + return offset; +} + + static const per_sequence_t XnRemovalRequest_sequence[] = { { &hf_xnap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_xnap_ProtocolIE_Container }, { NULL, 0, 0, NULL } @@ -6152,7 +10290,7 @@ static const per_sequence_t XnRemovalRequest_sequence[] = { static int dissect_xnap_XnRemovalRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 444 "./asn1/xnap/xnap.cnf" +#line 530 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "XnRemovalRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6169,7 +10307,7 @@ static const per_sequence_t XnRemovalResponse_sequence[] = { static int dissect_xnap_XnRemovalResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 446 "./asn1/xnap/xnap.cnf" +#line 532 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "XnRemovalResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6186,7 +10324,7 @@ static const per_sequence_t XnRemovalFailure_sequence[] = { static int dissect_xnap_XnRemovalFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 448 "./asn1/xnap/xnap.cnf" +#line 534 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "XnRemovalFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6203,7 +10341,7 @@ static const per_sequence_t CellActivationRequest_sequence[] = { static int dissect_xnap_CellActivationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 462 "./asn1/xnap/xnap.cnf" +#line 552 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6221,9 +10359,9 @@ static const value_string xnap_ServedCellsToActivate_vals[] = { }; static const per_choice_t ServedCellsToActivate_choice[] = { - { 0, &hf_xnap_nr_cells , ASN1_EXTENSION_ROOT , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI }, - { 1, &hf_xnap_e_utra_cells , ASN1_EXTENSION_ROOT , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_nr_cells , ASN1_NO_EXTENSIONS , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI }, + { 1, &hf_xnap_e_utra_cells , ASN1_NO_EXTENSIONS , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -6244,7 +10382,7 @@ static const per_sequence_t CellActivationResponse_sequence[] = { static int dissect_xnap_CellActivationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 464 "./asn1/xnap/xnap.cnf" +#line 554 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6262,9 +10400,9 @@ static const value_string xnap_ActivatedServedCells_vals[] = { }; static const per_choice_t ActivatedServedCells_choice[] = { - { 0, &hf_xnap_nr_cells , ASN1_EXTENSION_ROOT , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI }, - { 1, &hf_xnap_e_utra_cells , ASN1_EXTENSION_ROOT , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI }, - { 2, &hf_xnap_choice_extension, ASN1_EXTENSION_ROOT , dissect_xnap_ProtocolExtensionContainer }, + { 0, &hf_xnap_nr_cells , ASN1_NO_EXTENSIONS , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI }, + { 1, &hf_xnap_e_utra_cells , ASN1_NO_EXTENSIONS , dissect_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI }, + { 2, &hf_xnap_choice_extension, ASN1_NO_EXTENSIONS , dissect_xnap_ProtocolIE_Single_Container }, { 0, NULL, 0, NULL } }; @@ -6285,7 +10423,7 @@ static const per_sequence_t CellActivationFailure_sequence[] = { static int dissect_xnap_CellActivationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 466 "./asn1/xnap/xnap.cnf" +#line 556 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellActivationFailure"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6302,7 +10440,7 @@ static const per_sequence_t ResetRequest_sequence[] = { static int dissect_xnap_ResetRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 468 "./asn1/xnap/xnap.cnf" +#line 558 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetRequest"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6319,7 +10457,7 @@ static const per_sequence_t ResetResponse_sequence[] = { static int dissect_xnap_ResetResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 470 "./asn1/xnap/xnap.cnf" +#line 560 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetResponse"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6336,7 +10474,7 @@ static const per_sequence_t ErrorIndication_sequence[] = { static int dissect_xnap_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 472 "./asn1/xnap/xnap.cnf" +#line 562 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, @@ -6353,7 +10491,7 @@ static const per_sequence_t PrivateMessage_sequence[] = { static int dissect_xnap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 474 "./asn1/xnap/xnap.cnf" +#line 568 "./asn1/xnap/xnap.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage"); @@ -6367,7 +10505,7 @@ dissect_xnap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_InitiatingMessage_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 85 "./asn1/xnap/xnap.cnf" +#line 75 "./asn1/xnap/xnap.cnf" struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); xnap_data->message_type = INITIATING_MESSAGE; @@ -6397,7 +10535,7 @@ dissect_xnap_InitiatingMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_xnap_SuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 90 "./asn1/xnap/xnap.cnf" +#line 80 "./asn1/xnap/xnap.cnf" struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); xnap_data->message_type = SUCCESSFUL_OUTCOME; @@ -6427,7 +10565,7 @@ dissect_xnap_SuccessfulOutcome(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_xnap_UnsuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 95 "./asn1/xnap/xnap.cnf" +#line 85 "./asn1/xnap/xnap.cnf" struct xnap_private_data *xnap_data = xnap_get_private_data(actx->pinfo); xnap_data->message_type = UNSUCCESSFUL_OUTCOME; @@ -6495,14 +10633,6 @@ static int dissect_AMF_Pool_Information_PDU(tvbuff_t *tvb _U_, packet_info *pinf offset += 7; offset >>= 3; return offset; } -static int dissect_AreaOfInterest_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_AreaOfInterest_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_AreaOfInterest_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_AssistanceDataForRANPaging_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6543,22 +10673,6 @@ static int dissect_DataforwardingInfoperPDUSession_PDU(tvbuff_t *tvb _U_, packet offset += 7; offset >>= 3; return offset; } -static int dissect_DataforwardingInfoperPDUSession_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_DataforwardingInfoperPDUSession_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_DataforwardingInfoperPDUSession_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_DataForwardingResponseDRBItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_DataForwardingResponseDRBItem(tvb, offset, &asn1_ctx, tree, hf_xnap_DataForwardingResponseDRBItem_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_DRBsSubjectToStatusTransfer_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6567,19 +10681,19 @@ static int dissect_DRBsSubjectToStatusTransfer_List_PDU(tvbuff_t *tvb _U_, packe offset += 7; offset >>= 3; return offset; } -static int dissect_DRBsSubjectToStatusTransfer_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { +static int dissect_ExpectedUEBehaviour_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_DRBsSubjectToStatusTransfer_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_DRBsSubjectToStatusTransfer_Item_PDU); + offset = dissect_xnap_ExpectedUEBehaviour(tvb, offset, &asn1_ctx, tree, hf_xnap_ExpectedUEBehaviour_PDU); offset += 7; offset >>= 3; return offset; } -static int dissect_DRBToQoSFlowMapping_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { +static int dissect_GlobalNG_RANCell_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_DRBToQoSFlowMapping_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_DRBToQoSFlowMapping_Item_PDU); + offset = dissect_xnap_GlobalNG_RANCell_ID(tvb, offset, &asn1_ctx, tree, hf_xnap_GlobalNG_RANCell_ID_PDU); offset += 7; offset >>= 3; return offset; } @@ -6623,6 +10737,14 @@ static int dissect_MaskedIMEISV_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p offset += 7; offset >>= 3; return offset; } +static int dissect_MobilityRestrictionList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_MobilityRestrictionList(tvb, offset, &asn1_ctx, tree, hf_xnap_MobilityRestrictionList_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_NG_RAN_Cell_Identity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6647,6 +10769,22 @@ static int dissect_PagingDRX_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, prot offset += 7; offset >>= 3; return offset; } +static int dissect_PagingPriority_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PagingPriority(tvb, offset, &asn1_ctx, tree, hf_xnap_PagingPriority_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDCPChangeIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDCPChangeIndication(tvb, offset, &asn1_ctx, tree, hf_xnap_PDCPChangeIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_PDUSessionResourcesAdmitted_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6655,14 +10793,6 @@ static int dissect_PDUSessionResourcesAdmitted_List_PDU(tvbuff_t *tvb _U_, packe offset += 7; offset >>= 3; return offset; } -static int dissect_PDUSessionResourcesAdmitted_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_PDUSessionResourcesAdmitted_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionResourcesAdmitted_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_PDUSessionResourcesNotAdmitted_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6671,51 +10801,11 @@ static int dissect_PDUSessionResourcesNotAdmitted_List_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } -static int dissect_PDUSessionResourcesNotAdmitted_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { +static int dissect_PLMN_Identity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_PDUSessionResourcesNotAdmitted_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionResourcesNotAdmitted_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_PDUSessionResourcesToBeSetup_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_PDUSessionResourcesToBeSetup_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionResourcesToBeSetup_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_QoSFlow_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_QoSFlow_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_QoSFlow_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_QoSFlowAdmitted_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_QoSFlowAdmitted_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_QoSFlowAdmitted_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_QoSFlowNotAdmitted_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_QoSFlowNotAdmitted_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_QoSFlowNotAdmitted_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} -static int dissect_QoSFlowsToBeSetup_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_QoSFlowsToBeSetup_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_QoSFlowsToBeSetup_Item_PDU); + offset = dissect_xnap_PLMN_Identity(tvb, offset, &asn1_ctx, tree, hf_xnap_PLMN_Identity_PDU); offset += 7; offset >>= 3; return offset; } @@ -6727,14 +10817,6 @@ static int dissect_RANPagingArea_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, offset += 7; offset >>= 3; return offset; } -static int dissect_RANPagingPriority_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_RANPagingPriority(tvb, offset, &asn1_ctx, tree, hf_xnap_RANPagingPriority_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_ResetRequestTypeInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6743,14 +10825,6 @@ static int dissect_ResetRequestTypeInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinf offset += 7; offset >>= 3; return offset; } -static int dissect_ResetRequestPartialReleaseItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_ResetRequestPartialReleaseItem(tvb, offset, &asn1_ctx, tree, hf_xnap_ResetRequestPartialReleaseItem_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_ResetResponseTypeInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6759,11 +10833,35 @@ static int dissect_ResetResponseTypeInfo_PDU(tvbuff_t *tvb _U_, packet_info *pin offset += 7; offset >>= 3; return offset; } -static int dissect_ResetResponsePartialReleaseItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { +static int dissect_RFSP_Index_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_ResetResponsePartialReleaseItem(tvb, offset, &asn1_ctx, tree, hf_xnap_ResetResponsePartialReleaseItem_PDU); + offset = dissect_xnap_RFSP_Index(tvb, offset, &asn1_ctx, tree, hf_xnap_RFSP_Index_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RRCConfigIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_RRCConfigIndication(tvb, offset, &asn1_ctx, tree, hf_xnap_RRCConfigIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RRCResumeCause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_RRCResumeCause(tvb, offset, &asn1_ctx, tree, hf_xnap_RRCResumeCause_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SCGConfigurationQuery_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_SCGConfigurationQuery(tvb, offset, &asn1_ctx, tree, hf_xnap_SCGConfigurationQuery_PDU); offset += 7; offset >>= 3; return offset; } @@ -6799,6 +10897,22 @@ static int dissect_ServedCellsToUpdate_NR_PDU(tvbuff_t *tvb _U_, packet_info *pi offset += 7; offset >>= 3; return offset; } +static int dissect_S_NG_RANnode_SecurityKey_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_S_NG_RANnode_SecurityKey(tvb, offset, &asn1_ctx, tree, hf_xnap_S_NG_RANnode_SecurityKey_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SplitSRBsTypes_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_SplitSRBsTypes(tvb, offset, &asn1_ctx, tree, hf_xnap_SplitSRBsTypes_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_TAISupport_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6807,14 +10921,6 @@ static int dissect_TAISupport_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_ offset += 7; offset >>= 3; return offset; } -static int dissect_TAISupport_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { - int offset = 0; - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); - offset = dissect_xnap_TAISupport_Item(tvb, offset, &asn1_ctx, tree, hf_xnap_TAISupport_Item_PDU); - offset += 7; offset >>= 3; - return offset; -} static int dissect_Target_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6823,6 +10929,14 @@ static int dissect_Target_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pro offset += 7; offset >>= 3; return offset; } +static int dissect_TimeToWait_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_TimeToWait(tvb, offset, &asn1_ctx, tree, hf_xnap_TimeToWait_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_TraceActivation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6831,6 +10945,22 @@ static int dissect_TraceActivation_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_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UEAggregateMaximumBitRate(tvb, offset, &asn1_ctx, tree, hf_xnap_UEAggregateMaximumBitRate_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEContextKeptIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UEContextKeptIndicator(tvb, offset, &asn1_ctx, tree, hf_xnap_UEContextKeptIndicator_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UEContextID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6847,6 +10977,14 @@ static int dissect_UEContextInfoRetrUECtxtResp_PDU(tvbuff_t *tvb _U_, packet_inf offset += 7; offset >>= 3; return offset; } +static int dissect_UEHistoryInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UEHistoryInformation(tvb, offset, &asn1_ctx, tree, hf_xnap_UEHistoryInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UEIdentityIndexValue_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6863,6 +11001,22 @@ static int dissect_UERANPagingIdentity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_UESecurityCapabilities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UESecurityCapabilities(tvb, offset, &asn1_ctx, tree, hf_xnap_UESecurityCapabilities_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UserPlaneTrafficActivityReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UserPlaneTrafficActivityReport(tvb, offset, &asn1_ctx, tree, hf_xnap_UserPlaneTrafficActivityReport_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_XnBenefitValue_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6887,6 +11041,14 @@ static int dissect_UEContextInfoHORequest_PDU(tvbuff_t *tvb _U_, packet_info *pi offset += 7; offset >>= 3; return offset; } +static int dissect_UEContextRefAtSN_HORequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UEContextRefAtSN_HORequest(tvb, offset, &asn1_ctx, tree, hf_xnap_UEContextRefAtSN_HORequest_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_HandoverRequestAcknowledge_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6967,6 +11129,14 @@ static int dissect_RetrieveUEContextFailure_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_OldtoNewNG_RANnodeResumeContainer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_OldtoNewNG_RANnodeResumeContainer(tvb, offset, &asn1_ctx, tree, hf_xnap_OldtoNewNG_RANnodeResumeContainer_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_DataForwardingAddressIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6983,6 +11153,22 @@ static int dissect_SNodeAdditionRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinf offset += 7; offset >>= 3; return offset; } +static int dissect_MN_to_SN_Container_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_MN_to_SN_Container(tvb, offset, &asn1_ctx, tree, hf_xnap_MN_to_SN_Container_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionToBeAddedAddReq_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionToBeAddedAddReq(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionToBeAddedAddReq_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeAdditionRequestAcknowledge_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -6991,6 +11177,30 @@ static int dissect_SNodeAdditionRequestAcknowledge_PDU(tvbuff_t *tvb _U_, packet offset += 7; offset >>= 3; return offset; } +static int dissect_SN_to_MN_Container_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_SN_to_MN_Container(tvb, offset, &asn1_ctx, tree, hf_xnap_SN_to_MN_Container_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionAdmittedAddedAddReqAck_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionAdmittedAddedAddReqAck(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionAdmittedAddedAddReqAck_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionNotAdmittedAddReqAck_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionNotAdmittedAddReqAck(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionNotAdmittedAddReqAck_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeAdditionRequestReject_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7007,6 +11217,14 @@ static int dissect_SNodeReconfigurationComplete_PDU(tvbuff_t *tvb _U_, packet_in offset += 7; offset >>= 3; return offset; } +static int dissect_ResponseInfo_ReconfCompl_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_ResponseInfo_ReconfCompl(tvb, offset, &asn1_ctx, tree, hf_xnap_ResponseInfo_ReconfCompl_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeModificationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7015,6 +11233,14 @@ static int dissect_SNodeModificationRequest_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_UEContextInfo_SNModRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_UEContextInfo_SNModRequest(tvb, offset, &asn1_ctx, tree, hf_xnap_UEContextInfo_SNModRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeModificationRequestAcknowledge_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7023,6 +11249,22 @@ static int dissect_SNodeModificationRequestAcknowledge_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionAdmitted_SNModResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionAdmitted_SNModResponse(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionAdmitted_SNModResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionNotAdmitted_SNModResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionNotAdmitted_SNModResponse(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionNotAdmitted_SNModResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeModificationRequestReject_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7039,6 +11281,22 @@ static int dissect_SNodeModificationRequired_PDU(tvbuff_t *tvb _U_, packet_info offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionToBeModifiedSNModRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionToBeModifiedSNModRequired(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionToBeModifiedSNModRequired_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionToBeReleasedSNModRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionToBeReleasedSNModRequired(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionToBeReleasedSNModRequired_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeModificationConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7047,6 +11305,22 @@ static int dissect_SNodeModificationConfirm_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionAdmittedModSNModConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionAdmittedModSNModConfirm(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionAdmittedModSNModConfirm_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionReleasedSNModConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionReleasedSNModConfirm(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionReleasedSNModConfirm_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeModificationRefuse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7063,6 +11337,14 @@ static int dissect_SNodeReleaseRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionToBeReleased_RelReq_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionToBeReleased_RelReq(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionToBeReleased_RelReq_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeReleaseRequestAcknowledge_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7087,6 +11369,14 @@ static int dissect_SNodeReleaseRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinf offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionToBeReleasedList_RelRqd_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionToBeReleasedList_RelRqd(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionToBeReleasedList_RelRqd_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeReleaseConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7095,6 +11385,14 @@ static int dissect_SNodeReleaseConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSessionReleasedList_RelConf_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionReleasedList_RelConf(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionReleasedList_RelConf_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeCounterCheckRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7103,6 +11401,14 @@ static int dissect_SNodeCounterCheckRequest_PDU(tvbuff_t *tvb _U_, packet_info * offset += 7; offset >>= 3; return offset; } +static int dissect_BearersSubjectToCounterCheck_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_BearersSubjectToCounterCheck_List(tvb, offset, &asn1_ctx, tree, hf_xnap_BearersSubjectToCounterCheck_List_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeChangeRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7111,6 +11417,14 @@ static int dissect_SNodeChangeRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSession_SNChangeRequired_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSession_SNChangeRequired_List(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSession_SNChangeRequired_List_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeChangeConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7119,6 +11433,14 @@ static int dissect_SNodeChangeConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_PDUSession_SNChangeConfirm_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSession_SNChangeConfirm_List(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSession_SNChangeConfirm_List_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_SNodeChangeRefuse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7135,6 +11457,54 @@ static int dissect_RRCTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, pr offset += 7; offset >>= 3; return offset; } +static int dissect_SplitSRB_RRCTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_SplitSRB_RRCTransfer(tvb, offset, &asn1_ctx, tree, hf_xnap_SplitSRB_RRCTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NRUEMeasurementReportRRCTransfer_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_NRUEMeasurementReportRRCTransfer(tvb, offset, &asn1_ctx, tree, hf_xnap_NRUEMeasurementReportRRCTransfer_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NotificationControlIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_NotificationControlIndication(tvb, offset, &asn1_ctx, tree, hf_xnap_NotificationControlIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionResourcesNotifyList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionResourcesNotifyList(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionResourcesNotifyList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ActivityNotification_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_ActivityNotification(tvb, offset, &asn1_ctx, tree, hf_xnap_ActivityNotification_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PDUSessionResourcesActivityNotifyList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_PDUSessionResourcesActivityNotifyList(tvb, offset, &asn1_ctx, tree, hf_xnap_PDUSessionResourcesActivityNotifyList_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_XnSetupRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7199,6 +11569,38 @@ static int dissect_NGRANNodeConfigurationUpdateFailure_PDU(tvbuff_t *tvb _U_, pa offset += 7; offset >>= 3; return offset; } +static int dissect_E_UTRA_NR_CellResourceCoordinationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_E_UTRA_NR_CellResourceCoordinationRequest(tvb, offset, &asn1_ctx, tree, hf_xnap_E_UTRA_NR_CellResourceCoordinationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_InitiatingNodeType_ResourceCoordRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_InitiatingNodeType_ResourceCoordRequest(tvb, offset, &asn1_ctx, tree, hf_xnap_InitiatingNodeType_ResourceCoordRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_UTRA_NR_CellResourceCoordinationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_E_UTRA_NR_CellResourceCoordinationResponse(tvb, offset, &asn1_ctx, tree, hf_xnap_E_UTRA_NR_CellResourceCoordinationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RespondingNodeType_ResourceCoordResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_xnap_RespondingNodeType_ResourceCoordResponse(tvb, offset, &asn1_ctx, tree, hf_xnap_RespondingNodeType_ResourceCoordResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_XnRemovalRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -7306,7 +11708,7 @@ static int dissect_XnAP_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto /*--- End of included file: packet-xnap-fn.c ---*/ -#line 141 "./asn1/xnap/packet-xnap-template.c" +#line 166 "./asn1/xnap/packet-xnap-template.c" static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) { @@ -7364,8 +11766,10 @@ dissect_xnap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) if (!xnap_data->xnap_conv) { xnap_data->xnap_conv = wmem_new0(wmem_file_scope(), struct xnap_conv_info); copy_address_wmem(wmem_file_scope(), &xnap_data->xnap_conv->addr_a, &pinfo->src); + xnap_data->xnap_conv->port_a = pinfo->srcport; xnap_data->xnap_conv->ranmode_id_a = (GlobalNG_RANNode_ID_enum)-1; copy_address_wmem(wmem_file_scope(), &xnap_data->xnap_conv->addr_b, &pinfo->dst); + xnap_data->xnap_conv->port_b = pinfo->destport; xnap_data->xnap_conv->ranmode_id_b = (GlobalNG_RANNode_ID_enum)-1; conversation_add_proto_data(conversation, proto_xnap, xnap_data->xnap_conv); } @@ -7405,10 +11809,6 @@ void proto_register_xnap(void) { { "AMF-Pool-Information", "xnap.AMF_Pool_Information", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_xnap_AreaOfInterest_Item_PDU, - { "AreaOfInterest-Item", "xnap.AreaOfInterest_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_AssistanceDataForRANPaging_PDU, { "AssistanceDataForRANPaging", "xnap.AssistanceDataForRANPaging_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7429,24 +11829,16 @@ void proto_register_xnap(void) { { "DataforwardingInfoperPDUSession", "xnap.DataforwardingInfoperPDUSession", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_DataforwardingInfoperPDUSession_Item_PDU, - { "DataforwardingInfoperPDUSession-Item", "xnap.DataforwardingInfoperPDUSession_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_xnap_DataForwardingResponseDRBItem_PDU, - { "DataForwardingResponseDRBItem", "xnap.DataForwardingResponseDRBItem_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_DRBsSubjectToStatusTransfer_List_PDU, { "DRBsSubjectToStatusTransfer-List", "xnap.DRBsSubjectToStatusTransfer_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_DRBsSubjectToStatusTransfer_Item_PDU, - { "DRBsSubjectToStatusTransfer-Item", "xnap.DRBsSubjectToStatusTransfer_Item_element", - FT_NONE, BASE_NONE, NULL, 0, + { &hf_xnap_ExpectedUEBehaviour_PDU, + { "ExpectedUEBehaviour", "xnap.ExpectedUEBehaviour", + FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_xnap_DRBToQoSFlowMapping_Item_PDU, - { "DRBToQoSFlowMapping-Item", "xnap.DRBToQoSFlowMapping_Item_element", + { &hf_xnap_GlobalNG_RANCell_ID_PDU, + { "GlobalNG-RANCell-ID", "xnap.GlobalNG_RANCell_ID_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_GlobalNG_RANNode_ID_PDU, @@ -7469,6 +11861,10 @@ void proto_register_xnap(void) { { "MaskedIMEISV", "xnap.MaskedIMEISV", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_MobilityRestrictionList_PDU, + { "MobilityRestrictionList", "xnap.MobilityRestrictionList_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_NG_RAN_Cell_Identity_PDU, { "NG-RAN-Cell-Identity", "xnap.NG_RAN_Cell_Identity", FT_UINT32, BASE_DEC, VALS(xnap_NG_RAN_Cell_Identity_vals), 0, @@ -7479,67 +11875,55 @@ void proto_register_xnap(void) { NULL, HFILL }}, { &hf_xnap_PagingDRX_PDU, { "PagingDRX", "xnap.PagingDRX", - FT_UINT32, BASE_DEC, NULL, 0, + FT_UINT32, BASE_DEC, VALS(xnap_PagingDRX_vals), 0, + NULL, HFILL }}, + { &hf_xnap_PagingPriority_PDU, + { "PagingPriority", "xnap.PagingPriority", + FT_UINT32, BASE_DEC, VALS(xnap_PagingPriority_vals), 0, + NULL, HFILL }}, + { &hf_xnap_PDCPChangeIndication_PDU, + { "PDCPChangeIndication", "xnap.PDCPChangeIndication", + FT_UINT32, BASE_DEC, VALS(xnap_PDCPChangeIndication_vals), 0, NULL, HFILL }}, { &hf_xnap_PDUSessionResourcesAdmitted_List_PDU, { "PDUSessionResourcesAdmitted-List", "xnap.PDUSessionResourcesAdmitted_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_PDUSessionResourcesAdmitted_Item_PDU, - { "PDUSessionResourcesAdmitted-Item", "xnap.PDUSessionResourcesAdmitted_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_PDUSessionResourcesNotAdmitted_List_PDU, { "PDUSessionResourcesNotAdmitted-List", "xnap.PDUSessionResourcesNotAdmitted_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_PDUSessionResourcesNotAdmitted_Item_PDU, - { "PDUSessionResourcesNotAdmitted-Item", "xnap.PDUSessionResourcesNotAdmitted_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_xnap_PDUSessionResourcesToBeSetup_Item_PDU, - { "PDUSessionResourcesToBeSetup-Item", "xnap.PDUSessionResourcesToBeSetup_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_xnap_QoSFlow_Item_PDU, - { "QoSFlow-Item", "xnap.QoSFlow_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_xnap_QoSFlowAdmitted_Item_PDU, - { "QoSFlowAdmitted-Item", "xnap.QoSFlowAdmitted_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_xnap_QoSFlowNotAdmitted_Item_PDU, - { "QoSFlowNotAdmitted-Item", "xnap.QoSFlowNotAdmitted_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_xnap_QoSFlowsToBeSetup_Item_PDU, - { "QoSFlowsToBeSetup-Item", "xnap.QoSFlowsToBeSetup_Item_element", - FT_NONE, BASE_NONE, NULL, 0, + { &hf_xnap_PLMN_Identity_PDU, + { "PLMN-Identity", "xnap.PLMN_Identity", + FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_RANPagingArea_PDU, { "RANPagingArea", "xnap.RANPagingArea_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_xnap_RANPagingPriority_PDU, - { "RANPagingPriority", "xnap.RANPagingPriority", - FT_UINT32, BASE_DEC, NULL, 0, - NULL, HFILL }}, { &hf_xnap_ResetRequestTypeInfo_PDU, { "ResetRequestTypeInfo", "xnap.ResetRequestTypeInfo", FT_UINT32, BASE_DEC, VALS(xnap_ResetRequestTypeInfo_vals), 0, NULL, HFILL }}, - { &hf_xnap_ResetRequestPartialReleaseItem_PDU, - { "ResetRequestPartialReleaseItem", "xnap.ResetRequestPartialReleaseItem_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_ResetResponseTypeInfo_PDU, { "ResetResponseTypeInfo", "xnap.ResetResponseTypeInfo", FT_UINT32, BASE_DEC, VALS(xnap_ResetResponseTypeInfo_vals), 0, NULL, HFILL }}, - { &hf_xnap_ResetResponsePartialReleaseItem_PDU, - { "ResetResponsePartialReleaseItem", "xnap.ResetResponsePartialReleaseItem_element", - FT_NONE, BASE_NONE, NULL, 0, + { &hf_xnap_RFSP_Index_PDU, + { "RFSP-Index", "xnap.RFSP_Index", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_RRCConfigIndication_PDU, + { "RRCConfigIndication", "xnap.RRCConfigIndication", + FT_UINT32, BASE_DEC, VALS(xnap_RRCConfigIndication_vals), 0, + NULL, HFILL }}, + { &hf_xnap_RRCResumeCause_PDU, + { "RRCResumeCause", "xnap.RRCResumeCause", + FT_UINT32, BASE_DEC, VALS(xnap_RRCResumeCause_vals), 0, + NULL, HFILL }}, + { &hf_xnap_SCGConfigurationQuery_PDU, + { "SCGConfigurationQuery", "xnap.SCGConfigurationQuery", + FT_UINT32, BASE_DEC, VALS(xnap_SCGConfigurationQuery_vals), 0, NULL, HFILL }}, { &hf_xnap_ServedCells_E_UTRA_PDU, { "ServedCells-E-UTRA", "xnap.ServedCells_E_UTRA", @@ -7557,22 +11941,38 @@ void proto_register_xnap(void) { { "ServedCellsToUpdate-NR", "xnap.ServedCellsToUpdate_NR_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_S_NG_RANnode_SecurityKey_PDU, + { "S-NG-RANnode-SecurityKey", "xnap.S_NG_RANnode_SecurityKey", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_SplitSRBsTypes_PDU, + { "SplitSRBsTypes", "xnap.SplitSRBsTypes", + FT_UINT32, BASE_DEC, VALS(xnap_SplitSRBsTypes_vals), 0, + NULL, HFILL }}, { &hf_xnap_TAISupport_List_PDU, { "TAISupport-List", "xnap.TAISupport_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_TAISupport_Item_PDU, - { "TAISupport-Item", "xnap.TAISupport_Item_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_Target_CGI_PDU, { "Target-CGI", "xnap.Target_CGI", FT_UINT32, BASE_DEC, VALS(xnap_Target_CGI_vals), 0, NULL, HFILL }}, + { &hf_xnap_TimeToWait_PDU, + { "TimeToWait", "xnap.TimeToWait", + FT_UINT32, BASE_DEC, VALS(xnap_TimeToWait_vals), 0, + NULL, HFILL }}, { &hf_xnap_TraceActivation_PDU, { "TraceActivation", "xnap.TraceActivation_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_UEAggregateMaximumBitRate_PDU, + { "UEAggregateMaximumBitRate", "xnap.UEAggregateMaximumBitRate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_UEContextKeptIndicator_PDU, + { "UEContextKeptIndicator", "xnap.UEContextKeptIndicator", + FT_UINT32, BASE_DEC, VALS(xnap_UEContextKeptIndicator_vals), 0, + NULL, HFILL }}, { &hf_xnap_UEContextID_PDU, { "UEContextID", "xnap.UEContextID", FT_UINT32, BASE_DEC, VALS(xnap_UEContextID_vals), 0, @@ -7581,14 +11981,26 @@ void proto_register_xnap(void) { { "UEContextInfoRetrUECtxtResp", "xnap.UEContextInfoRetrUECtxtResp_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_UEHistoryInformation_PDU, + { "UEHistoryInformation", "xnap.UEHistoryInformation", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_UEIdentityIndexValue_PDU, { "UEIdentityIndexValue", "xnap.UEIdentityIndexValue", - FT_UINT32, BASE_DEC, NULL, 0, + FT_UINT32, BASE_DEC, VALS(xnap_UEIdentityIndexValue_vals), 0, NULL, HFILL }}, { &hf_xnap_UERANPagingIdentity_PDU, { "UERANPagingIdentity", "xnap.UERANPagingIdentity", FT_UINT32, BASE_DEC, VALS(xnap_UERANPagingIdentity_vals), 0, NULL, HFILL }}, + { &hf_xnap_UESecurityCapabilities_PDU, + { "UESecurityCapabilities", "xnap.UESecurityCapabilities_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_UserPlaneTrafficActivityReport_PDU, + { "UserPlaneTrafficActivityReport", "xnap.UserPlaneTrafficActivityReport", + FT_UINT32, BASE_DEC, VALS(xnap_UserPlaneTrafficActivityReport_vals), 0, + NULL, HFILL }}, { &hf_xnap_XnBenefitValue_PDU, { "XnBenefitValue", "xnap.XnBenefitValue", FT_UINT32, BASE_DEC, NULL, 0, @@ -7601,6 +12013,10 @@ void proto_register_xnap(void) { { "UEContextInfoHORequest", "xnap.UEContextInfoHORequest_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_UEContextRefAtSN_HORequest_PDU, + { "UEContextRefAtSN-HORequest", "xnap.UEContextRefAtSN_HORequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_HandoverRequestAcknowledge_PDU, { "HandoverRequestAcknowledge", "xnap.HandoverRequestAcknowledge_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7641,6 +12057,10 @@ void proto_register_xnap(void) { { "RetrieveUEContextFailure", "xnap.RetrieveUEContextFailure_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_OldtoNewNG_RANnodeResumeContainer_PDU, + { "OldtoNewNG-RANnodeResumeContainer", "xnap.OldtoNewNG_RANnodeResumeContainer", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_DataForwardingAddressIndication_PDU, { "DataForwardingAddressIndication", "xnap.DataForwardingAddressIndication_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7649,10 +12069,30 @@ void proto_register_xnap(void) { { "SNodeAdditionRequest", "xnap.SNodeAdditionRequest_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_MN_to_SN_Container_PDU, + { "MN-to-SN-Container", "xnap.MN_to_SN_Container", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionToBeAddedAddReq_PDU, + { "PDUSessionToBeAddedAddReq", "xnap.PDUSessionToBeAddedAddReq", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeAdditionRequestAcknowledge_PDU, { "SNodeAdditionRequestAcknowledge", "xnap.SNodeAdditionRequestAcknowledge_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_SN_to_MN_Container_PDU, + { "SN-to-MN-Container", "xnap.SN_to_MN_Container", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionAdmittedAddedAddReqAck_PDU, + { "PDUSessionAdmittedAddedAddReqAck", "xnap.PDUSessionAdmittedAddedAddReqAck", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionNotAdmittedAddReqAck_PDU, + { "PDUSessionNotAdmittedAddReqAck", "xnap.PDUSessionNotAdmittedAddReqAck_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeAdditionRequestReject_PDU, { "SNodeAdditionRequestReject", "xnap.SNodeAdditionRequestReject_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7661,14 +12101,30 @@ void proto_register_xnap(void) { { "SNodeReconfigurationComplete", "xnap.SNodeReconfigurationComplete_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_ResponseInfo_ReconfCompl_PDU, + { "ResponseInfo-ReconfCompl", "xnap.ResponseInfo_ReconfCompl_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeModificationRequest_PDU, { "SNodeModificationRequest", "xnap.SNodeModificationRequest_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_UEContextInfo_SNModRequest_PDU, + { "UEContextInfo-SNModRequest", "xnap.UEContextInfo_SNModRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeModificationRequestAcknowledge_PDU, { "SNodeModificationRequestAcknowledge", "xnap.SNodeModificationRequestAcknowledge_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSessionAdmitted_SNModResponse_PDU, + { "PDUSessionAdmitted-SNModResponse", "xnap.PDUSessionAdmitted_SNModResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionNotAdmitted_SNModResponse_PDU, + { "PDUSessionNotAdmitted-SNModResponse", "xnap.PDUSessionNotAdmitted_SNModResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeModificationRequestReject_PDU, { "SNodeModificationRequestReject", "xnap.SNodeModificationRequestReject_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7677,10 +12133,26 @@ void proto_register_xnap(void) { { "SNodeModificationRequired", "xnap.SNodeModificationRequired_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSessionToBeModifiedSNModRequired_PDU, + { "PDUSessionToBeModifiedSNModRequired", "xnap.PDUSessionToBeModifiedSNModRequired", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionToBeReleasedSNModRequired_PDU, + { "PDUSessionToBeReleasedSNModRequired", "xnap.PDUSessionToBeReleasedSNModRequired_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeModificationConfirm_PDU, { "SNodeModificationConfirm", "xnap.SNodeModificationConfirm_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSessionAdmittedModSNModConfirm_PDU, + { "PDUSessionAdmittedModSNModConfirm", "xnap.PDUSessionAdmittedModSNModConfirm", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionReleasedSNModConfirm_PDU, + { "PDUSessionReleasedSNModConfirm", "xnap.PDUSessionReleasedSNModConfirm_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeModificationRefuse_PDU, { "SNodeModificationRefuse", "xnap.SNodeModificationRefuse_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7689,6 +12161,10 @@ void proto_register_xnap(void) { { "SNodeReleaseRequest", "xnap.SNodeReleaseRequest_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSessionToBeReleased_RelReq_PDU, + { "PDUSessionToBeReleased-RelReq", "xnap.PDUSessionToBeReleased_RelReq", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeReleaseRequestAcknowledge_PDU, { "SNodeReleaseRequestAcknowledge", "xnap.SNodeReleaseRequestAcknowledge_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7701,22 +12177,42 @@ void proto_register_xnap(void) { { "SNodeReleaseRequired", "xnap.SNodeReleaseRequired_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSessionToBeReleasedList_RelRqd_PDU, + { "PDUSessionToBeReleasedList-RelRqd", "xnap.PDUSessionToBeReleasedList_RelRqd_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeReleaseConfirm_PDU, { "SNodeReleaseConfirm", "xnap.SNodeReleaseConfirm_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSessionReleasedList_RelConf_PDU, + { "PDUSessionReleasedList-RelConf", "xnap.PDUSessionReleasedList_RelConf_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeCounterCheckRequest_PDU, { "SNodeCounterCheckRequest", "xnap.SNodeCounterCheckRequest_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_BearersSubjectToCounterCheck_List_PDU, + { "BearersSubjectToCounterCheck-List", "xnap.BearersSubjectToCounterCheck_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeChangeRequired_PDU, { "SNodeChangeRequired", "xnap.SNodeChangeRequired_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSession_SNChangeRequired_List_PDU, + { "PDUSession-SNChangeRequired-List", "xnap.PDUSession_SNChangeRequired_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeChangeConfirm_PDU, { "SNodeChangeConfirm", "xnap.SNodeChangeConfirm_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_PDUSession_SNChangeConfirm_List_PDU, + { "PDUSession-SNChangeConfirm-List", "xnap.PDUSession_SNChangeConfirm_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_SNodeChangeRefuse_PDU, { "SNodeChangeRefuse", "xnap.SNodeChangeRefuse_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7725,6 +12221,30 @@ void proto_register_xnap(void) { { "RRCTransfer", "xnap.RRCTransfer_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_SplitSRB_RRCTransfer_PDU, + { "SplitSRB-RRCTransfer", "xnap.SplitSRB_RRCTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_NRUEMeasurementReportRRCTransfer_PDU, + { "NRUEMeasurementReportRRCTransfer", "xnap.NRUEMeasurementReportRRCTransfer_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_NotificationControlIndication_PDU, + { "NotificationControlIndication", "xnap.NotificationControlIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionResourcesNotifyList_PDU, + { "PDUSessionResourcesNotifyList", "xnap.PDUSessionResourcesNotifyList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_ActivityNotification_PDU, + { "ActivityNotification", "xnap.ActivityNotification_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionResourcesActivityNotifyList_PDU, + { "PDUSessionResourcesActivityNotifyList", "xnap.PDUSessionResourcesActivityNotifyList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_XnSetupRequest_PDU, { "XnSetupRequest", "xnap.XnSetupRequest_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7757,6 +12277,22 @@ void proto_register_xnap(void) { { "NGRANNodeConfigurationUpdateFailure", "xnap.NGRANNodeConfigurationUpdateFailure_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_E_UTRA_NR_CellResourceCoordinationRequest_PDU, + { "E-UTRA-NR-CellResourceCoordinationRequest", "xnap.E_UTRA_NR_CellResourceCoordinationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_InitiatingNodeType_ResourceCoordRequest_PDU, + { "InitiatingNodeType-ResourceCoordRequest", "xnap.InitiatingNodeType_ResourceCoordRequest", + FT_UINT32, BASE_DEC, VALS(xnap_InitiatingNodeType_ResourceCoordRequest_vals), 0, + NULL, HFILL }}, + { &hf_xnap_E_UTRA_NR_CellResourceCoordinationResponse_PDU, + { "E-UTRA-NR-CellResourceCoordinationResponse", "xnap.E_UTRA_NR_CellResourceCoordinationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_RespondingNodeType_ResourceCoordResponse_PDU, + { "RespondingNodeType-ResourceCoordResponse", "xnap.RespondingNodeType_ResourceCoordResponse", + FT_UINT32, BASE_DEC, VALS(xnap_RespondingNodeType_ResourceCoordResponse_vals), 0, + NULL, HFILL }}, { &hf_xnap_XnRemovalRequest_PDU, { "XnRemovalRequest", "xnap.XnRemovalRequest_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7874,7 +12410,7 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, NULL, 0, "ProtocolExtensionContainer", HFILL }}, { &hf_xnap_AreaOfInterest_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "AreaOfInterest-Item", "xnap.AreaOfInterest_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_listOfTAIs, @@ -7885,6 +12421,14 @@ void proto_register_xnap(void) { { "listOfCells", "xnap.listOfCells", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_xnap_listOfRANNodes, + { "listOfRANNodes", "xnap.listOfRANNodes", + FT_UINT32, BASE_DEC, NULL, 0, + "ListOfRANNodesinAoI", HFILL }}, + { &hf_xnap_locationReportingReferenceID, + { "locationReportingReferenceID", "xnap.locationReportingReferenceID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_key_NG_RAN_Star, { "key-NG-RAN-Star", "xnap.key_NG_RAN_Star", FT_BYTES, BASE_NONE, NULL, 0, @@ -7930,13 +12474,13 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, VALS(xnap_CauseMisc_vals), 0, "CauseMisc", HFILL }}, { &hf_xnap_choice_extension, - { "choice-extension", "xnap.choice_extension", - FT_UINT32, BASE_DEC, NULL, 0, - "ProtocolExtensionContainer", HFILL }}, + { "choice-extension", "xnap.choice_extension_element", + FT_NONE, BASE_NONE, NULL, 0, + "ProtocolIE_Single_Container", HFILL }}, { &hf_xnap_limitedNR_List, { "limitedNR-List", "xnap.limitedNR_List", FT_UINT32, BASE_DEC, NULL, 0, - "SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI", HFILL }}, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI", HFILL }}, { &hf_xnap_limitedNR_List_item, { "NR-CGI", "xnap.NR_CGI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -7945,6 +12489,10 @@ void proto_register_xnap(void) { { "full-List", "xnap.full_List", FT_UINT32, BASE_DEC, VALS(xnap_T_full_List_vals), 0, NULL, HFILL }}, + { &hf_xnap_eNDC_Support, + { "eNDC-Support", "xnap.eNDC_Support", + FT_UINT32, BASE_DEC, VALS(xnap_T_eNDC_Support_vals), 0, + NULL, HFILL }}, { &hf_xnap_pdcp_SN12, { "pdcp-SN12", "xnap.pdcp_SN12", FT_UINT32, BASE_DEC, NULL, 0, @@ -7998,7 +12546,7 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, VALS(xnap_TypeOfError_vals), 0, NULL, HFILL }}, { &hf_xnap_DataforwardingInfoperPDUSession_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "DataforwardingInfoperPDUSession-Item", "xnap.DataforwardingInfoperPDUSession_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_pduSession_ID, @@ -8017,8 +12565,28 @@ void proto_register_xnap(void) { { "dataForwardingResponseDRBItemList", "xnap.dataForwardingResponseDRBItemList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_xnap_qosFlowsToBeForwarded, + { "qosFlowsToBeForwarded", "xnap.qosFlowsToBeForwarded", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFLowsToBeForwarded_List", HFILL }}, + { &hf_xnap_sourceDRBtoQoSFlowMapping, + { "sourceDRBtoQoSFlowMapping", "xnap.sourceDRBtoQoSFlowMapping", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBToQoSFlowMapping_List", HFILL }}, + { &hf_xnap_QoSFLowsToBeForwarded_List_item, + { "QoSFLowsToBeForwarded-Item", "xnap.QoSFLowsToBeForwarded_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qosFlowIndicator, + { "qosFlowIndicator", "xnap.qosFlowIndicator", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dl_dataforwarding, + { "dl-dataforwarding", "xnap.dl_dataforwarding", + FT_UINT32, BASE_DEC, VALS(xnap_DLForwarding_vals), 0, + "DLForwarding", HFILL }}, { &hf_xnap_DataForwardingResponseDRBItemList_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "DataForwardingResponseDRBItem", "xnap.DataForwardingResponseDRBItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_drb_ID, @@ -8029,8 +12597,36 @@ void proto_register_xnap(void) { { "ulForwardingUPTNL", "xnap.ulForwardingUPTNL", FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_activationSFN, + { "activationSFN", "xnap.activationSFN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_sharedResourceType, + { "sharedResourceType", "xnap.sharedResourceType", + FT_UINT32, BASE_DEC, VALS(xnap_SharedResourceType_vals), 0, + NULL, HFILL }}, + { &hf_xnap_reservedSubframePattern, + { "reservedSubframePattern", "xnap.reservedSubframePattern_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_DRB_List_item, + { "DRB-ID", "xnap.DRB_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_DRB_List_withCause_item, + { "DRB-List-withCause-Item", "xnap.DRB_List_withCause_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_drb_id, + { "drb-id", "xnap.drb_id", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_cause, + { "cause", "xnap.cause", + FT_UINT32, BASE_DEC, VALS(xnap_Cause_vals), 0, + NULL, HFILL }}, { &hf_xnap_DRBsSubjectToStatusTransfer_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "DRBsSubjectToStatusTransfer-Item", "xnap.DRBsSubjectToStatusTransfer_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_drbID, @@ -8074,23 +12670,27 @@ void proto_register_xnap(void) { FT_NONE, BASE_NONE, NULL, 0, "COUNT_PDCP_SN18", HFILL }}, { &hf_xnap_DRBToQoSFlowMapping_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "DRBToQoSFlowMapping-Item", "xnap.DRBToQoSFlowMapping_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_qosFlows_List, { "qosFlows-List", "xnap.qosFlows_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_priorityLevel_01, - { "priorityLevel", "xnap.priorityLevel", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_1_128", HFILL }}, - { &hf_xnap_packetDelayBudget, - { "packetDelayBudget", "xnap.packetDelayBudget", + { &hf_xnap_priorityLevelQoS, + { "priorityLevelQoS", "xnap.priorityLevelQoS", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_xnap_packetDelayBudget, + { "packetDelayBudget", "xnap.packetDelayBudget", + FT_UINT32, BASE_CUSTOM, CF_FUNC(xnap_PacketDelayBudget_fmt), 0, + NULL, HFILL }}, { &hf_xnap_packetErrorRate, - { "packetErrorRate", "xnap.packetErrorRate", + { "packetErrorRate", "xnap.packetErrorRate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_fiveQI, + { "fiveQI", "xnap.fiveQI", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, { &hf_xnap_delayCritical, @@ -8099,11 +12699,11 @@ void proto_register_xnap(void) { NULL, HFILL }}, { &hf_xnap_averagingWindow, { "averagingWindow", "xnap.averagingWindow", - FT_UINT32, BASE_DEC, NULL, 0, + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_milliseconds, 0, NULL, HFILL }}, { &hf_xnap_maximumDataBurstVolume, { "maximumDataBurstVolume", "xnap.maximumDataBurstVolume", - FT_UINT32, BASE_DEC, NULL, 0, + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_byte_bytes, 0, NULL, HFILL }}, { &hf_xnap_e_utra_CI, { "e-utra-CI", "xnap.E-UTRA-Cell-Identity", @@ -8185,6 +12785,10 @@ void proto_register_xnap(void) { { "enb-ID-longmacro", "xnap.enb_ID_longmacro", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_21", HFILL }}, + { &hf_xnap_ng_RAN_Cell_id, + { "ng-RAN-Cell-id", "xnap.ng_RAN_Cell_id", + FT_UINT32, BASE_DEC, VALS(xnap_NG_RAN_Cell_Identity_vals), 0, + "NG_RAN_Cell_Identity", HFILL }}, { &hf_xnap_gNB, { "gNB", "xnap.gNB_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8208,15 +12812,39 @@ void proto_register_xnap(void) { { &hf_xnap_amf_region_if, { "amf-region-if", "xnap.amf_region_if", FT_BYTES, BASE_NONE, NULL, 0, - "OCTET_STRING_SIZE_2", HFILL }}, + "BIT_STRING_SIZE_8", HFILL }}, { &hf_xnap_amf_set_id, { "amf-set-id", "xnap.amf_set_id", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_4", HFILL }}, + "BIT_STRING_SIZE_10", HFILL }}, { &hf_xnap_amf_pointer, { "amf-pointer", "xnap.amf_pointer", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_4", HFILL }}, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_xnap_i_RNTI_full, + { "i-RNTI-full", "xnap.i_RNTI_full", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_40", HFILL }}, + { &hf_xnap_i_RNTI_short, + { "i-RNTI-short", "xnap.i_RNTI_short", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_xnap_nG_RAN_Cell, + { "nG-RAN-Cell", "xnap.nG_RAN_Cell", + FT_BYTES, BASE_NONE, NULL, 0, + "LastVisitedNGRANCellInformation", HFILL }}, + { &hf_xnap_e_UTRAN_Cell, + { "e-UTRAN-Cell", "xnap.e_UTRAN_Cell", + FT_BYTES, BASE_NONE, NULL, 0, + "LastVisitedEUTRANCellInformation", HFILL }}, + { &hf_xnap_uTRAN_Cell, + { "uTRAN-Cell", "xnap.uTRAN_Cell", + FT_BYTES, BASE_NONE, NULL, 0, + "LastVisitedUTRANCellInformation", HFILL }}, + { &hf_xnap_gERAN_Cell, + { "gERAN-Cell", "xnap.gERAN_Cell", + FT_BYTES, BASE_NONE, NULL, 0, + "LastVisitedGERANCellInformation", HFILL }}, { &hf_xnap_ListOfCells_item, { "CellsinAoI-Item", "xnap.CellsinAoI_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8229,6 +12857,14 @@ void proto_register_xnap(void) { { "ng-ran-cell-id", "xnap.ng_ran_cell_id", FT_UINT32, BASE_DEC, VALS(xnap_NG_RAN_Cell_Identity_vals), 0, "NG_RAN_Cell_Identity", HFILL }}, + { &hf_xnap_ListOfRANNodesinAoI_item, + { "GlobalNG-RANNodesinAoI-Item", "xnap.GlobalNG_RANNodesinAoI_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_global_NG_RAN_Node_ID, + { "global-NG-RAN-Node-ID", "xnap.global_NG_RAN_Node_ID", + FT_UINT32, BASE_DEC, VALS(xnap_GlobalNG_RANNode_ID_vals), 0, + "GlobalNG_RANNode_ID", HFILL }}, { &hf_xnap_ListOfTAIsinAoI_item, { "TAIsinAoI-Item", "xnap.TAIsinAoI_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8249,6 +12885,10 @@ void proto_register_xnap(void) { { "areaOfInterest", "xnap.areaOfInterest", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_xnap_maxIPrate, + { "maxIPrate", "xnap.maxIPrate", + FT_UINT32, BASE_DEC, VALS(xnap_MaxIPrate_vals), 0, + NULL, HFILL }}, { &hf_xnap_oneframe, { "oneframe", "xnap.oneframe", FT_BYTES, BASE_NONE, NULL, 0, @@ -8361,14 +13001,30 @@ void proto_register_xnap(void) { { "tac", "xnap.tac", FT_UINT24, BASE_DEC_HEX, NULL, 0, NULL, HFILL }}, + { &hf_xnap_ranac, + { "ranac", "xnap.ranac", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_xnap_NeighbourInformation_NR_item, { "NeighbourInformation-NR-Item", "xnap.NeighbourInformation_NR_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_nr_PCI, + { "nr-PCI", "xnap.nr_PCI", + FT_UINT32, BASE_DEC, NULL, 0, + "NRPCI", HFILL }}, + { &hf_xnap_nr_cgi, + { "nr-cgi", "xnap.nr_cgi_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_nr_mode_info, { "nr-mode-info", "xnap.nr_mode_info", FT_UINT32, BASE_DEC, VALS(xnap_NeighbourInformation_NR_ModeInfo_vals), 0, "NeighbourInformation_NR_ModeInfo", HFILL }}, + { &hf_xnap_connectivitySupport, + { "connectivitySupport", "xnap.connectivitySupport_element", + FT_NONE, BASE_NONE, NULL, 0, + "Connectivity_Support", HFILL }}, { &hf_xnap_fdd_info, { "fdd-info", "xnap.fdd_info_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8409,10 +13065,6 @@ void proto_register_xnap(void) { { "e-utra", "xnap.e_utra", FT_UINT32, BASE_DEC, NULL, 0, "E_UTRAPCI", HFILL }}, - { &hf_xnap_fiveQI, - { "fiveQI", "xnap.fiveQI", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_255", HFILL }}, { &hf_xnap_NG_RAN_Cell_Identity_ListinRANPagingArea_item, { "NG-RAN-Cell-Identity", "xnap.NG_RAN_Cell_Identity", FT_UINT32, BASE_DEC, VALS(xnap_NG_RAN_Cell_Identity_vals), 0, @@ -8462,29 +13114,85 @@ void proto_register_xnap(void) { FT_NONE, BASE_NONE, NULL, 0, "NRFrequencyInfo", HFILL }}, { &hf_xnap_ulNRTransmissonBandwidth, - { "ulNRTransmissonBandwidth", "xnap.ulNRTransmissonBandwidth", - FT_UINT32, BASE_DEC, NULL, 0, + { "ulNRTransmissonBandwidth", "xnap.ulNRTransmissonBandwidth_element", + FT_NONE, BASE_NONE, NULL, 0, "NRTransmissionBandwidth", HFILL }}, { &hf_xnap_dlNRTransmissonBandwidth, - { "dlNRTransmissonBandwidth", "xnap.dlNRTransmissonBandwidth", - FT_UINT32, BASE_DEC, NULL, 0, + { "dlNRTransmissonBandwidth", "xnap.dlNRTransmissonBandwidth_element", + FT_NONE, BASE_NONE, NULL, 0, "NRTransmissionBandwidth", HFILL }}, { &hf_xnap_nrFrequencyInfo, { "nrFrequencyInfo", "xnap.nrFrequencyInfo_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_nrTransmissonBandwidth, - { "nrTransmissonBandwidth", "xnap.nrTransmissonBandwidth", - FT_UINT32, BASE_DEC, NULL, 0, + { "nrTransmissonBandwidth", "xnap.nrTransmissonBandwidth_element", + FT_NONE, BASE_NONE, NULL, 0, "NRTransmissionBandwidth", HFILL }}, - { &hf_xnap_PDUSessionResourcesAdmitted_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { &hf_xnap_nRSCS, + { "nRSCS", "xnap.nRSCS", + FT_UINT32, BASE_DEC, VALS(xnap_NRSCS_vals), 0, + NULL, HFILL }}, + { &hf_xnap_nRNRB, + { "nRNRB", "xnap.nRNRB", + FT_UINT32, BASE_DEC, VALS(xnap_NRNRB_vals), 0, + NULL, HFILL }}, + { &hf_xnap_pER_Scalar, + { "pER-Scalar", "xnap.pER_Scalar", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_pER_Exponent, + { "pER-Exponent", "xnap.pER_Exponent", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_from_S_NG_RAN_node, + { "from-S-NG-RAN-node", "xnap.from_S_NG_RAN_node", + FT_UINT32, BASE_DEC, VALS(xnap_T_from_S_NG_RAN_node_vals), 0, + NULL, HFILL }}, + { &hf_xnap_from_M_NG_RAN_node, + { "from-M-NG-RAN-node", "xnap.from_M_NG_RAN_node", + FT_UINT32, BASE_DEC, VALS(xnap_T_from_M_NG_RAN_node_vals), 0, + NULL, HFILL }}, + { &hf_xnap_downlink_session_AMBR, + { "downlink-session-AMBR", "xnap.downlink_session_AMBR", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_xnap_uplink_session_AMBR, + { "uplink-session-AMBR", "xnap.uplink_session_AMBR", + FT_UINT64, BASE_DEC|BASE_UNIT_STRING, &units_bit_sec, 0, + "BitRate", HFILL }}, + { &hf_xnap_PDUSession_List_item, + { "PDUSession-ID", "xnap.PDUSession_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSession_List_withCause_item, + { "PDUSession-List-withCause-Item", "xnap.PDUSession_List_withCause_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_pduSessionId, { "pduSessionId", "xnap.pduSessionId", FT_UINT32, BASE_DEC, NULL, 0, "PDUSession_ID", HFILL }}, + { &hf_xnap_PDUSession_List_withDataForwardingFromTarget_item, + { "PDUSession-List-withDataForwardingFromTarget-Item", "xnap.PDUSession_List_withDataForwardingFromTarget_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dataforwardinginfoTarget, + { "dataforwardinginfoTarget", "xnap.dataforwardinginfoTarget_element", + FT_NONE, BASE_NONE, NULL, 0, + "DataForwardingInfoFromTargetNGRANnode", HFILL }}, + { &hf_xnap_PDUSession_List_withDataForwardingRequest_item, + { "PDUSession-List-withDataForwardingRequest-Item", "xnap.PDUSession_List_withDataForwardingRequest_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dataforwardingRequest_List, + { "dataforwardingRequest-List", "xnap.dataforwardingRequest_List_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionResourcesAdmitted_List_item, + { "PDUSessionResourcesAdmitted-Item", "xnap.PDUSessionResourcesAdmitted_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_pduSessionResourceAdmittedInfo, { "pduSessionResourceAdmittedInfo", "xnap.pduSessionResourceAdmittedInfo_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8502,15 +13210,11 @@ void proto_register_xnap(void) { FT_NONE, BASE_NONE, NULL, 0, "DataForwardingInfoFromTargetNGRANnode", HFILL }}, { &hf_xnap_PDUSessionResourcesNotAdmitted_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "PDUSessionResourcesNotAdmitted-Item", "xnap.PDUSessionResourcesNotAdmitted_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_xnap_cause, - { "cause", "xnap.cause", - FT_UINT32, BASE_DEC, VALS(xnap_Cause_vals), 0, - NULL, HFILL }}, { &hf_xnap_PDUSessionResourcesToBeSetup_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "PDUSessionResourcesToBeSetup-Item", "xnap.PDUSessionResourcesToBeSetup_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_s_NSSAI, @@ -8518,9 +13222,9 @@ void proto_register_xnap(void) { FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_pduSessionAMBR, - { "pduSessionAMBR", "xnap.pduSessionAMBR", - FT_BYTES, BASE_NONE, NULL, 0, - "OCTET_STRING", HFILL }}, + { "pduSessionAMBR", "xnap.pduSessionAMBR_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionAggregateMaximumBitRate", HFILL }}, { &hf_xnap_uL_NG_U_TNLatUPF, { "uL-NG-U-TNLatUPF", "xnap.uL_NG_U_TNLatUPF", FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, @@ -8537,10 +13241,302 @@ void proto_register_xnap(void) { { "qosFlowsToBeSetup-List", "xnap.qosFlowsToBeSetup_List", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_xnap_sourceDRBtoQoSFlowMapping, - { "sourceDRBtoQoSFlowMapping", "xnap.sourceDRBtoQoSFlowMapping", + { &hf_xnap_qosFlowsToBeSetup_List_01, + { "qosFlowsToBeSetup-List", "xnap.qosFlowsToBeSetup_List", FT_UINT32, BASE_DEC, NULL, 0, - "DRBToQoSFlowMapping_List", HFILL }}, + "QoSFlowsToBeSetup_List_Setup_SNterminated", HFILL }}, + { &hf_xnap_dlForwarding, + { "dlForwarding", "xnap.dlForwarding", + FT_UINT32, BASE_DEC, VALS(xnap_DLForwarding_vals), 0, + NULL, HFILL }}, + { &hf_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_item, + { "QoSFlowsToBeSetup-List-Setup-SNterminated-Item", "xnap.QoSFlowsToBeSetup_List_Setup_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qfi, + { "qfi", "xnap.qfi", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlowIndicator", HFILL }}, + { &hf_xnap_qosFlowLevelQoSParameters, + { "qosFlowLevelQoSParameters", "xnap.qosFlowLevelQoSParameters_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_offeredGBRQoSFlowInfo, + { "offeredGBRQoSFlowInfo", "xnap.offeredGBRQoSFlowInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + "GBRQoSFlowInfo", HFILL }}, + { &hf_xnap_dL_NG_U_TNLatNG_RAN, + { "dL-NG-U-TNLatNG-RAN", "xnap.dL_NG_U_TNLatNG_RAN", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_dRBsToBeSetup, + { "dRBsToBeSetup", "xnap.dRBsToBeSetup", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeSetupList_SetupResponse_SNterminated", HFILL }}, + { &hf_xnap_qosFlowsNotAdmittedList, + { "qosFlowsNotAdmittedList", "xnap.qosFlowsNotAdmittedList", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlows_List_withCause", HFILL }}, + { &hf_xnap_dLForwardingUPTNLInfo, + { "dLForwardingUPTNLInfo", "xnap.dLForwardingUPTNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_uLForwardingUPTNLInfo, + { "uLForwardingUPTNLInfo", "xnap.uLForwardingUPTNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_securityResult, + { "securityResult", "xnap.securityResult_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_item, + { "DRBsToBeSetupList-SetupResponse-SNterminated-Item", "xnap.DRBsToBeSetupList_SetupResponse_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_sN_UL_PDCP_UP_TNLInfo, + { "sN-UL-PDCP-UP-TNLInfo", "xnap.sN_UL_PDCP_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_dRB_QoS, + { "dRB-QoS", "xnap.dRB_QoS_element", + FT_NONE, BASE_NONE, NULL, 0, + "QoSFlowLevelQoSParameters", HFILL }}, + { &hf_xnap_pDCP_SNLength, + { "pDCP-SNLength", "xnap.pDCP_SNLength", + FT_UINT32, BASE_DEC, VALS(xnap_PDCPSNLength_vals), 0, + "PDCPSNLength", HFILL }}, + { &hf_xnap_rLC_Mode, + { "rLC-Mode", "xnap.rLC_Mode", + FT_UINT32, BASE_DEC, VALS(xnap_RLCMode_vals), 0, + "RLCMode", HFILL }}, + { &hf_xnap_secondary_SN_UL_PDCP_UP_TNLInfo, + { "secondary-SN-UL-PDCP-UP-TNLInfo", "xnap.secondary_SN_UL_PDCP_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_duplicationActivation, + { "duplicationActivation", "xnap.duplicationActivation", + FT_UINT32, BASE_DEC, VALS(xnap_DuplicationActivation_vals), 0, + NULL, HFILL }}, + { &hf_xnap_qoSFlowsMappedtoDRB_SetupResponse_SNterminated, + { "qoSFlowsMappedtoDRB-SetupResponse-SNterminated", "xnap.qoSFlowsMappedtoDRB_SetupResponse_SNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_item, + { "QoSFlowsMappedtoDRB-SetupResponse-SNterminated-Item", "xnap.QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qoSFlowIndicator, + { "qoSFlowIndicator", "xnap.qoSFlowIndicator", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_mCGRequestedGBRQoSFlowInfo, + { "mCGRequestedGBRQoSFlowInfo", "xnap.mCGRequestedGBRQoSFlowInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + "GBRQoSFlowInfo", HFILL }}, + { &hf_xnap_dRBsToBeSetup_01, + { "dRBsToBeSetup", "xnap.dRBsToBeSetup", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeSetupList_Setup_MNterminated", HFILL }}, + { &hf_xnap_DRBsToBeSetupList_Setup_MNterminated_item, + { "DRBsToBeSetupList-Setup-MNterminated-Item", "xnap.DRBsToBeSetupList_Setup_MNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_mN_UL_PDCP_UP_TNLInfo, + { "mN-UL-PDCP-UP-TNLInfo", "xnap.mN_UL_PDCP_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_secondary_MN_UL_PDCP_UP_TNLInfo, + { "secondary-MN-UL-PDCP-UP-TNLInfo", "xnap.secondary_MN_UL_PDCP_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_qoSFlowsMappedtoDRB_Setup_MNterminated, + { "qoSFlowsMappedtoDRB-Setup-MNterminated", "xnap.qoSFlowsMappedtoDRB_Setup_MNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_item, + { "QoSFlowsMappedtoDRB-Setup-MNterminated-Item", "xnap.QoSFlowsMappedtoDRB_Setup_MNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qoSFlowLevelQoSParameters, + { "qoSFlowLevelQoSParameters", "xnap.qoSFlowLevelQoSParameters_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dRBsAdmittedList, + { "dRBsAdmittedList", "xnap.dRBsAdmittedList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsAdmittedList_SetupResponse_MNterminated", HFILL }}, + { &hf_xnap_DRBsAdmittedList_SetupResponse_MNterminated_item, + { "DRBsAdmittedList-SetupResponse-MNterminated-Item", "xnap.DRBsAdmittedList_SetupResponse_MNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_sN_DL_SCG_UP_TNLInfo, + { "sN-DL-SCG-UP-TNLInfo", "xnap.sN_DL_SCG_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_secondary_SN_DL_SCG_UP_TNLInfo, + { "secondary-SN-DL-SCG-UP-TNLInfo", "xnap.secondary_SN_DL_SCG_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_lCID, + { "lCID", "xnap.lCID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qosFlowsToBeModified_List, + { "qosFlowsToBeModified-List", "xnap.qosFlowsToBeModified_List", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlowsToBeSetup_List_Modified_SNterminated", HFILL }}, + { &hf_xnap_qoSFlowsToBeReleased_List, + { "qoSFlowsToBeReleased-List", "xnap.qoSFlowsToBeReleased_List", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlows_List_withCause", HFILL }}, + { &hf_xnap_drbsToBeModifiedList, + { "drbsToBeModifiedList", "xnap.drbsToBeModifiedList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeModified_List_Modified_SNterminated", HFILL }}, + { &hf_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_item, + { "QoSFlowsToBeSetup-List-Modified-SNterminated-Item", "xnap.QoSFlowsToBeSetup_List_Modified_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_DRBsToBeModified_List_Modified_SNterminated_item, + { "DRBsToBeModified-List-Modified-SNterminated-Item", "xnap.DRBsToBeModified_List_Modified_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_mN_DL_PDCP_UP_TNLInfo, + { "mN-DL-PDCP-UP-TNLInfo", "xnap.mN_DL_PDCP_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_secondary_MN_DL_PDCP_UP_TNLInfo, + { "secondary-MN-DL-PDCP-UP-TNLInfo", "xnap.secondary_MN_DL_PDCP_UP_TNLInfo", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_dRBsToBeModified, + { "dRBsToBeModified", "xnap.dRBsToBeModified", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeModifiedList_ModificationResponse_SNterminated", HFILL }}, + { &hf_xnap_dRBsToBeReleased, + { "dRBsToBeReleased", "xnap.dRBsToBeReleased", + FT_UINT32, BASE_DEC, NULL, 0, + "DRB_List_withCause", HFILL }}, + { &hf_xnap_qosFlowsReleased, + { "qosFlowsReleased", "xnap.qosFlowsReleased", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlows_List_withCause", HFILL }}, + { &hf_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_item, + { "DRBsToBeModifiedList-ModificationResponse-SNterminated-Item", "xnap.DRBsToBeModifiedList_ModificationResponse_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dRBsToBeModified_01, + { "dRBsToBeModified", "xnap.dRBsToBeModified", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeModifiedList_Modification_MNterminated", HFILL }}, + { &hf_xnap_DRBsToBeModifiedList_Modification_MNterminated_item, + { "DRBsToBeModifiedList-Modification-MNterminated-Item", "xnap.DRBsToBeModifiedList_Modification_MNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dRBsAdmittedList_01, + { "dRBsAdmittedList", "xnap.dRBsAdmittedList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsAdmittedList_ModificationResponse_MNterminated", HFILL }}, + { &hf_xnap_dRBsReleasedList, + { "dRBsReleasedList", "xnap.dRBsReleasedList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRB_List", HFILL }}, + { &hf_xnap_dRBsNotAdmittedSetupModifyList, + { "dRBsNotAdmittedSetupModifyList", "xnap.dRBsNotAdmittedSetupModifyList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRB_List_withCause", HFILL }}, + { &hf_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_item, + { "DRBsAdmittedList-ModificationResponse-MNterminated-Item", "xnap.DRBsAdmittedList_ModificationResponse_MNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_drbsToBeSetupList, + { "drbsToBeSetupList", "xnap.drbsToBeSetupList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeSetup_List_ModRqd_SNterminated", HFILL }}, + { &hf_xnap_drbsToBeModifiedList_01, + { "drbsToBeModifiedList", "xnap.drbsToBeModifiedList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsToBeModified_List_ModRqd_SNterminated", HFILL }}, + { &hf_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_item, + { "DRBsToBeSetup-List-ModRqd-SNterminated-Item", "xnap.DRBsToBeSetup_List_ModRqd_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_uL_Xn_U_TNLinfoatSN, + { "uL-Xn-U-TNLinfoatSN", "xnap.uL_Xn_U_TNLinfoatSN", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_qoSFlowsMappedtoDRB_ModRqd_SNterminated, + { "qoSFlowsMappedtoDRB-ModRqd-SNterminated", "xnap.qoSFlowsMappedtoDRB_ModRqd_SNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated", HFILL }}, + { &hf_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_item, + { "QoSFlowsSetupMappedtoDRB-ModRqd-SNterminated-Item", "xnap.QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_DRBsToBeModified_List_ModRqd_SNterminated_item, + { "DRBsToBeModified-List-ModRqd-SNterminated-Item", "xnap.DRBsToBeModified_List_ModRqd_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qoSFlowsMappedtoDRB_ModRqd_SNterminated_01, + { "qoSFlowsMappedtoDRB-ModRqd-SNterminated", "xnap.qoSFlowsMappedtoDRB_ModRqd_SNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated", HFILL }}, + { &hf_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_item, + { "QoSFlowsModifiedMappedtoDRB-ModRqd-SNterminated-Item", "xnap.QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_dRBsAdmittedList_02, + { "dRBsAdmittedList", "xnap.dRBsAdmittedList", + FT_UINT32, BASE_DEC, NULL, 0, + "DRBsAdmittedList_ModConfirm_SNterminated", HFILL }}, + { &hf_xnap_DRBsAdmittedList_ModConfirm_SNterminated_item, + { "DRBsAdmittedList-ModConfirm-SNterminated-Item", "xnap.DRBsAdmittedList_ModConfirm_SNterminated_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_sN_Xn_U_TNLInfoatMN, + { "sN-Xn-U-TNLInfoatMN", "xnap.sN_Xn_U_TNLInfoatMN", + FT_UINT32, BASE_DEC, VALS(xnap_UPTransportLayerInformation_vals), 0, + "UPTransportLayerInformation", HFILL }}, + { &hf_xnap_protectedResourceList, + { "protectedResourceList", "xnap.protectedResourceList", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtectedE_UTRAResourceList", HFILL }}, + { &hf_xnap_mbsfnControlRegionLength, + { "mbsfnControlRegionLength", "xnap.mbsfnControlRegionLength", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_pDCCHRegionLength, + { "pDCCHRegionLength", "xnap.pDCCHRegionLength", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3", HFILL }}, + { &hf_xnap_ProtectedE_UTRAResourceList_item, + { "ProtectedE-UTRAResource-Item", "xnap.ProtectedE_UTRAResource_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_resourceType, + { "resourceType", "xnap.resourceType", + FT_UINT32, BASE_DEC, VALS(xnap_T_resourceType_vals), 0, + NULL, HFILL }}, + { &hf_xnap_intra_PRBProtectedResourceFootprint, + { "intra-PRBProtectedResourceFootprint", "xnap.intra_PRBProtectedResourceFootprint", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_84_", HFILL }}, + { &hf_xnap_protectedFootprintFrequencyPattern, + { "protectedFootprintFrequencyPattern", "xnap.protectedFootprintFrequencyPattern", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6_110_", HFILL }}, + { &hf_xnap_protectedFootprintTimePattern, + { "protectedFootprintTimePattern", "xnap.protectedFootprintTimePattern_element", + FT_NONE, BASE_NONE, NULL, 0, + "ProtectedE_UTRAFootprintTimePattern", HFILL }}, + { &hf_xnap_protectedFootprintTimeperiodicity, + { "protectedFootprintTimeperiodicity", "xnap.protectedFootprintTimeperiodicity", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_320_", HFILL }}, + { &hf_xnap_protectedFootrpintStartTime, + { "protectedFootrpintStartTime", "xnap.protectedFootrpintStartTime", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_20_", HFILL }}, { &hf_xnap_non_dynamic, { "non-dynamic", "xnap.non_dynamic_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8569,20 +13565,24 @@ void proto_register_xnap(void) { { "additionalQoSflowInfo", "xnap.additionalQoSflowInfo", FT_UINT32, BASE_DEC, VALS(xnap_T_additionalQoSflowInfo_vals), 0, NULL, HFILL }}, - { &hf_xnap_pPI, - { "pPI", "xnap.pPI", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_1_8_", HFILL }}, - { &hf_xnap_QoSFlows_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { &hf_xnap_QoSFlowNotificationControlIndicationInfo_item, + { "QoSFlowNotify-Item", "xnap.QoSFlowNotify_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_notificationInformation, + { "notificationInformation", "xnap.notificationInformation", + FT_UINT32, BASE_DEC, VALS(xnap_T_notificationInformation_vals), 0, + NULL, HFILL }}, + { &hf_xnap_QoSFlows_List_item, + { "QoSFlow-Item", "xnap.QoSFlow_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_QoSFlows_List_withCause_item, + { "QoSFlowwithCause-Item", "xnap.QoSFlowwithCause_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_xnap_qfi, - { "qfi", "xnap.qfi", - FT_UINT32, BASE_DEC, NULL, 0, - "QoSFlowIndicator", HFILL }}, { &hf_xnap_QoSFlowsAdmitted_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "QoSFlowAdmitted-Item", "xnap.QoSFlowAdmitted_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_dataForwardingAccepted, @@ -8590,28 +13590,24 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, VALS(xnap_DataForwardingAccepted_vals), 0, NULL, HFILL }}, { &hf_xnap_QoSFlowsNotAdmitted_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "QoSFlowNotAdmitted-Item", "xnap.QoSFlowNotAdmitted_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_QoSFlowsToBeSetup_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "QoSFlowsToBeSetup-Item", "xnap.QoSFlowsToBeSetup_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_dlDataForwarding, { "dlDataForwarding", "xnap.dlDataForwarding", FT_UINT32, BASE_DEC, VALS(xnap_DLForwarding_vals), 0, "DLForwarding", HFILL }}, - { &hf_xnap_qosFlowLevelQoSParameters, - { "qosFlowLevelQoSParameters", "xnap.qosFlowLevelQoSParameters_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_e_RAB_ID, { "e-RAB-ID", "xnap.e_RAB_ID", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, { &hf_xnap_rANAC, { "rANAC", "xnap.rANAC", - FT_BYTES, BASE_NONE, NULL, 0, + FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, { &hf_xnap_RANAreaID_List_item, { "RANAreaID", "xnap.RANAreaID_element", @@ -8641,6 +13637,14 @@ void proto_register_xnap(void) { { "nextPagingAreaScope", "xnap.nextPagingAreaScope", FT_UINT32, BASE_DEC, VALS(xnap_T_nextPagingAreaScope_vals), 0, NULL, HFILL }}, + { &hf_xnap_subframeType, + { "subframeType", "xnap.subframeType", + FT_UINT32, BASE_DEC, VALS(xnap_T_subframeType_vals), 0, + NULL, HFILL }}, + { &hf_xnap_reservedSubframePattern_01, + { "reservedSubframePattern", "xnap.reservedSubframePattern", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_10_160", HFILL }}, { &hf_xnap_fullReset, { "fullReset", "xnap.fullReset_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8654,7 +13658,7 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, NULL, 0, "ResetRequestPartialReleaseList", HFILL }}, { &hf_xnap_ResetRequestPartialReleaseList_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "ResetRequestPartialReleaseItem", "xnap.ResetRequestPartialReleaseItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_ng_ran_node1UEXnAPID, @@ -8678,7 +13682,7 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, NULL, 0, "ResetResponsePartialReleaseList", HFILL }}, { &hf_xnap_ResetResponsePartialReleaseList_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "ResetResponsePartialReleaseItem", "xnap.ResetResponsePartialReleaseItem_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_integrityProtectionIndication, @@ -8689,6 +13693,18 @@ void proto_register_xnap(void) { { "confidentialityProtectionIndication", "xnap.confidentialityProtectionIndication", FT_UINT32, BASE_DEC, VALS(xnap_T_confidentialityProtectionIndication_vals), 0, NULL, HFILL }}, + { &hf_xnap_maximumIPdatarate, + { "maximumIPdatarate", "xnap.maximumIPdatarate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_integrityProtectionResult, + { "integrityProtectionResult", "xnap.integrityProtectionResult", + FT_UINT32, BASE_DEC, VALS(xnap_T_integrityProtectionResult_vals), 0, + NULL, HFILL }}, + { &hf_xnap_confidentialityProtectionResult, + { "confidentialityProtectionResult", "xnap.confidentialityProtectionResult", + FT_UINT32, BASE_DEC, VALS(xnap_T_confidentialityProtectionResult_vals), 0, + NULL, HFILL }}, { &hf_xnap_e_utra_pci, { "e-utra-pci", "xnap.e_utra_pci", FT_UINT32, BASE_DEC, NULL, 0, @@ -8725,6 +13741,10 @@ void proto_register_xnap(void) { { "bandwidthReducedSI", "xnap.bandwidthReducedSI", FT_UINT32, BASE_DEC, VALS(xnap_T_bandwidthReducedSI_vals), 0, NULL, HFILL }}, + { &hf_xnap_protectedE_UTRAResourceIndication, + { "protectedE-UTRAResourceIndication", "xnap.protectedE_UTRAResourceIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_e_utra_mode_info, { "e-utra-mode-info", "xnap.e_utra_mode_info", FT_UINT32, BASE_DEC, VALS(xnap_ServedCellInformation_E_UTRA_perBPLMN_ModeInfo_vals), 0, @@ -8792,7 +13812,7 @@ void proto_register_xnap(void) { { &hf_xnap_served_Cells_ToDelete_E_UTRA, { "served-Cells-ToDelete-E-UTRA", "xnap.served_Cells_ToDelete_E_UTRA", FT_UINT32, BASE_DEC, NULL, 0, - "SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI", HFILL }}, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI", HFILL }}, { &hf_xnap_served_Cells_ToDelete_E_UTRA_item, { "E-UTRA-CGI", "xnap.E_UTRA_CGI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8813,10 +13833,6 @@ void proto_register_xnap(void) { { "cellID", "xnap.cellID_element", FT_NONE, BASE_NONE, NULL, 0, "NR_CGI", HFILL }}, - { &hf_xnap_ranac, - { "ranac", "xnap.ranac", - FT_BYTES, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_xnap_broadcastPLMN, { "broadcastPLMN", "xnap.broadcastPLMN", FT_UINT32, BASE_DEC, NULL, 0, @@ -8829,6 +13845,10 @@ void proto_register_xnap(void) { { "measurementTimingConfiguration", "xnap.measurementTimingConfiguration", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_nrscs_ssb, + { "nrscs-ssb", "xnap.nrscs_ssb", + FT_UINT32, BASE_DEC, VALS(xnap_NRSCS_SSB_vals), 0, + NULL, HFILL }}, { &hf_xnap_ServedCells_NR_item, { "ServedCells-NR-Item", "xnap.ServedCells_NR_Item_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8845,6 +13865,10 @@ void proto_register_xnap(void) { { "old-NR-CGI", "xnap.old_NR_CGI_element", FT_NONE, BASE_NONE, NULL, 0, "NR_CGI", HFILL }}, + { &hf_xnap_deactivation_indication, + { "deactivation-indication", "xnap.deactivation_indication", + FT_UINT32, BASE_DEC, VALS(xnap_T_deactivation_indication_vals), 0, + NULL, HFILL }}, { &hf_xnap_served_Cells_ToAdd_NR, { "served-Cells-ToAdd-NR", "xnap.served_Cells_ToAdd_NR", FT_UINT32, BASE_DEC, NULL, 0, @@ -8856,11 +13880,47 @@ void proto_register_xnap(void) { { &hf_xnap_served_Cells_ToDelete_NR, { "served-Cells-ToDelete-NR", "xnap.served_Cells_ToDelete_NR", FT_UINT32, BASE_DEC, NULL, 0, - "SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI", HFILL }}, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI", HFILL }}, { &hf_xnap_served_Cells_ToDelete_NR_item, { "NR-CGI", "xnap.NR_CGI_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_xnap_ul_onlySharing, + { "ul-onlySharing", "xnap.ul_onlySharing_element", + FT_NONE, BASE_NONE, NULL, 0, + "SharedResourceType_UL_OnlySharing", HFILL }}, + { &hf_xnap_ul_and_dl_Sharing, + { "ul-and-dl-Sharing", "xnap.ul_and_dl_Sharing", + FT_UINT32, BASE_DEC, VALS(xnap_SharedResourceType_ULDL_Sharing_vals), 0, + "SharedResourceType_ULDL_Sharing", HFILL }}, + { &hf_xnap_ul_resourceBitmap, + { "ul-resourceBitmap", "xnap.ul_resourceBitmap", + FT_BYTES, BASE_NONE, NULL, 0, + "DataTrafficResources", HFILL }}, + { &hf_xnap_ul_resources, + { "ul-resources", "xnap.ul_resources", + FT_UINT32, BASE_DEC, VALS(xnap_SharedResourceType_ULDL_Sharing_UL_Resources_vals), 0, + "SharedResourceType_ULDL_Sharing_UL_Resources", HFILL }}, + { &hf_xnap_dl_resources, + { "dl-resources", "xnap.dl_resources", + FT_UINT32, BASE_DEC, VALS(xnap_SharedResourceType_ULDL_Sharing_DL_Resources_vals), 0, + "SharedResourceType_ULDL_Sharing_DL_Resources", HFILL }}, + { &hf_xnap_unchanged, + { "unchanged", "xnap.unchanged_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_changed, + { "changed", "xnap.changed_element", + FT_NONE, BASE_NONE, NULL, 0, + "SharedResourceType_ULDL_Sharing_UL_ResourcesChanged", HFILL }}, + { &hf_xnap_changed_01, + { "changed", "xnap.changed_element", + FT_NONE, BASE_NONE, NULL, 0, + "SharedResourceType_ULDL_Sharing_DL_ResourcesChanged", HFILL }}, + { &hf_xnap_dl_resourceBitmap, + { "dl-resourceBitmap", "xnap.dl_resourceBitmap", + FT_BYTES, BASE_NONE, NULL, 0, + "DataTrafficResources", HFILL }}, { &hf_xnap_SliceSupport_List_item, { "S-NSSAI", "xnap.S_NSSAI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -8890,8 +13950,8 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, NULL, 0, "NRARFCN", HFILL }}, { &hf_xnap_sulTransmissionBandwidth, - { "sulTransmissionBandwidth", "xnap.sulTransmissionBandwidth", - FT_UINT32, BASE_DEC, NULL, 0, + { "sulTransmissionBandwidth", "xnap.sulTransmissionBandwidth_element", + FT_NONE, BASE_NONE, NULL, 0, "NRTransmissionBandwidth", HFILL }}, { &hf_xnap_SupportedSULBandList_item, { "SupportedSULBandItem", "xnap.SupportedSULBandItem_element", @@ -8902,7 +13962,7 @@ void proto_register_xnap(void) { FT_UINT32, BASE_DEC, NULL, 0, "SUL_FrequencyBand", HFILL }}, { &hf_xnap_TAISupport_List_item, - { "ProtocolIE-Single-Container", "xnap.ProtocolIE_Single_Container_element", + { "TAISupport-Item", "xnap.TAISupport_Item_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_xnap_broadcastPLMNs_01, @@ -8959,7 +14019,7 @@ void proto_register_xnap(void) { "UEContextIDforRRCReestablishment", HFILL }}, { &hf_xnap_i_rnti, { "i-rnti", "xnap.i_rnti", - FT_BYTES, BASE_NONE, NULL, 0, + FT_UINT32, BASE_DEC, VALS(xnap_I_RNTI_vals), 0, NULL, HFILL }}, { &hf_xnap_c_rnti, { "c-rnti", "xnap.c_rnti", @@ -8989,10 +14049,10 @@ void proto_register_xnap(void) { { "ue-AMBR", "xnap.ue_AMBR_element", FT_NONE, BASE_NONE, NULL, 0, "UEAggregateMaximumBitRate", HFILL }}, - { &hf_xnap_pduSessionResourcesToBeSet_List, - { "pduSessionResourcesToBeSet-List", "xnap.pduSessionResourcesToBeSet_List", + { &hf_xnap_pduSessionResourcesToBeSetup_List, + { "pduSessionResourcesToBeSetup-List", "xnap.pduSessionResourcesToBeSetup_List", FT_UINT32, BASE_DEC, NULL, 0, - "PDUSessionResourcesToBeSetup_List", HFILL }}, + NULL, HFILL }}, { &hf_xnap_rrc_Context, { "rrc-Context", "xnap.rrc_Context", FT_BYTES, BASE_NONE, NULL, 0, @@ -9005,9 +14065,17 @@ void proto_register_xnap(void) { { "indexToRatFrequencySelectionPriority", "xnap.indexToRatFrequencySelectionPriority", FT_UINT32, BASE_DEC, NULL, 0, "RFSP_Index", HFILL }}, + { &hf_xnap_UEHistoryInformation_item, + { "LastVisitedCell-Item", "xnap.LastVisitedCell_Item", + FT_UINT32, BASE_DEC, VALS(xnap_LastVisitedCell_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_indexLength10, + { "indexLength10", "xnap.indexLength10", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_10", HFILL }}, { &hf_xnap_i_RNTI, { "i-RNTI", "xnap.i_RNTI", - FT_BYTES, BASE_NONE, NULL, 0, + FT_UINT32, BASE_DEC, VALS(xnap_I_RNTI_vals), 0, NULL, HFILL }}, { &hf_xnap_nr_EncyptionAlgorithms, { "nr-EncyptionAlgorithms", "xnap.nr_EncyptionAlgorithms", @@ -9041,10 +14109,6 @@ void proto_register_xnap(void) { { "cp-TNL-info-source", "xnap.cp_TNL_info_source", FT_UINT32, BASE_DEC, VALS(xnap_CPTransportLayerInformation_vals), 0, "CPTransportLayerInformation", HFILL }}, - { &hf_xnap_pduSessionResourcesToBeSetup_List, - { "pduSessionResourcesToBeSetup-List", "xnap.pduSessionResourcesToBeSetup_List", - FT_UINT32, BASE_DEC, NULL, 0, - NULL, HFILL }}, { &hf_xnap_rrc_Context_01, { "rrc-Context", "xnap.rrc_Context", FT_BYTES, BASE_NONE, NULL, 0, @@ -9053,10 +14117,350 @@ void proto_register_xnap(void) { { "locationReportingInformation", "xnap.locationReportingInformation_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_xnap_hlr, - { "hlr", "xnap.hlr_element", + { &hf_xnap_mrl, + { "mrl", "xnap.mrl_element", FT_NONE, BASE_NONE, NULL, 0, "MobilityRestrictionList", HFILL }}, + { &hf_xnap_globalNG_RANNode_ID, + { "globalNG-RANNode-ID", "xnap.globalNG_RANNode_ID", + FT_UINT32, BASE_DEC, VALS(xnap_GlobalNG_RANNode_ID_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sN_NG_RANnodeUEXnAPID, + { "sN-NG-RANnodeUEXnAPID", "xnap.sN_NG_RANnodeUEXnAPID", + FT_UINT32, BASE_DEC, NULL, 0, + "NG_RANnodeUEXnAPID", HFILL }}, + { &hf_xnap_PDUSessionToBeAddedAddReq_item, + { "PDUSessionToBeAddedAddReq-Item", "xnap.PDUSessionToBeAddedAddReq_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_sN_PDUSessionAMBR, + { "sN-PDUSessionAMBR", "xnap.sN_PDUSessionAMBR_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionAggregateMaximumBitRate", HFILL }}, + { &hf_xnap_bearerConfigToBeAdded, + { "bearerConfigToBeAdded", "xnap.bearerConfigToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeAdded_AddReq", HFILL }}, + { &hf_xnap_BearerConfigToBeAdded_AddReq_item, + { "BearerConfigToBeAdded-AddReq-Item", "xnap.BearerConfigToBeAdded_AddReq_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeAdded_AddReq_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceSetupInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceSetupInfo_MNterminated", HFILL }}, + { &hf_xnap_PDUSessionAdmittedAddedAddReqAck_item, + { "PDUSessionAdmittedAddedAddReqAck-Item", "xnap.PDUSessionAdmittedAddedAddReqAck_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigAdmittedToBeAdded, + { "bearerConfigAdmittedToBeAdded", "xnap.bearerConfigAdmittedToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigAdmittedToBeAdded_AddReqAck", HFILL }}, + { &hf_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_item, + { "BearerConfigAdmittedToBeAdded-AddReqAck-Item", "xnap.BearerConfigAdmittedToBeAdded_AddReqAck_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_01, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceSetupResponseInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_01, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceSetupResponseInfo_MNterminated", HFILL }}, + { &hf_xnap_pduSessionResourcesNotAdmitted_SNterminated, + { "pduSessionResourcesNotAdmitted-SNterminated", "xnap.pduSessionResourcesNotAdmitted_SNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSessionResourcesNotAdmitted_List", HFILL }}, + { &hf_xnap_pduSessionResourcesNotAdmitted_MNterminated, + { "pduSessionResourcesNotAdmitted-MNterminated", "xnap.pduSessionResourcesNotAdmitted_MNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSessionResourcesNotAdmitted_List", HFILL }}, + { &hf_xnap_responseType_ReconfComplete, + { "responseType-ReconfComplete", "xnap.responseType_ReconfComplete", + FT_UINT32, BASE_DEC, VALS(xnap_ResponseType_ReconfComplete_vals), 0, + NULL, HFILL }}, + { &hf_xnap_configuration_successfully_applied, + { "configuration-successfully-applied", "xnap.configuration_successfully_applied_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_configuration_rejected_by_M_NG_RANNode, + { "configuration-rejected-by-M-NG-RANNode", "xnap.configuration_rejected_by_M_NG_RANNode_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_m_NG_RANNode_to_S_NG_RANNode_Container, + { "m-NG-RANNode-to-S-NG-RANNode-Container", "xnap.m_NG_RANNode_to_S_NG_RANNode_Container", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_m_NG_RANNode_to_S_NG_RANNode_Container_01, + { "m-NG-RANNode-to-S-NG-RANNode-Container", "xnap.m_NG_RANNode_to_S_NG_RANNode_Container", + FT_BYTES, BASE_NONE, NULL, 0, + "T_m_NG_RANNode_to_S_NG_RANNode_Container_01", HFILL }}, + { &hf_xnap_s_ng_RANnode_SecurityKey, + { "s-ng-RANnode-SecurityKey", "xnap.s_ng_RANnode_SecurityKey", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_lowerLayerPresenceStatusChange, + { "lowerLayerPresenceStatusChange", "xnap.lowerLayerPresenceStatusChange", + FT_UINT32, BASE_DEC, VALS(xnap_LowerLayerPresenceStatusChange_vals), 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigToBeAdded_01, + { "bearerConfigToBeAdded", "xnap.bearerConfigToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSessionsToBeAdded_SNModRequest_List", HFILL }}, + { &hf_xnap_bearerConfigToBeModified, + { "bearerConfigToBeModified", "xnap.bearerConfigToBeModified", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSessionsToBeModified_SNModRequest_List", HFILL }}, + { &hf_xnap_bearerConfigToBeReleased, + { "bearerConfigToBeReleased", "xnap.bearerConfigToBeReleased_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionsToBeReleased_SNModRequest_List", HFILL }}, + { &hf_xnap_PDUSessionsToBeAdded_SNModRequest_List_item, + { "PDUSessionsToBeAdded-SNModRequest-Item", "xnap.PDUSessionsToBeAdded_SNModRequest_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigToBeAdded_02, + { "bearerConfigToBeAdded", "xnap.bearerConfigToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeAdded_SNModRequest", HFILL }}, + { &hf_xnap_BearerConfigToBeAdded_SNModRequest_item, + { "BearerConfigToBeAdded-SNModRequest-Item", "xnap.BearerConfigToBeAdded_SNModRequest_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeAdded_SNModRequest_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionsToBeModified_SNModRequest_List_item, + { "PDUSessionsToBeModified-SNModRequest-Item", "xnap.PDUSessionsToBeModified_SNModRequest_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigToBeModified_01, + { "bearerConfigToBeModified", "xnap.bearerConfigToBeModified", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeModified_SNModRequest", HFILL }}, + { &hf_xnap_BearerConfigToBeModified_SNModRequest_item, + { "BearerConfigToBeModified-SNModRequest-Item", "xnap.BearerConfigToBeModified_SNModRequest_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeModified_SNModRequest_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_02, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModificationInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_02, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModificationInfo_MNterminated", HFILL }}, + { &hf_xnap_sn_terminated_03, + { "sn-terminated", "xnap.sn_terminated", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_xnap_mn_terminated_03, + { "mn-terminated", "xnap.mn_terminated", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_xnap_pduSessionResourcesAdmittedToBeAdded, + { "pduSessionResourcesAdmittedToBeAdded", "xnap.pduSessionResourcesAdmittedToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSessionAdmittedToBeAddedSNModResponse", HFILL }}, + { &hf_xnap_pduSessionResourcesAdmittedToBeModified, + { "pduSessionResourcesAdmittedToBeModified", "xnap.pduSessionResourcesAdmittedToBeModified", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSessionAdmittedToBeModifiedSNModResponse", HFILL }}, + { &hf_xnap_pduSessionResourcesAdmittedToBeReleased, + { "pduSessionResourcesAdmittedToBeReleased", "xnap.pduSessionResourcesAdmittedToBeReleased_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionAdmittedToBeReleasedSNModResponse", HFILL }}, + { &hf_xnap_PDUSessionAdmittedToBeAddedSNModResponse_item, + { "PDUSessionAdmittedToBeAddedSNModResponse-Item", "xnap.PDUSessionAdmittedToBeAddedSNModResponse_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigs, + { "bearerConfigs", "xnap.bearerConfigs", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeAdded_SNModResponse_List", HFILL }}, + { &hf_xnap_BearerConfigToBeAdded_SNModResponse_List_item, + { "BearerConfigToBeAdded-SNModResponse-Item", "xnap.BearerConfigToBeAdded_SNModResponse_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeAdded_SNModResponse_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_item, + { "PDUSessionAdmittedToBeModifiedSNModResponse-Item", "xnap.PDUSessionAdmittedToBeModifiedSNModResponse_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigs_01, + { "bearerConfigs", "xnap.bearerConfigs", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeModified_SNModResponse_List", HFILL }}, + { &hf_xnap_BearerConfigToBeModified_SNModResponse_List_item, + { "BearerConfigToBeModified-SNModResponse-Item", "xnap.BearerConfigToBeModified_SNModResponse_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeModified_SNModResponse_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_04, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModificationResponseInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_04, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModificationResponseInfo_MNterminated", HFILL }}, + { &hf_xnap_PDUSessionToBeModifiedSNModRequired_item, + { "PDUSessionToBeModifiedSNModRequired-Item", "xnap.PDUSessionToBeModifiedSNModRequired_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigurations, + { "bearerConfigurations", "xnap.bearerConfigurations", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeModifiedSNModRequired_List", HFILL }}, + { &hf_xnap_BearerConfigToBeModifiedSNModRequired_List_item, + { "BearerConfigToBeModifiedSNModRequired-Item", "xnap.BearerConfigToBeModifiedSNModRequired_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeModifiedSNModRequired_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_05, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModRqdInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_05, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModRqdInfo_SNterminated", HFILL }}, + { &hf_xnap_sn_terminated_06, + { "sn-terminated", "xnap.sn_terminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSession_List_withDataForwardingRequest", HFILL }}, + { &hf_xnap_mn_terminated_06, + { "mn-terminated", "xnap.mn_terminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSession_List_withCause", HFILL }}, + { &hf_xnap_PDUSessionAdmittedModSNModConfirm_item, + { "PDUSessionAdmittedModSNModConfirm-Item", "xnap.PDUSessionAdmittedModSNModConfirm_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigurations_01, + { "bearerConfigurations", "xnap.bearerConfigurations", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigAdmittedModSNModConfirm", HFILL }}, + { &hf_xnap_BearerConfigAdmittedModSNModConfirm_item, + { "BearerConfigAdmittedModSNModConfirm-Item", "xnap.BearerConfigAdmittedModSNModConfirm_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigAdmittedModSNModConfirm_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_07, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModConfirmInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_07, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceModConfirmInfo_MNterminated", HFILL }}, + { &hf_xnap_sn_terminated_08, + { "sn-terminated", "xnap.sn_terminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSession_List_withDataForwardingFromTarget", HFILL }}, + { &hf_xnap_mn_terminated_08, + { "mn-terminated", "xnap.mn_terminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSession_List", HFILL }}, + { &hf_xnap_pduSessionsToBeReleasedList_SNterminated, + { "pduSessionsToBeReleasedList-SNterminated", "xnap.pduSessionsToBeReleasedList_SNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSession_List_withDataForwardingRequest", HFILL }}, + { &hf_xnap_pduSessionsReleasedList_SNterminated, + { "pduSessionsReleasedList-SNterminated", "xnap.pduSessionsReleasedList_SNterminated", + FT_UINT32, BASE_DEC, NULL, 0, + "PDUSession_List_withDataForwardingFromTarget", HFILL }}, + { &hf_xnap_BearersSubjectToCounterCheck_List_item, + { "BearersSubjectToCounterCheck-Item", "xnap.BearersSubjectToCounterCheck_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_ul_count, + { "ul-count", "xnap.ul_count", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4294967295", HFILL }}, + { &hf_xnap_dl_count, + { "dl-count", "xnap.dl_count", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4294967295", HFILL }}, + { &hf_xnap_PDUSession_SNChangeRequired_List_item, + { "PDUSession-SNChangeRequired-Item", "xnap.PDUSession_SNChangeRequired_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigToBeAdded_03, + { "bearerConfigToBeAdded", "xnap.bearerConfigToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfigToBeAdded_ChangeRqd", HFILL }}, + { &hf_xnap_BearerConfigToBeAdded_ChangeRqd_item, + { "BearerConfigToBeAdded-ChangeRqd-Item", "xnap.BearerConfigToBeAdded_ChangeRqd_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfigToBeAdded_ChangeRqd_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_09, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceChangeRequiredInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_09, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceChangeRequiredInfo_MNterminated", HFILL }}, + { &hf_xnap_PDUSession_SNChangeConfirm_List_item, + { "PDUSession-SNChangeConfirm-Item", "xnap.PDUSession_SNChangeConfirm_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_bearerConfigToBeAdded_04, + { "bearerConfigToBeAdded", "xnap.bearerConfigToBeAdded", + FT_UINT32, BASE_DEC, NULL, 0, + "BearerConfig_ChangeConfirm", HFILL }}, + { &hf_xnap_BearerConfig_ChangeConfirm_item, + { "BearerConfig-ChangeConfirm-Item", "xnap.BearerConfig_ChangeConfirm_Item", + FT_UINT32, BASE_DEC, VALS(xnap_BearerConfig_ChangeConfirm_Item_vals), 0, + NULL, HFILL }}, + { &hf_xnap_sn_terminated_10, + { "sn-terminated", "xnap.sn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceChangeConfirmInfo_SNterminated", HFILL }}, + { &hf_xnap_mn_terminated_10, + { "mn-terminated", "xnap.mn_terminated_element", + FT_NONE, BASE_NONE, NULL, 0, + "PDUSessionResourceChangeConfirmInfo_MNterminated", HFILL }}, + { &hf_xnap_rrcContainer, + { "rrcContainer", "xnap.rrcContainer", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_xnap_srbType, + { "srbType", "xnap.srbType", + FT_UINT32, BASE_DEC, VALS(xnap_T_srbType_vals), 0, + NULL, HFILL }}, + { &hf_xnap_deliveryStatus, + { "deliveryStatus", "xnap.deliveryStatus", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_rrcContainer_01, + { "rrcContainer", "xnap.rrcContainer", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_PDUSessionResourcesNotifyList_item, + { "PDUSessionResourcesNotify-Item", "xnap.PDUSessionResourcesNotify_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_qosFlowsNotificationContrIndInfo, + { "qosFlowsNotificationContrIndInfo", "xnap.qosFlowsNotificationContrIndInfo", + FT_UINT32, BASE_DEC, NULL, 0, + "QoSFlowNotificationControlIndicationInfo", HFILL }}, + { &hf_xnap_PDUSessionResourcesActivityNotifyList_item, + { "PDUSessionResourcesActivityNotify-Item", "xnap.PDUSessionResourcesActivityNotify_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_pduSessionLevelUPactivityreport, + { "pduSessionLevelUPactivityreport", "xnap.pduSessionLevelUPactivityreport", + FT_UINT32, BASE_DEC, VALS(xnap_UserPlaneTrafficActivityReport_vals), 0, + "UserPlaneTrafficActivityReport", HFILL }}, + { &hf_xnap_qosFlowsActivityNotifyList, + { "qosFlowsActivityNotifyList", "xnap.qosFlowsActivityNotifyList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_QoSFlowsActivityNotifyList_item, + { "QoSFlowsActivityNotifyItem", "xnap.QoSFlowsActivityNotifyItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_xnap_gNB_01, { "gNB", "xnap.gNB", FT_UINT32, BASE_DEC, NULL, 0, @@ -9077,10 +14481,50 @@ void proto_register_xnap(void) { { "served-NR-Cells", "xnap.served_NR_Cells", FT_UINT32, BASE_DEC, NULL, 0, "ServedCells_NR", HFILL }}, + { &hf_xnap_ng_eNB_03, + { "ng-eNB", "xnap.ng_eNB_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceCoordRequest_ng_eNB_initiated", HFILL }}, + { &hf_xnap_gNB_03, + { "gNB", "xnap.gNB_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceCoordRequest_gNB_initiated", HFILL }}, + { &hf_xnap_dataTrafficResourceIndication, + { "dataTrafficResourceIndication", "xnap.dataTrafficResourceIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_spectrumSharingGroupID, + { "spectrumSharingGroupID", "xnap.spectrumSharingGroupID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_listofE_UTRACells, + { "listofE-UTRACells", "xnap.listofE_UTRACells", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI", HFILL }}, + { &hf_xnap_listofE_UTRACells_item, + { "E-UTRA-CGI", "xnap.E_UTRA_CGI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_listofNRCells, + { "listofNRCells", "xnap.listofNRCells", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI", HFILL }}, + { &hf_xnap_listofNRCells_item, + { "NR-CGI", "xnap.NR_CGI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_xnap_ng_eNB_04, + { "ng-eNB", "xnap.ng_eNB_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceCoordResponse_ng_eNB_initiated", HFILL }}, + { &hf_xnap_gNB_04, + { "gNB", "xnap.gNB_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceCoordResponse_gNB_initiated", HFILL }}, { &hf_xnap_nr_cells, { "nr-cells", "xnap.nr_cells", FT_UINT32, BASE_DEC, NULL, 0, - "SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI", HFILL }}, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI", HFILL }}, { &hf_xnap_nr_cells_item, { "NR-CGI", "xnap.NR_CGI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -9088,7 +14532,7 @@ void proto_register_xnap(void) { { &hf_xnap_e_utra_cells, { "e-utra-cells", "xnap.e_utra_cells", FT_UINT32, BASE_DEC, NULL, 0, - "SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI", HFILL }}, + "SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI", HFILL }}, { &hf_xnap_e_utra_cells_item, { "E-UTRA-CGI", "xnap.E_UTRA_CGI_element", FT_NONE, BASE_NONE, NULL, 0, @@ -9199,7 +14643,7 @@ void proto_register_xnap(void) { NULL, HFILL }}, /*--- End of included file: packet-xnap-hfarr.c ---*/ -#line 229 "./asn1/xnap/packet-xnap-template.c" +#line 256 "./asn1/xnap/packet-xnap-template.c" }; /* List of subtrees */ @@ -9216,6 +14660,7 @@ void proto_register_xnap(void) { &ett_xnap_e_utra_IntegrityProtectionAlgorithms, &ett_xnap_ng_ran_TraceID, &ett_xnap_interfaces_to_trace, + &ett_xnap_LastVisitedEUTRANCellInformation, /*--- Included file: packet-xnap-ettarr.c ---*/ #line 1 "./asn1/xnap/packet-xnap-ettarr.c" @@ -9235,7 +14680,8 @@ void proto_register_xnap(void) { &ett_xnap_BroadcastPLMNinTAISupport_Item, &ett_xnap_Cause, &ett_xnap_CellAssistanceInfo_NR, - &ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_NR_CGI, + &ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_NR_CGI, + &ett_xnap_Connectivity_Support, &ett_xnap_COUNT_PDCP_SN12, &ett_xnap_COUNT_PDCP_SN18, &ett_xnap_CPTransportLayerInformation, @@ -9245,8 +14691,15 @@ void proto_register_xnap(void) { &ett_xnap_DataforwardingInfoperPDUSession, &ett_xnap_DataforwardingInfoperPDUSession_Item, &ett_xnap_DataForwardingInfoFromTargetNGRANnode, + &ett_xnap_DataforwardingRequest_List, + &ett_xnap_QoSFLowsToBeForwarded_List, + &ett_xnap_QoSFLowsToBeForwarded_Item, &ett_xnap_DataForwardingResponseDRBItemList, &ett_xnap_DataForwardingResponseDRBItem, + &ett_xnap_DataTrafficResourceIndication, + &ett_xnap_DRB_List, + &ett_xnap_DRB_List_withCause, + &ett_xnap_DRB_List_withCause_Item, &ett_xnap_DRBsSubjectToStatusTransfer_List, &ett_xnap_DRBsSubjectToStatusTransfer_Item, &ett_xnap_DRBBStatusTransferChoice, @@ -9263,14 +14716,20 @@ void proto_register_xnap(void) { &ett_xnap_GNB_ID_Choice, &ett_xnap_GlobalngeNB_ID, &ett_xnap_ENB_ID_Choice, + &ett_xnap_GlobalNG_RANCell_ID, &ett_xnap_GlobalNG_RANNode_ID, &ett_xnap_GTPtunnelTransportLayerInformation, &ett_xnap_GUAMI, + &ett_xnap_I_RNTI, + &ett_xnap_LastVisitedCell_Item, &ett_xnap_ListOfCells, &ett_xnap_CellsinAoI_Item, + &ett_xnap_ListOfRANNodesinAoI, + &ett_xnap_GlobalNG_RANNodesinAoI_Item, &ett_xnap_ListOfTAIsinAoI, &ett_xnap_TAIsinAoI_Item, &ett_xnap_LocationReportingInformation, + &ett_xnap_MaximumIPdatarate, &ett_xnap_MBSFNSubframeAllocation_E_UTRA, &ett_xnap_MBSFNSubframeInfo_E_UTRA, &ett_xnap_MBSFNSubframeInfo_E_UTRA_Item, @@ -9303,6 +14762,17 @@ void proto_register_xnap(void) { &ett_xnap_NRModeInfo, &ett_xnap_NRModeInfoFDD, &ett_xnap_NRModeInfoTDD, + &ett_xnap_NRTransmissionBandwidth, + &ett_xnap_PacketErrorRate, + &ett_xnap_PDCPChangeIndication, + &ett_xnap_PDUSessionAggregateMaximumBitRate, + &ett_xnap_PDUSession_List, + &ett_xnap_PDUSession_List_withCause, + &ett_xnap_PDUSession_List_withCause_Item, + &ett_xnap_PDUSession_List_withDataForwardingFromTarget, + &ett_xnap_PDUSession_List_withDataForwardingFromTarget_Item, + &ett_xnap_PDUSession_List_withDataForwardingRequest, + &ett_xnap_PDUSession_List_withDataForwardingRequest_Item, &ett_xnap_PDUSessionResourcesAdmitted_List, &ett_xnap_PDUSessionResourcesAdmitted_Item, &ett_xnap_PDUSessionResourceAdmittedInfo, @@ -9310,10 +14780,65 @@ void proto_register_xnap(void) { &ett_xnap_PDUSessionResourcesNotAdmitted_Item, &ett_xnap_PDUSessionResourcesToBeSetup_List, &ett_xnap_PDUSessionResourcesToBeSetup_Item, + &ett_xnap_PDUSessionResourceSetupInfo_SNterminated, + &ett_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated, + &ett_xnap_QoSFlowsToBeSetup_List_Setup_SNterminated_Item, + &ett_xnap_PDUSessionResourceSetupResponseInfo_SNterminated, + &ett_xnap_DRBsToBeSetupList_SetupResponse_SNterminated, + &ett_xnap_DRBsToBeSetupList_SetupResponse_SNterminated_Item, + &ett_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated, + &ett_xnap_QoSFlowsMappedtoDRB_SetupResponse_SNterminated_Item, + &ett_xnap_PDUSessionResourceSetupInfo_MNterminated, + &ett_xnap_DRBsToBeSetupList_Setup_MNterminated, + &ett_xnap_DRBsToBeSetupList_Setup_MNterminated_Item, + &ett_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated, + &ett_xnap_QoSFlowsMappedtoDRB_Setup_MNterminated_Item, + &ett_xnap_PDUSessionResourceSetupResponseInfo_MNterminated, + &ett_xnap_DRBsAdmittedList_SetupResponse_MNterminated, + &ett_xnap_DRBsAdmittedList_SetupResponse_MNterminated_Item, + &ett_xnap_PDUSessionResourceModificationInfo_SNterminated, + &ett_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated, + &ett_xnap_QoSFlowsToBeSetup_List_Modified_SNterminated_Item, + &ett_xnap_DRBsToBeModified_List_Modified_SNterminated, + &ett_xnap_DRBsToBeModified_List_Modified_SNterminated_Item, + &ett_xnap_PDUSessionResourceModificationResponseInfo_SNterminated, + &ett_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated, + &ett_xnap_DRBsToBeModifiedList_ModificationResponse_SNterminated_Item, + &ett_xnap_PDUSessionResourceModificationInfo_MNterminated, + &ett_xnap_DRBsToBeModifiedList_Modification_MNterminated, + &ett_xnap_DRBsToBeModifiedList_Modification_MNterminated_Item, + &ett_xnap_PDUSessionResourceModificationResponseInfo_MNterminated, + &ett_xnap_DRBsAdmittedList_ModificationResponse_MNterminated, + &ett_xnap_DRBsAdmittedList_ModificationResponse_MNterminated_Item, + &ett_xnap_PDUSessionResourceChangeRequiredInfo_SNterminated, + &ett_xnap_PDUSessionResourceChangeConfirmInfo_SNterminated, + &ett_xnap_PDUSessionResourceChangeRequiredInfo_MNterminated, + &ett_xnap_PDUSessionResourceChangeConfirmInfo_MNterminated, + &ett_xnap_PDUSessionResourceModRqdInfo_SNterminated, + &ett_xnap_DRBsToBeSetup_List_ModRqd_SNterminated, + &ett_xnap_DRBsToBeSetup_List_ModRqd_SNterminated_Item, + &ett_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated, + &ett_xnap_QoSFlowsSetupMappedtoDRB_ModRqd_SNterminated_Item, + &ett_xnap_DRBsToBeModified_List_ModRqd_SNterminated, + &ett_xnap_DRBsToBeModified_List_ModRqd_SNterminated_Item, + &ett_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated, + &ett_xnap_QoSFlowsModifiedMappedtoDRB_ModRqd_SNterminated_Item, + &ett_xnap_PDUSessionResourceModConfirmInfo_SNterminated, + &ett_xnap_DRBsAdmittedList_ModConfirm_SNterminated, + &ett_xnap_DRBsAdmittedList_ModConfirm_SNterminated_Item, + &ett_xnap_PDUSessionResourceModConfirmInfo_MNterminated, + &ett_xnap_ProtectedE_UTRAResourceIndication, + &ett_xnap_ProtectedE_UTRAResourceList, + &ett_xnap_ProtectedE_UTRAResource_Item, + &ett_xnap_ProtectedE_UTRAFootprintTimePattern, &ett_xnap_QoSCharacteristics, &ett_xnap_QoSFlowLevelQoSParameters, + &ett_xnap_QoSFlowNotificationControlIndicationInfo, + &ett_xnap_QoSFlowNotify_Item, &ett_xnap_QoSFlows_List, &ett_xnap_QoSFlow_Item, + &ett_xnap_QoSFlows_List_withCause, + &ett_xnap_QoSFlowwithCause_Item, &ett_xnap_QoSFlowsAdmitted_List, &ett_xnap_QoSFlowAdmitted_Item, &ett_xnap_QoSFlowsNotAdmitted_List, @@ -9325,6 +14850,7 @@ void proto_register_xnap(void) { &ett_xnap_RANPagingArea, &ett_xnap_RANPagingAreaChoice, &ett_xnap_RANPagingAttemptInfo, + &ett_xnap_ReservedSubframePattern, &ett_xnap_ResetRequestTypeInfo, &ett_xnap_ResetRequestTypeInfo_Full, &ett_xnap_ResetRequestTypeInfo_Partial, @@ -9336,6 +14862,7 @@ void proto_register_xnap(void) { &ett_xnap_ResetResponsePartialReleaseList, &ett_xnap_ResetResponsePartialReleaseItem, &ett_xnap_SecurityIndication, + &ett_xnap_SecurityResult, &ett_xnap_ServedCellInformation_E_UTRA, &ett_xnap_SEQUENCE_SIZE_1_maxnoofBPLMNs_OF_ServedCellInformation_E_UTRA_perBPLMN, &ett_xnap_ServedCellInformation_E_UTRA_perBPLMN, @@ -9345,7 +14872,7 @@ void proto_register_xnap(void) { &ett_xnap_ServedCells_E_UTRA, &ett_xnap_ServedCells_E_UTRA_Item, &ett_xnap_ServedCellsToUpdate_E_UTRA, - &ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNGRANnode_OF_E_UTRA_CGI, + &ett_xnap_SEQUENCE_SIZE_1_maxnoofCellsinNG_RANnode_OF_E_UTRA_CGI, &ett_xnap_ServedCells_ToModify_E_UTRA, &ett_xnap_ServedCells_ToModify_E_UTRA_Item, &ett_xnap_ServedCellInformation_NR, @@ -9354,6 +14881,13 @@ void proto_register_xnap(void) { &ett_xnap_ServedCells_ToModify_NR, &ett_xnap_ServedCells_ToModify_NR_Item, &ett_xnap_ServedCellsToUpdate_NR, + &ett_xnap_SharedResourceType, + &ett_xnap_SharedResourceType_UL_OnlySharing, + &ett_xnap_SharedResourceType_ULDL_Sharing, + &ett_xnap_SharedResourceType_ULDL_Sharing_UL_Resources, + &ett_xnap_SharedResourceType_ULDL_Sharing_UL_ResourcesChanged, + &ett_xnap_SharedResourceType_ULDL_Sharing_DL_Resources, + &ett_xnap_SharedResourceType_ULDL_Sharing_DL_ResourcesChanged, &ett_xnap_SliceSupport_List, &ett_xnap_S_NSSAI, &ett_xnap_SpecialSubframeInfo_E_UTRA, @@ -9371,6 +14905,8 @@ void proto_register_xnap(void) { &ett_xnap_UEContextIDforRRCResume, &ett_xnap_UEContextIDforRRCReestablishment, &ett_xnap_UEContextInfoRetrUECtxtResp, + &ett_xnap_UEHistoryInformation, + &ett_xnap_UEIdentityIndexValue, &ett_xnap_UERANPagingIdentity, &ett_xnap_UESecurityCapabilities, &ett_xnap_T_nr_EncyptionAlgorithms, @@ -9380,6 +14916,7 @@ void proto_register_xnap(void) { &ett_xnap_UPTransportLayerInformation, &ett_xnap_HandoverRequest, &ett_xnap_UEContextInfoHORequest, + &ett_xnap_UEContextRefAtSN_HORequest, &ett_xnap_HandoverRequestAcknowledge, &ett_xnap_HandoverPreparationFailure, &ett_xnap_SNStatusTransfer, @@ -9391,25 +14928,91 @@ void proto_register_xnap(void) { &ett_xnap_RetrieveUEContextFailure, &ett_xnap_DataForwardingAddressIndication, &ett_xnap_SNodeAdditionRequest, + &ett_xnap_PDUSessionToBeAddedAddReq, + &ett_xnap_PDUSessionToBeAddedAddReq_Item, + &ett_xnap_BearerConfigToBeAdded_AddReq, + &ett_xnap_BearerConfigToBeAdded_AddReq_Item, &ett_xnap_SNodeAdditionRequestAcknowledge, + &ett_xnap_PDUSessionAdmittedAddedAddReqAck, + &ett_xnap_PDUSessionAdmittedAddedAddReqAck_Item, + &ett_xnap_BearerConfigAdmittedToBeAdded_AddReqAck, + &ett_xnap_BearerConfigAdmittedToBeAdded_AddReqAck_Item, + &ett_xnap_PDUSessionNotAdmittedAddReqAck, &ett_xnap_SNodeAdditionRequestReject, &ett_xnap_SNodeReconfigurationComplete, + &ett_xnap_ResponseInfo_ReconfCompl, + &ett_xnap_ResponseType_ReconfComplete, + &ett_xnap_Configuration_successfully_applied, + &ett_xnap_Configuration_rejected_by_M_NG_RANNode, &ett_xnap_SNodeModificationRequest, + &ett_xnap_UEContextInfo_SNModRequest, + &ett_xnap_PDUSessionsToBeAdded_SNModRequest_List, + &ett_xnap_PDUSessionsToBeAdded_SNModRequest_Item, + &ett_xnap_BearerConfigToBeAdded_SNModRequest, + &ett_xnap_BearerConfigToBeAdded_SNModRequest_Item, + &ett_xnap_PDUSessionsToBeModified_SNModRequest_List, + &ett_xnap_PDUSessionsToBeModified_SNModRequest_Item, + &ett_xnap_BearerConfigToBeModified_SNModRequest, + &ett_xnap_BearerConfigToBeModified_SNModRequest_Item, + &ett_xnap_PDUSessionsToBeReleased_SNModRequest_List, &ett_xnap_SNodeModificationRequestAcknowledge, + &ett_xnap_PDUSessionAdmitted_SNModResponse, + &ett_xnap_PDUSessionAdmittedToBeAddedSNModResponse, + &ett_xnap_PDUSessionAdmittedToBeAddedSNModResponse_Item, + &ett_xnap_BearerConfigToBeAdded_SNModResponse_List, + &ett_xnap_BearerConfigToBeAdded_SNModResponse_Item, + &ett_xnap_PDUSessionAdmittedToBeModifiedSNModResponse, + &ett_xnap_PDUSessionAdmittedToBeModifiedSNModResponse_Item, + &ett_xnap_BearerConfigToBeModified_SNModResponse_List, + &ett_xnap_BearerConfigToBeModified_SNModResponse_Item, + &ett_xnap_PDUSessionAdmittedToBeReleasedSNModResponse, + &ett_xnap_PDUSessionNotAdmitted_SNModResponse, &ett_xnap_SNodeModificationRequestReject, &ett_xnap_SNodeModificationRequired, + &ett_xnap_PDUSessionToBeModifiedSNModRequired, + &ett_xnap_PDUSessionToBeModifiedSNModRequired_Item, + &ett_xnap_BearerConfigToBeModifiedSNModRequired_List, + &ett_xnap_BearerConfigToBeModifiedSNModRequired_Item, + &ett_xnap_PDUSessionToBeReleasedSNModRequired, &ett_xnap_SNodeModificationConfirm, + &ett_xnap_PDUSessionAdmittedModSNModConfirm, + &ett_xnap_PDUSessionAdmittedModSNModConfirm_Item, + &ett_xnap_BearerConfigAdmittedModSNModConfirm, + &ett_xnap_BearerConfigAdmittedModSNModConfirm_Item, + &ett_xnap_PDUSessionReleasedSNModConfirm, &ett_xnap_SNodeModificationRefuse, &ett_xnap_SNodeReleaseRequest, &ett_xnap_SNodeReleaseRequestAcknowledge, &ett_xnap_SNodeReleaseReject, &ett_xnap_SNodeReleaseRequired, + &ett_xnap_PDUSessionToBeReleasedList_RelRqd, &ett_xnap_SNodeReleaseConfirm, + &ett_xnap_PDUSessionReleasedList_RelConf, &ett_xnap_SNodeCounterCheckRequest, + &ett_xnap_BearersSubjectToCounterCheck_List, + &ett_xnap_BearersSubjectToCounterCheck_Item, &ett_xnap_SNodeChangeRequired, + &ett_xnap_PDUSession_SNChangeRequired_List, + &ett_xnap_PDUSession_SNChangeRequired_Item, + &ett_xnap_BearerConfigToBeAdded_ChangeRqd, + &ett_xnap_BearerConfigToBeAdded_ChangeRqd_Item, &ett_xnap_SNodeChangeConfirm, + &ett_xnap_PDUSession_SNChangeConfirm_List, + &ett_xnap_PDUSession_SNChangeConfirm_Item, + &ett_xnap_BearerConfig_ChangeConfirm, + &ett_xnap_BearerConfig_ChangeConfirm_Item, &ett_xnap_SNodeChangeRefuse, &ett_xnap_RRCTransfer, + &ett_xnap_SplitSRB_RRCTransfer, + &ett_xnap_NRUEMeasurementReportRRCTransfer, + &ett_xnap_NotificationControlIndication, + &ett_xnap_PDUSessionResourcesNotifyList, + &ett_xnap_PDUSessionResourcesNotify_Item, + &ett_xnap_ActivityNotification, + &ett_xnap_PDUSessionResourcesActivityNotifyList, + &ett_xnap_PDUSessionResourcesActivityNotify_Item, + &ett_xnap_QoSFlowsActivityNotifyList, + &ett_xnap_QoSFlowsActivityNotifyItem, &ett_xnap_XnSetupRequest, &ett_xnap_XnSetupResponse, &ett_xnap_XnSetupFailure, @@ -9420,6 +15023,14 @@ void proto_register_xnap(void) { &ett_xnap_RespondingNodeTypeConfigUpdateAck_ng_eNB, &ett_xnap_RespondingNodeTypeConfigUpdateAck_gNB, &ett_xnap_NGRANNodeConfigurationUpdateFailure, + &ett_xnap_E_UTRA_NR_CellResourceCoordinationRequest, + &ett_xnap_InitiatingNodeType_ResourceCoordRequest, + &ett_xnap_ResourceCoordRequest_ng_eNB_initiated, + &ett_xnap_ResourceCoordRequest_gNB_initiated, + &ett_xnap_E_UTRA_NR_CellResourceCoordinationResponse, + &ett_xnap_RespondingNodeType_ResourceCoordResponse, + &ett_xnap_ResourceCoordResponse_ng_eNB_initiated, + &ett_xnap_ResourceCoordResponse_gNB_initiated, &ett_xnap_XnRemovalRequest, &ett_xnap_XnRemovalResponse, &ett_xnap_XnRemovalFailure, @@ -9438,7 +15049,7 @@ void proto_register_xnap(void) { &ett_xnap_UnsuccessfulOutcome, /*--- End of included file: packet-xnap-ettarr.c ---*/ -#line 246 "./asn1/xnap/packet-xnap-template.c" +#line 274 "./asn1/xnap/packet-xnap-template.c" }; module_t *xnap_module; @@ -9484,61 +15095,96 @@ proto_reg_handoff_xnap(void) #line 1 "./asn1/xnap/packet-xnap-dis-tab.c" dissector_add_uint("xnap.ies", id_ActivatedServedCells, create_dissector_handle(dissect_ActivatedServedCells_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_ActivationIDforCellActivation, create_dissector_handle(dissect_ActivationIDforCellActivation_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_admittedSplitSRB, create_dissector_handle(dissect_SplitSRBsTypes_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_admittedSplitSRBrelease, create_dissector_handle(dissect_SplitSRBsTypes_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_AMF_Pool_Information, create_dissector_handle(dissect_AMF_Pool_Information_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_AreaOfInterest_Item, create_dissector_handle(dissect_AreaOfInterest_Item_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_AssistanceDataForRANPaging, create_dissector_handle(dissect_AssistanceDataForRANPaging_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_BearersSubjectToCounterCheck, create_dissector_handle(dissect_BearersSubjectToCounterCheck_List_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_Cause, create_dissector_handle(dissect_Cause_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_cellAssistanceInfo_NR, create_dissector_handle(dissect_CellAssistanceInfo_NR_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_ConfigurationUpdateInitiatingNodeChoice, create_dissector_handle(dissect_ConfigurationUpdateInitiatingNodeChoice_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_CriticalityDiagnostics, create_dissector_handle(dissect_CriticalityDiagnostics_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_dataforwardingInfoperPDUSession, create_dissector_handle(dissect_DataforwardingInfoperPDUSession_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_dataforwardingInfoperPDUSession_Item, create_dissector_handle(dissect_DataforwardingInfoperPDUSession_Item_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_DataForwardingResponseDRBItem, create_dissector_handle(dissect_DataForwardingResponseDRBItem_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_DRBsSubjectToStatusTransfer_Item, create_dissector_handle(dissect_DRBsSubjectToStatusTransfer_Item_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_DRBsSubjectToStatusTransfer_List, create_dissector_handle(dissect_DRBsSubjectToStatusTransfer_List_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_DRBToQoSFlowMapping_Item, create_dissector_handle(dissect_DRBToQoSFlowMapping_Item_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_ExpectedUEBehaviour, create_dissector_handle(dissect_ExpectedUEBehaviour_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_GlobalNG_RAN_node_ID, create_dissector_handle(dissect_GlobalNG_RANNode_ID_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_GUAMI, create_dissector_handle(dissect_GUAMI_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_indexToRatFrequSelectionPriority, create_dissector_handle(dissect_RFSP_Index_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_initiatingNodeType_ResourceCoordRequest, create_dissector_handle(dissect_InitiatingNodeType_ResourceCoordRequest_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_List_of_served_cells_E_UTRA, create_dissector_handle(dissect_ServedCells_E_UTRA_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_List_of_served_cells_NR, create_dissector_handle(dissect_ServedCells_NR_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_LocationReportingInformation, create_dissector_handle(dissect_LocationReportingInformation_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_MAC_I, create_dissector_handle(dissect_MAC_I_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_MaskedIMEISV, create_dissector_handle(dissect_MaskedIMEISV_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_M_NG_RANnodeUEXnAPID, create_dissector_handle(dissect_NG_RANnodeUEXnAPID_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_MN_to_SN_Container, create_dissector_handle(dissect_MN_to_SN_Container_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_MobilityRestrictionList, create_dissector_handle(dissect_MobilityRestrictionList_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_new_NG_RAN_Cell_Identity, create_dissector_handle(dissect_NG_RAN_Cell_Identity_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_newNG_RANnodeUEXnAPID, create_dissector_handle(dissect_NG_RANnodeUEXnAPID_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_NRUEMeasurementReportRRCTransfer, create_dissector_handle(dissect_NRUEMeasurementReportRRCTransfer_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_oldNG_RANnodeUEXnAPID, create_dissector_handle(dissect_NG_RANnodeUEXnAPID_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_OldtoNewNG_RANnodeResumeContainer, create_dissector_handle(dissect_OldtoNewNG_RANnodeResumeContainer_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_PagingDRX, create_dissector_handle(dissect_PagingDRX_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_PDUSessionResourcesAdmitted_Item, create_dissector_handle(dissect_PDUSessionResourcesAdmitted_Item_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PCellID, create_dissector_handle(dissect_GlobalNG_RANCell_ID_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDCPChangeIndication, create_dissector_handle(dissect_PDCPChangeIndication_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionAdmittedAddedAddReqAck, create_dissector_handle(dissect_PDUSessionAdmittedAddedAddReqAck_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionAdmittedModSNModConfirm, create_dissector_handle(dissect_PDUSessionAdmittedModSNModConfirm_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionAdmitted_SNModResponse, create_dissector_handle(dissect_PDUSessionAdmitted_SNModResponse_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionNotAdmittedAddReqAck, create_dissector_handle(dissect_PDUSessionNotAdmittedAddReqAck_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionNotAdmitted_SNModResponse, create_dissector_handle(dissect_PDUSessionNotAdmitted_SNModResponse_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionReleasedList_RelConf, create_dissector_handle(dissect_PDUSessionReleasedList_RelConf_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionReleasedSNModConfirm, create_dissector_handle(dissect_PDUSessionReleasedSNModConfirm_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionResourcesActivityNotifyList, create_dissector_handle(dissect_PDUSessionResourcesActivityNotifyList_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_PDUSessionResourcesAdmitted_List, create_dissector_handle(dissect_PDUSessionResourcesAdmitted_List_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_PDUSessionResourcesNotAdmitted_Item, create_dissector_handle(dissect_PDUSessionResourcesNotAdmitted_Item_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_PDUSessionResourcesNotAdmitted_List, create_dissector_handle(dissect_PDUSessionResourcesNotAdmitted_List_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_PDUSessionResourcesToBeSetup_Item, create_dissector_handle(dissect_PDUSessionResourcesToBeSetup_Item_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_QoSFlowAdmitted_Item, create_dissector_handle(dissect_QoSFlowAdmitted_Item_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_QoSFlow_Item, create_dissector_handle(dissect_QoSFlow_Item_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_QoSFlowNotAdmitted_Item, create_dissector_handle(dissect_QoSFlowNotAdmitted_Item_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_QoSFlowsToBeSetup_Item, create_dissector_handle(dissect_QoSFlowsToBeSetup_Item_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionResourcesNotifyList, create_dissector_handle(dissect_PDUSessionResourcesNotifyList_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSession_SNChangeConfirm_List, create_dissector_handle(dissect_PDUSession_SNChangeConfirm_List_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSession_SNChangeRequired_List, create_dissector_handle(dissect_PDUSession_SNChangeRequired_List_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionToBeAddedAddReq, create_dissector_handle(dissect_PDUSessionToBeAddedAddReq_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionToBeModifiedSNModRequired, create_dissector_handle(dissect_PDUSessionToBeModifiedSNModRequired_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionToBeReleasedList_RelRqd, create_dissector_handle(dissect_PDUSessionToBeReleasedList_RelRqd_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionToBeReleased_RelReq, create_dissector_handle(dissect_PDUSessionToBeReleased_RelReq_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PDUSessionToBeReleasedSNModRequired, create_dissector_handle(dissect_PDUSessionToBeReleasedSNModRequired_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_RANPagingArea, create_dissector_handle(dissect_RANPagingArea_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_RANPagingPriority, create_dissector_handle(dissect_RANPagingPriority_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_ResetRequestPartialReleaseItem, create_dissector_handle(dissect_ResetRequestPartialReleaseItem_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_PagingPriority, create_dissector_handle(dissect_PagingPriority_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_requestedSplitSRB, create_dissector_handle(dissect_SplitSRBsTypes_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_requestedSplitSRBrelease, create_dissector_handle(dissect_SplitSRBsTypes_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_ResetRequestTypeInfo, create_dissector_handle(dissect_ResetRequestTypeInfo_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_ResetResponsePartialReleaseItem, create_dissector_handle(dissect_ResetResponsePartialReleaseItem_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_ResetResponseTypeInfo, create_dissector_handle(dissect_ResetResponseTypeInfo_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_RespondingNodeTypeConfigUpdateAck, create_dissector_handle(dissect_RespondingNodeTypeConfigUpdateAck_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_respondingNodeType_ResourceCoordResponse, create_dissector_handle(dissect_RespondingNodeType_ResourceCoordResponse_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_ResponseInfo_ReconfCompl, create_dissector_handle(dissect_ResponseInfo_ReconfCompl_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_RRCConfigIndication, create_dissector_handle(dissect_RRCConfigIndication_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_RRCResumeCause, create_dissector_handle(dissect_RRCResumeCause_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_SCGConfigurationQuery, create_dissector_handle(dissect_SCGConfigurationQuery_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_selectedPLMN, create_dissector_handle(dissect_PLMN_Identity_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_ServedCellsToActivate, create_dissector_handle(dissect_ServedCellsToActivate_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_servedCellsToUpdate_E_UTRA, create_dissector_handle(dissect_ServedCellsToUpdate_E_UTRA_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_servedCellsToUpdate_NR, create_dissector_handle(dissect_ServedCellsToUpdate_NR_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_s_ng_RANnode_SecurityKey, create_dissector_handle(dissect_S_NG_RANnode_SecurityKey_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_S_NG_RANnodeUE_AMBR, create_dissector_handle(dissect_UEAggregateMaximumBitRate_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_S_NG_RANnodeUEXnAPID, create_dissector_handle(dissect_NG_RANnodeUEXnAPID_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_SN_to_MN_Container, create_dissector_handle(dissect_SN_to_MN_Container_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_sourceNG_RANnodeUEXnAPID, create_dissector_handle(dissect_NG_RANnodeUEXnAPID_PDU, proto_xnap)); - dissector_add_uint("xnap.ies", id_TAISupport_Item, create_dissector_handle(dissect_TAISupport_Item_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_SplitSRB_RRCTransfer, create_dissector_handle(dissect_SplitSRB_RRCTransfer_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_TAISupport_list, create_dissector_handle(dissect_TAISupport_List_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_TimeToWait, create_dissector_handle(dissect_TimeToWait_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_Target2SourceNG_RANnodeTranspContainer, create_dissector_handle(dissect_Target2SourceNG_RANnodeTranspContainer_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_targetCellGlobalID, create_dissector_handle(dissect_Target_CGI_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_targetNG_RANnodeUEXnAPID, create_dissector_handle(dissect_NG_RANnodeUEXnAPID_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_target_S_NG_RANnodeID, create_dissector_handle(dissect_GlobalNG_RANNode_ID_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_TraceActivation, create_dissector_handle(dissect_TraceActivation_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_UEContextID, create_dissector_handle(dissect_UEContextID_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_UEContextInfoHORequest, create_dissector_handle(dissect_UEContextInfoHORequest_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_UEContextInfoRetrUECtxtResp, create_dissector_handle(dissect_UEContextInfoRetrUECtxtResp_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_UEContextInfo_SNModRequest, create_dissector_handle(dissect_UEContextInfo_SNModRequest_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_UEContextKeptIndicator, create_dissector_handle(dissect_UEContextKeptIndicator_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_UEContextRefAtSN_HORequest, create_dissector_handle(dissect_UEContextRefAtSN_HORequest_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_UEHistoryInformation, create_dissector_handle(dissect_UEHistoryInformation_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_UEIdentityIndexValue, create_dissector_handle(dissect_UEIdentityIndexValue_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_UERANPagingIdentity, create_dissector_handle(dissect_UERANPagingIdentity_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_UESecurityCapabilities, create_dissector_handle(dissect_UESecurityCapabilities_PDU, proto_xnap)); + dissector_add_uint("xnap.ies", id_UserPlaneTrafficActivityReport, create_dissector_handle(dissect_UserPlaneTrafficActivityReport_PDU, proto_xnap)); dissector_add_uint("xnap.ies", id_XnRemovalThreshold, create_dissector_handle(dissect_XnBenefitValue_PDU, proto_xnap)); dissector_add_uint("xnap.proc.imsg", id_handoverPreparation, create_dissector_handle(dissect_HandoverRequest_PDU, proto_xnap)); dissector_add_uint("xnap.proc.sout", id_handoverPreparation, create_dissector_handle(dissect_HandoverRequestAcknowledge_PDU, proto_xnap)); @@ -9580,17 +15226,21 @@ proto_reg_handoff_xnap(void) dissector_add_uint("xnap.proc.imsg", id_nGRANnodeConfigurationUpdate, create_dissector_handle(dissect_NGRANNodeConfigurationUpdate_PDU, proto_xnap)); dissector_add_uint("xnap.proc.sout", id_nGRANnodeConfigurationUpdate, create_dissector_handle(dissect_NGRANNodeConfigurationUpdateAcknowledge_PDU, proto_xnap)); dissector_add_uint("xnap.proc.uout", id_nGRANnodeConfigurationUpdate, create_dissector_handle(dissect_NGRANNodeConfigurationUpdateFailure_PDU, proto_xnap)); + dissector_add_uint("xnap.proc.imsg", id_e_UTRA_NR_CellResourceCoordination, create_dissector_handle(dissect_E_UTRA_NR_CellResourceCoordinationRequest_PDU, proto_xnap)); + dissector_add_uint("xnap.proc.sout", id_e_UTRA_NR_CellResourceCoordination, create_dissector_handle(dissect_E_UTRA_NR_CellResourceCoordinationResponse_PDU, proto_xnap)); dissector_add_uint("xnap.proc.imsg", id_cellActivation, create_dissector_handle(dissect_CellActivationRequest_PDU, proto_xnap)); dissector_add_uint("xnap.proc.sout", id_cellActivation, create_dissector_handle(dissect_CellActivationResponse_PDU, proto_xnap)); dissector_add_uint("xnap.proc.uout", id_cellActivation, create_dissector_handle(dissect_CellActivationFailure_PDU, proto_xnap)); dissector_add_uint("xnap.proc.imsg", id_reset, create_dissector_handle(dissect_ResetRequest_PDU, proto_xnap)); dissector_add_uint("xnap.proc.sout", id_reset, create_dissector_handle(dissect_ResetResponse_PDU, proto_xnap)); dissector_add_uint("xnap.proc.imsg", id_errorIndication, create_dissector_handle(dissect_ErrorIndication_PDU, proto_xnap)); + dissector_add_uint("xnap.proc.imsg", id_notificationControl, create_dissector_handle(dissect_NotificationControlIndication_PDU, proto_xnap)); + dissector_add_uint("xnap.proc.imsg", id_activityNotification, create_dissector_handle(dissect_ActivityNotification_PDU, proto_xnap)); dissector_add_uint("xnap.proc.imsg", id_privateMessage, create_dissector_handle(dissect_PrivateMessage_PDU, proto_xnap)); /*--- End of included file: packet-xnap-dis-tab.c ---*/ -#line 287 "./asn1/xnap/packet-xnap-template.c" +#line 315 "./asn1/xnap/packet-xnap-template.c" } else { if (sctp_port != 0) { dissector_delete_uint("sctp.port", sctp_port, xnap_handle);